|
@@ -1255,7 +1255,6 @@ public class ConsoleFacade {
|
|
*/
|
|
*/
|
|
public IPage<QualityControlDTO> getQualityControl(BehospitalPageVO behospitalPageVO) {
|
|
public IPage<QualityControlDTO> getQualityControl(BehospitalPageVO behospitalPageVO) {
|
|
behospitalPageSet(behospitalPageVO);
|
|
behospitalPageSet(behospitalPageVO);
|
|
- DecimalFormat df=new DecimalFormat("0.0");
|
|
|
|
IPage<QualityControlDTO> records = behospitalInfoFacade.getQualityControl(behospitalPageVO);
|
|
IPage<QualityControlDTO> records = behospitalInfoFacade.getQualityControl(behospitalPageVO);
|
|
List<QualityControlDTO> qualityControlDTOs = records.getRecords();
|
|
List<QualityControlDTO> qualityControlDTOs = records.getRecords();
|
|
CaseScoreVO caseScoreVO = new CaseScoreVO();
|
|
CaseScoreVO caseScoreVO = new CaseScoreVO();
|
|
@@ -1263,29 +1262,6 @@ public class ConsoleFacade {
|
|
List<CaseScoreDTO>caseScoreDTOS= behospitalInfoFacade.getQualityCaseSorce(caseScoreVO);
|
|
List<CaseScoreDTO>caseScoreDTOS= behospitalInfoFacade.getQualityCaseSorce(caseScoreVO);
|
|
if(ListUtil.isNotEmpty(qualityControlDTOs)){
|
|
if(ListUtil.isNotEmpty(qualityControlDTOs)){
|
|
qualityControlDTOs.forEach(qualityControlDTO->{
|
|
qualityControlDTOs.forEach(qualityControlDTO->{
|
|
- Double rePlaceTolScore = qualityControlDTO.getTotalScore();
|
|
|
|
- StringBuffer admissionNote = new StringBuffer();
|
|
|
|
- StringBuffer firstCourseNote = new StringBuffer();
|
|
|
|
- StringBuffer dischargeNote = new StringBuffer();
|
|
|
|
- StringBuffer medHomePage = new StringBuffer();
|
|
|
|
- StringBuffer docAdviceNote = new StringBuffer();
|
|
|
|
- StringBuffer operationInfo = new StringBuffer();
|
|
|
|
- StringBuffer courseRecord = new StringBuffer();
|
|
|
|
- StringBuffer otherCase = new StringBuffer();
|
|
|
|
- Double admissionNoteScoreOn = 0d;
|
|
|
|
- Double admissionNoteScoreTw = 0d;
|
|
|
|
- Double firstCourseNoteScoreOn = 0d;
|
|
|
|
- Double firstCourseNoteScoreTw = 0d;
|
|
|
|
- Double dischargeNoteScoreOn = 0d;
|
|
|
|
- Double dischargeNoteScoreTw = 0d;
|
|
|
|
- Double medHomePageScoreOn = 0d;
|
|
|
|
- Double medHomePageScoreTw = 0d;
|
|
|
|
- Double docAdviceNoteScoreOn = 0d;
|
|
|
|
- Double docAdviceNoteScoreTw = 0d;
|
|
|
|
- Double operationInfoScoreOn = 0d;
|
|
|
|
- Double operationInfoScoreTw = 0d;
|
|
|
|
- Double courseRecordScoreOn = 0d;
|
|
|
|
- Double courseRecordScoreTw = 0d;
|
|
|
|
if(ListUtil.isNotEmpty(caseScoreDTOS)){
|
|
if(ListUtil.isNotEmpty(caseScoreDTOS)){
|
|
AlgorithmVO algorithmVO = new AlgorithmVO();
|
|
AlgorithmVO algorithmVO = new AlgorithmVO();
|
|
BeanUtil.copyProperties(behospitalPageVO,algorithmVO);
|
|
BeanUtil.copyProperties(behospitalPageVO,algorithmVO);
|
|
@@ -1295,253 +1271,19 @@ public class ConsoleFacade {
|
|
if (StringUtils.isNotEmpty(qualityControlDTO.getBehospitalCode())&&
|
|
if (StringUtils.isNotEmpty(qualityControlDTO.getBehospitalCode())&&
|
|
StringUtils.isNotEmpty(caseScoreDTO.getBehospitalCode())&&
|
|
StringUtils.isNotEmpty(caseScoreDTO.getBehospitalCode())&&
|
|
qualityControlDTO.getBehospitalCode().equals(caseScoreDTO.getBehospitalCode())) {
|
|
qualityControlDTO.getBehospitalCode().equals(caseScoreDTO.getBehospitalCode())) {
|
|
- double targetScore = Double.valueOf(df.format(caseScoreDTO.getScore()));
|
|
|
|
-
|
|
|
|
QcResultAlgVO qcResultAlgVO = new QcResultAlgVO();
|
|
QcResultAlgVO qcResultAlgVO = new QcResultAlgVO();
|
|
BeanUtil.copyProperties(caseScoreDTO,qcResultAlgVO);
|
|
BeanUtil.copyProperties(caseScoreDTO,qcResultAlgVO);
|
|
qcResultAlgVO.setIsReject(Integer.valueOf(caseScoreDTO.getIsReject()));
|
|
qcResultAlgVO.setIsReject(Integer.valueOf(caseScoreDTO.getIsReject()));
|
|
qcResultAlgVO.setScore(new BigDecimal(caseScoreDTO.getScore()));
|
|
qcResultAlgVO.setScore(new BigDecimal(caseScoreDTO.getScore()));
|
|
qcResultAlgVO.setCasesScore(new BigDecimal(caseScoreDTO.getCasesScore()));
|
|
qcResultAlgVO.setCasesScore(new BigDecimal(caseScoreDTO.getCasesScore()));
|
|
qcResultAlgVOList.add(qcResultAlgVO);
|
|
qcResultAlgVOList.add(qcResultAlgVO);
|
|
-
|
|
|
|
- switch (caseScoreDTO.getModelId()) {
|
|
|
|
- case "1":
|
|
|
|
- String admissionMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- admissionNote.append(admissionMsg);
|
|
|
|
- //对单个modeId进行扣分总和计算
|
|
|
|
- //非单项否决总分
|
|
|
|
- if (caseScoreDTO.getIsReject().equals("0")) {
|
|
|
|
- admissionNoteScoreOn += targetScore;
|
|
|
|
- admissionNoteScoreOn = Double.valueOf(df.format(admissionNoteScoreOn));
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- //扣分总和
|
|
|
|
- admissionNoteScoreTw += targetScore;
|
|
|
|
- admissionNoteScoreTw = Double.valueOf(df.format(admissionNoteScoreTw));
|
|
|
|
- qualityControlDTO.setAdmissionNoteTolScore(caseScoreDTO.getCasesScore());
|
|
|
|
- break;
|
|
|
|
- case "2":
|
|
|
|
- String firstCourseNoteMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- firstCourseNote.append(firstCourseNoteMsg);
|
|
|
|
- if (caseScoreDTO.getIsReject().equals("0")) {
|
|
|
|
- firstCourseNoteScoreOn +=targetScore;
|
|
|
|
- firstCourseNoteScoreOn = Double.valueOf(df.format(firstCourseNoteScoreOn));
|
|
|
|
- }
|
|
|
|
- //扣分总和
|
|
|
|
- firstCourseNoteScoreTw += targetScore;
|
|
|
|
- firstCourseNoteScoreTw = Double.valueOf(df.format(firstCourseNoteScoreTw));
|
|
|
|
- qualityControlDTO.setFirstCourseNoteTolScore(caseScoreDTO.getCasesScore());
|
|
|
|
- break;
|
|
|
|
- case "5":
|
|
|
|
- String dischargeNoteMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- dischargeNote.append(dischargeNoteMsg);
|
|
|
|
- if (caseScoreDTO.getIsReject().equals("0")) {
|
|
|
|
- dischargeNoteScoreOn += targetScore;
|
|
|
|
- dischargeNoteScoreOn = Double.valueOf(df.format(dischargeNoteScoreOn));
|
|
|
|
- }
|
|
|
|
- //扣分总和
|
|
|
|
- dischargeNoteScoreTw += targetScore;
|
|
|
|
- dischargeNoteScoreTw = Double.valueOf(df.format(dischargeNoteScoreTw));
|
|
|
|
- qualityControlDTO.setDischargeNoteTolScore(caseScoreDTO.getCasesScore());
|
|
|
|
- break;
|
|
|
|
- case "6":
|
|
|
|
- String medHomePageMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- medHomePage.append(medHomePageMsg);
|
|
|
|
- if (caseScoreDTO.getIsReject().equals("0")) {
|
|
|
|
- medHomePageScoreOn += targetScore;
|
|
|
|
- medHomePageScoreOn = Double.valueOf(df.format(medHomePageScoreOn));
|
|
|
|
- }
|
|
|
|
- //扣分总和
|
|
|
|
- medHomePageScoreTw += targetScore;
|
|
|
|
- medHomePageScoreTw = Double.valueOf(df.format(medHomePageScoreTw));
|
|
|
|
- qualityControlDTO.setMedHomePageTolScore(caseScoreDTO.getCasesScore());
|
|
|
|
- break;
|
|
|
|
- case "8":
|
|
|
|
- String docAdviceNoteMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- docAdviceNote.append(docAdviceNoteMsg);
|
|
|
|
- if (caseScoreDTO.getIsReject().equals("0")) {
|
|
|
|
- docAdviceNoteScoreOn += targetScore;
|
|
|
|
- docAdviceNoteScoreOn = Double.valueOf(df.format(docAdviceNoteScoreOn));
|
|
|
|
- }
|
|
|
|
- //扣分总和
|
|
|
|
- docAdviceNoteScoreTw += targetScore;
|
|
|
|
- docAdviceNoteScoreTw = Double.valueOf(df.format(docAdviceNoteScoreTw));
|
|
|
|
- qualityControlDTO.setDocAdviceNoteTolScore(caseScoreDTO.getCasesScore());
|
|
|
|
- break;
|
|
|
|
- case "17":
|
|
|
|
- String operationInfoMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- operationInfo.append(operationInfoMsg);
|
|
|
|
- if (caseScoreDTO.getIsReject().equals("0")) {
|
|
|
|
- operationInfoScoreOn += targetScore;
|
|
|
|
- operationInfoScoreOn = Double.valueOf(df.format(operationInfoScoreOn));
|
|
|
|
- }
|
|
|
|
- //扣分总和
|
|
|
|
- operationInfoScoreTw += targetScore;
|
|
|
|
- operationInfoScoreTw = Double.valueOf(df.format(operationInfoScoreTw));
|
|
|
|
- qualityControlDTO.setOperationInfoTolScore(caseScoreDTO.getCasesScore());
|
|
|
|
- break;
|
|
|
|
- case "56":
|
|
|
|
- String courseRecordMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- courseRecord.append(courseRecordMsg);
|
|
|
|
- if (caseScoreDTO.getIsReject().equals("0")) {
|
|
|
|
- courseRecordScoreOn += targetScore;
|
|
|
|
- courseRecordScoreOn = Double.valueOf(df.format(courseRecordScoreOn));
|
|
|
|
- }
|
|
|
|
- //扣分总和
|
|
|
|
- courseRecordScoreTw += targetScore;
|
|
|
|
- courseRecordScoreTw = Double.valueOf(df.format(courseRecordScoreTw));
|
|
|
|
- qualityControlDTO.setCourseRecordTolScore(caseScoreDTO.getCasesScore());
|
|
|
|
- break;
|
|
|
|
-
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- String modelId = caseScoreDTO.getModelId();
|
|
|
|
- if(!(modelId.equals("1")||modelId.equals("2")||modelId.equals("5")||modelId.equals("6")||
|
|
|
|
- modelId.equals("8")||modelId.equals("17")||modelId.equals("56"))){
|
|
|
|
- String otherCaseMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- otherCase.append(otherCaseMsg);
|
|
|
|
- }
|
|
|
|
- //未评分
|
|
|
|
- }
|
|
|
|
- if(StringUtils.isEmpty(caseScoreDTO.getBehospitalCode())){
|
|
|
|
- QualityControlNullDTO qualityControlNullDTO = new QualityControlNullDTO();
|
|
|
|
- BeanUtil.copyProperties(qualityControlNullDTO,qualityControlDTO);
|
|
|
|
- break;
|
|
|
|
}
|
|
}
|
|
- };
|
|
|
|
|
|
+ }
|
|
|
|
+ algorithmVO.setType(0);
|
|
algorithmVO.setQcResultAlgVOList(qcResultAlgVOList);
|
|
algorithmVO.setQcResultAlgVOList(qcResultAlgVOList);
|
|
- Double toltalScore = getScoreForCx(algorithmVO).doubleValue();
|
|
|
|
- qualityControlDTO.setTotalScore(toltalScore);
|
|
|
|
- qualityControlDTO.setAdmissionNoteScoreOn(admissionNoteScoreOn);
|
|
|
|
- qualityControlDTO.setAdmissionNoteScoreTw(admissionNoteScoreTw);
|
|
|
|
- qualityControlDTO.setFirstCourseNoteScoreOn(firstCourseNoteScoreOn);
|
|
|
|
- qualityControlDTO.setFirstCourseNoteScoreTw(firstCourseNoteScoreTw);
|
|
|
|
- qualityControlDTO.setDischargeNoteScoreOn(dischargeNoteScoreOn);
|
|
|
|
- qualityControlDTO.setDischargeNoteScoreTw(dischargeNoteScoreTw);
|
|
|
|
- qualityControlDTO.setMedHomePageScoreOn(medHomePageScoreOn);
|
|
|
|
- qualityControlDTO.setMedHomePageScoreTw(medHomePageScoreTw);
|
|
|
|
- qualityControlDTO.setDocAdviceNoteScoreOn(docAdviceNoteScoreOn);
|
|
|
|
- qualityControlDTO.setDocAdviceNoteScoreTw(docAdviceNoteScoreTw);
|
|
|
|
- qualityControlDTO.setOperationInfoScoreOn(operationInfoScoreOn);
|
|
|
|
- qualityControlDTO.setOperationInfoScoreTw(operationInfoScoreTw);
|
|
|
|
- qualityControlDTO.setCourseRecordScoreOn(courseRecordScoreOn);
|
|
|
|
- qualityControlDTO.setCourseRecordScoreTw(courseRecordScoreTw);
|
|
|
|
-
|
|
|
|
- String admissionNoteString = StringUtils.isEmpty(admissionNote) == true ?"无缺陷" : admissionNote.toString().substring(0, admissionNote.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setAdmissionNote(admissionNoteString);
|
|
|
|
- String firstCourseNoteString = StringUtils.isEmpty(firstCourseNote) == true ?"无缺陷" :firstCourseNote.toString().substring(0, firstCourseNote.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setFirstCourseNote(firstCourseNoteString);
|
|
|
|
- String dischargeNoteString = StringUtils.isEmpty(dischargeNote) == true ?"无缺陷" : dischargeNote.toString().substring(0, dischargeNote.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setDischargeNote(dischargeNoteString);
|
|
|
|
- String medHomePageString = StringUtils.isEmpty(medHomePage) == true ?"无缺陷" : medHomePage.toString().substring(0, medHomePage.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setMedHomePage(medHomePageString);
|
|
|
|
- String docAdviceNoteString = StringUtils.isEmpty(docAdviceNote) == true ?"无缺陷" : docAdviceNote.toString().substring(0, docAdviceNote.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setDocAdviceNote(docAdviceNoteString);
|
|
|
|
- String operationInfoString = StringUtils.isEmpty(operationInfo) == true ?"无缺陷" : operationInfo.toString().substring(0, operationInfo.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setOperationInfo(operationInfoString);
|
|
|
|
- String courseRecordString = StringUtils.isEmpty(courseRecord) == true ?"无缺陷" : courseRecord.toString().substring(0, courseRecord.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setCourseRecord(courseRecordString);
|
|
|
|
- String otherCaseString = StringUtils.isEmpty(otherCase) == true ?"无缺陷" : otherCase.toString().substring(0, otherCase.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setOtherCase(otherCaseString);
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- for (CaseScoreDTO caseScoreDTO : caseScoreDTOS) {
|
|
|
|
- if (StringUtils.isNotEmpty(qualityControlDTO.getBehospitalCode())&&
|
|
|
|
- StringUtils.isNotEmpty(caseScoreDTO.getBehospitalCode())&&
|
|
|
|
- qualityControlDTO.getBehospitalCode().equals(caseScoreDTO.getBehospitalCode())) {
|
|
|
|
- switch (caseScoreDTO.getModelId()) {
|
|
|
|
- case "1":
|
|
|
|
- // 非单项否决总扣分大于扣分总和
|
|
|
|
- if((admissionNoteScoreOn-qualityControlDTO.getAdmissionNoteTolScore())>=0){
|
|
|
|
- //扣分总和+单项否决总分
|
|
|
|
- qualityControlDTO.setAdmissionNoteScore(qualityControlDTO.getAdmissionNoteTolScore()+(admissionNoteScoreTw-admissionNoteScoreOn));
|
|
|
|
- }else{
|
|
|
|
- qualityControlDTO.setAdmissionNoteScore(admissionNoteScoreOn+(admissionNoteScoreTw-admissionNoteScoreOn));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case "2":
|
|
|
|
- // 非单项否决总扣分大于扣分总和
|
|
|
|
- if((firstCourseNoteScoreOn-qualityControlDTO.getFirstCourseNoteTolScore())>=0){
|
|
|
|
- //扣分总和+单项否决总分
|
|
|
|
- qualityControlDTO.setFirstCourseNoteScore(qualityControlDTO.getFirstCourseNoteTolScore()+(firstCourseNoteScoreTw-firstCourseNoteScoreOn));
|
|
|
|
- }else{
|
|
|
|
- qualityControlDTO.setFirstCourseNoteScore(firstCourseNoteScoreOn+(firstCourseNoteScoreTw-firstCourseNoteScoreOn));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case "5":
|
|
|
|
- // 非单项否决总扣分大于扣分总和
|
|
|
|
- if((dischargeNoteScoreOn-qualityControlDTO.getDischargeNoteTolScore())>=0){
|
|
|
|
- //扣分总和+单项否决总分
|
|
|
|
- qualityControlDTO.setDischargeNoteScore(qualityControlDTO.getDischargeNoteTolScore()+(dischargeNoteScoreTw-dischargeNoteScoreOn));
|
|
|
|
- }else{
|
|
|
|
- qualityControlDTO.setDischargeNoteScore(dischargeNoteScoreOn+(dischargeNoteScoreTw-dischargeNoteScoreOn));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case "6":
|
|
|
|
- // 非单项否决总扣分大于扣分总和
|
|
|
|
- if((medHomePageScoreOn-qualityControlDTO.getMedHomePageTolScore())>=0){
|
|
|
|
- //扣分总和+单项否决总分
|
|
|
|
- qualityControlDTO.setMedHomePageScore(qualityControlDTO.getMedHomePageTolScore()+(medHomePageScoreTw-medHomePageScoreOn));
|
|
|
|
- }else{
|
|
|
|
- qualityControlDTO.setMedHomePageScore(medHomePageScoreOn+(medHomePageScoreTw-medHomePageScoreOn));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case "8":
|
|
|
|
- // 非单项否决总扣分大于扣分总和
|
|
|
|
- if((docAdviceNoteScoreOn-qualityControlDTO.getDocAdviceNoteTolScore())>=0){
|
|
|
|
- //扣分总和+单项否决总分
|
|
|
|
- qualityControlDTO.setDocAdviceNoteScore(qualityControlDTO.getDocAdviceNoteTolScore()+(docAdviceNoteScoreTw-docAdviceNoteScoreOn));
|
|
|
|
- }else{
|
|
|
|
- qualityControlDTO.setDocAdviceNoteScore(docAdviceNoteScoreOn+(docAdviceNoteScoreTw-docAdviceNoteScoreOn));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case "17":
|
|
|
|
- // 非单项否决总扣分大于扣分总和
|
|
|
|
- if((operationInfoScoreOn-qualityControlDTO.getOperationInfoTolScore())>=0){
|
|
|
|
- //扣分总和+单项否决总分
|
|
|
|
- qualityControlDTO.setOperationInfoScore(qualityControlDTO.getOperationInfoTolScore()+(operationInfoScoreTw-operationInfoScoreOn));
|
|
|
|
- }else{
|
|
|
|
- qualityControlDTO.setOperationInfoScore(operationInfoScoreOn+(operationInfoScoreTw-operationInfoScoreOn));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case "56":
|
|
|
|
- // 非单项否决总扣分大于扣分总和
|
|
|
|
- if((courseRecordScoreOn-qualityControlDTO.getCourseRecordTolScore())>=0){
|
|
|
|
- //扣分总和+单项否决总分
|
|
|
|
- qualityControlDTO.setCourseRecordScore(qualityControlDTO.getCourseRecordTolScore()+(courseRecordScoreTw-courseRecordScoreOn));
|
|
|
|
- }else{
|
|
|
|
- qualityControlDTO.setCourseRecordScore(courseRecordScoreOn+(courseRecordScoreTw-courseRecordScoreOn));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
-
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- } if(StringUtils.isEmpty(caseScoreDTO.getBehospitalCode())){
|
|
|
|
- QualityControlNullDTO qualityControlNullDTO = new QualityControlNullDTO();
|
|
|
|
- BeanUtil.copyProperties(qualityControlNullDTO,qualityControlDTO);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- };
|
|
|
|
- Double otherScore = new Double(0d);
|
|
|
|
- Double mainScore = new Double(0d);
|
|
|
|
- Double otherCaseScore = null;
|
|
|
|
- Double res = new Double(120d);
|
|
|
|
- Double resPr = new Double(100d);
|
|
|
|
- String scoreType = "0";
|
|
|
|
- mainScore = qualityControlDTO.getMedHomePageScore()+qualityControlDTO.getAdmissionNoteScore()+qualityControlDTO.getFirstCourseNoteScore()+
|
|
|
|
- qualityControlDTO.getCourseRecordScore()+qualityControlDTO.getOperationInfoScore()+qualityControlDTO.getDischargeNoteScore()+qualityControlDTO. getDocAdviceNoteScore();
|
|
|
|
- scoreType = sysHospitalSetFacade.getScoreType(behospitalPageVO.getHospitalId());
|
|
|
|
- if ("1".equals(scoreType)) {
|
|
|
|
- otherScore = (resPr-qualityControlDTO.getTotalScore()-mainScore);
|
|
|
|
- } else if ("0".equals(scoreType)) {
|
|
|
|
- otherScore = res-(qualityControlDTO.getTotalScore()*res/resPr)-mainScore;
|
|
|
|
- }
|
|
|
|
- otherCaseScore = Double.valueOf(df.format(otherScore));
|
|
|
|
- qualityControlDTO.setOtherCaseScore(otherCaseScore == null ? 0d : otherCaseScore );
|
|
|
|
- qualityControlDTO.setTotalScore(rePlaceTolScore);
|
|
|
|
- }else{
|
|
|
|
|
|
+ getScoreForCx(algorithmVO,qualityControlDTO);
|
|
|
|
+ }
|
|
|
|
+ if(qualityControlDTO.getLevel().equals("未评分")){
|
|
QualityControlNullDTO qualityControlNullDTO = new QualityControlNullDTO();
|
|
QualityControlNullDTO qualityControlNullDTO = new QualityControlNullDTO();
|
|
BeanUtil.copyProperties(qualityControlNullDTO,qualityControlDTO);
|
|
BeanUtil.copyProperties(qualityControlNullDTO,qualityControlDTO);
|
|
}
|
|
}
|
|
@@ -1558,7 +1300,6 @@ public class ConsoleFacade {
|
|
*/
|
|
*/
|
|
public IPage<QualityControlDTO> getQualityControlExport(BehospitalPageVO behospitalPageVO) {
|
|
public IPage<QualityControlDTO> getQualityControlExport(BehospitalPageVO behospitalPageVO) {
|
|
behospitalPageSet(behospitalPageVO);
|
|
behospitalPageSet(behospitalPageVO);
|
|
- DecimalFormat df=new DecimalFormat("0.0");
|
|
|
|
IPage<QualityControlDTO> records = behospitalInfoFacade.getQualityControl(behospitalPageVO);
|
|
IPage<QualityControlDTO> records = behospitalInfoFacade.getQualityControl(behospitalPageVO);
|
|
List<QualityControlDTO> qualityControlDTOs = records.getRecords();
|
|
List<QualityControlDTO> qualityControlDTOs = records.getRecords();
|
|
CaseScoreVO caseScoreVO = new CaseScoreVO();
|
|
CaseScoreVO caseScoreVO = new CaseScoreVO();
|
|
@@ -1566,29 +1307,6 @@ public class ConsoleFacade {
|
|
List<CaseScoreDTO>caseScoreDTOS= behospitalInfoFacade.getQualityCaseSorce(caseScoreVO);
|
|
List<CaseScoreDTO>caseScoreDTOS= behospitalInfoFacade.getQualityCaseSorce(caseScoreVO);
|
|
if(ListUtil.isNotEmpty(qualityControlDTOs)){
|
|
if(ListUtil.isNotEmpty(qualityControlDTOs)){
|
|
qualityControlDTOs.forEach(qualityControlDTO->{
|
|
qualityControlDTOs.forEach(qualityControlDTO->{
|
|
- Double rePlaceTolScore = qualityControlDTO.getTotalScore();
|
|
|
|
- StringBuffer admissionNote = new StringBuffer();
|
|
|
|
- StringBuffer firstCourseNote = new StringBuffer();
|
|
|
|
- StringBuffer dischargeNote = new StringBuffer();
|
|
|
|
- StringBuffer medHomePage = new StringBuffer();
|
|
|
|
- StringBuffer docAdviceNote = new StringBuffer();
|
|
|
|
- StringBuffer operationInfo = new StringBuffer();
|
|
|
|
- StringBuffer courseRecord = new StringBuffer();
|
|
|
|
- StringBuffer otherCase = new StringBuffer();
|
|
|
|
- Double admissionNoteScoreOn = 0d;
|
|
|
|
- Double admissionNoteScoreTw = 0d;
|
|
|
|
- Double firstCourseNoteScoreOn = 0d;
|
|
|
|
- Double firstCourseNoteScoreTw = 0d;
|
|
|
|
- Double dischargeNoteScoreOn = 0d;
|
|
|
|
- Double dischargeNoteScoreTw = 0d;
|
|
|
|
- Double medHomePageScoreOn = 0d;
|
|
|
|
- Double medHomePageScoreTw = 0d;
|
|
|
|
- Double docAdviceNoteScoreOn = 0d;
|
|
|
|
- Double docAdviceNoteScoreTw = 0d;
|
|
|
|
- Double operationInfoScoreOn = 0d;
|
|
|
|
- Double operationInfoScoreTw = 0d;
|
|
|
|
- Double courseRecordScoreOn = 0d;
|
|
|
|
- Double courseRecordScoreTw = 0d;
|
|
|
|
if(ListUtil.isNotEmpty(caseScoreDTOS)){
|
|
if(ListUtil.isNotEmpty(caseScoreDTOS)){
|
|
AlgorithmVO algorithmVO = new AlgorithmVO();
|
|
AlgorithmVO algorithmVO = new AlgorithmVO();
|
|
BeanUtil.copyProperties(behospitalPageVO,algorithmVO);
|
|
BeanUtil.copyProperties(behospitalPageVO,algorithmVO);
|
|
@@ -1598,253 +1316,19 @@ public class ConsoleFacade {
|
|
if (StringUtils.isNotEmpty(qualityControlDTO.getBehospitalCode())&&
|
|
if (StringUtils.isNotEmpty(qualityControlDTO.getBehospitalCode())&&
|
|
StringUtils.isNotEmpty(caseScoreDTO.getBehospitalCode())&&
|
|
StringUtils.isNotEmpty(caseScoreDTO.getBehospitalCode())&&
|
|
qualityControlDTO.getBehospitalCode().equals(caseScoreDTO.getBehospitalCode())) {
|
|
qualityControlDTO.getBehospitalCode().equals(caseScoreDTO.getBehospitalCode())) {
|
|
- double targetScore = Double.valueOf(df.format(caseScoreDTO.getScore()));
|
|
|
|
-
|
|
|
|
QcResultAlgVO qcResultAlgVO = new QcResultAlgVO();
|
|
QcResultAlgVO qcResultAlgVO = new QcResultAlgVO();
|
|
BeanUtil.copyProperties(caseScoreDTO,qcResultAlgVO);
|
|
BeanUtil.copyProperties(caseScoreDTO,qcResultAlgVO);
|
|
qcResultAlgVO.setIsReject(Integer.valueOf(caseScoreDTO.getIsReject()));
|
|
qcResultAlgVO.setIsReject(Integer.valueOf(caseScoreDTO.getIsReject()));
|
|
qcResultAlgVO.setScore(new BigDecimal(caseScoreDTO.getScore()));
|
|
qcResultAlgVO.setScore(new BigDecimal(caseScoreDTO.getScore()));
|
|
qcResultAlgVO.setCasesScore(new BigDecimal(caseScoreDTO.getCasesScore()));
|
|
qcResultAlgVO.setCasesScore(new BigDecimal(caseScoreDTO.getCasesScore()));
|
|
qcResultAlgVOList.add(qcResultAlgVO);
|
|
qcResultAlgVOList.add(qcResultAlgVO);
|
|
-
|
|
|
|
- switch (caseScoreDTO.getModelId()) {
|
|
|
|
- case "1":
|
|
|
|
- String admissionMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- admissionNote.append(admissionMsg);
|
|
|
|
- //对单个modeId进行扣分总和计算
|
|
|
|
- //非单项否决总分
|
|
|
|
- if (caseScoreDTO.getIsReject().equals("0")) {
|
|
|
|
- admissionNoteScoreOn += targetScore;
|
|
|
|
- admissionNoteScoreOn = Double.valueOf(df.format(admissionNoteScoreOn));
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- //扣分总和
|
|
|
|
- admissionNoteScoreTw += targetScore;
|
|
|
|
- admissionNoteScoreTw = Double.valueOf(df.format(admissionNoteScoreTw));
|
|
|
|
- qualityControlDTO.setAdmissionNoteTolScore(caseScoreDTO.getCasesScore());
|
|
|
|
- break;
|
|
|
|
- case "2":
|
|
|
|
- String firstCourseNoteMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- firstCourseNote.append(firstCourseNoteMsg);
|
|
|
|
- if (caseScoreDTO.getIsReject().equals("0")) {
|
|
|
|
- firstCourseNoteScoreOn +=targetScore;
|
|
|
|
- firstCourseNoteScoreOn = Double.valueOf(df.format(firstCourseNoteScoreOn));
|
|
|
|
- }
|
|
|
|
- //扣分总和
|
|
|
|
- firstCourseNoteScoreTw += targetScore;
|
|
|
|
- firstCourseNoteScoreTw = Double.valueOf(df.format(firstCourseNoteScoreTw));
|
|
|
|
- qualityControlDTO.setFirstCourseNoteTolScore(caseScoreDTO.getCasesScore());
|
|
|
|
- break;
|
|
|
|
- case "5":
|
|
|
|
- String dischargeNoteMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- dischargeNote.append(dischargeNoteMsg);
|
|
|
|
- if (caseScoreDTO.getIsReject().equals("0")) {
|
|
|
|
- dischargeNoteScoreOn += targetScore;
|
|
|
|
- dischargeNoteScoreOn = Double.valueOf(df.format(dischargeNoteScoreOn));
|
|
|
|
- }
|
|
|
|
- //扣分总和
|
|
|
|
- dischargeNoteScoreTw += targetScore;
|
|
|
|
- dischargeNoteScoreTw = Double.valueOf(df.format(dischargeNoteScoreTw));
|
|
|
|
- qualityControlDTO.setDischargeNoteTolScore(caseScoreDTO.getCasesScore());
|
|
|
|
- break;
|
|
|
|
- case "6":
|
|
|
|
- String medHomePageMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- medHomePage.append(medHomePageMsg);
|
|
|
|
- if (caseScoreDTO.getIsReject().equals("0")) {
|
|
|
|
- medHomePageScoreOn += targetScore;
|
|
|
|
- medHomePageScoreOn = Double.valueOf(df.format(medHomePageScoreOn));
|
|
|
|
- }
|
|
|
|
- //扣分总和
|
|
|
|
- medHomePageScoreTw += targetScore;
|
|
|
|
- medHomePageScoreTw = Double.valueOf(df.format(medHomePageScoreTw));
|
|
|
|
- qualityControlDTO.setMedHomePageTolScore(caseScoreDTO.getCasesScore());
|
|
|
|
- break;
|
|
|
|
- case "8":
|
|
|
|
- String docAdviceNoteMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- docAdviceNote.append(docAdviceNoteMsg);
|
|
|
|
- if (caseScoreDTO.getIsReject().equals("0")) {
|
|
|
|
- docAdviceNoteScoreOn += targetScore;
|
|
|
|
- docAdviceNoteScoreOn = Double.valueOf(df.format(docAdviceNoteScoreOn));
|
|
|
|
- }
|
|
|
|
- //扣分总和
|
|
|
|
- docAdviceNoteScoreTw += targetScore;
|
|
|
|
- docAdviceNoteScoreTw = Double.valueOf(df.format(docAdviceNoteScoreTw));
|
|
|
|
- qualityControlDTO.setDocAdviceNoteTolScore(caseScoreDTO.getCasesScore());
|
|
|
|
- break;
|
|
|
|
- case "17":
|
|
|
|
- String operationInfoMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- operationInfo.append(operationInfoMsg);
|
|
|
|
- if (caseScoreDTO.getIsReject().equals("0")) {
|
|
|
|
- operationInfoScoreOn += targetScore;
|
|
|
|
- operationInfoScoreOn = Double.valueOf(df.format(operationInfoScoreOn));
|
|
|
|
- }
|
|
|
|
- //扣分总和
|
|
|
|
- operationInfoScoreTw += targetScore;
|
|
|
|
- operationInfoScoreTw = Double.valueOf(df.format(operationInfoScoreTw));
|
|
|
|
- qualityControlDTO.setOperationInfoTolScore(caseScoreDTO.getCasesScore());
|
|
|
|
- break;
|
|
|
|
- case "56":
|
|
|
|
- String courseRecordMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- courseRecord.append(courseRecordMsg);
|
|
|
|
- if (caseScoreDTO.getIsReject().equals("0")) {
|
|
|
|
- courseRecordScoreOn += targetScore;
|
|
|
|
- courseRecordScoreOn = Double.valueOf(df.format(courseRecordScoreOn));
|
|
|
|
- }
|
|
|
|
- //扣分总和
|
|
|
|
- courseRecordScoreTw += targetScore;
|
|
|
|
- courseRecordScoreTw = Double.valueOf(df.format(courseRecordScoreTw));
|
|
|
|
- qualityControlDTO.setCourseRecordTolScore(caseScoreDTO.getCasesScore());
|
|
|
|
- break;
|
|
|
|
-
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- String modelId = caseScoreDTO.getModelId();
|
|
|
|
- if(!(modelId.equals("1")||modelId.equals("2")||modelId.equals("5")||modelId.equals("6")||
|
|
|
|
- modelId.equals("8")||modelId.equals("17")||modelId.equals("56"))){
|
|
|
|
- String otherCaseMsg = caseScoreDTO.getMsg() + ";";
|
|
|
|
- otherCase.append(otherCaseMsg);
|
|
|
|
- }
|
|
|
|
- //未评分
|
|
|
|
- }
|
|
|
|
- if(StringUtils.isEmpty(caseScoreDTO.getBehospitalCode())){
|
|
|
|
- QualityControlNullDTO qualityControlNullDTO = new QualityControlNullDTO();
|
|
|
|
- BeanUtil.copyProperties(qualityControlNullDTO,qualityControlDTO);
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- };
|
|
|
|
- algorithmVO.setQcResultAlgVOList(qcResultAlgVOList);
|
|
|
|
- Double toltalScore = getScoreForCx(algorithmVO).doubleValue();
|
|
|
|
- qualityControlDTO.setTotalScore(toltalScore);
|
|
|
|
- qualityControlDTO.setAdmissionNoteScoreOn(admissionNoteScoreOn);
|
|
|
|
- qualityControlDTO.setAdmissionNoteScoreTw(admissionNoteScoreTw);
|
|
|
|
- qualityControlDTO.setFirstCourseNoteScoreOn(firstCourseNoteScoreOn);
|
|
|
|
- qualityControlDTO.setFirstCourseNoteScoreTw(firstCourseNoteScoreTw);
|
|
|
|
- qualityControlDTO.setDischargeNoteScoreOn(dischargeNoteScoreOn);
|
|
|
|
- qualityControlDTO.setDischargeNoteScoreTw(dischargeNoteScoreTw);
|
|
|
|
- qualityControlDTO.setMedHomePageScoreOn(medHomePageScoreOn);
|
|
|
|
- qualityControlDTO.setMedHomePageScoreTw(medHomePageScoreTw);
|
|
|
|
- qualityControlDTO.setDocAdviceNoteScoreOn(docAdviceNoteScoreOn);
|
|
|
|
- qualityControlDTO.setDocAdviceNoteScoreTw(docAdviceNoteScoreTw);
|
|
|
|
- qualityControlDTO.setOperationInfoScoreOn(operationInfoScoreOn);
|
|
|
|
- qualityControlDTO.setOperationInfoScoreTw(operationInfoScoreTw);
|
|
|
|
- qualityControlDTO.setCourseRecordScoreOn(courseRecordScoreOn);
|
|
|
|
- qualityControlDTO.setCourseRecordScoreTw(courseRecordScoreTw);
|
|
|
|
-
|
|
|
|
- String admissionNoteString = StringUtils.isEmpty(admissionNote) == true ?"无缺陷" : admissionNote.toString().substring(0, admissionNote.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setAdmissionNote(admissionNoteString);
|
|
|
|
- String firstCourseNoteString = StringUtils.isEmpty(firstCourseNote) == true ?"无缺陷" :firstCourseNote.toString().substring(0, firstCourseNote.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setFirstCourseNote(firstCourseNoteString);
|
|
|
|
- String dischargeNoteString = StringUtils.isEmpty(dischargeNote) == true ?"无缺陷" : dischargeNote.toString().substring(0, dischargeNote.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setDischargeNote(dischargeNoteString);
|
|
|
|
- String medHomePageString = StringUtils.isEmpty(medHomePage) == true ?"无缺陷" : medHomePage.toString().substring(0, medHomePage.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setMedHomePage(medHomePageString);
|
|
|
|
- String docAdviceNoteString = StringUtils.isEmpty(docAdviceNote) == true ?"无缺陷" : docAdviceNote.toString().substring(0, docAdviceNote.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setDocAdviceNote(docAdviceNoteString);
|
|
|
|
- String operationInfoString = StringUtils.isEmpty(operationInfo) == true ?"无缺陷" : operationInfo.toString().substring(0, operationInfo.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setOperationInfo(operationInfoString);
|
|
|
|
- String courseRecordString = StringUtils.isEmpty(courseRecord) == true ?"无缺陷" : courseRecord.toString().substring(0, courseRecord.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setCourseRecord(courseRecordString);
|
|
|
|
- String otherCaseString = StringUtils.isEmpty(otherCase) == true ?"无缺陷" : otherCase.toString().substring(0, otherCase.toString().lastIndexOf(";"));
|
|
|
|
- qualityControlDTO.setOtherCase(otherCaseString);
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- for (CaseScoreDTO caseScoreDTO : caseScoreDTOS) {
|
|
|
|
- if (StringUtils.isNotEmpty(qualityControlDTO.getBehospitalCode())&&
|
|
|
|
- StringUtils.isNotEmpty(caseScoreDTO.getBehospitalCode())&&
|
|
|
|
- qualityControlDTO.getBehospitalCode().equals(caseScoreDTO.getBehospitalCode())) {
|
|
|
|
- switch (caseScoreDTO.getModelId()) {
|
|
|
|
- case "1":
|
|
|
|
- // 非单项否决总扣分大于扣分总和
|
|
|
|
- if((admissionNoteScoreOn-qualityControlDTO.getAdmissionNoteTolScore())>=0){
|
|
|
|
- //扣分总和+单项否决总分
|
|
|
|
- qualityControlDTO.setAdmissionNoteScore(qualityControlDTO.getAdmissionNoteTolScore()+(admissionNoteScoreTw-admissionNoteScoreOn));
|
|
|
|
- }else{
|
|
|
|
- qualityControlDTO.setAdmissionNoteScore(admissionNoteScoreOn+(admissionNoteScoreTw-admissionNoteScoreOn));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case "2":
|
|
|
|
- // 非单项否决总扣分大于扣分总和
|
|
|
|
- if((firstCourseNoteScoreOn-qualityControlDTO.getFirstCourseNoteTolScore())>=0){
|
|
|
|
- //扣分总和+单项否决总分
|
|
|
|
- qualityControlDTO.setFirstCourseNoteScore(qualityControlDTO.getFirstCourseNoteTolScore()+(firstCourseNoteScoreTw-firstCourseNoteScoreOn));
|
|
|
|
- }else{
|
|
|
|
- qualityControlDTO.setFirstCourseNoteScore(firstCourseNoteScoreOn+(firstCourseNoteScoreTw-firstCourseNoteScoreOn));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case "5":
|
|
|
|
- // 非单项否决总扣分大于扣分总和
|
|
|
|
- if((dischargeNoteScoreOn-qualityControlDTO.getDischargeNoteTolScore())>=0){
|
|
|
|
- //扣分总和+单项否决总分
|
|
|
|
- qualityControlDTO.setDischargeNoteScore(qualityControlDTO.getDischargeNoteTolScore()+(dischargeNoteScoreTw-dischargeNoteScoreOn));
|
|
|
|
- }else{
|
|
|
|
- qualityControlDTO.setDischargeNoteScore(dischargeNoteScoreOn+(dischargeNoteScoreTw-dischargeNoteScoreOn));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case "6":
|
|
|
|
- // 非单项否决总扣分大于扣分总和
|
|
|
|
- if((medHomePageScoreOn-qualityControlDTO.getMedHomePageTolScore())>=0){
|
|
|
|
- //扣分总和+单项否决总分
|
|
|
|
- qualityControlDTO.setMedHomePageScore(qualityControlDTO.getMedHomePageTolScore()+(medHomePageScoreTw-medHomePageScoreOn));
|
|
|
|
- }else{
|
|
|
|
- qualityControlDTO.setMedHomePageScore(medHomePageScoreOn+(medHomePageScoreTw-medHomePageScoreOn));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case "8":
|
|
|
|
- // 非单项否决总扣分大于扣分总和
|
|
|
|
- if((docAdviceNoteScoreOn-qualityControlDTO.getDocAdviceNoteTolScore())>=0){
|
|
|
|
- //扣分总和+单项否决总分
|
|
|
|
- qualityControlDTO.setDocAdviceNoteScore(qualityControlDTO.getDocAdviceNoteTolScore()+(docAdviceNoteScoreTw-docAdviceNoteScoreOn));
|
|
|
|
- }else{
|
|
|
|
- qualityControlDTO.setDocAdviceNoteScore(docAdviceNoteScoreOn+(docAdviceNoteScoreTw-docAdviceNoteScoreOn));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case "17":
|
|
|
|
- // 非单项否决总扣分大于扣分总和
|
|
|
|
- if((operationInfoScoreOn-qualityControlDTO.getOperationInfoTolScore())>=0){
|
|
|
|
- //扣分总和+单项否决总分
|
|
|
|
- qualityControlDTO.setOperationInfoScore(qualityControlDTO.getOperationInfoTolScore()+(operationInfoScoreTw-operationInfoScoreOn));
|
|
|
|
- }else{
|
|
|
|
- qualityControlDTO.setOperationInfoScore(operationInfoScoreOn+(operationInfoScoreTw-operationInfoScoreOn));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case "56":
|
|
|
|
- // 非单项否决总扣分大于扣分总和
|
|
|
|
- if((courseRecordScoreOn-qualityControlDTO.getCourseRecordTolScore())>=0){
|
|
|
|
- //扣分总和+单项否决总分
|
|
|
|
- qualityControlDTO.setCourseRecordScore(qualityControlDTO.getCourseRecordTolScore()+(courseRecordScoreTw-courseRecordScoreOn));
|
|
|
|
- }else{
|
|
|
|
- qualityControlDTO.setCourseRecordScore(courseRecordScoreOn+(courseRecordScoreTw-courseRecordScoreOn));
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
-
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- } if(StringUtils.isEmpty(caseScoreDTO.getBehospitalCode())){
|
|
|
|
- QualityControlNullDTO qualityControlNullDTO = new QualityControlNullDTO();
|
|
|
|
- BeanUtil.copyProperties(qualityControlNullDTO,qualityControlDTO);
|
|
|
|
}
|
|
}
|
|
-
|
|
|
|
- };
|
|
|
|
- Double otherScore = new Double(0d);
|
|
|
|
- Double mainScore = new Double(0d);
|
|
|
|
- Double otherCaseScore = null;
|
|
|
|
- Double res = new Double(120d);
|
|
|
|
- Double resPr = new Double(100d);
|
|
|
|
- String scoreType = "0";
|
|
|
|
- mainScore = qualityControlDTO.getMedHomePageScore()+qualityControlDTO.getAdmissionNoteScore()+qualityControlDTO.getFirstCourseNoteScore()+
|
|
|
|
- qualityControlDTO.getCourseRecordScore()+qualityControlDTO.getOperationInfoScore()+qualityControlDTO.getDischargeNoteScore()+qualityControlDTO. getDocAdviceNoteScore();
|
|
|
|
- scoreType = sysHospitalSetFacade.getScoreType(behospitalPageVO.getHospitalId());
|
|
|
|
- if ("1".equals(scoreType)) {
|
|
|
|
- otherScore = (resPr-qualityControlDTO.getTotalScore()-mainScore);
|
|
|
|
- } else if ("0".equals(scoreType)) {
|
|
|
|
- otherScore = res-(qualityControlDTO.getTotalScore()*res/resPr)-mainScore;
|
|
|
|
}
|
|
}
|
|
- otherCaseScore = Double.valueOf(df.format(otherScore));
|
|
|
|
- qualityControlDTO.setOtherCaseScore(otherCaseScore == null ? 0d : otherCaseScore );
|
|
|
|
- qualityControlDTO.setTotalScore(rePlaceTolScore);
|
|
|
|
- }else{
|
|
|
|
|
|
+ algorithmVO.setType(0);
|
|
|
|
+ algorithmVO.setQcResultAlgVOList(qcResultAlgVOList);
|
|
|
|
+ getScoreForCx(algorithmVO,qualityControlDTO);
|
|
|
|
+ }
|
|
|
|
+ if(qualityControlDTO.getLevel().equals("未评分")){
|
|
QualityControlNullDTO qualityControlNullDTO = new QualityControlNullDTO();
|
|
QualityControlNullDTO qualityControlNullDTO = new QualityControlNullDTO();
|
|
BeanUtil.copyProperties(qualityControlNullDTO,qualityControlDTO);
|
|
BeanUtil.copyProperties(qualityControlNullDTO,qualityControlDTO);
|
|
}
|
|
}
|
|
@@ -2827,7 +2311,7 @@ public class ConsoleFacade {
|
|
* @param algorithmVO 操作条目的所有信息
|
|
* @param algorithmVO 操作条目的所有信息
|
|
* @return 评结果分数
|
|
* @return 评结果分数
|
|
*/
|
|
*/
|
|
- private BigDecimal getScoreForCx(AlgorithmVO algorithmVO) {
|
|
|
|
|
|
+ private void getScoreForCx(AlgorithmVO algorithmVO,QualityControlDTO qualityControlDTO) {
|
|
List<QcResultAlgVO> qcResultAlgHomePage = new ArrayList<>();
|
|
List<QcResultAlgVO> qcResultAlgHomePage = new ArrayList<>();
|
|
List<QcResultAlgVO> qcResultAlgHomePageExt = new ArrayList<>();
|
|
List<QcResultAlgVO> qcResultAlgHomePageExt = new ArrayList<>();
|
|
for (QcResultAlgVO qcResultAlgVO : algorithmVO.getQcResultAlgVOList()) {
|
|
for (QcResultAlgVO qcResultAlgVO : algorithmVO.getQcResultAlgVOList()) {
|
|
@@ -2839,47 +2323,19 @@ public class ConsoleFacade {
|
|
qcResultAlgHomePageExt.add(qcResultAlgVO);
|
|
qcResultAlgHomePageExt.add(qcResultAlgVO);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- List<MedQcresultCasesVO> medQcresultCasesVOList = new ArrayList<>();
|
|
|
|
|
|
+
|
|
//病案首页
|
|
//病案首页
|
|
AlgorithmVO homePage = new AlgorithmVO();
|
|
AlgorithmVO homePage = new AlgorithmVO();
|
|
BeanUtil.copyProperties(algorithmVO, homePage);
|
|
BeanUtil.copyProperties(algorithmVO, homePage);
|
|
homePage.setQcResultAlgVOList(qcResultAlgHomePage);
|
|
homePage.setQcResultAlgVOList(qcResultAlgHomePage);
|
|
homePage.setIsHomePage(true);
|
|
homePage.setIsHomePage(true);
|
|
- BigDecimal homePageRes = cal(homePage);
|
|
|
|
- String level = getHomePageLevel(homePageRes);
|
|
|
|
- MedQcresultCasesVO medQcresultCasesVOHp = new MedQcresultCasesVO();
|
|
|
|
- medQcresultCasesVOHp.setHospitalId(algorithmVO.getHospitalId());
|
|
|
|
- medQcresultCasesVOHp.setBehospitalCode(algorithmVO.getBehospitalCode());
|
|
|
|
- medQcresultCasesVOHp.setCasesId(243L);
|
|
|
|
- medQcresultCasesVOHp.setScoreRes(homePageRes);
|
|
|
|
- medQcresultCasesVOHp.setLevel(level);
|
|
|
|
- medQcresultCasesVOList.add(medQcresultCasesVOHp);
|
|
|
|
|
|
+ cal(homePage, qualityControlDTO);
|
|
|
|
+
|
|
//病案首页以外
|
|
//病案首页以外
|
|
AlgorithmVO homePageExt = new AlgorithmVO();
|
|
AlgorithmVO homePageExt = new AlgorithmVO();
|
|
BeanUtil.copyProperties(algorithmVO, homePageExt);
|
|
BeanUtil.copyProperties(algorithmVO, homePageExt);
|
|
homePageExt.setQcResultAlgVOList(qcResultAlgHomePageExt);
|
|
homePageExt.setQcResultAlgVOList(qcResultAlgHomePageExt);
|
|
- BigDecimal homePageExtRes = cal(homePageExt);
|
|
|
|
- MedQcresultCasesVO medQcresultCasesVOHpExt = new MedQcresultCasesVO();
|
|
|
|
- medQcresultCasesVOHpExt.setHospitalId(algorithmVO.getHospitalId());
|
|
|
|
- medQcresultCasesVOHpExt.setBehospitalCode(algorithmVO.getBehospitalCode());
|
|
|
|
- medQcresultCasesVOHpExt.setCasesId(0L);
|
|
|
|
- medQcresultCasesVOHpExt.setScoreRes(homePageExtRes);
|
|
|
|
- medQcresultCasesVOHpExt.setLevel("");
|
|
|
|
- medQcresultCasesVOList.add(medQcresultCasesVOHpExt);
|
|
|
|
- algorithmVO.setMedQcresultCasesVOList(medQcresultCasesVOList);
|
|
|
|
- //计算分数
|
|
|
|
- BigDecimal res = homePageRes
|
|
|
|
- .add(homePageExtRes)
|
|
|
|
- .multiply(new BigDecimal(100))
|
|
|
|
- .divide(new BigDecimal(120), 2, RoundingMode.HALF_UP);
|
|
|
|
- // 判断是否是百分制
|
|
|
|
- if (sysHospitalSetFacade.getScoreType(algorithmVO.getHospitalId()).equals("1")
|
|
|
|
- ||(algorithmVO.getHospitalId().intValue() == 1
|
|
|
|
- && StringUtil.isNotBlank(algorithmVO.getIsPlacefile())
|
|
|
|
- && algorithmVO.getIsPlacefile().equals("0"))) {
|
|
|
|
- res = cal(algorithmVO);
|
|
|
|
- }
|
|
|
|
- return res;
|
|
|
|
|
|
+ cal(homePageExt,qualityControlDTO);
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -2888,31 +2344,38 @@ public class ConsoleFacade {
|
|
* @param algorithmVO 操作条目的所有信息
|
|
* @param algorithmVO 操作条目的所有信息
|
|
* @return 评分分数
|
|
* @return 评分分数
|
|
*/
|
|
*/
|
|
- private BigDecimal cal(AlgorithmVO algorithmVO) {
|
|
|
|
- BigDecimal res = new BigDecimal(100);
|
|
|
|
- //统一为长兴的算法
|
|
|
|
- if (algorithmVO.getIsHomePage().equals(true)) {
|
|
|
|
- res = new BigDecimal(20);
|
|
|
|
- }
|
|
|
|
|
|
+ private void cal(AlgorithmVO algorithmVO ,QualityControlDTO qualityControlDTO) {
|
|
|
|
+
|
|
//模块总分
|
|
//模块总分
|
|
Map<Long, BigDecimal> casesMap = new HashMap<>();
|
|
Map<Long, BigDecimal> casesMap = new HashMap<>();
|
|
//单票否决计分
|
|
//单票否决计分
|
|
- BigDecimal rejectScore = BigDecimal.ZERO;
|
|
|
|
|
|
+ Map<Long, BigDecimal> rejectScoreMap = new HashMap<>();
|
|
//模块计分
|
|
//模块计分
|
|
Map<Long, BigDecimal> casesScoreMap = new HashMap<>();
|
|
Map<Long, BigDecimal> casesScoreMap = new HashMap<>();
|
|
|
|
+ //模块缺陷统计
|
|
|
|
+ Map<Long, String> casesNameMap = new HashMap<>();
|
|
|
|
+ //扣分统计
|
|
|
|
+ Map<Long, BigDecimal> scoreMap = new HashMap<>();
|
|
|
|
|
|
List<QcResultAlgVO> qcResultAlgVOList = algorithmVO.getQcResultAlgVOList();
|
|
List<QcResultAlgVO> qcResultAlgVOList = algorithmVO.getQcResultAlgVOList();
|
|
if (ListUtil.isNotEmpty(qcResultAlgVOList)) {
|
|
if (ListUtil.isNotEmpty(qcResultAlgVOList)) {
|
|
for (QcResultAlgVO qcResultAlgVO : qcResultAlgVOList) {
|
|
for (QcResultAlgVO qcResultAlgVO : qcResultAlgVOList) {
|
|
if (!casesMap.containsKey(qcResultAlgVO.getCasesId())) {
|
|
if (!casesMap.containsKey(qcResultAlgVO.getCasesId())) {
|
|
|
|
+ //模块总分
|
|
casesMap.put(qcResultAlgVO.getCasesId(), qcResultAlgVO.getCasesScore());
|
|
casesMap.put(qcResultAlgVO.getCasesId(), qcResultAlgVO.getCasesScore());
|
|
}
|
|
}
|
|
if (!casesScoreMap.containsKey(qcResultAlgVO.getCasesId())) {
|
|
if (!casesScoreMap.containsKey(qcResultAlgVO.getCasesId())) {
|
|
casesScoreMap.put(qcResultAlgVO.getCasesId(), BigDecimal.ZERO);
|
|
casesScoreMap.put(qcResultAlgVO.getCasesId(), BigDecimal.ZERO);
|
|
|
|
+ rejectScoreMap.put(qcResultAlgVO.getCasesId(), BigDecimal.ZERO);
|
|
|
|
+ casesNameMap.put(qcResultAlgVO.getCasesId(),"");
|
|
}
|
|
}
|
|
//单票否决计分
|
|
//单票否决计分
|
|
if (qcResultAlgVO.getIsReject().equals(1)) {
|
|
if (qcResultAlgVO.getIsReject().equals(1)) {
|
|
- rejectScore = rejectScore.add(qcResultAlgVO.getScore());
|
|
|
|
|
|
+ if (rejectScoreMap.containsKey(qcResultAlgVO.getCasesId())) {
|
|
|
|
+ BigDecimal casesScore = rejectScoreMap.get(qcResultAlgVO.getCasesId());
|
|
|
|
+ casesScore = casesScore.add(qcResultAlgVO.getScore());
|
|
|
|
+ rejectScoreMap.put(qcResultAlgVO.getCasesId(), casesScore);
|
|
|
|
+ }
|
|
} else {
|
|
} else {
|
|
//非单票否决计分
|
|
//非单票否决计分
|
|
if (casesScoreMap.containsKey(qcResultAlgVO.getCasesId())) {
|
|
if (casesScoreMap.containsKey(qcResultAlgVO.getCasesId())) {
|
|
@@ -2921,40 +2384,236 @@ public class ConsoleFacade {
|
|
casesScoreMap.put(qcResultAlgVO.getCasesId(), casesScore);
|
|
casesScoreMap.put(qcResultAlgVO.getCasesId(), casesScore);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ String casesName = casesNameMap.get(qcResultAlgVO.getCasesId());
|
|
|
|
+ if(StringUtils.isEmpty(casesName)){
|
|
|
|
+ casesName = casesName + qcResultAlgVO.getMsg();
|
|
|
|
+ }else{
|
|
|
|
+ casesName = casesName + ";" + qcResultAlgVO.getMsg();
|
|
|
|
+ }
|
|
|
|
+ casesNameMap.put(qcResultAlgVO.getCasesId(),casesName);
|
|
}
|
|
}
|
|
|
|
|
|
- //结果先减去单票否决计分总和
|
|
|
|
- res = res.subtract(rejectScore);
|
|
|
|
- //结果小于0按0计算
|
|
|
|
- if (BigDecimalUtil.lt(res, BigDecimal.ZERO)) {
|
|
|
|
- return BigDecimal.ZERO;
|
|
|
|
- } else {
|
|
|
|
|
|
+
|
|
//模块计分
|
|
//模块计分
|
|
for (Map.Entry<Long, BigDecimal> casesScore : casesScoreMap.entrySet()) {
|
|
for (Map.Entry<Long, BigDecimal> casesScore : casesScoreMap.entrySet()) {
|
|
BigDecimal allSccore = casesMap.get(casesScore.getKey());
|
|
BigDecimal allSccore = casesMap.get(casesScore.getKey());
|
|
if (BigDecimalUtil.le(allSccore, casesScore.getValue())) {
|
|
if (BigDecimalUtil.le(allSccore, casesScore.getValue())) {
|
|
//模块标准分小于等于模块减分总和就用模块标准分
|
|
//模块标准分小于等于模块减分总和就用模块标准分
|
|
- res = res.subtract(allSccore);
|
|
|
|
|
|
+ allSccore = allSccore.add(rejectScoreMap.get(casesScore.getKey()));
|
|
} else {
|
|
} else {
|
|
//模块标准分大于模块减分总和就用模块减分总和
|
|
//模块标准分大于模块减分总和就用模块减分总和
|
|
- res = res.subtract(casesScore.getValue());
|
|
|
|
|
|
+ allSccore =casesScore.getValue().add(rejectScoreMap.get(casesScore.getKey()));
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
+ if (BigDecimalUtil.lt(allSccore, BigDecimal.ZERO)) {
|
|
|
|
+ allSccore = BigDecimal.ZERO;
|
|
|
|
+ }
|
|
|
|
+ scoreMap.put(casesScore.getKey(),allSccore);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ DecimalFormat df=new DecimalFormat("0.0");
|
|
|
|
+
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(237L))){
|
|
|
|
+ qualityControlDTO.setAdmissionNote(casesNameMap.get(237L));
|
|
}
|
|
}
|
|
|
|
+ if( scoreMap.get(237L) != null){
|
|
|
|
+ qualityControlDTO.setAdmissionNoteScore( Double.valueOf(df.format(scoreMap.get(237L))));
|
|
}
|
|
}
|
|
- //结果小于0按0计算
|
|
|
|
- if (BigDecimalUtil.lt(res, BigDecimal.ZERO)) {
|
|
|
|
- res = BigDecimal.ZERO;
|
|
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(238L))){
|
|
|
|
+ qualityControlDTO.setFirstCourseNote(casesNameMap.get(238L));
|
|
}
|
|
}
|
|
|
|
+ if( scoreMap.get(238L) != null){
|
|
|
|
+ qualityControlDTO.setFirstCourseNoteScore( Double.valueOf(df.format(scoreMap.get(238L))));
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(242L))){
|
|
|
|
+ qualityControlDTO.setDischargeNote(casesNameMap.get(242L));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(242L) != null){
|
|
|
|
+ qualityControlDTO.setDischargeNoteScore( Double.valueOf(df.format(scoreMap.get(242L))));
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(243L))){
|
|
|
|
+ qualityControlDTO.setMedHomePage(casesNameMap.get(243L));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(243L) != null){
|
|
|
|
+ qualityControlDTO.setMedHomePageScore( Double.valueOf(df.format(scoreMap.get(243L))));
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(280L))){
|
|
|
|
+ qualityControlDTO.setDocAdviceNote(casesNameMap.get(280L));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(280L) != null){
|
|
|
|
+ qualityControlDTO.setDocAdviceNoteScore( Double.valueOf(df.format(scoreMap.get(280L))));
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ String operationInfo = "";
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(248L))){
|
|
|
|
+ operationInfo = "围手术期病历讨论:"+casesNameMap.get(248L);
|
|
|
|
+ }
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(249L))){
|
|
|
|
+ operationInfo = operationInfo+";"+"术前讨论制度:"+casesNameMap.get(249L);
|
|
|
|
+ }
|
|
|
|
+ if(operationInfo.contains(";")){
|
|
|
|
+ String[] split = operationInfo.split(";");
|
|
|
|
+ if(StringUtils.isEmpty(split[0])){
|
|
|
|
+ operationInfo = split[1];
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ qualityControlDTO.setOperationInfo(StringUtils.isEmpty(operationInfo)==true?"无缺陷":operationInfo);
|
|
|
|
+
|
|
|
|
+ Double score_248 = 0d;
|
|
|
|
+ Double score_11 = 0d;
|
|
|
|
+ Double score_249 = 0d;
|
|
|
|
+ if( scoreMap.get(248L) != null){
|
|
|
|
+ score_248 = Double.valueOf(df.format(scoreMap.get(248L)));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(11L) != null){
|
|
|
|
+ score_11 = Double.valueOf(df.format(scoreMap.get(11L)));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(249L) != null){
|
|
|
|
+ score_249 = Double.valueOf(df.format(scoreMap.get(249L)));
|
|
|
|
+ }
|
|
|
|
+ qualityControlDTO.setOperationInfoScore(score_248+score_11+score_249);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ String courseRecord = "";
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(239L))){
|
|
|
|
+ courseRecord = "死亡病例讨论制度:"+casesNameMap.get(239L);
|
|
}
|
|
}
|
|
- return res;
|
|
|
|
- }
|
|
|
|
- private String getHomePageLevel(BigDecimal score) {
|
|
|
|
- String level = "不合格";
|
|
|
|
- //得分≥18分为甲级
|
|
|
|
- if (BigDecimalUtil.ge(score, new BigDecimal(18))) {
|
|
|
|
- level = "合格";
|
|
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(240L))){
|
|
|
|
+ courseRecord = courseRecord+";"+"疑难病例讨论制度:"+casesNameMap.get(240L);
|
|
|
|
+ }
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(241L))){
|
|
|
|
+ courseRecord =courseRecord+";"+ "三级查房制度:"+casesNameMap.get(241L);
|
|
|
|
+ }
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(244L))){
|
|
|
|
+ courseRecord =courseRecord+";"+ "会诊制度:"+casesNameMap.get(244L);
|
|
|
|
+ }
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(245L))){
|
|
|
|
+ courseRecord =courseRecord+";"+ "分级护理制度:"+casesNameMap.get(245L);
|
|
|
|
+ }
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(246L))){
|
|
|
|
+ courseRecord = courseRecord+";"+"值班及交接班制度:"+casesNameMap.get(246L);
|
|
|
|
+ }
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(247L))){
|
|
|
|
+ courseRecord = courseRecord+";"+"临床用血审核制度:"+casesNameMap.get(247L);
|
|
|
|
+ }
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(250L))){
|
|
|
|
+ courseRecord =courseRecord+";"+ "死亡记录:"+casesNameMap.get(250L);
|
|
|
|
+ }
|
|
|
|
+ if(courseRecord.contains(";")) {
|
|
|
|
+ String[] courseRecordSplit = courseRecord.split(";");
|
|
|
|
+ if (StringUtils.isEmpty(courseRecordSplit[0])) {
|
|
|
|
+ courseRecord = courseRecordSplit[1];
|
|
|
|
+ }
|
|
}
|
|
}
|
|
- return level;
|
|
|
|
|
|
+ qualityControlDTO.setCourseRecord(StringUtils.isEmpty(courseRecord)==true?"无缺陷":courseRecord);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ Double score_239 = 0d;
|
|
|
|
+ Double score_240 = 0d;
|
|
|
|
+ Double score_241 = 0d;
|
|
|
|
+ Double score_244 = 0d;
|
|
|
|
+ Double score_245 = 0d;
|
|
|
|
+ Double score_246 = 0d;
|
|
|
|
+ Double score_247 = 0d;
|
|
|
|
+ Double score_250 = 0d;
|
|
|
|
+ DecimalFormat df=new DecimalFormat("0.0");
|
|
|
|
+ if( scoreMap.get(239L) != null){
|
|
|
|
+ score_239 = Double.valueOf(df.format(scoreMap.get(239L)));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(240L) != null){
|
|
|
|
+ score_240 = Double.valueOf(df.format(scoreMap.get(240L)));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(241L) != null){
|
|
|
|
+ score_241 = Double.valueOf(df.format(scoreMap.get(241L)));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(244L) != null){
|
|
|
|
+ score_244 = Double.valueOf(df.format(scoreMap.get(244L)));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(245L) != null){
|
|
|
|
+ score_245 = Double.valueOf(df.format(scoreMap.get(245L)));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(246L) != null){
|
|
|
|
+ score_246 = Double.valueOf(df.format(scoreMap.get(246L)));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(247L) != null){
|
|
|
|
+ score_247 = Double.valueOf(df.format(scoreMap.get(247L)));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(250L) != null){
|
|
|
|
+ score_250 = Double.valueOf(df.format(scoreMap.get(250L)));
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ qualityControlDTO.setCourseRecordScore(score_239+score_240+score_241+score_244+score_245+score_246+score_247+score_250);
|
|
|
|
+ /* qualityControlDTO.setCourseRecord(name_239+";"+name_240
|
|
|
|
+ +";"+name_241+";"+name_244+";"+name_245
|
|
|
|
+ +";"+name_246+";"+name_247+";"+name_250);
|
|
|
|
+ qualityControlDTO.setCourseRecordScore(score_239+score_240+score_241+score_244+score_245+score_246
|
|
|
|
+ +score_247+score_250);*/
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ Double score_262 = 0d;
|
|
|
|
+ Double score_281 = 0d;
|
|
|
|
+ Double score_282 = 0d;
|
|
|
|
+ Double score_283 = 0d;
|
|
|
|
+ Double score_284 = 0d;
|
|
|
|
+ if( scoreMap.get(262L) != null){
|
|
|
|
+ score_262 = Double.valueOf(df.format(scoreMap.get(262L)));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(281L) != null){
|
|
|
|
+ score_281 = Double.valueOf(df.format(scoreMap.get(281L)));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(282L) != null){
|
|
|
|
+ score_282 = Double.valueOf(df.format(scoreMap.get(282L)));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(283L) != null){
|
|
|
|
+ score_283 = Double.valueOf(df.format(scoreMap.get(283L)));
|
|
|
|
+ }
|
|
|
|
+ if( scoreMap.get(284L) != null){
|
|
|
|
+ score_284 = Double.valueOf(df.format(scoreMap.get(284L)));
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ String otherCase = "";
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(262L))){
|
|
|
|
+ otherCase = "危急值报告制度:"+casesNameMap.get(262L);
|
|
|
|
+ }
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(281L))){
|
|
|
|
+ otherCase = otherCase +";"+"危急值报告制度:"+casesNameMap.get(281L);
|
|
|
|
+ }
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(282L))){
|
|
|
|
+ otherCase = otherCase +";"+ "危急值报告制度:"+casesNameMap.get(282L);
|
|
|
|
+ }
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(283L))){
|
|
|
|
+ otherCase = otherCase +";"+ "危急值报告制度:"+casesNameMap.get(283L);
|
|
|
|
+ }
|
|
|
|
+ if(StringUtils.isNotEmpty(casesNameMap.get(284L))){
|
|
|
|
+ otherCase = otherCase +";"+ "危急值报告制度:"+casesNameMap.get(284L);
|
|
|
|
+ }
|
|
|
|
+ if(otherCase.contains(";")) {
|
|
|
|
+ String[] otherCaseSplit = otherCase.split(";");
|
|
|
|
+ if(StringUtils.isEmpty(otherCaseSplit[0])){
|
|
|
|
+ otherCase = otherCaseSplit[1];
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ qualityControlDTO.setOtherCase(StringUtils.isEmpty(otherCase)==true?"无缺陷":otherCase);
|
|
|
|
+ qualityControlDTO.setOtherCaseScore(score_262+score_281+score_282+score_283+score_284);
|
|
|
|
+
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|