shjung 2 роки тому
батько
коміт
8b68fde654

+ 1 - 1
src/main/java/com/its/op/controller/its/database/TbUnitSystController.java

@@ -24,7 +24,7 @@ public class TbUnitSystController {
     @ApiOperation(value = "단위 시스템 전체조회(TB_UNIT_SYST)", response = TbUnitSystDto.class, responseContainer = "ArrayList")
     @GetMapping(value = "", produces = {"application/json; charset=utf8"})
     public List<TbUnitSystDto> findAll() {
-        return service.findAll();
+        return service.findAllUnitSystList();
     }
 
     @ApiOperation(value = "단위 시스템 개별조회(TB_UNIT_SYST)", response = TbUnitSystDto.class)

+ 1 - 1
src/main/java/com/its/op/controller/its/management/TbReptCngsSectController.java

@@ -54,7 +54,7 @@ public class TbReptCngsSectController {
     @ApiOperation(value = "반복 정체 구간 확정취소-목록(TB_REPT_CNGS_SECT)", response = TbReptCngsSectKeyDto.class, responseContainer = "ArrayList")
     @DeleteMapping(value = "/cancel-cnfm", produces = {"application/json; charset=utf8"})
     public List<TbReptCngsSectKeyDto> cancelCnfm(@RequestBody @Valid final List<TbReptCngsSectKeyDto> ids) {
-        return this.service.deleteByIds(ids);
+        return this.service.cancelCnfmByIds(ids);
     }
 
 }

+ 1 - 1
src/main/java/com/its/op/dto/its/statistics/IncidentTypeStatDto.java

@@ -28,7 +28,7 @@ public class IncidentTypeStatDto {
     @JsonProperty("incd_type_cd")
     private String INCD_TYPE_CD;    // 돌발유형코드(1: 사고, 2: 공사, 3: 행사, 4: 기상)
     @ApiModelProperty("발생건수")
-    @JsonProperty("incd_occr_num")
+    @JsonProperty("incd_ocrr_num")
     private String INCD_OCRR_NUM;   // 발생건수
     @ApiModelProperty("사망자수")
     @JsonProperty("ftlt_pnum")

+ 4 - 0
src/main/java/com/its/op/entity/its/ifsc/TbReptCngsSect.java

@@ -97,6 +97,10 @@ public class TbReptCngsSect implements Serializable {
         return dto;
     }
 
+    public void cancelCnfm() {
+        this.dayTypeCd = "N";
+    }
+
     public void cnfm() {
         this.dcsnYn = "Y";
     }

+ 19 - 0
src/main/java/com/its/op/service/its/ifsc/TbReptCngsSectService.java

@@ -111,6 +111,25 @@ public class TbReptCngsSectService {
         return ids;
     }
 
+    /**
+     * 반복정체구간 - 확정취소, 예정취소 : 데이터 업데이트
+     * @param ids
+     * @return
+     */
+    @Transactional
+    public List<TbReptCngsSectKeyDto> cancelCnfmByIds(List<TbReptCngsSectKeyDto> ids) {
+        for (TbReptCngsSectKeyDto id : ids) {
+            TbReptCngsSectKey key = new TbReptCngsSectKey(id.getIfscId(), id.getStatYm(), id.getDayTypeCd(), id.getCnfsStrtHm());
+            Optional<TbReptCngsSect> obj = this.repo.findById(key);
+            if (obj.isPresent()) {
+                // 데이터가 있는 경우에만 확정 플래그 설정해서 업데이트
+                obj.get().cancelCnfm();
+                this.repo.save(obj.get());
+            }
+        }
+        return ids;
+    }
+
     /**
      * 반복정체구간관리 - 반복정체구간 확정
      * @param ids

+ 12 - 0
src/main/java/com/its/op/service/its/unit/TbUnitSystService.java

@@ -103,6 +103,18 @@ public class TbUnitSystService {
         return result;
     }
 
+    @Transactional(readOnly = true)
+    public List<TbUnitSystDto> findAllUnitSystList() {
+        List<TbUnitSystDto> result = new ArrayList<>();
+        List<TbUnitSyst> data = this.repo.findAllUnitSystList();
+        if (data != null) {
+            data.forEach(obj -> {
+                result.add(obj.toDto());
+            });
+        }
+        return result;
+    }
+
     /**
      * 프로세스 목록 조회(이력조회-프로세스상태이력)
      * @return

+ 63 - 63
src/main/resources/mybatis/mapper/its/statistics/IncidentStatisticsMapper.xml

@@ -4,23 +4,23 @@
 <mapper namespace="com.its.op.dao.mapper.its.statistics.IncidentStatisticsMapper">
 
     <select id="findAllTypeDD" parameterType="java.util.HashMap" resultType="com.its.op.dto.its.statistics.IncidentTypeStatDto">
-        SELECT NVL(STAT_DT,      'X') AS STAT_DT,
+        SELECT NVL(STAT_DT,      '전체') AS STAT_DT,
                NVL(DATA_CNT,       0) AS DATA_CNT,
-               NVL(STAT_DTNM,    'X') AS STAT_DT_FMT,
-               NVL(INCD_TYPE_CD, '-') AS INCD_TYPE_CD,
+               NVL(STAT_DTNM,    '전체') AS STAT_DT_FMT,
+               DECODE(STAT_DT, NULL, '-', NVL(INCD_TYPE_CD, '소계')) AS INCD_TYPE_CD,
                NVL(INCD_OCRR_NUM,  0) AS INCD_OCRR_NUM,
                NVL(FTLT_PNUM,      0) AS FTLT_PNUM,
                NVL(INJR_PNUM,      0) AS INJR_PNUM,
                NVL(PRPR_DMGE_AMT,  0) AS PRPR_DMGE_AMT
         FROM (
-                 SELECT SUBSTR(STAT_DT, 1, 8) AS STAT_DT, COUNT(1) DATA_CNT,
+                 SELECT SUBSTR(STAT_DT, 1, 8) AS STAT_DT, COUNT(1) AS DATA_CNT,
                         TO_CHAR(TO_DATE(SUBSTR(STAT_DT, 1, 8), 'YYYYMMDD'), 'YYYY-MM-DD') AS STAT_DTNM,
                         INCD_TYPE_CD AS INCD_TYPE_CD,
-                        SUM(INCD_OCRR_NUM) INCD_OCRR_NUM,
-                        SUM(FTLT_PNUM)     FTLT_PNUM,
-                        SUM(INJR_PNUM)     INJR_PNUM,
-                        SUM(PRPR_DMGE_AMT) PRPR_DMGE_AMT
-                 FROM TB_INCD_TYPE_STAT_DD
+                        SUM(INCD_OCRR_NUM) AS INCD_OCRR_NUM,
+                        SUM(FTLT_PNUM)     AS FTLT_PNUM,
+                        SUM(INJR_PNUM)     AS INJR_PNUM,
+                        SUM(PRPR_DMGE_AMT) AS PRPR_DMGE_AMT
+                 FROM TB_INCD_TYPE_DD_STAT
                  WHERE STAT_DT BETWEEN #{FROM_DT} AND #{TO_DT}
                  GROUP BY ROLLUP(SUBSTR(STAT_DT, 1, 8), INCD_TYPE_CD)
                  ORDER BY STAT_DT
@@ -28,23 +28,23 @@
     </select>
 
     <select id="findAllTypeMN" parameterType="java.util.HashMap" resultType="com.its.op.dto.its.statistics.IncidentTypeStatDto">
-        SELECT NVL(STAT_DT,      'X') AS STAT_DT,
+        SELECT NVL(STAT_DT,      '전체') AS STAT_DT,
                NVL(DATA_CNT,       0) AS DATA_CNT,
-               NVL(STAT_DTNM,    'X') AS STAT_DT_FMT,
-               NVL(INCD_TYPE_CD, '-') AS INCD_TYPE_CD,
+               NVL(STAT_DTNM,    '전체') AS STAT_DT_FMT,
+               DECODE(STAT_DT, NULL, '-', NVL(INCD_TYPE_CD, '소계')) AS INCD_TYPE_CD,
                NVL(INCD_OCRR_NUM,  0) AS INCD_OCRR_NUM,
                NVL(FTLT_PNUM,      0) AS FTLT_PNUM,
                NVL(INJR_PNUM,      0) AS INJR_PNUM,
                NVL(PRPR_DMGE_AMT,  0) AS PRPR_DMGE_AMT
         FROM (
-                 SELECT SUBSTR(STAT_DT, 1, 6) AS STAT_DT, COUNT(1) DATA_CNT,
+                 SELECT SUBSTR(STAT_DT, 1, 6) AS STAT_DT, COUNT(1) AS DATA_CNT,
                         TO_CHAR(TO_DATE(SUBSTR(STAT_DT, 1, 6), 'YYYYMM'), 'YYYY-MM') AS STAT_DTNM,
                         INCD_TYPE_CD AS INCD_TYPE_CD,
-                        SUM(INCD_OCRR_NUM) INCD_OCRR_NUM,
-                        SUM(FTLT_PNUM)     FTLT_PNUM,
-                        SUM(INJR_PNUM)     INJR_PNUM,
-                        SUM(PRPR_DMGE_AMT) PRPR_DMGE_AMT
-                 FROM TB_INCD_TYPE_STAT_MN
+                        SUM(INCD_OCRR_NUM) AS INCD_OCRR_NUM,
+                        SUM(FTLT_PNUM)     AS FTLT_PNUM,
+                        SUM(INJR_PNUM)     AS INJR_PNUM,
+                        SUM(PRPR_DMGE_AMT) AS PRPR_DMGE_AMT
+                 FROM TB_INCD_TYPE_MN_STAT
                  WHERE STAT_DT BETWEEN #{FROM_DT} AND #{TO_DT}
                  GROUP BY ROLLUP(SUBSTR(STAT_DT, 1, 6), INCD_TYPE_CD)
                  ORDER BY STAT_DT
@@ -52,23 +52,23 @@
     </select>
 
     <select id="findAllTypeYY" parameterType="java.util.HashMap" resultType="com.its.op.dto.its.statistics.IncidentTypeStatDto">
-        SELECT NVL(STAT_DT,      'X') AS STAT_DT,
+        SELECT NVL(STAT_DT,      '전체') AS STAT_DT,
                NVL(DATA_CNT,       0) AS DATA_CNT,
-               NVL(STAT_DTNM,    'X') AS STAT_DT_FMT,
-               NVL(INCD_TYPE_CD, '-') AS INCD_TYPE_CD,
+               NVL(STAT_DTNM,    '전체') AS STAT_DT_FMT,
+               DECODE(STAT_DT, NULL, '-', NVL(INCD_TYPE_CD, '소계')) AS INCD_TYPE_CD,
                NVL(INCD_OCRR_NUM,  0) AS INCD_OCRR_NUM,
                NVL(FTLT_PNUM,      0) AS FTLT_PNUM,
                NVL(INJR_PNUM,      0) AS INJR_PNUM,
                NVL(PRPR_DMGE_AMT,  0) AS PRPR_DMGE_AMT
         FROM (
-                 SELECT SUBSTR(STAT_DT, 1, 4) AS STAT_DT, COUNT(1) DATA_CNT,
+                 SELECT SUBSTR(STAT_DT, 1, 4) AS STAT_DT, COUNT(1) AS DATA_CNT,
                         SUBSTR(STAT_DT, 1, 4) AS STAT_DTNM,
                         INCD_TYPE_CD AS INCD_TYPE_CD,
-                        SUM(INCD_OCRR_NUM) INCD_OCRR_NUM,
-                        SUM(FTLT_PNUM) FTLT_PNUM,
-                        SUM(INJR_PNUM) INJR_PNUM,
-                        SUM(PRPR_DMGE_AMT) PRPR_DMGE_AMT
-                 FROM TB_INCD_TYPE_STAT_MN
+                        SUM(INCD_OCRR_NUM) AS INCD_OCRR_NUM,
+                        SUM(FTLT_PNUM) AS FTLT_PNUM,
+                        SUM(INJR_PNUM) AS INJR_PNUM,
+                        SUM(PRPR_DMGE_AMT) AS PRPR_DMGE_AMT
+                 FROM TB_INCD_TYPE_MN_STAT
                  WHERE STAT_DT BETWEEN #{FROM_DT} AND #{TO_DT}
                  GROUP BY ROLLUP(SUBSTR(STAT_DT, 1, 4), INCD_TYPE_CD)
                  ORDER BY STAT_DT
@@ -77,89 +77,89 @@
 
 
     <select id="findAllSectDD" parameterType="java.util.HashMap" resultType="com.its.op.dto.its.statistics.IncidentSectStatDto">
-        SELECT NVL(A.STAT_DT,      'X') AS STAT_DT,
+        SELECT NVL(A.STAT_DT,      '전체') AS STAT_DT,
                NVL(A.DATA_CNT,       0) AS DATA_CNT,
-               NVL(A.STAT_DTNM,    'X') AS STAT_DT_FMT,
+               NVL(A.STAT_DTNM,    '전체') AS STAT_DT_FMT,
                NVL(A.LINK_ID,        0) AS LINK_ID,
-               '[' || B.F_NODE_ID || '] ' || C.NODE_NAME AS F_NODE,
-               '[' || B.T_NODE_ID || '] ' || D.NODE_NAME AS T_NODE,
+               '[' || B.F_NODE || '] ' || C.NODE_NAME AS F_NAME,
+               '[' || B.T_NODE || '] ' || D.NODE_NAME AS T_NAME,
                NVL(A.INCD_OCRR_NUM,  0) AS INCD_OCRR_NUM,
                NVL(A.FTLT_PNUM,      0) AS FTLT_PNUM,
                NVL(A.INJR_PNUM,      0) AS INJR_PNUM,
                NVL(A.PRPR_DMGE_AMT,  0) AS PRPR_DMGE_AMT
         FROM (
-                 SELECT SUBSTR(STAT_DT, 1, 8) AS STAT_DT, COUNT(1) DATA_CNT,
+                 SELECT SUBSTR(STAT_DT, 1, 8) AS STAT_DT, COUNT(1) AS DATA_CNT,
                         TO_CHAR(TO_DATE(SUBSTR(STAT_DT, 1, 8), 'YYYYMMDD'), 'YYYY-MM-DD') AS STAT_DTNM,
                         LINK_ID AS LINK_ID,
-                        SUM(INCD_OCRR_NUM) INCD_OCRR_NUM,
-                        SUM(FTLT_PNUM)     FTLT_PNUM,
-                        SUM(INJR_PNUM)     INJR_PNUM,
-                        SUM(PRPR_DMGE_AMT) PRPR_DMGE_AMT
-                 FROM TB_INCD_SECT_STAT_DD
+                        SUM(INCD_OCRR_NUM) AS INCD_OCRR_NUM,
+                        SUM(FTLT_PNUM)     AS FTLT_PNUM,
+                        SUM(INJR_PNUM)     AS INJR_PNUM,
+                        SUM(PRPR_DMGE_AMT) AS PRPR_DMGE_AMT
+                 FROM TB_INCD_SECT_DD_STAT
                  WHERE STAT_DT BETWEEN #{FROM_DT} AND #{TO_DT}
                  GROUP BY ROLLUP(SUBSTR(STAT_DT, 1, 8), LINK_ID)
              ) A, TB_LINK B, TB_NODE C, TB_NODE D
         WHERE A.LINK_ID = B.LINK_ID
-          AND B.F_NODE_ID = C.NODE_ID
-          AND B.T_NODE_ID = D.NODE_ID
+          AND B.F_NODE = C.NODE_ID
+          AND B.T_NODE = D.NODE_ID
         ORDER BY A.STAT_DT
     </select>
 
     <select id="findAllSectMN" parameterType="java.util.HashMap" resultType="com.its.op.dto.its.statistics.IncidentSectStatDto">
-        SELECT NVL(A.STAT_DT,      'X') AS STAT_DT,
+        SELECT NVL(A.STAT_DT,      '전체') AS STAT_DT,
                NVL(A.DATA_CNT,       0) AS DATA_CNT,
-               NVL(A.STAT_DTNM,    'X') AS STAT_DT_FMT,
-               '[' || B.F_NODE_ID || '] ' || C.NODE_NAME AS F_NODE,
-               '[' || B.T_NODE_ID || '] ' || D.NODE_NAME AS T_NODE,
+               NVL(A.STAT_DTNM,    '전체') AS STAT_DT_FMT,
+               '[' || B.F_NODE || '] ' || C.NODE_NAME AS F_NAME,
+               '[' || B.T_NODE || '] ' || D.NODE_NAME AS T_NAME,
                NVL(A.LINK_ID,        0) AS LINK_ID,
                NVL(A.INCD_OCRR_NUM,  0) AS INCD_OCRR_NUM,
                NVL(A.FTLT_PNUM,      0) AS FTLT_PNUM,
                NVL(A.INJR_PNUM,      0) AS INJR_PNUM,
                NVL(A.PRPR_DMGE_AMT,  0) AS PRPR_DMGE_AMT
         FROM (
-                 SELECT SUBSTR(STAT_DT, 1, 6) AS STAT_DT, COUNT(1) DATA_CNT,
+                 SELECT SUBSTR(STAT_DT, 1, 6) AS STAT_DT, COUNT(1) AS DATA_CNT,
                         TO_CHAR(TO_DATE(SUBSTR(STAT_DT, 1, 6), 'YYYYMM'), 'YYYY-MM') AS STAT_DTNM,
                         LINK_ID AS LINK_ID,
-                        SUM(INCD_OCRR_NUM) INCD_OCRR_NUM,
-                        SUM(FTLT_PNUM)     FTLT_PNUM,
-                        SUM(INJR_PNUM)     INJR_PNUM,
-                        SUM(PRPR_DMGE_AMT) PRPR_DMGE_AMT
-                 FROM TB_INCD_SECT_STAT_MN
+                        SUM(INCD_OCRR_NUM) AS INCD_OCRR_NUM,
+                        SUM(FTLT_PNUM)     AS FTLT_PNUM,
+                        SUM(INJR_PNUM)     AS INJR_PNUM,
+                        SUM(PRPR_DMGE_AMT) AS PRPR_DMGE_AMT
+                 FROM TB_INCD_SECT_MN_STAT
                  WHERE STAT_DT BETWEEN '20201201000000' AND '20211201000000'
                  GROUP BY ROLLUP(SUBSTR(STAT_DT, 1, 6), LINK_ID)
              ) A, TB_LINK B, TB_NODE C, TB_NODE D
         WHERE A.LINK_ID = B.LINK_ID
-          AND B.F_NODE_ID = C.NODE_ID
-          AND B.T_NODE_ID = D.NODE_ID
+          AND B.F_NODE = C.NODE_ID
+          AND B.T_NODE = D.NODE_ID
         ORDER BY A.STAT_DT
     </select>
 
     <select id="findAllSectYY" parameterType="java.util.HashMap" resultType="com.its.op.dto.its.statistics.IncidentSectStatDto">
-        SELECT NVL(A.STAT_DT,      'X') AS STAT_DT,
+        SELECT NVL(A.STAT_DT,      '전체') AS STAT_DT,
                NVL(A.DATA_CNT,       0) AS DATA_CNT,
-               NVL(A.STAT_DTNM,    'X') AS STAT_DT_FMT,
+               NVL(A.STAT_DTNM,    '전체') AS STAT_DT_FMT,
                NVL(A.LINK_ID,        0) AS LINK_ID,
-               '[' || B.F_NODE_ID || '] ' || C.NODE_NAME AS F_NODE,
-               '[' || B.T_NODE_ID || '] ' || D.NODE_NAME AS T_NODE,
+               '[' || B.F_NODE || '] ' || C.NODE_NAME AS F_NAME,
+               '[' || B.T_NODE || '] ' || D.NODE_NAME AS T_NAME,
                NVL(A.INCD_OCRR_NUM,  0) AS INCD_OCRR_NUM,
                NVL(A.FTLT_PNUM,      0) AS FTLT_PNUM,
                NVL(A.INJR_PNUM,      0) AS INJR_PNUM,
                NVL(A.PRPR_DMGE_AMT,  0) AS PRPR_DMGE_AMT
         FROM (
-                 SELECT SUBSTR(STAT_DT, 1, 4) AS STAT_DT, COUNT(1) DATA_CNT,
+                 SELECT SUBSTR(STAT_DT, 1, 4) AS STAT_DT, COUNT(1) AS DATA_CNT,
                         SUBSTR(STAT_DT, 1, 4) AS STAT_DTNM,
                         LINK_ID AS LINK_ID,
-                        SUM(INCD_OCRR_NUM) INCD_OCRR_NUM,
-                        SUM(FTLT_PNUM) FTLT_PNUM,
-                        SUM(INJR_PNUM) INJR_PNUM,
-                        SUM(PRPR_DMGE_AMT) PRPR_DMGE_AMT
-                 FROM TB_INCD_SECT_STAT_MN
+                        SUM(INCD_OCRR_NUM) AS INCD_OCRR_NUM,
+                        SUM(FTLT_PNUM) AS FTLT_PNUM,
+                        SUM(INJR_PNUM) AS INJR_PNUM,
+                        SUM(PRPR_DMGE_AMT) AS PRPR_DMGE_AMT
+                 FROM TB_INCD_SECT_MN_STAT
                  WHERE STAT_DT BETWEEN #{FROM_DT} AND #{TO_DT}
                  GROUP BY ROLLUP(SUBSTR(STAT_DT, 1, 4), LINK_ID)
              ) A, TB_LINK B, TB_NODE C, TB_NODE D
         WHERE A.LINK_ID = B.LINK_ID
-          AND B.F_NODE_ID = C.NODE_ID
-          AND B.T_NODE_ID = D.NODE_ID
+          AND B.F_NODE = C.NODE_ID
+          AND B.T_NODE = D.NODE_ID
         ORDER BY A.STAT_DT
     </select>