eight
2024-12-02 7105cd2dd94171feb6fa969f71f8f9ba491b0729
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
package cn.lihu.jh.module.ecg.service.queue;
 
import javax.validation.Valid;
import java.util.List;
 
import cn.lihu.jh.framework.common.exception.ErrorCode;
import cn.lihu.jh.framework.common.pojo.CommonResult;
import cn.lihu.jh.module.ecg.controller.admin.queue.vo.*;
import cn.lihu.jh.module.ecg.controller.admin.room.vo.MonitorInfoVO;
import cn.lihu.jh.module.ecg.controller.admin.room.vo.RoomRespVO;
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.room.RoomDO;
 
/**
 * 排队 Service 接口
 *
 * @author 芋道源码
 */
public interface QueueService {
 
    void initCheckType();
    void startBiz();
    void closeBiz();
 
 
    /**
     * 创建排队
     *
     * @param createReqVO 创建信息
     * @return 编号
     */
    Integer createqueue(@Valid QueueSaveReqVO createReqVO);
 
    /**
     * 更新排队
     *
     * @param updateReqVO 更新信息
     */
    void updatequeue(@Valid QueueSaveReqVO updateReqVO);
 
    /**
     * 删除排队
     *
     * @param id 编号
     */
    void deletequeue(Integer id);
 
    /**
     *
     */
    void startHurryUpOneBed(Long roomId, String bedNo);
    void startHurryUpOneCheckType(Integer checkType);
 
    void startBedReload();
    void startResetRoom(Boolean needCloseBed);
    MonitorInfoVO getMonitorInfo();
 
    ErrorCode startBedOpen(Long roomId, String roomName, String bedNo);
    ErrorCode startBedClose(Long roomId, String bedNo);
    ErrorCode startBedDoctorPause(Long roomId, String bedNo, Long docId, String docName);
    ErrorCode startBedDoctorResume(Long roomId, String bedNo, Long docId, String docName);
    ErrorCode startBedDoctorOn(Long roomId, String bedNo, Long docId, String docName);
    ErrorCode startBedDoctorOff(Long roomId, String bedNo, Long docId, String docName);
    ErrorCode startNextPatient(Long roomId, String bedNo);
    ErrorCode startNextInstallPatient(Long roomId, String bedNo);
 
    CommonResult<RoomRespVO> getRoom(Long roomId, String bedNo, Long docId);
 
    /**
     * 获得排队
     *
     * @param id 编号
     * @return 排队
     */
    QueueDO getqueue(Integer id);
 
    /**
     * 获得排队分页
     *
     * @param pageReqVO 分页查询
     * @return 排队分页
     */
    PageResult<QueueDO> getqueuePage(QueuePageReqVO pageReqVO);
 
    /**
     * 患者排队
     * @param queueSaveReqVO
     */
    void queue(QueueSaveReqVO queueSaveReqVO);
 
    List<QueueDO> selectBookSeqNumByAppointIdList(List<Long> appointIdList);
 
    /**
     * 常规检查 医生叫下一位患者
     */
    void finishNextPatient(Long roomId, String bedNo);
 
    /**
     * 领用 医生叫下一位患者
     */
    void finishReceiveNextPatient(Long roomId, String bedNo);
 
    /**
     * 装机 医生叫下一位患者
     */
    void finishInstallNextPatient(Long roomId, String bedNo);
 
    /**
     * 过号排队中患者
     */
    void passWaitingPatient( String patId, Integer bookCheckType );
 
    /**
     * 常规过号、领用过号
     */
    void passNextPatient(Long roomId, String bedNo);
 
    /**
     * 装机过号
     */
    void passInstallNextPatient(Long roomId, String bedNo);
 
    List<QueueDO> getBedQueueByStatus(Long roomId, String bedNo, List<Integer> statusList);
 
    List<QueueDO> getRoomQueueByStatus(Long roomId, List<Integer> statusList);
 
    PatientStatisticVO getPatientStatistic(Long roomId, String bedNo);
 
    PatientStatisticVO getBedDevReadyStatistic(Long roomId, String bedNo);
 
    PatientStatisticVO getBedDevInstallStatistic(Long roomId, String bedNo);
 
    Integer recallPassWaitingPatient(String patId, Integer checkType);
 
    Integer recallPatient(Long roomId, String bedNo, String patId, Integer checkType);
 
    Integer recallInstallPatient(Long roomId, String bedNo, String patId, Integer checkType, Long roomId_operator, String bedNo_operator);
 
    Integer patientJump(String patId, Byte jumped );
 
    List<RoomDO> getDocRoomInfo(Long docId);
 
    List<QueueDO> getToBeCheckedPatient(Long roomId, String bedNo);
 
    List<QueueDO> getToBeInstalledPatient(Long roomId, String bedNo);
}