浏览代码

质控评分 新增 删除 修改条目

gaodm 5 年之前
父节点
当前提交
9fa7fc19a5

+ 4 - 1
doc/005.20200528v1.2.x/qc_init.sql

@@ -1,5 +1,8 @@
 use `qc`;
 
-ALTER TABLE med_behospital_info ADD COLUMN `is_placefile` varchar(2) NOT NULL DEFAULT '0' COMMENT '是否归档(0:未归档,1:已归档)' AFTER `director_doctor_name`;
+ALTER TABLE `med_behospital_info` ADD COLUMN `is_placefile` varchar(2) NOT NULL DEFAULT '0' COMMENT '是否归档(0:未归档,1:已归档)' AFTER `director_doctor_name`;
+
+ALTER TABLE `med_qcresult_detail` ADD COLUMN `grade_type` tinyint(4) DEFAULT '1' COMMENT '初始类型(1:机器,2:人工)' AFTER `is_reject`;
+ALTER TABLE `med_qcresult_detail` ADD COLUMN `opt_type` tinyint(4) DEFAULT '1' COMMENT '操作类型(1:新增,2:删除,3:修改)' AFTER `grade_type`;
 
 UPDATE `sys_permission` SET `is_deleted` = 'Y' WHERE `id` = '10';

+ 10 - 0
src/main/java/com/diagbot/entity/QcresultDetail.java

