浏览代码

病案质控审核功能优化

lighter 1 年之前
父节点
当前提交
b4e1df1292

+ 5 - 0
src/main/java/thyyxxk/webserver/controller/inpatient/casefrontsheet/CaseFrontSheetController.java

@@ -299,4 +299,9 @@ public class CaseFrontSheetController {
     public ResultVo<List<CodeName>> getAllSmallDept() {
         return ResultVoUtil.success(service.getAllSmallDept());
     }
+
+    @PostMapping("/fetchExportData")
+    public ResultVo<List<FrontsheetQualityVerification>> fetchExportData(@RequestBody AuditInquiry inquiry) {
+        return ResultVoUtil.success(service.fetchExportData(inquiry));
+    }
 }

+ 108 - 84
src/main/java/thyyxxk/webserver/entity/casefrontsheet/FrontsheetQualityVerification.java

@@ -14,92 +14,116 @@ import java.util.Date;
 
 /**
  * 病案质控申请与审核
- * */
+ */
 @Data
 @TableName(value = "t_frontsheet_quality_verification")
 public class FrontsheetQualityVerification implements Serializable {
 
-	/**
-	 * 唯一主键
-	 */
-	@TableId(type = IdType.INPUT)
-	private String id;
-
-	/**
-	 * 患者住院号
-	 */
-	private String patNo;
-
-	/**
-	 * 患者住院次数
-	 */
-	private Integer times;
-
-	/**
-	 * 患者姓名
-	 */
-	private String patName;
-
-	/**
-	 * 患者性别
-	 */
-	private Gender patGender;
-
-	/**
-	 * 医生编码
-	 */
-	private String doctorCode;
-
-	/**
-	 * 医生姓名
-	 */
-	private String doctorName;
-
-	/**
-	 * 出院科室编码
-	 * */
-	private String disDeptCode;
-
-	/**
-	 * 出院科室编码
-	 * */
-	private String disDeptName;
-
-	/**
-	 * 申请时间
-	 */
-	private Date applicationTime;
-
-	/**
-	 * 审核状态
-	 */
-	private AuditState auditState;
-
-	/**
-	 * 审核人员编码
-	 */
-	private String auditStaffCode;
-
-	/**
-	 * 审核人员姓名
-	 */
-	private String auditStaffName;
-
-	/**
-	 * 审核时间
-	 */
-	private Date auditTime;
-
-	/**
-	 * 审核备注
-	 */
-	private String auditRemark;
-
-	/**
-	 * 编码员备注
-	 * */
-	private String coderNote;
-
-	@TableField(exist = false)
-	private CaseFrontsheetMain sheet;
+    /**
+     * 唯一主键
+     */
+    @TableId(type = IdType.INPUT)
+    private String id;
+
+    /**
+     * 患者住院号
+     */
+    private String patNo;
+
+    /**
+     * 患者住院次数
+     */
+    private Integer times;
+
+    /**
+     * 患者姓名
+     */
+    private String patName;
+
+    /**
+     * 患者性别
+     */
+    private Gender patGender;
+
+    /**
+     * 医生编码
+     */
+    private String doctorCode;
+
+    /**
+     * 医生姓名
+     */
+    private String doctorName;
+
+    /**
+     * 出院科室编码
+     */
+    private String disDeptCode;
+
+    /**
+     * 出院科室编码
+     */
+    private String disDeptName;
+
+    /**
+     * 申请时间
+     */
+    private Date applicationTime;
+
+    /**
+     * 审核状态
+     */
+    private AuditState auditState;
+
+    /**
+     * 审核人员编码
+     */
+    private String auditStaffCode;
+
+    /**
+     * 审核人员姓名
+     */
+    private String auditStaffName;
+
+    /**
+     * 审核时间
+     */
+    private Date auditTime;
+
+    /**
+     * 审核备注
+     */
+    private String auditRemark;
+
+    /**
+     * 编码员备注
+     */
+    private String coderNote;
+
+    @TableField(exist = false)
+    private CaseFrontsheetMain sheet;
+
+    public String getGenderName() {
+        switch (patGender) {
+            case MALE:
+                return "男";
+            case FEMALE:
+                return "女";
+            default:
+                return "未知";
+        }
+    }
+
+    public String getStateName() {
+        switch (auditState) {
+            case APPROVED:
+                return "审核通过";
+            case REJECTED:
+                return "审核驳回";
+            case INITIAL:
+                return "未审核";
+            default:
+                return "未知的状态";
+        }
+    }
 }

+ 8 - 0
src/main/java/thyyxxk/webserver/service/inpatient/casefrontsheet/CaseFrontSheetMainService.java

@@ -1278,4 +1278,12 @@ public class CaseFrontSheetMainService {
     public List<CodeName> getAllSmallDept() {
         return qualityVerificationDao.selectAllSmallDeptWithInpatientFlag();
     }
+
+    public List<FrontsheetQualityVerification> fetchExportData(AuditInquiry inquiry) {
+        QueryWrapper<FrontsheetQualityVerification> wrapper = new QueryWrapper<>();
+        wrapper.ge("audit_time", inquiry.getStart());
+        wrapper.le("audit_time", inquiry.getEnd());
+        wrapper.orderByAsc("pat_no,times,audit_time");
+        return qualityVerificationDao.selectList(wrapper);
+    }
 }