itn 2023-07-31
알림톡 전송목록에 금일/금월/금년 통계 추가
@618abcb37dfb241c797bf6a43bb85a8144c4f11a
src/main/java/itn/let/kakao/admin/kakaoAt/service/MjonKakaoATService.java
--- 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 @@
 	//알림톡 전송내역 상세
 	KakaoVO selectMjonKakaoATVO(KakaoVO mjonKakaoATVO) throws Exception;
 	
+	// 알림톡 금일/금월/금년 통계
+	KakaoVO selectMjonKakaoAtThisSum(KakaoVO mjonKakaoATVO) throws Exception;
+	
 	//알림톡 예약 발송 리스트
 	List<KakaoVO> selectReserveMjonKakaoATGroupList(KakaoVO searchVO)  throws Exception;
 	
src/main/java/itn/let/kakao/admin/kakaoAt/service/impl/MjonKakaoATDAO.java
--- 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 @@
 		return (KakaoVO) select("mjonKakaoATDAO.selectMjonKakaoATVO", p_mjonKakaoATVO);
 	}
 	
+	// 알림톡 금일/금월/금년 통계
+	public KakaoVO selectMjonKakaoAtThisSum(KakaoVO p_mjonKakaoATVO) throws Exception{
+		return (KakaoVO) select("mjonKakaoATDAO.selectMjonKakaoAtThisSum", p_mjonKakaoATVO);
+	}
+	
 	@SuppressWarnings("unchecked")
 	public List<KakaoVO> selectReserveMjonKakaoATGroupList(KakaoVO p_mjonKakaoATVO) throws Exception{
 		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
+++ src/main/java/itn/let/kakao/admin/kakaoAt/service/impl/MjonKakaoATServiceImpl.java
@@ -125,6 +125,16 @@
 		return result;
 	}
 	
+	// 알림톡 금일/금월/금년 통계
+	@Override
+	public KakaoVO selectMjonKakaoAtThisSum(KakaoVO p_mjonKakaoATVO) throws Exception {
+		KakaoVO result = new KakaoVO();
+		
+		result = mjonKakaoATDAO.selectMjonKakaoAtThisSum(p_mjonKakaoATVO);
+		
+		return result;
+	}
+	
 	@Override
 	public List<KakaoVO> selectReserveMjonKakaoATGroupList(KakaoVO p_mjonKakaoATVO) throws Exception {
 		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
+++ src/main/java/itn/let/kakao/admin/kakaoAt/web/MjonKakaoATController.java
@@ -13,6 +13,7 @@
 import org.springframework.web.bind.annotation.ModelAttribute;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.servlet.HandlerMapping;
+import org.springframework.web.servlet.ModelAndView;
 
 import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
 import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
@@ -262,6 +263,33 @@
         
 	}
 	
