chengyao 4 年 前
コミット
6cc8c5939c

+ 15 - 64
src/main/java/com/diagbot/dto/QualityControlDeptDTO.java

@@ -71,98 +71,89 @@ public class QualityControlDeptDTO {
      * 病案首页--
      */
     @Excel(name = "病案首页", width = 30, orderNum = "6")
-    private String medHomePage;
+    private String medHomePage = "无缺陷";
     /**
      * 病案首页扣分
      */
     @Excel(name = "扣分",width = 12, orderNum = "7")
     private Double medHomePageScore= 0d;
-    private Double medHomePageScoreOn= 0d;
-    private Double medHomePageScoreTw= 0d;
+
     /**
      * 入院记录--
      */
     @Excel(name = "入院记录",width = 30, orderNum = "8")
-    private String admissionNote;
+    private String admissionNote = "无缺陷";
 
     /**
      * 入院记录扣分
      */
     @Excel(name = "扣分",width = 12, orderNum = "9")
     private Double admissionNoteScore= 0d;
-    //非单项否决扣分
-    private Double admissionNoteScoreOn= 0d;
-    //扣分项总和
-    private Double admissionNoteScoreTw= 0d;
+
 
     /**
      * 首次病程录--
      */
     @Excel(name = "首次病程录",width = 30, orderNum = "10")
-    private String firstCourseNote;
+    private String firstCourseNote = "无缺陷";
 
     /**
      * 首次病程录扣分
      */
     @Excel(name = "扣分",width = 12, orderNum = "11")
     private Double firstCourseNoteScore= 0d;
-    private Double firstCourseNoteScoreOn= 0d;
-    private Double firstCourseNoteScoreTw= 0d;
+
     /**
      * 病程记录--
      */
     @Excel(name = "病程记录",width = 30, orderNum = "12")
-    private String courseRecord;
+    private String courseRecord = "无缺陷";
 
     /**
      * 病程记录扣分
      */
     @Excel(name = "扣分", width = 12,orderNum = "13")
     private Double courseRecordScore= 0d;
-    private Double courseRecordScoreOn= 0d;
-    private Double courseRecordScoreTw= 0d;
+
     /**
      * 手术信息--
      */
     @Excel(name = "手术信息",width = 30, orderNum = "14")
-    private String  operationInfo;
+    private String  operationInfo = "无缺陷";
 
     /**
      * 手术信息扣分
      */
     @Excel(name = "扣分",width = 12, orderNum = "15")
     private Double operationInfoScore= 0d;
-    private Double  operationInfoScoreOn= 0d;
-    private Double  operationInfoScoreTw= 0d;
+
     /**
      * 出院记录--
      */
     @Excel(name = "出院记录",width = 30, orderNum = "16")
-    private String  dischargeNote;
+    private String  dischargeNote = "无缺陷";
     /**
      * 出院记录扣分
      */
     @Excel(name = "扣分",width = 12, orderNum = "17")
     private Double  dischargeNoteScore= 0d;
-    private Double  dischargeNoteScoreOn= 0d;
-    private Double  dischargeNoteScoreTw= 0d;
+
     /**
      * 医嘱单--
      */
     @Excel(name = "医嘱单",width = 30, orderNum = "18")
-    private String  docAdviceNote;
+    private String  docAdviceNote = "无缺陷";
     /**
      * 医嘱单扣分
      */
     @Excel(name = "扣分",width = 12, orderNum = "19")
     private Double docAdviceNoteScore= 0d;
-    private Double  docAdviceNoteScoreOn= 0d;
-    private Double  docAdviceNoteScoreTw= 0d;
+
     /**
      * 其他
      */
     @Excel(name = "其他",width = 30, orderNum = "20")
-    private String  otherCase;
+    private String  otherCase = "无缺陷";
     /**
      * 其他扣分
      */
@@ -192,46 +183,6 @@ public class QualityControlDeptDTO {
     private String chName;
 
 
-    /**
-     * 病案首页模块总分
-     */
-    private Double medHomePageTolScore =0d;
-
-
-    /**
-     * 入院记录模块总分
-     */
-    private Double admissionNoteTolScore=0d;
-
-    /**
-     * 首次病程录模块总分
-     */
-    private Double firstCourseNoteTolScore=0d;
-
-    /**
-     * 病程记录模块总分
-     */
-    private Double courseRecordTolScore=0d;
-
-
-    /**
-     * 手术信息模块总分
-     */
-    private Double operationInfoTolScore=0d;
-
-
-    /**
-     * 出院记录模块总分
-     */
-    private Double dischargeNoteTolScore=0d;
-
-
-
-    /**
-     * 医嘱单模块总分
-     */
-    private Double docAdviceNoteTolScore=0d;
-
 
 
 }

+ 248 - 331
src/main/java/com/diagbot/facade/ConsoleByDeptFacade.java

@@ -1063,7 +1063,6 @@ public class ConsoleByDeptFacade {
      */
     public IPage<QualityControlDeptDTO> qualityControlByDept(@Param("filterVO")  BehospitalPageVO behospitalPageVO) {
         behospitalPageSet(behospitalPageVO);
-        DecimalFormat df=new DecimalFormat("0.0");
         IPage<QualityControlDeptDTO> records = behospitalInfoFacade.qualityControlByDept(behospitalPageVO);
         List<QualityControlDeptDTO> qualityControlDTOs = records.getRecords();
         CaseScoreVO caseScoreVO = new CaseScoreVO();
@@ -1071,29 +1070,6 @@ public class ConsoleByDeptFacade {
         List<CaseScoreDTO>caseScoreDTOS= behospitalInfoFacade.getQualityCaseSorce(caseScoreVO);
         if(ListUtil.isNotEmpty(qualityControlDTOs)){
             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)){
                     AlgorithmVO algorithmVO = new AlgorithmVO();
                     BeanUtil.copyProperties(behospitalPageVO,algorithmVO);
@@ -1103,253 +1079,19 @@ public class ConsoleByDeptFacade {
                         if (StringUtils.isNotEmpty(qualityControlDTO.getBehospitalCode())&&
                                 StringUtils.isNotEmpty(caseScoreDTO.getBehospitalCode())&&
                                 qualityControlDTO.getBehospitalCode().equals(caseScoreDTO.getBehospitalCode())) {
-                            double targetScore =  Double.valueOf(df.format(caseScoreDTO.getScore()));
-
                             QcResultAlgVO qcResultAlgVO = new QcResultAlgVO();
                             BeanUtil.copyProperties(caseScoreDTO,qcResultAlgVO);
                             qcResultAlgVO.setIsReject(Integer.valueOf(caseScoreDTO.getIsReject()));
                             qcResultAlgVO.setScore(new BigDecimal(caseScoreDTO.getScore()));
                             qcResultAlgVO.setCasesScore(new BigDecimal(caseScoreDTO.getCasesScore()));
                             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();
                     BeanUtil.copyProperties(qualityControlNullDTO,qualityControlDTO);
                 }
@@ -1624,7 +1366,7 @@ public class ConsoleByDeptFacade {
      * @param algorithmVO 操作条目的所有信息
      * @return 评结果分数
      */
-    private BigDecimal getScoreForCx(AlgorithmVO algorithmVO) {
+    private void getScoreForCx(AlgorithmVO algorithmVO,QualityControlDeptDTO qualityControlDTO) {
         List<QcResultAlgVO> qcResultAlgHomePage = new ArrayList<>();
         List<QcResultAlgVO> qcResultAlgHomePageExt = new ArrayList<>();
         for (QcResultAlgVO qcResultAlgVO : algorithmVO.getQcResultAlgVOList()) {
@@ -1636,47 +1378,19 @@ public class ConsoleByDeptFacade {
                 qcResultAlgHomePageExt.add(qcResultAlgVO);
             }
         }
-        List<MedQcresultCasesVO> medQcresultCasesVOList = new ArrayList<>();
+
         //病案首页
         AlgorithmVO homePage = new AlgorithmVO();
         BeanUtil.copyProperties(algorithmVO, homePage);
         homePage.setQcResultAlgVOList(qcResultAlgHomePage);
         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();
         BeanUtil.copyProperties(algorithmVO, homePageExt);
         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);
     }
 
     /**
@@ -1685,31 +1399,38 @@ public class ConsoleByDeptFacade {
      * @param algorithmVO 操作条目的所有信息
      * @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 ,QualityControlDeptDTO qualityControlDTO) {
+
         //模块总分
         Map<Long, BigDecimal> casesMap = new HashMap<>();
         //单票否决计分
-        BigDecimal rejectScore = BigDecimal.ZERO;
+        Map<Long, BigDecimal> rejectScoreMap = 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();
         if (ListUtil.isNotEmpty(qcResultAlgVOList)) {
             for (QcResultAlgVO qcResultAlgVO : qcResultAlgVOList) {
                 if (!casesMap.containsKey(qcResultAlgVO.getCasesId())) {
+                    //模块总分
                     casesMap.put(qcResultAlgVO.getCasesId(), qcResultAlgVO.getCasesScore());
                 }
                 if (!casesScoreMap.containsKey(qcResultAlgVO.getCasesId())) {
                     casesScoreMap.put(qcResultAlgVO.getCasesId(), BigDecimal.ZERO);
+                    rejectScoreMap.put(qcResultAlgVO.getCasesId(), BigDecimal.ZERO);
+                    casesNameMap.put(qcResultAlgVO.getCasesId(),"");
                 }
                 //单票否决计分
                 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 {
                     //非单票否决计分
                     if (casesScoreMap.containsKey(qcResultAlgVO.getCasesId())) {
@@ -1718,40 +1439,236 @@ public class ConsoleByDeptFacade {
                         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()) {
-                    BigDecimal allSccore = casesMap.get(casesScore.getKey());
-                    if (BigDecimalUtil.le(allSccore, casesScore.getValue())) {
-                        //模块标准分小于等于模块减分总和就用模块标准分
-                        res = res.subtract(allSccore);
-                    } else {
-                        //模块标准分大于模块减分总和就用模块减分总和
-                        res = res.subtract(casesScore.getValue());
-                    }
+
+            //模块计分
+            for (Map.Entry<Long, BigDecimal> casesScore : casesScoreMap.entrySet()) {
+                BigDecimal allSccore = casesMap.get(casesScore.getKey());
+                if (BigDecimalUtil.le(allSccore, casesScore.getValue())) {
+                    //模块标准分小于等于模块减分总和就用模块标准分
+                    allSccore = allSccore.add(rejectScoreMap.get(casesScore.getKey()));
+                } else {
+                    //模块标准分大于模块减分总和就用模块减分总和
+                    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))));
+            }
+
+
+
+            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))));
             }
-            //结果小于0按0计算
-            if (BigDecimalUtil.lt(res, BigDecimal.ZERO)) {
-                res = BigDecimal.ZERO;
+
+
+
+            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);
         }
-        return res;
-    }
-    private String getHomePageLevel(BigDecimal score) {
-        String level = "不合格";
-        //得分≥18分为甲级
-        if (BigDecimalUtil.ge(score, new BigDecimal(18))) {
-            level = "合格";
+
+        String courseRecord = "";
+        if(StringUtils.isNotEmpty(casesNameMap.get(239L))){
+            courseRecord = "死亡病例讨论制度:"+casesNameMap.get(239L);
+        }
+        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];
+            }
+        }
+        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)));
         }
-        return level;
+        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);
+
     }
 
 }

+ 28 - 42
src/main/java/com/diagbot/facade/ConsoleFacade.java

@@ -2412,13 +2412,13 @@ public class ConsoleFacade {
                 }
 
 
-
+            DecimalFormat df=new DecimalFormat("0.0");
 
                 if(StringUtils.isNotEmpty(casesNameMap.get(237L))){
                     qualityControlDTO.setAdmissionNote("入院记录:"+casesNameMap.get(237L));
                 }
                 if( scoreMap.get(237L) != null){
-                qualityControlDTO.setAdmissionNoteScore(scoreMap.get(237L).doubleValue());
+                qualityControlDTO.setAdmissionNoteScore( Double.valueOf(df.format(scoreMap.get(237L))));
             }
 
 
@@ -2427,7 +2427,7 @@ public class ConsoleFacade {
                     qualityControlDTO.setFirstCourseNote("首次病程录:"+casesNameMap.get(238L));
             }
             if( scoreMap.get(238L) != null){
-                qualityControlDTO.setFirstCourseNoteScore(scoreMap.get(238L).doubleValue());
+                qualityControlDTO.setFirstCourseNoteScore( Double.valueOf(df.format(scoreMap.get(238L))));
             }
 
 
@@ -2436,7 +2436,7 @@ public class ConsoleFacade {
                     qualityControlDTO.setDischargeNote("出院记录:"+casesNameMap.get(242L));
                 }
             if( scoreMap.get(242L) != null){
-                qualityControlDTO.setDischargeNoteScore(scoreMap.get(242L).doubleValue());
+                qualityControlDTO.setDischargeNoteScore( Double.valueOf(df.format(scoreMap.get(242L))));
             }
 
 
@@ -2445,7 +2445,7 @@ public class ConsoleFacade {
                     qualityControlDTO.setMedHomePage("病案首页:"+casesNameMap.get(243L));
                 }
             if( scoreMap.get(243L) != null){
-                qualityControlDTO.setMedHomePageScore(scoreMap.get(243L).doubleValue());
+                qualityControlDTO.setMedHomePageScore( Double.valueOf(df.format(scoreMap.get(243L))));
             }
 
 
@@ -2454,11 +2454,10 @@ public class ConsoleFacade {
                     qualityControlDTO.setDocAdviceNote("医嘱单:"+casesNameMap.get(280L));
                 }
             if( scoreMap.get(280L) != null){
-                qualityControlDTO.setDocAdviceNoteScore(scoreMap.get(280L).doubleValue());
+                qualityControlDTO.setDocAdviceNoteScore( Double.valueOf(df.format(scoreMap.get(280L))));
             }
 
-                 String name_248 = "";
-                 String name_249 = "";
+
             String operationInfo = "";
                 if(StringUtils.isNotEmpty(casesNameMap.get(248L))){
                     operationInfo = "围手术期病历讨论:"+casesNameMap.get(248L);
@@ -2478,27 +2477,18 @@ public class ConsoleFacade {
                 Double score_248 = 0d;
                 Double score_11 = 0d;
                 Double score_249 = 0d;
-            if( scoreMap.get(248) != null){
-                score_248 = scoreMap.get(248).doubleValue();
+            if( scoreMap.get(248L) != null){
+                score_248 = Double.valueOf(df.format(scoreMap.get(248L)));
             }
-            if( scoreMap.get(11) != null){
-                score_11 = scoreMap.get(11).doubleValue();
+            if( scoreMap.get(11L) != null){
+                score_11 =  Double.valueOf(df.format(scoreMap.get(11L)));
             }
-            if( scoreMap.get(249) != null){
-                score_249= scoreMap.get(249).doubleValue();
+            if( scoreMap.get(249L) != null){
+                score_249 = Double.valueOf(df.format(scoreMap.get(249L)));
             }
                 qualityControlDTO.setOperationInfoScore(score_248+score_11+score_249);
             }
 
-        String name_239 = "";
-        String name_240 = "";
-        String name_241= "";
-        String name_244 = "";
-        String name_245 = "";
-        String name_246 = "";
-        String name_247 = "";
-        String name_250 = "";
-
        String courseRecord = "";
         if(StringUtils.isNotEmpty(casesNameMap.get(239L))){
             courseRecord = "死亡病例讨论制度:"+casesNameMap.get(239L);
@@ -2541,29 +2531,31 @@ public class ConsoleFacade {
         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 = scoreMap.get(239L).doubleValue();
+            score_239 =  Double.valueOf(df.format(scoreMap.get(239L)));
         }
         if( scoreMap.get(240L) != null){
-            score_240 = scoreMap.get(240L).doubleValue();
+            score_240 =  Double.valueOf(df.format(scoreMap.get(240L)));
         }
         if( scoreMap.get(241L) != null){
-            score_241= scoreMap.get(241L).doubleValue();
+            score_241 =  Double.valueOf(df.format(scoreMap.get(241L)));
         }
         if( scoreMap.get(244L) != null){
-            score_244= scoreMap.get(244L).doubleValue();
+            score_244 =  Double.valueOf(df.format(scoreMap.get(244L)));
         }
         if( scoreMap.get(245L) != null){
-            score_245= scoreMap.get(245L).doubleValue();
+            score_245 =  Double.valueOf(df.format(scoreMap.get(245L)));
         }
         if( scoreMap.get(246L) != null){
-            score_246= scoreMap.get(246L).doubleValue();
+            score_246 =  Double.valueOf(df.format(scoreMap.get(246L)));
         }
         if( scoreMap.get(247L) != null){
-            score_247= scoreMap.get(247L).doubleValue();
+            score_247 =  Double.valueOf(df.format(scoreMap.get(247L)));
         }
         if( scoreMap.get(250L) != null){
-            score_250= scoreMap.get(250L).doubleValue();
+            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
@@ -2575,33 +2567,27 @@ public class ConsoleFacade {
 
 
 
-
         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 = scoreMap.get(262L).doubleValue();
+            score_262 =  Double.valueOf(df.format(scoreMap.get(262L)));
         }
         if( scoreMap.get(281L) != null){
-            score_281 = scoreMap.get(281L).doubleValue();
+            score_281 =  Double.valueOf(df.format(scoreMap.get(281L)));
         }
         if( scoreMap.get(282L) != null){
-            score_282= scoreMap.get(282L).doubleValue();
+            score_282 =  Double.valueOf(df.format(scoreMap.get(282L)));
         }
         if( scoreMap.get(283L) != null){
-            score_283 = scoreMap.get(283L).doubleValue();
+            score_283 =  Double.valueOf(df.format(scoreMap.get(283L)));
         }
         if( scoreMap.get(284L) != null){
-            score_284 = scoreMap.get(284L).doubleValue();
+            score_284 =  Double.valueOf(df.format(scoreMap.get(284L)));
 
         }
-        String name_262 = "";
-        String name_281 = "";
-        String name_282 = "";
-        String name_283 = "";
-        String name_284 = "";
 
         String otherCase = "";
         if(StringUtils.isNotEmpty(casesNameMap.get(262L))){

+ 2 - 2
src/main/java/com/diagbot/web/ConsoleByDeptController.java

@@ -516,7 +516,7 @@ public class ConsoleByDeptController {
      * @param behospitalPageVO
      * @return
      */
-    @ApiOperation(value = "病历质控报表[by:cy]",
+    @ApiOperation(value = "病历质控报表-科室[by:cy]",
             notes = "type: 统计维度 1-本月,2-本年(必填)<br>" +
                     "level: 病历等级 <br>" +
                     "name: 科室名称 <br>" +
@@ -525,7 +525,7 @@ public class ConsoleByDeptController {
                     "isPlacefile: 是否归档(0:未归档,1:已归档) <br>")
     @PostMapping("/qualityControlByDept")
     @SysLogger("qualityControlByDept")
-    public RespDTO<IPage<QualityControlDTO>> qualityControlByDept(@RequestBody BehospitalPageVO behospitalPageVO) {
+    public RespDTO<IPage<QualityControlDeptDTO>> qualityControlByDept(@RequestBody BehospitalPageVO behospitalPageVO) {
         return RespDTO.onSuc(consoleByDeptFacade.qualityControlByDept(behospitalPageVO));
     }