Explorar o código

Merge remote-tracking branch 'origin/dev/20220105_2.2.0_通用版_申诉驳回' into dev/20220105_2.2.0_通用版_申诉驳回

zhanghang %!s(int64=3) %!d(string=hai) anos
pai
achega
09bcd55ba7

+ 4 - 4
config-center/src/main/resources/shared/security-center-debug.yml

@@ -1,9 +1,9 @@
 spring:
   redis:
-    database: 12
-    host: 192.168.2.237 # Redis服务器地址
-    port: 63791 # Redis服务器连接端口(本地环境端口6378,其他环境端口是6379)
-    password: emrais # Redis服务器连接密码(默认为空)
+    database: 8
+    host: 192.168.2.126 # Redis服务器地址
+    port: 6379 # Redis服务器连接端口(本地环境端口6378,其他环境端口是6379)
+    password: lantone # Redis服务器连接密码(默认为空)
   datasource:
     druid:
       url: jdbc:mysql://192.168.2.237:3306/emrais?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&allowMultiQueries=true

+ 3 - 1
gateway-service/src/main/resources/bootstrap.yml

@@ -111,4 +111,6 @@ secure:
       - "/report-service/medAppealInfoManage/getReviewer"
       - "/report-service/medAppealInfoManage/getAppealOperationType"
       - "/report-service/medAppealInfoManage/cancelAppealInfo"
-      - "/report-service/medAppealInfoManage/getAppealInfo"
+      - "/report-service/medAppealInfoManage/getAppealInfo"
+      - "/report-service/medAppealInfoManage/getAppealDept"
+      - "/report-service/medAppealInfoManage/getAppealMode"

+ 20 - 0
report-service/src/main/java/com/lantone/report/dto/GetAppealDeptDTO.java

@@ -0,0 +1,20 @@
+package com.lantone.report.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @Description: 申诉审核科室下拉列表返回对象
+ * @Author songxl
+ */
+@Data
+public class GetAppealDeptDTO implements Serializable {
+    private static final long serialVersionUID = 1L;
+    @ApiModelProperty(value = "科室id")
+    private String deptId;
+
+    @ApiModelProperty(value = "科室名称")
+    private String deptName;
+}

+ 20 - 0
report-service/src/main/java/com/lantone/report/dto/GetAppealModeDTO.java

@@ -0,0 +1,20 @@
+package com.lantone.report.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @Description: 申诉审核模块下拉列表返回对象
+ * @Author songxl
+ */
+@Data
+public class GetAppealModeDTO implements Serializable {
+    private static final long serialVersionUID = 1L;
+    @ApiModelProperty(value = "申诉模块id")
+    private Long modeId;
+
+    @ApiModelProperty(value = "模块名称")
+    private String modeName;
+}

+ 30 - 5
report-service/src/main/java/com/lantone/report/facade/MedAppealInfoManagementFacade.java

@@ -9,7 +9,9 @@ import com.lantone.common.exception.Asserts;
 import com.lantone.common.util.DateUtil;
 import com.lantone.common.util.ListUtil;
 import com.lantone.common.util.StringUtil;
+import com.lantone.report.dto.GetAppealDeptDTO;
 import com.lantone.report.dto.GetAppealInfoDTO;
+import com.lantone.report.dto.GetAppealModeDTO;
 import com.lantone.report.dto.GetReviewerDTO;
 import com.lantone.report.entity.AppealExamineInfo;
 import com.lantone.report.entity.AppealInfo;
@@ -24,7 +26,9 @@ import com.lantone.report.facade.base.SysUserRoleFacade2;
 import com.lantone.report.facade.base.WorkFlowNodeFacade;
 import com.lantone.report.vo.AddAppealInfoVO;
 import com.lantone.report.vo.CancelAppealInfoVO;
+import com.lantone.report.vo.GetAppealDeptVo;
 import com.lantone.report.vo.GetAppealInfoVO;
+import com.lantone.report.vo.GetAppealModeVo;
 import com.lantone.report.vo.GetAppealOperationTypeVO;
 import com.lantone.report.vo.GetReviewerVO;
 import org.springframework.beans.BeanUtils;
