فهرست منبع

statistics facility error mapper to jpa

shjung 3 سال پیش
والد
کامیت
ed6a6880cd
17فایلهای تغییر یافته به همراه161 افزوده شده و 187 حذف شده
  1. 3 3
      src/main/java/com/its/api/its/controller/statistics/FcltSttsStatisticsController.java
  2. 8 4
      src/main/java/com/its/api/its/model/dto/report/ReportTrafficCongestDto.java
  3. 7 7
      src/main/java/com/its/api/its/model/dto/statistics/FcltSttsStatErrorDto.java
  4. 18 0
      src/main/java/com/its/api/its/model/dto/statistics/FcltSttsStatErrorInf.java
  5. 3 2
      src/main/java/com/its/api/its/model/dto/statistics/FcltSttsStatTypeDto.java
  6. 17 0
      src/main/java/com/its/api/its/repository/cctv/TbCctvSttsHsRepository.java
  7. 2 2
      src/main/java/com/its/api/its/repository/link/TbLinkParaClctSystRepository.java
  8. 7 4
      src/main/java/com/its/api/its/repository/link/TbLinkTrafHsRepository.java
  9. 0 16
      src/main/java/com/its/api/its/repository/report/ReportMapper.java
  10. 0 17
      src/main/java/com/its/api/its/repository/statistics/FcltSttsStatisticsMapper.java
  11. 18 0
      src/main/java/com/its/api/its/repository/vds/TbVdsCtlrSttsHsRepository.java
  12. 18 0
      src/main/java/com/its/api/its/repository/vms/TbVmsSttsHsRepository.java
  13. 0 5
      src/main/java/com/its/api/its/service/link/TbLinkTrafHsService.java
  14. 14 15
      src/main/java/com/its/api/its/service/report/ReportService.java
  15. 46 17
      src/main/java/com/its/api/its/service/statistics/FcltSttsStatisticsService.java
  16. 0 36
      src/main/resources/mybatis/mapper/report/ReportMapper.xml
  17. 0 59
      src/main/resources/mybatis/mapper/statistics/FcltSttsStatisticsMapper.xml

+ 3 - 3
src/main/java/com/its/api/its/controller/statistics/FcltSttsStatisticsController.java

@@ -1,6 +1,6 @@
 package com.its.api.its.controller.statistics;
 
-import com.its.api.its.model.dto.statistics.FcltSttsStatDto;
+import com.its.api.its.model.dto.statistics.FcltSttsStatErrorDto;
 import com.its.api.its.model.dto.statistics.FcltSttsStatTypeDto;
 import com.its.api.its.service.statistics.FcltSttsStatisticsService;
 import io.swagger.annotations.*;
@@ -28,9 +28,9 @@ public class FcltSttsStatisticsController {
         return this.service.findAllFcltSttsType();
     }
 
-    @ApiOperation(value = "1.통신단절통계조회", response = FcltSttsStatDto.class, responseContainer = "ArrayList")
+    @ApiOperation(value = "1.통신단절통계조회", response = FcltSttsStatErrorDto.class, responseContainer = "ArrayList")
     @GetMapping(value = "", produces = {"application/json; charset=utf8"})
