浏览代码

参数调整

zhoutg 5 年之前
父节点
当前提交
eff1e07b11

+ 8 - 2
src/main/java/com/diagbot/dto/QcResultDTO.java

@@ -3,6 +3,7 @@ package com.diagbot.dto;
 import lombok.Data;
 import lombok.Data;
 
 
 import java.io.Serializable;
 import java.io.Serializable;
+import java.math.BigDecimal;
 
 
 /**
 /**
  * <p>
  * <p>
@@ -27,14 +28,19 @@ public class QcResultDTO implements Serializable {
      */
      */
     private String pageData;
     private String pageData;
 
 
+    /**
+     * 菜单数据
+     */
+    private String menuData;
+
     /**
     /**
      * 评分类型(1:机器,2:人工)
      * 评分类型(1:机器,2:人工)
      */
      */
-    private String gradeType;
+    private Integer gradeType;
 
 
     /**
     /**
      * 最后得分
      * 最后得分
      */
      */
-    private String scoreRes;
+    private BigDecimal scoreRes;
 
 
 }
 }

+ 5 - 0
src/main/java/com/diagbot/entity/QcresultInfo.java

@@ -52,6 +52,11 @@ public class QcresultInfo implements Serializable {
      */
      */
     private String pageData;
     private String pageData;
 
 
+    /**
+     * 菜单数据
+     */
+    private String menuData;
+
     /**
     /**
      * 最后得分
      * 最后得分
      */
      */

+ 5 - 3
src/main/java/com/diagbot/facade/AlgorithmFacade.java

@@ -40,6 +40,7 @@ public class AlgorithmFacade {
         }
         }
         //处理数据
         //处理数据
         dataDeal(algorithmVO);
         dataDeal(algorithmVO);
+        //计算得分
         BigDecimal res = cal(algorithmVO);
         BigDecimal res = cal(algorithmVO);
         return res;
         return res;
     }
     }
@@ -89,15 +90,16 @@ public class AlgorithmFacade {
 
 
         }
         }
         //删除
         //删除
