From 4c553d29382b690302de542fc738937778e2858d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E1=84=8C=E1=85=A1=E1=86=BC=E1=84=89=E1=85=A5=E1=86=AB?= =?UTF-8?q?=E1=84=8B=E1=85=A2?= Date: Tue, 12 Sep 2023 16:48:23 +0900 Subject: [PATCH] =?UTF-8?q?tube=20stats=20detail=20=EC=82=AD=EC=A0=9C?= =?UTF-8?q?=EB=90=9C=20=EC=BD=94=EB=93=9C=20=EC=9E=AC=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../application/DefaultStatsService.java | 63 ++++++++++++------- 1 file changed, 41 insertions(+), 22 deletions(-) diff --git a/src/main/java/inc/sdt/controlcentermanagement/application/DefaultStatsService.java b/src/main/java/inc/sdt/controlcentermanagement/application/DefaultStatsService.java index 47de21d..93976a7 100644 --- a/src/main/java/inc/sdt/controlcentermanagement/application/DefaultStatsService.java +++ b/src/main/java/inc/sdt/controlcentermanagement/application/DefaultStatsService.java @@ -38,6 +38,7 @@ public class DefaultStatsService implements StatsService{ @Override public List getChamberStats() { + log.info("[getChamberStats]"); List all= slotRepositoryDelegate.getAll(); Map> groupByChamber = all.stream().collect(Collectors.groupingBy(Slot::getChamberNumber)); @@ -62,28 +63,27 @@ public class DefaultStatsService implements StatsService{ log.info("optional = {}",optional); if(optional.isPresent()){ List content = optional.get().getContent(); - for (DataResource dataResource : content) { - dataResource.getData().forEach((key, value) -> { - if (key.contains("er2")) { + for(DataResource dataResource : content){ + dataResource.getData().forEach((key, value)->{ + if(key.contains("er2")){ errTotalCnt.updateAndGet(v -> v + 1); - if ((int) value > 0) { + if((int)value > 0){ err2Cnt.updateAndGet(v -> v + 1); } } - if (key.contains("do")) { + if(key.contains("do")){ onTotalCnt.updateAndGet(v -> v + 1); offTotalCnt.updateAndGet(v -> v + 1); - if ((int) value > 0) { + if((int)value > 0){ onCnt.updateAndGet(v -> v + 1); - } else { + }else{ offCnt.updateAndGet(v -> v + 1); } } }); } - } else { - throw new NoSuchElementException(); + } } StatsCntRecord onCntRecord = new StatsCntRecord(onCnt.get(), onTotalCnt.get()); @@ -98,8 +98,8 @@ public class DefaultStatsService implements StatsService{ @Override public Page getChamberStatsDetail(int page, int size, String chamberNumber) { + log.info("[getChamberStatsDetail] chamberNumber: {}", chamberNumber); List all= slotRepositoryDelegate.getAll().stream().filter(slot -> slot.getChamberNumber().equals(chamberNumber)).toList(); - if (all.isEmpty()) throw new NoSuchElementException(); Pageable pageable = PageRequest.of(page, size); List statsDetailRecords = new LinkedList<>(); @@ -120,24 +120,43 @@ public class DefaultStatsService implements StatsService{ if(optional.isPresent()){ List content = optional.get().getContent(); - for (DataResource dataResource : content) { - dataResource.getData().forEach((key, value) -> { - if (key.startsWith("current")) { - currentMap.put(key.replace("current", ""), value); - } else if (key.startsWith("voltage")) { - voltageMap.put(key.replace("voltage", ""), value); - } else if (key.startsWith("do")) { - doMap.put(key.replace("do", ""), value); - } else if (key.startsWith("er1")) { - er1Map.put(key.replace("er1", ""), value); - } else if (key.startsWith("er2")) { - er2Map.put(key.replace("er2", ""), value); + for(DataResource dataResource : content){ + dataResource.getData().forEach((key, value)->{ + if(key.startsWith("current")){ + currentMap.put(key.replace("current",""), value); + }else if(key.startsWith("voltage")){ + voltageMap.put(key.replace("voltage",""), value); + }else if(key.startsWith("do")){ + doMap.put(key.replace("do",""), value); + }else if(key.startsWith("er1")){ + er1Map.put(key.replace("er1",""), value); + }else if(key.startsWith("er2")){ + er2Map.put(key.replace("er2",""), value); } }); } } else { throw new NoSuchElementException(); } + + for(int i=0 ; i < 16 ; i++){ + StatsDetailRecord statsDetailRecord = new StatsDetailRecord( + slot.getAssetCode(), + slot.getSlotNumber(), + String.valueOf(i), + "status", + String.valueOf(voltageMap.get(String.valueOf(i))), + String.valueOf(currentMap.get(String.valueOf(i))), + String.valueOf(doMap.get(String.valueOf(i))), + String.valueOf(er1Map.get(String.valueOf(i))), + String.valueOf(er2Map.get(String.valueOf(i))), + "passTime", + "retentionRate", + String.valueOf(slot.getTube().get(i).getVoltageOffset()), + String.valueOf(slot.getTube().get(i).getAmpereOffset()) + ); + statsDetailRecords.add(statsDetailRecord); + } })); statsDetailRecords.sort(new StatsDetailSlotNumberComparator());