Selaa lähdekoodia

second commit

shjung 2 vuotta sitten
vanhempi
commit
77e4dc44ad

+ 0 - 6
src/main/java/com/its/vds/VdsCommServerApplication.java

@@ -48,12 +48,6 @@ public class VdsCommServerApplication implements CommandLineRunner, ApplicationL
     private Connector connector;
 
     public static void main(String[] args) {
-        //System.out.println(System.getProperty("program.name"));
-        // java -jar -Dlogback-config=xxx.xml ....
-        // logback config file setting
-        /*String userDir = System.getProperty("user.dir");
-        String logbackConfigFileName = userDir + "/conf/app-comm-server-log.xml";
-        System.setProperty(ContextInitializer.CONFIG_FILE_PROPERTY, logbackConfigFileName);*/
         File file1 = new File("./conf/vds-comm-server.pid");
         if (file1.exists()) {
             System.out.println(System.getProperty("Program Already Running....."));

+ 0 - 1
src/main/java/com/its/vds/config/ProcessConfig.java

@@ -15,7 +15,6 @@ import javax.annotation.PostConstruct;
 @Setter
 @ToString
 @Configuration
-//@PropertySource(value = "classpath:application.yml")
 @ConfigurationProperties(prefix = "application.process")
 public class ProcessConfig {
 

+ 5 - 5
src/main/java/com/its/vds/dao/mapper/VdsStatMapper.java

@@ -8,9 +8,9 @@ import org.apache.ibatis.annotations.Param;
 public interface VdsStatMapper {
 
     int CRT_TB_VDS_DTCT_HS(@Param("prcs") voStatisticsTime paramStat);
-    int CRT_TB_VDS_DTCT_15M_STAT(@Param("prcs") voStatisticsTime paramStat);
-    int CRT_TB_VDS_DTCT_HH_STAT(@Param("prcs") voStatisticsTime paramStat);
-    int CRT_TB_VDS_DTCT_DD_STAT(@Param("prcs") voStatisticsTime paramStat);
-    int CRT_TB_VDS_DTCT_MN_STAT(@Param("prcs") voStatisticsTime paramStat);
-    int CRT_TB_VDS_DTCT_YY_STAT(@Param("prcs") voStatisticsTime paramStat);
+    int CRT_TB_VDS_DTCT_STAT_15M(@Param("prcs") voStatisticsTime paramStat);
+    int CRT_TB_VDS_DTCT_STAT_HH(@Param("prcs") voStatisticsTime paramStat);
+    int CRT_TB_VDS_DTCT_STAT_DD(@Param("prcs") voStatisticsTime paramStat);
+    int CRT_TB_VDS_DTCT_STAT_MN(@Param("prcs") voStatisticsTime paramStat);
+    int CRT_TB_VDS_DTCT_STAT_YY(@Param("prcs") voStatisticsTime paramStat);
 }

+ 4 - 14
src/main/java/com/its/vds/process/DbmsDataProcess.java

@@ -97,26 +97,16 @@ public class DbmsDataProcess {
             switch(type) {
                 case DbmsData.DBMS_DATA_CTLR_STTS:
                     List<TbVdsCtlrStts> ctlrSttsList = (List<TbVdsCtlrStts>)data.getData();
-                    this.vdsCtlrDao.updateStts(ctlrSttsList, data.isHistory());
+                    this.vdsCtlrDao.updateStts(ctlrSttsList, data.isHistory()); // 상태정보 업데이트
                     if (data.isHistory()) {
-                        this.vdsCtlrDao.insertStts(ctlrSttsList);
+                        this.vdsCtlrDao.insertStts(ctlrSttsList);   // 상태정보 이력저장
                     }
-//                    for (TbVdsCtlrStts vo : ctlrSttsList) {
-//                        this.vdsCtlrMapper.updateVdsCtlrStts(vo);   // 상태정보 업데이트
-//                        if (data.isHistory()) {
-//                            this.vdsCtlrMapper.insertVdsCtlrSttsHs(vo); // 상태정보 이력저장
-//                        }
-//                    }
                     ctlrSttsList.clear();
                     break;
                 case DbmsData.DBMS_DATA_DTCT_CLCT:
                     List<voVdsDtctClct> dtctClctList = (List<voVdsDtctClct>)data.getData();
-                    //this.vdsDtctDao.updateClct(dtctClctList, data.isHistory());
-                    this.vdsDtctDao.insertClct(dtctClctList);
-//                    for (voVdsDtctClct vo : dtctClctList) {
-//                        this.vdsDtctMapper.updateVdsDtctClctPnst(vo);   // 수집정보 업데이트
-//                        this.vdsDtctMapper.insertVdsDtctClct(vo);       // 수집정보 이력저장
-//                    }
+                    this.vdsDtctDao.updateClct(dtctClctList, data.isHistory()); // 수집정보 업데이트
+                    this.vdsDtctDao.insertClct(dtctClctList);                   // 수집정보 이력저장
                     dtctClctList.clear();
                     break;
             }

+ 6 - 8
src/main/java/com/its/vds/scheduler/SchedulerTask.java

@@ -1,6 +1,5 @@
 package com.its.vds.scheduler;
 
-import com.its.app.AppUtils;
 import com.its.app.utils.Elapsed;
 import com.its.app.utils.StatisticsTime;
 import com.its.vds.config.ProcessConfig;
@@ -86,8 +85,7 @@ public class SchedulerTask {
         }
         Elapsed elapsed = new Elapsed();
         log.info("     VdsStatisticsSchedule: start. {}", Thread.currentThread().getName());
-        ProcessConfig processConfig = (ProcessConfig) AppUtils.getBean(ProcessConfig.class);
-        if (processConfig.isStatistics()) {
+        if (this.processConfig.isStatistics()) {
             StatisticsTime its = new StatisticsTime();
             its.init();
             its.setProcessing(true);
@@ -99,29 +97,29 @@ public class SchedulerTask {
 
             if (its.isStat15Min()) {
                 // 5분 정주기 가공이 끝나고 15분 주기일 경우(00, 15, 30, 45 분 일경우 15분 통계 정보를 생성한다)
-                this.statisticsServices.CRT_TB_VDS_DTCT_15M_STAT(its.getStat15MinFrom(), its.getStat15MinFrom(), its.getStat15MinTo());
+                this.statisticsServices.CRT_TB_VDS_DTCT_STAT_15M(its.getStat15MinFrom(), its.getStat15MinFrom(), its.getStat15MinTo());
             }
 
             if (its.isStatHour()) {
                 // 매시 5분 가공완료후 1시간 통계
-                this.statisticsServices.CRT_TB_VDS_DTCT_HH_STAT(its.getStatHourTime(), its.getStatHourTime(), its.getStatHourTo());
+                this.statisticsServices.CRT_TB_VDS_DTCT_STAT_HH(its.getStatHourTime(), its.getStatHourTime(), its.getStatHourTo());
             }
 
             if (its.isStatDay()) {
                 // 00시 10분 가공이 끝나면 이전일의 통계 정보를 가공.
-                this.statisticsServices.CRT_TB_VDS_DTCT_DD_STAT(its.getStatDayFrom(), its.getStatDayFrom(), its.getStatDayTo());
+                this.statisticsServices.CRT_TB_VDS_DTCT_STAT_DD(its.getStatDayFrom(), its.getStatDayFrom(), its.getStatDayTo());
             }
 
             if (its.isStatMon()) {
                 //  02시 10분 가공이 끝나면 이전일의 월통계 정보를 누적 가공.
                 String STAT_DT = its.getStatMonFrom().substring(0, 6) + "00000000";
-                this.statisticsServices.CRT_TB_VDS_DTCT_MN_STAT(STAT_DT, its.getStatMonFrom(), its.getStatMonTo());
+                this.statisticsServices.CRT_TB_VDS_DTCT_STAT_MN(STAT_DT, its.getStatMonFrom(), its.getStatMonTo());
             }
 
 //            if (its.isStatYear()) {
 //                // 02시 35분 가공이 끝나면 이전일의 연통계 정보를 누적 가공.
 //                String STAT_DT = its.getStatYearFrom().substring(0, 4) + "0000000000";
-//                this.statisticsServices.CRT_TB_VDS_DTCT_YY_STAT(STAT_DT, its.getStatYearFrom(), its.getStatYearTo());
+//                this.statisticsServices.CRT_TB_VDS_DTCT_STAT_YY(STAT_DT, its.getStatYearFrom(), its.getStatYearTo());
 //            }
             its.setProcessing(false);
         }

+ 20 - 20
src/main/java/com/its/vds/service/StatisticsServices.java

@@ -43,61 +43,61 @@ public class StatisticsServices {
     }
 
     @Async("statisticsExecutor")
-    public void CRT_TB_VDS_DTCT_15M_STAT(String statDt, String fromDt, String toDt) {
+    public void CRT_TB_VDS_DTCT_STAT_15M(String statDt, String fromDt, String toDt) {
         MDC.put("id", logKey);
         Elapsed elapsed = new Elapsed();
         voStatisticsTime statTime = new voStatisticsTime(statDt, fromDt, toDt);
-        log.info("CRT_TB_VDS_DTCT_15M_STAT :: start. [{}], {}", statTime.toString(), Thread.currentThread().getName());
-        int result = this.statMapper.CRT_TB_VDS_DTCT_15M_STAT(statTime);
-        log.info("CRT_TB_VDS_DTCT_15M_STAT :: ..end. [{}], {} ms. {} EA.. {}", statTime.toString(), elapsed.milliSeconds(), result, Thread.currentThread().getName());
+        log.info("CRT_TB_VDS_DTCT_STAT_15M :: start. [{}], {}", statTime.toString(), Thread.currentThread().getName());
+        int result = this.statMapper.CRT_TB_VDS_DTCT_STAT_15M(statTime);
+        log.info("CRT_TB_VDS_DTCT_STAT_15M :: ..end. [{}], {} ms. {} EA.. {}", statTime.toString(), elapsed.milliSeconds(), result, Thread.currentThread().getName());
         MDC.remove(logKey);
         MDC.clear();
     }
 
     @Async("statisticsExecutor")
-    public void CRT_TB_VDS_DTCT_HH_STAT(String statDt, String fromDt, String toDt) {
+    public void CRT_TB_VDS_DTCT_STAT_HH(String statDt, String fromDt, String toDt) {
         MDC.put("id", logKey);
         Elapsed elapsed = new Elapsed();
         voStatisticsTime statTime = new voStatisticsTime(statDt, fromDt, toDt);
-        log.info("CRT_TB_VDS_DTCT_HH_STAT :: start. [{}], {}", statTime.toString(), Thread.currentThread().getName());
-        int result = this.statMapper.CRT_TB_VDS_DTCT_HH_STAT(statTime);
-        log.info("CRT_TB_VDS_DTCT_HH_STAT :: ..end. [{}], {} ms. {} EA. {}", statTime.toString(), elapsed.milliSeconds(), result, Thread.currentThread().getName());
+        log.info("CRT_TB_VDS_DTCT_STAT_HH :: start. [{}], {}", statTime.toString(), Thread.currentThread().getName());
+        int result = this.statMapper.CRT_TB_VDS_DTCT_STAT_HH(statTime);
+        log.info("CRT_TB_VDS_DTCT_STAT_HH :: ..end. [{}], {} ms. {} EA. {}", statTime.toString(), elapsed.milliSeconds(), result, Thread.currentThread().getName());
         MDC.remove(logKey);
         MDC.clear();
     }
 
     @Async("statisticsExecutor")
-    public void CRT_TB_VDS_DTCT_DD_STAT(String statDt, String fromDt, String toDt) {
+    public void CRT_TB_VDS_DTCT_STAT_DD(String statDt, String fromDt, String toDt) {
         MDC.put("id", logKey);
         Elapsed elapsed = new Elapsed();
         voStatisticsTime statTime = new voStatisticsTime(statDt, fromDt, toDt);
-        log.info("CRT_TB_VDS_DTCT_DD_STAT :: start. [{}], {}", statTime.toString(), Thread.currentThread().getName());
-        int result = this.statMapper.CRT_TB_VDS_DTCT_DD_STAT(statTime);
-        log.info("CRT_TB_VDS_DTCT_DD_STAT :: ..end. [{}], {} ms. {} EA. {}", statTime.toString(), elapsed.milliSeconds(), result, Thread.currentThread().getName());
+        log.info("CRT_TB_VDS_DTCT_STAT_DD :: start. [{}], {}", statTime.toString(), Thread.currentThread().getName());
+        int result = this.statMapper.CRT_TB_VDS_DTCT_STAT_DD(statTime);
+        log.info("CRT_TB_VDS_DTCT_STAT_DD :: ..end. [{}], {} ms. {} EA. {}", statTime.toString(), elapsed.milliSeconds(), result, Thread.currentThread().getName());
         MDC.remove(logKey);
         MDC.clear();
     }
 
     @Async("statisticsExecutor")
-    public void CRT_TB_VDS_DTCT_MN_STAT(String statDt, String fromDt, String toDt) {
+    public void CRT_TB_VDS_DTCT_STAT_MN(String statDt, String fromDt, String toDt) {
         MDC.put("id", logKey);
         Elapsed elapsed = new Elapsed();
         voStatisticsTime statTime = new voStatisticsTime(statDt, fromDt, toDt);
-        log.info("CRT_TB_VDS_DTCT_MN_STAT :: start. [{}], {}", statTime.toString(), Thread.currentThread().getName());
-        int result = this.statMapper.CRT_TB_VDS_DTCT_MN_STAT(statTime);
-        log.info("CRT_TB_VDS_DTCT_MN_STAT :: ..end. [{}], {} ms. {} EA. {}", statTime.toString(), elapsed.milliSeconds(), result, Thread.currentThread().getName());
+        log.info("CRT_TB_VDS_DTCT_STAT_MN :: start. [{}], {}", statTime.toString(), Thread.currentThread().getName());
+        int result = this.statMapper.CRT_TB_VDS_DTCT_STAT_MN(statTime);
+        log.info("CRT_TB_VDS_DTCT_STAT_MN :: ..end. [{}], {} ms. {} EA. {}", statTime.toString(), elapsed.milliSeconds(), result, Thread.currentThread().getName());
         MDC.remove(logKey);
         MDC.clear();
     }
 
 //    @Async("statisticsExecutor")
-//    public void CRT_TB_VDS_DTCT_YY_STAT(String statDt, String fromDt, String toDt) {
+//    public void CRT_TB_VDS_DTCT_STAT_YY(String statDt, String fromDt, String toDt) {
 //        MDC.put("id", logKey);
 //        Elapsed elapsed = new Elapsed();
 //        voStatisticsTime statTime = new voStatisticsTime(statDt, fromDt, toDt);
-//        log.info("CRT_TB_VDS_DTCT_YY_STAT :: start. [{}], {}", statTime.toString(), Thread.currentThread().getName());
-//        int result = this.statMapper.CRT_TB_VDS_DTCT_YY_STAT(statTime);
-//        log.info("CRT_TB_VDS_DTCT_YY_STAT :: ..end. [{}], {} ms. {} EA. {}", statTime.toString(), elapsed.milliSeconds(), result, Thread.currentThread().getName());
+//        log.info("CRT_TB_VDS_DTCT_STAT_YY :: start. [{}], {}", statTime.toString(), Thread.currentThread().getName());
+//        int result = this.statMapper.CRT_TB_VDS_DTCT_STAT_YY(statTime);
+//        log.info("CRT_TB_VDS_DTCT_STAT_YY :: ..end. [{}], {} ms. {} EA. {}", statTime.toString(), elapsed.milliSeconds(), result, Thread.currentThread().getName());
 //        MDC.remove(logKey);
 //        MDC.clear();
 //    }

+ 4 - 3
src/main/java/com/its/vds/service/UnitSystService.java

@@ -37,7 +37,7 @@ public class UnitSystService {
     private final TbUnitSystStts unitSystStts = TbUnitSystStts.builder().build();
 
     private String processId;
-    private int sttsMin;
+    private int historyMin;
     public static String _srcIpAddr;
 
     @PostConstruct
@@ -45,6 +45,7 @@ public class UnitSystService {
         log.info("[INIT...] UnitSystService.init: start.");
         ProcessConfig processConfig = (ProcessConfig) AppUtils.getBean(ProcessConfig.class);
         this.processId = processConfig.getId();
+        this.historyMin = -1;
 
         try {
             InetAddress local = InetAddress.getLocalHost();
@@ -102,9 +103,9 @@ public class UnitSystService {
         boolean insHs = false;
         Calendar cal = Calendar.getInstance();
         int min = cal.get(Calendar.MINUTE);
-        if ((min % 5) == 0) {
+        if ((min % 5) == 0 && this.historyMin != min) {
             insHs = true;
-            this.sttsMin = min;
+            this.historyMin = min;
         }
 
         String SYST_STTS_CD = isRun ? "SPS1" : "SPS3";

+ 4 - 7
src/main/java/com/its/vds/service/VdsCtlrService.java

@@ -30,17 +30,14 @@ public class VdsCtlrService {
 
     private VdsCtlrMapper vdsCtlrMapper;
     private VdsDtctMapper vdsDtctMapper;
-
-    private int sttsMin;
+    private int historyMin;
 
     @PostConstruct
     private void init() {
         log.info("VdsCtlrService.init: Start.");
         this.vdsCtlrMapper = (VdsCtlrMapper) AppUtils.getBean(VdsCtlrMapper.class);
         this.vdsDtctMapper = (VdsDtctMapper) AppUtils.getBean(VdsDtctMapper.class);
-
-        //loadDb();
-        //updateCtlrStts(true);
+        this.historyMin = -1;
         log.info("VdsCtlrService.init: ..End.");
     }
 
@@ -153,9 +150,9 @@ public class VdsCtlrService {
         boolean insHs = false;
         Calendar cal = Calendar.getInstance();
         int min = cal.get(Calendar.MINUTE);
-        if ((min % 5) == 0) {
+        if ((min % 5) == 0 && this.historyMin != min) {
             insHs = true;
-            this.sttsMin = min;
+            this.historyMin = min;
         }
 
         //제어기 상태정보 업데이트

+ 0 - 4
src/main/java/com/its/vds/ui/MainUI.java

@@ -393,10 +393,6 @@ public class MainUI {
         for (int ii = 0; ii < this.ctlrSttsTableModel.getRowCount(); ii++) {
             if (obj.getVDS_CTLR_ID().equals(this.ctlrSttsTableModel.getValueAt(ii, 2).toString())) {
                 int modelRow = tblCtlrList.convertRowIndexToModel(ii);
-//                //int viewColumn = tblCtlrList.getSelectedColumn();
-//                int modelColumn = tblCtlrList.convertColumnIndexToModel(4);
-//                Object cell = tblCtlrList.getValueAt(modelRow, modelColumn);
-//                log.error("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX: {}", cell);
                 this.ctlrSttsTableModel.setValue(obj, ii, modelRow);
                 break;
             }

+ 1 - 1
src/main/resources/mybatis/mapper/VdsDtctMapper.xml

@@ -191,7 +191,7 @@
                     SPCE_OCPY_RATE,
                     SPCE_AVRG_SPED
                 )
-            VALUES (M.DTCT_NMBR,
+            VALUES (M.VDS_DTCT_NMBR,
                     M.CLCT_DT,
                     M.TRAF_CLCT_CYCL,
                     M.TFVL,

+ 14 - 14
src/main/resources/mybatis/mapper/VdsStatMapper.xml

@@ -30,9 +30,9 @@
     ]]>
     </insert>
 
-    <insert id="CRT_TB_VDS_DTCT_15M_STAT" parameterType="com.its.vds.vo.voStatisticsTime">
+    <insert id="CRT_TB_VDS_DTCT_STAT_15M" parameterType="com.its.vds.vo.voStatisticsTime">
     <![CDATA[
-		INSERT INTO TB_VDS_DTCT_15M_STAT (STAT_DT,
+		INSERT INTO TB_VDS_DTCT_STAT_15M (STAT_DT,
                                           VDS_DTCT_NMBR,
 		                                  TFVL,
 		                                  AVRG_SPED,                   
@@ -57,9 +57,9 @@
     ]]>
     </insert>
 
-    <insert id="CRT_TB_VDS_DTCT_HH_STAT" parameterType="com.its.vds.vo.voStatisticsTime">
+    <insert id="CRT_TB_VDS_DTCT_STAT_HH" parameterType="com.its.vds.vo.voStatisticsTime">
     <![CDATA[
-		INSERT INTO TB_VDS_DTCT_HH_STAT (STAT_DT,
+		INSERT INTO TB_VDS_DTCT_STAT_HH (STAT_DT,
                                          VDS_DTCT_NMBR,
 		                                 TFVL,                              
 		                                 AVRG_SPED,                         
@@ -78,15 +78,15 @@
                 ROUND(AVG(AVRG_HDWY), 0)           AS AVRG_HDWY,
                 AVG(AVRG_SPCE_OCPY_RATE)           AS AVRG_SPCE_OCPY_RATE,
 		        ROUND(AVG(AVRG_SPCE_AVRG_SPED), 0) AS AVRG_SPCE_AVRG_SPED
-		  FROM TB_VDS_DTCT_15M_STAT
+		  FROM TB_VDS_DTCT_STAT_15M
 		 WHERE STAT_DT BETWEEN #{prcs.FROM_DT} AND #{prcs.TO_DT}                              
 		 GROUP BY VDS_DTCT_NMBR
     ]]>
     </insert>
 
-    <insert id="CRT_TB_VDS_DTCT_DD_STAT" parameterType="com.its.vds.vo.voStatisticsTime">
+    <insert id="CRT_TB_VDS_DTCT_STAT_DD" parameterType="com.its.vds.vo.voStatisticsTime">
     <![CDATA[
-		INSERT INTO TB_VDS_DTCT_DD_STAT (STAT_DT,
+		INSERT INTO TB_VDS_DTCT_STAT_DD (STAT_DT,
                                          VDS_DTCT_NMBR,
 		                                 TFVL,                              
 		                                 AVRG_SPED,                         
@@ -106,15 +106,15 @@
                 ROUND(AVG(AVRG_HDWY), 0)           AS AVRG_HDWY,
                 AVG(AVRG_SPCE_OCPY_RATE)           AS AVRG_SPCE_OCPY_RATE,
                 ROUND(AVG(AVRG_SPCE_AVRG_SPED), 0) AS AVRG_SPCE_AVRG_SPED
-		  FROM TB_VDS_DTCT_HH_STAT                                          
+		  FROM TB_VDS_DTCT_STAT_HH                                          
 		 WHERE STAT_DT BETWEEN #{prcs.FROM_DT} AND #{prcs.TO_DT}                               
 		 GROUP BY VDS_DTCT_NMBR
     ]]>
     </insert>
 
-    <update id="CRT_TB_VDS_DTCT_MN_STAT" parameterType="com.its.vds.vo.voStatisticsTime">
+    <update id="CRT_TB_VDS_DTCT_STAT_MN" parameterType="com.its.vds.vo.voStatisticsTime">
     <![CDATA[
-		MERGE INTO TB_VDS_DTCT_MN_STAT L                                    
+		MERGE INTO TB_VDS_DTCT_STAT_MN L                                    
 		USING (                                                             
 		SELECT  #{prcs.STAT_DT}                    AS STAT_DT,
                 VDS_DTCT_NMBR                      AS VDS_DTCT_NMBR,
@@ -125,7 +125,7 @@
                 ROUND(AVG(AVRG_HDWY), 0)           AS AVRG_HDWY,
                 AVG(AVRG_SPCE_OCPY_RATE)           AS AVRG_SPCE_OCPY_RATE,
                 ROUND(AVG(AVRG_SPCE_AVRG_SPED), 0) AS AVRG_SPCE_AVRG_SPED
-		  FROM TB_VDS_DTCT_DD_STAT                                          
+		  FROM TB_VDS_DTCT_STAT_DD                                          
 		 WHERE STAT_DT BETWEEN #{prcs.FROM_DT} AND #{prcs.TO_DT}                                
 		 GROUP BY VDS_DTCT_NMBR ) M
 		ON (L.STAT_DT        = M.STAT_DT
@@ -146,9 +146,9 @@
     ]]>
     </update>
 
-    <update id="CRT_TB_VDS_DTCT_YY_STAT" parameterType="com.its.vds.vo.voStatisticsTime">
+    <update id="CRT_TB_VDS_DTCT_STAT_YY" parameterType="com.its.vds.vo.voStatisticsTime">
     <![CDATA[
-		MERGE INTO TB_VDS_DTCT_YY_STAT L
+		MERGE INTO TB_VDS_DTCT_STAT_YY L
 		USING (
 		SELECT  #{prcs.STAT_DT}                    AS STAT_DT,
 		        VDS_DTCT_NMBR                      AS VDS_DTCT_NMBR,
@@ -159,7 +159,7 @@
 		        ROUND(AVG(AVRG_HDWY), 0)           AS AVRG_HDWY,
 		        AVG(AVRG_SPCE_OCPY_RATE)           AS AVRG_SPCE_OCPY_RATE,
 		        ROUND(AVG(AVRG_SPCE_AVRG_SPED), 0) AS AVRG_SPCE_AVRG_SPED
-		  FROM TB_VDS_DTCT_MN_STAT
+		  FROM TB_VDS_DTCT_STAT_MN
 		 WHERE STAT_DT BETWEEN #{prcs.FROM_DT} AND #{prcs.TO_DT}
 		 GROUP BY VDS_DTCT_NMBR ) M
 		ON (L.STAT_DT       = M.STAT_DT