diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/clinicalmanage/dto/OpScheduleDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/clinicalmanage/dto/OpScheduleDto.java index 00f25c63..5f16f5e1 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/clinicalmanage/dto/OpScheduleDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/clinicalmanage/dto/OpScheduleDto.java @@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonFormat; import com.openhis.surgicalschedule.domain.OpSchedule; import lombok.Data; import lombok.EqualsAndHashCode; +import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDate; @@ -18,6 +19,20 @@ import java.time.LocalDate; @EqualsAndHashCode(callSuper = true) public class OpScheduleDto extends OpSchedule { + /** + * 手术安排日期开始(查询用) + */ + @JsonFormat(pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate scheduleDateStart; + + /** + * 手术安排日期结束(查询用) + */ + @JsonFormat(pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate scheduleDateEnd; + /** * 患者姓名 */ diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/clinicalmanage/SurgicalScheduleAppMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/clinicalmanage/SurgicalScheduleAppMapper.xml index c29a246d..d1c2d6f9 100644 --- a/openhis-server-new/openhis-application/src/main/resources/mapper/clinicalmanage/SurgicalScheduleAppMapper.xml +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/clinicalmanage/SurgicalScheduleAppMapper.xml @@ -47,8 +47,11 @@ AND cs.apply_dept_id = #{dto.applyDeptId} - - AND os.schedule_date = #{dto.scheduleDate} + + AND DATE(os.schedule_date) >= #{dto.scheduleDateStart} + + + AND DATE(os.schedule_date) <= #{dto.scheduleDateEnd} AND os.oper_code LIKE CONCAT('%', #{dto.operCode}, '%') @@ -134,7 +137,8 @@ AND os.apply_id = #{dto.applyId} AND os.oper_code = #{dto.operCode} AND os.oper_name LIKE CONCAT('%', #{dto.operName}, '%') - AND os.schedule_date = #{dto.scheduleDate} + AND DATE(os.schedule_date) >= #{dto.scheduleDateStart} + AND DATE(os.schedule_date) <= #{dto.scheduleDateEnd} AND cs.org_id = #{dto.orgId} AND cs.apply_dept_id = #{dto.applyDeptId} AND ap.name LIKE CONCAT('%', #{dto.patientName}, '%') diff --git a/openhis-ui-vue3/src/views/surgicalschedule/index.vue b/openhis-ui-vue3/src/views/surgicalschedule/index.vue index 6930e957..99336298 100644 --- a/openhis-ui-vue3/src/views/surgicalschedule/index.vue +++ b/openhis-ui-vue3/src/views/surgicalschedule/index.vue @@ -11,16 +11,16 @@ style="width: 200px" /> - - - - + + @@ -872,7 +872,9 @@ const surgeryList = ref([]) const queryParams = reactive({ pageNo: 1, pageSize: 10, - scheduleDate: undefined, + scheduleDateRange: [], + scheduleDateStart: undefined, + scheduleDateEnd: undefined, tenantId: undefined, applyDeptId: undefined, patientName: undefined, @@ -1166,7 +1168,18 @@ function loadOperatingRoomList() { // 获取手术安排列表 function getList() { loading.value = true - getSurgerySchedulePage(queryParams).then((res) => { + // 处理日期范围 + const params = { ...queryParams } + if (params.scheduleDateRange && params.scheduleDateRange.length === 2) { + params.scheduleDateStart = params.scheduleDateRange[0] + params.scheduleDateEnd = params.scheduleDateRange[1] + } else { + params.scheduleDateStart = undefined + params.scheduleDateEnd = undefined + } + delete params.scheduleDateRange + + getSurgerySchedulePage(params).then((res) => { surgeryList.value = res.data.records total.value = res.data.total }).catch(error => { @@ -1192,7 +1205,9 @@ function resetQuery() { Object.assign(queryParams, { pageNo: 1, pageSize: 10, - scheduleDate: undefined, + scheduleDateRange: [], + scheduleDateStart: undefined, + scheduleDateEnd: undefined, tenantId: undefined, applyDeptId: undefined, patientName: undefined,