-    public List<FcltSttsStatDto> findAllLink15MTerm(
+    public List<FcltSttsStatErrorDto> findAllLink15MTerm(
             @ApiParam(name = "FCLT_CD", value = "시설물 구분코드(CCTV, VMS, VDS, ...)", example = "CCTV", required = true)
             @RequestParam String FCLT_CD,
             @ApiParam(name = "FROM_DT", value = "조회시작시각(YYYYMMDDHH24MI00)", example = "20210112152000", required = true)

+ 8 - 4
src/main/java/com/its/api/its/model/dto/report/ReportTrafficCongestDto.java

@@ -13,16 +13,20 @@ import java.io.Serializable;
 @AllArgsConstructor
 @ApiModel("ReportTrafficCongestDto(교통보고서-지/정체 현황)")
 public class ReportTrafficCongestDto  implements Serializable {
+
     @ApiModelProperty("링크 ID")
     @JsonProperty("link_id")
-    private String LINK_ID;
+    private String linkId;
+
     @ApiModelProperty("가공시각")
     @JsonProperty("prcn_Dt")
-    private String PRCN_DT;
+    private String prcnDt;
+
     @ApiModelProperty("소통등급")
     @JsonProperty("cmtr_grad_cd")
-    private String CMTR_GRAD_CD;
+    private String cmtrGradCd;
+
     @ApiModelProperty("속도")
     @JsonProperty("sped")
-    private int    SPED;
+    private int    sped;
 }

+ 7 - 7
src/main/java/com/its/api/its/model/dto/statistics/FcltSttsStatDto.java → src/main/java/com/its/api/its/model/dto/statistics/FcltSttsStatErrorDto.java

@@ -13,26 +13,26 @@ import lombok.NoArgsConstructor;
 @NoArgsConstructor
 @AllArgsConstructor
 @ApiModel("FcltSttsStatDto(시설물 통신단절통계 정보)")
-public class FcltSttsStatDto {
+public class FcltSttsStatErrorDto {
 
     @ApiModelProperty("시설물관리번호")
     @JsonProperty("fclt_nmbr")
-    private String FCLT_NMBR;
+    private String fcltNmbr;
     @ApiModelProperty("시설물 ID")
     @JsonProperty("fclt_id")
-    private String FCLT_ID;
+    private String fcltId;
     @ApiModelProperty("시설물명칭")
     @JsonProperty("fclt_nm")
-    private String FCLT_NM;
+    private String fcltNm;
 
     @ApiModelProperty("합계")
     @JsonProperty("cnt_tot")
-    private int    CNT_TOT;
+    private int totCnt;
     @ApiModelProperty("장애수")
     @JsonProperty("cnt_cms1")
-    private int    CNT_CMS1;
+    private int cms1Cnt;
     @ApiModelProperty("알수없음")
     @JsonProperty("cnt_cms2")
-    private int    CNT_CMS2;
+    private int cms2Cnt;
 
 }

+ 18 - 0
src/main/java/com/its/api/its/model/dto/statistics/FcltSttsStatErrorInf.java

@@ -0,0 +1,18 @@
+package com.its.api.its.model.dto.statistics;
+
+import java.math.BigDecimal;
+
+/**
+ * 시설물 통신단절통계 정보 Interface Class
+ */
+public interface FcltSttsStatErrorInf {
+
+    String getFcltNmbr();
+    String getFcltId();
+    String getFcltNm();
+
+    BigDecimal getTotCnt();
+    BigDecimal getCms1Cnt();
+    BigDecimal getCms2Cnt();
+
+}

+ 3 - 2
src/main/java/com/its/api/its/model/dto/statistics/FcltSttsStatTypeDto.java

@@ -17,9 +17,10 @@ public class FcltSttsStatTypeDto {
 
     @ApiModelProperty("시설물구분코드")
     @JsonProperty("fclt_cd")
-    private String FCLT_CD;
+    private String fcltCd;
+
     @ApiModelProperty("시설물구분명")
     @JsonProperty("fclt_nm")
-    private String FCLT_NM;
+    private String fcltNm;
 
 }

+ 17 - 0
src/main/java/com/its/api/its/repository/cctv/TbCctvSttsHsRepository.java

@@ -2,6 +2,7 @@ package com.its.api.its.repository.cctv;
 
 import com.its.api.its.model.dto.common.SttsHsErrCntInf;
 import com.its.api.its.model.dto.report.ReportFcltSummaryInf;
+import com.its.api.its.model.dto.statistics.FcltSttsStatErrorInf;
 import com.its.api.its.model.entity.cctv.TbCctvSttsHs;
 import com.its.api.its.model.entity.cctv.TbCctvSttsHsKey;
 import org.springframework.data.jpa.repository.JpaRepository;
@@ -44,4 +45,20 @@ public interface TbCctvSttsHsRepository extends JpaRepository<TbCctvSttsHs, TbCc
             "   and p.cmncSttsCd = 'CMS1' ")
     List<TbCctvSttsHs> findAllReportError(String fromDt, String toDt);
 
+    @Query(value =
+            "SELECT A.CCTV_MNGM_NMBR AS fcltNmbr, A.CCTV_CTLR_ID AS fcltId, A.ISTL_LCTN_NM AS fcltNm, " +
+            "               NVL(B.CNT_CMS1, 0) + NVL(B.CNT_CMS2, 0) AS totCnt, " +
+            "               NVL(B.CNT_CMS1, 0) AS cms1Cnt, NVL(B.CNT_CMS2, 0) AS cms2Cnt " +
+            "        FROM TB_CCTV_CTLR A, " +
+            "             (SELECT CCTV_MNGM_NMBR, " +
+            "                     SUM(DECODE(CMNC_STTS_CD, 'CMS1', 1, 0)) AS CNT_CMS1, " +
+            "                     SUM(DECODE(CMNC_STTS_CD, 'CMS2', 1, 0)) AS CNT_CMS2 " +
+            "              FROM TB_CCTV_STTS_HS " +
+            "              WHERE CRTN_DT BETWEEN :fromDt AND :toDt " +
+            "                AND CMNC_STTS_CD IN ('CMS1', 'CMS2') " +
+            "              GROUP BY CCTV_MNGM_NMBR) B " +
+            "        WHERE A.CCTV_MNGM_NMBR = B.CCTV_MNGM_NMBR(+)"
+            , nativeQuery = true)
+    List<FcltSttsStatErrorInf> findAllStatisticsCommErrByDateRange(String fromDt, String toDt);
+
 }

+ 2 - 2
src/main/java/com/its/api/its/repository/link/TbLinkParaClctSystRepository.java

@@ -17,10 +17,10 @@ public interface TbLinkParaClctSystRepository extends JpaRepository<TbLinkParaCl
     List<TbLinkParaClctSyst> findListById(Long LINK_ID);
 
     @Modifying // select 문이 아님을 나타낸다
-    @Query(value = "DELETE from LinkParaClctSyst m", nativeQuery = true)
+    @Query(value = "delete from TB_LINK_PARA_CLCT_SYST", nativeQuery = true)
     void deleteDataAll() throws Exception;
 
     @Modifying // select 문이 아님을 나타낸다
-    @Query(value = "DELETE from TB_LINK_PARA_CLCT_SYST where LINK_ID = :link_id", nativeQuery = true)
+    @Query(value = "delete from TB_LINK_PARA_CLCT_SYST where LINK_ID = :link_id", nativeQuery = true)
     void deleteListById(@Param("link_id")Long link_id) throws Exception;
 }

