문자전송내역 발송승인, 승인취소 기능 작업중
This commit is contained in:
parent
82c908e1d1
commit
a6ea2795ff
@ -261,6 +261,11 @@ public class MjonMsgController {
|
||||
paginationInfo.setTotalRecordCount(resultList.size() > 0 ? ((MjonMsgVO)resultList.get(0)).getTotCnt() : 0);
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
|
||||
// 로그인VO에서 사용자 정보 가져오기
|
||||
LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
|
||||
String admId = loginVO == null ? "" : loginVO.getId();
|
||||
model.addAttribute("admId", admId);
|
||||
|
||||
return "/uss/ion/msg/SendMsgList";
|
||||
|
||||
}
|
||||
|
||||
@ -27,6 +27,8 @@
|
||||
response.setDateHeader("Expires",0);
|
||||
if (request.getProtocol().equals("HTTP/1.1")) response.setHeader("Cache-Control", "no-cache");
|
||||
%>
|
||||
<jsp:useBean id="now" class="java.util.Date" />
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
@ -394,6 +396,158 @@ function getDelayMsgData() {
|
||||
linkPage(1);
|
||||
}
|
||||
|
||||
|
||||
//즉시 발송
|
||||
function fnMsgDelaySendArray(msgGroupId, userId) {
|
||||
var msg = "";
|
||||
var url = "/uss/ion/msg/updateMsgDelaySendRealTimeDataAjax.do";
|
||||
var json = {"msgGroupId" : msgGroupId, "userId" : userId};
|
||||
|
||||
if(confirm("해당 지연 문자를 즉시 발송 하시겠습니까?")){
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: url,
|
||||
data: json,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
success: function (data, status) {
|
||||
var result = data.isStatus;
|
||||
var msg = data.msg;
|
||||
|
||||
if (result == 'loginFail') {
|
||||
alert(msg);
|
||||
location.reload();
|
||||
}else if(result == 'dateFail'){
|
||||
alert(msg);
|
||||
location.reload();
|
||||
}else if(result == 'fail'){
|
||||
alert(msg);
|
||||
return false;
|
||||
}else{
|
||||
alert(msg);
|
||||
location.reload();
|
||||
}
|
||||
},
|
||||
beforeSend: function () {
|
||||
//로딩창 show
|
||||
$('.loading_layer').addClass('active');
|
||||
},
|
||||
complete: function () {
|
||||
//로딩창 hide
|
||||
$('.loading_layer').removeClass('active');
|
||||
},
|
||||
error: function (e) {
|
||||
alert("에러가 발생했습니다."); console.log("ERROR : ", e);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// 발송 취소
|
||||
function fnMsgDelayCancelArray(msgGroupId, userId) {
|
||||
var msg = "";
|
||||
var url = "/uss/ion/msg/deleteMsgDelaySendCancelDataAjax.do";
|
||||
var json = {"msgGroupId" : msgGroupId, "userId" : userId};
|
||||
|
||||
if(confirm("해당 지연 문자를 발송 취소 하시겠습니까?")){
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: url,
|
||||
data: json,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
success: function (data, status) {
|
||||
var result = data.isStatus;
|
||||
var msg = data.msg;
|
||||
|
||||
if (result == 'loginFail') {
|
||||
alert(msg);
|
||||
location.reload();
|
||||
}else if(result == 'dateFail'){
|
||||
|
||||
alert(msg);
|
||||
location.reload();
|
||||
|
||||
}else if(result == 'fail'){
|
||||
alert(msg);
|
||||
return false;
|
||||
}else{
|
||||
alert(msg);
|
||||
|
||||
//회원 이용정지 처리하기
|
||||
fn_MsgDelayCancel_after(userId);
|
||||
}
|
||||
},
|
||||
beforeSend: function () {
|
||||
//로딩창 show
|
||||
$('.loading_layer').addClass('active');
|
||||
},
|
||||
complete: function () {
|
||||
//로딩창 hide
|
||||
$('.loading_layer').removeClass('active');
|
||||
},
|
||||
error: function (e) {
|
||||
alert("에러가 발생했습니다."); console.log("ERROR : ", e);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
//문자 지연 내역 발송 취소를 통한 회원 이용정지시
|
||||
function fn_MsgDelayCancel_after(userId){
|
||||
var mberSttus = $('#mberSttus').val();
|
||||
mberSttus = "B"; //이용자 정지 처리
|
||||
var smiMemo = "관리자가 최근 문자 지연 내역에서 스미싱의심으로 판단하여 발송취소를 한 후 이용자 정지 처리함";
|
||||
|
||||
fn_SpamMberUpdt(userId, mberSttus, smiMemo, "이용자 정지를 진행하시겠습니까?");
|
||||
}
|
||||
|
||||
//회원 이용정지 처리
|
||||
function fn_SpamMberUpdt(userId, p_mberSttus, p_smiMemo, p_confirm_msg) {
|
||||
url = "/uss/umt/user/EgovGnrlUpdateUserMsttusAjax.do";
|
||||
var json = {"mberId" : userId, "mberSttus" : p_mberSttus, "smiMemo" : p_smiMemo};
|
||||
if(confirm(p_confirm_msg)){
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: url,
|
||||
data: json,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
success: function (returnData, status) {
|
||||
if(status == 'success'){ // status 확인 필요한가. 석세스 안뜨면 에러 가지 않나
|
||||
if("fail"==returnData.result){
|
||||
alert(returnData.message);
|
||||
return false;
|
||||
}else if("loginFail"==returnData.result){
|
||||
alert(returnData.message);
|
||||
return false;
|
||||
}else{ //이용자 상태 변경 성공시 처리
|
||||
alert(returnData.message);
|
||||
location.reload();
|
||||
}
|
||||
|
||||
} else if(status== 'fail'){
|
||||
alert("이용자 상태 변경에 실패하였습니다.");
|
||||
}
|
||||
},
|
||||
beforeSend: function () {
|
||||
//로딩창 show
|
||||
$('.loading_layer').addClass('active');
|
||||
},
|
||||
complete: function () {
|
||||
//로딩창 hide
|
||||
$('.loading_layer').removeClass('active');
|
||||
},
|
||||
error: function (e) { alert("이용자 상태 변경에 실패하였습니다."); console.log("ERROR : ", e); }
|
||||
});
|
||||
}
|
||||
else {
|
||||
location.reload();
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
<style>
|
||||
.calBtn{
|
||||
@ -414,6 +568,10 @@ function getDelayMsgData() {
|
||||
.pageCont .tbType1 tbody tr td.sms_detail .sms_detail_hover {overflow:hidden;text-overflow:ellipsis;display:none;word-wrap:break-word;-webkit-line-clamp:20;-webkit-box-orient:vertical;position:absolute;left:-50px;top:45px;width:calc(100% + 150px);padding:15px;line-height:20px;white-space:normal;border:1px solid #e5e5e5;background:#fff;border-radius:5px;box-sizing:border-box;box-shadow:0px 3px 10px 0px rgb(0 0 0 / 0.2);z-index:1;font-size:14px;text-align:left;}
|
||||
.pageCont .tbType1 tbody tr td.sms_detail .sms_detail_hover:after {content:'';position:absolute;left:0;bottom:0;width:100%;height:10px;background:#fff;border-radius:0 0 5px 5px;}
|
||||
.pageCont .tbType1 tbody tr td.sms_detail:hover .sms_detail_hover {display:-webkit-box;}
|
||||
|
||||
.pageCont .tbType1 tbody tr td .fillBlue {margin-top:5px;height:25px;padding:3 3px;font-size:13px;text-align:center;color:#ffffff !important;background:#456ded;border-radius:3px;}
|
||||
.pageCont .tbType1 tbody tr td .fillRed {margin-top:5px;height:25px;padding:3 3px;font-size:13px;text-align:center;color:#ffffff !important;background:#e40000;border-radius:3px;}
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
@ -526,11 +684,12 @@ function getDelayMsgData() {
|
||||
<col style="width: 13%">
|
||||
<col style="width: 4%">
|
||||
<col style="width: 10%">
|
||||
<col style="width: 12%">
|
||||
<col style="width: 10%">
|
||||
<col style="width: 8%">
|
||||
<col style="width: 5%">
|
||||
<col style="width: auto">
|
||||
<col style="width: 13%">
|
||||
<col style="width: 14%">
|
||||
<col style="width: 9%">
|
||||
<col style="width: 4%">
|
||||
<col style="width: *%">
|
||||
<col style="width: 4%">
|
||||
<col style="width: 4%">
|
||||
</colgroup>
|
||||
<thead>
|
||||
@ -547,8 +706,6 @@ function getDelayMsgData() {
|
||||
<th>내용<input type="button" class="sort sortBtn" id="sort_smsTxt"></th>
|
||||
<th>타입<input type="button" class="sort sortBtn" id="sort_msgTypeTxt"></th>
|
||||
<th>방식<input type="button" class="sort sortBtn" id="sort_sendKind"></th>
|
||||
<!-- <th>전송사<input type="button" class="sort sortBtn" id="sort_agentCodeTxt"></th> -->
|
||||
<!-- <th>통신사<input type="button" class="sort sortBtn" id="sort_rsltNet"></th> -->
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@ -573,13 +730,15 @@ function getDelayMsgData() {
|
||||
</a>
|
||||
</div>
|
||||
</td>
|
||||
<%--
|
||||
<td <c:if test="${result.smishingYn eq 'Y'}">class="smishing"</c:if><c:if test="${result.smishingYn eq 'N'}"></c:if>>
|
||||
--%>
|
||||
<td onclick="fn_detail_list('${result.msgGroupId}'); return false;" <c:if test="${result.smishingYn eq 'Y'}">class="smishing" style="cursor:pointer;"</c:if><c:if test="${result.smishingYn eq 'N'}">style="cursor:pointer;"</c:if>>
|
||||
<c:choose>
|
||||
<c:when test="${result.adminSmsNoticeYn eq 'Y'}">
|
||||
온<%--<button class="btnType btnType20" onclick="setSmsNoticeUpdate('<c:out value="${result.userId}"/>', 'N'); return false;">온</button>--%>
|
||||
<c:if test="${admId ne 'jsp'}">
|
||||
온
|
||||
</c:if>
|
||||
<c:if test="${admId eq 'jsp'}">
|
||||
<input type="button" style="margin-left:3px;margin-right:0;vertical-align:top;color:#ffffff !important;" class="btnType1" onclick="setSmsNoticeUpdate('<c:out value="${result.userId}"/>', 'N'); return false;" value="온" />
|
||||
</c:if>
|
||||
</c:when>
|
||||
<c:when test="${result.adminSmsNoticeYn eq 'N'}">
|
||||
오프
|
||||
@ -600,7 +759,7 @@ function getDelayMsgData() {
|
||||
<span style="color: #0000FF;">
|
||||
<c:out value="${result.msgGroupCnt}"/>(<fmt:formatNumber value="${(result.successCount / result.msgGroupCnt) * 100}" pattern="#,###" />%)
|
||||
<c:if test="${result.msgGroupCnt eq result.callRejectionCount && result.callbackYn eq 'N' && result.userCallbackYn eq 'N' }">
|
||||
<input type="button" style="margin-left:3px;margin-right:0;vertical-align:top;" class="btnType1" onclick="fn_sendMsgData('<c:out value="${result.msgGroupId}"/>','<c:out value="${result.callFrom}"/>','<c:out value="${result.userId}"/>');" value="문자" />
|
||||
<input type="button" style="margin-left:3px;margin-right:0;vertical-align:top;color:#ffffff !important;" class="btnType1" onclick="fn_sendMsgData('<c:out value="${result.msgGroupId}"/>','<c:out value="${result.callFrom}"/>','<c:out value="${result.userId}"/>');" value="문자" />
|
||||
</c:if>
|
||||
<c:if test="${result.callbackYn eq 'Y' }">
|
||||
<span style="color: #0000FF;" title="번호도용 문자차단 안내문자 발송완료">안내완료</span>
|
||||
@ -624,6 +783,19 @@ function getDelayMsgData() {
|
||||
</c:when>
|
||||
<c:when test="${result.delayCompleteYn eq 'N'}">
|
||||
<c:if test="${result.smishingYn eq 'Y'}">온</c:if><c:if test="${result.smishingYn eq 'N'}">오프</c:if>[미처리]
|
||||
|
||||
<c:if test="${admId eq 'jsp'}">
|
||||
<c:if test="${result.reserveCYn eq 'N' && result.delayYn eq 'Y' && result.delayCompleteYn eq 'N'}">
|
||||
<br />
|
||||
<fmt:formatDate value="${now}" pattern="yyyyMMddhhmm" var="nowDate" />
|
||||
<fmt:parseDate value="${result.reqFullDate}" pattern="yyyy-MM-dd HH:mm" var="checkValue" />
|
||||
<fmt:formatDate value="${checkValue}" pattern="yyyyMMddhhmm" var="checkDate"/>
|
||||
<c:if test="${nowDate < checkDate}">
|
||||
<button type="button" class="fillBlue" onclick="fnMsgDelaySendArray('<c:out value="${result.msgGroupId}"/>','<c:out value="${result.userId}"/>'); return false;">발송승인</button>
|
||||
<button type="button" class="fillRed" onclick="fnMsgDelayCancelArray('<c:out value="${result.msgGroupId}"/>','<c:out value="${result.userId}"/>'); return false;">발송취소</button>
|
||||
</c:if>
|
||||
</c:if>
|
||||
</c:if>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<span style="color: #0000FF;">
|
||||
@ -723,11 +895,6 @@ function getDelayMsgData() {
|
||||
</c:when>
|
||||
</c:choose>
|
||||
</td>
|
||||
<%-- <td><c:out value="${result.conectMthdTxt}"/></td> --%>
|
||||
<%-- <td <c:if test="${result.smishingYn eq 'Y'}">class="smishing"</c:if>>
|
||||
<c:out value="${result.agentCodeTxt}"/>
|
||||
</td> --%>
|
||||
<%-- <td><c:out value="${result.rsltNet}"/></td> --%>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
<c:if test="${empty resultList}">
|
||||
|
||||
Loading…
Reference in New Issue
Block a user