알림톡 전송목록에 금일/금월/금년 통계 추가
@618abcb37dfb241c797bf6a43bb85a8144c4f11a
--- src/main/java/itn/let/kakao/admin/kakaoAt/service/MjonKakaoATService.java
+++ src/main/java/itn/let/kakao/admin/kakaoAt/service/MjonKakaoATService.java
... | ... | @@ -18,6 +18,9 @@ |
| 18 | 18 |
//알림톡 전송내역 상세 |
| 19 | 19 |
KakaoVO selectMjonKakaoATVO(KakaoVO mjonKakaoATVO) throws Exception; |
| 20 | 20 |
|
| 21 |
+ // 알림톡 금일/금월/금년 통계 |
|
| 22 |
+ KakaoVO selectMjonKakaoAtThisSum(KakaoVO mjonKakaoATVO) throws Exception; |
|
| 23 |
+ |
|
| 21 | 24 |
//알림톡 예약 발송 리스트 |
| 22 | 25 |
List<KakaoVO> selectReserveMjonKakaoATGroupList(KakaoVO searchVO) throws Exception; |
| 23 | 26 |
|
--- src/main/java/itn/let/kakao/admin/kakaoAt/service/impl/MjonKakaoATDAO.java
+++ src/main/java/itn/let/kakao/admin/kakaoAt/service/impl/MjonKakaoATDAO.java
... | ... | @@ -31,6 +31,11 @@ |
| 31 | 31 |
return (KakaoVO) select("mjonKakaoATDAO.selectMjonKakaoATVO", p_mjonKakaoATVO);
|
| 32 | 32 |
} |
| 33 | 33 |
|
| 34 |
+ // 알림톡 금일/금월/금년 통계 |
|
| 35 |
+ public KakaoVO selectMjonKakaoAtThisSum(KakaoVO p_mjonKakaoATVO) throws Exception{
|
|
| 36 |
+ return (KakaoVO) select("mjonKakaoATDAO.selectMjonKakaoAtThisSum", p_mjonKakaoATVO);
|
|
| 37 |
+ } |
|
| 38 |
+ |
|
| 34 | 39 |
@SuppressWarnings("unchecked")
|
| 35 | 40 |
public List<KakaoVO> selectReserveMjonKakaoATGroupList(KakaoVO p_mjonKakaoATVO) throws Exception{
|
| 36 | 41 |
return (List<KakaoVO>)list("mjonKakaoATDAO.selectReserveMjonKakaoATGroupList", p_mjonKakaoATVO);
|
--- src/main/java/itn/let/kakao/admin/kakaoAt/service/impl/MjonKakaoATServiceImpl.java
+++ src/main/java/itn/let/kakao/admin/kakaoAt/service/impl/MjonKakaoATServiceImpl.java
... | ... | @@ -125,6 +125,16 @@ |
| 125 | 125 |
return result; |
| 126 | 126 |
} |
| 127 | 127 |
|
| 128 |
+ // 알림톡 금일/금월/금년 통계 |
|
| 129 |
+ @Override |
|
| 130 |
+ public KakaoVO selectMjonKakaoAtThisSum(KakaoVO p_mjonKakaoATVO) throws Exception {
|
|
| 131 |
+ KakaoVO result = new KakaoVO(); |
|
| 132 |
+ |
|
| 133 |
+ result = mjonKakaoATDAO.selectMjonKakaoAtThisSum(p_mjonKakaoATVO); |
|
| 134 |
+ |
|
| 135 |
+ return result; |
|
| 136 |
+ } |
|
| 137 |
+ |
|
| 128 | 138 |
@Override |
| 129 | 139 |
public List<KakaoVO> selectReserveMjonKakaoATGroupList(KakaoVO p_mjonKakaoATVO) throws Exception {
|
| 130 | 140 |
return mjonKakaoATDAO.selectReserveMjonKakaoATGroupList(p_mjonKakaoATVO); |
--- src/main/java/itn/let/kakao/admin/kakaoAt/web/MjonKakaoATController.java
+++ src/main/java/itn/let/kakao/admin/kakaoAt/web/MjonKakaoATController.java
... | ... | @@ -13,6 +13,7 @@ |
| 13 | 13 |
import org.springframework.web.bind.annotation.ModelAttribute; |
| 14 | 14 |
import org.springframework.web.bind.annotation.RequestMapping; |
| 15 | 15 |
import org.springframework.web.servlet.HandlerMapping; |
| 16 |
+import org.springframework.web.servlet.ModelAndView; |
|
| 16 | 17 |
|
| 17 | 18 |
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; |
| 18 | 19 |
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo; |
... | ... | @@ -262,6 +263,33 @@ |
| 262 | 263 |
|
| 263 | 264 |
} |
| 264 | 265 |
|
| 266 |
+ // 알림톡 금일/금월/금년 통계 |
|
| 267 |
+ @RequestMapping(value = "/uss/umt/user/selectMjonKakaoAtThisSumAjax.do") |
|
| 268 |
+ public ModelAndView DashBoardAdminLogAjax( |
|
| 269 |
+ @ModelAttribute("kakaoVO") KakaoVO kakaoVO) throws Exception {
|
|
| 270 |
+ |
|
| 271 |
+ ModelAndView modelAndView = new ModelAndView(); |
|
| 272 |
+ modelAndView.setViewName("jsonView");
|
|
| 273 |
+ |
|
| 274 |
+ boolean isSuccess = true; |
|
| 275 |
+ String msg = ""; |
|
| 276 |
+ KakaoVO result = null; |
|
| 277 |
+ |
|
| 278 |
+ try {
|
|
| 279 |
+ result = mjonKakaoATService.selectMjonKakaoAtThisSum(kakaoVO); |
|
| 280 |
+ } |
|
| 281 |
+ catch(Exception e) {
|
|
| 282 |
+ isSuccess = false; |
|
| 283 |
+ msg = e.getMessage(); |
|
| 284 |
+ } |
|
| 285 |
+ |
|
| 286 |
+ modelAndView.addObject("result", result);
|
|
| 287 |
+ modelAndView.addObject("isSuccess", isSuccess);
|
|
| 288 |
+ modelAndView.addObject("msg", msg);
|
|
| 289 |
+ |
|
| 290 |
+ return modelAndView; |
|
| 291 |
+ } |
|
| 292 |
+ |
|
| 265 | 293 |
/** |
| 266 | 294 |
* 알림톡 상세 전송 리스트 |
| 267 | 295 |
* @param searchVO |
--- src/main/java/itn/let/kakao/kakaoComm/KakaoVO.java
+++ src/main/java/itn/let/kakao/kakaoComm/KakaoVO.java
... | ... | @@ -238,6 +238,61 @@ |
| 238 | 238 |
private String imageTitle; //친구톡 이미지 제목 |
| 239 | 239 |
private String imageLink; //친구톡 이미지 클릭시 링크 주소 |
| 240 | 240 |
private String jsonText; //json 파일 생성시 내용 저장(혹시 몰라서 내용도 별도로 저장함) |
| 241 |
+ |
|
| 242 |
+ private String successDay; |
|
| 243 |
+ private String successMonth; |
|
| 244 |
+ private String successYear; |
|
| 245 |
+ private String successCntDay; |
|
| 246 |
+ private String successCntMonth; |
|
| 247 |
+ private String successCntYear; |
|
| 248 |
+ |
|
| 249 |
+ public String getSuccessDay() {
|
|
| 250 |
+ return successDay; |
|
| 251 |
+ } |
|
| 252 |
+ |
|
| 253 |
+ public void setSuccessDay(String successDay) {
|
|
| 254 |
+ this.successDay = successDay; |
|
| 255 |
+ } |
|
| 256 |
+ |
|
| 257 |
+ public String getSuccessMonth() {
|
|
| 258 |
+ return successMonth; |
|
| 259 |
+ } |
|
| 260 |
+ |
|
| 261 |
+ public void setSuccessMonth(String successMonth) {
|
|
| 262 |
+ this.successMonth = successMonth; |
|
| 263 |
+ } |
|
| 264 |
+ |
|
| 265 |
+ public String getSuccessYear() {
|
|
| 266 |
+ return successYear; |
|
| 267 |
+ } |
|
| 268 |
+ |
|
| 269 |
+ public void setSuccessYear(String successYear) {
|
|
| 270 |
+ this.successYear = successYear; |
|
| 271 |
+ } |
|
| 272 |
+ |
|
| 273 |
+ public String getSuccessCntDay() {
|
|
| 274 |
+ return successCntDay; |
|
| 275 |
+ } |
|
| 276 |
+ |
|
| 277 |
+ public void setSuccessCntDay(String successCntDay) {
|
|
| 278 |
+ this.successCntDay = successCntDay; |
|
| 279 |
+ } |
|
| 280 |
+ |
|
| 281 |
+ public String getSuccessCntMonth() {
|
|
| 282 |
+ return successCntMonth; |
|
| 283 |
+ } |
|
| 284 |
+ |
|
| 285 |
+ public void setSuccessCntMonth(String successCntMonth) {
|
|
| 286 |
+ this.successCntMonth = successCntMonth; |
|
| 287 |
+ } |
|
| 288 |
+ |
|
| 289 |
+ public String getSuccessCntYear() {
|
|
| 290 |
+ return successCntYear; |
|
| 291 |
+ } |
|
| 292 |
+ |
|
| 293 |
+ public void setSuccessCntYear(String successCntYear) {
|
|
| 294 |
+ this.successCntYear = successCntYear; |
|
| 295 |
+ } |
|
| 241 | 296 |
|
| 242 | 297 |
public static long getSerialversionuid() {
|
| 243 | 298 |
return serialVersionUID; |
--- src/main/resources/egovframework/sqlmap/let/kakao/MjonKakaoATData_SQL_mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/kakao/MjonKakaoATData_SQL_mysql.xml
... | ... | @@ -1043,6 +1043,47 @@ |
| 1043 | 1043 |
|
| 1044 | 1044 |
</select> |
| 1045 | 1045 |
|
| 1046 |
+ <!-- 알림톡 금일/금월/금년 통계 --> |
|
| 1047 |
+ <select id="mjonKakaoATDAO.selectMjonKakaoAtThisSum" parameterClass="kakaoVO" resultClass="kakaoVO"> |
|
| 1048 |
+ <![CDATA[ |
|
| 1049 |
+ SELECT |
|
| 1050 |
+ DATE_FORMAT(NOW(), '%m-%d') AS successDay |
|
| 1051 |
+ , DATE_FORMAT(NOW(), '%c') AS successMonth |
|
| 1052 |
+ , DATE_FORMAT(NOW(), '%Y') AS successYear |
|
| 1053 |
+ , (SELECT |
|
| 1054 |
+ FORMAT(COUNT(0), 0) |
|
| 1055 |
+ FROM MJ_MSG_DATA C |
|
| 1056 |
+ WHERE |
|
| 1057 |
+ C.RESERVE_C_YN = 'N' |
|
| 1058 |
+ AND C.RSLT_CODE = '7000' |
|
| 1059 |
+ AND C.MSG_TYPE = '8' |
|
| 1060 |
+ AND C.SENT_DATE >= DATE_FORMAT(NOW(), '%Y-%m-%d') |
|
| 1061 |
+ AND C.SENT_DATE < DATE_FORMAT(DATE_ADD(NOW(), INTERVAL 1 DAY), '%Y-%m-%d') |
|
| 1062 |
+ ) successCntDay |
|
| 1063 |
+ , (SELECT |
|
| 1064 |
+ FORMAT(COUNT(0), 0) |
|
| 1065 |
+ FROM MJ_MSG_DATA C |
|
| 1066 |
+ WHERE |
|
| 1067 |
+ C.RESERVE_C_YN = 'N' |
|
| 1068 |
+ AND C.RSLT_CODE = '7000' |
|
| 1069 |
+ AND C.MSG_TYPE = '8' |
|
| 1070 |
+ AND C.SENT_DATE >= CONCAT(DATE_FORMAT(NOW(), '%Y-%m'), '-01') |
|
| 1071 |
+ AND C.SENT_DATE < DATE_FORMAT(DATE_ADD(NOW(), INTERVAL 1 DAY), '%Y-%m-%d') |
|
| 1072 |
+ ) successCntMonth |
|
| 1073 |
+ , (SELECT |
|
| 1074 |
+ FORMAT(COUNT(0), 0) |
|
| 1075 |
+ FROM MJ_MSG_DATA C |
|
| 1076 |
+ WHERE |
|
| 1077 |
+ C.RESERVE_C_YN = 'N' |
|
| 1078 |
+ AND C.RSLT_CODE = '7000' |
|
| 1079 |
+ AND C.MSG_TYPE = '8' |
|
| 1080 |
+ AND C.SENT_DATE >= CONCAT(DATE_FORMAT(NOW(), '%Y'), '-01-01') |
|
| 1081 |
+ AND C.SENT_DATE < DATE_FORMAT(DATE_ADD(NOW(), INTERVAL 1 DAY), '%Y-%m-%d') |
|
| 1082 |
+ ) successCntYear |
|
| 1083 |
+ FROM DUAL |
|
| 1084 |
+ ]]> |
|
| 1085 |
+ </select> |
|
| 1086 |
+ |
|
| 1046 | 1087 |
<!-- 알림톡 예약 발송 리스트 --> |
| 1047 | 1088 |
<select id="mjonKakaoATDAO.selectReserveMjonKakaoATGroupList" parameterClass="kakaoVO" resultClass="kakaoVO"> |
| 1048 | 1089 |
/* mjonKakaoATDAO.selectMjonKakaoATGroupList - 알림톡 예약조회 */ |
--- src/main/webapp/WEB-INF/jsp/uss/ion/kakaoat/SendKakaoATList.jsp
+++ src/main/webapp/WEB-INF/jsp/uss/ion/kakaoat/SendKakaoATList.jsp
... | ... | @@ -36,6 +36,44 @@ |
| 36 | 36 |
<script type="text/javascript" src="<c:url value='/js/EgovCalPopup.js'/>"></script> |
| 37 | 37 |
<script type="text/javaScript" language="javascript"> |
| 38 | 38 |
|
| 39 |
+$(document).ready(function(){
|
|
| 40 |
+ |
|
| 41 |
+ // 알림톡 금일/금월/금년 통계 |
|
| 42 |
+ getMjonKakaoAtThisSum(); |
|
| 43 |
+ |
|
| 44 |
+}); |
|
| 45 |
+ |
|
| 46 |
+// 알림톡 금일/금월/금년 통계 |
|
| 47 |
+function getMjonKakaoAtThisSum() {
|
|
| 48 |
+ $("#mjonKakaoAtThisSumArea").html("");
|
|
| 49 |
+ |
|
| 50 |
+ $.ajax({
|
|
| 51 |
+ type: "POST", |
|
| 52 |
+ url: "/uss/umt/user/selectMjonKakaoAtThisSumAjax.do", |
|
| 53 |
+ data: {},
|
|
| 54 |
+ dataType:'json', |
|
| 55 |
+ async: true, |
|
| 56 |
+ success: function (data) {
|
|
| 57 |
+ var jsonInfo = data.result; |
|
| 58 |
+ if (data.isSuccess) {
|
|
| 59 |
+ try {
|
|
| 60 |
+ var sHtml = ""; |
|
| 61 |
+ sHtml = " (" + jsonInfo.successDay + " : " + jsonInfo.successCntDay + "건 / " + jsonInfo.successMonth + "월 누적 : " + jsonInfo.successCntMonth + "건 / " + jsonInfo.successYear + "년 누적 : " + jsonInfo.successCntYear + "건)";
|
|
| 62 |
+ $("#mjonKakaoAtThisSumArea").html(sHtml);
|
|
| 63 |
+ } catch (error) {
|
|
| 64 |
+ console.error(error); |
|
| 65 |
+ } |
|
| 66 |
+ } |
|
| 67 |
+ else {
|
|
| 68 |
+ //alert("Msg : " + data.msg);
|
|
| 69 |
+ } |
|
| 70 |
+ }, |
|
| 71 |
+ error: function (e) {
|
|
| 72 |
+ //alert("ERROR : " + JSON.stringify(e));
|
|
| 73 |
+ } |
|
| 74 |
+ }); |
|
| 75 |
+} |
|
| 76 |
+ |
|
| 39 | 77 |
function fn_search(){
|
| 40 | 78 |
var searchKeyword = $('input[name=searchKeyword]').val();
|
| 41 | 79 |
$('input[name=searchKeyword]').val(searchKeyword.replace(/(\s*)/g, ""));
|
... | ... | @@ -433,7 +471,8 @@ |
| 433 | 471 |
|
| 434 | 472 |
</div> |
| 435 | 473 |
<div class="listTop"> |
| 436 |
- <p class="tType5">총 <span class="tType4 c_456ded fwBold"><fmt:formatNumber value="${paginationInfo.totalRecordCount}" pattern="#,###" /></span>건</p>
|
|
| 474 |
+ <p class="tType5">총 <span class="tType4 c_456ded fwBold"><fmt:formatNumber value="${paginationInfo.totalRecordCount}" pattern="#,###" /></span>건<span id="mjonKakaoAtThisSumArea"></span>
|
|
| 475 |
+ </p> |
|
| 437 | 476 |
<div class="rightWrap"> |
| 438 | 477 |
<!-- <input type="button" class="excelBtn" onclick="javascript:sendMsgExcelDownload();"> --> |
| 439 | 478 |
<!-- <input type="button" class="printBtn"> --> |
Add a comment
Delete comment
Once you delete this comment, you won't be able to recover it. Are you sure you want to delete this comment?