+ 7 - 4
src/main/java/com/its/api/its/repository/link/TbLinkTrafHsRepository.java

@@ -16,9 +16,12 @@ public interface TbLinkTrafHsRepository extends JpaRepository<TbLinkTrafHs, TbLi
     @Query("select p from TbLinkTrafHs p where p.linkId = :linkId and p.prcnDt between :fromDt and :toDt")
     List<TbLinkTrafHs> findAllByDateRange(@Param("linkId") Long linkId, @Param("fromDt") String fromDt, @Param("toDt") String toDt);
 
-/*
     @Query("select p from TbLinkTrafHs p " +
-           " where (p.linkId, p.prcnDt) in (select )")
-    List<TbLinkTrafHs> findAllCongestByDateRange(@Param("linkId") Long linkId, @Param("fromDt") String fromDt, @Param("toDt") String toDt);
-*/
+           " where (p.linkId, p.prcnDt) in (" +
+           "        select x.linkId, max(x.prcnDt) " +
+           "          from TbLinkTrafHs x " +
+           "         where x.prcnDt between :fromDt and :toDt " +
+           "           and x.cmtrGradCd <> 'LTC1' " +
+           "         group by x.linkId)")
+    List<TbLinkTrafHs> findAllCongestByDateRange(String fromDt, String toDt);
 }

+ 0 - 16
src/main/java/com/its/api/its/repository/report/ReportMapper.java

@@ -1,16 +0,0 @@
-package com.its.api.its.repository.report;
-
-import com.its.api.its.model.dto.report.ReportTrafficCongestDto;
-import com.its.api.its.model.dto.report.ReportTrafficIncidentDto;
-import org.apache.ibatis.annotations.Mapper;
-
-import java.util.List;
-import java.util.Map;
-
-@Mapper
-public interface ReportMapper {
-
-    List<ReportTrafficIncidentDto> findAllTrafficIncident(Map<String, String> param);
-    List<ReportTrafficCongestDto> findAllTrafficCongest(Map<String, String> param);
-
-}

