--- src/main/java/itn/let/mjo/msgsent/service/MjonMsgDetailSentVO.java
+++ src/main/java/itn/let/mjo/msgsent/service/MjonMsgDetailSentVO.java
... | ... | @@ -20,6 +20,7 @@ |
| 20 | 20 |
private String msgGroupCnt; |
| 21 | 21 |
private String reserveYn; |
| 22 | 22 |
private String reserveCYn; |
| 23 |
+ private String canceldate; |
|
| 23 | 24 |
private String callFrom; |
| 24 | 25 |
private String userId; |
| 25 | 26 |
private String smsTxt; |
--- src/main/resources/egovframework/sqlmap/let/msg/MjonMsgSent_SQL_mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/msg/MjonMsgSent_SQL_mysql.xml
... | ... | @@ -355,6 +355,7 @@ |
| 355 | 355 |
, MGD.MSG_GROUP_CNT as msgGroupCnt |
| 356 | 356 |
, MGD.RESERVE_YN as reserveYn |
| 357 | 357 |
, MGD.RESERVE_C_YN as reserveCYn |
| 358 |
+ , DATE_FORMAT(MGD.CANCELDATE, '%Y-%m-%d %H:%i') as canceldate |
|
| 358 | 359 |
, MGD.CALL_FROM as callFrom |
| 359 | 360 |
, MGD.USER_ID as userId |
| 360 | 361 |
, MGD.SMS_TXT as smsTxt |
--- src/main/webapp/WEB-INF/jsp/web/msgsent/MsgSentAllListAjax.jsp
+++ src/main/webapp/WEB-INF/jsp/web/msgsent/MsgSentAllListAjax.jsp
... | ... | @@ -344,6 +344,4 @@ |
| 344 | 344 |
|
| 345 | 345 |
<form id="resCancelForm" name="resCancelForm" method="post"> |
| 346 | 346 |
<input type="hidden" id="msgGroupId" name="msgGroupId" value=""/> |
| 347 |
-<!-- <input type="hidden" id="agentCode" name="agentCode" value=""/> --> |
|
| 348 |
-<!-- <input type="hidden" id="msgType" name="msgType" value=""/> --> |
|
| 349 | 347 |
</form> |
--- src/main/webapp/WEB-INF/jsp/web/msgsent/MsgSentDetailView.jsp
+++ src/main/webapp/WEB-INF/jsp/web/msgsent/MsgSentDetailView.jsp
... | ... | @@ -222,20 +222,136 @@ |
| 222 | 222 |
data: filteredData // 필터링된 데이터만 다운로드 |
| 223 | 223 |
}); |
| 224 | 224 |
} |
| 225 |
+ |
|
| 226 |
+/** |
|
| 227 |
+ * @ 예약 취소 |
|
| 228 |
+ */ |
|
| 229 |
+function fnReservCancel(msgGroupId){
|
|
| 230 |
+ |
|
| 231 |
+ var form = document.resCancelForm; |
|
| 232 |
+ var loginVO = '${LoginVO}';
|
|
| 233 |
+ |
|
| 234 |
+ form.msgGroupId.value = msgGroupId; |
|
| 235 |
+ |
|
| 236 |
+ if(loginVO == "" || loginVO == null){
|
|
| 237 |
+ |
|
| 238 |
+ alert("로그인 후 이용이 가능합니다.");
|
|
| 239 |
+ return false; |
|
| 240 |
+ |
|
| 241 |
+ } |
|
| 242 |
+ console.log('msgGroupId : ', msgGroupId);
|
|
| 243 |
+ var data = new FormData(form); |
|
| 244 |
+ url = "/web/mjon/reservmsg/deleteReservMsgCancelDataAjax.do"; |
|
| 245 |
+ |
|
| 246 |
+ if(confirm("정말 예약을 취소하시겠습니까?")){
|
|
| 247 |
+ |
|
| 248 |
+ $.ajax({
|
|
| 249 |
+ type: "POST", |
|
| 250 |
+ url: url, |
|
| 251 |
+ data: data, |
|
| 252 |
+ dataType:'json', |
|
| 253 |
+ async: true, |
|
| 254 |
+ processData: false, |
|
| 255 |
+ contentType: false, |
|
| 256 |
+ cache: false, |
|
| 257 |
+ success: function (returnData, status) {
|
|
| 258 |
+ if(status == 'success'){ // status 확인 필요한가. 석세스 안뜨면 에러 가지 않나
|
|
| 259 |
+ if("fail"==returnData.result){
|
|
| 260 |
+ alert(returnData.message); |
|
| 261 |
+ return false; |
|
| 262 |
+ } |
|
| 263 |
+ |
|
| 264 |
+ alert("예약 발송이 정상적으로 취소 되었습니다.");
|
|
| 265 |
+ |
|
| 266 |
+ location.reload(true); |
|
| 267 |
+ |
|
| 268 |
+ } else if(status== 'fail'){
|
|
| 269 |
+ alert(returnData.message); |
|
| 270 |
+ } |
|
| 271 |
+ }, |
|
| 272 |
+ error: function (e) {
|
|
| 273 |
+ alert("예약 취소에 실패하였습니다."); console.log("ERROR : ", e);
|
|
| 274 |
+ }, |
|
| 275 |
+ beforeSend : function(xmlHttpRequest) {
|
|
| 276 |
+ //로딩창 show |
|
| 277 |
+ $('.loading_layer').addClass('active');
|
|
| 278 |
+ }, |
|
| 279 |
+ complete : function(xhr, textStatus) {
|
|
| 280 |
+ //로딩창 hide |
|
| 281 |
+ $('.loading_layer').removeClass('active');
|
|
| 282 |
+ } |
|
| 283 |
+ }); |
|
| 284 |
+ |
|
| 285 |
+ } |
|
| 286 |
+ |
|
| 287 |
+} |
|
| 288 |
+ |
|
| 289 |
+/** |
|
| 290 |
+ * @문자 재전송 |
|
| 291 |
+ */ |
|
| 292 |
+function fnMjMsgReSendAll(msgGroupId |
|
| 293 |
+ , replaceCnt, electionCnt, advertisementCnt |
|
| 294 |
+ ) {
|
|
| 295 |
+ |
|
| 296 |
+ |
|
| 297 |
+ |
|
| 298 |
+ var form = document.reSendAllForm; |
|
| 299 |
+ form.msgResendAllFlag.value = "Y"; |
|
| 300 |
+ form.msgResendAllGroupId.value = msgGroupId; |
|
| 301 |
+ |
|
| 302 |
+ if (replaceCnt > 0) {
|
|
| 303 |
+ if (confirm("특정문구 일괄변환 문자(치환문자)의 경우 문자내용은 재전송할 수 없고 받는 사람 목록만 불러올 수 있습니다.\n받는사람 목록을 불러올까요?")) {
|
|
| 304 |
+ // 광고문자 |
|
| 305 |
+ form.msgResendAllReplaceYn.value = "Y"; |
|
| 306 |
+ if (electionCnt > 0) {
|
|
| 307 |
+ form.action="/web/mjon/msgcampain/selectMsgDataView.do"; |
|
| 308 |
+ } |
|
| 309 |
+ else {
|
|
| 310 |
+ if (advertisementCnt > 0) {
|
|
| 311 |
+ // 광고문자 |
|
| 312 |
+ form.msgResendAllAdvertiseYn.value = "Y"; |
|
| 313 |
+ form.action="/web/mjon/msgdata/excel/selectMsgExcelDataView.do"; |
|
| 314 |
+ } |
|
| 315 |
+ else |
|
| 316 |
+ {
|
|
| 317 |
+ form.action="/web/mjon/msgdata/selectMsgDataView.do"; |
|
| 318 |
+ } |
|
| 319 |
+ } |
|
| 320 |
+ form.submit(); |
|
| 321 |
+ } |
|
| 322 |
+ } |
|
| 323 |
+ else {
|
|
| 324 |
+ var title = ""; |
|
| 325 |
+ if (electionCnt > 0) {
|
|
| 326 |
+ title = "선거문자발송"; |
|
| 327 |
+ } |
|
| 328 |
+ else {
|
|
| 329 |
+ title = "문자발송"; |
|
| 330 |
+ } |
|
| 331 |
+ |
|
| 332 |
+ if (confirm(title + " 화면으로 이동합니다.\n문자내용, 받는 사람 목록 확인후 발송해주세요.")) {
|
|
| 333 |
+ if (electionCnt > 0) {
|
|
| 334 |
+ form.action="/web/mjon/msgcampain/selectMsgDataView.do"; |
|
| 335 |
+ } |
|
| 336 |
+ else {
|
|
| 337 |
+ if (advertisementCnt > 0) {
|
|
| 338 |
+ // 광고문자 |
|
| 339 |
+ form.msgResendAllAdvertiseYn.value = "Y"; |
|
| 340 |
+ form.action="/web/mjon/msgdata/excel/selectMsgExcelDataView.do"; |
|
| 341 |
+ } |
|
| 342 |
+ else |
|
| 343 |
+ {
|
|
| 344 |
+ form.action="/web/mjon/msgdata/selectMsgDataView.do"; |
|
| 345 |
+ } |
|
| 346 |
+ } |
|
| 347 |
+ form.submit(); |
|
| 348 |
+ } |
|
| 349 |
+ } |
|
| 350 |
+} |
|
| 351 |
+ |
|
| 225 | 352 |
|
| 226 | 353 |
</script> |
| 227 | 354 |
<div class="inner"> |
| 228 |
- <form id="goList" name="goList" method="post" action="/web/mjon/msgsent/selectMsgSentView.do"> |
|
| 229 |
- <input type="hidden" name="pageIndex" value="<c:out value="${searchVO.pageIndex}" />" />
|
|
| 230 |
- <input type="hidden" name="searchSortCnd" value="<c:out value='${searchVO.searchSortCnd }' />" />
|
|
| 231 |
- <input type="hidden" name="searchSortOrd" value="<c:out value='${searchVO.searchSortOrd }' />" />
|
|
| 232 |
- <input type="hidden" name="searchCondition01" value="<c:out value='${searchVO.searchCondition01 }' />" />
|
|
| 233 |
- <input type="hidden" name="searchCondition02" value="<c:out value='${searchVO.searchCondition02 }' />" />
|
|
| 234 |
- <input type="hidden" name="searchStartDate" value="<c:out value='${searchVO.searchStartDate }' />" />
|
|
| 235 |
- <input type="hidden" name="searchEndDate" value="<c:out value='${searchVO.searchEndDate }' />" />
|
|
| 236 |
- <input type="hidden" name="searchCondition" value="<c:out value='${searchVO.searchCondition }' />" />
|
|
| 237 |
- <input type="hidden" name="searchKeyword" value="<c:out value='${searchVO.searchKeyword }' />" />
|
|
| 238 |
- </form> |
|
| 239 | 355 |
<input id="msgGroupId" name="msgGroupId" type="hidden" value="${result.msgGroupId}"/>
|
| 240 | 356 |
<!-- send top --> |
| 241 | 357 |
<div class="send_top"> |
... | ... | @@ -255,7 +371,7 @@ |
| 255 | 371 |
<div class="res_info_in"> |
| 256 | 372 |
<div class="res_info_top clearfix"> |
| 257 | 373 |
<p>발송정보</p> |
| 258 |
- <p><button type="button" class="btnType btnType3">재전송</button></p> |
|
| 374 |
+ <p><button type="button" class="btnType btnType3"onClick="javascript:fnMjMsgReSendAll('${result.msgGroupId}'); return false;">재전송</button></p>
|
|
| 259 | 375 |
</div> |
| 260 | 376 |
<div class="res_info_btm"> |
| 261 | 377 |
<dl> |
... | ... | @@ -270,10 +386,12 @@ |
| 270 | 386 |
<dd>${result.regDate }</dd>
|
| 271 | 387 |
</dl> |
| 272 | 388 |
</c:if> |
| 389 |
+ <c:if test="${not empty result.subject }">
|
|
| 273 | 390 |
<dl> |
| 274 | 391 |
<dt>제목</dt> |
| 275 | 392 |
<dd>${result.subject }</dd>
|
| 276 | 393 |
</dl> |
| 394 |
+ </c:if> |
|
| 277 | 395 |
<dl> |
| 278 | 396 |
<dt>형태</dt> |
| 279 | 397 |
<dd> |
... | ... | @@ -311,11 +429,12 @@ |
| 311 | 429 |
</c:if> |
| 312 | 430 |
<!--// 예약인 경우 --> |
| 313 | 431 |
</dt> |
| 314 |
- <!--<dd>진행중</dd>--> |
|
| 315 |
- <!--<dd>완료</dd>--> |
|
| 316 | 432 |
<dd> |
| 317 | 433 |
|
| 318 | 434 |
<c:choose> |
| 435 |
+ <c:when test="${result.statusCd eq '04' }">
|
|
| 436 |
+ 예약취소(<c:out value="${result.canceldate }" />)
|
|
| 437 |
+ </c:when> |
|
| 319 | 438 |
<c:when test="${result.statusCd ne '03' }">
|
| 320 | 439 |
<ec:code codeId="ITN057" code="${result.statusCd }" />
|
| 321 | 440 |
</c:when> |
... | ... | @@ -526,5 +645,31 @@ |
| 526 | 645 |
|
| 527 | 646 |
</div> |
| 528 | 647 |
</div> |
| 529 |
- <!-- //발송대상 리스트 안내 팝업 --> |
|
| 648 |
+ <!-- //발송대상 리스트 안내 팝업 --> |
|
| 649 |
+ |
|
| 650 |
+ <!-- 이전 리스트 상태(검색조건, 페이징) 그대로 가기 위한 form --> |
|
| 651 |
+ <form id="goList" name="goList" method="post" action="/web/mjon/msgsent/selectMsgSentView.do"> |
|
| 652 |
+ <input type="hidden" name="pageIndex" value="<c:out value="${searchVO.pageIndex}" />" />
|
|
| 653 |
+ <input type="hidden" name="searchSortCnd" value="<c:out value='${searchVO.searchSortCnd }' />" />
|
|
| 654 |
+ <input type="hidden" name="searchSortOrd" value="<c:out value='${searchVO.searchSortOrd }' />" />
|
|
| 655 |
+ <input type="hidden" name="searchCondition01" value="<c:out value='${searchVO.searchCondition01 }' />" />
|
|
| 656 |
+ <input type="hidden" name="searchCondition02" value="<c:out value='${searchVO.searchCondition02 }' />" />
|
|
| 657 |
+ <input type="hidden" name="searchStartDate" value="<c:out value='${searchVO.searchStartDate }' />" />
|
|
| 658 |
+ <input type="hidden" name="searchEndDate" value="<c:out value='${searchVO.searchEndDate }' />" />
|
|
| 659 |
+ <input type="hidden" name="searchCondition" value="<c:out value='${searchVO.searchCondition }' />" />
|
|
| 660 |
+ <input type="hidden" name="searchKeyword" value="<c:out value='${searchVO.searchKeyword }' />" />
|
|
| 661 |
+ </form> |
|
| 662 |
+ |
|
| 663 |
+ <!-- 예약 취소 --> |
|
| 664 |
+ <form id="resCancelForm" name="resCancelForm" method="post"> |
|
| 665 |
+ <input type="hidden" id="msgGroupId" name="msgGroupId" value=""/> |
|
| 666 |
+ </form> |
|
| 667 |
+ |
|
| 668 |
+ <!-- 재발송 form --> |
|
| 669 |
+ <form name="reSendAllForm" method="post"> |
|
| 670 |
+ <input type="hidden" name="msgResendAllFlag" value="N"/> |
|
| 671 |
+ <input type="hidden" name="msgResendAllGroupId" value=""/> |
|
| 672 |
+ <input type="hidden" name="msgResendAllAdvertiseYn" value="N"/> |
|
| 673 |
+ <input type="hidden" name="msgResendAllReplaceYn" value="N"/> |
|
| 674 |
+ </form> |
|
| 530 | 675 |
|
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?