@@ -87,6 +91,10 @@ public class MedAppealInfoManagementFacade {
                     //删除申诉记录
                     appealInfoFacade.update(new UpdateWrapper<AppealInfo>().set("is_deleted", IsDeleteEnum.Y.getKey())
                             .eq("id", appealInfo.getId()));
+                    //逻辑删除申诉审批记录
+                    appealExamineInfoFacade.update(new UpdateWrapper<AppealExamineInfo>()
+                            .set("is_deleted",IsDeleteEnum.Y.getKey())
+                            .eq("appeal_info_id",appealInfo.getId()));
                 }
                 //新增申诉记录+审核记录
                 return addAppealInfoAndExamineInfo(addAppealInfoVO);
@@ -111,6 +119,10 @@ public class MedAppealInfoManagementFacade {
                         //删除改新增已有(已审核)申诉记录
                         appealInfoFacade.update(new UpdateWrapper<AppealInfo>().set("is_deleted", IsDeleteEnum.Y.getKey())
                                 .eq("id", oldAppealInfo.getId()));
+                        //逻辑删除申诉审批记录
+                        appealExamineInfoFacade.update(new UpdateWrapper<AppealExamineInfo>()
+                                .set("is_deleted",IsDeleteEnum.Y.getKey())
+                                .eq("appeal_info_id",oldAppealInfo.getId()));
                     }else if (WorkFlowNodeEnum.APPEAL.getKey().equals(oldAppealInfo.getWorkFlowNodeId() + "")) {
                         Asserts.fail("该缺陷已被申诉无需再次恢复");
                     }
@@ -154,6 +166,9 @@ public class MedAppealInfoManagementFacade {
                     //删除申诉记录
                     appealInfoFacade.update(new UpdateWrapper<AppealInfo>().set("is_deleted", IsDeleteEnum.Y.getKey())
                             .eq("id", appealInfo1.getId()));
+                    appealExamineInfoFacade.update(new UpdateWrapper<AppealExamineInfo>()
+                            .set("is_deleted",IsDeleteEnum.Y.getKey())
+                            .eq("appeal_info_id",appealInfo1.getId()));
                 }
                 //新增申诉记录+审核记录
                 return addAppealInfoAndExamineInfo(addAppealInfoVO);