+ 0 - 17
src/main/java/com/its/api/its/repository/statistics/FcltSttsStatisticsMapper.java

@@ -1,17 +0,0 @@
-package com.its.api.its.repository.statistics;
-
-import com.its.api.its.model.dto.statistics.FcltSttsStatDto;
-import com.its.api.its.model.dto.statistics.FcltSttsStatTypeDto;
-import org.apache.ibatis.annotations.Mapper;
-
-import java.util.List;
-import java.util.Map;
-
-@Mapper
-public interface FcltSttsStatisticsMapper {
-
-    List<FcltSttsStatTypeDto> findAllFcltSttsType();
-    List<FcltSttsStatDto> findAllFcltSttsCCTV(Map<String, String> param);
-    List<FcltSttsStatDto> findAllFcltSttsVDS(Map<String, String> param);
-    List<FcltSttsStatDto> findAllFcltSttsVMS(Map<String, String> param);
-}

+ 18 - 0
src/main/java/com/its/api/its/repository/vds/TbVdsCtlrSttsHsRepository.java

@@ -2,6 +2,7 @@ package com.its.api.its.repository.vds;
 
 import com.its.api.its.model.dto.common.SttsHsErrCntInf;
 import com.its.api.its.model.dto.report.ReportFcltSummaryInf;
+import com.its.api.its.model.dto.statistics.FcltSttsStatErrorInf;
 import com.its.api.its.model.entity.vds.TbVdsCtlrSttsHs;
 import com.its.api.its.model.entity.vds.TbVdsCtlrSttsHsKey;
 import org.springframework.data.jpa.repository.JpaRepository;
@@ -43,4 +44,21 @@ public interface TbVdsCtlrSttsHsRepository extends JpaRepository<TbVdsCtlrSttsHs
             " where p.ocrrDt between :fromDt and :toDt " +
             "   and p.cmncSttsCd = 'CMS1' ")
     List<TbVdsCtlrSttsHs> findAllReportError(String fromDt, String toDt);
+
+    @Query(value =
+            "SELECT A.CTLR_MNGM_NMBR AS fcltNmbr, A.VDS_CTLR_ID AS fcltId, A.LCTN AS fcltNm, " +
+            "               NVL(B.CNT_CMS1, 0) + NVL(B.CNT_CMS2, 0) AS totCnt, " +
+            "               NVL(B.CNT_CMS1, 0) AS cms1Cnt, NVL(B.CNT_CMS2, 0) AS cms2Cnt " +
+            "        FROM TB_VDS_CTLR A, " +
+            "             (SELECT CTLR_MNGM_NMBR, " +
+            "                     SUM(DECODE(CMNC_STTS_CD, 'CMS1', 1, 0)) AS CNT_CMS1, " +
+            "                     SUM(DECODE(CMNC_STTS_CD, 'CMS2', 1, 0)) AS CNT_CMS2 " +
+            "              FROM TB_VDS_CTLR_STTS_RAW " +
+            "              WHERE OCRR_DT BETWEEN :fromDt AND :toDt " +
+            "                AND CMNC_STTS_CD IN ('CMS1', 'CMS2') " +
+            "              GROUP BY CTLR_MNGM_NMBR) B " +
+            "        WHERE A.CTLR_MNGM_NMBR = B.CTLR_MNGM_NMBR(+)"
+            , nativeQuery = true)
+    List<FcltSttsStatErrorInf> findAllStatisticsCommErrByDateRange(String fromDt, String toDt);
+
 }

+ 18 - 0
src/main/java/com/its/api/its/repository/vms/TbVmsSttsHsRepository.java

@@ -2,6 +2,7 @@ package com.its.api.its.repository.vms;
 
 import com.its.api.its.model.dto.common.SttsHsErrCntInf;
 import com.its.api.its.model.dto.report.ReportFcltSummaryInf;
+import com.its.api.its.model.dto.statistics.FcltSttsStatErrorInf;
 import com.its.api.its.model.entity.vms.TbVmsSttsHs;
 import com.its.api.its.model.entity.vms.TbVmsSttsHsKey;
 import org.springframework.data.jpa.repository.JpaRepository;
@@ -45,4 +46,21 @@ public interface TbVmsSttsHsRepository extends JpaRepository<TbVmsSttsHs, TbVmsS
             "   and p.connSttsCd = 'CMS1' ")
     List<TbVmsSttsHs> findAllReportError(String fromDt, String toDt);
 
