Scott 2 лет назад
Родитель
Сommit
3e822089af

+ 4 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/bo/AuditInfoResponse.java

@@ -79,5 +79,9 @@ public class AuditInfoResponse implements Serializable {
     @ApiModelProperty(value = "审核状态: wait=待分配; process=处理中; finish=已完成")
     private java.lang.String checkState;
 
+    @ApiModelProperty(value = "审核状态;dept_audit_wait=等待科室处理;doctor_appeal=医生申诉")
+    private String status;
+    @ApiModelProperty(value = "审核次数")
+    private Integer auditNumber;
 
 }

+ 1 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/bo/AuditRequestBO.java

@@ -22,5 +22,5 @@ public class AuditRequestBO implements Serializable {
     private String id;
     @NotBlank(message = "审核状态不可为空")
     @ApiModelProperty(value = "审核状态;wait=待审核 pass=系统问题,直接过,violation=直接违规; issue_review=下发复核") //TODO 暂定3种,后面在枚举中,或者字典
-    private String checkState;
+    protected String checkState;
 }

+ 4 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/bo/DeptAuditRequestBO.java

@@ -27,4 +27,8 @@ public class DeptAuditRequestBO extends AuditRequestBO{
     @NotBlank(message = "必须上传图片")
     @ApiModelProperty(value = "审核照片组,中间用逗号分割")
     private String imgPaths;
+
+    @NotBlank(message = "审核状态不可为空")
+    @ApiModelProperty(value = "审核状态:appeal=申诉;agree_audit=同意审核结果")
+    protected String checkState;
 }

+ 1 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/enums/AfterwardsAuditStatusEnum.java

@@ -23,6 +23,7 @@ public enum AfterwardsAuditStatusEnum {
     issue_review("issue_review", "下发复核"),
     agree_audit("agree_audit", "医生同意审核结果")
     ,
+    appeal("appeal", "科室/医生申诉"),
 
 
     // 下发复核状态

+ 2 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/xml/AfterwardsAuditMapper.xml

@@ -183,7 +183,8 @@
             ad.visit_time as visitTime,
             ad.medical_insurance as medicalInsurance,
             ad.doctor_name as doctorName,
-            ad.medical_dept_name as medicalDeptName
+            ad.medical_dept_name as medicalDeptName,
+            ad.`status` as status
         FROM afterwards_audit as ad
                  LEFT JOIN his_patient as his on ad.patient_id = his.patient_no
         WHERE ad.id = #{id,jdbcType=INTEGER};

+ 3 - 3
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IMedicalDoctorAppealRecordService.java

@@ -14,9 +14,9 @@ public interface IMedicalDoctorAppealRecordService extends IService<MedicalDocto
 
     /**
      * 根据条件,获取最大的审核次数
-     * @param id
-     * @param medicalDeptCode
-     * @param doctorId
+     * @param id 事后审核工单id
+     * @param medicalDeptCode 科室编码
+     * @param doctorId 医生编码
      * @return
      */
     MedicalDoctorAppealRecord loadMaxAppealNumber(Integer id, String medicalDeptCode, String doctorId);

+ 18 - 3
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/AfterwardsAuditServiceImpl.java

@@ -250,9 +250,16 @@ public class AfterwardsAuditServiceImpl extends ServiceImpl<AfterwardsAuditMappe
         appealRecord.setDoctorId(audit.getDoctorId());
         appealRecord.setDoctorName(audit.getDoctorName());
         appealRecord.setAfterwardsAuditId(audit.getId());
+
+        AfterwardsAuditStatusEnum enums = AfterwardsAuditStatusEnum.findEnums(param.getCheckState());
+        if (null == enums) {
+            log.error("不支持的审核状态={}", param.getCheckState());
+            throw new JeecgBootException("不支持的审核状态,请检查");
+        }
+
         // 2.开始校验处理状态
-        switch (param.getCheckState()) {
-            case "appeal": //申诉
+        switch (enums) {
+            case appeal: //"appeal": //申诉
                 appealRecord.setDescription(param.getDescription());
                 appealRecord.setImgPath(param.getImgPaths());
 
@@ -264,7 +271,7 @@ public class AfterwardsAuditServiceImpl extends ServiceImpl<AfterwardsAuditMappe
                 audit.setUpdateTime(new Date());
                 audit.setUpdateBy(loginUser.getId());
                 break;
-            case "agree_audit": // 同意审核结果
+            case agree_audit: // "agree_audit": // 同意审核结果
                 audit.setCheckBy(audit.getPreCheckBy()); //下一个审核人员为 下发给科室的人员继续审核
                 audit.setPreCheckBy(loginUser.getId()); // 上一个审核人员为当前审核人员
                 audit.setPreAuditTime(new Date()); // 上一个审查时间,是当前时间
@@ -316,6 +323,14 @@ public class AfterwardsAuditServiceImpl extends ServiceImpl<AfterwardsAuditMappe
         if (null != result.getBirthday()) {
             // TODO 计算年龄
         }
+        int appealNumber = 0;
+        // 查询一下审核次数
+        MedicalDoctorAppealRecord appealRecord = appealRecordService.loadMaxAppealNumber(id, result.getMedicalDeptCode(), result.getDoctorId());
+        if (null != appealRecord && appealRecord.getAppealNumber() != null) {
+            appealNumber = appealRecord.getAppealNumber();
+        }
+        result.setAuditNumber(appealNumber);
+
         //获取违规的detail数据
         List<AuditInfoListResponse> auditInfoListResponseList = baseMapper.loadAuditInfoList(id);
         if (!CollectionUtils.isEmpty(auditInfoListResponseList)) {