eight
2024-08-21 1ec288a29f0d847e2263f5cfe09319757cb46a04
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueServiceImpl.java
@@ -1,5 +1,6 @@
package cn.lihu.jh.module.ecg.service.queue;
import cn.lihu.jh.module.ecg.dal.dataobject.queue.BedQueueStatisticDO;
import cn.lihu.jh.module.ecg.dal.dataobject.queue.QueueStatisticDO;
import cn.lihu.jh.module.ecg.dal.dataobject.room.RoomDO;
import cn.lihu.jh.module.ecg.dal.mysql.room.RoomMapper;
@@ -32,7 +33,7 @@
@Validated
public class QueueServiceImpl implements QueueService {
    final static Integer MAX_QUEUE_NUM = 2;
    final static Integer MAX_QUEUE_NUM = 3;
    AtomicInteger curSeqNum = new AtomicInteger(0);
@@ -87,11 +88,6 @@
    @Override
    public PageResult<QueueDO> getqueuePage(QueuePageReqVO pageReqVO) {
        return queueMapper.selectPage(pageReqVO);
    }
    @Override
    public List<QueueStatisticDO> queueStatistics(List<Byte> statusList) {
        return queueMapper.queueStatistic(statusList);
    }
    public void initQueue() {
@@ -227,4 +223,25 @@
        return queueDOList;
    }
    public PatientStatisticVO getPatientStatistic(Long roomId, String bedNo) {
        PatientStatisticVO patientStatisticVO = new PatientStatisticVO();
        List<BedQueueStatisticDO> bedQueueStatisticDOList = queueMapper.bedQueueStatistic(roomId, bedNo);
        bedQueueStatisticDOList.forEach(item -> {
            if (QueueStatusEnum.READY.getStatus() == item.getStatus()) {
                patientStatisticVO.setReadyNum(item.getTotalInStatus());
            } else if (QueueStatusEnum.FINISH.getStatus() == item.getStatus()) {
                patientStatisticVO.setFinishedNum(item.getTotalInStatus());
            } else if (QueueStatusEnum.PASSED.getStatus() == item.getStatus()) {
                patientStatisticVO.setPassedNum(item.getTotalInStatus());
            }
        });
        List<Byte> statusList = new ArrayList<>();
        statusList.add(QueueStatusEnum.WAITING.getStatus());
        Integer num = queueMapper.statusStatistic(statusList);
        patientStatisticVO.setQueuingNum(num);
        return patientStatisticVO;
    }
}