@@ -72,6 +72,16 @@ public class QcresultDetail implements Serializable {
      */
     private Integer isReject;
 
+    /**
+     * 初始类型(1:机器,2:人工)
+     */
+    private Integer gradeType;
+
+    /**
+     * 操作类型(1:新增,2:删除,3:修改)
+     */
+    private Integer optType;
+
     /**
      * 是否删除,N:未删除,Y:删除
      */

+ 74 - 25
src/main/java/com/diagbot/facade/QcresultInfoFacade.java

@@ -185,32 +185,81 @@ public class QcresultInfoFacade extends QcresultInfoServiceImpl {
         qcresultInfo.setModifier(useId.toString());
         this.save(qcresultInfo);
         //更新质控评分明细信息
-        //逻辑删除记录
-        qcresultDetailServiceImpl.update(new UpdateWrapper<QcresultDetail>()
-                .eq("is_deleted", IsDeleteEnum.N.getKey())
-                .eq("hospital_id", analyzeVO.getHospitalId())
-                .eq("behospital_code", analyzeVO.getBehospitalCode())
-                .set("is_deleted", IsDeleteEnum.Y.getKey())
-                .set("modifier", useId)
-                .set("gmt_modified", now));
-        //批量插入新的数据
-        List<QcresultDetail> qcresultDetailList = new ArrayList<>();
-        List<QcResultAlgVO> qcResultAlgVORes = algorithmVO.getQcResultAlgVOList();
-        if (ListUtil.isNotEmpty(qcResultAlgVORes)) {
-            for (QcResultAlgVO qcResultAlgVO : qcResultAlgVORes) {
-                QcresultDetail qcresultDetail = new QcresultDetail();
-                BeanUtil.copyProperties(qcResultAlgVO, qcresultDetail);
-                qcresultDetail.setHospitalId(analyzeVO.getHospitalId());
-                qcresultDetail.setBehospitalCode(analyzeVO.getBehospitalCode());
-                qcresultDetail.setGmtCreate(now);
-                qcresultDetail.setCreator(useId.toString());
-                qcresultDetail.setGmtModified(now);
-                qcresultDetail.setModifier(useId.toString());
-                qcresultDetail.setInfo(StringUtil.isNotBlank(qcResultAlgVO.getInfo()) ? qcResultAlgVO.getInfo() : "");
-                qcresultDetailList.add(qcresultDetail);
-            }
-            qcresultDetailServiceImpl.saveBatch(qcresultDetailList);
+        switch (algorithmVO.getType()) {
+            //自动评分
+            case 0:
+                //删除记录
+                qcresultDetailServiceImpl.remove(new QueryWrapper<QcresultDetail>()
+                        .eq("hospital_id", analyzeVO.getHospitalId())
+                        .eq("behospital_code", analyzeVO.getBehospitalCode()));
+                //批量插入新的数据
+                List<QcresultDetail> qcresultDetailList = new ArrayList<>();
+                List<QcResultAlgVO> qcResultAlgVORes = algorithmVO.getQcResultAlgVOList();
+                if (ListUtil.isNotEmpty(qcResultAlgVORes)) {
+                    for (QcResultAlgVO qcResultAlgVO : qcResultAlgVORes) {
+                        QcresultDetail qcresultDetail = new QcresultDetail();
+                        BeanUtil.copyProperties(qcResultAlgVO, qcresultDetail);
+                        qcresultDetail.setHospitalId(analyzeVO.getHospitalId());
+                        qcresultDetail.setBehospitalCode(analyzeVO.getBehospitalCode());
+                        qcresultDetail.setGradeType(1);
+                        qcresultDetail.setOptType(1);
+                        qcresultDetail.setGmtCreate(now);
+                        qcresultDetail.setCreator(useId.toString());
+                        qcresultDetail.setGmtModified(now);
+                        qcresultDetail.setModifier(useId.toString());
+                        qcresultDetail.setInfo(StringUtil.isNotBlank(qcResultAlgVO.getInfo()) ? qcResultAlgVO.getInfo() : "");
+                        qcresultDetailList.add(qcresultDetail);
+                    }
+                    qcresultDetailServiceImpl.saveBatch(qcresultDetailList);
+                }
+                break;
+            case 1:
+                //新增条目
+                QcresultDetail qcresultDetailAdd = new QcresultDetail();
+                BeanUtil.copyProperties(algorithmVO.getOptResultAlgVO(), qcresultDetailAdd);
+                qcresultDetailAdd.setGradeType(2);
+                qcresultDetailAdd.setOptType(1);
+                qcresultDetailAdd.setHospitalId(analyzeVO.getHospitalId());
+                qcresultDetailAdd.setBehospitalCode(analyzeVO.getBehospitalCode());
+                qcresultDetailAdd.setGmtCreate(now);
+                qcresultDetailAdd.setCreator(useId.toString());
+                qcresultDetailAdd.setGmtModified(now);
+                qcresultDetailAdd.setModifier(useId.toString());
+                qcresultDetailServiceImpl.save(qcresultDetailAdd);
+                break;
+            case 2:
+                //删除条目
+                qcresultDetailServiceImpl.remove(new QueryWrapper<QcresultDetail>()
+                        .eq("id", algorithmVO.getOptResultAlgVO().getId())
+                        .eq("hospital_id", analyzeVO.getHospitalId())
+                        .eq("behospital_code", analyzeVO.getBehospitalCode())
+                );
+                break;
+            case 3:
+                //修改条目
+                qcresultDetailServiceImpl.update(new UpdateWrapper<QcresultDetail>()
+                        .eq("id", algorithmVO.getOptResultAlgVO().getId())
+                        .eq("is_deleted", IsDeleteEnum.N.getKey())
+                        .eq("hospital_id", analyzeVO.getHospitalId())
+                        .eq("behospital_code", analyzeVO.getBehospitalCode())
+                        .set("msg", algorithmVO.getOptResultAlgVO().getMsg())
+                        .set("score", algorithmVO.getOptResultAlgVO().getScore())
+                        .set("opt_type", 3)
+                        .set("modifier", useId)
+                        .set("gmt_modified", now)
+                );
+                break;
+            default:
+                /* DO NOTHING */
+                break;
+        }
+        //自动评分
+        if (algorithmVO.getType().equals(0)) {
+
+        } else if (algorithmVO.getType().equals(1)) {
+
         }
+
         //长兴的数据
         if (algorithmVO.getHospitalId().equals(1L)) {
             //质控模块评分数据

+ 1 - 0
src/main/resources/mapper/BehospitalInfoMapper.xml

@@ -29,6 +29,7 @@
         <result column="doctor_name" property="doctorName" />
         <result column="director_doctor_id" property="directorDoctorId" />
         <result column="director_doctor_name" property="directorDoctorName" />
+        <result column="is_placefile" property="isPlacefile" />
         <result column="is_deleted" property="isDeleted" />
         <result column="gmt_create" property="gmtCreate" />
         <result column="gmt_modified" property="gmtModified" />

+ 8 - 1
src/main/resources/mapper/QcresultDetailMapper.xml

@@ -6,9 +6,16 @@
     <resultMap id="BaseResultMap" type="com.diagbot.entity.QcresultDetail">
         <id column="id" property="id" />
         <result column="hospital_id" property="hospitalId" />
-        <result column="cases_entry_id" property="casesEntryId" />
         <result column="behospital_code" property="behospitalCode" />
+        <result column="cases_id" property="casesId" />
+        <result column="cases_score" property="casesScore" />
+        <result column="cases_entry_id" property="casesEntryId" />
         <result column="score" property="score" />
+        <result column="msg" property="msg" />
+        <result column="info" property="info" />
+        <result column="is_reject" property="isReject" />
+        <result column="grade_type" property="gradeType" />
+        <result column="opt_type" property="optType" />
         <result column="is_deleted" property="isDeleted" />
         <result column="gmt_create" property="gmtCreate" />
         <result column="gmt_modified" property="gmtModified" />

+ 1 - 1
src/test/java/com/diagbot/CodeGeneration.java

@@ -56,7 +56,7 @@ public class CodeGeneration {
         StrategyConfig strategy = new StrategyConfig();
 //        strategy.setTablePrefix(new String[] { "med_" });// 此处可以修改为您的表前缀
         strategy.setNaming(NamingStrategy.underline_to_camel);// 表名生成策略
-        strategy.setInclude(new String[] { "qc_type"}); // 需要生成的表
+        strategy.setInclude(new String[] { "med_qcresult_detail","med_behospital_info"}); // 需要生成的表
 
         strategy.setSuperServiceClass(null);
         strategy.setSuperServiceImplClass(null);