+    @Query(value =
+            "SELECT A.VMS_CTLR_NMBR AS fcltNmbr, A.VMS_CTLR_ID AS fcltId, A.VMS_NM AS fcltNm, " +
+            "               NVL(B.CNT_CMS1, 0) + NVL(B.CNT_CMS2, 0) AS totCnt, " +
+            "               NVL(B.CNT_CMS1, 0) AS cms1Cnt, NVL(B.CNT_CMS2, 0) AS cms2Cnt " +
+            "        FROM TB_VMS_CTLR A, " +
+            "             (SELECT VMS_CTLR_NMBR, " +
+            "                     SUM(DECODE(CONN_STTS_CD, 'CMS1', 1, 0)) AS CNT_CMS1, " +
+            "                     SUM(DECODE(CONN_STTS_CD, 'CMS2', 1, 0)) AS CNT_CMS2 " +
+            "              FROM TB_VMS_STTS_HS " +
+            "              WHERE RGST_DT BETWEEN :fromDt AND :toDt " +
+            "                AND CONN_STTS_CD IN ('CMS1', 'CMS2') " +
+            "              GROUP BY VMS_CTLR_NMBR) B " +
+            "        WHERE A.VMS_CTLR_NMBR = B.VMS_CTLR_NMBR(+)"
+            , nativeQuery = true)
+    List<FcltSttsStatErrorInf> findAllStatisticsCommErrByDateRange(String fromDt, String toDt);
+
+
 }

+ 0 - 5
src/main/java/com/its/api/its/service/link/TbLinkTrafHsService.java

@@ -25,11 +25,6 @@ public class TbLinkTrafHsService {
             result.add(obj.toDto());
         }
         return result;
-        /*Map<String, String> param = new HashMap<>();
-        param.put("LINK_ID", String.valueOf(LINK_ID));
-        param.put("FROM_DT", fromDt);
-        param.put("TO_DT", toDt);
-        return mapper.findAllByDateRange(param);*/
     }
 
 }

+ 14 - 15
src/main/java/com/its/api/its/service/report/ReportService.java

@@ -4,12 +4,12 @@ import com.its.api.its.global.CodeManager;
 import com.its.api.its.model.dto.report.*;
 import com.its.api.its.model.entity.cctv.TbCctvSttsHs;
 import com.its.api.its.model.entity.incident.TbIncdOcrr;
+import com.its.api.its.model.entity.link.TbLinkTrafHs;
 import com.its.api.its.model.entity.vds.TbVdsCtlrSttsHs;
 import com.its.api.its.model.entity.vms.TbVmsSttsHs;
 import com.its.api.its.repository.cctv.TbCctvSttsHsRepository;
 import com.its.api.its.repository.incident.TbIncdOcrrRepository;
 import com.its.api.its.repository.link.TbLinkTrafHsRepository;
-import com.its.api.its.repository.report.ReportMapper;
 import com.its.api.its.repository.vds.TbVdsCtlrSttsHsRepository;
 import com.its.api.its.repository.vms.TbVmsSttsHsRepository;
 import lombok.RequiredArgsConstructor;
@@ -18,16 +18,13 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.ArrayList;
-import java.util.HashMap;
 import java.util.List;
-import java.util.Map;
 
 @Slf4j
 @RequiredArgsConstructor
 @Service
 public class ReportService {
 
-    private final ReportMapper mapper;
     private final TbCctvSttsHsRepository cctvSttsHsRepo;
     private final TbVmsSttsHsRepository vmsSttsHsRepo;
     private final TbVdsCtlrSttsHsRepository vdsSttsHsRepo;
@@ -141,12 +138,6 @@ public class ReportService {
                     .incdTitl(obj.getIncdTitl()).build());
         });
         return result;
-/*
-        Map<String, String> param = new HashMap<>();
-        param.put("FROM_DT", fromDt);
-        param.put("TO_DT", toDt);
-        return this.mapper.findAllTrafficIncident(param);
-*/
     }
 
     /**
@@ -156,11 +147,19 @@ public class ReportService {
      * @return
      */
     @Transactional(readOnly = true)
