Bläddra i källkod

Merge branch '20220517_v2.8.0通用版_质控核查迭代' into debug

songxinlu 3 år sedan
förälder
incheckning
c4e276379d

+ 33 - 0
doc/049.20220518v2.8.0_通用版_质控核查迭代/qc_init_v2.8.0_通用版_质控核查迭代.sql

@@ -79,6 +79,7 @@ CREATE TABLE `med_check_record` (
   `job_distribution_name` varchar(60) DEFAULT NULL COMMENT '核查任务分配人姓名',
   `job_distribution_time` datetime DEFAULT NULL COMMENT '核查任务分配时间',
   `work_flow_node_id` bigint(20) NOT NULL COMMENT '当前工作流节点id',
+  `job_end_time` datetime DEFAULT NULL COMMENT '任务截止日期',
   `is_deleted` char(1) NOT NULL DEFAULT 'N' COMMENT '是否删除,N:未删除,Y:删除',
   `gmt_create` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录创建时间',
   `gmt_modified` datetime NOT NULL DEFAULT '1970-01-01 12:00:00' COMMENT '记录修改时间,如果时间是1970年则表示纪录未修改',
@@ -116,4 +117,35 @@ CREATE TABLE `med_check_record_examine` (
 
 -- ----------------------------
 -- Records of med_check_record_examine
+-- ----------------------------
+
+
+/**
+sys_menu 新增核查相关菜单
+ */
+INSERT INTO `sys_menu` (`id`, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `name`, `parent_id`, `code`, `show_status`, `maintain_status`, `order_no`, `remark`) VALUES ('140', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '质控核查', '-1', 'YH-ZKHC', '1', '1', '11', '用户-质控核查');
+INSERT INTO `sys_menu` (`id`, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `name`, `parent_id`, `code`, `show_status`, `maintain_status`, `order_no`, `remark`) VALUES ('141', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '科室核查', '140', 'YH-ZKHC-KSHC', '1', '1', '1', '用户-质控核查-科室核查');
+INSERT INTO `sys_menu` (`id`, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `name`, `parent_id`, `code`, `show_status`, `maintain_status`, `order_no`, `remark`) VALUES ('142', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '质控科核查', '140', 'YH-ZKHC-ZKKHC', '1', '1', '2', '用户-质控核查-质控科核查');
+INSERT INTO `sys_menu` (`id`, `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `name`, `parent_id`, `code`, `show_status`, `maintain_status`, `order_no`, `remark`) VALUES ('143', 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '院级核查', '140', 'YH-ZKHC-YJHC', '1', '1', '3', '用户-质控核查-院级核查');
+
+/**
+sys_permission 新增系统资源信息
+ */
+
+
+/**
+sys_menu_permission 新增菜单关联的资源
+ */
+
+/**
+sys_role_menu 新增角色和菜单的映射信息
+ */
+INSERT INTO `sys_role_menu` (`is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `role_id`, `menu_id`, `remark`) VALUES ( 'N', '2021-06-03 02:03:31', '2021-06-03 02:03:31', '179', '179', '4', '140', NULL);
+INSERT INTO `sys_role_menu` (`is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `role_id`, `menu_id`, `remark`) VALUES ( 'N', '2021-06-03 02:03:31', '2021-06-03 02:03:31', '179', '179', '4', '141', NULL);
+INSERT INTO `sys_role_menu` (`is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `role_id`, `menu_id`, `remark`) VALUES ( 'N', '2021-06-03 02:03:31', '2021-06-03 02:03:31', '179', '179', '5', '140', NULL);
+INSERT INTO `sys_role_menu` (`is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `role_id`, `menu_id`, `remark`) VALUES ( 'N', '2021-06-03 02:03:31', '2021-06-03 02:03:31', '179', '179', '5', '142', NULL);
+INSERT INTO `sys_role_menu` (`is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `role_id`, `menu_id`, `remark`) VALUES ( 'N', '2021-06-03 02:03:31', '2021-06-03 02:03:31', '179', '179', '6', '140', NULL);
+INSERT INTO `sys_role_menu` (`is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `role_id`, `menu_id`, `remark`) VALUES ( 'N', '2021-06-03 02:03:31', '2021-06-03 02:03:31', '179', '179', '6', '143', NULL);
+/**
+sys_role_permission 新增角色和资源的映射信息
+ */

+ 44 - 2
src/main/java/com/diagbot/facade/CheckRecordExamineFacade.java

@@ -1,13 +1,23 @@
 package com.diagbot.facade;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.dto.GetDeptDistributionDTO;
+import com.diagbot.entity.SysUserDept;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
 import com.diagbot.service.impl.CheckRecordExamineServiceImpl;
+import com.diagbot.util.ListUtil;
 import com.diagbot.util.SysUserUtils;
 import com.diagbot.vo.GetDeptDistributionVO;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
+import java.util.List;
+import java.util.stream.Collectors;
+
 
 /**
  * @Description:
@@ -16,10 +26,42 @@ import org.springframework.stereotype.Component;
  */
 @Component
 public class CheckRecordExamineFacade extends CheckRecordExamineServiceImpl {
+    @Autowired
+    SysUserDeptFacade sysUserDeptFacade;
 
-    public IPage<GetDeptDistributionDTO> getDeptDistributionPage(GetDeptDistributionVO getDeptDistributionVO) {
+    public IPage<GetDeptDistributionDTO> getDistributionPage(GetDeptDistributionVO getDeptDistributionVO) {
+        searchHandler(getDeptDistributionVO);
         getDeptDistributionVO.setHospitalId(Long.parseLong(SysUserUtils.getCurrentHospitalID()));
-        return this.baseMapper.getDeptDistributionPage(getDeptDistributionVO);
+        return this.baseMapper.getDistributionPage(getDeptDistributionVO);
+    }
+
+    /**
+     * 查询处理
+     *
+     * @param getDeptDistributionVO
+     * @Return void
+     */
+    private void searchHandler(GetDeptDistributionVO getDeptDistributionVO) {
+        switch (getDeptDistributionVO.getType()){
+            case "0":
+                //获取当前用户的科室
+                List<String> deptIds = sysUserDeptFacade.list(new QueryWrapper<SysUserDept>()
+                        .eq("is_deleted", IsDeleteEnum.N.getKey())
+                        .eq("hospital_id", SysUserUtils.getCurrentHospitalID())
+                        .eq("user_id", SysUserUtils.getCurrentPrincipleID())
+                ).stream().map(SysUserDept::getDeptId).collect(Collectors.toList());
+                if(ListUtil.isEmpty(deptIds)){
+                    throw new CommonException(CommonErrorCode.PARAM_IS_NULL, "该用户科室信息为空!");
+                }
+                getDeptDistributionVO.setDeptIds(deptIds);
+                break;
+            case "1":
+                break;
+            case "2":
+                break;
+            default:
+                break;
+        }
     }
 
 }

+ 1 - 1
src/main/java/com/diagbot/mapper/CheckRecordExamineMapper.java

@@ -17,5 +17,5 @@ import org.apache.ibatis.annotations.Param;
  */
 public interface CheckRecordExamineMapper extends BaseMapper<CheckRecordExamine> {
 
-    IPage<GetDeptDistributionDTO> getDeptDistributionPage(@Param("getDeptDistributionVO") GetDeptDistributionVO getDeptDistributionVO);
+    IPage<GetDeptDistributionDTO> getDistributionPage(@Param("getDeptDistributionVO") GetDeptDistributionVO getDeptDistributionVO);
 }

+ 6 - 0
src/main/java/com/diagbot/vo/GetDeptDistributionVO.java

@@ -9,6 +9,7 @@ import lombok.Setter;
 import javax.validation.constraints.NotBlank;
 import java.io.Serializable;
 import java.util.Date;
+import java.util.List;
 
 /**
  * @Description: 任务分配-科室列表页分页接口-接口入参
@@ -84,4 +85,9 @@ public class GetDeptDistributionVO extends Page implements Serializable {
     @ApiModelProperty(value = "质控科核查状态")
     private String quatCheckStatus;
 
+    @ApiModelProperty(value = "类型:科室分配-0,质控科分配-1,院级分配-2",hidden = true)
+    private String type;
+
+    @ApiModelProperty(value = "分配患者科室集合",hidden = true)
+    private List<String> deptIds;
 }

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

@@ -39,6 +39,7 @@ public class CheckRecordExamineController {
     @PostMapping("/getDeptDistributionPage")
     @SysLogger("getDeptDistributionPage")
     public RespDTO<IPage<GetDeptDistributionDTO>> getDeptDistributionPage(@RequestBody GetDeptDistributionVO getDeptDistributionVO) {
-        return RespDTO.onSuc(checkRecordExamineFacade.getDeptDistributionPage(getDeptDistributionVO));
+        getDeptDistributionVO.setType("0");
+        return RespDTO.onSuc(checkRecordExamineFacade.getDistributionPage(getDeptDistributionVO));
     }
 }

+ 38 - 2
src/main/resources/mapper/CheckRecordExamineMapper.xml

@@ -19,7 +19,7 @@
         <result column="modifier" property="modifier" />
         <result column="remark" property="remark" />
     </resultMap>
-    <select id="getDeptDistributionPage" resultType="com.diagbot.dto.GetDeptDistributionDTO">
+    <select id="getDistributionPage" resultType="com.diagbot.dto.GetDeptDistributionDTO">
         SELECT DISTINCT
         mbi.behospital_code behospitalCode,
         mbi.`name`,
@@ -138,7 +138,6 @@
             <![CDATA[ and mbi.leave_hospital_date >= #{getDeptDistributionVO.leaveHosDateStart}]]>
             <![CDATA[ and mbi.leave_hospital_date <= #{getDeptDistributionVO.leaveHosDateEnd}]]>
         </if>
-
         <if test="getDeptDistributionVO.isPlacefile != null and getDeptDistributionVO.isPlacefile!=''">
             AND mbi.is_placefile = #{getDeptDistributionVO.isPlacefile}
         </if>
@@ -159,6 +158,43 @@
         <if test="getDeptDistributionVO.doctorName != null and getDeptDistributionVO.doctorName != ''">
             AND mbi.doctor_name like concat('%', #{getDeptDistributionVO.doctorName}, '%')
         </if>
+        <if test="getDeptDistributionVO.diagnose != null and getDeptDistributionVO.diagnose != ''">
+            AND mbi.diagnose LIKE CONCAT( '%', #{getDeptDistributionVO.diagnose}, '%' )
+        </if>
+        <if test="getDeptDistributionVO.level != null and getDeptDistributionVO.level != ''">
+            AND mqi.`level`= #{getDeptDistributionVO.level}
+        </if>
+        <if test="getDeptDistributionVO.behospitalType != null and getDeptDistributionVO.behospitalType != ''">
+            AND mbt.behospital_type= #{getDeptDistributionVO.behospitalType}
+        </if>
+        -- 科室核查状态筛选
+        <if test="getDeptDistributionVO.deptCheckStatus != null and getDeptDistributionVO.deptCheckStatus != '' and getDeptDistributionVO.deptCheckStatus != '-1'">
+            AND ks_mcre.status= #{getDeptDistributionVO.deptCheckStatus}
+        </if>
+        <if test="getDeptDistributionVO.deptCheckStatus == '-1'">
+            AND ks_mcre.status= #{getDeptDistributionVO.deptCheckStatus}
+        </if>
+        -- 质控科核查状态筛选
+        <if test="getDeptDistributionVO.quatCheckStatus != null and getDeptDistributionVO.quatCheckStatus != '' and getDeptDistributionVO.quatCheckStatus != '-1'">
+            AND zkk_mcre.status= #{getDeptDistributionVO.quatCheckStatus}
+        </if>
+        <if test="getDeptDistributionVO.quatCheckStatus == '-1'">
+            AND zkk_mcre.status= #{getDeptDistributionVO.quatCheckStatus}
+        </if>
+        -- 科室核查状态筛选
+        <if test="getDeptDistributionVO.hospCheckStatus != null and getDeptDistributionVO.hospCheckStatus != '' and getDeptDistributionVO.hospCheckStatus != '-1'">
+            AND yj_mcre.status= #{getDeptDistributionVO.hospCheckStatus}
+        </if>
+        <if test="getDeptDistributionVO.hospCheckStatus == '-1'">
+            AND yj_mcre.status= #{getDeptDistributionVO.hospCheckStatus}
+        </if>
+        -- 科室分配列表科室筛选条件
+        <if test="getDeptDistributionVO.deptIds != null and getDeptDistributionVO.deptIds.size > 0 and getDeptDistributionVO.type == 0">
+            AND mbi.beh_dept_id in
+            <foreach collection="getDeptDistributionVO.deptIds" item="item" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
 
     </select>