11package com .example .quaterback .websocket .transaction .event .service ;
22
3+ import com .example .quaterback .api .domain .charger .domain .ChargerDomain ;
4+ import com .example .quaterback .api .domain .charger .repository .ChargerRepository ;
5+ import com .example .quaterback .api .domain .station .repository .ChargingStationRepository ;
36import com .example .quaterback .api .domain .txinfo .domain .TransactionInfoDomain ;
7+ import com .example .quaterback .api .domain .txinfo .entity .TransactionInfoEntity ;
8+ import com .example .quaterback .api .domain .txinfo .repository .SpringDataJpaTxInfoRepository ;
49import com .example .quaterback .api .domain .txinfo .repository .TxInfoRepository ;
510import com .example .quaterback .api .domain .txinfo .service .TransactionInfoService ;
611import com .example .quaterback .api .domain .txlog .domain .TransactionLogDomain ;
12+ import com .example .quaterback .api .domain .txlog .entity .TransactionLogEntity ;
13+ import com .example .quaterback .api .domain .txlog .repository .SpringDataJpaTxLogRepository ;
714import com .example .quaterback .api .domain .txlog .repository .TxLogRepository ;
815import com .example .quaterback .api .feature .dashboard .dto .query .ChargerUsageQuery ;
916import com .example .quaterback .api .feature .dashboard .dto .query .DashboardSummaryQuery ;
1522import com .example .quaterback .api .feature .monitoring .dto .query .DailyUsageQuery ;
1623import com .example .quaterback .api .feature .monitoring .dto .query .HourlyCongestionQuery ;
1724import com .example .quaterback .api .feature .monitoring .dto .response .HourlyCongestion ;
25+ import com .example .quaterback .api .feature .monitoring .dto .response .TimeAndValueDto ;
1826import com .example .quaterback .common .redis .service .RedisMapSessionToStationService ;
1927import com .example .quaterback .websocket .transaction .event .converter .TransactionEventConverter ;
2028import com .example .quaterback .websocket .transaction .event .domain .TransactionEventDomain ;
@@ -39,7 +47,9 @@ public class TransactionEventService {
3947 private final TxLogRepository txLogRepository ;
4048 private final RedisMapSessionToStationService redisMappingService ;
4149 private final TransactionInfoService transactionInfoService ;
42-
50+ private final ChargerRepository chargerRepository ;
51+ private final SpringDataJpaTxInfoRepository springDataJpaTxInfoRepository ;
52+ private final SpringDataJpaTxLogRepository springDataJpaTxLogRepository ;
4353 public String saveTxInfo (JsonNode jsonNode , String sessionId ) {
4454 TransactionEventDomain txEventDomain = converter .convertToStartedTransactionDomain (jsonNode );
4555
@@ -109,4 +119,17 @@ public Page<TransactionInfoDomain> findTransactionInfo(String stationId, Integer
109119 public DailyUsageQuery findOneDayUsageInfo (String stationId , Integer evseId , LocalDate date ) {
110120 return txInfoRepository .findDailyUsageByEvseIdAndDate ( stationId , evseId , date );
111121 }
122+
123+
124+ public List <TimeAndValueDto > getLiveInfo (Integer evseId , String stationId ) {
125+ log .info ("1" );
126+ ChargerDomain chargerDomain = chargerRepository .findByStationIdAndEvseId (stationId , evseId );
127+ log .info (chargerDomain .getId ().toString ());
128+ TransactionInfoEntity transactionInfoEntity = springDataJpaTxInfoRepository .findTop1ByEvseId_IdOrderByStartedTimeDesc (chargerDomain .getId ());
129+ log .info ("3" );
130+ List <TransactionLogEntity > txEntities = springDataJpaTxLogRepository .findByTransactionIdOrderByTimestampAsc (transactionInfoEntity .getTransactionId ());
131+ log .info ("4" );
132+ return txEntities .stream ()
133+ .map (TimeAndValueDto ::from ).toList ();
134+ }
112135}
0 commit comments