-    public List<ReportTrafficCongestDto> findAllTrafficCongest(String fromDt, String toDt){
-        Map<String, String> param = new HashMap<>();
-        param.put("FROM_DT", fromDt);
-        param.put("TO_DT", toDt);
-        return this.mapper.findAllTrafficCongest(param);
+    public List<ReportTrafficCongestDto> findAllTrafficCongest(String fromDt, String toDt) {
+
+        List<ReportTrafficCongestDto> result = new ArrayList<>();
+        List<TbLinkTrafHs> data = this.linkTrafHsRepo.findAllCongestByDateRange(fromDt, toDt);
+        data.forEach(obj -> {
+            result.add(ReportTrafficCongestDto.builder()
+                    .linkId(String.valueOf(obj.getLinkId()))
+                    .prcnDt(obj.getPrcnDt())
+                    .cmtrGradCd(obj.getCmtrGradCd())
+                    .sped(obj.getSped())
+                    .build());
+        });
+        return result;
     }
 
 }

+ 46 - 17
src/main/java/com/its/api/its/service/statistics/FcltSttsStatisticsService.java

@@ -1,15 +1,18 @@
 package com.its.api.its.service.statistics;
 
-import com.its.api.its.model.dto.statistics.FcltSttsStatDto;
+import com.its.api.its.model.dto.statistics.FcltSttsStatErrorDto;
+import com.its.api.its.model.dto.statistics.FcltSttsStatErrorInf;
 import com.its.api.its.model.dto.statistics.FcltSttsStatTypeDto;
-import com.its.api.its.repository.statistics.FcltSttsStatisticsMapper;
+import com.its.api.its.repository.cctv.TbCctvSttsHsRepository;
+import com.its.api.its.repository.vds.TbVdsCtlrSttsHsRepository;
+import com.its.api.its.repository.vms.TbVmsSttsHsRepository;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
-import java.util.HashMap;
+import java.util.ArrayList;
 import java.util.List;
-import java.util.Map;
 import java.util.NoSuchElementException;
 
 @Slf4j
