알림톡 스미싱 의심 발송승인, 발송취소 기능 추가
@0297b5f2b992ca9934ad76adbf0cfa0edabb7efb
--- src/main/java/itn/let/kakao/admin/kakaoAt/service/MjonKakaoATService.java
+++ src/main/java/itn/let/kakao/admin/kakaoAt/service/MjonKakaoATService.java
... | ... | @@ -40,5 +40,7 @@ |
| 40 | 40 |
//회원 정보 알림톡 상세정보 리스트 팝업 통계 정보 |
| 41 | 41 |
KakaoVO selectMjonKakaoStatisticATData(KakaoVO searchVO) throws Exception; |
| 42 | 42 |
|
| 43 |
+ //알림톡 지연문자 리스트 조회 |
|
| 44 |
+ List<KakaoVO> selectKakaoATDelaySentList(String userId) throws Exception; |
|
| 43 | 45 |
} |
| 44 | 46 |
|
--- src/main/java/itn/let/kakao/admin/kakaoAt/service/impl/MjonKakaoATDAO.java
+++ src/main/java/itn/let/kakao/admin/kakaoAt/service/impl/MjonKakaoATDAO.java
... | ... | @@ -88,4 +88,8 @@ |
| 88 | 88 |
|
| 89 | 89 |
return result; |
| 90 | 90 |
} |
| 91 |
+ @SuppressWarnings("unchecked")
|
|
| 92 |
+ public List<KakaoVO> selectKakaoATDelaySentList(String userId) throws Exception{
|
|
| 93 |
+ return (List<KakaoVO>)list("mjonKakaoATDAO.selectKakaoATDelaySentList", userId);
|
|
| 94 |
+ } |
|
| 91 | 95 |
} |
--- src/main/java/itn/let/kakao/admin/kakaoAt/service/impl/MjonKakaoATServiceImpl.java
+++ src/main/java/itn/let/kakao/admin/kakaoAt/service/impl/MjonKakaoATServiceImpl.java
... | ... | @@ -184,4 +184,9 @@ |
| 184 | 184 |
|
| 185 | 185 |
return result; |
| 186 | 186 |
} |
| 187 |
+ |
|
| 188 |
+ @Override |
|
| 189 |
+ public List<KakaoVO> selectKakaoATDelaySentList(String userId) throws Exception {
|
|
| 190 |
+ return mjonKakaoATDAO.selectKakaoATDelaySentList(userId); |
|
| 191 |
+ } |
|
| 187 | 192 |
} |
--- src/main/java/itn/let/kakao/user/kakaoAt/service/impl/KakaoAlimTalkServiceImpl.java
+++ src/main/java/itn/let/kakao/user/kakaoAt/service/impl/KakaoAlimTalkServiceImpl.java
... | ... | @@ -248,6 +248,8 @@ |
| 248 | 248 |
mjonMsgVO.setBefCash(kakaoVO.getBefCash()); |
| 249 | 249 |
mjonMsgVO.setBefPoint(kakaoVO.getBefPoint()); |
| 250 | 250 |
mjonMsgVO.setKakaoSubMagOrgnlTxt(kakaoVO.getKakaoSubMagOrgnlTxt()); |
| 251 |
+ mjonMsgVO.setAtDelayYn(kakaoVO.getAtSmishingYn()); |
|
| 252 |
+ |
|
| 251 | 253 |
|
| 252 | 254 |
if(kakaoVO.getBizJsonYn().equals("Y")) {
|
| 253 | 255 |
mjonMsgVO.setFileCnt("1");
|
--- src/main/java/itn/let/mjo/msg/service/MjonMsgService.java
+++ src/main/java/itn/let/mjo/msg/service/MjonMsgService.java
... | ... | @@ -198,6 +198,12 @@ |
| 198 | 198 |
//스팸 / 스미싱 지연 문자 즉시 발송처리 |
| 199 | 199 |
int updateMsgDelaySendRealTimeData(MjonResvMsgVO mjonResvMsgVO) throws Exception; |
| 200 | 200 |
|
| 201 |
+ //스팸 / 스미싱 지연 알림톡 발송 취소 처리 |
|
| 202 |
+ int deleteKakaoAtDelaySendCancelData(MjonResvMsgVO mjonResvMsgVO) throws Exception; |
|
| 203 |
+ |
|
| 204 |
+ //스팸 / 스미싱 지연 알림톡 즉시 발송처리 |
|
| 205 |
+ int updateKakaoAtDelaySendRealTimeData(MjonResvMsgVO mjonResvMsgVO) throws Exception; |
|
| 206 |
+ |
|
| 201 | 207 |
//문자 그룹아이디 리스트의 발송일자 정보 불러오기 |
| 202 | 208 |
List<MjonResvMsgVO> selectMsgGroupDataReqDateList(MjonResvMsgVO mjonResvMsgVO) throws Exception; |
| 203 | 209 |
|
... | ... | @@ -212,6 +218,7 @@ |
| 212 | 218 |
|
| 213 | 219 |
//카카오 발송 횟수 |
| 214 | 220 |
List<MjonMsgVO> selectWithKakaoSendTotCnt(MjonMsgVO mjonMsgVO) throws Exception; |
| 221 |
+ |
|
| 215 | 222 |
//문자 발송 횟수 |
| 216 | 223 |
List<MjonMsgVO> selectMsgSendTotCnt(MjonMsgVO mjonMsgVO) throws Exception; |
| 217 | 224 |
} |
--- src/main/java/itn/let/mjo/msg/service/MjonMsgVO.java
+++ src/main/java/itn/let/mjo/msg/service/MjonMsgVO.java
... | ... | @@ -354,7 +354,7 @@ |
| 354 | 354 |
private String delayYn; // 문자 30분 지연 처리 유무 |
| 355 | 355 |
private String delayCompleteYn; // 문자 30분 지연 처리 완료 유무 |
| 356 | 356 |
|
| 357 |
- private String atDelayYn; // 알림 30분 지연 처리 유무 |
|
| 357 |
+ private String atDelayYn = "N"; // 알림 30분 지연 처리 유무 |
|
| 358 | 358 |
private String atDelayCompleteYn; // 알림톡 30분 지연 처리 완료 유무 |
| 359 | 359 |
private String atSmishingYn; // 알림 지연처리 |
| 360 | 360 |
|
--- src/main/java/itn/let/mjo/msg/service/impl/MjonMsgDAO.java
+++ src/main/java/itn/let/mjo/msg/service/impl/MjonMsgDAO.java
... | ... | @@ -431,6 +431,26 @@ |
| 431 | 431 |
update("mjonMsgDAO.updateMsgDelaySendRealTimeMsgGroupDataFlag", mjonMsgVO);
|
| 432 | 432 |
} |
| 433 | 433 |
|
| 434 |
+ // mj_msg_data 테이블 지연 알림톡 취소 값 수정 |
|
| 435 |
+ public void updateKakaoAtDelayCancelMsgDataFlag(MjonMsgVO mjonMsgVO) {
|
|
| 436 |
+ update("mjonMsgDAO.updateKakaoAtDelayCancelMsgDataFlag", mjonMsgVO);
|
|
| 437 |
+ } |
|
| 438 |
+ |
|
| 439 |
+ // mj_msg_group_data 테이블 지연 알림톡 취소 값 수정 |
|
| 440 |
+ public void updateKakaoAtDelayCancelMsgGroupDataFlag(MjonMsgVO mjonMsgVO) {
|
|
| 441 |
+ update("mjonMsgDAO.updateKakaoAtDelayCancelMsgGroupDataFlag", mjonMsgVO);
|
|
| 442 |
+ } |
|
| 443 |
+ |
|
| 444 |
+ // mj_msg_data 테이블 지연 알림톡 즉시발송 요청시간 수정 |
|
| 445 |
+ public void updateKakaoAtDelaySendRealTimeMsgDataFlag(MjonMsgVO mjonMsgVO) {
|
|
| 446 |
+ update("mjonMsgDAO.updateKakaoAtDelaySendRealTimeMsgDataFlag", mjonMsgVO);
|
|
| 447 |
+ } |
|
| 448 |
+ |
|
| 449 |
+ // mj_msg_group_data 테이블 지연 알림톡 즉시발송 요청시간 수정 |
|
| 450 |
+ public void updateKakaoAtDelaySendRealTimeMsgGroupDataFlag(MjonMsgVO mjonMsgVO) {
|
|
| 451 |
+ update("mjonMsgDAO.updateKakaoAtDelaySendRealTimeMsgGroupDataFlag", mjonMsgVO);
|
|
| 452 |
+ } |
|
| 453 |
+ |
|
| 434 | 454 |
//문자 그룹아이디 리스트의 발송일자 정보 불러오기 |
| 435 | 455 |
@SuppressWarnings("unchecked")
|
| 436 | 456 |
public List<MjonResvMsgVO> selectMsgGroupDataReqDateList(MjonResvMsgVO mjonResvMsgVO) throws Exception{
|
--- src/main/java/itn/let/mjo/msg/service/impl/MjonMsgServiceImpl.java
+++ src/main/java/itn/let/mjo/msg/service/impl/MjonMsgServiceImpl.java
... | ... | @@ -841,6 +841,119 @@ |
| 841 | 841 |
return resultSts; |
| 842 | 842 |
} |
| 843 | 843 |
|
| 844 |
+ //스팸 / 스미싱 지연 알림톡 발송 취소 처리 |
|
| 845 |
+ @Override |
|
| 846 |
+ public int deleteKakaoAtDelaySendCancelData(MjonResvMsgVO mjonResvMsgVO) throws Exception {
|
|
| 847 |
+ |
|
| 848 |
+ int resultSts = 0; |
|
| 849 |
+ |
|
| 850 |
+ try {
|
|
| 851 |
+ |
|
| 852 |
+ System.out.println("++++++++++++++++++ deleteKakaoAtDelaySendCancelData groupId ::: "+mjonResvMsgVO.getMsgGroupId());
|
|
| 853 |
+ //삭제 문자 건수 MSG_SEQ 번호 받아오기 |
|
| 854 |
+ List<MjonResvMsgVO> resultMsgSeqList = mjonReservMsgDAO.selectMsgSeqListByGroupId(mjonResvMsgVO); |
|
| 855 |
+ |
|
| 856 |
+ int size = resultMsgSeqList.size(); |
|
| 857 |
+ List<String> userDataList = new ArrayList<String>(); |
|
| 858 |
+ for(int i=0; i < size; i++) {
|
|
| 859 |
+ userDataList.add(resultMsgSeqList.get(i).getUserData()); |
|
| 860 |
+ System.out.println(resultMsgSeqList.get(i).getUserData()); |
|
| 861 |
+ } |
|
| 862 |
+ |
|
| 863 |
+ mjonResvMsgVO.setUserDataList(userDataList); |
|
| 864 |
+ |
|
| 865 |
+ |
|
| 866 |
+ //비즈뿌리오 딜레이 알림톡 삭제 |
|
| 867 |
+ resultSts = mjonReservMsgDAO.deleteBizMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 868 |
+ |
|
| 869 |
+ System.out.println("++++++++++++++++++++++++++++++ resultSts ::: "+resultSts);
|
|
| 870 |
+ |
|
| 871 |
+ //예약 취소 환불 처리 |
|
| 872 |
+ if(resultSts > 0) {
|
|
| 873 |
+ |
|
| 874 |
+ //그룹 데이터 정보 조회하기 |
|
| 875 |
+ MjonMsgVO mjonMsgVO = mjonMsgDAO.selectMsgGroupDataByGoupId(mjonResvMsgVO); |
|
| 876 |
+ |
|
| 877 |
+ //mj_msg_data 테이블 지연 문자 취소 값 수정 |
|
| 878 |
+ mjonMsgDAO.updateKakaoAtDelayCancelMsgDataFlag(mjonMsgVO); |
|
| 879 |
+ |
|
| 880 |
+ //mj_msg_group_data 테이블 예약 취소 값 수정 |
|
| 881 |
+ mjonMsgDAO.updateKakaoAtDelayCancelMsgGroupDataFlag(mjonMsgVO); |
|
| 882 |
+ |
|
| 883 |
+ |
|
| 884 |
+ //문자 발송 캐시 환불 해주기 |
|
| 885 |
+ MjonPayVO mjonPayVO = new MjonPayVO(); |
|
| 886 |
+ |
|
| 887 |
+ mjonPayVO.setCashId(idgenMjonCashId.getNextStringId()); |
|
| 888 |
+ mjonPayVO.setUserId(mjonMsgVO.getUserId()); |
|
| 889 |
+ mjonPayVO.setCash(Float.parseFloat(mjonMsgVO.getTotPrice())); |
|
| 890 |
+ mjonPayVO.setFrstRegisterId(mjonMsgVO.getUserId()); |
|
| 891 |
+ mjonPayVO.setMemo("스팸/스미싱 지연 알림톡 취소 " + resultSts + "건 환불");
|
|
| 892 |
+ mjonPayVO.setMsgGroupId(mjonMsgVO.getMsgGroupId()); |
|
| 893 |
+ |
|
| 894 |
+ mjonPayDAO.insertCash(mjonPayVO); //캐시 환불 |
|
| 895 |
+ mjonPayDAO.updateMemberCash(mjonPayVO); //회원정보 업데이트 |
|
| 896 |
+ |
|
| 897 |
+ } |
|
| 898 |
+ |
|
| 899 |
+ |
|
| 900 |
+ } catch (Exception e) {
|
|
| 901 |
+ System.out.println("+++++++++++++++++++++++++++++++++++ deleteMsgDelaySendCancelData ServiceImpl Error !!!! "+e);
|
|
| 902 |
+ } |
|
| 903 |
+ return resultSts; |
|
| 904 |
+ |
|
| 905 |
+ } |
|
| 906 |
+ |
|
| 907 |
+ //스팸 / 스미싱 지연 알림톡 즉시 발송처리 |
|
| 908 |
+ @Override |
|
| 909 |
+ public int updateKakaoAtDelaySendRealTimeData(MjonResvMsgVO mjonResvMsgVO) throws Exception {
|
|
| 910 |
+ |
|
| 911 |
+ int resultSts = 0; |
|
| 912 |
+ |
|
| 913 |
+ try {
|
|
| 914 |
+ |
|
| 915 |
+ System.out.println("++++++++++++++++++ updateKakaoAtDelaySendRealTimeData groupId ::: "+mjonResvMsgVO.getMsgGroupId());
|
|
| 916 |
+ //삭제 문자 건수 MSG_SEQ 번호 받아오기 |
|
| 917 |
+ List<MjonResvMsgVO> resultMsgSeqList = mjonReservMsgDAO.selectMsgSeqListByGroupId(mjonResvMsgVO); |
|
| 918 |
+ |
|
| 919 |
+ int size = resultMsgSeqList.size(); |
|
| 920 |
+ List<String> userDataList = new ArrayList<String>(); |
|
| 921 |
+ for(int i=0; i < size; i++) {
|
|
| 922 |
+ |
|
| 923 |
+ userDataList.add(resultMsgSeqList.get(i).getUserData()); |
|
| 924 |
+ System.out.println(resultMsgSeqList.get(i).getUserData()); |
|
| 925 |
+ |
|
| 926 |
+ } |
|
| 927 |
+ |
|
| 928 |
+ mjonResvMsgVO.setUserDataList(userDataList); |
|
| 929 |
+ |
|
| 930 |
+ //비즈뿌리오 딜레이문자 즉시발송 처리 |
|
| 931 |
+ resultSts = mjonReservMsgDAO.updateRealTimeBizMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 932 |
+ |
|
| 933 |
+ System.out.println("++++++++++++++++++++++++++++++ resultSts ::: "+resultSts);
|
|
| 934 |
+ |
|
| 935 |
+ //예약 취소 환불 처리 |
|
| 936 |
+ if(resultSts > 0) {
|
|
| 937 |
+ |
|
| 938 |
+ //그룹 데이터 정보 조회하기 |
|
| 939 |
+ MjonMsgVO mjonMsgVO = mjonMsgDAO.selectMsgGroupDataByGoupId(mjonResvMsgVO); |
|
| 940 |
+ |
|
| 941 |
+ //mj_msg_data 테이블 지연 문자 즉시발송 요청 값 수정 |
|
| 942 |
+ mjonMsgDAO.updateKakaoAtDelaySendRealTimeMsgDataFlag(mjonMsgVO); |
|
| 943 |
+ |
|
| 944 |
+ //mj_msg_group_data 테이블 즉시발송 요청 값 수정 |
|
| 945 |
+ mjonMsgDAO.updateKakaoAtDelaySendRealTimeMsgGroupDataFlag(mjonMsgVO); |
|
| 946 |
+ |
|
| 947 |
+ } |
|
| 948 |
+ |
|
| 949 |
+ } catch (Exception e) {
|
|
| 950 |
+ System.out.println("+++++++++++++++++++++++++++++++++++ updateMsgDelaySendRealTimeDataAjax ServiceImpl Error !!!! "+e);
|
|
| 951 |
+ } |
|
| 952 |
+ |
|
| 953 |
+ |
|
| 954 |
+ return resultSts; |
|
| 955 |
+ } |
|
| 956 |
+ |
|
| 844 | 957 |
//문자 그룹아이디 리스트의 발송일자 정보 불러오기 |
| 845 | 958 |
@Override |
| 846 | 959 |
public List<MjonResvMsgVO> selectMsgGroupDataReqDateList(MjonResvMsgVO mjonResvMsgVO) throws Exception{
|
--- src/main/java/itn/let/mjo/msg/web/MjonMsgController.java
+++ src/main/java/itn/let/mjo/msg/web/MjonMsgController.java
... | ... | @@ -3619,6 +3619,161 @@ |
| 3619 | 3619 |
} |
| 3620 | 3620 |
|
| 3621 | 3621 |
/** |
| 3622 |
+ * 스팸 및 스미싱 30분 지연알림톡 전송 취소 처리 |
|
| 3623 |
+ * @param mjonMsgVO |
|
| 3624 |
+ * @param model |
|
| 3625 |
+ * @return "/uss/ion/msg/deleteKakaoATDelaySendCancelDataAjax.do" |
|
| 3626 |
+ * @throws Exception |
|
| 3627 |
+ */ |
|
| 3628 |
+ @RequestMapping(value = {"/uss/ion/msg/deleteKakaoATDelaySendCancelDataAjax.do"})
|
|
| 3629 |
+ public ModelAndView deleteKakaoATDelaySendCancelDataAjax(MjonMsgVO mjonMsgVO) throws Exception {
|
|
| 3630 |
+ |
|
| 3631 |
+ ModelAndView modelAndView = new ModelAndView(); |
|
| 3632 |
+ modelAndView.setViewName("jsonView");
|
|
| 3633 |
+ |
|
| 3634 |
+ String isStatus = ""; |
|
| 3635 |
+ String msg = ""; |
|
| 3636 |
+ |
|
| 3637 |
+ //로그인 정보 획득 |
|
| 3638 |
+ LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser(); |
|
| 3639 |
+ String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); |
|
| 3640 |
+ |
|
| 3641 |
+ if(userId.equals("")) {
|
|
| 3642 |
+ |
|
| 3643 |
+ modelAndView.addObject("isStatus", "loginFail");
|
|
| 3644 |
+ modelAndView.addObject("msg", "로그인이 필요합니다.");
|
|
| 3645 |
+ return modelAndView; |
|
| 3646 |
+ |
|
| 3647 |
+ } |
|
| 3648 |
+ |
|
| 3649 |
+ try {
|
|
| 3650 |
+ |
|
| 3651 |
+ MjonResvMsgVO mjonResvMsgVO = new MjonResvMsgVO(); |
|
| 3652 |
+ mjonResvMsgVO.setUserId(mjonMsgVO.getUserId());//회원 아이디 |
|
| 3653 |
+ |
|
| 3654 |
+ |
|
| 3655 |
+ String[] arrMsgGroupId = mjonMsgVO.getMsgGroupId().split(",");
|
|
| 3656 |
+ int resultSts = 0; |
|
| 3657 |
+ |
|
| 3658 |
+ //문자 발송요청일자 체크해주기 |
|
| 3659 |
+ boolean compareReqDate = getCompareReqDateList(arrMsgGroupId, mjonMsgVO.getUserId()); |
|
| 3660 |
+ |
|
| 3661 |
+ if(!compareReqDate) {
|
|
| 3662 |
+ |
|
| 3663 |
+ modelAndView.addObject("isStatus", "dateFail");
|
|
| 3664 |
+ modelAndView.addObject("msg", "발송시간이 지난 문자가 있습니다. 문자 발송예정 시간을 확인해 주세요.");
|
|
| 3665 |
+ return modelAndView; |
|
| 3666 |
+ } |
|
| 3667 |
+ |
|
| 3668 |
+ for(String temp : arrMsgGroupId) {
|
|
| 3669 |
+ |
|
| 3670 |
+ mjonResvMsgVO.setMsgGroupId(temp);//취소 문자 그룹 아이디 |
|
| 3671 |
+ int count = mjonMsgService.deleteKakaoAtDelaySendCancelData(mjonResvMsgVO); |
|
| 3672 |
+ |
|
| 3673 |
+ resultSts = resultSts + count; |
|
| 3674 |
+ |
|
| 3675 |
+ } |
|
| 3676 |
+ |
|
| 3677 |
+ if(resultSts > 0) {
|
|
| 3678 |
+ |
|
| 3679 |
+ modelAndView.addObject("isStatus", "success");
|
|
| 3680 |
+ modelAndView.addObject("msg", "발송취소가 정상적으로 처리되었습니다.");
|
|
| 3681 |
+ |
|
| 3682 |
+ }else {
|
|
| 3683 |
+ |
|
| 3684 |
+ modelAndView.addObject("isStatus", "fail");
|
|
| 3685 |
+ modelAndView.addObject("msg", "발송취소에 오류가 발생하였습니다.");
|
|
| 3686 |
+ } |
|
| 3687 |
+ |
|
| 3688 |
+ } catch (Exception e) {
|
|
| 3689 |
+ System.out.println("+++++++++++++++++++++++++++++++++++ deleteKakaoATDelaySendCancelDataAjax Controller Error !!!! "+e);
|
|
| 3690 |
+ modelAndView.addObject("isStatus", "fail");
|
|
| 3691 |
+ modelAndView.addObject("msg", "오류가 발생하였습니다.");
|
|
| 3692 |
+ return modelAndView; |
|
| 3693 |
+ } |
|
| 3694 |
+ return modelAndView; |
|
| 3695 |
+ } |
|
| 3696 |
+ |
|
| 3697 |
+ |
|
| 3698 |
+ /** |
|
| 3699 |
+ * 스팸 및 스미싱 30분 지연알림톡 즉시 전송 처리 |
|
| 3700 |
+ * @param mjonMsgVO |
|
| 3701 |
+ * @param model |
|
| 3702 |
+ * @return "/uss/ion/msg/updateKakaoATDelaySendRealTimeDataAjax.do" |
|
| 3703 |
+ * @throws Exception |
|
| 3704 |
+ */ |
|
| 3705 |
+ @RequestMapping(value = {"/uss/ion/msg/updateKakaoATDelaySendRealTimeDataAjax.do"})
|
|
| 3706 |
+ public ModelAndView updateKakaoATDelaySendRealTimeDataAjax(MjonMsgVO mjonMsgVO) throws Exception {
|
|
| 3707 |
+ |
|
| 3708 |
+ ModelAndView modelAndView = new ModelAndView(); |
|
| 3709 |
+ modelAndView.setViewName("jsonView");
|
|
| 3710 |
+ |
|
| 3711 |
+ String isStatus = ""; |
|
| 3712 |
+ String msg = ""; |
|
| 3713 |
+ |
|
| 3714 |
+ //로그인 정보 획득 |
|
| 3715 |
+ LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser(); |
|
| 3716 |
+ String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); |
|
| 3717 |
+ |
|
| 3718 |
+ if(userId.equals("")) {
|
|
| 3719 |
+ |
|
| 3720 |
+ modelAndView.addObject("isStatus", "loginFail");
|
|
| 3721 |
+ modelAndView.addObject("msg", "로그인이 필요합니다.");
|
|
| 3722 |
+ return modelAndView; |
|
| 3723 |
+ |
|
| 3724 |
+ } |
|
| 3725 |
+ |
|
| 3726 |
+ try {
|
|
| 3727 |
+ |
|
| 3728 |
+ MjonResvMsgVO mjonResvMsgVO = new MjonResvMsgVO(); |
|
| 3729 |
+ mjonResvMsgVO.setUserId(mjonMsgVO.getUserId());//회원 아이디 |
|
| 3730 |
+ |
|
| 3731 |
+ String[] arrMsgGroupId = mjonMsgVO.getMsgGroupId().split(",");
|
|
| 3732 |
+ int resultSts = 0; |
|
| 3733 |
+ |
|
| 3734 |
+ //문자 발송요청일자 체크해주기 |
|
| 3735 |
+ boolean compareReqDate = getCompareReqDateList(arrMsgGroupId, mjonMsgVO.getUserId()); |
|
| 3736 |
+ |
|
| 3737 |
+ if(!compareReqDate) {
|
|
| 3738 |
+ |
|
| 3739 |
+ modelAndView.addObject("isStatus", "dateFail");
|
|
| 3740 |
+ modelAndView.addObject("msg", "발송시간이 지난 문자가 있습니다. 문자 발송예정 시간을 확인해 주세요.");
|
|
| 3741 |
+ return modelAndView; |
|
| 3742 |
+ } |
|
| 3743 |
+ |
|
| 3744 |
+ for(String temp : arrMsgGroupId) {
|
|
| 3745 |
+ |
|
| 3746 |
+ mjonResvMsgVO.setMsgGroupId(temp);//취소 문자 그룹 아이디 |
|
| 3747 |
+ |
|
| 3748 |
+ //문자 발송 지연 데이터 즉시 발송처리 |
|
| 3749 |
+ int count = mjonMsgService.updateKakaoAtDelaySendRealTimeData(mjonResvMsgVO); |
|
| 3750 |
+ |
|
| 3751 |
+ resultSts = resultSts + count; |
|
| 3752 |
+ |
|
| 3753 |
+ } |
|
| 3754 |
+ |
|
| 3755 |
+ if(resultSts > 0) {
|
|
| 3756 |
+ |
|
| 3757 |
+ modelAndView.addObject("isStatus", "success");
|
|
| 3758 |
+ modelAndView.addObject("msg", "즉시 발송 처리가 완료되었습니다.");
|
|
| 3759 |
+ |
|
| 3760 |
+ }else {
|
|
| 3761 |
+ |
|
| 3762 |
+ modelAndView.addObject("isStatus", "fail");
|
|
| 3763 |
+ modelAndView.addObject("msg", "즉시 발송 처리에 오류가 발생하였습니다.");
|
|
| 3764 |
+ } |
|
| 3765 |
+ |
|
| 3766 |
+ } catch (Exception e) {
|
|
| 3767 |
+ System.out.println("+++++++++++++++++++++++++++++++++++ updateKakaoATDelaySendRealTimeDataAjax Controller Error !!!! "+e);
|
|
| 3768 |
+ modelAndView.addObject("isStatus", "fail");
|
|
| 3769 |
+ modelAndView.addObject("msg", "오류가 발생하였습니다.");
|
|
| 3770 |
+ return modelAndView; |
|
| 3771 |
+ } |
|
| 3772 |
+ |
|
| 3773 |
+ return modelAndView; |
|
| 3774 |
+ } |
|
| 3775 |
+ |
|
| 3776 |
+ /** |
|
| 3622 | 3777 |
* 전송사 발송 통계 |
| 3623 | 3778 |
* @param |
| 3624 | 3779 |
* @param |
--- src/main/java/itn/let/uss/umt/web/EgovUserManageController.java
+++ src/main/java/itn/let/uss/umt/web/EgovUserManageController.java
... | ... | @@ -1366,7 +1366,7 @@ |
| 1366 | 1366 |
|
| 1367 | 1367 |
/* |
| 1368 | 1368 |
* 알림톡/친구톡 최근 발송내역 리스트 불러오기 |
| 1369 |
- * */ |
|
| 1369 |
+ */ |
|
| 1370 | 1370 |
|
| 1371 | 1371 |
KakaoVO sendKakaoVO = new KakaoVO(); |
| 1372 | 1372 |
sendKakaoVO.setSearchCondition2("N");//예약건은 제외하기
|
... | ... | @@ -1384,7 +1384,7 @@ |
| 1384 | 1384 |
|
| 1385 | 1385 |
/* |
| 1386 | 1386 |
* 알림톡/친구톡 예약발송 리스트 불러오기 |
| 1387 |
- * */ |
|
| 1387 |
+ */ |
|
| 1388 | 1388 |
|
| 1389 | 1389 |
KakaoVO reserveKakaoVO = new KakaoVO(); |
| 1390 | 1390 |
reserveKakaoVO.setSearchCondition2("Y");//예약건만 불러오기
|
... | ... | @@ -1400,15 +1400,18 @@ |
| 1400 | 1400 |
|
| 1401 | 1401 |
model.addAttribute("kakaoReserveList", kakaoReserveList);
|
| 1402 | 1402 |
|
| 1403 |
+ |
|
| 1403 | 1404 |
/* |
| 1404 |
- * 팩스 발송 내역 리스트 불러오기 |
|
| 1405 |
- * */ |
|
| 1406 |
- |
|
| 1405 |
+ * 알림톡 지연처리 알림톡 내용 불러오기(30분 지연처리된 알림톡 내역 불러오기) |
|
| 1406 |
+ */ |
|
| 1407 |
+ List<KakaoVO> kakaoATDelaySentList = mjonKakaoATService.selectKakaoATDelaySentList(reqMberManageVO.getMberId()); |
|
| 1408 |
+ |
|
| 1409 |
+ model.addAttribute("kakaoATDelaySentList", kakaoATDelaySentList);
|
|
| 1410 |
+ } |
|
| 1411 |
+ |
|
| 1412 |
+ {//팩스 발송 내역 리스트 불러오기
|
|
| 1407 | 1413 |
List<FaxGroupDataVO> faxSendListVO = faxService.selectFaxMainList(new FaxGroupDataVO(reqMberManageVO.getMberId())); |
| 1408 | 1414 |
model.addAttribute("faxSendListVO", faxSendListVO);
|
| 1409 |
- |
|
| 1410 |
- //} |
|
| 1411 |
- |
|
| 1412 | 1415 |
} |
| 1413 | 1416 |
|
| 1414 | 1417 |
{//사용중인 전송사 정보 조회하기 - 사용자 전용 전송사 리스트 표시용
|
--- src/main/resources/egovframework/sqlmap/let/kakao/MjonKakaoATData_SQL_mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/kakao/MjonKakaoATData_SQL_mysql.xml
... | ... | @@ -2252,10 +2252,101 @@ |
| 2252 | 2252 |
|
| 2253 | 2253 |
</select> |
| 2254 | 2254 |
|
| 2255 |
- |
|
| 2256 |
- |
|
| 2257 |
- |
|
| 2258 |
- |
|
| 2259 |
- |
|
| 2260 |
- |
|
| 2255 |
+ <select id="mjonKakaoATDAO.selectKakaoATDelaySentList" parameterClass="String" resultClass="KakaoVO"> |
|
| 2256 |
+ SELECT |
|
| 2257 |
+ A.msgId AS msgId |
|
| 2258 |
+ , A.msgGroupId AS msgGroupId |
|
| 2259 |
+ , A.userId AS userId |
|
| 2260 |
+ , MGD.TOT_PRICE AS totPrice |
|
| 2261 |
+ , MGD.EACH_PRICE AS eachPrice |
|
| 2262 |
+ , MGD.MSG_GROUP_CNT AS msgGroupCnt |
|
| 2263 |
+ , MGD.MSG_TYPE AS msgType |
|
| 2264 |
+ , CASE |
|
| 2265 |
+ WHEN MGD.MSG_TYPE = '8' |
|
| 2266 |
+ THEN '알림톡' |
|
| 2267 |
+ WHEN MGD.MSG_TYPE = '9' |
|
| 2268 |
+ THEN '친구톡' |
|
| 2269 |
+ END msgTypeName |
|
| 2270 |
+ , (SELECT COUNT(0) FROM MJ_MSG_DATA A |
|
| 2271 |
+ WHERE 1=1 |
|
| 2272 |
+ AND A.DEL_FLAG = 'N' |
|
| 2273 |
+ AND A.MSG_GROUP_ID = A.msgGroupId |
|
| 2274 |
+ AND (CASE |
|
| 2275 |
+ WHEN A.AGENT_CODE = '04' AND A.RSLT_CODE = '7000' |
|
| 2276 |
+ THEN 'S' |
|
| 2277 |
+ WHEN (A.RSLT_CODE IS NULL |
|
| 2278 |
+ AND A.RSLT_CODE2 IS NULL |
|
| 2279 |
+ AND A.SENT_DATE IS NULL |
|
| 2280 |
+ AND A.RSLT_DATE IS NULL |
|
| 2281 |
+ ) |
|
| 2282 |
+ THEN 'W' |
|
| 2283 |
+ ELSE 'F' |
|
| 2284 |
+ END ) = 'S' |
|
| 2285 |
+ ) AS successCnt |
|
| 2286 |
+ , MGD.SMS_TXT AS smsTxt |
|
| 2287 |
+ , A.userdata |
|
| 2288 |
+ , A.curState |
|
| 2289 |
+ , MKPI.YELLOW_ID AS yellowId |
|
| 2290 |
+ , DATE_FORMAT(A.sentDate, '%Y-%m-%d %T') AS sentDate |
|
| 2291 |
+ , DATE_FORMAT(A.reqDate, '%Y-%m-%d %T') AS reqdate |
|
| 2292 |
+ , DATE_FORMAT(MGD.REGDATE, '%Y-%m-%d %T') AS regdate |
|
| 2293 |
+ , A.result AS resultType |
|
| 2294 |
+ , MGD.AT_DELAY_YN AS atDelayYn |
|
| 2295 |
+ , MGD.AT_DELAY_COMPLETE_YN AS atDelayCompleteYn |
|
| 2296 |
+ FROM |
|
| 2297 |
+ (SELECT |
|
| 2298 |
+ a.MSG_ID AS msgId |
|
| 2299 |
+ , a.MSG_GROUP_ID AS msgGroupId |
|
| 2300 |
+ , a.USER_ID AS userId |
|
| 2301 |
+ , a.USERDATA AS userdata |
|
| 2302 |
+ , a.CUR_STATE AS curState |
|
| 2303 |
+ , a.SENT_DATE AS sentDate |
|
| 2304 |
+ , a.REQ_DATE AS reqDate |
|
| 2305 |
+ , (CASE |
|
| 2306 |
+ WHEN A.AGENT_CODE = '04' AND (A.RSLT_CODE = '7000') |
|
| 2307 |
+ THEN 'S' |
|
| 2308 |
+ WHEN( A.RSLT_CODE IS NULL |
|
| 2309 |
+ AND A.RSLT_CODE2 IS NULL |
|
| 2310 |
+ AND A.SENT_DATE IS NULL |
|
| 2311 |
+ AND A.RSLT_DATE IS NULL |
|
| 2312 |
+ )THEN 'W' |
|
| 2313 |
+ ELSE 'F' |
|
| 2314 |
+ END) AS result |
|
| 2315 |
+ , A.RSLT_CODE AS rsltCode |
|
| 2316 |
+ , A.RSLT_CODE2 AS rsltCode2 |
|
| 2317 |
+ , A.RSLT_NET AS rsltNet |
|
| 2318 |
+ , A.CALL_FROM AS callFrom |
|
| 2319 |
+ , A.CALL_TO AS callTo |
|
| 2320 |
+ , A.SMS_TXT AS smsTxt |
|
| 2321 |
+ , A.MSG_TYPE AS msgType |
|
| 2322 |
+ , A.AGENT_CODE AS agentCode |
|
| 2323 |
+ , A.DEL_FLAG AS delFlag |
|
| 2324 |
+ , A.NEO_TYPE AS neoType |
|
| 2325 |
+ , A.RESERVE_C_YN AS reserveCYn |
|
| 2326 |
+ , A.REFUND_YN AS refundYn |
|
| 2327 |
+ , A.MSG_NOTICETALK_SENDER_KEY |
|
| 2328 |
+ , A.MSG_NOTICETALK_TMP_KEY |
|
| 2329 |
+ FROM |
|
| 2330 |
+ MJ_MSG_DATA A |
|
| 2331 |
+ WHERE 1=1 |
|
| 2332 |
+ AND A.USER_ID = #userId# |
|
| 2333 |
+ AND A.MSG_TYPE IN (8) |
|
| 2334 |
+ GROUP BY A.MSG_GROUP_ID |
|
| 2335 |
+ )A |
|
| 2336 |
+ LEFT JOIN MJ_MSG_GROUP_DATA MGD |
|
| 2337 |
+ ON A.msgGroupId = MGD.MSG_GROUP_ID |
|
| 2338 |
+ LEFT JOIN MJ_KAKAO_PROFILE_INFO MKPI |
|
| 2339 |
+ ON A.MSG_NOTICETALK_SENDER_KEY = MKPI.SENDER_KEY |
|
| 2340 |
+ AND MKPI.USER_ID = A.userId |
|
| 2341 |
+ WHERE 1=1 |
|
| 2342 |
+ AND MGD.USER_ID = #userId# |
|
| 2343 |
+ AND MGD.AT_DELAY_YN = 'Y' |
|
| 2344 |
+ AND MGD.AT_DELAY_COMPLETE_YN = 'N' |
|
| 2345 |
+ AND MGD.CANCELDATE IS NULL |
|
| 2346 |
+ AND A.curState = '0' |
|
| 2347 |
+ AND A.refundYn = 'N' |
|
| 2348 |
+ ORDER BY |
|
| 2349 |
+ reqDate DESC |
|
| 2350 |
+ ,sentDate DESC |
|
| 2351 |
+ </select> |
|
| 2261 | 2352 |
</sqlMap>(No newline at end of file) |
--- src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml
... | ... | @@ -2209,8 +2209,9 @@ |
| 2209 | 2209 |
FILE_CNT, |
| 2210 | 2210 |
TOT_PRICE, |
| 2211 | 2211 |
EVENT_YN, |
| 2212 |
- DELAY_YN |
|
| 2213 |
- , BIZ_KAKAO_RESEND_ORGNL_TXT |
|
| 2212 |
+ DELAY_YN, |
|
| 2213 |
+ AT_DELAY_YN, |
|
| 2214 |
+ BIZ_KAKAO_RESEND_ORGNL_TXT |
|
| 2214 | 2215 |
) |
| 2215 | 2216 |
VALUES |
| 2216 | 2217 |
|
... | ... | @@ -2234,8 +2235,9 @@ |
| 2234 | 2235 |
#fileCnt#, |
| 2235 | 2236 |
#totPrice#, |
| 2236 | 2237 |
#eventYn#, |
| 2237 |
- #delayYn# |
|
| 2238 |
- , #kakaoSubMagOrgnlTxt# |
|
| 2238 |
+ #delayYn#, |
|
| 2239 |
+ #atDelayYn#, |
|
| 2240 |
+ #kakaoSubMagOrgnlTxt# |
|
| 2239 | 2241 |
) |
| 2240 | 2242 |
</insert> |
| 2241 | 2243 |
|
... | ... | @@ -6551,5 +6553,60 @@ |
| 6551 | 6553 |
ORDER BY M.orderByCode |
| 6552 | 6554 |
</select> |
| 6553 | 6555 |
|
| 6556 |
+ <update id="mjonMsgDAO.updateKakaoAtDelayCancelMsgDataFlag" parameterClass="mjonMsgVO"> |
|
| 6557 |
+ |
|
| 6558 |
+ UPDATE |
|
| 6559 |
+ MJ_MSG_DATA |
|
| 6560 |
+ SET |
|
| 6561 |
+ REFUND_YN = 'Y' |
|
| 6562 |
+ , REQ_DATE = NOW() |
|
| 6563 |
+ , RESULT_LOG_UPDT_PNTTM = NOW() |
|
| 6564 |
+ , CUR_STATE = '3' |
|
| 6565 |
+ , RSLT_CODE = '7300' |
|
| 6566 |
+ WHERE 1=1 |
|
| 6567 |
+ AND USER_ID = #userId# |
|
| 6568 |
+ AND MSG_GROUP_ID = #msgGroupId# |
|
| 6569 |
+ |
|
| 6570 |
+ </update> |
|
| 6571 |
+ |
|
| 6572 |
+ <update id="mjonMsgDAO.updateKakaoAtDelayCancelMsgGroupDataFlag" parameterClass="mjonMsgVO"> |
|
| 6573 |
+ |
|
| 6574 |
+ UPDATE |
|
| 6575 |
+ MJ_MSG_GROUP_DATA |
|
| 6576 |
+ SET |
|
| 6577 |
+ CANCELDATE = NOW() |
|
| 6578 |
+ , REQ_DATE = NOW() |
|
| 6579 |
+ , AT_DELAY_COMPLETE_YN = 'Y' |
|
| 6580 |
+ WHERE 1=1 |
|
| 6581 |
+ AND USER_ID = #userId# |
|
| 6582 |
+ AND MSG_GROUP_ID = #msgGroupId# |
|
| 6583 |
+ |
|
| 6584 |
+ </update> |
|
| 6585 |
+ |
|
| 6586 |
+ <update id="mjonMsgDAO.updateKakaoAtDelaySendRealTimeMsgDataFlag" parameterClass="mjonMsgVO"> |
|
| 6587 |
+ |
|
| 6588 |
+ UPDATE |
|
| 6589 |
+ MJ_MSG_DATA |
|
| 6590 |
+ SET |
|
| 6591 |
+ REQ_DATE = NOW() |
|
| 6592 |
+ WHERE 1=1 |
|
| 6593 |
+ AND USER_ID = #userId# |
|
| 6594 |
+ AND MSG_GROUP_ID = #msgGroupId# |
|
| 6595 |
+ |
|
| 6596 |
+ </update> |
|
| 6597 |
+ |
|
| 6598 |
+ <update id="mjonMsgDAO.updateKakaoAtDelaySendRealTimeMsgGroupDataFlag" parameterClass="mjonMsgVO"> |
|
| 6599 |
+ |
|
| 6600 |
+ UPDATE |
|
| 6601 |
+ MJ_MSG_GROUP_DATA |
|
| 6602 |
+ SET |
|
| 6603 |
+ REQ_DATE = NOW() |
|
| 6604 |
+ , AT_DELAY_COMPLETE_YN = 'Y' |
|
| 6605 |
+ WHERE 1=1 |
|
| 6606 |
+ AND USER_ID = #userId# |
|
| 6607 |
+ AND MSG_GROUP_ID = #msgGroupId# |
|
| 6608 |
+ |
|
| 6609 |
+ </update> |
|
| 6610 |
+ |
|
| 6554 | 6611 |
</sqlMap> |
| 6555 | 6612 |
|
--- src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectUpdt.jsp
+++ src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectUpdt.jsp
... | ... | @@ -1183,44 +1183,6 @@ |
| 1183 | 1183 |
|
| 1184 | 1184 |
} |
| 1185 | 1185 |
|
| 1186 |
-//알림톡 스미싱의심 여부 |
|
| 1187 |
-function fnMberAtSmishingYn(){
|
|
| 1188 |
- var form = document.mberManageVO; |
|
| 1189 |
- var atSmishingYn = form.atSmishingYn.value; |
|
| 1190 |
- |
|
| 1191 |
- if(confirm("알림톡 스미싱의심 여부를 변경하시겠습니까?")){
|
|
| 1192 |
- |
|
| 1193 |
- $.ajax({
|
|
| 1194 |
- type: "POST", |
|
| 1195 |
- url: "/uss/umt/user/EgovGnrlUpdateUserAtSmishingAjax.do", |
|
| 1196 |
- data: {"atSmishingYn" : atSmishingYn, "mberId" : "${mberManageVO.mberId}"},
|
|
| 1197 |
- dataType:'json', |
|
| 1198 |
- async: false, |
|
| 1199 |
- success: function (data, status) {
|
|
| 1200 |
- if (data.isSuccess) {
|
|
| 1201 |
- alert("변경 완료했습니다.");
|
|
| 1202 |
- } |
|
| 1203 |
- else {
|
|
| 1204 |
- alert(data.msg); |
|
| 1205 |
- } |
|
| 1206 |
- }, |
|
| 1207 |
- beforeSend: function () {
|
|
| 1208 |
- //로딩창 show |
|
| 1209 |
- $('.loading_layer').addClass('active');
|
|
| 1210 |
- }, |
|
| 1211 |
- complete: function () {
|
|
| 1212 |
- //로딩창 hide |
|
| 1213 |
- $('.loading_layer').removeClass('active');
|
|
| 1214 |
- }, |
|
| 1215 |
- error: function (e) {
|
|
| 1216 |
- alert("에러가 발생했습니다."); console.log("ERROR : ", e);
|
|
| 1217 |
- } |
|
| 1218 |
- }); |
|
| 1219 |
- |
|
| 1220 |
- } |
|
| 1221 |
- |
|
| 1222 |
-} |
|
| 1223 |
- |
|
| 1224 | 1186 |
// VIP 여부 |
| 1225 | 1187 |
function fnMberVIPYn(){
|
| 1226 | 1188 |
var form = document.mberManageVO; |
... | ... | @@ -2422,6 +2384,331 @@ |
| 2422 | 2384 |
|
| 2423 | 2385 |
} |
| 2424 | 2386 |
|
| 2387 |
+//알림톡 지연 기능추가 ------------------------------------------------------- |
|
| 2388 |
+ |
|
| 2389 |
+//알림톡 스미싱의심 여부 |
|
| 2390 |
+function fnMberAtSmishingYn(){
|
|
| 2391 |
+ var form = document.mberManageVO; |
|
| 2392 |
+ var atSmishingYn = form.atSmishingYn.value; |
|
| 2393 |
+ |
|
| 2394 |
+ if(confirm("알림톡 스미싱의심 여부를 변경하시겠습니까?")){
|
|
| 2395 |
+ |
|
| 2396 |
+ $.ajax({
|
|
| 2397 |
+ type: "POST", |
|
| 2398 |
+ url: "/uss/umt/user/EgovGnrlUpdateUserAtSmishingAjax.do", |
|
| 2399 |
+ data: {"atSmishingYn" : atSmishingYn, "mberId" : "${mberManageVO.mberId}"},
|
|
| 2400 |
+ dataType:'json', |
|
| 2401 |
+ async: false, |
|
| 2402 |
+ success: function (data, status) {
|
|
| 2403 |
+ if (data.isSuccess) {
|
|
| 2404 |
+ alert("변경 완료했습니다.");
|
|
| 2405 |
+ } |
|
| 2406 |
+ else {
|
|
| 2407 |
+ alert(data.msg); |
|
| 2408 |
+ } |
|
| 2409 |
+ }, |
|
| 2410 |
+ beforeSend: function () {
|
|
| 2411 |
+ //로딩창 show |
|
| 2412 |
+ $('.loading_layer').addClass('active');
|
|
| 2413 |
+ }, |
|
| 2414 |
+ complete: function () {
|
|
| 2415 |
+ //로딩창 hide |
|
| 2416 |
+ $('.loading_layer').removeClass('active');
|
|
| 2417 |
+ }, |
|
| 2418 |
+ error: function (e) {
|
|
| 2419 |
+ alert("에러가 발생했습니다."); console.log("ERROR : ", e);
|
|
| 2420 |
+ } |
|
| 2421 |
+ }); |
|
| 2422 |
+ |
|
| 2423 |
+ } |
|
| 2424 |
+} |
|
| 2425 |
+ |
|
| 2426 |
+//지연 알림톡 전체선택 |
|
| 2427 |
+function kakaoATDelayCheckAll(){
|
|
| 2428 |
+ var checkField = document.kakaoATDelayForm.kakaoATCheckDelayField; |
|
| 2429 |
+ |
|
| 2430 |
+ if(document.kakaoATDelayForm.kakaoATCheckAll.checked) {
|
|
| 2431 |
+ if(checkField) {
|
|
| 2432 |
+ if(checkField.length > 1) {
|
|
| 2433 |
+ for(var i=0; i < checkField.length; i++) {
|
|
| 2434 |
+ checkField[i].checked = true; |
|
| 2435 |
+ } |
|
| 2436 |
+ } else {
|
|
| 2437 |
+ checkField.checked = true; |
|
| 2438 |
+ } |
|
| 2439 |
+ } |
|
| 2440 |
+ } else {
|
|
| 2441 |
+ if(checkField) {
|
|
| 2442 |
+ if(checkField.length > 1) {
|
|
| 2443 |
+ for(var j=0; j < checkField.length; j++) {
|
|
| 2444 |
+ checkField[j].checked = false; |
|
| 2445 |
+ } |
|
| 2446 |
+ } else {
|
|
| 2447 |
+ checkField.checked = false; |
|
| 2448 |
+ } |
|
| 2449 |
+ } |
|
| 2450 |
+ } |
|
| 2451 |
+} |
|
| 2452 |
+ |
|
| 2453 |
+//지연 알림톡 즉시 발송 리스트 |
|
| 2454 |
+function kakaoATDelaySendArray(){
|
|
| 2455 |
+ |
|
| 2456 |
+ var userId = document.modiForm.mberId.value; //사용자 회원 아이디 |
|
| 2457 |
+ var form = document.kakaoATDelayForm; |
|
| 2458 |
+ |
|
| 2459 |
+ if($("input:checkbox[name='kakaoATCheckDelayField']").is(":checked")==false){
|
|
| 2460 |
+ alert("선택된 알림톡이 없습니다.");
|
|
| 2461 |
+ return; |
|
| 2462 |
+ } |
|
| 2463 |
+ var checkField = form.kakaoATCheckDelayField; |
|
| 2464 |
+ var id = form.kakaoATCheckDelayId; |
|
| 2465 |
+ var checkedIds = ""; |
|
| 2466 |
+ var checkedCount = 0; |
|
| 2467 |
+ if(checkField) {
|
|
| 2468 |
+ if(checkField.length > 1) {
|
|
| 2469 |
+ for(var i=0; i < checkField.length; i++) {
|
|
| 2470 |
+ if(checkField[i].checked) {
|
|
| 2471 |
+ checkedIds += ((checkedCount==0? "" : ",") + id[i].value); |
|
| 2472 |
+ checkedCount++; |
|
| 2473 |
+ } |
|
| 2474 |
+ } |
|
| 2475 |
+ } else {
|
|
| 2476 |
+ if(checkField.checked) {
|
|
| 2477 |
+ checkedIds = id.value; |
|
| 2478 |
+ } |
|
| 2479 |
+ } |
|
| 2480 |
+ } |
|
| 2481 |
+ |
|
| 2482 |
+ var msgGroupId = checkedIds; |
|
| 2483 |
+ |
|
| 2484 |
+ var msg = ""; |
|
| 2485 |
+ var url = "/uss/ion/msg/updateKakaoATDelaySendRealTimeDataAjax.do"; |
|
| 2486 |
+ var json = {"msgGroupId" : msgGroupId, "userId" : userId};
|
|
| 2487 |
+ |
|
| 2488 |
+ if(confirm("해당 지연 알림톡을 즉시 발송 하시겠습니까?")){
|
|
| 2489 |
+ $.ajax({
|
|
| 2490 |
+ type: "POST" |
|
| 2491 |
+ , url: url |
|
| 2492 |
+ , data: json |
|
| 2493 |
+ , dataType:'json' |
|
| 2494 |
+ , async: false |
|
| 2495 |
+ , success: function (data, status) {
|
|
| 2496 |
+ var result = data.isStatus; |
|
| 2497 |
+ var msg = data.msg; |
|
| 2498 |
+ if (result == 'loginFail') {
|
|
| 2499 |
+ alert(msg); |
|
| 2500 |
+ location.reload(); |
|
| 2501 |
+ }else if(result == 'dateFail'){
|
|
| 2502 |
+ alert(msg); |
|
| 2503 |
+ location.reload(); |
|
| 2504 |
+ }else if(result == 'fail'){
|
|
| 2505 |
+ alert(msg); |
|
| 2506 |
+ return false; |
|
| 2507 |
+ }else{
|
|
| 2508 |
+ alert(msg); |
|
| 2509 |
+ location.reload(); |
|
| 2510 |
+ } |
|
| 2511 |
+ } |
|
| 2512 |
+ , beforeSend: function () {
|
|
| 2513 |
+ //로딩창 show |
|
| 2514 |
+ $('.loading_layer').addClass('active');
|
|
| 2515 |
+ } |
|
| 2516 |
+ , complete: function () {
|
|
| 2517 |
+ //로딩창 hide |
|
| 2518 |
+ $('.loading_layer').removeClass('active');
|
|
| 2519 |
+ } |
|
| 2520 |
+ , error: function (e) {
|
|
| 2521 |
+ alert("에러가 발생했습니다."); console.log("ERROR : ", e);
|
|
| 2522 |
+ } |
|
| 2523 |
+ }); |
|
| 2524 |
+ } |
|
| 2525 |
+} |
|
| 2526 |
+ |
|
| 2527 |
+//지연 알림톡 즉시 발송 |
|
| 2528 |
+function kakaoATDelaySend(msgGroupId){
|
|
| 2529 |
+ |
|
| 2530 |
+ var userId = document.modiForm.mberId.value; //사용자 회원 아이디 |
|
| 2531 |
+ |
|
| 2532 |
+ var msg = ""; |
|
| 2533 |
+ var url = "/uss/ion/msg/updateKakaoATDelaySendRealTimeDataAjax.do"; |
|
| 2534 |
+ var json = {"msgGroupId" : msgGroupId, "userId" : userId};
|
|
| 2535 |
+ |
|
| 2536 |
+ if(confirm("해당 지연 알림톡을 즉시 발송 하시겠습니까?")){
|
|
| 2537 |
+ $.ajax({
|
|
| 2538 |
+ type: "POST" |
|
| 2539 |
+ , url: url |
|
| 2540 |
+ , data: json |
|
| 2541 |
+ , dataType:'json' |
|
| 2542 |
+ , async: false |
|
| 2543 |
+ , success: function (data, status) {
|
|
| 2544 |
+ var result = data.isStatus; |
|
| 2545 |
+ var msg = data.msg; |
|
| 2546 |
+ if (result == 'loginFail') {
|
|
| 2547 |
+ alert(msg); |
|
| 2548 |
+ location.reload(); |
|
| 2549 |
+ }else if(result == 'dateFail'){
|
|
| 2550 |
+ alert(msg); |
|
| 2551 |
+ location.reload(); |
|
| 2552 |
+ }else if(result == 'fail'){
|
|
| 2553 |
+ alert(msg); |
|
| 2554 |
+ return false; |
|
| 2555 |
+ }else{
|
|
| 2556 |
+ alert(msg); |
|
| 2557 |
+ location.reload(); |
|
| 2558 |
+ } |
|
| 2559 |
+ } |
|
| 2560 |
+ , beforeSend: function () {
|
|
| 2561 |
+ //로딩창 show |
|
| 2562 |
+ $('.loading_layer').addClass('active');
|
|
| 2563 |
+ } |
|
| 2564 |
+ , complete: function () {
|
|
| 2565 |
+ //로딩창 hide |
|
| 2566 |
+ $('.loading_layer').removeClass('active');
|
|
| 2567 |
+ } |
|
| 2568 |
+ , error: function (e) {
|
|
| 2569 |
+ alert("에러가 발생했습니다."); console.log("ERROR : ", e);
|
|
| 2570 |
+ } |
|
| 2571 |
+ }); |
|
| 2572 |
+ } |
|
| 2573 |
+} |
|
| 2574 |
+ |
|
| 2575 |
+//지연 알림톡 발송취소 리스트 |
|
| 2576 |
+function kakaoATDelayCancelArray(){
|
|
| 2577 |
+ |
|
| 2578 |
+ var userId = document.modiForm.mberId.value; //사용자 회원 아이디 |
|
| 2579 |
+ var form = document.kakaoATDelayForm; |
|
| 2580 |
+ |
|
| 2581 |
+ if($("input:checkbox[name='kakaoATCheckDelayField']").is(":checked")==false){
|
|
| 2582 |
+ alert("선택된 알림톡이 없습니다.");
|
|
| 2583 |
+ return; |
|
| 2584 |
+ } |
|
| 2585 |
+ var checkField = form.kakaoATCheckDelayField; |
|
| 2586 |
+ var id = form.kakaoATCheckDelayId; |
|
| 2587 |
+ var checkedIds = ""; |
|
| 2588 |
+ var checkedCount = 0; |
|
| 2589 |
+ if(checkField) {
|
|
| 2590 |
+ if(checkField.length > 1) {
|
|
| 2591 |
+ for(var i=0; i < checkField.length; i++) {
|
|
| 2592 |
+ if(checkField[i].checked) {
|
|
| 2593 |
+ checkedIds += ((checkedCount==0? "" : ",") + id[i].value); |
|
| 2594 |
+ checkedCount++; |
|
| 2595 |
+ } |
|
| 2596 |
+ } |
|
| 2597 |
+ } else {
|
|
| 2598 |
+ if(checkField.checked) {
|
|
| 2599 |
+ checkedIds = id.value; |
|
| 2600 |
+ } |
|
| 2601 |
+ } |
|
| 2602 |
+ } |
|
| 2603 |
+ |
|
| 2604 |
+ var msgGroupId = checkedIds; |
|
| 2605 |
+ |
|
| 2606 |
+ var msg = ""; |
|
| 2607 |
+ var url = "/uss/ion/msg/deleteKakaoATDelaySendCancelDataAjax.do"; |
|
| 2608 |
+ var json = {"msgGroupId" : msgGroupId, "userId" : userId};
|
|
| 2609 |
+ |
|
| 2610 |
+ if(confirm("해당 지연 알림톡을 발송취소 하시겠습니까?")){
|
|
| 2611 |
+ $.ajax({
|
|
| 2612 |
+ type: "POST" |
|
| 2613 |
+ , url: url |
|
| 2614 |
+ , data: json |
|
| 2615 |
+ , dataType:'json' |
|
| 2616 |
+ , async: false |
|
| 2617 |
+ , success: function (data, status) {
|
|
| 2618 |
+ var result = data.isStatus; |
|
| 2619 |
+ var msg = data.msg; |
|
| 2620 |
+ |
|
| 2621 |
+ if (result == 'loginFail') {
|
|
| 2622 |
+ alert(msg); |
|
| 2623 |
+ location.reload(); |
|
| 2624 |
+ }else if(result == 'dateFail'){
|
|
| 2625 |
+ |
|
| 2626 |
+ alert(msg); |
|
| 2627 |
+ location.reload(); |
|
| 2628 |
+ |
|
| 2629 |
+ }else if(result == 'fail'){
|
|
| 2630 |
+ alert(msg); |
|
| 2631 |
+ return false; |
|
| 2632 |
+ }else{
|
|
| 2633 |
+ |
|
| 2634 |
+ alert(msg); |
|
| 2635 |
+ |
|
| 2636 |
+ //회원 이용정지 처리하기 |
|
| 2637 |
+ //fn_updateMberSttus(msgGroupId); |
|
| 2638 |
+ fn_MsgDelayCancel_after(); |
|
| 2639 |
+ |
|
| 2640 |
+ } |
|
| 2641 |
+ } |
|
| 2642 |
+ , beforeSend: function () {
|
|
| 2643 |
+ //로딩창 show |
|
| 2644 |
+ $('.loading_layer').addClass('active');
|
|
| 2645 |
+ } |
|
| 2646 |
+ , complete: function () {
|
|
| 2647 |
+ //로딩창 hide |
|
| 2648 |
+ $('.loading_layer').removeClass('active');
|
|
| 2649 |
+ } |
|
| 2650 |
+ , error: function (e) {
|
|
| 2651 |
+ alert("에러가 발생했습니다."); console.log("ERROR : ", e);
|
|
| 2652 |
+ } |
|
| 2653 |
+ }); |
|
| 2654 |
+ } |
|
| 2655 |
+} |
|
| 2656 |
+ |
|
| 2657 |
+//지연 알림톡 발송취소 |
|
| 2658 |
+function kakaoATDelayCancel(msgGroupId){
|
|
| 2659 |
+ |
|
| 2660 |
+ var userId = document.modiForm.mberId.value; //사용자 회원 아이디 |
|
| 2661 |
+ |
|
| 2662 |
+ var msg = ""; |
|
| 2663 |
+ var url = "/uss/ion/msg/deleteKakaoATDelaySendCancelDataAjax.do"; |
|
| 2664 |
+ var json = {"msgGroupId" : msgGroupId, "userId" : userId};
|
|
| 2665 |
+ |
|
| 2666 |
+ if(confirm("해당 지연 알림톡을 발송취소 하시겠습니까?")){
|
|
| 2667 |
+ $.ajax({
|
|
| 2668 |
+ type: "POST" |
|
| 2669 |
+ , url: url |
|
| 2670 |
+ , data: json |
|
| 2671 |
+ , dataType:'json' |
|
| 2672 |
+ , async: false |
|
| 2673 |
+ , success: function (data, status) {
|
|
| 2674 |
+ var result = data.isStatus; |
|
| 2675 |
+ var msg = data.msg; |
|
| 2676 |
+ |
|
| 2677 |
+ if (result == 'loginFail') {
|
|
| 2678 |
+ alert(msg); |
|
| 2679 |
+ location.reload(); |
|
| 2680 |
+ }else if(result == 'dateFail'){
|
|
| 2681 |
+ |
|
| 2682 |
+ alert(msg); |
|
| 2683 |
+ location.reload(); |
|
| 2684 |
+ |
|
| 2685 |
+ }else if(result == 'fail'){
|
|
| 2686 |
+ alert(msg); |
|
| 2687 |
+ return false; |
|
| 2688 |
+ }else{
|
|
| 2689 |
+ |
|
| 2690 |
+ alert(msg); |
|
| 2691 |
+ |
|
| 2692 |
+ //회원 이용정지 처리하기 |
|
| 2693 |
+ //fn_updateMberSttus(msgGroupId); |
|
| 2694 |
+ fn_MsgDelayCancel_after(); |
|
| 2695 |
+ |
|
| 2696 |
+ } |
|
| 2697 |
+ } |
|
| 2698 |
+ , beforeSend: function () {
|
|
| 2699 |
+ //로딩창 show |
|
| 2700 |
+ $('.loading_layer').addClass('active');
|
|
| 2701 |
+ } |
|
| 2702 |
+ , complete: function () {
|
|
| 2703 |
+ //로딩창 hide |
|
| 2704 |
+ $('.loading_layer').removeClass('active');
|
|
| 2705 |
+ } |
|
| 2706 |
+ , error: function (e) {
|
|
| 2707 |
+ alert("에러가 발생했습니다."); console.log("ERROR : ", e);
|
|
| 2708 |
+ } |
|
| 2709 |
+ }); |
|
| 2710 |
+ } |
|
| 2711 |
+} |
|
| 2425 | 2712 |
</script> |
| 2426 | 2713 |
<style> |
| 2427 | 2714 |
.fileView {border-bottom: inherit !important;}
|
... | ... | @@ -2574,7 +2861,6 @@ |
| 2574 | 2861 |
</select> |
| 2575 | 2862 |
</td> |
| 2576 | 2863 |
</tr> |
| 2577 |
- <%-- |
|
| 2578 | 2864 |
<tr> |
| 2579 | 2865 |
<th>스미싱 의심(카톡)</th> |
| 2580 | 2866 |
<td> |
... | ... | @@ -2585,9 +2871,8 @@ |
| 2585 | 2871 |
</td> |
| 2586 | 2872 |
<th></th> |
| 2587 | 2873 |
<td> |
| 2588 |
- </td> |
|
| 2874 |
+ </td> |
|
| 2589 | 2875 |
</tr> |
| 2590 |
- --%> |
|
| 2591 | 2876 |
<tr> |
| 2592 | 2877 |
<th>전용 전송사</th> |
| 2593 | 2878 |
<td> |
... | ... | @@ -3022,7 +3307,6 @@ |
| 3022 | 3307 |
</select> |
| 3023 | 3308 |
</td> |
| 3024 | 3309 |
</tr> |
| 3025 |
- <%-- |
|
| 3026 | 3310 |
<tr> |
| 3027 | 3311 |
<th>스미싱 의심(카톡)</th> |
| 3028 | 3312 |
<td> |
... | ... | @@ -3035,7 +3319,6 @@ |
| 3035 | 3319 |
<td> |
| 3036 | 3320 |
</td> |
| 3037 | 3321 |
</tr> |
| 3038 |
- --%> |
|
| 3039 | 3322 |
<tr> |
| 3040 | 3323 |
<th>전용 전송사</th> |
| 3041 | 3324 |
<td> |
... | ... | @@ -4105,23 +4388,23 @@ |
| 4105 | 4388 |
<c:otherwise> |
| 4106 | 4389 |
- |
| 4107 | 4390 |
</c:otherwise> |
| 4108 |
- </c:choose> |
|
| 4391 |
+ </c:choose> |
|
| 4109 | 4392 |
</c:otherwise> |
| 4110 |
- </c:choose> |
|
| 4393 |
+ </c:choose> |
|
| 4111 | 4394 |
</td> |
| 4112 | 4395 |
</td> |
| 4113 | 4396 |
<td><c:out value="${kakaoReserveList.yellowId}"/></td>
|
| 4114 | 4397 |
<td class="sms_detail" style="text-align: left;"> |
| 4115 | 4398 |
<c:choose> |
| 4116 | 4399 |
<c:when test="${empty kakaoReserveList.smsTxt}">
|
| 4117 |
- - |
|
| 4400 |
+ - |
|
| 4118 | 4401 |
</c:when> |
| 4119 | 4402 |
<c:otherwise> |
| 4120 | 4403 |
<div class="ellipsis_line"> |
| 4121 | 4404 |
<c:out value="${kakaoReserveList.smsTxt}"/>
|
| 4122 | 4405 |
</div> |
| 4123 | 4406 |
</c:otherwise> |
| 4124 |
- </c:choose> |
|
| 4407 |
+ </c:choose> |
|
| 4125 | 4408 |
</td> |
| 4126 | 4409 |
<td><fmt:formatNumber value="${kakaoReserveList.msgGroupCnt}" type="number" /></td>
|
| 4127 | 4410 |
<td><fmt:formatNumber value="${kakaoReserveList.successCount}" type="number" /></td>
|
... | ... | @@ -4143,7 +4426,138 @@ |
| 4143 | 4426 |
</div> |
| 4144 | 4427 |
</div> |
| 4145 | 4428 |
|
| 4146 |
- <!-- 최근 카카오톡 전송 내역 --> |
|
| 4429 |
+ <!-- 최근 알림톡 지연 내역 --> |
|
| 4430 |
+ <form id="kakaoATDelayForm" name="kakaoATDelayForm" mehoth="post"> |
|
| 4431 |
+ <div class="title_box"> |
|
| 4432 |
+ <p>최근 알림톡 지연 내역</p> |
|
| 4433 |
+ <div class="button_box"> |
|
| 4434 |
+ <button type="button" onclick="kakaoATDelaySendArray(); return false;" class="fillBlue">발송승인</button> |
|
| 4435 |
+ <button type="button" onclick="kakaoATDelayCancelArray(); return false;" class="fillRed">발송취소</button> |
|
| 4436 |
+ </div> |
|
| 4437 |
+ </div> |
|
| 4438 |
+ <table class="user_table_col"> |
|
| 4439 |
+ <colgroup> |
|
| 4440 |
+ <col style="width:5%;"> |
|
| 4441 |
+ <col style="width:9%;"> |
|
| 4442 |
+ <col style="width:13%;"> |
|
| 4443 |
+ <col style="width:15%;"> |
|
| 4444 |
+ <col style="width:auto;"> |
|
| 4445 |
+ <col style="width:8%;"> |
|
| 4446 |
+ <col style="width:8%;"> |
|
| 4447 |
+ <col style="width:8%;"> |
|
| 4448 |
+ <col style="width:8%;"> |
|
| 4449 |
+ </colgroup> |
|
| 4450 |
+ <thead> |
|
| 4451 |
+ <tr> |
|
| 4452 |
+ <th> |
|
| 4453 |
+ <input type="checkbox" name="kakaoATCheckAll" id="kakaoATCheckAll" onclick="kakaoATDelayCheckAll();" /> |
|
| 4454 |
+ <label for="kakaoATCheckAll"></label> |
|
| 4455 |
+ </th> |
|
| 4456 |
+ <th>종류</th> |
|
| 4457 |
+ <th>등록일시</th> |
|
| 4458 |
+ <th>전송일시</th> |
|
| 4459 |
+ <th>채널ID</th> |
|
| 4460 |
+ <th>내용</th> |
|
| 4461 |
+ <th>건수</th> |
|
| 4462 |
+ <th>발송</th> |
|
| 4463 |
+ <th>취소</th> |
|
| 4464 |
+ </tr> |
|
| 4465 |
+ </thead> |
|
| 4466 |
+ <tbody> |
|
| 4467 |
+ <c:choose> |
|
| 4468 |
+ <c:when test="${not empty kakaoATDelaySentList}">
|
|
| 4469 |
+ <c:forEach var="kakaoDelayInfo" items="${kakaoATDelaySentList}" varStatus="status">
|
|
| 4470 |
+ <c:if test="${status.count < 4}">
|
|
| 4471 |
+ <tr> |
|
| 4472 |
+ <td> |
|
| 4473 |
+ <input name="kakaoATCheckDelayField" id="<c:out value='${kakaoDelayInfo.msgGroupId}'/>" title="Check <c:out value="${status.count}"/>" type="checkbox"/>
|
|
| 4474 |
+ <label for="<c:out value="${result.uniqId}"/>"></label>
|
|
| 4475 |
+ <input name="kakaoATCheckDelayId" type="hidden" class="${result.userId}" value="<c:out value='${kakaoDelayInfo.msgGroupId}'/>"/>
|
|
| 4476 |
+ </td> |
|
| 4477 |
+ <td> |
|
| 4478 |
+ <c:choose> |
|
| 4479 |
+ <c:when test="${kakaoDelayInfo.msgType == '8'}">
|
|
| 4480 |
+ 알림톡 |
|
| 4481 |
+ </c:when> |
|
| 4482 |
+ <c:when test="${kakaoDelayInfo.msgType == '9'}">
|
|
| 4483 |
+ 친구톡 |
|
| 4484 |
+ </c:when> |
|
| 4485 |
+ <c:otherwise> |
|
| 4486 |
+ - |
|
| 4487 |
+ </c:otherwise> |
|
| 4488 |
+ </c:choose> |
|
| 4489 |
+ </td> |
|
| 4490 |
+ <td> |
|
| 4491 |
+ <c:choose> |
|
| 4492 |
+ <c:when test="${not empty kakaoDelayInfo.regDate}">
|
|
| 4493 |
+ <fmt:parseDate value="${kakaoDelayInfo.regDate}" var="kakaoDelayRegdate" pattern="yyyy-MM-dd HH:mm:ss"/>
|
|
| 4494 |
+ <fmt:formatDate value="${kakaoDelayRegdate}" pattern="MM-dd HH:mm"/>
|
|
| 4495 |
+ </c:when> |
|
| 4496 |
+ <c:otherwise> |
|
| 4497 |
+ - |
|
| 4498 |
+ </c:otherwise> |
|
| 4499 |
+ </c:choose> |
|
| 4500 |
+ </td> |
|
| 4501 |
+ <td> |
|
| 4502 |
+ <c:choose> |
|
| 4503 |
+ <c:when test="${not empty kakaoDelayInfo.sentDate}">
|
|
| 4504 |
+ <fmt:formatDate value="${kakaoDelayInfo.sentDate}" pattern="yyyy-MM-dd HH:mm"/>
|
|
| 4505 |
+ </c:when> |
|
| 4506 |
+ <c:otherwise> |
|
| 4507 |
+ <c:choose> |
|
| 4508 |
+ <c:when test="${kakaoDelayInfo.atDelayYn eq 'Y'}">
|
|
| 4509 |
+ [스미싱의심] |
|
| 4510 |
+ <fmt:parseDate value="${kakaoDelayInfo.reqDate}" var="kakaoDelayReqDate" pattern="yyyy-MM-dd HH:mm:ss"/>
|
|
| 4511 |
+ <fmt:formatDate value="${kakaoDelayReqDate}" pattern="MM-dd HH:mm"/>
|
|
| 4512 |
+ </c:when> |
|
| 4513 |
+ <c:otherwise> |
|
| 4514 |
+ - |
|
| 4515 |
+ </c:otherwise> |
|
| 4516 |
+ </c:choose> |
|
| 4517 |
+ </c:otherwise> |
|
| 4518 |
+ </c:choose> |
|
| 4519 |
+ </td> |
|
| 4520 |
+ <td> |
|
| 4521 |
+ <c:out value="${kakaoDelayInfo.yellowId}"/>
|
|
| 4522 |
+ </td> |
|
| 4523 |
+ <td class="sms_detail" style="text-align: left;"> |
|
| 4524 |
+ <c:choose> |
|
| 4525 |
+ <c:when test="${empty kakaoDelayInfo.smsTxt}">
|
|
| 4526 |
+ - |
|
| 4527 |
+ </c:when> |
|
| 4528 |
+ <c:otherwise> |
|
| 4529 |
+ <div class="ellipsis_line"> |
|
| 4530 |
+ <c:out value="${kakaoDelayInfo.smsTxt}"/>
|
|
| 4531 |
+ </div> |
|
| 4532 |
+ </c:otherwise> |
|
| 4533 |
+ </c:choose> |
|
| 4534 |
+ </td> |
|
| 4535 |
+ <td> |
|
| 4536 |
+ <fmt:formatNumber value="${kakaoDelayInfo.msgGroupCnt}" type="number" />
|
|
| 4537 |
+ </td> |
|
| 4538 |
+ <td> |
|
| 4539 |
+ <button type="button" class="thinfill" id="kakaoATDelaySend${status.count}" name="msgDelaySend"
|
|
| 4540 |
+ onclick="kakaoATDelaySend('<c:out value="${kakaoDelayInfo.msgGroupId}"/>'); return false;">승인</button>
|
|
| 4541 |
+ </td> |
|
| 4542 |
+ <td> |
|
| 4543 |
+ <button type="button" class="thinfill" id="kakaoATDelayCancel${status.count}" name="msgDelayCancel"
|
|
| 4544 |
+ onclick="kakaoATDelayCancel('<c:out value="${kakaoDelayInfo.msgGroupId}"/>'); return false;">취소</button>
|
|
| 4545 |
+ </td> |
|
| 4546 |
+ </tr> |
|
| 4547 |
+ </c:if> |
|
| 4548 |
+ </c:forEach> |
|
| 4549 |
+ </c:when> |
|
| 4550 |
+ <c:otherwise> |
|
| 4551 |
+ <tr> |
|
| 4552 |
+ <td colspan="9">카카오톡 발송 내역이 없습니다.</td> |
|
| 4553 |
+ </tr> |
|
| 4554 |
+ </c:otherwise> |
|
| 4555 |
+ </c:choose> |
|
| 4556 |
+ </tbody> |
|
| 4557 |
+ </table> |
|
| 4558 |
+ </form> |
|
| 4559 |
+ |
|
| 4560 |
+ <!-- 최근 팩스 전송 내역 --> |
|
| 4147 | 4561 |
<div class="title_box"> |
| 4148 | 4562 |
<p>최근 팩스 전송 내역</p> |
| 4149 | 4563 |
<div class="button_box"> |
... | ... | @@ -4204,8 +4618,8 @@ |
| 4204 | 4618 |
<col style="width:calc(100%/2);"> |
| 4205 | 4619 |
<col style="width:calc(100%/2);"> |
| 4206 | 4620 |
<col style="width:calc(100%/2);"> |
| 4207 |
- <col style="width:calc(100%/2);"> |
|
| 4208 |
- <col style="width:calc(100%/2);"> |
|
| 4621 |
+ <col style="width:calc(100%/2);"> |
|
| 4622 |
+ <col style="width:calc(100%/2);"> |
|
| 4209 | 4623 |
</colgroup> |
| 4210 | 4624 |
<thead> |
| 4211 | 4625 |
<tr> |
... | ... | @@ -4252,7 +4666,7 @@ |
| 4252 | 4666 |
<span class="c_999999">발신번호 차단</span> |
| 4253 | 4667 |
</c:otherwise> |
| 4254 | 4668 |
</c:choose> |
| 4255 |
- </td> |
|
| 4669 |
+ </td> |
|
| 4256 | 4670 |
</tr> |
| 4257 | 4671 |
</c:forEach> |
| 4258 | 4672 |
</c:when> |
... | ... | @@ -4370,7 +4784,7 @@ |
| 4370 | 4784 |
<c:set var="userPriceL" value="${longPrice}"/>
|
| 4371 | 4785 |
<c:set var="userPriceP" value="${picturePrice}"/>
|
| 4372 | 4786 |
<c:set var="userPriceP2" value="${picture2Price}"/>
|
| 4373 |
- <c:set var="userPriceP3" value="${picture3Price}"/>
|
|
| 4787 |
+ <c:set var="userPriceP3" value="${picture3Price}"/>
|
|
| 4374 | 4788 |
<tr> |
| 4375 | 4789 |
<td>고객단가</td> |
| 4376 | 4790 |
<td> |
... | ... | @@ -4511,7 +4925,7 @@ |
| 4511 | 4925 |
</c:otherwise> |
| 4512 | 4926 |
</c:choose> |
| 4513 | 4927 |
</div> |
| 4514 |
- </td> |
|
| 4928 |
+ </td> |
|
| 4515 | 4929 |
<td> |
| 4516 | 4930 |
<c:choose> |
| 4517 | 4931 |
<c:when test="${userLogin.loginYn == 'Y'}">
|
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?