eight
2024-10-10 05466007a40b6a22d68ef47b784fb3738760d18b
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/QueueServiceTxFunctions.java
@@ -411,16 +411,15 @@
    public MonitorInfoVO getMonitorInfo() {
        MonitorInfoVO monitorInfoVO = new MonitorInfoVO();
        monitorInfoVO.setOpeningFlag( openingFlag.get() );
        String[] arrStatInfo = roomBedStatistic();
        monitorInfoVO.setOpeningInfo(arrStatInfo[0]);
        monitorInfoVO.setOperatingInfo(arrStatInfo[1]);
        roomBedStatistic(monitorInfoVO);
        return monitorInfoVO;
    }
    public void monitorInfo() {
        String[] arrStatInfo = roomBedStatistic();
        log.info(" opening " + openingFlag.get() + " openingInfo " + arrStatInfo[0] + " operatingInfo " + arrStatInfo[1] );
        MonitorInfoVO monitorInfoVO = new MonitorInfoVO();
        roomBedStatistic(monitorInfoVO);
        log.info(" opening " + openingFlag.get() + " " + monitorInfoVO.getQueueNum() + " " + monitorInfoVO.getActiveQueueNum() + " " + monitorInfoVO.getCheckTypeBedInfo().toString() );
    }
    private Integer getBedReadyMax(Long roomId, String bedNo) {
@@ -464,7 +463,7 @@
        });
    }
    private String[]  roomBedStatistic() {
    private void roomBedStatistic(MonitorInfoVO monitorInfoVO) {
        Map<Integer, Integer>  mapOpeningCheckBedStatInfo = new HashMap<>();
        Map<Integer, Integer>  mapOpeningReadyBedStatInfo = new HashMap<>();
        Map<Integer, Integer>  mapOperatingCheckBedStatInfo = new HashMap<>();
@@ -487,8 +486,6 @@
            });
        });
        String openingBedInfo = "总数:" + mapBedVsQueue.size() + "  检查工位数: " + mapOpeningCheckBedStatInfo.toString() + "  领用工位数: " + mapOpeningReadyBedStatInfo.toString();
        //运营中工位统计
        HashSet<BedQueueBO> hashSetOperatingBedQueue = new HashSet<>();
        mapCheckTypeVsPriorityQueue.values().forEach(priorityQueue->{
@@ -505,9 +502,18 @@
            });
        });
        String operatingBedInfo = "总数:" + hashSetOperatingBedQueue.size() + "  检查工位数: " + mapOperatingCheckBedStatInfo.toString() + "  领用工位数: " + mapOperatingReadyBedStatInfo.toString();
        Map<Integer, String> mapCheckTypeBedInfo = new HashMap<>();
        mapCheckTypeVsReadyMax.keySet().forEach( checkType -> {
           String str = mapOpeningCheckBedStatInfo.get(checkType) + " " +
                        mapOpeningReadyBedStatInfo.get(checkType) + " " +
                        mapOperatingCheckBedStatInfo.get(checkType) + " " +
                        mapOperatingReadyBedStatInfo.get(checkType) + " ";
            mapCheckTypeBedInfo.put( checkType, str);
        });
        return new String[]{openingBedInfo, operatingBedInfo};
        monitorInfoVO.setCheckTypeBedInfo(mapCheckTypeBedInfo);
        monitorInfoVO.setQueueNum(mapBedVsQueue.size());
        monitorInfoVO.setActiveQueueNum(hashSetOperatingBedQueue.size());
    }
}