diff --git a/src/main/java/itn/let/mjo/msg/service/MjonMsgVO.java b/src/main/java/itn/let/mjo/msg/service/MjonMsgVO.java
index dc6c0df4..3612b04f 100644
--- a/src/main/java/itn/let/mjo/msg/service/MjonMsgVO.java
+++ b/src/main/java/itn/let/mjo/msg/service/MjonMsgVO.java
@@ -167,6 +167,58 @@ public class MjonMsgVO extends ComDefaultVO{
private String sendKind; //문자전송 타입(H:홈페이지, A:API)
+ private int aSuccessCount; // API 문자발송 성공건수
+ private int aSendCount; // API 문자 발송건수
+
+ private int rateSuccessCount; // 홈페이지 전송 성공율
+ private int rateApiSuccessCount; // API 전송 성공율
+
+ private int totalSendCount; // 전체 문자발송 건수
+ private int totalSuccessCount; // 전체 문자발송 성공건수
+ private int totalRateSuccessCount; // 전체 문자발송 성공율
+
+ public int getRateSuccessCount() {
+ return rateSuccessCount;
+ }
+ public void setRateSuccessCount(int rateSuccessCount) {
+ this.rateSuccessCount = rateSuccessCount;
+ }
+ public int getRateApiSuccessCount() {
+ return rateApiSuccessCount;
+ }
+ public void setRateApiSuccessCount(int rateApiSuccessCount) {
+ this.rateApiSuccessCount = rateApiSuccessCount;
+ }
+ public int getTotalSendCount() {
+ return totalSendCount;
+ }
+ public void setTotalSendCount(int totalSendCount) {
+ this.totalSendCount = totalSendCount;
+ }
+ public int getTotalSuccessCount() {
+ return totalSuccessCount;
+ }
+ public void setTotalSuccessCount(int totalSuccessCount) {
+ this.totalSuccessCount = totalSuccessCount;
+ }
+ public int getTotalRateSuccessCount() {
+ return totalRateSuccessCount;
+ }
+ public void setTotalRateSuccessCount(int totalRateSuccessCount) {
+ this.totalRateSuccessCount = totalRateSuccessCount;
+ }
+ public int getaSuccessCount() {
+ return aSuccessCount;
+ }
+ public void setaSuccessCount(int aSuccessCount) {
+ this.aSuccessCount = aSuccessCount;
+ }
+ public int getaSendCount() {
+ return aSendCount;
+ }
+ public void setaSendCount(int aSendCount) {
+ this.aSendCount = aSendCount;
+ }
public String getSendKind() {
return sendKind;
}
diff --git a/src/main/java/itn/let/mjo/msg/web/MjonMsgController.java b/src/main/java/itn/let/mjo/msg/web/MjonMsgController.java
index 79eda090..8379c0fb 100644
--- a/src/main/java/itn/let/mjo/msg/web/MjonMsgController.java
+++ b/src/main/java/itn/let/mjo/msg/web/MjonMsgController.java
@@ -4396,7 +4396,7 @@ public class MjonMsgController {
if (resultList.size()>0) {
model.addAttribute("sttstDate", resultList.get(0).getRegistPnttm());
- }
+ }
}catch(Exception ex) {
ex.printStackTrace();
}
diff --git a/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml b/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml
index 37df31ce..232f57ba 100644
--- a/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml
+++ b/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml
@@ -5017,25 +5017,47 @@
diff --git a/src/main/resources/egovframework/sqlmap/let/sttst/MjonSttstData_SQL_mysql.xml b/src/main/resources/egovframework/sqlmap/let/sttst/MjonSttstData_SQL_mysql.xml
index 67221b75..a217797f 100644
--- a/src/main/resources/egovframework/sqlmap/let/sttst/MjonSttstData_SQL_mysql.xml
+++ b/src/main/resources/egovframework/sqlmap/let/sttst/MjonSttstData_SQL_mysql.xml
@@ -8,176 +8,251 @@
- INSERT INTO mj_sttst_msg
- (send_date, send_cnt, success_cnt, regist_pnttm)
+ INSERT INTO MJ_STTST_MSG
+ (
+ send_date
+ , send_cnt
+ , success_cnt
+ , API_SEND_CNT
+ , API_SUCCESS_CNT
+ , regist_pnttm
+ )
- select aa.regDate
- , aa.sendCount
- , aa.successCount
+ SELECT
+ aa.regDate
+ , aa.hSendCount
+ , aa.hSuccessCount
+ , aa.aSendCount
+ , aa.aSuccessCount
, now()
-
- from (
- SELECT
- M2.regDate ,
- SUM(M2.sendCount) AS sendCount ,
- SUM(M2.successCount) AS successCount
-
- FROM ( SELECT
- M.REQ_DATE AS regDate
- /*발송일*/
-
- , IFNULL(M.MSG_GROUP_CNT, 0) AS sendCount
- /*발송건수*/
-
- , MSG_GROUP_ID
-
- ,
- (SELECT COUNT(0)
- FROM MJ_MSG_DATA A
- WHERE A.USER_ID NOT IN ('hftest',
- 'itntest',
- 'imotest',
- 'itntestBatch')
- AND A.RESERVE_C_YN = 'N'
- AND A.MSG_GROUP_ID = M.MSG_GROUP_ID
- AND (CASE
- WHEN A.AGENT_CODE = '01' AND (A.RSLT_CODE = '100' AND (A.RSLT_CODE2 = '0'))
- THEN 'S'
- WHEN A.AGENT_CODE = '02' AND (A.RSLT_CODE = '0')
- THEN 'S'
- WHEN A.AGENT_CODE = '03' AND (A.RSLT_CODE = '100' OR A.RSLT_CODE = '101' OR A.RSLT_CODE = '110' OR A.RSLT_CODE = '800')
- THEN 'S'
- WHEN A.AGENT_CODE = '04' AND (A.RSLT_CODE = '4100' OR A.RSLT_CODE = '6600')
- THEN 'S'
- WHEN A.AGENT_CODE = '05' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
- THEN 'S'
- WHEN A.AGENT_CODE = '07' AND (A.RSLT_CODE = '6' OR A.RSLT_CODE = '1000')
- THEN 'S'
- WHEN A.AGENT_CODE = '08' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
- THEN 'S'
- WHEN A.AGENT_CODE = '09' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
- THEN 'S'
- WHEN (
- A.RSLT_CODE IS NULL
- AND A.RSLT_CODE2 IS NULL
- AND A.SENT_DATE IS NULL
- AND A.RSLT_DATE IS NULL
- )
- THEN 'W'
- ELSE 'F'
- END ) = 'S'
- )
- AS successCount
- /*성공건수*/
-
- FROM ( SELECT DATE_FORMAT(P.REQ_DATE, '%Y-%m-%d') AS REQ_DATE ,
- SUM(P.MSG_GROUP_CNT) AS MSG_GROUP_CNT ,
- P.MSG_GROUP_ID
- FROM MJ_MSG_GROUP_DATA P
- WHERE USER_ID NOT IN ('hftest',
- 'itntest',
- 'imotest',
- 'itntestBatch')
- AND P.RESERVE_C_YN = 'N'
- AND P.req_date > DATE_ADD(now(), interval -14 day)
- GROUP BY P.MSG_GROUP_ID
- )
- M
- )
- M2
- GROUP BY M2.regDate
- )aa
- on DUPLICATE KEY UPDATE
- send_cnt=aa.sendCount
- , success_cnt=aa.successCount
- , regist_pnttm=now()
-
+ FROM(
+ SELECT
+ M2.regDate
+ , SUM(M2.hSendCount) AS hSendCount
+ , SUM(M2.hSuccessCount) AS hSuccessCount
+ , SUM(M2.aSendCount) AS aSendCount
+ , SUM(M2.aSuccessCount) AS aSuccessCount
+
+ FROM(
+ SELECT
+ M.REQ_DATE AS regDate /*발송일*/
+ , IFNULL(M.MSG_GROUP_CNT, 0) AS sendCount /*발송건수*/
+ , M.aSendCount /*API 발송건수*/
+ , M.hSendCount /*홈페이지 발송건수*/
+ , MSG_GROUP_ID
+ , (SELECT
+ COUNT(0)
+ FROM
+ MJ_MSG_DATA A
+ WHERE 1=1
+ AND A.USER_ID NOT IN ('hftest','itntest','imotest','itntestBatch')
+ AND A.RESERVE_C_YN = 'N'
+ AND A.MSG_GROUP_ID = M.MSG_GROUP_ID
+ AND M.SEND_KIND = 'H'
+ AND (
+ CASE
+ WHEN A.AGENT_CODE = '01' AND (A.RSLT_CODE = '100' AND (A.RSLT_CODE2 = '0'))
+ THEN 'S'
+ WHEN A.AGENT_CODE = '02' AND (A.RSLT_CODE = '0')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '03' AND (A.RSLT_CODE = '100' OR A.RSLT_CODE = '101' OR A.RSLT_CODE = '110' OR A.RSLT_CODE = '800')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '04' AND (A.RSLT_CODE = '4100' OR A.RSLT_CODE = '6600')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '05' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '07' AND (A.RSLT_CODE = '6' OR A.RSLT_CODE = '1000')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '08' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '09' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
+ THEN 'S'
+ WHEN (A.RSLT_CODE IS NULL AND A.RSLT_CODE2 IS NULL AND A.SENT_DATE IS NULL AND A.RSLT_DATE IS NULL )
+ THEN 'W'
+ ELSE 'F'
+ END
+ ) = 'S'
+ ) AS hSuccessCount /*홈페이지 성공건수*/
+ , (SELECT
+ COUNT(0)
+ FROM
+ MJ_MSG_DATA A
+ WHERE 1=1
+ AND A.USER_ID NOT IN ('hftest','itntest','imotest','itntestBatch')
+ AND A.RESERVE_C_YN = 'N'
+ AND A.MSG_GROUP_ID = M.MSG_GROUP_ID
+ AND M.SEND_KIND = 'A'
+ AND (
+ CASE
+ WHEN A.AGENT_CODE = '01' AND (A.RSLT_CODE = '100' AND (A.RSLT_CODE2 = '0'))
+ THEN 'S'
+ WHEN A.AGENT_CODE = '02' AND (A.RSLT_CODE = '0')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '03' AND (A.RSLT_CODE = '100' OR A.RSLT_CODE = '101' OR A.RSLT_CODE = '110' OR A.RSLT_CODE = '800')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '04' AND (A.RSLT_CODE = '4100' OR A.RSLT_CODE = '6600')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '05' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '07' AND (A.RSLT_CODE = '6' OR A.RSLT_CODE = '1000')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '08' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '09' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
+ THEN 'S'
+ WHEN (A.RSLT_CODE IS NULL AND A.RSLT_CODE2 IS NULL AND A.SENT_DATE IS NULL AND A.RSLT_DATE IS NULL )
+ THEN 'W'
+ ELSE 'F'
+ END ) = 'S'
+ ) AS aSuccessCount /*API 성공건수*/
+ FROM(
+ SELECT
+ DATE_FORMAT(P.REQ_DATE, '%Y-%m-%d') AS REQ_DATE
+ , SUM(P.MSG_GROUP_CNT) AS MSG_GROUP_CNT
+ , P.MSG_GROUP_ID
+ , P.SEND_KIND
+ , IF(P.SEND_KIND = 'A', SUM(P.MSG_GROUP_CNT), 0) AS aSendCount
+ , IF(P.SEND_KIND = 'H', SUM(P.MSG_GROUP_CNT), 0) AS hSendCount
+ FROM
+ MJ_MSG_GROUP_DATA P
+ WHERE 1=1
+ AND USER_ID NOT IN ('hftest', 'itntest', 'imotest', 'itntestBatch')
+ AND P.RESERVE_C_YN = 'N'
+ AND P.req_date > DATE_ADD(now(), interval -14 day)
+ GROUP BY
+ P.MSG_GROUP_ID
+ )M
+ )M2
+ GROUP BY M2.regDate
+ )aa
+ ON DUPLICATE KEY UPDATE
+ send_cnt =aa.hSendCount
+ , success_cnt =aa.hSuccessCount
+ , API_SEND_CNT =aa.aSendCount
+ , API_SUCCESS_CNT =aa.aSuccessCount
+ , regist_pnttm =now()
- INSERT INTO mj_sttst_msg
- (send_date, send_cnt, success_cnt, regist_pnttm)
+ INSERT INTO MJ_STTST_MSG
+ (
+ send_date
+ , send_cnt
+ , success_cnt
+ , API_SEND_CNT
+ , API_SUCCESS_CNT
+ , regist_pnttm
+ )
- select aa.regDate
- , aa.sendCount
- , aa.successCount
+ SELECT
+ aa.regDate
+ , aa.hSendCount
+ , aa.hSuccessCount
+ , aa.aSendCount
+ , aa.aSuccessCount
, now()
-
- from (
- SELECT
- M2.regDate ,
- SUM(M2.sendCount) AS sendCount ,
- SUM(M2.successCount) AS successCount
-
- FROM ( SELECT
- M.REQ_DATE AS regDate
- /*발송일*/
-
- , IFNULL(M.MSG_GROUP_CNT, 0) AS sendCount
- /*발송건수*/
-
- , MSG_GROUP_ID
-
- , (SELECT COUNT(0)
- FROM MJ_MSG_DATA A
- WHERE A.USER_ID NOT IN ('hftest',
- 'itntest',
- 'imotest',
- 'itntestBatch')
- AND A.RESERVE_C_YN = 'N'
- AND A.MSG_GROUP_ID = M.MSG_GROUP_ID
- AND (
- CASE
- WHEN A.AGENT_CODE = '01' AND (A.RSLT_CODE = '100' AND(A.RSLT_CODE2 = '0'))
- THEN 'S'
- WHEN A.AGENT_CODE = '02' AND (A.RSLT_CODE = '0')
- THEN 'S'
- WHEN A.AGENT_CODE = '03' AND (A.RSLT_CODE = '100' OR A.RSLT_CODE = '101' OR A.RSLT_CODE = '110' OR A.RSLT_CODE = '800')
- THEN 'S'
- WHEN A.AGENT_CODE = '04' AND (A.RSLT_CODE = '4100' OR A.RSLT_CODE = '6600')
- THEN 'S'
- WHEN A.AGENT_CODE = '05' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
- THEN 'S'
- WHEN A.AGENT_CODE = '07' AND (A.RSLT_CODE = '6' OR A.RSLT_CODE = '1000')
- THEN 'S'
- WHEN A.AGENT_CODE = '08' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
- THEN 'S'
- WHEN A.AGENT_CODE = '09' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
- THEN 'S'
- WHEN (
- A.RSLT_CODE IS NULL
- AND A.RSLT_CODE2 IS NULL
- AND A.SENT_DATE IS NULL
- AND A.RSLT_DATE IS NULL
- )
- THEN 'W'
- ELSE 'F'
- END ) = 'S'
- )
- AS successCount
- /*성공건수*/
-
- FROM ( SELECT DATE_FORMAT(P.REQ_DATE, '%Y-%m-%d') AS REQ_DATE ,
- SUM(P.MSG_GROUP_CNT) AS MSG_GROUP_CNT ,
- P.MSG_GROUP_ID
- FROM MJ_MSG_GROUP_DATA P
- WHERE USER_ID NOT IN ('hftest',
- 'itntest',
- 'imotest',
- 'itntestBatch')
- AND P.RESERVE_C_YN = 'N'
- GROUP BY P.MSG_GROUP_ID
- )
- M
- )
- M2
- GROUP BY M2.regDate
- )aa
- on DUPLICATE KEY UPDATE
- send_cnt=aa.sendCount
- , success_cnt=aa.successCount
- , regist_pnttm=now()
-
+ FROM(
+ SELECT
+ M2.regDate
+ , SUM(M2.sendCount) AS sendCount
+ , SUM(M2.successCount) AS successCount
+ FROM(
+ SELECT
+ M.REQ_DATE AS regDate /*발송일*/
+ , IFNULL(M.MSG_GROUP_CNT, 0) AS sendCount /*발송건수*/
+ , M.aSendCount /*API 발송건수*/
+ , M.hSendCount /*홈페이지 발송건수*/
+ , MSG_GROUP_ID
+ , (SELECT
+ COUNT(0)
+ FROM
+ MJ_MSG_DATA A
+ WHERE 1=1
+ AND A.USER_ID NOT IN ('hftest','itntest','imotest','itntestBatch')
+ AND A.RESERVE_C_YN = 'N'
+ AND A.MSG_GROUP_ID = M.MSG_GROUP_ID
+ AND M.SEND_KIND = 'H'
+ AND (
+ CASE
+ WHEN A.AGENT_CODE = '01' AND (A.RSLT_CODE = '100' AND (A.RSLT_CODE2 = '0'))
+ THEN 'S'
+ WHEN A.AGENT_CODE = '02' AND (A.RSLT_CODE = '0')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '03' AND (A.RSLT_CODE = '100' OR A.RSLT_CODE = '101' OR A.RSLT_CODE = '110' OR A.RSLT_CODE = '800')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '04' AND (A.RSLT_CODE = '4100' OR A.RSLT_CODE = '6600')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '05' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '07' AND (A.RSLT_CODE = '6' OR A.RSLT_CODE = '1000')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '08' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '09' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
+ THEN 'S'
+ WHEN (A.RSLT_CODE IS NULL AND A.RSLT_CODE2 IS NULL AND A.SENT_DATE IS NULL AND A.RSLT_DATE IS NULL )
+ THEN 'W'
+ ELSE 'F'
+ END
+ ) = 'S'
+ ) AS hSuccessCount /*홈페이지 성공건수*/
+ , (SELECT
+ COUNT(0)
+ FROM
+ MJ_MSG_DATA A
+ WHERE 1=1
+ AND A.USER_ID NOT IN ('hftest','itntest','imotest','itntestBatch')
+ AND A.RESERVE_C_YN = 'N'
+ AND A.MSG_GROUP_ID = M.MSG_GROUP_ID
+ AND M.SEND_KIND = 'A'
+ AND (
+ CASE
+ WHEN A.AGENT_CODE = '01' AND (A.RSLT_CODE = '100' AND (A.RSLT_CODE2 = '0'))
+ THEN 'S'
+ WHEN A.AGENT_CODE = '02' AND (A.RSLT_CODE = '0')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '03' AND (A.RSLT_CODE = '100' OR A.RSLT_CODE = '101' OR A.RSLT_CODE = '110' OR A.RSLT_CODE = '800')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '04' AND (A.RSLT_CODE = '4100' OR A.RSLT_CODE = '6600')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '05' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '07' AND (A.RSLT_CODE = '6' OR A.RSLT_CODE = '1000')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '08' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
+ THEN 'S'
+ WHEN A.AGENT_CODE = '09' AND (A.RSLT_CODE = '1000' OR A.RSLT_CODE = '1001')
+ THEN 'S'
+ WHEN (A.RSLT_CODE IS NULL AND A.RSLT_CODE2 IS NULL AND A.SENT_DATE IS NULL AND A.RSLT_DATE IS NULL )
+ THEN 'W'
+ ELSE 'F'
+ END ) = 'S'
+ ) AS aSuccessCount /*API 성공건수*/
+ FROM(
+ SELECT
+ DATE_FORMAT(P.REQ_DATE, '%Y-%m-%d') AS REQ_DATE
+ , SUM(P.MSG_GROUP_CNT) AS MSG_GROUP_CNT
+ , P.MSG_GROUP_ID
+ , P.SEND_KIND
+ , IF(P.SEND_KIND = 'A', SUM(P.MSG_GROUP_CNT), 0) AS aSendCount
+ , IF(P.SEND_KIND = 'H', SUM(P.MSG_GROUP_CNT), 0) AS hSendCount
+ FROM
+ MJ_MSG_GROUP_DATA P
+ WHERE 1=1
+ AND USER_ID NOT IN ('hftest','itntest','imotest','itntestBatch')
+ AND P.RESERVE_C_YN = 'N'
+ GROUP BY
+ P.MSG_GROUP_ID
+ )M
+ )M2
+ GROUP BY M2.regDate
+ )aa
+ ON DUPLICATE KEY UPDATE
+ send_cnt =aa.hSendCount
+ , success_cnt =aa.hSuccessCount
+ , API_SEND_CNT =aa.aSendCount
+ , API_SUCCESS_CNT =aa.aSuccessCount
+ , regist_pnttm =now()
diff --git a/src/main/webapp/WEB-INF/jsp/uss/ion/msg/MsgDayChart_230125.jsp b/src/main/webapp/WEB-INF/jsp/uss/ion/msg/MsgDayChart_230125.jsp
index 231e8012..ea9f154e 100644
--- a/src/main/webapp/WEB-INF/jsp/uss/ion/msg/MsgDayChart_230125.jsp
+++ b/src/main/webapp/WEB-INF/jsp/uss/ion/msg/MsgDayChart_230125.jsp
@@ -11,14 +11,34 @@
response.setDateHeader("Expires",0);
if (request.getProtocol().equals("HTTP/1.1")) response.setHeader("Cache-Control", "no-cache");
%>
-
-
-
일별 문자발송건수 통계