管理端人工随访代办查询接口修改

This commit is contained in:
youxilong 2024-07-05 11:43:43 +08:00
parent 83d6294f8b
commit b9baa2aee4
3 changed files with 16 additions and 76 deletions

View File

@ -44,42 +44,12 @@ public class ManualFollowUpDTO {
@ApiModelProperty(value = "所属病区id")
private Long wardId;
@ApiModelProperty(value = "适用范围在院IN_THE_HOSPITAL出院DISCHARGE门诊OUTPATIENT_SERVICE")
private String suitRange;
@ApiModelProperty(value = "就诊方式门诊OUTPATIENT_SERVICE住院BE_IN_HOSPITAL")
private String visitMethod;
@ApiModelProperty(value = "就诊流水号")
private String visitSerialNumber;
@DateTimeFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "入院开始时间")
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate admissionStartTime;
@DateTimeFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "入院结束时间")
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate admissionEndTime;
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "门诊(门诊患者)开始时间")
private LocalDate clinicalStartTime;
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "门诊(门诊患者)结束时间")
private LocalDate clinicalEndTime;
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "出院时间(出院患者)开始时间")
private LocalDate dischargeStartTime;
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "出院时间(出院患者)结束时间")
private LocalDate dischargeEndTime;
@ApiModelProperty(value = "主要诊断")
private String mainDiagnosis;

View File

@ -90,16 +90,20 @@ public class ManualFollowUpVO {
@ApiModelProperty(value = "主治医生姓名")
private String attendingPhysicianName;
@ApiModelProperty(value = "在院IN_THE_HOSPITAL出院DISCHARGE门诊OUTPATIENT_SERVICE")
private String suitRange;
@ApiModelProperty(value = "就诊方式门诊OUTPATIENT_SERVICE住院BE_IN_HOSPITAL")
private String visitMethod;
@ApiModelProperty(value = "入院时间")
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime admissionTime;
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "门诊/出院时间")
private LocalDateTime visitOrDischargeTime;
@ApiModelProperty(value = "门诊时间")
private LocalDateTime visitTime;
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "出院时间")
private LocalDateTime dischargeTime;
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "随访时间")

View File

@ -312,17 +312,10 @@
pvr.surgical_name,
pi.attending_physician_id,
pi.attending_physician_name,
IF(spmr.suit_range = 'IN_THE_HOSPITAL' OR spmr.suit_range = 'DISCHARGE', pi.admission_time, NULL) AS 'admissionTime',
CASE
WHEN spmr.suit_range = 'OUTPATIENT_SERVICE' THEN pi.visit_date
WHEN spmr.suit_range = 'DISCHARGE' THEN pi.discharge_time
WHEN spmr.suit_range = 'OUTPATIENT_SERVICE_DISCHARGE' THEN COALESCE(pi.visit_date, pi.discharge_time)
END AS 'visitOrDischargeTime',
CASE
WHEN spmr.suit_range IN ('IN_THE_HOSPITAL', 'DISCHARGE', 'OUTPATIENT_SERVICE') THEN spmr.suit_range
WHEN spmr.suit_range = 'OUTPATIENT_SERVICE_DISCHARGE' AND pi.visit_date IS NOT NULL THEN 'OUTPATIENT_SERVICE'
WHEN spmr.suit_range = 'OUTPATIENT_SERVICE_DISCHARGE' AND pi.discharge_time IS NOT NULL THEN 'DISCHARGE'
END AS 'suitRange',
pi.visit_date AS 'visitTime',
pi.admission_time,
pi.discharge_time AS 'dischargeTime',
pi.visit_method,
pter.id AS 'taskExecuteRecordId',
pter.execute_time AS 'executeTime',
spmr.id AS 'manageRouteId',
@ -372,39 +365,12 @@
<if test="wardId != null">
AND pi.ward_id = #{wardId}
</if>
<if test="suitRange != null and suitRange != ''">
<choose>
<!-- 当传入的是出院或门诊时,也匹配门诊+出院 -->
<when test="suitRange == 'DISCHARGE' or suitRange == 'OUTPATIENT_SERVICE'">
AND (spmr.suit_range = #{suitRange} OR spmr.suit_range = 'OUTPATIENT_SERVICE_DISCHARGE')
</when>
<!-- 其他情况直接匹配传入的值 -->
<otherwise>
AND spmr.suit_range = #{suitRange}
</otherwise>
</choose>
<if test="visitMethod != null and visitMethod != ''">
AND pi.visit_method = #{visitMethod}
</if>
<if test="visitSerialNumber != null and visitSerialNumber != ''">
AND pi.visit_serial_number LIKE concat('%', #{visitSerialNumber}, '%')
</if>
<if test="clinicalStartTime != null">
AND pi.visit_date >= #{clinicalStartTime}
</if>
<if test="clinicalEndTime != null">
AND pi.visit_date &lt;= #{clinicalEndTime}
</if>
<if test="dischargeStartTime != null">
AND pi.discharge_time >= #{dischargeStartTime}
</if>
<if test="dischargeEndTime != null">
AND pi.discharge_time &lt;= #{dischargeEndTime}
</if>
<if test="admissionStartTime != null">
AND pi.admission_time >= #{admissionStartTime}
</if>
<if test="admissionEndTime != null">
AND pi.admission_time &lt;= #{admissionEndTime}
</if>
<if test="mainDiagnosis != null and mainDiagnosis != ''">
AND pi.main_diagnosis LIKE concat('%', #{mainDiagnosis}, '%')
</if>