초기소스

This commit is contained in:
jazz
2025-10-29 17:08:05 +09:00
parent e531aa9540
commit 439a379a02
7551 changed files with 1234427 additions and 3 deletions

View File

@@ -0,0 +1,205 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="ui" uri="http://www.winbit.kr/ctl/ui" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ page import="java.util.Date" %>
<%--
Class Name : MssageLgqySndngStatsR.jsp
Description : 메시지 대량 발송 내역 상세
Modification Information
수정일 수정자 수정내용
------- -------- ---------------------------
2024.04.17 이운산 최초 생성
--%>
<script>
$(document).ready(function () {
//생년별 클릭 통계
$("#birth-click").on("click", function () {
fn_open_modal('#birth-stats-popupDiv', '#birth-stats-popup',
"/mngr/ntcn/lgqymssage/selectMssageLgqySndngClickBirth",
{'srchSmsLgqySndngInnb' : '<c:out value="${ resultMap.boCtrlMap.smsLgqySndngInnb }"/>'}
);
})
//클릭자중 구매자
$("#ordr-click").on("click", function () {
fn_open_modal('#ordr-stats-popupDiv', '#ordr-stats-popup',
"/mngr/ntcn/lgqymssage/selectMssageLgqySndngClickOrdr",
{'srchSmsLgqySndngInnb' : '<c:out value="${ resultMap.boCtrlMap.smsLgqySndngInnb }"/>'}
);
})
})
</script>
<style>
td.notify {
text-align: center;
}
</style>
<div id="mssageLgqySndngStatsPopup" class="modal" style="max-width: 1024px;">
<div class="modal-header">
<h4>메시지 대량 발송 내역 보기 - 통계</h4>
</div>
<div class="modal-content">
<div class="table-wrapper">
<table class="table">
<caption>해당 테이블에 대한 설명</caption>
<colgroup>
<col style="width: 12%;">
<col style="width: 38%;">
<col style="width: 12%;">
<col style="width: 38%;">
</colgroup>
<tbody>
<tr>
<th>발송 번호</th>
<td><c:out value="${ resultMap.boCtrlMap.smsLgqySndngInnb }"/></td>
<th rowspan="4">발송내용</th>
<td rowspan="4">
<div class="sms-list-content">
<div class="sms-list-content__title">
<span><c:out value="${ resultMap.boCtrlMap.sndngSj }"/></span>
</div>
<div style="height: 280px; width: 500px;" class="sms-list-content__content">
<pre><c:out value="${ resultMap.boCtrlMap.sndngCn }"/></pre>
</div>
<c:if test="${!empty resultMap.boCtrlMap.linkUrl1}">
<div>
<p class="mt-10">
<span>LINK_URL1 : <a class="under-line blue-7"
href="<c:out value="${ resultMap.boCtrlMap.linkUrl1 }"/>"><c:out value="${ resultMap.boCtrlMap.linkUrl1 }"/></a></span>
</p>
<%-- <p class="mt-10">--%>
<%-- <span>바로가기 URL1 : <a class="under-line blue-7"--%>
<%-- href="">https://naver.com</a></span>--%>
<%-- </p>--%>
</div>
</c:if>
<c:if test="${!empty resultMap.boCtrlMap.linkUrl2}">
<div>
<p class="mt-10">
<span>LINK_URL2 : <a class="under-line blue-7"
href=""><c:out value="${ resultMap.boCtrlMap.linkUrl2 }"/></a></span>
</p>
<%-- <p class="mt-10">--%>
<%-- <span>바로가기 URL1 : <a class="under-line blue-7"--%>
<%-- href="">https://naver.com</a></span>--%>
<%-- </p>--%>
</div>
</c:if>
<c:if test="${!empty resultMap.boCtrlMap.linkUrl3}">
<div>
<p class="mt-10">
<span>LINK_URL3 : <a class="under-line blue-7"
href=""><c:out value="${ resultMap.boCtrlMap.linkUrl3 }"/></a></span>
</p>
<%-- <p class="mt-10">--%>
<%-- <span>바로가기 URL1 : <a class="under-line blue-7"--%>
<%-- href="">https://naver.com</a></span>--%>
<%-- </p>--%>
</div>
</c:if>
</div>
</td>
</tr>
<tr>
<th>발송 시간</th>
<td><c:out value="${ resultMap.boCtrlMap.sndngDt }"/></td>
</tr>
<tr>
<th>대상 건수</th>
<td><c:out value="${ resultMap.boCtrlMap.allCnt }"/>건 (성공 건수 : <c:out value="${ resultMap.boCtrlMap.succesCnt }"/>건)</td>
</tr>
<tr>
<th>예상 비용</th>
<td><c:out value="${ resultMap.boCtrlMap.succesCnt * 23}"/> 원 ( <c:out value="${ resultMap.boCtrlMap.succesCnt }"/> 건 * 23원)</td>
</tr>
<tr>
<td class="notify" colspan="4">
<div style="width:500px; margin:0 auto; border:1px solid blue; padding: 10px 0 10px 10px; ">
<span style="font-size:13px; color: blue; font-weight: bold;">* 통계 데이터 변동 안내 </span>
<div style="text-align: left;">
- SKT 통신사의 경우 수신자가 URL을 클릭하지 않아도 자동으로 유입되는 것이 확인 되어 <br>
&nbsp; SKT에서 접속하는 건은 통계 수치에서 제외하였습니다. ( 변경 일자 : 2021.07.13 )<br>
- 따라서 <span style="padding-left:5px; font-size:13px; color: blue; font-weight: bold;">기존 평균 40~50%였던 클릭율은 평균 4%~5%</span>로 변동되었습니다.
</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="table-wrapper">
<table class="table">
<caption>해당 테이블에 대한 설명</caption>
<%-- <colgroup>--%>
<%-- <col style="width: 15%;">--%>
<%-- <col style="width: 38%;">--%>
<%-- <col style="width: 12%;">--%>
<%-- <col style="width: 38%;">--%>
<%-- </colgroup>--%>
<tbody>
<tr>
<td>
<p>클릭 수 통계</p>
- 총 클릭 건 수 : ${resultMap.clickStat.totCnt} 건 / 클릭자 수 : ${resultMap.clickStat.clickCnt} 건
/ 클릭율 : <fmt:formatNumber value="${resultMap.clickStat.clickRate}" type="number" maxFractionDigits="0"/>%</td>
</tr>
<tr>
<td colspan="4"><p>문자 내용 클릭 건수별 클릭자 수</p>
<p>URL1 1번 클릭 : ${resultMap.urlClickStat.url1Cnt1} 명 (${resultMap.urlClickStat.url1Cnt1Rt}%)
/ 2번 클릭 : ${resultMap.urlClickStat.url1Cnt2} 명 (${resultMap.urlClickStat.url1Cnt2Rt}%)
/ 3번 이상 클릭 : ${resultMap.urlClickStat.url1Cnt3}명 (${resultMap.urlClickStat.url1Cnt3Rt}%)</p>
<p>URL2 1번 클릭 : ${resultMap.urlClickStat.url2Cnt1} 명 (${resultMap.urlClickStat.url2Cnt1Rt}%)
/ 2번 클릭 : ${resultMap.urlClickStat.url2Cnt2} 명 (${resultMap.urlClickStat.url2Cnt2Rt}%)
/ 3번 이상 클릭 : ${resultMap.urlClickStat.url2Cnt3}명 (${resultMap.urlClickStat.url2Cnt3Rt}%)</p>
<p>URL3 1번 클릭 : ${resultMap.urlClickStat.url3Cnt1} 명 (${resultMap.urlClickStat.url3Cnt1Rt}%)
/ 2번 클릭 : ${resultMap.urlClickStat.url3Cnt2} 명 (${resultMap.urlClickStat.url3Cnt2Rt}%)
/ 3번 이상 클릭 : ${resultMap.urlClickStat.url3Cnt3}명 (${resultMap.urlClickStat.url3Cnt3Rt}%)</p>
</td>
</tr>
<tr>
<td colspan="4">
<p>시간대별 클릭 통계</p>
<p>
<button class="btn gray xsm" id="birth-click">출생년도별 클릭 통계(자사몰 회원 기준)</button>
<button class="btn gray xsm" id="ordr-click">클릭자중 구매자수 통계(자사몰 회원 기준)</button>
</p>
</td>
</tr>
<tr>
<th>클릭 일자</th>
<th>Hour</th>
<th>URL1 클릭건 수</th>
<th>URL2 클릭건 수</th>
<th>URL3 클릭건 수</th>
<th>클릭자 수</th>
</tr>
<tr>
<td>누적합계</td>
<td>-</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<c:forEach items="${ resultMap.clickList}" var="click">
<tr>
<td>${click.day}</td>
<td>${click.hour}</td>
<td>${click.cnt1}</td>
<td>${click.cnt2}</td>
<td>${click.cnt3}</td>
<td>${click.pCnt}</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</div>
</div>