package cn.lihu.jh.module.ecg.service.queue;
|
|
import cn.lihu.jh.module.ecg.controller.admin.queue.vo.*;
|
import cn.lihu.jh.module.ecg.dal.dataobject.queue.QueueDO;
|
import cn.lihu.jh.framework.common.pojo.PageResult;
|
import cn.lihu.jh.module.ecg.dal.dataobject.queue.QueueStatisticDO;
|
import cn.lihu.jh.module.ecg.dal.dataobject.room.RoomStatisticsDO;
|
|
import javax.validation.Valid;
|
import java.util.List;
|
|
/**
|
* 排队 Service 接口
|
*
|
* @author 芋道源码
|
*/
|
public interface QueueService {
|
|
/**
|
* 创建排队
|
*
|
* @param createReqVO 创建信息
|
* @return 编号
|
*/
|
Integer createqueue(@Valid QueueSaveReqVO createReqVO);
|
|
/**
|
* 更新排队
|
*
|
* @param updateReqVO 更新信息
|
*/
|
void updatequeue(@Valid QueueSaveReqVO updateReqVO);
|
|
/**
|
* 删除排队
|
*
|
* @param id 编号
|
*/
|
void deletequeue(Integer id);
|
|
/**
|
* 获得排队
|
*
|
* @param id 编号
|
* @return 排队
|
*/
|
QueueDO getqueue(Integer id);
|
|
/**
|
* 获得排队分页
|
*
|
* @param pageReqVO 分页查询
|
* @return 排队分页
|
*/
|
PageResult<QueueDO> getqueuePage(QueuePageReqVO pageReqVO);
|
|
List<QueueStatisticDO> queueStatistics(List<Byte> statusList);
|
|
/**
|
* 患者排队
|
* @param queueSaveReqVO
|
*/
|
void queue(QueueSaveReqVO queueSaveReqVO);
|
|
/**
|
*
|
*/
|
void initQueue();
|
|
/**
|
* 开诊前一刻,对 就诊准备的 人员 重新排序
|
*/
|
void reorderQueue();
|
|
/**
|
* 把医生候诊的队列塞满
|
*/
|
void hurryup();
|
|
/**
|
* 医生叫下一位患者
|
*/
|
void finishNextPatient(Long roomId, String bedNo);
|
|
/**
|
* 医生看完患者
|
*/
|
void passNextPatient(Long roomId, String bedNo);
|
|
List<QueueDO> getDoctorQueueByStatus(Long roomId, String bedNo, List<Byte> statusList);
|
}
|