@@ -17,31 +20,57 @@ import java.util.NoSuchElementException;
 @Service
 public class FcltSttsStatisticsService {
 
-    private final FcltSttsStatisticsMapper mapper;
+    private final TbCctvSttsHsRepository cctvSttsHsRepo;
+    private final TbVmsSttsHsRepository vmsSttsHsRepo;
+    private final TbVdsCtlrSttsHsRepository vdsSttsHsRepo;
 
+    /**
+     * 통계 - 시설물 통신단절 통계 - 시설물 구분 목록
+     * @return
+     */
     public List<FcltSttsStatTypeDto> findAllFcltSttsType() {
-        return this.mapper.findAllFcltSttsType();
+
+        List<FcltSttsStatTypeDto> result = new ArrayList<>();
+
+        result.add(FcltSttsStatTypeDto.builder().fcltCd("CCTV").fcltNm("CCTV").build());
+        result.add(FcltSttsStatTypeDto.builder().fcltCd("VMS").fcltNm("VMS").build());
+        result.add(FcltSttsStatTypeDto.builder().fcltCd("VDS").fcltNm("VDS").build());
+
+        return result;
     }
 
-    public List<FcltSttsStatDto> findAllFcltStts(String FCLT_CD, String fromDt, String toDt) {
+    public List<FcltSttsStatErrorDto> findAllStatisticsCommErrByDateRangeResult(List<FcltSttsStatErrorInf> data) {
+
+        List<FcltSttsStatErrorDto> result = new ArrayList<>();
+        data.forEach(obj -> {
+            result.add(FcltSttsStatErrorDto.builder()
+                    .fcltNmbr(obj.getFcltNmbr())
+                    .fcltId(obj.getFcltId())
+                    .fcltNm(obj.getFcltNm())
+                    .totCnt(obj.getTotCnt().intValue())
+                    .cms1Cnt(obj.getCms1Cnt().intValue())
+                    .cms2Cnt(obj.getCms2Cnt().intValue())
+                    .build());
+        });
+        return result;
+    }
 
-        Map<String, String> param = new HashMap<>();
-        param.put("FROM_DT", fromDt);
-        param.put("TO_DT", toDt);
+    @Transactional(readOnly = true)
+    public List<FcltSttsStatErrorDto> findAllFcltStts(String fcltTypeCd, String fromDt, String toDt) {
 
-        if (("CCTV").equalsIgnoreCase(FCLT_CD)) {
-            return this.mapper.findAllFcltSttsCCTV(param);
+        if (("CCTV").equalsIgnoreCase(fcltTypeCd)) {
+            return findAllStatisticsCommErrByDateRangeResult(this.cctvSttsHsRepo.findAllStatisticsCommErrByDateRange(fromDt, toDt));
         }
         else
-        if (("VMS").equalsIgnoreCase(FCLT_CD)) {
-            return this.mapper.findAllFcltSttsVMS(param);
+        if (("VMS").equalsIgnoreCase(fcltTypeCd)) {
+            return findAllStatisticsCommErrByDateRangeResult(this.vmsSttsHsRepo.findAllStatisticsCommErrByDateRange(fromDt, toDt));
         }
         else
-        if (("VDS").equalsIgnoreCase(FCLT_CD)) {
-            return this.mapper.findAllFcltSttsVDS(param);
+        if (("VDS").equalsIgnoreCase(fcltTypeCd)) {
+            return findAllStatisticsCommErrByDateRangeResult(this.vdsSttsHsRepo.findAllStatisticsCommErrByDateRange(fromDt, toDt));
         }
         else {
-            throw new NoSuchElementException("요청 파라미터가 잘못 됐습니다: " + FCLT_CD);
+            throw new NoSuchElementException("요청 파라미터가 잘못 됐습니다: " + fcltTypeCd);
         }
     }
 

+ 0 - 36
src/main/resources/mybatis/mapper/report/ReportMapper.xml

@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-
-<mapper namespace="com.its.api.its.repository.report.ReportMapper">
-
-    <select id="findAllTrafficIncident" parameterType="java.util.HashMap" resultType="com.its.api.its.model.dto.report.ReportTrafficIncidentDto">
-       <![CDATA[
-        SELECT INCD_STRT_DT, B.CMMN_CD_KOR_NM, LINK_ID, INCD_TITL
-        FROM TB_INCD_OCRR A,
-             (SELECT CMMN_CD, CMMN_CD_KOR_NM
-              FROM TB_CMMN_CD
-              WHERE CMMN_CLSF_CD = 'IDTU'
-             ) B
-        WHERE INCD_STRT_DT BETWEEN #{FROM_DT} AND #{TO_DT}
-          AND INCD_PRGR_STEP_CD   = 'ISS2'
-          AND A.INCD_TYPE_CLSF_CD = B.CMMN_CD
-        ]]>
-    </select>
-
-    <select id="findAllTrafficCongest" parameterType="java.util.HashMap" resultType="com.its.api.its.model.dto.report.ReportTrafficCongestDto">
-       <![CDATA[
-        SELECT A.LINK_ID, B.PRCN_DT, A.CMTR_GRAD_CD, A.SPED
-        FROM TB_LINK_TRAF_HS A,
-             (SELECT LINK_ID, MAX(PRCN_DT) PRCN_DT
-              FROM TB_LINK_TRAF_HS
-              WHERE PRCN_DT BETWEEN #{FROM_DT} AND #{TO_DT}
-                AND CMTR_GRAD_CD <> 'LTC1'
-              GROUP BY LINK_ID
-             ) B
-        WHERE A.LINK_ID = B.LINK_ID
-          AND A.PRCN_DT = B.PRCN_DT
-        ORDER BY 3 DESC
-       ]]>
-    </select>
-
-</mapper>

+ 0 - 59
src/main/resources/mybatis/mapper/statistics/FcltSttsStatisticsMapper.xml

@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-
-<mapper namespace="com.its.api.its.repository.statistics.FcltSttsStatisticsMapper">
-
-    <select id = "findAllFcltSttsType" resultType="com.its.api.its.model.dto.statistics.FcltSttsStatTypeDto">
-        SELECT 'CCTV' AS FCLT_CD, 'CCTV' AS FCLT_NM FROM DUAL
-        UNION
-        SELECT 'VMS' AS FCLT_CD, 'VMS' AS FCLT_NM FROM DUAL
-        UNION
-        SELECT 'VDS' AS FCLT_CD, 'VDS' AS FCLT_NM FROM DUAL
-    </select>
-
-    <select id="findAllFcltSttsCCTV" parameterType="java.util.HashMap" resultType="com.its.api.its.model.dto.statistics.FcltSttsStatDto">
-        SELECT A.CCTV_MNGM_NMBR AS FCLT_NMBR, A.CCTV_CTLR_ID AS FCLT_ID, A.ISTL_LCTN_NM AS FCLT_NM,
-               NVL(B.CNT_CMS1, 0) + NVL(B.CNT_CMS2, 0) AS CNT_TOT,
-               NVL(B.CNT_CMS1, 0) AS CNT_CMS1, NVL(B.CNT_CMS2, 0) AS CNT_CMS2
-        FROM TB_CCTV_CTLR A,
-             (SELECT CCTV_MNGM_NMBR,
-                     SUM(DECODE(CMNC_STTS_CD, 'CMS1', 1, 0)) AS CNT_CMS1,
-                     SUM(DECODE(CMNC_STTS_CD, 'CMS2', 1, 0)) AS CNT_CMS2
-              FROM TB_CCTV_STTS_HS
-              WHERE CRTN_DT BETWEEN #{FROM_DT} AND #{TO_DT}
-                AND CMNC_STTS_CD IN ('CMS1', 'CMS2')
-              GROUP BY CCTV_MNGM_NMBR) B
-        WHERE A.CCTV_MNGM_NMBR = B.CCTV_MNGM_NMBR(+)
-    </select>
-
-    <select id="findAllFcltSttsVMS" parameterType="java.util.HashMap" resultType="com.its.api.its.model.dto.statistics.FcltSttsStatDto">
-        SELECT A.VMS_CTLR_NMBR AS FCLT_NMBR, A.VMS_CTLR_ID AS FCLT_ID, A.VMS_NM AS FCLT_NM,
-               NVL(B.CNT_CMS1, 0) + NVL(B.CNT_CMS2, 0) AS CNT_TOT,
-               NVL(B.CNT_CMS1, 0) AS CNT_CMS1, NVL(B.CNT_CMS2, 0) AS CNT_CMS2
-        FROM TB_VMS_CTLR A,
-             (SELECT VMS_CTLR_NMBR,
-                     SUM(DECODE(CONN_STTS_CD, 'CMS1', 1, 0)) AS CNT_CMS1,
-                     SUM(DECODE(CONN_STTS_CD, 'CMS2', 1, 0)) AS CNT_CMS2
-              FROM TB_VMS_STTS_HS
-              WHERE RGST_DT BETWEEN #{FROM_DT} AND #{TO_DT}
-                AND CONN_STTS_CD IN ('CMS1', 'CMS2')
-              GROUP BY VMS_CTLR_NMBR) B
-        WHERE A.VMS_CTLR_NMBR = B.VMS_CTLR_NMBR(+)
-    </select>
-
-    <select id="findAllFcltSttsVDS" parameterType="java.util.HashMap" resultType="com.its.api.its.model.dto.statistics.FcltSttsStatDto">
-        SELECT A.CTLR_MNGM_NMBR AS FCLT_NMBR, A.VDS_CTLR_ID AS FCLT_ID, A.LCTN AS FCLT_NM,
-               NVL(B.CNT_CMS1, 0) + NVL(B.CNT_CMS2, 0) AS CNT_TOT,
-               NVL(B.CNT_CMS1, 0) AS CNT_CMS1, NVL(B.CNT_CMS2, 0) AS CNT_CMS2
-        FROM TB_VDS_CTLR A,
-             (SELECT CTLR_MNGM_NMBR,
-                     SUM(DECODE(CMNC_STTS_CD, 'CMS1', 1, 0)) AS CNT_CMS1,
-                     SUM(DECODE(CMNC_STTS_CD, 'CMS2', 1, 0)) AS CNT_CMS2
-              FROM TB_VDS_CTLR_STTS_RAW
-              WHERE OCRR_DT BETWEEN #{FROM_DT} AND #{TO_DT}
-                AND CMNC_STTS_CD IN ('CMS1', 'CMS2')
-              GROUP BY CTLR_MNGM_NMBR) B
-        WHERE A.CTLR_MNGM_NMBR = B.CTLR_MNGM_NMBR(+)
-    </select>
-
-</mapper>