shjung 10 months ago
parent
commit
0b67daaf17

+ 1 - 1
src/main/java/com/ggits/comm/server/kafka/KafkaConsumerService.java

@@ -74,7 +74,7 @@ public class KafkaConsumerService {
     public void shutdown() {
         try {
             //if (this.consumer != null) {
-            //    this.consumer.close();;
+            //    this.consumer.close();
             //}
             if (this.kafkaListenerContainer != null) {
                 this.kafkaListenerContainer.stop();

+ 6 - 2
src/main/java/com/ggits/comm/server/process/dbms/DbmsData.java

@@ -8,6 +8,10 @@ import lombok.Setter;
 @Setter
 public class DbmsData {
 
+    public static final int DBMS_DATA_PROCESS_STTS = 0;
+    public static final int DBMS_DATA_CENTER_STTS = 1;
+    public static final int DBMS_DATA_INT_STATUS_UPDATE = 2;
+
     private RegionCenter center;
     private int          qIdx;
     private long         timestamp;
@@ -15,11 +19,11 @@ public class DbmsData {
     private long         parseTimestamp;
     private String       regionCd;
     private int          regionId;
-    private DbmsDataType type;
+    private int          type;
     private boolean      isHistory;
     private Object       data;
 
-    public DbmsData(RegionCenter center, int qIdx, long timestamp, long popTimestamp, long parseTimestamp, String regionCd, int regionId, DbmsDataType type, boolean isHistory, Object data) {
+    public DbmsData(RegionCenter center, int qIdx, long timestamp, long popTimestamp, long parseTimestamp, String regionCd, int regionId, int type, boolean isHistory, Object data) {
         this.center = center;
         this.qIdx = qIdx;
         this.timestamp = timestamp;

+ 4 - 4
src/main/java/com/ggits/comm/server/process/dbms/DbmsDataProcess.java

@@ -63,7 +63,7 @@ public class DbmsDataProcess {
     }
 
     public void runJob(DbmsData data) {
-        if (data.getType() == DbmsDataType.DBMS_DATA_PROCESS_STTS) {
+        if (data.getType() == DbmsData.DBMS_DATA_PROCESS_STTS) {
             TbProcessState stts = (TbProcessState) data.getData();
             if (TbProcessState.PROCESS_START.equals(stts.getRunState())) {
                 this.processMapper.updateProcessStateStart(stts);
@@ -85,9 +85,9 @@ public class DbmsDataProcess {
         int cnt = 0;
         long start = System.currentTimeMillis();
         try {
-            DbmsDataType type = data.getType();
+            int type = data.getType();
             switch(type) {
-                case DBMS_DATA_INT_STATUS_UPDATE:
+                case DbmsData.DBMS_DATA_INT_STATUS_UPDATE:
                     RegionCenter center = data.getCenter();
                     if (center == null) {
                         log.error("RegionCenter is null");
@@ -105,7 +105,7 @@ public class DbmsDataProcess {
 
                     intStatusLists.clear();
                     break;
-                case DBMS_DATA_CENTER_STTS:
+                case DbmsData.DBMS_DATA_CENTER_STTS:
                     TbRegionCenterComm stts = (TbRegionCenterComm) data.getData();
                     if (TbRegionCenterComm.CENTER_COMM_START.equals(stts.getCommState())) {
                         this.centerMapper.updateCommStateConnect(stts);

+ 0 - 8
src/main/java/com/ggits/comm/server/process/dbms/DbmsDataType.java

@@ -1,8 +0,0 @@
-package com.ggits.comm.server.process.dbms;
-
-public enum DbmsDataType {
-
-    DBMS_DATA_PROCESS_STTS,
-    DBMS_DATA_CENTER_STTS,
-    DBMS_DATA_INT_STATUS_UPDATE,
-}

+ 28 - 5
src/main/java/com/ggits/comm/server/process/work/GgitsPacketWorker.java

@@ -9,7 +9,6 @@ import com.ggits.comm.server.kafka.KafkaProducerService;
 import com.ggits.comm.server.process.AbstractAppWorker;
 import com.ggits.comm.server.process.dbms.DbmsData;
 import com.ggits.comm.server.process.dbms.DbmsDataProcess;
-import com.ggits.comm.server.process.dbms.DbmsDataType;
 import com.ggits.comm.server.repository.ApplicationRepository;
 import com.ggits.comm.server.udp.SigGgitsTsinfoDto;
 import com.ggits.comm.server.udp.SigProtocolConst;
@@ -149,9 +148,9 @@ public class GgitsPacketWorker extends AbstractAppWorker implements Runnable {
 
             for (int ii = 0; ii < count; ii++) {
                 intLcNo = ((data.buffer[idx++] & 0xFF) << 24) |
-                        ((data.buffer[idx++] & 0xFF) << 16) |
-                        ((data.buffer[idx++] & 0xFF) << 8)  |
-                        (data.buffer[idx++] & 0xFF);
+                          ((data.buffer[idx++] & 0xFF) << 16) |
+                          ((data.buffer[idx++] & 0xFF) << 8)  |
+                           (data.buffer[idx++] & 0xFF);
 
                 flags1 = data.buffer[idx++];
                 flags2 = data.buffer[idx++];
@@ -192,6 +191,30 @@ public class GgitsPacketWorker extends AbstractAppWorker implements Runnable {
                 blink      = (flags4 >> 1 & 0x01);
 //                pnlDb      = (flags4 >> 0 & 0x01);
 
+                // 교차로 상태
+//                constants.LC_STATE_COMM_ERROR = 0; // 통신이상
+//                constants.LC_STATE_COMM_OK = 1; // 정상
+//                constants.LC_STATE_FLASH = 2; // 점멸
+//                constants.LC_STATE_SHUTDOWN = 3; // 소등
+//                constants.LC_STATE_POLICE_PROGRESS = 4; // 수동진행
+//                constants.LC_STATE_PHASE_HOLD = 5; // 현시유지
+                // 정상, 현시유지, 수동진행 일 때만 이동류 표시
+//                if (lcState == constants.LC_STATE_COMM_OK || lcState == constants.LC_STATE_PHASE_HOLD || lcState == constants.LC_STATE_POLICE_PROGRESS) {
+//                    tempMovementInfoA = tempLcInfo.movementInfo.find(e => ((e.planClass === planClass + 1) && (e.ringNumber === 1) && (e.phaseNumber === phaseNumber[0])));
+//                    tempMovementInfoB = tempLcInfo.movementInfo.find(e => ((e.planClass === planClass + 1) && (e.ringNumber === 2) && (e.phaseNumber === phaseNumber[1])));
+//                }
+// 교차로 상태(0: 통신이상, 1: 정상, 2: 점멸, 3: 소등, 4: 수동진행, 5: 현시유지)
+//                if (reversedBinaryDataString[15] == 1) return constants.LC_STATE_COMM_ERROR;
+//                else {
+//                    if (holdPhaseNumber != 0) return constants.LC_STATE_PHASE_HOLD;
+//                    if (reversedBinaryDataString[1] == 1) return constants.LC_STATE_FLASH;
+//                    if (reversedBinaryDataString[2] == 1) return constants.LC_STATE_SHUTDOWN;
+//                    if (reversedBinaryDataString[7] == 1) return constants.LC_STATE_POLICE_PROGRESS;
+//                    if (reversedBinaryDataString[6] == 1) return constants.LC_STATE_POLICE_PROGRESS;
+//                    if (reversedBinaryDataString[5] == 1) return constants.LC_STATE_FLASH;
+//                    if (reversedBinaryDataString[4] == 1) return constants.LC_STATE_SHUTDOWN;
+//                    return constants.LC_STATE_COMM_OK;
+//                }
 
                 IntStatusDto status = intDto.getStatus();
                 status.COLLCT_DTIME          = COLLCT_DTIME;
@@ -211,7 +234,7 @@ public class GgitsPacketWorker extends AbstractAppWorker implements Runnable {
             }
 //            log.info("WorkDataProcess.process: [{}], {} EA. {} Bytes. Parse {} ms.", data.getLocalPort(), count, data.getBuffer().length, System.currentTimeMillis() - parsetime);
             this.dbmsDataProcess.add(new DbmsData(data.getCenter(), this.idx, data.getTimestamp(), popTimestamp, System.currentTimeMillis(),
-                    center.getRegionCd(), center.getRegionId(), DbmsDataType.DBMS_DATA_INT_STATUS_UPDATE, false, statusLists));
+                    center.getRegionCd(), center.getRegionId(), DbmsData.DBMS_DATA_INT_STATUS_UPDATE, false, statusLists));
 //            log.info("WorkDataProcess.process: [{}], {} EA. {} Bytes. {} ms.[Q Added]", data.getLocalPort(), count, data.getBuffer().length, System.currentTimeMillis() - timestamp);
         }
         catch (Exception e) {

+ 1 - 2
src/main/java/com/ggits/comm/server/service/UnitSystService.java

@@ -5,7 +5,6 @@ import com.ggits.comm.server.config.ApplicationConfig;
 import com.ggits.comm.server.dao.mapper.ProcessMapper;
 import com.ggits.comm.server.entity.TbProcessState;
 import com.ggits.comm.server.process.dbms.DbmsData;
-import com.ggits.comm.server.process.dbms.DbmsDataType;
 import com.ggits.comm.server.process.dbms.DbmsDataProcess;
 import lombok.Getter;
 import lombok.RequiredArgsConstructor;
@@ -62,7 +61,7 @@ public class UnitSystService {
                     .processId(this.processId)
                     .runState("1")
                     .build();
-            this.dbmsDataProcess.add(new DbmsData(null, 0, System.currentTimeMillis(), System.currentTimeMillis(), System.currentTimeMillis(), "L00", 1, DbmsDataType.DBMS_DATA_PROCESS_STTS, false, processState));
+            this.dbmsDataProcess.add(new DbmsData(null, 0, System.currentTimeMillis(), System.currentTimeMillis(), System.currentTimeMillis(), "L00", 1, DbmsData.DBMS_DATA_PROCESS_STTS, false, processState));
         }
         MDC.remove(keyData);
         MDC.clear();