80 门诊医生站检查申请单开单界面,排班的回显问题
This commit is contained in:
@@ -0,0 +1,85 @@
|
||||
package com.openhis.appointmentmanage.domain;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalTime;
|
||||
|
||||
/**
|
||||
* 医生排班(含具体日期)DTO
|
||||
* 通过 adm_doctor_schedule LEFT JOIN adm_schedule_pool 联表查询得到,
|
||||
* 在原排班信息基础上增加了号源池中的具体出诊日期字段。
|
||||
*
|
||||
* @date 2026-02-25
|
||||
*/
|
||||
@Data
|
||||
public class DoctorScheduleWithDateDto {
|
||||
|
||||
/** 排班记录ID */
|
||||
private Long id;
|
||||
|
||||
/** 星期 */
|
||||
private String weekday;
|
||||
|
||||
/** 时段(上午/下午) */
|
||||
private String timePeriod;
|
||||
|
||||
/** 开始时间 */
|
||||
private LocalTime startTime;
|
||||
|
||||
/** 结束时间 */
|
||||
private LocalTime endTime;
|
||||
|
||||
/** 限号数量 */
|
||||
private Integer limitNumber;
|
||||
|
||||
/** 号源记录 */
|
||||
private String callSignRecord;
|
||||
|
||||
/** 挂号项目 */
|
||||
private String registerItem;
|
||||
|
||||
/** 挂号费 */
|
||||
private Integer registerFee;
|
||||
|
||||
/** 诊查项目 */
|
||||
private String diagnosisItem;
|
||||
|
||||
/** 诊疗费 */
|
||||
private Integer diagnosisFee;
|
||||
|
||||
/** 线上挂号 */
|
||||
private Boolean isOnline;
|
||||
|
||||
/** 是否停诊 */
|
||||
private Boolean isStopped;
|
||||
|
||||
/** 停诊原因 */
|
||||
private String stopReason;
|
||||
|
||||
/** 关联科室ID */
|
||||
private Long deptId;
|
||||
|
||||
/** 医生姓名 */
|
||||
private String doctorName;
|
||||
|
||||
/** 诊室/位置 */
|
||||
@JsonProperty("clinicRoom")
|
||||
private String clinicRoom;
|
||||
|
||||
/** 医生排班表中设置的具体诊室位置 */
|
||||
private String clinic;
|
||||
|
||||
/** 科室名称 */
|
||||
private String deptName;
|
||||
|
||||
/** 科室位置 */
|
||||
private String deptLocation;
|
||||
|
||||
/** 医生ID(来自 adm_schedule_pool.doctor_id) */
|
||||
private Long doctorId;
|
||||
|
||||
/** 具体出诊日期(来自 adm_schedule_pool.schedule_date) */
|
||||
private LocalDate scheduleDate;
|
||||
}
|
||||
@@ -2,7 +2,11 @@ package com.openhis.appointmentmanage.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.openhis.appointmentmanage.domain.DoctorSchedule;
|
||||
import com.openhis.appointmentmanage.domain.DoctorScheduleWithDateDto;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper
|
||||
public interface DoctorScheduleMapper extends BaseMapper<DoctorSchedule> {
|
||||
@@ -10,8 +14,43 @@ public interface DoctorScheduleMapper extends BaseMapper<DoctorSchedule> {
|
||||
* 自定义插入方法,排除id字段(数据库GENERATED ALWAYS)
|
||||
*/
|
||||
int insertWithoutId(DoctorSchedule doctorSchedule);
|
||||
|
||||
/**
|
||||
* 自定义更新方法
|
||||
*/
|
||||
int updateDoctorSchedule(DoctorSchedule doctorSchedule);
|
||||
|
||||
/**
|
||||
* 联表查询:根据科室ID和日期范围查询排班信息(含具体出诊日期)
|
||||
* 通过 LEFT JOIN adm_schedule_pool 获取 schedule_date 字段,
|
||||
* 解决原来只按星期匹配导致日期错位的问题。
|
||||
*
|
||||
* @param deptId 科室ID
|
||||
* @param startDate 起始日期(yyyy-MM-dd)
|
||||
* @param endDate 结束日期(yyyy-MM-dd)
|
||||
* @return 带具体日期的排班列表
|
||||
*/
|
||||
List<DoctorScheduleWithDateDto> selectScheduleWithDateByDeptAndRange(
|
||||
@Param("deptId") Long deptId,
|
||||
@Param("startDate") String startDate,
|
||||
@Param("endDate") String endDate);
|
||||
|
||||
/**
|
||||
* 联表查询:获取今日所有排班(通过 adm_schedule_pool.schedule_date = 今天)
|
||||
*
|
||||
* @param today 今日日期(yyyy-MM-dd)
|
||||
* @return 今日排班列表
|
||||
*/
|
||||
List<DoctorScheduleWithDateDto> selectTodaySchedule(@Param("today") String today);
|
||||
|
||||
/**
|
||||
* 联表查询:获取指定医生今日排班
|
||||
*
|
||||
* @param today 今日日期(yyyy-MM-dd)
|
||||
* @param doctorId 医生ID
|
||||
* @return 指定医生的今日排班列表
|
||||
*/
|
||||
List<DoctorScheduleWithDateDto> selectTodayMySchedule(
|
||||
@Param("today") String today,
|
||||
@Param("doctorId") Long doctorId);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user