@@ -330,6 +345,7 @@ public class MedAppealInfoManagementFacade {
      * @Return java.lang.Boolean
      */
     public Boolean cancelAppealInfo(CancelAppealInfoVO cancelAppealInfoVO) {
+        Boolean out = false;
         //获取申诉记录
         AppealInfo appealInfo = appealInfoFacade.getById(cancelAppealInfoVO.getId());
         if (appealInfo == null) {
@@ -340,6 +356,7 @@ public class MedAppealInfoManagementFacade {
             List<AppealInfo> appealInfoHistory = appealInfoFacade.list(new QueryWrapper<AppealInfo>()
                     .eq("hospital_id", appealInfo.getHospitalId())
                     .eq("behospital_code", appealInfo.getBehospitalCode())
+                    .notIn("work_flow_node_id", WorkFlowNodeEnum.APPEAL_BACK.getKey())
                     .eq(appealInfo.getQcresultDetailId() != null, "qcresult_detail_id", appealInfo.getQcresultDetailId())
                     .eq(appealInfo.getCasesEntryId() != null, "cases_entry_id", appealInfo.getCasesEntryId())
                     .eq("is_deleted", IsDeleteEnum.Y.getKey())
@@ -348,20 +365,20 @@ public class MedAppealInfoManagementFacade {
             if (ListUtil.isNotEmpty(appealInfoHistory)) {
                 AppealInfo appealInfoOld = appealInfoHistory.get(0);
                 appealInfoOld.setIsDeleted(IsDeleteEnum.N.getKey());
-                return appealInfoFacade.saveOrUpdate(appealInfoOld);
+                out = appealInfoFacade.saveOrUpdate(appealInfoOld);
             }
             //逻辑删除该申诉(撤回)
             appealInfo.setIsDeleted(IsDeleteEnum.Y.getKey());
             appealInfo.setWorkFlowNodeId(cancelAppealInfoVO.getWorkFlowNodeId());
             appealInfo.setGmtModified(DateUtil.now());
-            Boolean out = appealInfoFacade.updateById(appealInfo);
+            out = appealInfoFacade.updateById(appealInfo);
             if(out){
                 //逻辑删除申诉申请审批记录
                 return appealExamineInfoFacade.update(new UpdateWrapper<AppealExamineInfo>()
-                        .eq("appeal_info_id",appealInfo.getId())
-                        .set("is_deleted",IsDeleteEnum.Y.getKey()));
+                        .set("is_deleted",IsDeleteEnum.Y.getKey())
+                        .eq("appeal_info_id",appealInfo.getId()));
             }
-            return out;
+            Asserts.fail("撤回失败");
         } else {
             Asserts.fail("撤回申诉条目状态不是申诉状态");
         }
@@ -383,4 +400,12 @@ public class MedAppealInfoManagementFacade {
         getAppealInfoDTO.setAppealExamineRecordDTOList(appealInfoFacade.getBaseMapper().getAppealExamineRecords(getAppealInfoVO));
         return getAppealInfoDTO;
     }
+
+    public List<GetAppealDeptDTO> getAppealDept(GetAppealDeptVo getAppealDeptVo) {
+        return appealInfoFacade.getBaseMapper().getAppealDept(getAppealDeptVo);
+    }
+
+    public List<GetAppealModeDTO> getAppealMode(GetAppealModeVo getAppealModeVo) {
+        return appealInfoFacade.getBaseMapper().getAppealMode(getAppealModeVo);
+    }
 }

+ 8 - 0
report-service/src/main/java/com/lantone/report/mapper/AppealInfoMapper.java

@@ -2,9 +2,13 @@ package com.lantone.report.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.lantone.report.dto.AppealExamineRecordDTO;
+import com.lantone.report.dto.GetAppealDeptDTO;
 import com.lantone.report.dto.GetAppealInfoDTO;
+import com.lantone.report.dto.GetAppealModeDTO;
+import com.lantone.report.vo.GetAppealDeptVo;
 import com.lantone.report.vo.GetAppealInfoVO;
 import com.lantone.report.entity.AppealInfo;
+import com.lantone.report.vo.GetAppealModeVo;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -22,4 +26,8 @@ public interface AppealInfoMapper extends BaseMapper<AppealInfo> {
 
     String getModeName(@Param("id") Long id);
     Long getModeIdByName(@Param("name") String name);
+
+    List<GetAppealDeptDTO> getAppealDept(@Param("getAppealDeptVo") GetAppealDeptVo getAppealDeptVo);
+
+    List<GetAppealModeDTO> getAppealMode(@Param("getAppealModeVo") GetAppealModeVo getAppealModeVo);
 }

+ 38 - 0
report-service/src/main/java/com/lantone/report/vo/GetAppealDeptVo.java

@@ -0,0 +1,38 @@
+package com.lantone.report.vo;
+
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.math.BigDecimal;
+
+/**
+ * 通过
+ *
+ * @Description:
+ * @author: cy
+ * @time: 2020/9/4 14:59
+ */
+@Getter
+@Setter
+public class GetAppealDeptVo {
+    private static final long serialVersionUID = 1L;
+    @ApiModelProperty(value = "医院ID", hidden = true)
+    private Long hospitalId;
+
+    @ApiModelProperty(value = "申诉人id", hidden = true)
+    private Long claimantId;
+
+    @ApiModelProperty(value = "审核人id", hidden = true)
+    private Long checkId;
+
+    @ApiModelProperty(value = "页面类型:1:申诉记录|2:申诉审核")
+    @NotBlank(message = "页面类型不能为空")
+    private String pageType;
+
+    @ApiModelProperty(value = "是否已归档(0:未归档,1:已归档)")
+    private String isPlacefile;
+
+}

+ 37 - 0
report-service/src/main/java/com/lantone/report/vo/GetAppealModeVo.java

@@ -0,0 +1,37 @@
+package com.lantone.report.vo;
+
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 通过
+ *
+ * @Description:
+ * @author: cy
+ * @time: 2020/9/4 14:59
+ */
+@Getter
+@Setter
+public class GetAppealModeVo {
+    private static final long serialVersionUID = 1L;
+    @ApiModelProperty(value = "医院ID", hidden = true)
+    private Long hospitalId;
+
+    @ApiModelProperty(value = "申诉人id", hidden = true)
+    private Long claimantId;
+
+    @ApiModelProperty(value = "审核人id", hidden = true)
+    private Long checkId;
+
+    @ApiModelProperty(value = "页面类型:1:申诉记录|2:申诉审核")
+    @NotBlank(message = "页面类型不能为空")
+    private String pageType;
+
+    @ApiModelProperty(value = "是否已归档(0:未归档,1:已归档)")
+    private String isPlacefile;
+
+}

+ 19 - 0
report-service/src/main/java/com/lantone/report/web/MedAppealInfoManagementController.java

@@ -2,12 +2,16 @@ package com.lantone.report.web;
 
 
 import com.lantone.common.api.CommonResult;
+import com.lantone.report.dto.GetAppealDeptDTO;
 import com.lantone.report.dto.GetAppealInfoDTO;
+import com.lantone.report.dto.GetAppealModeDTO;
 import com.lantone.report.dto.GetReviewerDTO;
 import com.lantone.report.facade.MedAppealInfoManagementFacade;
 import com.lantone.report.vo.AddAppealInfoVO;
 import com.lantone.report.vo.CancelAppealInfoVO;
+import com.lantone.report.vo.GetAppealDeptVo;
 import com.lantone.report.vo.GetAppealInfoVO;
+import com.lantone.report.vo.GetAppealModeVo;
 import com.lantone.report.vo.GetAppealOperationTypeVO;
 import com.lantone.report.vo.GetReviewerVO;
 import io.swagger.annotations.Api;
@@ -76,4 +80,19 @@ public class MedAppealInfoManagementController {
     public CommonResult<GetAppealInfoDTO> getAppealInfo(@RequestBody GetAppealInfoVO getAppealInfoVO) {
         return CommonResult.success(medAppealInfoManagementFacade.getAppealInfo(getAppealInfoVO));
     }
+
+
+    @ApiOperation(value = "申诉审核科室下拉列表查询[by:songxl]",
+            notes = "申诉审核科室下拉列表查询")
+    @PostMapping("/getAppealDept")
+    public CommonResult<List<GetAppealDeptDTO>> getAppealDept(@RequestBody @Valid GetAppealDeptVo getAppealDeptVo) {
+        return CommonResult.success(medAppealInfoManagementFacade.getAppealDept(getAppealDeptVo));
+    }
+
+    @ApiOperation(value = "申诉审核科室下拉列表查询[by:songxl]",
+            notes = "申诉审核科室下拉列表查询")
+    @PostMapping("/getAppealMode")
+    public CommonResult<List<GetAppealModeDTO>> getAppealMode(@RequestBody @Valid GetAppealModeVo getAppealModeVo) {
+        return CommonResult.success(medAppealInfoManagementFacade.getAppealMode(getAppealModeVo));
+    }
 }

+ 46 - 0
report-service/src/main/resources/mapper/AppealInfoMapper.xml

@@ -105,4 +105,50 @@
             name = #{name}
         AND is_deleted = 'N'
     </select>
+    <select id="getAppealDept" resultType="com.lantone.report.dto.GetAppealDeptDTO">
+        SELECT
+            b.beh_dept_id deptId,
+            b.beh_dept_name deptName
+        FROM
+            med_appeal_info a
+        LEFT JOIN med_behospital_info b ON a.behospital_code = b.behospital_code
+        WHERE
+            a.is_deleted = 'N'
+            AND a.hospital_id = #{getAppealDeptVo.hospitalId}
+            AND a.hospital_id = b.hospital_id
+            <if test="getAppealDeptVo.claimantId != null ">
+                AND a.claimant_id = #{getAppealDeptVo.claimantId}
+            </if>
+            <if test="getAppealDeptVo.checkId != null ">
+                AND a.check_id = #{getAppealDeptVo.checkId}
+            </if>
+            <if test="getAppealDeptVo.isPlacefile != null and getAppealDeptVo.isPlacefile != '' ">
+                AND b.is_placefile = #{getAppealDeptVo.isPlacefile}
+            </if>
+            GROUP BY
+            b.beh_dept_id
+    </select>
+    <select id="getAppealMode" resultType="com.lantone.report.dto.GetAppealModeDTO">
+        SELECT
+        a.mode_id modeId,
+        a.mode_name modeName
+        FROM
+        med_appeal_info a
+        LEFT JOIN med_behospital_info b ON a.behospital_code = b.behospital_code
+        WHERE
+        a.is_deleted = 'N'
+        AND a.hospital_id = #{getAppealModeVo.hospitalId}
+        AND a.hospital_id = b.hospital_id
+        <if test="getAppealModeVo.claimantId != null ">
+            AND a.claimant_id = #{getAppealModeVo.claimantId}
+        </if>
+        <if test="getAppealModeVo.checkId != null ">
+            AND a.check_id = #{getAppealModeVo.checkId}
+        </if>
+        <if test="getAppealModeVo.isPlacefile != null and getAppealModeVo.isPlacefile != '' ">
+            AND b.is_placefile = #{getAppealModeVo.isPlacefile}
+        </if>
+        GROUP BY
+        a.mode_id
+    </select>
 </mapper>