From 12e64c4ee5242c43df52c9f34dce2d4c86efd565 Mon Sep 17 00:00:00 2001 From: rosewiper Date: Mon, 27 Nov 2023 15:51:06 +0900 Subject: [PATCH] =?UTF-8?q?=EA=B4=80=EB=A6=AC=EC=9E=90=20=EB=AC=B8?= =?UTF-8?q?=EC=9E=90=20=EC=A0=84=EC=86=A1=20=EC=88=9C=EC=9C=84=20=EC=8A=A4?= =?UTF-8?q?=EC=BC=80=EC=A4=84=EB=9F=AC=20=EC=83=88=EB=B2=BD=20=EC=9E=91?= =?UTF-8?q?=EC=97=85=20=EC=9D=BC=EC=8B=9C=20=EC=A4=91=EB=8B=A8=20=EC=B2=98?= =?UTF-8?q?=EB=A6=AC=20=20-=20=EC=82=AC=EC=9A=A9=ED=95=98=EC=A7=80=20?= =?UTF-8?q?=EC=95=8A=EB=8A=94=20=EA=B8=B0=EB=8A=A5=EC=9C=BC=EB=A1=9C=20?= =?UTF-8?q?=EC=84=9C=EB=B2=84=EC=9D=98=20=EC=83=88=EB=B2=BD=EC=8B=9C?= =?UTF-8?q?=EA=B0=84=EB=8C=80=20=EC=9E=91=EC=97=85=EB=9F=89=EC=9D=B4=20?= =?UTF-8?q?=EB=A7=8E=EC=95=84=20=EC=98=A4=EB=A5=98=20=EB=B0=9C=EC=83=9D?= =?UTF-8?q?=EC=9C=BC=EB=A1=9C=20=EC=9D=B8=ED=95=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 관리자 팩스 발송 통계 기능 수정 - 통계관리 > 팩스 발송 통계 화면 개선 내용 적용 - 발송 매수 카운트 기능 추가 - 일반/모바일 구분 화면 기능은 추후 작업 예정 --- .../itn/let/fax/admin/service/FaxStatVO.java | 15 +++++ .../admin/service/impl/FaxAdmServiceImpl.java | 10 ++- .../let/fax/admin/web/FaxAdmController.java | 1 + .../com/context-scheduling-sym-log-lgm.xml | 31 +++++---- .../sqlmap/let/fax/Fax_SQL_Mysql.xml | 14 ++++- .../jsp/uss/ion/fax/faxAdmSendStatistics.jsp | 63 +++++++++---------- 6 files changed, 82 insertions(+), 52 deletions(-) diff --git a/src/main/java/itn/let/fax/admin/service/FaxStatVO.java b/src/main/java/itn/let/fax/admin/service/FaxStatVO.java index e2222041..bebccbd1 100644 --- a/src/main/java/itn/let/fax/admin/service/FaxStatVO.java +++ b/src/main/java/itn/let/fax/admin/service/FaxStatVO.java @@ -25,6 +25,9 @@ public class FaxStatVO extends ComDefaultVO implements Serializable { private int statEndDate; //통계 종료일 private int statStandardDate; //통계 where 기준 + private int succPageCnt; //팩스 성공 페이지 수 + private int failPageCnt; //팩스 실패 페이지 수 + public String getReqDate() { return reqDate; } @@ -115,5 +118,17 @@ public class FaxStatVO extends ComDefaultVO implements Serializable { public void setStatStandardDate(int statStandardDate) { this.statStandardDate = statStandardDate; } + public int getSuccPageCnt() { + return succPageCnt; + } + public void setSuccPageCnt(int succPageCnt) { + this.succPageCnt = succPageCnt; + } + public int getFailPageCnt() { + return failPageCnt; + } + public void setFailPageCnt(int failPageCnt) { + this.failPageCnt = failPageCnt; + } } diff --git a/src/main/java/itn/let/fax/admin/service/impl/FaxAdmServiceImpl.java b/src/main/java/itn/let/fax/admin/service/impl/FaxAdmServiceImpl.java index 4dd34591..617db4d8 100644 --- a/src/main/java/itn/let/fax/admin/service/impl/FaxAdmServiceImpl.java +++ b/src/main/java/itn/let/fax/admin/service/impl/FaxAdmServiceImpl.java @@ -26,7 +26,6 @@ import itn.let.fax.admin.service.FaxAdmService; import itn.let.fax.admin.service.FaxStatVO; import itn.let.fax.user.service.FaxGroupDataVO; import itn.let.fax.user.service.impl.FaxDAO; -import itn.let.mjo.msg.service.MjonMsgVO; import itn.let.mjo.msgdata.service.impl.MjonMsgDataDAO; import itn.let.mjo.pay.service.impl.MjonPayDAO; import itn.let.module.base.PriceAndPoint; @@ -128,7 +127,8 @@ public class FaxAdmServiceImpl extends EgovAbstractServiceImpl implements FaxAdm faxStatVO.setFirstIndex(paginationInfo.getFirstRecordIndex()); faxStatVO.setLastIndex(paginationInfo.getLastRecordIndex()); - faxStatVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage()); + //faxStatVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage()); + faxStatVO.setRecordCountPerPage(1000); // 최초 접근 시 오늘 날짜의 통계를 보여준다 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); @@ -212,12 +212,16 @@ public class FaxAdmServiceImpl extends EgovAbstractServiceImpl implements FaxAdm double succFaxCost = 0; double failFaxCost = 0; double succFaxRate = 0; + int succPageCnt = 0; + int failPageCnt = 0; for(FaxStatVO tmpVO : list) { succFaxCnt += tmpVO.getSuccFaxCnt(); failFaxCnt += tmpVO.getFailFaxCnt(); succFaxCost += Double.parseDouble(tmpVO.getSuccFaxCost()); failFaxCost += Double.parseDouble(tmpVO.getFailFaxCost()); + succPageCnt += tmpVO.getSuccPageCnt(); + failPageCnt += tmpVO.getFailPageCnt(); } if(succFaxCnt + succFaxCnt != 0) { @@ -236,6 +240,8 @@ public class FaxAdmServiceImpl extends EgovAbstractServiceImpl implements FaxAdm faxStatVO.setSuccFaxCost(dcf.format(succFaxCost)); faxStatVO.setFailFaxCost(dcf.format(failFaxCost)); faxStatVO.setSuccFaxRate(Double.toString(succFaxRate)); + faxStatVO.setSuccPageCnt(succPageCnt); + faxStatVO.setFailPageCnt(failPageCnt); List totalSumList = new ArrayList(); totalSumList.add(faxStatVO); diff --git a/src/main/java/itn/let/fax/admin/web/FaxAdmController.java b/src/main/java/itn/let/fax/admin/web/FaxAdmController.java index 439c8a06..8076da3c 100644 --- a/src/main/java/itn/let/fax/admin/web/FaxAdmController.java +++ b/src/main/java/itn/let/fax/admin/web/FaxAdmController.java @@ -324,6 +324,7 @@ public class FaxAdmController { return "/uss/ion/fax/faxAdmSendStatistics"; } + // 팩스 금일 발송통계 갱신 @RequestMapping(value = "/uss/ion/msg/insertFaxCountStatTodayAjax.do") public ResponseEntity insertFaxCountStatTodayAjax(FaxStatVO faxStatVO) throws Exception { diff --git a/src/main/resources/egovframework/spring/com/context-scheduling-sym-log-lgm.xml b/src/main/resources/egovframework/spring/com/context-scheduling-sym-log-lgm.xml index 53417f3b..b3240689 100644 --- a/src/main/resources/egovframework/spring/com/context-scheduling-sym-log-lgm.xml +++ b/src/main/resources/egovframework/spring/com/context-scheduling-sym-log-lgm.xml @@ -92,35 +92,34 @@ - - + + - + + 매시간 43분 47초 마다 일별 문자 발송 데이터 집계 - - + + --> - - + + - + + 매시간 43분 47초 마다 일별 문자 발송 데이터 집계 - - + --> @@ -151,8 +150,8 @@ - - + + diff --git a/src/main/resources/egovframework/sqlmap/let/fax/Fax_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/let/fax/Fax_SQL_Mysql.xml index ee5f684e..2c0ee8fb 100644 --- a/src/main/resources/egovframework/sqlmap/let/fax/Fax_SQL_Mysql.xml +++ b/src/main/resources/egovframework/sqlmap/let/fax/Fax_SQL_Mysql.xml @@ -525,6 +525,8 @@ SUCC_FAX_USER_COST, FAIL_FAX_COST, SUCC_FAX_RATE, + SUCC_PAGE_CNT, + FAIL_PAGE_CNT, REG_DATE ) SELECT b.reqDate, @@ -535,6 +537,8 @@ b.succFaxUserCost, b.failFaxCost, b.succFaxRate, + b.succPageCnt, + b.failPageCnt, b.regDate FROM ( SELECT a.reqDate AS reqDate, '06' AS AGENT_CODE, @@ -544,7 +548,9 @@ SUM( IF(a.Result = 'SENT', 1, 0) *a.faxUserCost) AS succFaxUserCost, SUM(IF(a.Result = 'FAIL', 1, 0) *a.faxCost) AS failFaxCost, IF(ROUND((SUM(IF(a.Result = 'SENT', 1, 0)) / IF(SUM(IF(a.Result <> '0', 1, 0)) = 0 , 1 , SUM(IF(a.Result <> '0', 1, 0)))) * 100) IS NOT NULL, ROUND((SUM(IF(a.Result = 'SENT', 1, 0)) / IF(SUM(IF(a.Result <> '0', 1, 0)) = 0 , 1, SUM(IF(a.Result <> '0', 1, 0)))) * 100), 0) AS succFaxRate, - NOW() AS regDate + NOW() AS regDate, + SUM(IF(a.Result = 'SENT', 1, 0) *a.resPage) AS succPageCnt, + SUM(IF(a.Result = 'FAIL', 1, 0) *a.resPage) AS failPageCnt FROM (SELECT a.*, b.EACH_PRICE AS faxUserCost FROM mj_fax_summary_view a @@ -575,6 +581,8 @@ SUCC_FAX_USER_COST = b.succFaxUserCost, FAIL_FAX_COST = b.failFaxCost, SUCC_FAX_RATE = b.succFaxRate, + SUCC_PAGE_CNT = b.succPageCnt, + FAIL_PAGE_CNT = b.failPageCnt, REG_DATE = now() @@ -584,7 +592,9 @@ a.FAIL_FAX_CNT AS failFaxCnt, a.SUCC_FAX_COST AS succFaxCost, a.FAIL_FAX_COST AS failFaxCost, - a.SUCC_FAX_RATE AS succFaxRate + a.SUCC_FAX_RATE AS succFaxRate, + a.SUCC_PAGE_CNT AS succPageCnt, + a.FAIL_PAGE_CNT AS failPageCnt FROM mj_fax_stat a WHERE 1=1 diff --git a/src/main/webapp/WEB-INF/jsp/uss/ion/fax/faxAdmSendStatistics.jsp b/src/main/webapp/WEB-INF/jsp/uss/ion/fax/faxAdmSendStatistics.jsp index 3549c5ff..cdb69efb 100644 --- a/src/main/webapp/WEB-INF/jsp/uss/ion/fax/faxAdmSendStatistics.jsp +++ b/src/main/webapp/WEB-INF/jsp/uss/ion/fax/faxAdmSendStatistics.jsp @@ -43,33 +43,33 @@ fnCalChange(""); }); -// function fnCalChange(type) { -// if(type == 'day') { -// $(".calendar_box").show(); -// $(".line").show(); -// $("#searchYear").hide(); -// $("#searchMonth").hide(); -// $("#searchQuarter").hide(); -// } else if(type == 'month') { -// $(".calendar_box").hide(); -// $(".line").hide(); -// $("#searchYear").show(); -// $("#searchMonth").show(); -// $("#searchQuarter").hide(); -// } else if(type == 'quarter') { -// $(".calendar_box").hide(); -// $(".line").hide(); -// $("#searchYear").show(); -// $("#searchMonth").hide(); -// $("#searchQuarter").show(); -// } else if(type == 'year') { -// $(".calendar_box").hide(); -// $(".line").hide(); -// $("#searchYear").show(); -// $("#searchMonth").hide(); -// $("#searchQuarter").hide(); -// } -// } + function fnCalChange(type) { + if(type == 'day') { + $(".calendar_box").show(); + $(".line").show(); + $("#searchYear").hide(); + $("#searchMonth").hide(); + $("#searchQuarter").hide(); + } else if(type == 'month') { + $(".calendar_box").hide(); + $(".line").hide(); + $("#searchYear").show(); + $("#searchMonth").show(); + $("#searchQuarter").hide(); + } else if(type == 'quarter') { + $(".calendar_box").hide(); + $(".line").hide(); + $("#searchYear").show(); + $("#searchMonth").hide(); + $("#searchQuarter").show(); + } else if(type == 'year') { + $(".calendar_box").hide(); + $(".line").hide(); + $("#searchYear").show(); + $("#searchMonth").hide(); + $("#searchQuarter").hide(); + } + } function fn_list_search() { var form = document.listForm; @@ -202,7 +202,6 @@
(부가세 별도) - (30분 단위 업데이트)  
@@ -210,7 +209,7 @@ - + @@ -228,9 +227,9 @@ - - - + + +
건(매)()() %