+	// 알림톡 금일/금월/금년 통계
+	@RequestMapping(value = "/uss/umt/user/selectMjonKakaoAtThisSumAjax.do")
+	public ModelAndView DashBoardAdminLogAjax(
+			@ModelAttribute("kakaoVO") KakaoVO kakaoVO) throws Exception {
+
+		ModelAndView modelAndView = new ModelAndView();
+		modelAndView.setViewName("jsonView");
+
+		boolean isSuccess = true;
+		String msg = "";
+		KakaoVO result = null;
+		
+        try {
+        	result  = mjonKakaoATService.selectMjonKakaoAtThisSum(kakaoVO);
+		}
+		catch(Exception e) {
+			isSuccess = false;
+			msg = e.getMessage();
+		}		
+
+        modelAndView.addObject("result", result);
+		modelAndView.addObject("isSuccess", isSuccess);
+		modelAndView.addObject("msg", msg);
+		
+		return modelAndView;
+	}		
+	
 	 /**
      * 알림톡 상세 전송 리스트 
      * @param searchVO
src/main/java/itn/let/kakao/kakaoComm/KakaoVO.java
--- src/main/java/itn/let/kakao/kakaoComm/KakaoVO.java
+++ src/main/java/itn/let/kakao/kakaoComm/KakaoVO.java
@@ -238,6 +238,61 @@
 	private String imageTitle;						//친구톡 이미지 제목
 	private String imageLink;						//친구톡 이미지 클릭시 링크 주소
 	private String jsonText;						//json 파일 생성시 내용 저장(혹시 몰라서 내용도 별도로 저장함)
+
+	private String successDay;
+	private String successMonth;
+	private String successYear;		
+	private String successCntDay;
+	private String successCntMonth;
+	private String successCntYear;
+
+	public String getSuccessDay() {
+		return successDay;
+	}
+
+	public void setSuccessDay(String successDay) {
+		this.successDay = successDay;
+	}
+
+	public String getSuccessMonth() {
+		return successMonth;
+	}
+
+	public void setSuccessMonth(String successMonth) {
+		this.successMonth = successMonth;
+	}
+
+	public String getSuccessYear() {
+		return successYear;
+	}
+
+	public void setSuccessYear(String successYear) {
+		this.successYear = successYear;
+	}
+	
+	public String getSuccessCntDay() {
+		return successCntDay;
+	}
+
+	public void setSuccessCntDay(String successCntDay) {
+		this.successCntDay = successCntDay;
+	}
+
+	public String getSuccessCntMonth() {
+		return successCntMonth;
+	}
+
+	public void setSuccessCntMonth(String successCntMonth) {
+		this.successCntMonth = successCntMonth;
+	}
+
+	public String getSuccessCntYear() {
+		return successCntYear;
+	}
+
+	public void setSuccessCntYear(String successCntYear) {
+		this.successCntYear = successCntYear;
+	}
 	
 	public static long getSerialversionuid() {
 		return serialVersionUID;
src/main/resources/egovframework/sqlmap/let/kakao/MjonKakaoATData_SQL_mysql.xml
--- 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 @@
 			
 	</select>		
 	
+	<!-- 알림톡 금일/금월/금년 통계 -->
+	<select id="mjonKakaoATDAO.selectMjonKakaoAtThisSum" parameterClass="kakaoVO" resultClass="kakaoVO">
+	<![CDATA[
+		SELECT
+			DATE_FORMAT(NOW(), '%m-%d') AS successDay
+			, DATE_FORMAT(NOW(), '%c') AS successMonth
+			, DATE_FORMAT(NOW(), '%Y') AS successYear 		
+			, (SELECT 
+				FORMAT(COUNT(0), 0)
+			FROM MJ_MSG_DATA C
+			WHERE
+				C.RESERVE_C_YN = 'N'
+				AND C.RSLT_CODE = '7000'
+				AND C.MSG_TYPE = '8'
+				AND C.SENT_DATE >= DATE_FORMAT(NOW(), '%Y-%m-%d')
+				AND C.SENT_DATE < DATE_FORMAT(DATE_ADD(NOW(), INTERVAL 1 DAY), '%Y-%m-%d')
+			) successCntDay
+			, (SELECT 
+				FORMAT(COUNT(0), 0)
+			FROM MJ_MSG_DATA C
+			WHERE
+				C.RESERVE_C_YN = 'N'
+				AND C.RSLT_CODE = '7000'
+				AND C.MSG_TYPE = '8'
+				AND C.SENT_DATE >= CONCAT(DATE_FORMAT(NOW(), '%Y-%m'), '-01')
+				AND C.SENT_DATE < DATE_FORMAT(DATE_ADD(NOW(), INTERVAL 1 DAY), '%Y-%m-%d')
+			) successCntMonth
+			, (SELECT 
+				FORMAT(COUNT(0), 0)
+		FROM MJ_MSG_DATA C
+			WHERE
+				C.RESERVE_C_YN = 'N'
+				AND C.RSLT_CODE = '7000'
+				AND C.MSG_TYPE = '8'
+				AND C.SENT_DATE >= CONCAT(DATE_FORMAT(NOW(), '%Y'), '-01-01')
+				AND C.SENT_DATE < DATE_FORMAT(DATE_ADD(NOW(), INTERVAL 1 DAY), '%Y-%m-%d')
+			) successCntYear
+		FROM DUAL
+	]]>
+	</select>		
+		
 	<!-- 알림톡 예약 발송 리스트 -->
 	<select id="mjonKakaoATDAO.selectReserveMjonKakaoATGroupList" parameterClass="kakaoVO" resultClass="kakaoVO">
 	/*	mjonKakaoATDAO.selectMjonKakaoATGroupList - 알림톡 예약조회	*/
src/main/webapp/WEB-INF/jsp/uss/ion/kakaoat/SendKakaoATList.jsp
--- 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 @@
 <script type="text/javascript" src="<c:url value='/js/EgovCalPopup.js'/>"></script>
 <script type="text/javaScript" language="javascript">
 
+$(document).ready(function(){
+
+	// 알림톡 금일/금월/금년 통계
+	getMjonKakaoAtThisSum();
+		
+});
+
+// 알림톡 금일/금월/금년 통계
+function getMjonKakaoAtThisSum() {
+	$("#mjonKakaoAtThisSumArea").html("");
+	
+	$.ajax({
+        type: "POST",
+        url: "/uss/umt/user/selectMjonKakaoAtThisSumAjax.do",
+        data: {},
+        dataType:'json',
+        async: true,
+        success: function (data) {
+        	var jsonInfo = data.result;
+			if (data.isSuccess) {
+				try {
+					var sHtml = "";
+					sHtml = "&nbsp;&nbsp;(" + jsonInfo.successDay + " : " + jsonInfo.successCntDay + "건 / " + jsonInfo.successMonth + "월 누적 : " + jsonInfo.successCntMonth + "건 / " + jsonInfo.successYear + "년 누적 : " + jsonInfo.successCntYear + "건)";
+					$("#mjonKakaoAtThisSumArea").html(sHtml);
+				} catch (error) {
+					  console.error(error);
+				}					
+			} 
+			else {
+				//alert("Msg : " + data.msg);
+			}
+		},
+        error: function (e) { 
+        	//alert("ERROR : " + JSON.stringify(e)); 
+        }
+    });	
+}	
+
 function fn_search(){
 	var searchKeyword = $('input[name=searchKeyword]').val();
 	$('input[name=searchKeyword]').val(searchKeyword.replace(/(\s*)/g, ""));
@@ -433,7 +471,8 @@
 
 			</div>
 			<div class="listTop">
-				<p class="tType5">총 <span class="tType4 c_456ded fwBold"><fmt:formatNumber value="${paginationInfo.totalRecordCount}" pattern="#,###" /></span>건</p>
+				<p class="tType5">총 <span class="tType4 c_456ded fwBold"><fmt:formatNumber value="${paginationInfo.totalRecordCount}" pattern="#,###" /></span>건<span id="mjonKakaoAtThisSumArea"></span>				
+				</p>
 				<div class="rightWrap">
 <!-- 					<input type="button" class="excelBtn" onclick="javascript:sendMsgExcelDownload();"> -->
 					<!-- <input type="button" class="printBtn"> -->
Add a comment
List