package cn.lihu.jh.module.ecg.service.appointment; import cn.lihu.jh.framework.common.pojo.PageResult; import cn.lihu.jh.module.ecg.controller.admin.appointment.vo.AppointmentConfirmReqVO; import cn.lihu.jh.module.ecg.controller.admin.appointment.vo.AppointmentPageReqVO; import cn.lihu.jh.module.ecg.controller.admin.appointment.vo.AppointmentSaveReqVO; import cn.lihu.jh.module.ecg.dal.dataobject.appointment.AppointmentDO; import javax.validation.Valid; import java.util.List; import java.util.Map; /** * 预约 Service 接口 * * @author 马剑波 */ public interface AppointmentService { /** * 创建预约 * * @param createReqVO 创建信息 * @return 编号 */ Long createAppointment(@Valid AppointmentSaveReqVO createReqVO); /** * 更新预约 * * @param updateReqVO 更新信息 */ void updateAppointment(@Valid AppointmentSaveReqVO updateReqVO); /** * 删除预约 * * @param id 编号 */ void deleteAppointment(Long id); /** * 获得预约 * * @param id 编号 * @return 预约 */ AppointmentDO getAppointment(Long id); /** * 获得预约分页 * * @param pageReqVO 分页查询 * @return 预约分页 */ PageResult getAppointmentPage(AppointmentPageReqVO pageReqVO); /** * 申请单创建 * * @param dataMap 请求数据 * @return 预约编号 */ Long handleAppointmentCreate(Map dataMap); /** * 申请单更新 * * @param dataMap 请求数据 */ void handleAppointmentUpdate(Map dataMap); /** * 申请单状态更新 * * @param dataMap 请求数据 */ void handleAppointmentStateUpdate(Map dataMap); /** * 处理检查预约状态新增 * * @param dataMap 请求数据 */ void handleCheckAppointmentUpdate(Map dataMap); /** * 获得当天的预约 根据PatID and CheckType * * @param patId 编号 * @return 预约 */ AppointmentDO getCurAppointmentByPatIdAndCheckType(String patId, Integer checkType); /** * 获得预约 * * @param patCode 编号 * @return 预约 */ List queryAndCreateAppointmentByPatId(String patCode); List getAppointmentExtermal(String patId); Integer appoitmentConfirm(AppointmentConfirmReqVO appointmentConfirmReqVO); public AppointmentDO getByApplyNo(String applyNo); }