-        if (algorithmVO.getType().equals(2)) {
+        else if (algorithmVO.getType().equals(2)) {
             if (null == algorithmVO.getOptResultAlgVO()) {
             if (null == algorithmVO.getOptResultAlgVO()) {
                 throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "删除操作条目不能为空!");
                 throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "删除操作条目不能为空!");
             }
             }
             //操作数据
             //操作数据
             if (ListUtil.isNotEmpty(qcResultAlgVOList)) {
             if (ListUtil.isNotEmpty(qcResultAlgVOList)) {
                 Boolean hasData = false;
                 Boolean hasData = false;
+                Long optId = algorithmVO.getOptResultAlgVO().getId(); // 操作id
                 for (QcResultAlgVO qcResultAlgVO : qcResultAlgVOList) {
                 for (QcResultAlgVO qcResultAlgVO : qcResultAlgVOList) {
-                    if (qcResultAlgVO.getId().equals(algorithmVO.getOptResultAlgVO().getId())) {
+                    if (qcResultAlgVO.getId().equals(optId)) {
                         qcResultAlgVOList.remove(qcResultAlgVO);
                         qcResultAlgVOList.remove(qcResultAlgVO);
                         hasData = true;
                         hasData = true;
                         break;
                         break;
@@ -109,7 +111,7 @@ public class AlgorithmFacade {
             }
             }
         }
         }
         //修改
         //修改
-        if (algorithmVO.getType().equals(3)) {
+        else if (algorithmVO.getType().equals(3)) {
             if (null == algorithmVO.getOptResultAlgVO()) {
             if (null == algorithmVO.getOptResultAlgVO()) {
                 throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "修改操作条目不能为空!");
                 throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "修改操作条目不能为空!");
             }
             }

+ 43 - 24
src/main/java/com/diagbot/facade/BehospitalInfoFacade.java

@@ -11,6 +11,7 @@ import com.diagbot.dto.BehospitalInfoDTO;
 import com.diagbot.dto.MsgDTO;
 import com.diagbot.dto.MsgDTO;
 import com.diagbot.dto.OutputInfo;
 import com.diagbot.dto.OutputInfo;
 import com.diagbot.dto.QcCasesEntryDTO;
 import com.diagbot.dto.QcCasesEntryDTO;
+import com.diagbot.dto.QcModeDTO;
 import com.diagbot.dto.QcResultDTO;
 import com.diagbot.dto.QcResultDTO;
 import com.diagbot.dto.RecordContentDTO;
 import com.diagbot.dto.RecordContentDTO;
 import com.diagbot.dto.Response;
 import com.diagbot.dto.Response;
@@ -80,6 +81,8 @@ public class BehospitalInfoFacade extends BehospitalInfoServiceImpl {
     SysDictionaryFacade sysDictionaryFacade;
     SysDictionaryFacade sysDictionaryFacade;
     @Autowired
     @Autowired
     private QcresultInfoFacade qcresultInfoFacade;
     private QcresultInfoFacade qcresultInfoFacade;
+    @Autowired
+    QcModeFacade qcModeFacade;
 
 
     public IPage<BehospitalInfoDTO> pageFac(BehospitalPageVO behospitalPageVO) {
     public IPage<BehospitalInfoDTO> pageFac(BehospitalPageVO behospitalPageVO) {
 
 
@@ -104,31 +107,43 @@ public class BehospitalInfoFacade extends BehospitalInfoServiceImpl {
                 .eq("hospital_id", getDetailVO.getHospitalId())
                 .eq("hospital_id", getDetailVO.getHospitalId())
                 .eq("behospital_code", getDetailVO.getBehospitalCode()), false
                 .eq("behospital_code", getDetailVO.getBehospitalCode()), false
         );
         );
-        BehosDTO behosDTO = new BehosDTO();
-        if (behospitalInfo == null) {
-            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "该病历已删除!");
+
+        List<String> paramList = getDetailVO.getParamStr();// 参数列表
+
+        if (ListUtil.isEmpty(paramList) || paramList.contains("beHospital")) {
+            BehosDTO behosDTO = new BehosDTO();
+            if (behospitalInfo == null) {
+                throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "该病历已删除!");
+            }
+            BeanUtil.copyProperties(behospitalInfo, behosDTO);
+            res.put("beHospital", behosDTO);
         }
         }
-        BeanUtil.copyProperties(behospitalInfo, behosDTO);
-        res.put("beHospital", behosDTO);
 
 
-        // 获取主表信息
-        QcResultDTO qcResultDTO = qcresultInfoFacade.getByBehospitalCode(getDetailVO);
-        if (qcResultDTO == null) {
-            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "该病历未评分!");
+        if (ListUtil.isEmpty(paramList) || paramList.contains("result") || paramList.contains("resultSimple")) {
+            // 获取结果主表信息
+            QcResultDTO qcResultDTO = qcresultInfoFacade.getByBehospitalCode(getDetailVO);
+            if (qcResultDTO == null) {
+                throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "该病历未评分!");
+            }
+            if (paramList.contains("resultSimple")) {
+                qcResultDTO.setPageData("");
+                qcResultDTO.setMenuData("");
+            }
+            res.put("result", qcResultDTO);
         }
         }
-        res.put("result", qcResultDTO);
 
 
         // 获取提示信息
         // 获取提示信息
-        AnalyzeVO analyzeVO = new AnalyzeVO();
-        BeanUtil.copyProperties(getDetailVO, analyzeVO);
-        List<MsgDTO> msgDTOList = getMsg(analyzeVO);
-        Map<String, List<MsgDTO>> msgMap = EntityUtil.makeEntityListMap(msgDTOList, "modelName");
-        res.put("msg", msgMap);
+        if (ListUtil.isEmpty(paramList) || paramList.contains("msg")) {
+            AnalyzeVO analyzeVO = new AnalyzeVO();
+            BeanUtil.copyProperties(getDetailVO, analyzeVO);
+            List<MsgDTO> msgDTOList = getMsg(analyzeVO);
+            Map<String, List<MsgDTO>> msgMap = EntityUtil.makeEntityListMap(msgDTOList, "modelName");
+            res.put("msg", msgMap);
+        }
         return res;
         return res;
     }
     }
 
 
     public AnalyzeDTO analyze(AnalyzeVO analyzeVO) {
     public AnalyzeDTO analyze(AnalyzeVO analyzeVO) {
-        Map<String, Object> res = new HashMap<>(); // 返回结果
         Long hospitalId = Long.parseLong(SysUserUtils.getCurrentHospitalID());
         Long hospitalId = Long.parseLong(SysUserUtils.getCurrentHospitalID());
 //        Long hospitalId = 1L; // 写死
 //        Long hospitalId = 1L; // 写死
         analyzeVO.setHospitalId(hospitalId);
         analyzeVO.setHospitalId(hospitalId);
@@ -211,10 +226,9 @@ public class BehospitalInfoFacade extends BehospitalInfoServiceImpl {
         }
         }
 
 
         // 病案首页
         // 病案首页
-        if (homePage != null ) {
-            addDataWithFirstPage("病案首页",  homePage, medrecVoList, dicMap,
-                    homePageList, homeOperationInfoList);
-        }
+        addDataWithFirstPage("病案首页",  homePage, medrecVoList, dicMap,
+                homePageList, homeOperationInfoList);
+
         queryVo.setMedrec(medrecVoList);
         queryVo.setMedrec(medrecVoList);
 
 
         //  调用质控接口
         //  调用质控接口
@@ -238,14 +252,19 @@ public class BehospitalInfoFacade extends BehospitalInfoServiceImpl {
         algorithmVO.setQcResultAlgVOList(qcResultAlgVOList);
         algorithmVO.setQcResultAlgVOList(qcResultAlgVOList);
         AlgorithmDTO algorithmDTO = algorithmFacade.getAlgorithmRes(algorithmVO);
         AlgorithmDTO algorithmDTO = algorithmFacade.getAlgorithmRes(algorithmVO);
         //保存
         //保存
-        String pageData = JSON.toJSONString(outputInfo.getPageData());
-        Date date = qcresultInfoFacade.saveQcResult(algorithmDTO, algorithmVO, analyzeVO, pageData);
-        res.put("pageData", pageData);
+        Map<String, Object> pageMap = outputInfo.getPageData();
+        String pageData = JSON.toJSONString(pageMap);
+        // 获取菜单信息
+        List<QcModeDTO> qcModeDTOList = qcModeFacade.getMenu(pageMap);
+        String menuData = JSON.toJSONString(qcModeDTOList);
+
+        Date date = qcresultInfoFacade.saveQcResult(algorithmDTO, algorithmVO, analyzeVO, pageData, menuData);
 
 
         // 返回提示信息
         // 返回提示信息
         List<MsgDTO> msgDTOList = getMsg(analyzeVO);
         List<MsgDTO> msgDTOList = getMsg(analyzeVO);
         Map<String, List<MsgDTO>> msgMap = EntityUtil.makeEntityListMap(msgDTOList, "modelName");
         Map<String, List<MsgDTO>> msgMap = EntityUtil.makeEntityListMap(msgDTOList, "modelName");
-        res.put("msg", msgMap);
+
+
         //返回参数组装
         //返回参数组装
         AnalyzeDTO analyzeDTO = new AnalyzeDTO();
         AnalyzeDTO analyzeDTO = new AnalyzeDTO();
         analyzeDTO.setBehospitalCode(analyzeVO.getBehospitalCode());
         analyzeDTO.setBehospitalCode(analyzeVO.getBehospitalCode());

+ 12 - 2
src/main/java/com/diagbot/facade/QcModeFacade.java

@@ -9,6 +9,7 @@ import com.diagbot.util.BeanUtil;
 import com.diagbot.util.EntityUtil;
 import com.diagbot.util.EntityUtil;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 
 
+import java.util.Iterator;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
 
 
@@ -20,17 +21,26 @@ import java.util.Map;
 @Component
 @Component
 public class QcModeFacade extends QcModeServiceImpl {
 public class QcModeFacade extends QcModeServiceImpl {
 
 
-    public List<QcModeDTO> getMenu() {
+    public List<QcModeDTO> getMenu(Map<String, Object> pageData) {
         List<QcMode> qcModeList = this.list(new QueryWrapper<QcMode>()
         List<QcMode> qcModeList = this.list(new QueryWrapper<QcMode>()
                 .eq("is_deleted", IsDeleteEnum.N.getKey())
                 .eq("is_deleted", IsDeleteEnum.N.getKey())
                 .orderByAsc("parent_id", "order_no")
                 .orderByAsc("parent_id", "order_no")
         );
         );
+
+        Iterator<QcMode> iterator = qcModeList.iterator();
+        while (iterator.hasNext()) {
+            QcMode qcMode = iterator.next();
+            if (!pageData.containsKey(qcMode.getName()) && !"病程信息".equals(qcMode.getName())) {
+                iterator.remove();
+            }
+        }
+
         Map<Long, List<QcMode>> map = EntityUtil.makeEntityListMap(qcModeList, "parentId");
         Map<Long, List<QcMode>> map = EntityUtil.makeEntityListMap(qcModeList, "parentId");
         // 获取根节点
         // 获取根节点
         List<QcMode> root = map.get(-1L);
         List<QcMode> root = map.get(-1L);
         List<QcModeDTO> res = BeanUtil.listCopyTo(root, QcModeDTO.class);
         List<QcModeDTO> res = BeanUtil.listCopyTo(root, QcModeDTO.class);
 
 
-        for(QcModeDTO qcModeDTO : res) {
+        for (QcModeDTO qcModeDTO : res) {
             if (map.containsKey(qcModeDTO.getId())) {
             if (map.containsKey(qcModeDTO.getId())) {
                 qcModeDTO.setSonMode(BeanUtil.listCopyTo(map.get(qcModeDTO.getId()), QcModeDTO.class));
                 qcModeDTO.setSonMode(BeanUtil.listCopyTo(map.get(qcModeDTO.getId()), QcModeDTO.class));
             }
             }

+ 7 - 2
src/main/java/com/diagbot/facade/QcresultInfoFacade.java

@@ -97,7 +97,7 @@ public class QcresultInfoFacade extends QcresultInfoServiceImpl {
         AnalyzeVO analyzeVO = new AnalyzeVO();
         AnalyzeVO analyzeVO = new AnalyzeVO();
         analyzeVO.setHospitalId(hospitalId);
         analyzeVO.setHospitalId(hospitalId);
         analyzeVO.setBehospitalCode(qcresultVO.getBehospitalCode());
         analyzeVO.setBehospitalCode(qcresultVO.getBehospitalCode());
-        Date date = this.saveQcResult(algorithmDTO, algorithmVO, analyzeVO,null);
+        Date date = this.saveQcResult(algorithmDTO, algorithmVO, analyzeVO,null, null);
         //返回参数组装
         //返回参数组装
         AnalyzeDTO analyzeDTO = new AnalyzeDTO();
         AnalyzeDTO analyzeDTO = new AnalyzeDTO();
         analyzeDTO.setBehospitalCode(qcresultVO.getBehospitalCode());
         analyzeDTO.setBehospitalCode(qcresultVO.getBehospitalCode());
@@ -110,7 +110,8 @@ public class QcresultInfoFacade extends QcresultInfoServiceImpl {
         return analyzeDTO;
         return analyzeDTO;
     }
     }
 
 
-    public Date saveQcResult(AlgorithmDTO algorithmDTO, AlgorithmVO algorithmVO, AnalyzeVO analyzeVO, String pageData) {
+    public Date saveQcResult(AlgorithmDTO algorithmDTO, AlgorithmVO algorithmVO, AnalyzeVO analyzeVO,
+                             String pageData, String menuData) {
         //更新质控评分结果信息
         //更新质控评分结果信息
         Long useId = Long.valueOf(SysUserUtils.getCurrentPrincipleID());
         Long useId = Long.valueOf(SysUserUtils.getCurrentPrincipleID());
         Date now = DateUtil.now();
         Date now = DateUtil.now();
@@ -146,6 +147,10 @@ public class QcresultInfoFacade extends QcresultInfoServiceImpl {
         if (StringUtil.isNotBlank(pageData)){
         if (StringUtil.isNotBlank(pageData)){
             qcresultInfo.setPageData(pageData);
             qcresultInfo.setPageData(pageData);
         }
         }
+        if (StringUtil.isNotBlank(menuData)){
+            qcresultInfo.setMenuData(menuData);
+        }
+
         qcresultInfo.setGmtCreate(now);
         qcresultInfo.setGmtCreate(now);
         qcresultInfo.setCreator(useId.toString());
         qcresultInfo.setCreator(useId.toString());
         qcresultInfo.setGmtModified(now);
         qcresultInfo.setGmtModified(now);

+ 4 - 0
src/main/java/com/diagbot/vo/GetDetailVO.java

@@ -3,6 +3,9 @@ package com.diagbot.vo;
 import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.Data;
 
 
+import java.util.ArrayList;
+import java.util.List;
+
 /**
 /**
  * @description:
  * @description:
  * @author: zhoutg
  * @author: zhoutg
@@ -14,4 +17,5 @@ public class GetDetailVO {
     private String behospitalCode; // 病历id
     private String behospitalCode; // 病历id
     @ApiModelProperty(hidden = true)
     @ApiModelProperty(hidden = true)
     private Long hospitalId; //医院ID
     private Long hospitalId; //医院ID
+    private List<String> paramStr = new ArrayList<>(); // 获取具体的参数
 }
 }

+ 2 - 1
src/main/java/com/diagbot/web/BehospitalInfoController.java

@@ -83,7 +83,8 @@ public class BehospitalInfoController {
     }
     }
 
 
     @ApiOperation(value = "删除质控条目[by:zhoutg]",
     @ApiOperation(value = "删除质控条目[by:zhoutg]",
-            notes = "")
+            notes = "behospitalCode:病历号,必填<br>" +
+                    "id:明细id,必填<br>")
     @PostMapping("/delCase")
     @PostMapping("/delCase")
     @SysLogger("delCase")
     @SysLogger("delCase")
     public RespDTO<AnalyzeDTO> delCase(@RequestBody QcresultVO qcresultVO){
     public RespDTO<AnalyzeDTO> delCase(@RequestBody QcresultVO qcresultVO){

+ 11 - 20
src/main/java/com/diagbot/web/QcModeController.java

@@ -1,19 +1,10 @@
 package com.diagbot.web;
 package com.diagbot.web;
 
 
 
 
-import com.diagbot.annotation.SysLogger;
-import com.diagbot.dto.QcModeDTO;
-import com.diagbot.dto.RespDTO;
-import com.diagbot.facade.QcModeFacade;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.bind.annotation.RestController;
 
 
-import java.util.List;
-
 /**
 /**
  * <p>
  * <p>
  * 菜单 前端控制器
  * 菜单 前端控制器
@@ -28,15 +19,15 @@ import java.util.List;
 @SuppressWarnings("unchecked")
 @SuppressWarnings("unchecked")
 public class QcModeController {
 public class QcModeController {
 
 
-    @Autowired
-    QcModeFacade qcModeFacade;
-
-    @ApiOperation(value = "获取菜单信息[by:zhoutg]",
-            notes = "")
-    @PostMapping("/getMenu")
-    @SysLogger("getMenu")
-    public RespDTO<List<QcModeDTO> > getMenu() {
-        List<QcModeDTO> data = qcModeFacade.getMenu();
-        return RespDTO.onSuc(data);
-    }
+//    @Autowired
+//    QcModeFacade qcModeFacade;
+//
+//    @ApiOperation(value = "获取菜单信息[by:zhoutg]",
+//            notes = "")
+//    @PostMapping("/getMenu")
+//    @SysLogger("getMenu")
+//    public RespDTO<List<QcModeDTO> > getMenu() {
+//        List<QcModeDTO> data = qcModeFacade.getMenu();
+//        return RespDTO.onSuc(data);
+//    }
 }
 }