Merge branch 'master' of http://tolag3@vcs.iten.co.kr:9999/hylee/mjon_git
@c07e23741557ec142d3685b3b764ca1cb8c59fdb
--- src/main/java/itn/let/cop/bbs/web/EgovBBSManageController.java
+++ src/main/java/itn/let/cop/bbs/web/EgovBBSManageController.java
... | ... | @@ -1572,6 +1572,32 @@ |
| 1572 | 1572 |
if(pattern.equals("/web/cop/bbs/addSuggestBoardArticle.do")){ // 불편신고
|
| 1573 | 1573 |
model.addAttribute("boardType", "suggest");
|
| 1574 | 1574 |
} |
| 1575 |
+ |
|
| 1576 |
+ // NEW |
|
| 1577 |
+ // 공통 |
|
| 1578 |
+ List<TermsVO> resultList = new ArrayList<TermsVO>(); |
|
| 1579 |
+ |
|
| 1580 |
+ // 이용약관, 개인정보보호방침 최신버전 List |
|
| 1581 |
+ TermsVO termsVO3 = new TermsVO(); |
|
| 1582 |
+ termsVO3.setFirstIndex(0); |
|
| 1583 |
+ termsVO3.setRecordCountPerPage(1); |
|
| 1584 |
+ termsVO3.setSearchDiv("03");
|
|
| 1585 |
+ termsVO3.setSearchUseYn("Y");
|
|
| 1586 |
+ termsVO3.setSearchSortCnd("effectDate");
|
|
| 1587 |
+ termsVO3.setSearchSortOrd("desc");
|
|
| 1588 |
+ List<TermsVO> termsMastList2 = egovSiteManagerService.selectTermsMastMngList(termsVO3); |
|
| 1589 |
+ if (termsMastList2.size() > 0) {
|
|
| 1590 |
+ TermsVO termsVO4 = new TermsVO(); |
|
| 1591 |
+ termsVO4.setFirstIndex(0); |
|
| 1592 |
+ termsVO4.setRecordCountPerPage(20); |
|
| 1593 |
+ termsVO4.setTermsMastNo(termsMastList2.get(0).getTermsMastNo()); |
|
| 1594 |
+ termsVO4.setSearchUseYn("Y");
|
|
| 1595 |
+ termsVO4.setSearchSortCnd("sort");
|
|
| 1596 |
+ termsVO4.setSearchSortOrd("ASC");
|
|
| 1597 |
+ resultList = egovSiteManagerService.selectTermsSubMngList(termsVO4); |
|
| 1598 |
+ } |
|
| 1599 |
+ |
|
| 1600 |
+ model.addAttribute("resultList", resultList);
|
|
| 1575 | 1601 |
|
| 1576 | 1602 |
return "web/cop/bbs/EgovNoticeRegist"; |
| 1577 | 1603 |
} |
... | ... | @@ -1641,6 +1667,32 @@ |
| 1641 | 1667 |
model.addAttribute("board", boardVO);
|
| 1642 | 1668 |
//최대 첨부파일 갯수 지정 |
| 1643 | 1669 |
|
| 1670 |
+ // NEW |
|
| 1671 |
+ // 공통 |
|
| 1672 |
+ List<TermsVO> resultList = new ArrayList<TermsVO>(); |
|
| 1673 |
+ |
|
| 1674 |
+ // 이용약관, 개인정보보호방침 최신버전 List |
|
| 1675 |
+ TermsVO termsVO3 = new TermsVO(); |
|
| 1676 |
+ termsVO3.setFirstIndex(0); |
|
| 1677 |
+ termsVO3.setRecordCountPerPage(1); |
|
| 1678 |
+ termsVO3.setSearchDiv("03");
|
|
| 1679 |
+ termsVO3.setSearchUseYn("Y");
|
|
| 1680 |
+ termsVO3.setSearchSortCnd("effectDate");
|
|
| 1681 |
+ termsVO3.setSearchSortOrd("desc");
|
|
| 1682 |
+ List<TermsVO> termsMastList2 = egovSiteManagerService.selectTermsMastMngList(termsVO3); |
|
| 1683 |
+ if (termsMastList2.size() > 0) {
|
|
| 1684 |
+ TermsVO termsVO4 = new TermsVO(); |
|
| 1685 |
+ termsVO4.setFirstIndex(0); |
|
| 1686 |
+ termsVO4.setRecordCountPerPage(20); |
|
| 1687 |
+ termsVO4.setTermsMastNo(termsMastList2.get(0).getTermsMastNo()); |
|
| 1688 |
+ termsVO4.setSearchUseYn("Y");
|
|
| 1689 |
+ termsVO4.setSearchSortCnd("sort");
|
|
| 1690 |
+ termsVO4.setSearchSortOrd("ASC");
|
|
| 1691 |
+ resultList = egovSiteManagerService.selectTermsSubMngList(termsVO4); |
|
| 1692 |
+ } |
|
| 1693 |
+ |
|
| 1694 |
+ model.addAttribute("resultList", resultList);
|
|
| 1695 |
+ |
|
| 1644 | 1696 |
return "web/cop/bbs/EgovNoticeRegist"; |
| 1645 | 1697 |
} |
| 1646 | 1698 |
|
--- src/main/java/itn/let/fax/addr/web/FaxAddrController.java
+++ src/main/java/itn/let/fax/addr/web/FaxAddrController.java
... | ... | @@ -57,8 +57,6 @@ |
| 57 | 57 |
import itn.let.fax.addr.service.FaxAddrService; |
| 58 | 58 |
import itn.let.fax.addr.service.FaxAddrTransHistVO; |
| 59 | 59 |
import itn.let.fax.addr.service.FaxAddrVO; |
| 60 |
-import itn.let.mjo.addr.service.AddrGroupVO; |
|
| 61 |
-import itn.let.mjo.addr.service.AddrVO; |
|
| 62 | 60 |
import itn.let.mjo.msgdata.service.PhoneVO; |
| 63 | 61 |
|
| 64 | 62 |
@Controller |
... | ... | @@ -1679,19 +1677,19 @@ |
| 1679 | 1677 |
|
| 1680 | 1678 |
if(userId != "") {
|
| 1681 | 1679 |
addrGroupVO.setMberId(userId); |
| 1682 |
- } |
|
| 1683 | 1680 |
|
| 1684 |
- if(addrGroupVO.getPageUnit() != 10) {
|
|
| 1685 |
- addrGroupVO.setPageUnit(addrGroupVO.getPageUnit()); |
|
| 1681 |
+ if(addrGroupVO.getPageUnit() != 10) {
|
|
| 1682 |
+ addrGroupVO.setPageUnit(addrGroupVO.getPageUnit()); |
|
| 1683 |
+ } |
|
| 1684 |
+ |
|
| 1685 |
+ if("".equals(addrGroupVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
|
| 1686 |
+ addrGroupVO.setSearchSortCnd("grpOrder");
|
|
| 1687 |
+ addrGroupVO.setSearchSortOrd("desc");
|
|
| 1688 |
+ } |
|
| 1689 |
+ |
|
| 1690 |
+ addrGroupVO.setSiteId("web");
|
|
| 1691 |
+ addrGroupList = faxAddrGroupService.selectFaxAddrGroupList(addrGroupVO); |
|
| 1686 | 1692 |
} |
| 1687 |
- |
|
| 1688 |
- if("".equals(addrGroupVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
|
| 1689 |
- addrGroupVO.setSearchSortCnd("grpOrder");
|
|
| 1690 |
- addrGroupVO.setSearchSortOrd("desc");
|
|
| 1691 |
- } |
|
| 1692 |
- |
|
| 1693 |
- addrGroupVO.setSiteId("web");
|
|
| 1694 |
- addrGroupList = faxAddrGroupService.selectFaxAddrGroupList(addrGroupVO); |
|
| 1695 | 1693 |
} |
| 1696 | 1694 |
catch(Exception e) {
|
| 1697 | 1695 |
isSuccess = false; |
--- 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
... | ... | @@ -157,6 +157,32 @@ |
| 157 | 157 |
kakaoSandInfo.setReqDate(sdFormat.format(now)); |
| 158 | 158 |
|
| 159 | 159 |
} |
| 160 |
+ |
|
| 161 |
+ if(kakaoVO.getAtSmishingYn().equals("Y")) {
|
|
| 162 |
+ String sandDate = ""; |
|
| 163 |
+ |
|
| 164 |
+ if(kakaoVO.getDivideChk().equals("Y")) {
|
|
| 165 |
+ //분할 문자 예약 시간 입력해주기 |
|
| 166 |
+ sandDate = dividDayList.get(i); |
|
| 167 |
+ }else {
|
|
| 168 |
+ //예약 시간 입력해주기 |
|
| 169 |
+ sandDate = kakaoVO.getReqDate(); |
|
| 170 |
+ } |
|
| 171 |
+ |
|
| 172 |
+ SimpleDateFormat sdFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
|
|
| 173 |
+ Date date = sdFormat.parse(sandDate); |
|
| 174 |
+ |
|
| 175 |
+ Calendar cal1 = Calendar.getInstance(); |
|
| 176 |
+ cal1.setTime(date); // 시간 설정 |
|
| 177 |
+ cal1.add(Calendar.MINUTE, 30); // 30분 연산 |
|
| 178 |
+ |
|
| 179 |
+ String reqDate = sdFormat.format(cal1.getTime()); |
|
| 180 |
+ |
|
| 181 |
+ System.out.println("@@@@@@@@@@@@@@ reqDate : "+reqDate);
|
|
| 182 |
+ kakaoVO.setReqDate(reqDate); |
|
| 183 |
+ kakaoSandInfo.setReqDate(reqDate); |
|
| 184 |
+ } |
|
| 185 |
+ |
|
| 160 | 186 |
/**전송시간 설정 (끝)------------------------------------------------*/ |
| 161 | 187 |
|
| 162 | 188 |
/**카카오 전송 데이터 추가*/ |
... | ... | @@ -231,6 +257,8 @@ |
| 231 | 257 |
mjonMsgVO.setBefCash(kakaoVO.getBefCash()); |
| 232 | 258 |
mjonMsgVO.setBefPoint(kakaoVO.getBefPoint()); |
| 233 | 259 |
mjonMsgVO.setKakaoSubMagOrgnlTxt(kakaoVO.getKakaoSubMagOrgnlTxt()); |
| 260 |
+ mjonMsgVO.setAtDelayYn(kakaoVO.getAtSmishingYn()); |
|
| 261 |
+ |
|
| 234 | 262 |
|
| 235 | 263 |
if(kakaoVO.getBizJsonYn().equals("Y")) {
|
| 236 | 264 |
mjonMsgVO.setFileCnt("1");
|
--- src/main/java/itn/let/kakao/user/kakaoAt/web/KakaoAlimTalkSendController.java
+++ src/main/java/itn/let/kakao/user/kakaoAt/web/KakaoAlimTalkSendController.java
... | ... | @@ -49,11 +49,16 @@ |
| 49 | 49 |
import itn.let.kakao.kakaoComm.kakaoApi.KakaoApiTemplate; |
| 50 | 50 |
import itn.let.kakao.kakaoComm.kakaoApi.service.KakaoApiService; |
| 51 | 51 |
import itn.let.kakao.user.kakaoAt.service.KakaoAlimTalkService; |
| 52 |
+import itn.let.mjo.mjocommon.MjonCommon; |
|
| 53 |
+import itn.let.mjo.msg.service.MjonMsgVO; |
|
| 52 | 54 |
import itn.let.mjo.msgdata.service.MjonMsgDataService; |
| 53 | 55 |
import itn.let.mjo.msgdata.service.MjonMsgDataVO; |
| 54 | 56 |
import itn.let.mjo.msgdata.service.MjonMsgReturnVO; |
| 57 |
+import itn.let.sym.site.service.EgovSiteManagerService; |
|
| 55 | 58 |
import itn.let.sym.site.service.JoinSettingVO; |
| 59 |
+import itn.let.uss.umt.service.EgovUserManageService; |
|
| 56 | 60 |
import itn.let.uss.umt.service.MberManageVO; |
| 61 |
+import itn.let.uss.umt.service.UserManageVO; |
|
| 57 | 62 |
|
| 58 | 63 |
/** |
| 59 | 64 |
* |
... | ... | @@ -86,10 +91,18 @@ |
| 86 | 91 |
|
| 87 | 92 |
@Resource(name = "MjonMsgDataService") |
| 88 | 93 |
private MjonMsgDataService mjonMsgDataService; |
| 94 |
+ |
|
| 95 |
+ /** userManageService */ |
|
| 96 |
+ @Resource(name = "userManageService") |
|
| 97 |
+ private EgovUserManageService userManageService; |
|
| 89 | 98 |
|
| 90 | 99 |
/** EgovMessageSource */ |
| 91 | 100 |
@Resource(name="egovMessageSource") |
| 92 | 101 |
EgovMessageSource egovMessageSource; |
| 102 |
+ |
|
| 103 |
+ /** 사이트 설정 */ |
|
| 104 |
+ @Resource(name = "egovSiteManagerService") |
|
| 105 |
+ EgovSiteManagerService egovSiteManagerService; |
|
| 93 | 106 |
|
| 94 | 107 |
@Autowired |
| 95 | 108 |
KakaoApiProfile kakaoApiProfile; |
... | ... | @@ -154,6 +167,7 @@ |
| 154 | 167 |
|
| 155 | 168 |
mberManageVO = mjonMsgDataService.selectMberManageInfo(userId); |
| 156 | 169 |
|
| 170 |
+ model.addAttribute("atSmishingYn", mberManageVO.getAtSmishingYn());
|
|
| 157 | 171 |
} |
| 158 | 172 |
|
| 159 | 173 |
//3.사용자 개인단가 정보가 0이 아니면 개인단가 사용, 없으면 시스템 기본 단가 사용 |
... | ... | @@ -479,10 +493,9 @@ |
| 479 | 493 |
int resultSts = 0; //발송결과 건수 |
| 480 | 494 |
int resultBlockSts = 0; //수신거부 등록번호로 발송을 안한 건수 |
| 481 | 495 |
|
| 496 |
+ LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; |
|
| 497 |
+ String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); |
|
| 482 | 498 |
try {
|
| 483 |
- |
|
| 484 |
- LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; |
|
| 485 |
- String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); |
|
| 486 | 499 |
|
| 487 | 500 |
if(userId == "") {
|
| 488 | 501 |
modelAndView.addObject("message", "로그인 후 이용이 가능합니다.");
|
... | ... | @@ -491,7 +504,9 @@ |
| 491 | 504 |
}else {
|
| 492 | 505 |
/** 카카오톡 전송 기본 설정 -------------------------------------------*/ |
| 493 | 506 |
kakaoVO.setSendType("AT");
|
| 507 |
+ kakaoVO.setMsgType("8");
|
|
| 494 | 508 |
kakaoVO.setUserId(userId); |
| 509 |
+ |
|
| 495 | 510 |
} |
| 496 | 511 |
|
| 497 | 512 |
/** 전송금액 설정 --------------------------------------------------*/ |
... | ... | @@ -709,6 +724,43 @@ |
| 709 | 724 |
modelAndView.addObject("result", "success");
|
| 710 | 725 |
modelAndView.addObject("resultSts", resultSts);
|
| 711 | 726 |
|
| 727 |
+ |
|
| 728 |
+/** 카카오톡 발송 내용 법인폰, 알림톡 결과 처리 --------------------------------------------------*/ |
|
| 729 |
+ try {
|
|
| 730 |
+ String adminSmsNoticeYn = "Y"; |
|
| 731 |
+ String spamStatus = kakaoVO.getAtSmishingYn(); // 스미싱 의심으로 체크된 고객 정보 |
|
| 732 |
+ |
|
| 733 |
+ UserManageVO userManageVO = new UserManageVO(); |
|
| 734 |
+ userManageVO.setMberId(userId); |
|
| 735 |
+ |
|
| 736 |
+ if(!userId.equals("")) {
|
|
| 737 |
+ userManageVO = userManageService.selectAdminSmsNoticeYn(userManageVO); |
|
| 738 |
+ adminSmsNoticeYn = userManageVO.getAdminSmsNoticeYn(); |
|
| 739 |
+ } |
|
| 740 |
+ |
|
| 741 |
+ //법인폰 알림 온 이거나 스미싱의심 문자인 경우 법인폰으로 발송 |
|
| 742 |
+ if(adminSmsNoticeYn.equals("Y") || spamStatus.equals("Y")) {
|
|
| 743 |
+ |
|
| 744 |
+ if(spamStatus.equals("Y")) {
|
|
| 745 |
+ kakaoVO.setAtDelayYn("Y");
|
|
| 746 |
+ } |
|
| 747 |
+ |
|
| 748 |
+ // 법인폰 알람여부 체크 |
|
| 749 |
+ JoinSettingVO joinSettingVO = new JoinSettingVO(); |
|
| 750 |
+ joinSettingVO = egovSiteManagerService.selectAdminNotiDetail(); |
|
| 751 |
+ |
|
| 752 |
+ // SLACK 체크 |
|
| 753 |
+ if (joinSettingVO != null && joinSettingVO.getSlackNoti().equals("Y")) {
|
|
| 754 |
+ //Slack으로 메세지 전송 처리 |
|
| 755 |
+ MjonCommon comm = new MjonCommon(); |
|
| 756 |
+ comm.getAdminKakaoAtSandSlack(kakaoVO); |
|
| 757 |
+ } |
|
| 758 |
+ } |
|
| 759 |
+ |
|
| 760 |
+ } catch (Exception e) {
|
|
| 761 |
+ throw new Exception("++++++++++++++++++++++ getAdminPhoneSendMsgData Error !!! " + e);
|
|
| 762 |
+ } |
|
| 763 |
+ |
|
| 712 | 764 |
return modelAndView; |
| 713 | 765 |
} |
| 714 | 766 |
} |
--- src/main/java/itn/let/mjo/mjocommon/MjonCommon.java
+++ src/main/java/itn/let/mjo/mjocommon/MjonCommon.java
... | ... | @@ -12,6 +12,7 @@ |
| 12 | 12 |
|
| 13 | 13 |
import com.mysql.jdbc.StringUtils; |
| 14 | 14 |
|
| 15 |
+import itn.let.kakao.kakaoComm.KakaoVO; |
|
| 15 | 16 |
import itn.let.mjo.msg.service.MjonMsgVO; |
| 16 | 17 |
|
| 17 | 18 |
@Service("MjonCommon")
|
... | ... | @@ -242,4 +243,63 @@ |
| 242 | 243 |
return mjonMsgVO; |
| 243 | 244 |
} |
| 244 | 245 |
|
| 246 |
+ @SuppressWarnings("unchecked")
|
|
| 247 |
+ public void getAdminKakaoAtSandSlack(KakaoVO kakaoVO) {
|
|
| 248 |
+ |
|
| 249 |
+ HttpClient client = new HttpClient(); |
|
| 250 |
+ PostMethod post = new PostMethod(url); |
|
| 251 |
+ JSONObject json = new JSONObject(); |
|
| 252 |
+ try {
|
|
| 253 |
+ |
|
| 254 |
+ String reserveYn = kakaoVO.getReserveYn(); |
|
| 255 |
+ String atDelayYn = kakaoVO.getAtDelayYn(); |
|
| 256 |
+ String smsTxt = kakaoVO.getTemplateContent(); |
|
| 257 |
+ String reservSmsTxt = ""; |
|
| 258 |
+ String smisingSmsTxt = ""; |
|
| 259 |
+ //예약문자를 발송하는 경우 문자 내용 앞에 "[예약]" 표시되도록 처리 |
|
| 260 |
+ if(reserveYn.equals("Y")) {
|
|
| 261 |
+ reservSmsTxt = "[예약]" + smsTxt; |
|
| 262 |
+ smsTxt = reservSmsTxt; |
|
| 263 |
+ }else if(atDelayYn.equals("Y")) {
|
|
| 264 |
+ |
|
| 265 |
+ smisingSmsTxt = "[스미싱의심]" + smsTxt; |
|
| 266 |
+ smsTxt = smisingSmsTxt; |
|
| 267 |
+ } |
|
| 268 |
+ |
|
| 269 |
+ String sandName = kakaoVO.getCallFrom(); |
|
| 270 |
+ String userId = kakaoVO.getUserId(); |
|
| 271 |
+ String msgType = ""; |
|
| 272 |
+ |
|
| 273 |
+ if(kakaoVO.getMsgType().equals("8")) {
|
|
| 274 |
+ msgType = "[알림톡]"; |
|
| 275 |
+ }else if(kakaoVO.getMsgType().equals("9")){
|
|
| 276 |
+ |
|
| 277 |
+ } |
|
| 278 |
+ sandName = "[" + userId + "]" + "[" + sandName + "]" + msgType; |
|
| 279 |
+ |
|
| 280 |
+ json.put("channel", "mjon메시지");
|
|
| 281 |
+ json.put("text", smsTxt);
|
|
| 282 |
+ json.put("username", sandName);
|
|
| 283 |
+ |
|
| 284 |
+ |
|
| 285 |
+ post.addParameter("payload", json.toString());
|
|
| 286 |
+ // 처음에 utf-8로 content-type안넣어주니까 한글은 깨져서 content-type넣어줌 |
|
| 287 |
+ post.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
|
|
| 288 |
+ int responseCode = client.executeMethod(post); |
|
| 289 |
+ String response = post.getResponseBodyAsString(); |
|
| 290 |
+ if (responseCode != HttpStatus.SC_OK) {
|
|
| 291 |
+ System.out.println("Response: " + response);
|
|
| 292 |
+ } |
|
| 293 |
+ } catch (IllegalArgumentException e) {
|
|
| 294 |
+ System.out.println("IllegalArgumentException posting to Slack " + e);
|
|
| 295 |
+ } catch (IOException e) {
|
|
| 296 |
+ System.out.println("IOException posting to Slack " + e);
|
|
| 297 |
+ } catch (Exception e) {
|
|
| 298 |
+ System.out.println("Exception posting to Slack " + e);
|
|
| 299 |
+ } finally {
|
|
| 300 |
+ post.releaseConnection(); |
|
| 301 |
+ } |
|
| 302 |
+ |
|
| 303 |
+ } |
|
| 304 |
+ |
|
| 245 | 305 |
} |
--- 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
... | ... | @@ -9,6 +9,7 @@ |
| 9 | 9 |
private static final long serialVersionUID = 1L; |
| 10 | 10 |
private String msgId ;// '문자ID', |
| 11 | 11 |
private String userId ; // '문자온 일반회원ID', |
| 12 |
+ private String mberId ; |
|
| 12 | 13 |
private String agentFlag ;//'전송사코드(1:아이하트,2:...)', |
| 13 | 14 |
private String userData; //'(I)사용자 정의 코드(참조용으로 사용되는 것으로 메시지 전송 시에는 사용되지 않는다-문자온/아이하트 참조키용)', |
| 14 | 15 |
private String msgSeq; // '(I)메시지의 고유번호. 자동 증가하는 것으로 MSG_DATA의 PRIMARY KEY가 된다.', |
... | ... | @@ -354,6 +355,10 @@ |
| 354 | 355 |
private String delayYn; // 문자 30분 지연 처리 유무 |
| 355 | 356 |
private String delayCompleteYn; // 문자 30분 지연 처리 완료 유무 |
| 356 | 357 |
|
| 358 |
+ private String atDelayYn = "N"; // 알림 30분 지연 처리 유무 |
|
| 359 |
+ private String atDelayCompleteYn; // 알림톡 30분 지연 처리 완료 유무 |
|
| 360 |
+ private String atSmishingYn; // 알림톡 스메싱 여부 |
|
| 361 |
+ |
|
| 357 | 362 |
private int totalCallCnt; //수신자 전체 갯 |
| 358 | 363 |
|
| 359 | 364 |
private String bizLogCallStatus; //다우기술 biz_log 테이블의 발송결과 코드 값. |
... | ... | @@ -449,6 +454,12 @@ |
| 449 | 454 |
} |
| 450 | 455 |
public void setUserId(String userId) {
|
| 451 | 456 |
this.userId = userId; |
| 457 |
+ } |
|
| 458 |
+ public String getMberId() {
|
|
| 459 |
+ return mberId; |
|
| 460 |
+ } |
|
| 461 |
+ public void setMberId(String mberId) {
|
|
| 462 |
+ this.mberId = mberId; |
|
| 452 | 463 |
} |
| 453 | 464 |
public String getAgentFlag() {
|
| 454 | 465 |
return agentFlag; |
... | ... | @@ -1375,5 +1386,22 @@ |
| 1375 | 1386 |
public void setAccessKey(String accessKey) {
|
| 1376 | 1387 |
this.accessKey = accessKey; |
| 1377 | 1388 |
} |
| 1378 |
- |
|
| 1389 |
+ public String getAtDelayYn() {
|
|
| 1390 |
+ return atDelayYn; |
|
| 1391 |
+ } |
|
| 1392 |
+ public void setAtDelayYn(String atDelayYn) {
|
|
| 1393 |
+ this.atDelayYn = atDelayYn; |
|
| 1394 |
+ } |
|
| 1395 |
+ public String getAtDelayCompleteYn() {
|
|
| 1396 |
+ return atDelayCompleteYn; |
|
| 1397 |
+ } |
|
| 1398 |
+ public void setAtDelayCompleteYn(String atDelayCompleteYn) {
|
|
| 1399 |
+ this.atDelayCompleteYn = atDelayCompleteYn; |
|
| 1400 |
+ } |
|
| 1401 |
+ public String getAtSmishingYn() {
|
|
| 1402 |
+ return atSmishingYn; |
|
| 1403 |
+ } |
|
| 1404 |
+ public void setAtSmishingYn(String atSmishingYn) {
|
|
| 1405 |
+ this.atSmishingYn = atSmishingYn; |
|
| 1406 |
+ } |
|
| 1379 | 1407 |
} |
--- src/main/java/itn/let/mjo/msg/service/impl/MjonMsgDAO.java
+++ src/main/java/itn/let/mjo/msg/service/impl/MjonMsgDAO.java
... | ... | @@ -426,11 +426,41 @@ |
| 426 | 426 |
update("mjonMsgDAO.updateMsgDelaySendRealTimeMsgDataFlag", mjonMsgVO);
|
| 427 | 427 |
} |
| 428 | 428 |
|
| 429 |
+ // mj_msg_data 테이블 예약 지연 문자 발송 요청시간 수정 |
|
| 430 |
+ public void updateMsgDelaySendReserveTimeMsgDataFlag(MjonMsgVO mjonMsgVO) {
|
|
| 431 |
+ update("mjonMsgDAO.updateMsgDelaySendReserveTimeMsgDataFlag", mjonMsgVO);
|
|
| 432 |
+ } |
|
| 433 |
+ |
|
| 429 | 434 |
// mj_msg_group_data 테이블 지연 문자 즉시발송 요청시간 수정 |
| 430 | 435 |
public void updateMsgDelaySendRealTimeMsgGroupDataFlag(MjonMsgVO mjonMsgVO) {
|
| 431 | 436 |
update("mjonMsgDAO.updateMsgDelaySendRealTimeMsgGroupDataFlag", mjonMsgVO);
|
| 432 | 437 |
} |
| 433 | 438 |
|
| 439 |
+ // mj_msg_group_data 테이블 예약 지연 문자 발송 요청시간 수정 |
|
| 440 |
+ public void updateMsgDelaySendReserveTimeMsgGroupDataFlag(MjonMsgVO mjonMsgVO) {
|
|
| 441 |
+ update("mjonMsgDAO.updateMsgDelaySendReserveTimeMsgGroupDataFlag", mjonMsgVO);
|
|
| 442 |
+ } |
|
| 443 |
+ |
|
| 444 |
+ // mj_msg_data 테이블 지연 알림톡 취소 값 수정 |
|
| 445 |
+ public void updateKakaoAtDelayCancelMsgDataFlag(MjonMsgVO mjonMsgVO) {
|
|
| 446 |
+ update("mjonMsgDAO.updateKakaoAtDelayCancelMsgDataFlag", mjonMsgVO);
|
|
| 447 |
+ } |
|
| 448 |
+ |
|
| 449 |
+ // mj_msg_group_data 테이블 지연 알림톡 취소 값 수정 |
|
| 450 |
+ public void updateKakaoAtDelayCancelMsgGroupDataFlag(MjonMsgVO mjonMsgVO) {
|
|
| 451 |
+ update("mjonMsgDAO.updateKakaoAtDelayCancelMsgGroupDataFlag", mjonMsgVO);
|
|
| 452 |
+ } |
|
| 453 |
+ |
|
| 454 |
+ // mj_msg_data 테이블 지연 알림톡 즉시발송 요청시간 수정 |
|
| 455 |
+ public void updateKakaoAtDelaySendRealTimeMsgDataFlag(MjonMsgVO mjonMsgVO) {
|
|
| 456 |
+ update("mjonMsgDAO.updateKakaoAtDelaySendRealTimeMsgDataFlag", mjonMsgVO);
|
|
| 457 |
+ } |
|
| 458 |
+ |
|
| 459 |
+ // mj_msg_group_data 테이블 지연 알림톡 즉시발송 요청시간 수정 |
|
| 460 |
+ public void updateKakaoAtDelaySendRealTimeMsgGroupDataFlag(MjonMsgVO mjonMsgVO) {
|
|
| 461 |
+ update("mjonMsgDAO.updateKakaoAtDelaySendRealTimeMsgGroupDataFlag", mjonMsgVO);
|
|
| 462 |
+ } |
|
| 463 |
+ |
|
| 434 | 464 |
//문자 그룹아이디 리스트의 발송일자 정보 불러오기 |
| 435 | 465 |
@SuppressWarnings("unchecked")
|
| 436 | 466 |
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
... | ... | @@ -764,6 +764,10 @@ |
| 764 | 764 |
//삭제 문자 건수 MSG_SEQ 번호 받아오기 |
| 765 | 765 |
List<MjonResvMsgVO> resultMsgSeqList = mjonReservMsgDAO.selectMsgSeqListByGroupId(mjonResvMsgVO); |
| 766 | 766 |
|
| 767 |
+ String reservYn = resultMsgSeqList.get(0).getReserveYn(); |
|
| 768 |
+ |
|
| 769 |
+ System.out.println("++++++++++++++++++++++++++++ reservYn ::: "+reservYn);
|
|
| 770 |
+ |
|
| 767 | 771 |
int size = resultMsgSeqList.size(); |
| 768 | 772 |
List<String> userDataList = new ArrayList<String>(); |
| 769 | 773 |
for(int i=0; i < size; i++) {
|
... | ... | @@ -775,8 +779,8 @@ |
| 775 | 779 |
|
| 776 | 780 |
mjonResvMsgVO.setUserDataList(userDataList); |
| 777 | 781 |
|
| 778 |
- int ihResult = 0; |
|
| 779 |
- int imoResult = 0; |
|
| 782 |
+ //int ihResult = 0; |
|
| 783 |
+ //int imoResult = 0; |
|
| 780 | 784 |
int bizResult = 0; |
| 781 | 785 |
int FHSmsResult = 0; |
| 782 | 786 |
int FHMmsResult = 0; |
... | ... | @@ -785,37 +789,136 @@ |
| 785 | 789 |
int JJB01Result = 0; |
| 786 | 790 |
int JJB02Result = 0; |
| 787 | 791 |
|
| 788 |
- |
|
| 789 |
- //아이하트 딜레이문자 즉시발송 처리 |
|
| 790 |
- //ihResult = mjonReservMsgDAO.deleteIHeartMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 791 |
- ihResult = mjonReservMsgDAO.updateRealTimeIHeartMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 792 |
- |
|
| 793 |
- //현대퓨처넷 단문 딜레이문자 즉시발송 처리 |
|
| 794 |
- FHSmsResult = mjonReservMsgDAO.updateRealTimeHFNSmsMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 792 |
+ //즉시 전송 딜레이건에 대한 즉시 전송 처리 - 아이하트, 아에임오 전송사는 사용 안하기 때문에 주석처리함. |
|
| 793 |
+ if(reservYn.equals("N")) {
|
|
| 794 |
+ |
|
| 795 |
+ //아이하트 딜레이문자 즉시발송 처리 |
|
| 796 |
+ //ihResult = mjonReservMsgDAO.deleteIHeartMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 797 |
+ //ihResult = mjonReservMsgDAO.updateRealTimeIHeartMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 798 |
+ |
|
| 799 |
+ //현대퓨처넷 단문 딜레이문자 즉시발송 처리 |
|
| 800 |
+ FHSmsResult = mjonReservMsgDAO.updateRealTimeHFNSmsMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 795 | 801 |
|
| 796 |
- //현대퓨처넷 장문/그림 딜레이문자 즉시발송 처리 |
|
| 797 |
- FHMmsResult = mjonReservMsgDAO.updateRealTimeHFNMmsMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 802 |
+ //현대퓨처넷 장문/그림 딜레이문자 즉시발송 처리 |
|
| 803 |
+ FHMmsResult = mjonReservMsgDAO.updateRealTimeHFNMmsMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 804 |
+ |
|
| 805 |
+ //아이엠오 딜레이문자 즉시발송 처리 |
|
| 806 |
+ //imoResult = mjonReservMsgDAO.updateRealTimeIMOMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 807 |
+ |
|
| 808 |
+ //비즈뿌리오 딜레이문자 즉시발송 처리 |
|
| 809 |
+ bizResult = mjonReservMsgDAO.updateRealTimeBizMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 810 |
+ |
|
| 811 |
+ //제이제이 딜레이문자 즉시발송 처리 |
|
| 812 |
+ JJResult = mjonReservMsgDAO.updateRealTimeJJMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 813 |
+ |
|
| 814 |
+ //인비토 딜레이문자 즉시발송 처리 |
|
| 815 |
+ IVTResult = mjonReservMsgDAO.updateRealTimeIVTMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 816 |
+ |
|
| 817 |
+ //제이제이 B01 딜레이문자 즉시발송 처리 |
|
| 818 |
+ JJB01Result = mjonReservMsgDAO.updateRealTimeJJB01MsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 819 |
+ |
|
| 820 |
+ //제이제이 B02 딜레이문자 즉시발송 처리 |
|
| 821 |
+ JJB02Result = mjonReservMsgDAO.updateRealTimeJJB02MsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 822 |
+ |
|
| 823 |
+ //발송 결과 합산 |
|
| 824 |
+ resultSts = FHSmsResult + FHMmsResult + bizResult + JJResult + IVTResult + JJB01Result + JJB02Result; |
|
| 825 |
+ |
|
| 826 |
+ System.out.println("++++++++++++++++++++++++++++++ resultSts ::: "+resultSts);
|
|
| 827 |
+ |
|
| 828 |
+ }else {//예약문자에 대한 딜레이발송 시간을 원복 처리해준다. - 아이하트, 아이엠오 전송사는 제외해준다.
|
|
| 829 |
+ |
|
| 830 |
+ //현대퓨처넷 단문 예약 딜레이문자 발송 처리 |
|
| 831 |
+ FHSmsResult = mjonReservMsgDAO.updateReserveTimeHFNSmsMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 832 |
+ |
|
| 833 |
+ //현대퓨처넷 장문/그림 예약 딜레이문자 발송 처리 |
|
| 834 |
+ FHMmsResult = mjonReservMsgDAO.updateReserveTimeHFNMmsMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 835 |
+ |
|
| 836 |
+ //비즈뿌리오 예약 딜레이문자 발송 처리 |
|
| 837 |
+ bizResult = mjonReservMsgDAO.updateReserveTimeBizMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 838 |
+ |
|
| 839 |
+ //제이제이 예약 딜레이문자 발송 처리 |
|
| 840 |
+ JJResult = mjonReservMsgDAO.updateReserveTimeJJMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 841 |
+ |
|
| 842 |
+ //인비토 예약 딜레이문자 발송 처리 |
|
| 843 |
+ IVTResult = mjonReservMsgDAO.updateReserveTimeIVTMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 844 |
+ |
|
| 845 |
+ //제이제이 B01 예약 딜레이문자 발송 처리 |
|
| 846 |
+ JJB01Result = mjonReservMsgDAO.updateReserveTimeJJB01MsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 847 |
+ |
|
| 848 |
+ //제이제이 B02 예약 딜레이문자 발송 처리 |
|
| 849 |
+ JJB02Result = mjonReservMsgDAO.updateReserveTimeJJB02MsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 850 |
+ |
|
| 851 |
+ //발송 결과 합산 |
|
| 852 |
+ resultSts = FHSmsResult + FHMmsResult + bizResult + JJResult + IVTResult + JJB01Result + JJB02Result; |
|
| 853 |
+ |
|
| 854 |
+ System.out.println("++++++++++++++++++++++++++++++ resultSts ::: "+resultSts);
|
|
| 855 |
+ |
|
| 856 |
+ |
|
| 857 |
+ } |
|
| 798 | 858 |
|
| 799 |
- //아이엠오 딜레이문자 즉시발송 처리 |
|
| 800 |
- imoResult = mjonReservMsgDAO.updateRealTimeIMOMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 801 | 859 |
|
| 802 |
- //비즈뿌리오 딜레이문자 즉시발송 처리 |
|
| 803 |
- bizResult = mjonReservMsgDAO.updateRealTimeBizMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 860 |
+ //예약 취소 환불 처리 |
|
| 861 |
+ if(resultSts > 0) {
|
|
| 862 |
+ |
|
| 863 |
+ MjonMsgVO mjonMsgVO = new MjonMsgVO(); |
|
| 864 |
+ //그룹 데이터 정보 조회하기 |
|
| 865 |
+ mjonMsgVO = mjonMsgDAO.selectMsgGroupDataByGoupId(mjonResvMsgVO); |
|
| 866 |
+ |
|
| 867 |
+ if(reservYn.equals("N")) {
|
|
| 868 |
+ |
|
| 869 |
+ //mj_msg_data 테이블 지연 문자 즉시발송 요청 값 수정 |
|
| 870 |
+ mjonMsgDAO.updateMsgDelaySendRealTimeMsgDataFlag(mjonMsgVO); |
|
| 871 |
+ |
|
| 872 |
+ //mj_msg_group_data 테이블 즉시발송 요청 값 수정 |
|
| 873 |
+ mjonMsgDAO.updateMsgDelaySendRealTimeMsgGroupDataFlag(mjonMsgVO); |
|
| 874 |
+ |
|
| 875 |
+ }else {
|
|
| 876 |
+ |
|
| 877 |
+ //mj_msg_data 테이블 예약 지연 문자 발송 요청 값 수정 |
|
| 878 |
+ mjonMsgDAO.updateMsgDelaySendReserveTimeMsgDataFlag(mjonMsgVO); |
|
| 879 |
+ |
|
| 880 |
+ //mj_msg_group_data 테이블 예약 발송 요청 값 수정 |
|
| 881 |
+ mjonMsgDAO.updateMsgDelaySendReserveTimeMsgGroupDataFlag(mjonMsgVO); |
|
| 882 |
+ |
|
| 883 |
+ } |
|
| 884 |
+ |
|
| 885 |
+ |
|
| 886 |
+ |
|
| 887 |
+ |
|
| 888 |
+ } |
|
| 804 | 889 |
|
| 805 |
- //제이제이 딜레이문자 즉시발송 처리 |
|
| 806 |
- JJResult = mjonReservMsgDAO.updateRealTimeJJMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 890 |
+ } catch (Exception e) {
|
|
| 891 |
+ System.out.println("+++++++++++++++++++++++++++++++++++ updateMsgDelaySendRealTimeDataAjax ServiceImpl Error !!!! "+e);
|
|
| 892 |
+ } |
|
| 893 |
+ |
|
| 894 |
+ |
|
| 895 |
+ return resultSts; |
|
| 896 |
+ } |
|
| 897 |
+ |
|
| 898 |
+ //스팸 / 스미싱 지연 알림톡 발송 취소 처리 |
|
| 899 |
+ @Override |
|
| 900 |
+ public int deleteKakaoAtDelaySendCancelData(MjonResvMsgVO mjonResvMsgVO) throws Exception {
|
|
| 901 |
+ |
|
| 902 |
+ int resultSts = 0; |
|
| 903 |
+ |
|
| 904 |
+ try {
|
|
| 807 | 905 |
|
| 808 |
- //제이제이 딜레이문자 즉시발송 처리 |
|
| 809 |
- IVTResult = mjonReservMsgDAO.updateRealTimeIVTMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 906 |
+ System.out.println("++++++++++++++++++ deleteKakaoAtDelaySendCancelData groupId ::: "+mjonResvMsgVO.getMsgGroupId());
|
|
| 907 |
+ //삭제 문자 건수 MSG_SEQ 번호 받아오기 |
|
| 908 |
+ List<MjonResvMsgVO> resultMsgSeqList = mjonReservMsgDAO.selectMsgSeqListByGroupId(mjonResvMsgVO); |
|
| 810 | 909 |
|
| 811 |
- //제이제이 B01 딜레이문자 즉시발송 처리 |
|
| 812 |
- JJB01Result = mjonReservMsgDAO.updateRealTimeJJB01MsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 910 |
+ int size = resultMsgSeqList.size(); |
|
| 911 |
+ List<String> userDataList = new ArrayList<String>(); |
|
| 912 |
+ for(int i=0; i < size; i++) {
|
|
| 913 |
+ userDataList.add(resultMsgSeqList.get(i).getUserData()); |
|
| 914 |
+ System.out.println(resultMsgSeqList.get(i).getUserData()); |
|
| 915 |
+ } |
|
| 813 | 916 |
|
| 814 |
- //제이제이 B02 딜레이문자 즉시발송 처리 |
|
| 815 |
- JJB02Result = mjonReservMsgDAO.updateRealTimeJJB02MsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 917 |
+ mjonResvMsgVO.setUserDataList(userDataList); |
|
| 816 | 918 |
|
| 817 |
- //삭제 결과 합산 |
|
| 818 |
- resultSts = ihResult + FHSmsResult + FHMmsResult + imoResult +bizResult + JJResult + IVTResult + JJB01Result + JJB02Result; |
|
| 919 |
+ |
|
| 920 |
+ //비즈뿌리오 딜레이 알림톡 삭제 |
|
| 921 |
+ resultSts = mjonReservMsgDAO.deleteBizMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 819 | 922 |
|
| 820 | 923 |
System.out.println("++++++++++++++++++++++++++++++ resultSts ::: "+resultSts);
|
| 821 | 924 |
|
... | ... | @@ -825,12 +928,78 @@ |
| 825 | 928 |
//그룹 데이터 정보 조회하기 |
| 826 | 929 |
MjonMsgVO mjonMsgVO = mjonMsgDAO.selectMsgGroupDataByGoupId(mjonResvMsgVO); |
| 827 | 930 |
|
| 931 |
+ //mj_msg_data 테이블 지연 문자 취소 값 수정 |
|
| 932 |
+ mjonMsgDAO.updateKakaoAtDelayCancelMsgDataFlag(mjonMsgVO); |
|
| 933 |
+ |
|
| 934 |
+ //mj_msg_group_data 테이블 예약 취소 값 수정 |
|
| 935 |
+ mjonMsgDAO.updateKakaoAtDelayCancelMsgGroupDataFlag(mjonMsgVO); |
|
| 936 |
+ |
|
| 937 |
+ |
|
| 938 |
+ //문자 발송 캐시 환불 해주기 |
|
| 939 |
+ MjonPayVO mjonPayVO = new MjonPayVO(); |
|
| 940 |
+ |
|
| 941 |
+ mjonPayVO.setCashId(idgenMjonCashId.getNextStringId()); |
|
| 942 |
+ mjonPayVO.setUserId(mjonMsgVO.getUserId()); |
|
| 943 |
+ mjonPayVO.setCash(Float.parseFloat(mjonMsgVO.getTotPrice())); |
|
| 944 |
+ mjonPayVO.setFrstRegisterId(mjonMsgVO.getUserId()); |
|
| 945 |
+ mjonPayVO.setMemo("스팸/스미싱 지연 알림톡 취소 " + resultSts + "건 환불");
|
|
| 946 |
+ mjonPayVO.setMsgGroupId(mjonMsgVO.getMsgGroupId()); |
|
| 947 |
+ |
|
| 948 |
+ mjonPayDAO.insertCash(mjonPayVO); //캐시 환불 |
|
| 949 |
+ mjonPayDAO.updateMemberCash(mjonPayVO); //회원정보 업데이트 |
|
| 950 |
+ |
|
| 951 |
+ } |
|
| 952 |
+ |
|
| 953 |
+ |
|
| 954 |
+ } catch (Exception e) {
|
|
| 955 |
+ System.out.println("+++++++++++++++++++++++++++++++++++ deleteMsgDelaySendCancelData ServiceImpl Error !!!! "+e);
|
|
| 956 |
+ } |
|
| 957 |
+ return resultSts; |
|
| 958 |
+ |
|
| 959 |
+ } |
|
| 960 |
+ |
|
| 961 |
+ //스팸 / 스미싱 지연 알림톡 즉시 발송처리 |
|
| 962 |
+ @Override |
|
| 963 |
+ public int updateKakaoAtDelaySendRealTimeData(MjonResvMsgVO mjonResvMsgVO) throws Exception {
|
|
| 964 |
+ |
|
| 965 |
+ int resultSts = 0; |
|
| 966 |
+ |
|
| 967 |
+ try {
|
|
| 968 |
+ boolean timeType = true; |
|
| 969 |
+ |
|
| 970 |
+ System.out.println("++++++++++++++++++ updateKakaoAtDelaySendRealTimeData groupId ::: "+mjonResvMsgVO.getMsgGroupId());
|
|
| 971 |
+ //삭제 문자 건수 MSG_SEQ 번호 받아오기 |
|
| 972 |
+ List<MjonResvMsgVO> resultMsgSeqList = mjonReservMsgDAO.selectMsgSeqListByGroupId(mjonResvMsgVO); |
|
| 973 |
+ |
|
| 974 |
+ int size = resultMsgSeqList.size(); |
|
| 975 |
+ List<String> userDataList = new ArrayList<String>(); |
|
| 976 |
+ for(int i=0; i < size; i++) {
|
|
| 977 |
+ userDataList.add(resultMsgSeqList.get(i).getUserData()); |
|
| 978 |
+ System.out.println(resultMsgSeqList.get(i).getUserData()); |
|
| 979 |
+ } |
|
| 980 |
+ mjonResvMsgVO.setUserDataList(userDataList); |
|
| 981 |
+ |
|
| 982 |
+ if(resultMsgSeqList.get(0).getReserveYn().equals("N")) {
|
|
| 983 |
+ // 즉시 발송시 |
|
| 984 |
+ //비즈뿌리오 딜레이문자 즉시발송 처리 |
|
| 985 |
+ resultSts = mjonReservMsgDAO.updateRealTimeBizMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 986 |
+ |
|
| 987 |
+ }else {
|
|
| 988 |
+ // 예약 발송시 |
|
| 989 |
+ //비즈뿌리오 딜레이문자 예약발송 처리 |
|
| 990 |
+ resultSts = mjonReservMsgDAO.updateReserveTimeBizMsgSeqListByMsgSeq(mjonResvMsgVO); |
|
| 991 |
+ } |
|
| 992 |
+ |
|
| 993 |
+ System.out.println("++++++++++++++++++++++++++++++ resultSts ::: "+resultSts);
|
|
| 994 |
+ |
|
| 995 |
+ //발송 시간 수정(mj_msg_data, mj_msg_group_data) |
|
| 996 |
+ if(resultSts > 0) {
|
|
| 997 |
+ //그룹 데이터 정보 조회하기 |
|
| 998 |
+ MjonMsgVO mjonMsgVO = mjonMsgDAO.selectMsgGroupDataByGoupId(mjonResvMsgVO); |
|
| 828 | 999 |
//mj_msg_data 테이블 지연 문자 즉시발송 요청 값 수정 |
| 829 |
- mjonMsgDAO.updateMsgDelaySendRealTimeMsgDataFlag(mjonMsgVO); |
|
| 830 |
- |
|
| 1000 |
+ mjonMsgDAO.updateKakaoAtDelaySendRealTimeMsgDataFlag(mjonMsgVO); |
|
| 831 | 1001 |
//mj_msg_group_data 테이블 즉시발송 요청 값 수정 |
| 832 |
- mjonMsgDAO.updateMsgDelaySendRealTimeMsgGroupDataFlag(mjonMsgVO); |
|
| 833 |
- |
|
| 1002 |
+ mjonMsgDAO.updateKakaoAtDelaySendRealTimeMsgGroupDataFlag(mjonMsgVO); |
|
| 834 | 1003 |
} |
| 835 | 1004 |
|
| 836 | 1005 |
} catch (Exception e) {
|
--- 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/mjo/msgdata/service/impl/MjonMsgDataServiceImpl.java
+++ src/main/java/itn/let/mjo/msgdata/service/impl/MjonMsgDataServiceImpl.java
... | ... | @@ -324,7 +324,7 @@ |
| 324 | 324 |
|
| 325 | 325 |
if(spamStatus.equals("Y") || smishingYn.equals("Y")) {
|
| 326 | 326 |
|
| 327 |
- mjonMsgVO.setDelayYn("N");//일단 값만 등록해준다. 이거 안해주면 NULL 값으로 들어간다. 차후에 변경하도록 할 예정임, 원래는 스팸이면 Y로 넣어줘야한다.
|
|
| 327 |
+ mjonMsgVO.setDelayYn("Y");//일단 값만 등록해준다. 이거 안해주면 NULL 값으로 들어간다. 차후에 변경하도록 할 예정임, 원래는 스팸이면 Y로 넣어줘야한다.
|
|
| 328 | 328 |
|
| 329 | 329 |
}else {
|
| 330 | 330 |
|
... | ... | @@ -368,6 +368,7 @@ |
| 368 | 368 |
//Controller에서 전달 받은 분할 시간 정보 리스트 |
| 369 | 369 |
List<String> dividDayList = mjonMsgVO.getDividDay(); |
| 370 | 370 |
|
| 371 |
+ String frstDelayTime = mjonMsgVO.getReqDate(); |
|
| 371 | 372 |
//문자발송 리스트 생성 시작 |
| 372 | 373 |
for(int i = 0; i < callToCnt; i++) {
|
| 373 | 374 |
|
... | ... | @@ -528,12 +529,50 @@ |
| 528 | 529 |
//분할 발송을 체크 한 경우 |
| 529 | 530 |
if(mjonMsgVO.getDivideChk() != null) {
|
| 530 | 531 |
|
| 531 |
- tempVO.setReqDate(dividDayList.get(i)); //분할 문자 예약 시간 입력해주기 |
|
| 532 |
+ //스팸문구 혹은 스미싱 의심 회원의 경우 30분 딜레이 처리해준다. |
|
| 533 |
+ //20230630 우영두 추가 |
|
| 534 |
+ if(spamStatus.equals("Y") || smishingYn.equals("Y")) {
|
|
| 535 |
+ |
|
| 536 |
+ Date delayDate = transFormat.parse(dividDayList.get(i)); |
|
| 537 |
+ |
|
| 538 |
+ cal.setTime(delayDate); |
|
| 539 |
+ cal.add(Calendar.MINUTE, 30); |
|
| 540 |
+ delayTime = transFormat.format(cal.getTime()); |
|
| 541 |
+ |
|
| 542 |
+ tempVO.setReqDate(delayTime); //분할 문자 예약 시간 입력해주기 |
|
| 543 |
+ |
|
| 544 |
+ }else {
|
|
| 545 |
+ |
|
| 546 |
+ tempVO.setReqDate(dividDayList.get(i)); //분할 문자 예약 시간 입력해주기 |
|
| 547 |
+ |
|
| 548 |
+ } |
|
| 549 |
+ |
|
| 532 | 550 |
|
| 533 | 551 |
}else {//일반 예약 발송의 경우
|
| 534 | 552 |
|
| 535 |
- tempVO.setReqDate(mjonMsgVO.getReqDate()); |
|
| 553 |
+ if(spamStatus.equals("Y") || smishingYn.equals("Y")) {//스팸문구 혹은 스미싱 의심 회원의 경우 30분 딜레이 처리해준다.
|
|
| 554 |
+ |
|
| 555 |
+ Date delayDate = transFormat.parse(mjonMsgVO.getReqDate()); |
|
| 556 |
+ |
|
| 557 |
+ cal.setTime(delayDate); |
|
| 558 |
+ cal.add(Calendar.MINUTE, 30); |
|
| 559 |
+ delayTime = transFormat.format(cal.getTime()); |
|
| 560 |
+ |
|
| 561 |
+ tempVO.setReqDate(delayTime); |
|
| 562 |
+ |
|
| 563 |
+ }else {
|
|
| 564 |
+ |
|
| 565 |
+ tempVO.setReqDate(mjonMsgVO.getReqDate()); |
|
| 566 |
+ |
|
| 567 |
+ } |
|
| 536 | 568 |
|
| 569 |
+ } |
|
| 570 |
+ |
|
| 571 |
+ //딜레이 처리되었을 수 있어서 임시 데이터의 발송 시간을 업데이트 해준다. |
|
| 572 |
+ //분할 발송일 경우 Loop을 돌기 때문에 마지막 시간이 reqDate에 들어가기 때문에 첫번째 데이터에서만 시간을 입력해 준다. |
|
| 573 |
+ //mj_group_data 테이블의 reqdate 컬럼 값으로 셋팅 된다. |
|
| 574 |
+ if(i==0) {
|
|
| 575 |
+ frstDelayTime = tempVO.getReqDate(); |
|
| 537 | 576 |
} |
| 538 | 577 |
} |
| 539 | 578 |
|
... | ... | @@ -733,6 +772,13 @@ |
| 733 | 772 |
if(tmpDelayYn == null) {
|
| 734 | 773 |
mjonMsgVO.setDelayYn("N");
|
| 735 | 774 |
} |
| 775 |
+ |
|
| 776 |
+ //예약 문자이고 30분 지연이 된 문자의 Mj_msg_group_data 테이블의 req_date 시간을 첫번째 문자의 지연된 시간으로 셋팅해준다. |
|
| 777 |
+ if(mjonMsgVO.getReserveYn().equals("Y") && (spamStatus.equals("Y") || smishingYn.equals("Y"))) {
|
|
| 778 |
+ |
|
| 779 |
+ mjonMsgVO.setReqDate(frstDelayTime); |
|
| 780 |
+ |
|
| 781 |
+ } |
|
| 736 | 782 |
mjonMsgDAO.insertGroupMsgData(mjonMsgVO); |
| 737 | 783 |
|
| 738 | 784 |
}else {
|
--- src/main/java/itn/let/mjo/pay/web/MjonKGMPayController.java
+++ src/main/java/itn/let/mjo/pay/web/MjonKGMPayController.java
... | ... | @@ -313,8 +313,42 @@ |
| 313 | 313 |
UserManageVO userManageVO = new UserManageVO(); |
| 314 | 314 |
userManageVO.setSmishingYn("Y");
|
| 315 | 315 |
userManageVO.setMberId(Userid); |
| 316 |
- userManageService.updateOneUserSmishingYn(userManageVO); |
|
| 316 |
+ userManageService.updateOneUserSmishingYnNotAlert(userManageVO); |
|
| 317 | 317 |
} |
| 318 |
+ else {
|
|
| 319 |
+ // 대상 : 휴대폰결제, 즉시이체, 전용계좌 |
|
| 320 |
+ // Step 1. 스미싱의심 지정 여부 |
|
| 321 |
+ JoinSettingVO joinSettingVO = new JoinSettingVO(); |
|
| 322 |
+ joinSettingVO = egovSiteManagerService.selectAdminNotiDetail(); |
|
| 323 |
+ if (joinSettingVO != null && joinSettingVO.getSmishingNoti().equals("Y")) {
|
|
| 324 |
+ // Step 1. 개인회원 여부 체크 |
|
| 325 |
+ int isPersnalMemberCnt = egovSiteManagerService.selectPersnalMemberCnt(Userid); |
|
| 326 |
+ if (isPersnalMemberCnt == 1) {
|
|
| 327 |
+ // Step 2. 첫결제 여부 체크 |
|
| 328 |
+ int isFirstPayCnt = egovSiteManagerService.selectFirstPayCnt(Userid); |
|
| 329 |
+ if (isFirstPayCnt == 1) {
|
|
| 330 |
+ // SMS 체크 |
|
| 331 |
+ if (joinSettingVO != null && joinSettingVO.getSmsNoti().equals("Y")) {
|
|
| 332 |
+ // 스미싱의심 SMS 알림전송 |
|
| 333 |
+ mjonNoticeSendUtil.smishingSmsNoticeSend("스미싱의심/휴대폰 첫결제", Userid, mberNm);
|
|
| 334 |
+ } |
|
| 335 |
+ |
|
| 336 |
+ // SLACK 체크 |
|
| 337 |
+ if (joinSettingVO != null && joinSettingVO.getSlackNoti().equals("Y")) {
|
|
| 338 |
+ // Slack 메시지 발송(단순본문) |
|
| 339 |
+ String msg = "[문자온] 스미싱의심/휴대폰 첫결제 - " + mberNm +"("+ Userid + ")";
|
|
| 340 |
+ mjonCommon.sendSimpleSlackMsg(msg); |
|
| 341 |
+ } |
|
| 342 |
+ |
|
| 343 |
+ // 스미싱 의심회원으로 변경 |
|
| 344 |
+ UserManageVO userManageVO = new UserManageVO(); |
|
| 345 |
+ userManageVO.setSmishingYn("Y");
|
|
| 346 |
+ userManageVO.setMberId(Userid); |
|
| 347 |
+ userManageService.updateOneUserSmishingYnNotAlert(userManageVO); |
|
| 348 |
+ } |
|
| 349 |
+ } |
|
| 350 |
+ } |
|
| 351 |
+ } |
|
| 318 | 352 |
|
| 319 | 353 |
redirect.addAttribute("Resultcd", Resultcd);
|
| 320 | 354 |
redirect.addAttribute("Tradeid", Tradeid);
|
--- src/main/java/itn/let/mjo/reservmsg/service/MjonResvMsgVO.java
+++ src/main/java/itn/let/mjo/reservmsg/service/MjonResvMsgVO.java
... | ... | @@ -29,6 +29,7 @@ |
| 29 | 29 |
private String fileCnt; //첨부 이미지 갯수 - 0: 장문, 1 이상은 그림문자 |
| 30 | 30 |
private String totMsgCnt; //전체 전송문자 갯수 |
| 31 | 31 |
private String curState; //전송 처리 결과값 |
| 32 |
+ private String reserveYn; //예약 여부 |
|
| 32 | 33 |
private String reserveCYn; //예약 취소 여부 |
| 33 | 34 |
private String filePath1; //그림 이미지 1 |
| 34 | 35 |
private String filePath2; //그림 이미지 2 |
... | ... | @@ -290,5 +291,10 @@ |
| 290 | 291 |
public void setStrReqDate(String strReqDate) {
|
| 291 | 292 |
this.strReqDate = strReqDate; |
| 292 | 293 |
} |
| 293 |
- |
|
| 294 |
+ public String getReserveYn() {
|
|
| 295 |
+ return reserveYn; |
|
| 296 |
+ } |
|
| 297 |
+ public void setReserveYn(String reserveYn) {
|
|
| 298 |
+ this.reserveYn = reserveYn; |
|
| 299 |
+ } |
|
| 294 | 300 |
} |
--- src/main/java/itn/let/mjo/reservmsg/service/impl/MjonReservMsgDAO.java
+++ src/main/java/itn/let/mjo/reservmsg/service/impl/MjonReservMsgDAO.java
... | ... | @@ -202,6 +202,18 @@ |
| 202 | 202 |
} |
| 203 | 203 |
|
| 204 | 204 |
/** |
| 205 |
+ * @Method Name : updateReserveTimeHFNSmsMsgSeqListByMsgSeq |
|
| 206 |
+ * @작성일 : 2023 07. 10. |
|
| 207 |
+ * @작성자 : 우영두 |
|
| 208 |
+ * @Method 설명 : 현대퓨처넷 예약문자 지연처리 문자 정상 시간 발송 |
|
| 209 |
+ */ |
|
| 210 |
+ public int updateReserveTimeHFNSmsMsgSeqListByMsgSeq(MjonResvMsgVO mjonResvMsgVO) {
|
|
| 211 |
+ |
|
| 212 |
+ return update("MjonReservMsgDAO.updateReserveTimeHFNSmsMsgSeqListByMsgSeq", mjonResvMsgVO);
|
|
| 213 |
+ } |
|
| 214 |
+ |
|
| 215 |
+ |
|
| 216 |
+ /** |
|
| 205 | 217 |
* @Method Name : updateRealTimeIHeartMsgSeqListByMsgSeq |
| 206 | 218 |
* @작성일 : 2022. 12. 02. |
| 207 | 219 |
* @작성자 : WYD |
... | ... | @@ -210,6 +222,17 @@ |
| 210 | 222 |
public int updateRealTimeHFNMmsMsgSeqListByMsgSeq(MjonResvMsgVO mjonResvMsgVO) {
|
| 211 | 223 |
|
| 212 | 224 |
return update("MjonReservMsgDAO.updateRealTimeHFNMmsMsgSeqListByMsgSeq", mjonResvMsgVO);
|
| 225 |
+ } |
|
| 226 |
+ |
|
| 227 |
+ /** |
|
| 228 |
+ * @Method Name : updateReserveTimeHFNMmsMsgSeqListByMsgSeq |
|
| 229 |
+ * @작성일 : 2023. 07. 10. |
|
| 230 |
+ * @작성자 : 우영두 |
|
| 231 |
+ * @Method 설명 : 현대퓨처넷 예약 장문/그림 지연처리 문자 즉시 발송 |
|
| 232 |
+ */ |
|
| 233 |
+ public int updateReserveTimeHFNMmsMsgSeqListByMsgSeq(MjonResvMsgVO mjonResvMsgVO) {
|
|
| 234 |
+ |
|
| 235 |
+ return update("MjonReservMsgDAO.updateReserveTimeHFNMmsMsgSeqListByMsgSeq", mjonResvMsgVO);
|
|
| 213 | 236 |
} |
| 214 | 237 |
|
| 215 | 238 |
/** |
... | ... | @@ -246,6 +269,18 @@ |
| 246 | 269 |
} |
| 247 | 270 |
|
| 248 | 271 |
/** |
| 272 |
+ * @Method Name : updateReserveTimeJJMsgSeqListByMsgSeq |
|
| 273 |
+ * @작성일 : 2023. 7. 10. |
|
| 274 |
+ * @작성자 : 우영두 |
|
| 275 |
+ * @Method 설명 : 제이제이 예약 지연처리 문자 정상 발송 |
|
| 276 |
+ */ |
|
| 277 |
+ public int updateReserveTimeJJMsgSeqListByMsgSeq(MjonResvMsgVO mjonResvMsgVO) {
|
|
| 278 |
+ |
|
| 279 |
+ return update("MjonReservMsgDAO.updateReserveTimeJJMsgSeqListByMsgSeq", mjonResvMsgVO);
|
|
| 280 |
+ } |
|
| 281 |
+ |
|
| 282 |
+ |
|
| 283 |
+ /** |
|
| 249 | 284 |
* @Method Name : updateRealTimeIVTMsgSeqListByMsgSeq |
| 250 | 285 |
* @작성일 : 2023. 05. 16. |
| 251 | 286 |
* @작성자 : WYH |
... | ... | @@ -254,6 +289,17 @@ |
| 254 | 289 |
public int updateRealTimeIVTMsgSeqListByMsgSeq(MjonResvMsgVO mjonResvMsgVO) {
|
| 255 | 290 |
|
| 256 | 291 |
return update("MjonReservMsgDAO.updateRealTimeIVTMsgSeqListByMsgSeq", mjonResvMsgVO);
|
| 292 |
+ } |
|
| 293 |
+ |
|
| 294 |
+ /** |
|
| 295 |
+ * @Method Name : updateReserveTimeIVTMsgSeqListByMsgSeq |
|
| 296 |
+ * @작성일 : 2023. 07. 10. |
|
| 297 |
+ * @작성자 : 우영두 |
|
| 298 |
+ * @Method 설명 : 인비토 예약 지연처리 문자 즉시 발송 |
|
| 299 |
+ */ |
|
| 300 |
+ public int updateReserveTimeIVTMsgSeqListByMsgSeq(MjonResvMsgVO mjonResvMsgVO) {
|
|
| 301 |
+ |
|
| 302 |
+ return update("MjonReservMsgDAO.updateReserveTimeIVTMsgSeqListByMsgSeq", mjonResvMsgVO);
|
|
| 257 | 303 |
} |
| 258 | 304 |
|
| 259 | 305 |
/** |
... | ... | @@ -268,6 +314,17 @@ |
| 268 | 314 |
} |
| 269 | 315 |
|
| 270 | 316 |
/** |
| 317 |
+ * @Method Name : updateReserveTimeJJB01MsgSeqListByMsgSeq |
|
| 318 |
+ * @작성일 : 2023. 07. 10. |
|
| 319 |
+ * @작성자 : 우영두 |
|
| 320 |
+ * @Method 설명 : 제이제이 B01라인 예약 지연처리 문자 발송 |
|
| 321 |
+ */ |
|
| 322 |
+ public int updateReserveTimeJJB01MsgSeqListByMsgSeq(MjonResvMsgVO mjonResvMsgVO) {
|
|
| 323 |
+ |
|
| 324 |
+ return update("MjonReservMsgDAO.updateReserveTimeJJB01MsgSeqListByMsgSeq", mjonResvMsgVO);
|
|
| 325 |
+ } |
|
| 326 |
+ |
|
| 327 |
+ /** |
|
| 271 | 328 |
* @Method Name : updateRealTimeJJB02MsgSeqListByMsgSeq |
| 272 | 329 |
* @작성일 : 2023. 06. 20. |
| 273 | 330 |
* @작성자 : WYD |
... | ... | @@ -277,4 +334,26 @@ |
| 277 | 334 |
|
| 278 | 335 |
return update("MjonReservMsgDAO.updateRealTimeJJB02MsgSeqListByMsgSeq", mjonResvMsgVO);
|
| 279 | 336 |
} |
| 337 |
+ |
|
| 338 |
+ /** |
|
| 339 |
+ * @Method Name : updateReserveTimeJJB02MsgSeqListByMsgSeq |
|
| 340 |
+ * @작성일 : 2023. 07. 10. |
|
| 341 |
+ * @작성자 : 우영두 |
|
| 342 |
+ * @Method 설명 : 제이제이 B02라인 예약 지연처리 문자 발송 |
|
| 343 |
+ */ |
|
| 344 |
+ public int updateReserveTimeJJB02MsgSeqListByMsgSeq(MjonResvMsgVO mjonResvMsgVO) {
|
|
| 345 |
+ |
|
| 346 |
+ return update("MjonReservMsgDAO.updateReserveTimeJJB02MsgSeqListByMsgSeq", mjonResvMsgVO);
|
|
| 347 |
+ } |
|
| 348 |
+ |
|
| 349 |
+ /** |
|
| 350 |
+ * @Method Name : updateReserveTimeBizMsgSeqListByMsgSeq |
|
| 351 |
+ * @작성일 : 2023. 07. 06. |
|
| 352 |
+ * @작성자 : WYD |
|
| 353 |
+ * @Method 설명 : 비즈뿌리오 지연처리 문자 예약 발송 |
|
| 354 |
+ */ |
|
| 355 |
+ public int updateReserveTimeBizMsgSeqListByMsgSeq(MjonResvMsgVO mjonResvMsgVO) {
|
|
| 356 |
+ |
|
| 357 |
+ return update("MjonReservMsgDAO.updateReserveTimeBizMsgSeqListByMsgSeq", mjonResvMsgVO);
|
|
| 358 |
+ } |
|
| 280 | 359 |
} |
--- src/main/java/itn/let/mjo/test/web/TestController.java
+++ src/main/java/itn/let/mjo/test/web/TestController.java
... | ... | @@ -1157,21 +1157,10 @@ |
| 1157 | 1157 |
|
| 1158 | 1158 |
try {
|
| 1159 | 1159 |
|
| 1160 |
- LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; |
|
| 1161 |
- userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); |
|
| 1162 |
- |
|
| 1163 |
- |
|
| 1164 |
- // api인지 확인 |
|
| 1165 |
- ApiKeyVO apiKeyVO = new ApiKeyVO(); |
|
| 1166 |
- apiKeyVO.setAccessKey(mjonMsgVO.getAccessKey()); |
|
| 1167 |
- List<ApiKeyVO> resultList = apiKeyMngService.selectCheckApiKeyDup(apiKeyVO); |
|
| 1168 |
- |
|
| 1169 |
- if(resultList.size() >= 1) {
|
|
| 1170 |
- userId = resultList.get(0).getMberId(); |
|
| 1171 |
- } |
|
| 1172 |
- |
|
| 1160 |
+// LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; |
|
| 1161 |
+// userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); |
|
| 1173 | 1162 |
|
| 1174 |
- |
|
| 1163 |
+ userId = mjonMsgVO.getMberId(); |
|
| 1175 | 1164 |
if(userId.equals("")) {
|
| 1176 | 1165 |
|
| 1177 | 1166 |
modelAndView.addObject("message", "로그인 후 이용이 가능합니다.");
|
... | ... | @@ -1388,6 +1377,9 @@ |
| 1388 | 1377 |
|
| 1389 | 1378 |
} |
| 1390 | 1379 |
|
| 1380 |
+ // 토탈금액 "," 리플레이스 처리 |
|
| 1381 |
+ mjonMsgVO.setTotPrice(mjonMsgVO.getTotPrice().replaceAll(",", ""));
|
|
| 1382 |
+ |
|
| 1391 | 1383 |
float tmpOrgEachPrice = Float.parseFloat(mjonMsgVO.getEachPrice()); |
| 1392 | 1384 |
float tmpOrgTotPrice = Float.parseFloat(mjonMsgVO.getTotPrice()); |
| 1393 | 1385 |
|
... | ... | @@ -1517,8 +1509,6 @@ |
| 1517 | 1509 |
shortMsgVO = mjonMsgVO; |
| 1518 | 1510 |
longMsgVO = mjonMsgVO; |
| 1519 | 1511 |
imgMsgVO = mjonMsgVO; |
| 1520 |
- System.out.println("shortMsgVO :: "+ shortMsgVO.getsPrice());
|
|
| 1521 |
- System.out.println("mjonMsgVO :: "+ mjonMsgVO.getsPrice());
|
|
| 1522 | 1512 |
|
| 1523 | 1513 |
int shortMsgCnt = Integer.parseInt(mjonMsgVO.getShortMsgCnt()); |
| 1524 | 1514 |
int longMsgCnt = Integer.parseInt(mjonMsgVO.getLongMsgCnt()); |
... | ... | @@ -1768,7 +1758,14 @@ |
| 1768 | 1758 |
imgMsgVO.setRep4List(imgRep4); |
| 1769 | 1759 |
|
| 1770 | 1760 |
//개별단가 계산하기 |
| 1771 |
- String eachPrice = shortMsgVO.getsPrice(); |
|
| 1761 |
+ String eachPrice = imgMsgVO.getpPrice(); |
|
| 1762 |
+ |
|
| 1763 |
+ //api 서버에서 pPrice 값이 없는 경우가 있어서 오류 방지를위해서 추가 |
|
| 1764 |
+ if(eachPrice == null) {
|
|
| 1765 |
+ |
|
| 1766 |
+ eachPrice = imgMsgVO.getEachPrice(); |
|
| 1767 |
+ |
|
| 1768 |
+ } |
|
| 1772 | 1769 |
|
| 1773 | 1770 |
/** |
| 1774 | 1771 |
* 그림문자에 치환 내용이 포함되어 있는 경우 단가 계산하기. |
... | ... | @@ -1813,9 +1810,12 @@ |
| 1813 | 1810 |
|
| 1814 | 1811 |
//개별단가 계산하기 |
| 1815 | 1812 |
String eachPrice = shortMsgVO.getsPrice(); |
| 1816 |
- if(StringUtils.isEmpty(eachPrice)) |
|
| 1817 |
- {
|
|
| 1813 |
+ |
|
| 1814 |
+ //api 서버에서 sPrice 값이 없는 경우가 있어서 오류 방지를위해서 추가 |
|
| 1815 |
+ if(eachPrice == null) {
|
|
| 1816 |
+ |
|
| 1818 | 1817 |
eachPrice = shortMsgVO.getEachPrice(); |
| 1818 |
+ |
|
| 1819 | 1819 |
} |
| 1820 | 1820 |
|
| 1821 | 1821 |
/** |
... | ... | @@ -1845,7 +1845,6 @@ |
| 1845 | 1845 |
shortMsgVO.setMsgType("4");
|
| 1846 | 1846 |
} |
| 1847 | 1847 |
|
| 1848 |
- System.out.println("shortMsgVO.getEachPrice() :: "+ shortMsgVO.getEachPrice());
|
|
| 1849 | 1848 |
//총금액 계산하기 |
| 1850 | 1849 |
Float sTotPrice = Float.parseFloat(shortMsgVO.getEachPrice()) * shortCnt; |
| 1851 | 1850 |
shortMsgVO.setTotPrice(sTotPrice.toString()); |
... | ... | @@ -1870,6 +1869,13 @@ |
| 1870 | 1869 |
* */ |
| 1871 | 1870 |
|
| 1872 | 1871 |
String eachPrice = longMsgVO.getmPrice(); |
| 1872 |
+ |
|
| 1873 |
+ //api 서버에서 mPrice 값이 없는 경우가 있어서 오류 방지를위해서 추가 |
|
| 1874 |
+ if(eachPrice == null) {
|
|
| 1875 |
+ |
|
| 1876 |
+ eachPrice = longMsgVO.getEachPrice(); |
|
| 1877 |
+ |
|
| 1878 |
+ } |
|
| 1873 | 1879 |
|
| 1874 | 1880 |
if(fileCount > 2) {//그림 이미지가 3개
|
| 1875 | 1881 |
|
... | ... | @@ -2001,9 +2007,7 @@ |
| 2001 | 2007 |
}else {
|
| 2002 | 2008 |
|
| 2003 | 2009 |
//문자발송 함수 호출 - 일괄변환이 없거나, 그림문자 일괄변환의 경우 한번에 전송 처리 |
| 2004 |
- System.out.println("???????");
|
|
| 2005 | 2010 |
modelAndView = fncSendMsg(mjonMsgVO); |
| 2006 |
- System.out.println("!!!!!!!!!!!!");
|
|
| 2007 | 2011 |
|
| 2008 | 2012 |
} |
| 2009 | 2013 |
|
... | ... | @@ -2060,16 +2064,13 @@ |
| 2060 | 2064 |
// 법인폰 알람여부 체크 |
| 2061 | 2065 |
JoinSettingVO joinSettingVO = new JoinSettingVO(); |
| 2062 | 2066 |
joinSettingVO = egovSiteManagerService.selectAdminNotiDetail(); |
| 2063 |
- // SMS 체크 |
|
| 2064 |
- if (joinSettingVO != null && joinSettingVO.getSmsNoti().equals("Y")) {
|
|
| 2065 |
-// getAdminPhoneSendMsgData(mjonMsgVO); |
|
| 2066 |
- } |
|
| 2067 | 2067 |
|
| 2068 | 2068 |
// SLACK 체크 |
| 2069 | 2069 |
if (joinSettingVO != null && joinSettingVO.getSlackNoti().equals("Y")) {
|
| 2070 | 2070 |
//Slack으로 메세지 전송 처리 |
| 2071 | 2071 |
MjonCommon comm = new MjonCommon(); |
| 2072 |
- comm.getAdminSandSlack(mjonMsgVO); |
|
| 2072 |
+ System.out.println("slack noti");
|
|
| 2073 |
+// comm.getAdminSandSlack(mjonMsgVO); |
|
| 2073 | 2074 |
} |
| 2074 | 2075 |
} |
| 2075 | 2076 |
|
... | ... | @@ -2079,11 +2080,6 @@ |
| 2079 | 2080 |
} |
| 2080 | 2081 |
|
| 2081 | 2082 |
return modelAndView; |
| 2082 |
- |
|
| 2083 |
- |
|
| 2084 |
- |
|
| 2085 |
- |
|
| 2086 |
- |
|
| 2087 | 2083 |
} |
| 2088 | 2084 |
/** |
| 2089 | 2085 |
* 문자발송시 치환문자가 있거나 단문, 장문 일경우 타는 로직 |
--- src/main/java/itn/let/schdlr/service/impl/SchdlrManageServiceImpl.java
+++ src/main/java/itn/let/schdlr/service/impl/SchdlrManageServiceImpl.java
... | ... | @@ -28,7 +28,9 @@ |
| 28 | 28 |
import itn.let.schdlr.service.SchdlrManageService; |
| 29 | 29 |
import itn.let.schdlr.service.SchdlrVO; |
| 30 | 30 |
import itn.let.sym.site.service.EgovSiteManagerService; |
| 31 |
+import itn.let.sym.site.service.JoinSettingVO; |
|
| 31 | 32 |
import itn.let.uss.umt.service.EgovUserManageService; |
| 33 |
+import itn.let.uss.umt.service.UserManageVO; |
|
| 32 | 34 |
import itn.let.utl.user.service.MjonNoticeSendUtil; |
| 33 | 35 |
|
| 34 | 36 |
@Service("SchdlrManageService")
|
... | ... | @@ -362,7 +364,6 @@ |
| 362 | 364 |
//세틀뱅크 입금 내역 원장에 처리 완료 내용 입력해 주기 |
| 363 | 365 |
vacsAhstService.updateVacsAhstCashComplete(temp); |
| 364 | 366 |
|
| 365 |
- /* |
|
| 366 | 367 |
try {
|
| 367 | 368 |
String Userid = temp.getMberId(); |
| 368 | 369 |
String mberNm = ""; |
... | ... | @@ -407,7 +408,7 @@ |
| 407 | 408 |
System.out.println("전용계좌 TrNo : " + temp.getTrNo());
|
| 408 | 409 |
System.out.println("전용계좌 e.getMessage() : " + e.getMessage());
|
| 409 | 410 |
} |
| 410 |
- */ |
|
| 411 |
+ |
|
| 411 | 412 |
|
| 412 | 413 |
} |
| 413 | 414 |
|
--- src/main/java/itn/let/sym/grd/service/MberGrdService.java
+++ src/main/java/itn/let/sym/grd/service/MberGrdService.java
... | ... | @@ -2,7 +2,12 @@ |
| 2 | 2 |
|
| 3 | 3 |
import java.util.List; |
| 4 | 4 |
|
| 5 |
+import itn.let.sym.site.service.JoinSettingVO; |
|
| 6 |
+ |
|
| 5 | 7 |
public interface MberGrdService {
|
| 8 |
+ |
|
| 9 |
+ // 등급제 단가 추출 => 시스템 단가에 적용 |
|
| 10 |
+ public JoinSettingVO selectMberGrdDefaultInfo(JoinSettingVO sysJoinSetVO, String mberId) throws Exception; |
|
| 6 | 11 |
|
| 7 | 12 |
// 등급제 설정 일괄변경 |
| 8 | 13 |
public int updateMberSetting(MberGrdVO mberGrdVO) throws Exception; |
... | ... | @@ -14,12 +19,24 @@ |
| 14 | 19 |
// 등급제 설정 목록 |
| 15 | 20 |
List<MberGrdVO> selectMberGrdSettingList(MberGrdVO mberGrdVO) throws Exception; |
| 16 | 21 |
|
| 22 |
+ // 회원별 설정 상세 |
|
| 23 |
+ public MberGrdVO selectMberGrdSettingDetail(MberGrdVO mberGrdVO) throws Exception; |
|
| 24 |
+ |
|
| 17 | 25 |
// 등급제 설정 일괄변경 |
| 18 | 26 |
public int updateGrdSettingList(MberGrdVO mberGrdVO) throws Exception; |
| 27 |
+ |
|
| 28 |
+ // 등급제 등급 목록 |
|
| 29 |
+ List<MberGrdVO> selectMberGrdList(MberGrdVO mberGrdVO) throws Exception; |
|
| 19 | 30 |
|
| 20 | 31 |
// 회원별 등급 상세 |
| 21 | 32 |
public MberGrdVO selectMberGrdDetail(MberGrdVO mberGrdVO) throws Exception; |
| 22 | 33 |
|
| 34 |
+ // 회원 등급제 대상여부 정보(사용자화면용) |
|
| 35 |
+ public MberGrdVO selectMberGrdInfo(String mberId) throws Exception; |
|
| 36 |
+ |
|
| 37 |
+ // 회원별 등급 누적결제액 상세 |
|
| 38 |
+ public MberGrdVO selectMberGrdAmtDetail(MberGrdVO mberGrdVO) throws Exception; |
|
| 39 |
+ |
|
| 23 | 40 |
// 회원별 등급 등록 |
| 24 | 41 |
public void insertMberGrd(MberGrdVO mberGrdVO) throws Exception; |
| 25 | 42 |
|
... | ... | @@ -29,13 +46,32 @@ |
| 29 | 46 |
// 회원별 등급 일괄변경 |
| 30 | 47 |
public int updateMberGrdAll(MberGrdVO mberGrdVO) throws Exception; |
| 31 | 48 |
|
| 49 |
+ // 문자할인, B선라인 대상자 초기화 |
|
| 50 |
+ public int updateMberGrdEndBySale(MberGrdVO mberGrdVO) throws Exception; |
|
| 51 |
+ |
|
| 32 | 52 |
// 회원별 등급 초기화 |
| 33 | 53 |
public int updateMberGrdEndAll(MberGrdVO mberGrdVO) throws Exception; |
| 34 | 54 |
|
| 55 |
+ // 회원별 등급 적용 |
|
| 56 |
+ public void mberGrdSaveByUser(MberGrdVO mberGrdVO) throws Exception; |
|
| 57 |
+ |
|
| 35 | 58 |
// 회원별 등급 진행여부 |
| 36 |
- int selectMberGrdPrgCnt(String userId) throws Exception; |
|
| 59 |
+ int selectMberGrdPrgCnt(String mberId) throws Exception; |
|
| 60 |
+ |
|
| 61 |
+ // 회원별 이벤트 진행여부 |
|
| 62 |
+ int selectMberEventPrgCnt(String mberId) throws Exception; |
|
| 63 |
+ |
|
| 64 |
+ // 회원별 등급 저장여부 |
|
| 65 |
+ int selectMberGrdSaveCnt(String mberId) throws Exception; |
|
| 37 | 66 |
|
| 38 | 67 |
|
| 39 | 68 |
// 회원별 등급 히스토리 등록 |
| 40 |
- public void insertMberGrdHist(MberGrdVO mberGrdVO) throws Exception ; |
|
| 69 |
+ public void insertMberGrdHist(MberGrdVO mberGrdVO) throws Exception; |
|
| 70 |
+ |
|
| 71 |
+ // 회원별 등급 히스토리 목록 => 등급제 시행일이후 목록(사용자화면용) |
|
| 72 |
+ List<MberGrdVO> selectMberGrdHistByGrdDateList(MberGrdVO mberGrdVO) throws Exception; |
|
| 73 |
+ |
|
| 74 |
+ // 회원별 등급 히스토리 목록 |
|
| 75 |
+ List<MberGrdVO> selectMberGrdHistList(MberGrdVO mberGrdVO) throws Exception; |
|
| 76 |
+ |
|
| 41 | 77 |
} |
--- src/main/java/itn/let/sym/grd/service/MberGrdVO.java
+++ src/main/java/itn/let/sym/grd/service/MberGrdVO.java
... | ... | @@ -2,8 +2,11 @@ |
| 2 | 2 |
|
| 3 | 3 |
import java.util.List; |
| 4 | 4 |
|
| 5 |
-public class MberGrdVO {
|
|
| 5 |
+import itn.let.uss.umt.service.UserDefaultVO; |
|
| 6 | 6 |
|
| 7 |
+public class MberGrdVO extends UserDefaultVO {
|
|
| 8 |
+ private static final long serialVersionUID = 1L; |
|
| 9 |
+ |
|
| 7 | 10 |
private int grdSetNo; // 등급설정번호 |
| 8 | 11 |
private String grdSetNm; // 등급설정명 |
| 9 | 12 |
private long stdAmt; // 기준결제액 |
... | ... | @@ -28,15 +31,20 @@ |
| 28 | 31 |
private List<String> picture3Prices; |
| 29 | 32 |
|
| 30 | 33 |
private String mberId; |
| 34 |
+ private String mberNm; |
|
| 31 | 35 |
private String amt; |
| 32 | 36 |
private String grdStartDate; |
| 33 |
- private String grd_endDate; |
|
| 37 |
+ private String grdEndDate; |
|
| 34 | 38 |
private String grdStatus; |
| 39 |
+ private String grdStatusNm; |
|
| 35 | 40 |
private int mberGrdHistNo; |
| 36 | 41 |
|
| 37 |
- private String grdNoti; // 회원등급제 시행 여부 |
|
| 38 |
- private String grdDate; // 회원등급제 시행일자 |
|
| 39 |
- |
|
| 42 |
+ private String grdNoti; // 회원등급제 시행 여부 |
|
| 43 |
+ private String grdDate; // 회원등급제 시행일자 |
|
| 44 |
+ private String grdDatePrgYn; // 회원등급제 시행일자 진행여부(오늘보다 이전날짜이면 Y, 이후이면 N) |
|
| 45 |
+ |
|
| 46 |
+ // 검색필터 |
|
| 47 |
+ private String searchGrdStatus; |
|
| 40 | 48 |
|
| 41 | 49 |
public int getGrdSetNo() {
|
| 42 | 50 |
return grdSetNo; |
... | ... | @@ -172,6 +180,12 @@ |
| 172 | 180 |
public void setMberId(String mberId) {
|
| 173 | 181 |
this.mberId = mberId; |
| 174 | 182 |
} |
| 183 |
+ public String getMberNm() {
|
|
| 184 |
+ return mberNm; |
|
| 185 |
+ } |
|
| 186 |
+ public void setMberNm(String mberNm) {
|
|
| 187 |
+ this.mberNm = mberNm; |
|
| 188 |
+ } |
|
| 175 | 189 |
public String getAmt() {
|
| 176 | 190 |
return amt; |
| 177 | 191 |
} |
... | ... | @@ -184,17 +198,23 @@ |
| 184 | 198 |
public void setGrdStartDate(String grdStartDate) {
|
| 185 | 199 |
this.grdStartDate = grdStartDate; |
| 186 | 200 |
} |
| 187 |
- public String getGrd_endDate() {
|
|
| 188 |
- return grd_endDate; |
|
| 201 |
+ public String getGrdEndDate() {
|
|
| 202 |
+ return grdEndDate; |
|
| 189 | 203 |
} |
| 190 |
- public void setGrd_endDate(String grd_endDate) {
|
|
| 191 |
- this.grd_endDate = grd_endDate; |
|
| 204 |
+ public void setGrdEndDate(String grd_endDate) {
|
|
| 205 |
+ this.grdEndDate = grd_endDate; |
|
| 192 | 206 |
} |
| 193 | 207 |
public String getGrdStatus() {
|
| 194 | 208 |
return grdStatus; |
| 195 | 209 |
} |
| 196 | 210 |
public void setGrdStatus(String grdStatus) {
|
| 197 | 211 |
this.grdStatus = grdStatus; |
| 212 |
+ } |
|
| 213 |
+ public String getGrdStatusNm() {
|
|
| 214 |
+ return grdStatusNm; |
|
| 215 |
+ } |
|
| 216 |
+ public void setGrdStatusNm(String grdStatusNm) {
|
|
| 217 |
+ this.grdStatusNm = grdStatusNm; |
|
| 198 | 218 |
} |
| 199 | 219 |
public int getMberGrdHistNo() {
|
| 200 | 220 |
return mberGrdHistNo; |
... | ... | @@ -214,4 +234,16 @@ |
| 214 | 234 |
public void setGrdDate(String grdDate) {
|
| 215 | 235 |
this.grdDate = grdDate; |
| 216 | 236 |
} |
| 237 |
+ public String getGrdDatePrgYn() {
|
|
| 238 |
+ return grdDatePrgYn; |
|
| 239 |
+ } |
|
| 240 |
+ public void setGrdDatePrgYn(String grdDatePrgYn) {
|
|
| 241 |
+ this.grdDatePrgYn = grdDatePrgYn; |
|
| 242 |
+ } |
|
| 243 |
+ public String getSearchGrdStatus() {
|
|
| 244 |
+ return searchGrdStatus; |
|
| 245 |
+ } |
|
| 246 |
+ public void setSearchGrdStatus(String searchGrdStatus) {
|
|
| 247 |
+ this.searchGrdStatus = searchGrdStatus; |
|
| 248 |
+ } |
|
| 217 | 249 |
} |
--- src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java
+++ src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java
... | ... | @@ -20,10 +20,16 @@ |
| 20 | 20 |
return (MberGrdVO) select("mberGrdDAO.selectMberSettingDetail", mberGrdVO);
|
| 21 | 21 |
} |
| 22 | 22 |
|
| 23 |
+ |
|
| 23 | 24 |
// 등급제 설정 목록 |
| 24 | 25 |
@SuppressWarnings("unchecked")
|
| 25 | 26 |
public List<MberGrdVO> selectMberGrdSettingList(MberGrdVO mberGrdVO) throws Exception{
|
| 26 | 27 |
return (List<MberGrdVO>)list("mberGrdDAO.selectMberGrdSettingList", mberGrdVO);
|
| 28 |
+ } |
|
| 29 |
+ |
|
| 30 |
+ // 회원별 설정 상세 |
|
| 31 |
+ public MberGrdVO selectMberGrdSettingDetail(MberGrdVO mberGrdVO) throws Exception{
|
|
| 32 |
+ return (MberGrdVO) select("mberGrdDAO.selectMberGrdSettingDetail", mberGrdVO);
|
|
| 27 | 33 |
} |
| 28 | 34 |
|
| 29 | 35 |
// 등급제 설정 일괄변경 |
... | ... | @@ -31,11 +37,27 @@ |
| 31 | 37 |
return update("mberGrdDAO.updateGrdSetting", mberGrdVO);
|
| 32 | 38 |
} |
| 33 | 39 |
|
| 40 |
+ // 등급제 등급 목록 |
|
| 41 |
+ @SuppressWarnings("unchecked")
|
|
| 42 |
+ public List<MberGrdVO> selectMberGrdList(MberGrdVO mberGrdVO) throws Exception{
|
|
| 43 |
+ return (List<MberGrdVO>)list("mberGrdDAO.selectMberGrdList", mberGrdVO);
|
|
| 44 |
+ } |
|
| 45 |
+ |
|
| 34 | 46 |
// 회원별 등급 상세 |
| 35 | 47 |
public MberGrdVO selectMberGrdDetail(MberGrdVO mberGrdVO) throws Exception{
|
| 36 | 48 |
return (MberGrdVO) select("mberGrdDAO.selectMberGrdDetail", mberGrdVO);
|
| 37 | 49 |
} |
| 38 | 50 |
|
| 51 |
+ // 회원 등급제 대상여부 정보(사용자화면용) |
|
| 52 |
+ public MberGrdVO selectMberGrdInfo(String mberId) throws Exception{
|
|
| 53 |
+ return (MberGrdVO) select("mberGrdDAO.selectMberGrdInfo", mberId);
|
|
| 54 |
+ } |
|
| 55 |
+ |
|
| 56 |
+ // 회원별 등급 누적결제액 상세 |
|
| 57 |
+ public MberGrdVO selectMberGrdAmtDetail(MberGrdVO mberGrdVO) throws Exception{
|
|
| 58 |
+ return (MberGrdVO) select("mberGrdDAO.selectMberGrdAmtDetail", mberGrdVO);
|
|
| 59 |
+ } |
|
| 60 |
+ |
|
| 39 | 61 |
// 회원별 등급 등록 |
| 40 | 62 |
public void insertMberGrd(MberGrdVO mberGrdVO) throws Exception{
|
| 41 | 63 |
insert("mberGrdDAO.insertMberGrd", mberGrdVO);
|
... | ... | @@ -51,14 +73,29 @@ |
| 51 | 73 |
return update("mberGrdDAO.updateMberGrdAll", mberGrdVO);
|
| 52 | 74 |
} |
| 53 | 75 |
|
| 76 |
+ // 문자할인, B선라인 대상자 초기화 |
|
| 77 |
+ public int updateMberGrdEndBySale(MberGrdVO mberGrdVO) throws Exception {
|
|
| 78 |
+ return update("mberGrdDAO.updateMberGrdEndBySale", mberGrdVO);
|
|
| 79 |
+ } |
|
| 80 |
+ |
|
| 54 | 81 |
// 회원별 등급 초기화 |
| 55 | 82 |
public int updateMberGrdEndAll(MberGrdVO mberGrdVO) throws Exception {
|
| 56 | 83 |
return update("mberGrdDAO.updateMberGrdEndAll", mberGrdVO);
|
| 57 | 84 |
} |
| 58 | 85 |
|
| 59 | 86 |
// 회원별 등급 진행여부 |
| 60 |
- public int selectMberGrdPrgCnt(String userId) throws Exception{
|
|
| 61 |
- return (int) select("mberGrdDAO.selectMberGrdPrgCnt", userId);
|
|
| 87 |
+ public int selectMberGrdPrgCnt(String mberId) throws Exception{
|
|
| 88 |
+ return (int) select("mberGrdDAO.selectMberGrdPrgCnt", mberId);
|
|
| 89 |
+ } |
|
| 90 |
+ |
|
| 91 |
+ // 회원별 이벤트 진행여부 |
|
| 92 |
+ public int selectMberEventPrgCnt(String mberId) throws Exception{
|
|
| 93 |
+ return (int) select("mberGrdDAO.selectMberEventPrgCnt", mberId);
|
|
| 94 |
+ } |
|
| 95 |
+ |
|
| 96 |
+ // 회원별 등급 저장여부 |
|
| 97 |
+ public int selectMberGrdSaveCnt(String mberId) throws Exception{
|
|
| 98 |
+ return (int) select("mberGrdDAO.selectMberGrdSaveCnt", mberId);
|
|
| 62 | 99 |
} |
| 63 | 100 |
|
| 64 | 101 |
|
... | ... | @@ -66,4 +103,17 @@ |
| 66 | 103 |
public void insertMberGrdHist(MberGrdVO mberGrdVO) throws Exception{
|
| 67 | 104 |
insert("mberGrdDAO.insertMberGrdHist", mberGrdVO);
|
| 68 | 105 |
} |
| 106 |
+ |
|
| 107 |
+ // 회원별 등급 히스토리 목록 => 등급제 시행일이후 목록(사용자화면용) |
|
| 108 |
+ @SuppressWarnings("unchecked")
|
|
| 109 |
+ public List<MberGrdVO> selectMberGrdHistByGrdDateList(MberGrdVO mberGrdVO) throws Exception{
|
|
| 110 |
+ return (List<MberGrdVO>)list("mberGrdDAO.selectMberGrdHistByGrdDateList", mberGrdVO);
|
|
| 111 |
+ } |
|
| 112 |
+ |
|
| 113 |
+ // 회원별 등급 히스토리 목록 |
|
| 114 |
+ @SuppressWarnings("unchecked")
|
|
| 115 |
+ public List<MberGrdVO> selectMberGrdHistList(MberGrdVO mberGrdVO) throws Exception{
|
|
| 116 |
+ return (List<MberGrdVO>)list("mberGrdDAO.selectMberGrdHistList", mberGrdVO);
|
|
| 117 |
+ } |
|
| 118 |
+ |
|
| 69 | 119 |
} |
--- src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java
+++ src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java
... | ... | @@ -1,14 +1,21 @@ |
| 1 | 1 |
package itn.let.sym.grd.service.impl; |
| 2 | 2 |
|
| 3 |
+import java.time.LocalDate; |
|
| 4 |
+import java.time.format.DateTimeFormatter; |
|
| 3 | 5 |
import java.util.List; |
| 4 | 6 |
|
| 5 | 7 |
import javax.annotation.Resource; |
| 6 | 8 |
|
| 9 |
+import org.apache.commons.lang.StringUtils; |
|
| 7 | 10 |
import org.springframework.stereotype.Service; |
| 8 | 11 |
|
| 9 | 12 |
import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl; |
| 13 |
+import itn.let.mjo.pay.service.MjonPayService; |
|
| 10 | 14 |
import itn.let.sym.grd.service.MberGrdService; |
| 11 | 15 |
import itn.let.sym.grd.service.MberGrdVO; |
| 16 |
+import itn.let.sym.site.service.JoinSettingVO; |
|
| 17 |
+import itn.let.uss.umt.service.EgovMberManageService; |
|
| 18 |
+import itn.let.uss.umt.service.MberManageVO; |
|
| 12 | 19 |
|
| 13 | 20 |
@Service("mberGrdService")
|
| 14 | 21 |
public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberGrdService {
|
... | ... | @@ -16,6 +23,42 @@ |
| 16 | 23 |
@Resource(name="mberGrdDAO") |
| 17 | 24 |
MberGrdDAO mberGrdDAO; |
| 18 | 25 |
|
| 26 |
+ @Resource(name = "mjonPayService") |
|
| 27 |
+ private MjonPayService mjonPayService; |
|
| 28 |
+ |
|
| 29 |
+ /** mberManageService */ |
|
| 30 |
+ @Resource(name = "mberManageService") |
|
| 31 |
+ private EgovMberManageService mberManageService; |
|
| 32 |
+ |
|
| 33 |
+ // 등급제 단가 추출 => 시스템 단가에 적용 |
|
| 34 |
+ @Override |
|
| 35 |
+ public JoinSettingVO selectMberGrdDefaultInfo(JoinSettingVO sysJoinSetVO, String mberId) throws Exception {
|
|
| 36 |
+ // 공백제거 |
|
| 37 |
+ mberId = mberId.trim(); |
|
| 38 |
+ |
|
| 39 |
+ // Step 1. 등급제 시행 ON 일경우 |
|
| 40 |
+ if (StringUtils.isNotEmpty(mberId)) {
|
|
| 41 |
+ MberGrdVO mberGrdVO = new MberGrdVO(); |
|
| 42 |
+ MberGrdVO mberGrdVO1 = new MberGrdVO(); |
|
| 43 |
+ mberGrdVO1 = selectMberSettingDetail(mberGrdVO); |
|
| 44 |
+ if (mberGrdVO1.getGrdNoti().equals("Y") && null != mberGrdVO1.getGrdDate() && mberGrdVO1.getGrdDatePrgYn().equals("Y")) {
|
|
| 45 |
+ mberGrdVO = new MberGrdVO(); |
|
| 46 |
+ mberGrdVO = selectMberGrdInfo(mberId); |
|
| 47 |
+ if (null != mberGrdVO) {
|
|
| 48 |
+ if(mberGrdVO.getShortPrice() > 1 && mberGrdVO.getLongPrice() > 1 && mberGrdVO.getPicturePrice() > 1 && mberGrdVO.getPicture2Price() > 1 && mberGrdVO.getPicture3Price() > 1) {
|
|
| 49 |
+ sysJoinSetVO.setShortPrice(mberGrdVO.getShortPrice()); |
|
| 50 |
+ sysJoinSetVO.setLongPrice(mberGrdVO.getLongPrice()); |
|
| 51 |
+ sysJoinSetVO.setPicturePrice(mberGrdVO.getPicturePrice()); |
|
| 52 |
+ sysJoinSetVO.setPicture2Price(mberGrdVO.getPicture2Price()); |
|
| 53 |
+ sysJoinSetVO.setPicture3Price(mberGrdVO.getPicture3Price()); |
|
| 54 |
+ } |
|
| 55 |
+ } |
|
| 56 |
+ } |
|
| 57 |
+ } |
|
| 58 |
+ |
|
| 59 |
+ return sysJoinSetVO; |
|
| 60 |
+ } |
|
| 61 |
+ |
|
| 19 | 62 |
// 등급제 시행여부 변경 |
| 20 | 63 |
@Override |
| 21 | 64 |
public int updateMberSetting(MberGrdVO mberGrdVO) throws Exception {
|
... | ... | @@ -29,10 +72,17 @@ |
| 29 | 72 |
} |
| 30 | 73 |
|
| 31 | 74 |
|
| 75 |
+ // 등급제 설정 목록 |
|
| 32 | 76 |
@Override |
| 33 | 77 |
public List<MberGrdVO> selectMberGrdSettingList(MberGrdVO mberGrdVO) throws Exception {
|
| 34 | 78 |
return mberGrdDAO.selectMberGrdSettingList(mberGrdVO); |
| 35 | 79 |
} |
| 80 |
+ |
|
| 81 |
+ // 회원별 설정 상세 |
|
| 82 |
+ @Override |
|
| 83 |
+ public MberGrdVO selectMberGrdSettingDetail(MberGrdVO mberGrdVO) throws Exception {
|
|
| 84 |
+ return mberGrdDAO.selectMberGrdSettingDetail(mberGrdVO); |
|
| 85 |
+ } |
|
| 36 | 86 |
|
| 37 | 87 |
// 등급제 설정 일괄변경 |
| 38 | 88 |
@Override |
... | ... | @@ -56,11 +106,32 @@ |
| 56 | 106 |
return updateCnt; |
| 57 | 107 |
} |
| 58 | 108 |
|
| 109 |
+ |
|
| 110 |
+ // 등급제 등급 목록 |
|
| 111 |
+ @Override |
|
| 112 |
+ public List<MberGrdVO> selectMberGrdList(MberGrdVO mberGrdVO) throws Exception {
|
|
| 113 |
+ return mberGrdDAO.selectMberGrdList(mberGrdVO); |
|
| 114 |
+ } |
|
| 59 | 115 |
|
| 60 | 116 |
// 회원별 등급 상세 |
| 61 | 117 |
@Override |
| 62 | 118 |
public MberGrdVO selectMberGrdDetail(MberGrdVO mberGrdVO) throws Exception {
|
| 63 | 119 |
return mberGrdDAO.selectMberGrdDetail(mberGrdVO); |
| 120 |
+ } |
|
| 121 |
+ |
|
| 122 |
+ // 회원 등급제 대상여부 정보(사용자화면용) |
|
| 123 |
+ @Override |
|
| 124 |
+ public MberGrdVO selectMberGrdInfo(String mberId) throws Exception {
|
|
| 125 |
+ // 공백제거 |
|
| 126 |
+ mberId = mberId.trim(); |
|
| 127 |
+ |
|
| 128 |
+ return mberGrdDAO.selectMberGrdInfo(mberId); |
|
| 129 |
+ } |
|
| 130 |
+ |
|
| 131 |
+ // 회원별 등급 누적결제액 상세 |
|
| 132 |
+ @Override |
|
| 133 |
+ public MberGrdVO selectMberGrdAmtDetail(MberGrdVO mberGrdVO) throws Exception {
|
|
| 134 |
+ return mberGrdDAO.selectMberGrdAmtDetail(mberGrdVO); |
|
| 64 | 135 |
} |
| 65 | 136 |
|
| 66 | 137 |
// 회원별 등급 등록 |
... | ... | @@ -75,22 +146,140 @@ |
| 75 | 146 |
mberGrdDAO.updateMberGrd(mberGrdVO); |
| 76 | 147 |
} |
| 77 | 148 |
|
| 78 |
- // 회원별 등급 초기화 |
|
| 149 |
+ // 회원별 등급 일괄변경 |
|
| 79 | 150 |
@Override |
| 80 | 151 |
public int updateMberGrdAll(MberGrdVO mberGrdVO) throws Exception {
|
| 81 |
- return mberGrdDAO.updateMberGrdAll(mberGrdVO); |
|
| 152 |
+ int updateCnt1 = 0; |
|
| 153 |
+ int updateCnt2 = 0; |
|
| 154 |
+ |
|
| 155 |
+ // Step 1. 등급제 시행 ON 일경우 |
|
| 156 |
+ MberGrdVO mberGrdVO1 = new MberGrdVO(); |
|
| 157 |
+ mberGrdVO1 = selectMberSettingDetail(mberGrdVO); |
|
| 158 |
+ if (mberGrdVO1.getGrdNoti().equals("Y") && null != mberGrdVO1.getGrdDate() && mberGrdVO1.getGrdDatePrgYn().equals("Y")) {
|
|
| 159 |
+ // 문자할인, B선라인 대상자 초기화 |
|
| 160 |
+ updateCnt1 = updateMberGrdEndBySale(mberGrdVO); |
|
| 161 |
+ |
|
| 162 |
+ // 회원별 등급 일괄변경 |
|
| 163 |
+ updateCnt2 = mberGrdDAO.updateMberGrdAll(mberGrdVO); |
|
| 164 |
+ } |
|
| 165 |
+ |
|
| 166 |
+ return updateCnt1 + updateCnt2; |
|
| 82 | 167 |
} |
| 83 | 168 |
|
| 84 |
- // 회원별 등급 일괄변경 |
|
| 169 |
+ // 회원별 등급 초기화 |
|
| 85 | 170 |
@Override |
| 86 | 171 |
public int updateMberGrdEndAll(MberGrdVO mberGrdVO) throws Exception {
|
| 87 | 172 |
return mberGrdDAO.updateMberGrdEndAll(mberGrdVO); |
| 88 | 173 |
} |
| 89 | 174 |
|
| 175 |
+ // 문자할인, B선라인 대상자 초기화 |
|
| 176 |
+ @Override |
|
| 177 |
+ public int updateMberGrdEndBySale(MberGrdVO mberGrdVO) throws Exception {
|
|
| 178 |
+ return mberGrdDAO.updateMberGrdEndBySale(mberGrdVO); |
|
| 179 |
+ } |
|
| 180 |
+ |
|
| 181 |
+ // 회원별 등급 적용 |
|
| 182 |
+ @Override |
|
| 183 |
+ public void mberGrdSaveByUser(MberGrdVO mberGrdVO) throws Exception {
|
|
| 184 |
+ // 현재 날짜 구하기 |
|
| 185 |
+ LocalDate now = LocalDate.now(); |
|
| 186 |
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); // 포맷 정의
|
|
| 187 |
+ String nowDate = now.format(formatter); // 포맷 적용 |
|
| 188 |
+ |
|
| 189 |
+ mberGrdVO.setRegId(mberGrdVO.getMberId()); |
|
| 190 |
+ mberGrdVO.setEditId(mberGrdVO.getMberId()); |
|
| 191 |
+ |
|
| 192 |
+ // Step 1. 등급제 시행 ON 일경우(시행일자 진행여부 Y일경우) |
|
| 193 |
+ MberGrdVO mberGrdVO1 = new MberGrdVO(); |
|
| 194 |
+ mberGrdVO1 = selectMberSettingDetail(mberGrdVO); |
|
| 195 |
+ if (mberGrdVO1.getGrdNoti().equals("Y") && null != mberGrdVO1.getGrdDate() && mberGrdVO1.getGrdDatePrgYn().equals("Y")) {
|
|
| 196 |
+ mberGrdVO.setGrdDate(mberGrdVO1.getGrdDate()); |
|
| 197 |
+ |
|
| 198 |
+ // Step 2. /협의/스팸/비선등급 적용 제외 |
|
| 199 |
+ // 문자할인여부(1: 할인, 0: 미할인) |
|
| 200 |
+ int isMsgSalePrice = mjonPayService.selectMsgSalePriceCnt(mberGrdVO.getMberId()); |
|
| 201 |
+ if(isMsgSalePrice == 0) {
|
|
| 202 |
+ // B선 전송사 이용고객 => 등급제대상 제외처리 |
|
| 203 |
+ MberManageVO mberManageVO = new MberManageVO(); |
|
| 204 |
+ mberManageVO.setMberId(mberGrdVO.getMberId()); |
|
| 205 |
+ String blineCode = mberManageService.selectBlineCodeByMberId(mberManageVO); |
|
| 206 |
+ if (blineCode != null && blineCode.equals("N")) {
|
|
| 207 |
+ |
|
| 208 |
+ // Step 3. 누적결제금액(이벤트금액 제외) 추출 및 등급 조회 |
|
| 209 |
+ MberGrdVO mberGrdVO3 = new MberGrdVO(); |
|
| 210 |
+ mberGrdVO3 = selectMberGrdAmtDetail(mberGrdVO); |
|
| 211 |
+ if (null != mberGrdVO3) {
|
|
| 212 |
+ mberGrdVO.setTotAmt(mberGrdVO3.getTotAmt()); |
|
| 213 |
+ mberGrdVO.setGrdSetNo(mberGrdVO3.getGrdSetNo()); |
|
| 214 |
+ |
|
| 215 |
+ // Step 4. 등급제 설정값 조회 |
|
| 216 |
+ MberGrdVO mberGrdVO4 = new MberGrdVO(); |
|
| 217 |
+ mberGrdVO4 = selectMberGrdSettingDetail(mberGrdVO); |
|
| 218 |
+ if (null != mberGrdVO4) {
|
|
| 219 |
+ mberGrdVO.setAmt("0");
|
|
| 220 |
+ mberGrdVO.setTotAmt(mberGrdVO.getTotAmt()); |
|
| 221 |
+ mberGrdVO.setShortPrice(mberGrdVO4.getShortPrice()); |
|
| 222 |
+ mberGrdVO.setLongPrice(mberGrdVO4.getLongPrice()); |
|
| 223 |
+ mberGrdVO.setPicturePrice(mberGrdVO4.getPicturePrice()); |
|
| 224 |
+ mberGrdVO.setPicture2Price(mberGrdVO4.getPicture2Price()); |
|
| 225 |
+ mberGrdVO.setPicture3Price(mberGrdVO4.getPicture3Price()); |
|
| 226 |
+ mberGrdVO.setGrdDate(mberGrdVO.getGrdDate()); |
|
| 227 |
+ mberGrdVO.setGrdStartDate(nowDate + " 00:00:00"); |
|
| 228 |
+ mberGrdVO.setGrdEndDate("9999:12:31 23:59:59");
|
|
| 229 |
+ mberGrdVO.setGrdStatus("Y");
|
|
| 230 |
+ |
|
| 231 |
+ // Step 5. 인서트 Or 업데이트 |
|
| 232 |
+ MberGrdVO mberGrdVO5 = new MberGrdVO(); |
|
| 233 |
+ mberGrdVO5 = selectMberGrdDetail(mberGrdVO); |
|
| 234 |
+ if (null != mberGrdVO5) {
|
|
| 235 |
+ // 업데이트 => 현재 등급보다 낮거나 같으면 업데이트 처리 |
|
| 236 |
+ if (mberGrdVO5.getGrdSetNo() >= mberGrdVO.getGrdSetNo()) {
|
|
| 237 |
+ updateMberGrd(mberGrdVO); |
|
| 238 |
+ |
|
| 239 |
+ // 회원별 등급 히스토리 인서트 |
|
| 240 |
+ insertMberGrdHist(mberGrdVO); |
|
| 241 |
+ } |
|
| 242 |
+ } |
|
| 243 |
+ else {
|
|
| 244 |
+ // 인서트 |
|
| 245 |
+ insertMberGrd(mberGrdVO); |
|
| 246 |
+ |
|
| 247 |
+ // 회원별 등급 히스토리 인서트 |
|
| 248 |
+ insertMberGrdHist(mberGrdVO); |
|
| 249 |
+ } |
|
| 250 |
+ } |
|
| 251 |
+ } |
|
| 252 |
+ } |
|
| 253 |
+ } |
|
| 254 |
+ |
|
| 255 |
+ } |
|
| 256 |
+ } |
|
| 257 |
+ |
|
| 90 | 258 |
// 회원별 등급 진행여부 |
| 91 | 259 |
@Override |
| 92 |
- public int selectMberGrdPrgCnt(String userId) throws Exception{
|
|
| 93 |
- return mberGrdDAO.selectMberGrdPrgCnt(userId); |
|
| 260 |
+ public int selectMberGrdPrgCnt(String mberId) throws Exception{
|
|
| 261 |
+ // 공백제거 |
|
| 262 |
+ mberId = mberId.trim(); |
|
| 263 |
+ |
|
| 264 |
+ return mberGrdDAO.selectMberGrdPrgCnt(mberId); |
|
| 265 |
+ } |
|
| 266 |
+ |
|
| 267 |
+ // 회원별 이벤트 진행여부 |
|
| 268 |
+ @Override |
|
| 269 |
+ public int selectMberEventPrgCnt(String mberId) throws Exception{
|
|
| 270 |
+ // 공백제거 |
|
| 271 |
+ mberId = mberId.trim(); |
|
| 272 |
+ |
|
| 273 |
+ return mberGrdDAO.selectMberEventPrgCnt(mberId); |
|
| 274 |
+ } |
|
| 275 |
+ |
|
| 276 |
+ // 회원별 등급 저장여부 |
|
| 277 |
+ @Override |
|
| 278 |
+ public int selectMberGrdSaveCnt(String mberId) throws Exception{
|
|
| 279 |
+ // 공백제거 |
|
| 280 |
+ mberId = mberId.trim(); |
|
| 281 |
+ |
|
| 282 |
+ return mberGrdDAO.selectMberGrdSaveCnt(mberId); |
|
| 94 | 283 |
} |
| 95 | 284 |
|
| 96 | 285 |
|
... | ... | @@ -99,4 +288,17 @@ |
| 99 | 288 |
public void insertMberGrdHist(MberGrdVO mberGrdVO) throws Exception {
|
| 100 | 289 |
mberGrdDAO.insertMberGrdHist(mberGrdVO); |
| 101 | 290 |
} |
| 291 |
+ |
|
| 292 |
+ // 회원별 등급 히스토리 목록 => 등급제 시행일이후 목록(사용자화면용) |
|
| 293 |
+ @Override |
|
| 294 |
+ public List<MberGrdVO> selectMberGrdHistByGrdDateList(MberGrdVO mberGrdVO) throws Exception {
|
|
| 295 |
+ return mberGrdDAO.selectMberGrdHistByGrdDateList(mberGrdVO); |
|
| 296 |
+ } |
|
| 297 |
+ |
|
| 298 |
+ // 회원별 등급 히스토리 목록 |
|
| 299 |
+ @Override |
|
| 300 |
+ public List<MberGrdVO> selectMberGrdHistList(MberGrdVO mberGrdVO) throws Exception {
|
|
| 301 |
+ return mberGrdDAO.selectMberGrdHistList(mberGrdVO); |
|
| 302 |
+ } |
|
| 303 |
+ |
|
| 102 | 304 |
} |
--- src/main/java/itn/let/sym/grd/web/MberGrdController.java
+++ src/main/java/itn/let/sym/grd/web/MberGrdController.java
... | ... | @@ -11,6 +11,7 @@ |
| 11 | 11 |
import org.springframework.web.servlet.ModelAndView; |
| 12 | 12 |
|
| 13 | 13 |
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; |
| 14 |
+import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo; |
|
| 14 | 15 |
import itn.com.cmm.LoginVO; |
| 15 | 16 |
import itn.let.sym.grd.service.MberGrdService; |
| 16 | 17 |
import itn.let.sym.grd.service.MberGrdVO; |
... | ... | @@ -127,4 +128,115 @@ |
| 127 | 128 |
return modelAndView; |
| 128 | 129 |
} |
| 129 | 130 |
|
| 131 |
+ // 회원별 등급 적용 테스트 |
|
| 132 |
+ @RequestMapping(value = "/sym/grd/mberGrdSaveAjax.do") |
|
| 133 |
+ public ModelAndView mberGrdSaveAjax( |
|
| 134 |
+ @ModelAttribute("mberGrdVO") MberGrdVO mberGrdVO) throws Exception {
|
|
| 135 |
+ |
|
| 136 |
+ ModelAndView modelAndView = new ModelAndView(); |
|
| 137 |
+ modelAndView.setViewName("jsonView");
|
|
| 138 |
+ |
|
| 139 |
+ boolean isSuccess = true; |
|
| 140 |
+ String msg = ""; |
|
| 141 |
+ |
|
| 142 |
+ // 로그인VO에서 사용자 정보 가져오기 |
|
| 143 |
+ LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser(); |
|
| 144 |
+ String frstRegisterId = loginVO == null ? "" : loginVO.getId(); |
|
| 145 |
+ mberGrdVO.setEditId(frstRegisterId); // 최초등록자ID |
|
| 146 |
+ |
|
| 147 |
+ try{
|
|
| 148 |
+ |
|
| 149 |
+ // 회원별 등급 적용 |
|
| 150 |
+ mberGrdVO.setAmt("0"); // 결제금액
|
|
| 151 |
+ mberGrdVO.setMberId("nopay"); // 결제자
|
|
| 152 |
+ mberGrdService.mberGrdSaveByUser(mberGrdVO); |
|
| 153 |
+ |
|
| 154 |
+ } |
|
| 155 |
+ catch(Exception e) {
|
|
| 156 |
+ isSuccess = false; |
|
| 157 |
+ msg = e.getMessage(); |
|
| 158 |
+ } |
|
| 159 |
+ |
|
| 160 |
+ modelAndView.addObject("isSuccess", isSuccess);
|
|
| 161 |
+ modelAndView.addObject("msg", msg);
|
|
| 162 |
+ |
|
| 163 |
+ return modelAndView; |
|
| 164 |
+ } |
|
| 165 |
+ |
|
| 166 |
+ /** |
|
| 167 |
+ * 회원별 등급제 목록 화면 |
|
| 168 |
+ * |
|
| 169 |
+ * @param mberGrdVO |
|
| 170 |
+ * @param model |
|
| 171 |
+ * @return |
|
| 172 |
+ * @throws Exception |
|
| 173 |
+ */ |
|
| 174 |
+ @RequestMapping("/sym/grd/selectMberGrdList.do")
|
|
| 175 |
+ public String selectMetaTagList(@ModelAttribute("searchVO") MberGrdVO mberGrdVO, ModelMap model) throws Exception{
|
|
| 176 |
+ |
|
| 177 |
+ /** paging */ |
|
| 178 |
+ PaginationInfo paginationInfo = new PaginationInfo(); |
|
| 179 |
+ paginationInfo.setCurrentPageNo(mberGrdVO.getPageIndex()); |
|
| 180 |
+ paginationInfo.setRecordCountPerPage(mberGrdVO.getPageUnit()); |
|
| 181 |
+ paginationInfo.setPageSize(mberGrdVO.getPageSize()); |
|
| 182 |
+ |
|
| 183 |
+ mberGrdVO.setFirstIndex(paginationInfo.getFirstRecordIndex()); |
|
| 184 |
+ mberGrdVO.setLastIndex(paginationInfo.getLastRecordIndex()); |
|
| 185 |
+ mberGrdVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage()); |
|
| 186 |
+ |
|
| 187 |
+ if("".equals(mberGrdVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
|
| 188 |
+ mberGrdVO.setSearchSortCnd("regDate");
|
|
| 189 |
+ mberGrdVO.setSearchSortOrd("desc");
|
|
| 190 |
+ } |
|
| 191 |
+ |
|
| 192 |
+ List<MberGrdVO> resultList = mberGrdService.selectMberGrdList(mberGrdVO); |
|
| 193 |
+ model.addAttribute("resultList", resultList);
|
|
| 194 |
+ paginationInfo.setTotalRecordCount( resultList.size()> 0 ? resultList.get(0).getTotCnt() : 0); |
|
| 195 |
+ model.addAttribute("paginationInfo", paginationInfo);
|
|
| 196 |
+ |
|
| 197 |
+ return "/sym/grd/mberGrdList"; |
|
| 198 |
+ } |
|
| 199 |
+ |
|
| 200 |
+ // 등급제 적용여부 체크 |
|
| 201 |
+ @RequestMapping(value = "/sym/grd/mberGrdChkAjax.do") |
|
| 202 |
+ public ModelAndView mberGrdChkAjax( |
|
| 203 |
+ @ModelAttribute("mberGrdVO") MberGrdVO mberGrdVO) throws Exception {
|
|
| 204 |
+ |
|
| 205 |
+ ModelAndView modelAndView = new ModelAndView(); |
|
| 206 |
+ modelAndView.setViewName("jsonView");
|
|
| 207 |
+ |
|
| 208 |
+ boolean isSuccess = true; |
|
| 209 |
+ String msg = ""; |
|
| 210 |
+ MberGrdVO rtnMberGrdVO = new MberGrdVO(); |
|
| 211 |
+ |
|
| 212 |
+ // 로그인VO에서 사용자 정보 가져오기 |
|
| 213 |
+ LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser(); |
|
| 214 |
+ String frstRegisterId = loginVO == null ? "" : loginVO.getId(); |
|
| 215 |
+ mberGrdVO.setEditId(frstRegisterId); // 최초등록자ID |
|
| 216 |
+ |
|
| 217 |
+ try{
|
|
| 218 |
+ // @@@@@ 등급제 적용여부 체크 |
|
| 219 |
+ //MberGrdVO rtnMberGrdVO = new MberGrdVO(); |
|
| 220 |
+ rtnMberGrdVO = mberGrdService.selectMberGrdInfo(mberGrdVO.getMberId()); |
|
| 221 |
+ if (null != rtnMberGrdVO) {
|
|
| 222 |
+ // 등급제 적용 |
|
| 223 |
+ |
|
| 224 |
+ } |
|
| 225 |
+ else {
|
|
| 226 |
+ isSuccess = false; |
|
| 227 |
+ msg = "종료"; |
|
| 228 |
+ } |
|
| 229 |
+ } |
|
| 230 |
+ catch(Exception e) {
|
|
| 231 |
+ isSuccess = false; |
|
| 232 |
+ msg = e.getMessage(); |
|
| 233 |
+ } |
|
| 234 |
+ |
|
| 235 |
+ modelAndView.addObject("rtnMberGrdVO", rtnMberGrdVO);
|
|
| 236 |
+ modelAndView.addObject("isSuccess", isSuccess);
|
|
| 237 |
+ modelAndView.addObject("msg", msg);
|
|
| 238 |
+ |
|
| 239 |
+ return modelAndView; |
|
| 240 |
+ } |
|
| 241 |
+ |
|
| 130 | 242 |
} |
--- src/main/java/itn/let/uss/umt/service/EgovUserManageService.java
+++ src/main/java/itn/let/uss/umt/service/EgovUserManageService.java
... | ... | @@ -186,6 +186,7 @@ |
| 186 | 186 |
public void updateOneUserSmishingYn(UserManageVO userManageVO) throws Exception; |
| 187 | 187 |
|
| 188 | 188 |
// 스미싱의심 온/오프 - 상세에서 단일로 => 슬랙, 문자 알림 No |
| 189 |
+ // B선 회원이 아닌경우 전송사 JJ로 변경 로직 포함 |
|
| 189 | 190 |
public void updateOneUserSmishingYnNotAlert(UserManageVO userManageVO) throws Exception; |
| 190 | 191 |
|
| 191 | 192 |
// 알림톡 스미싱의심 온/오프 |
--- src/main/java/itn/let/uss/umt/service/impl/EgovUserManageServiceImpl.java
+++ src/main/java/itn/let/uss/umt/service/impl/EgovUserManageServiceImpl.java
... | ... | @@ -20,6 +20,7 @@ |
| 20 | 20 |
import itn.let.fax.user.service.FaxGroupDataVO; |
| 21 | 21 |
import itn.let.fax.user.service.impl.FaxDAO; |
| 22 | 22 |
import itn.let.mjo.mjocommon.MjonCommon; |
| 23 |
+import itn.let.mjo.msgagent.service.MjonMsgAgentStsService; |
|
| 23 | 24 |
import itn.let.mjo.msgdata.service.MjonMsgDataService; |
| 24 | 25 |
import itn.let.mjo.pay.service.MjonPayVO; |
| 25 | 26 |
import itn.let.mjo.pay.service.impl.MjonPayDAO; |
... | ... | @@ -32,6 +33,7 @@ |
| 32 | 33 |
import itn.let.sym.site.service.SiteManagerVO; |
| 33 | 34 |
import itn.let.sym.site.service.impl.SiteManagerDAO; |
| 34 | 35 |
import itn.let.uat.uia.service.impl.MberManageDAO; |
| 36 |
+import itn.let.uss.umt.service.EgovMberManageService; |
|
| 35 | 37 |
import itn.let.uss.umt.service.EgovUserManageService; |
| 36 | 38 |
import itn.let.uss.umt.service.MberManageVO; |
| 37 | 39 |
import itn.let.uss.umt.service.UserDefaultVO; |
... | ... | @@ -112,6 +114,13 @@ |
| 112 | 114 |
/** 사이트 설정 */ |
| 113 | 115 |
@Resource(name = "egovSiteManagerService") |
| 114 | 116 |
EgovSiteManagerService egovSiteManagerService; |
| 117 |
+ |
|
| 118 |
+ /** mberManageService */ |
|
| 119 |
+ @Resource(name = "mberManageService") |
|
| 120 |
+ private EgovMberManageService mberManageService; |
|
| 121 |
+ |
|
| 122 |
+ @Resource(name = "mjonMsgAgentStsService") |
|
| 123 |
+ private MjonMsgAgentStsService mjonMsgAgentStsService; |
|
| 115 | 124 |
|
| 116 | 125 |
/** |
| 117 | 126 |
* 입력한 사용자아이디의 중복여부를 체크하여 사용가능여부를 확인 |
... | ... | @@ -565,9 +574,20 @@ |
| 565 | 574 |
} |
| 566 | 575 |
|
| 567 | 576 |
// 스미싱의심 온/오프 단일 => 슬랙, 문자 알림 No |
| 577 |
+ // B선 회원이 아닌경우 전송사 JJ로 변경 로직 포함 |
|
| 568 | 578 |
public void updateOneUserSmishingYnNotAlert(UserManageVO userManageVO) throws Exception {
|
| 569 | 579 |
// 업데이트 |
| 570 | 580 |
userManageDAO.updateUserSmishingYn(userManageVO); |
| 581 |
+ |
|
| 582 |
+ // B선 전송사 이용고객 => 전송사 JJ로 변경안함 |
|
| 583 |
+ MberManageVO mberManageVO = new MberManageVO(); |
|
| 584 |
+ mberManageVO.setMberId(userManageVO.getMberId()); |
|
| 585 |
+ String blineCode = mberManageService.selectBlineCodeByMberId(mberManageVO); |
|
| 586 |
+ if (blineCode != null && blineCode.equals("N")) {
|
|
| 587 |
+ // 전송사 JJ로 변경 |
|
| 588 |
+ mberManageVO.setHotlineAgentCode("05"); // 전송사 JJ
|
|
| 589 |
+ mjonMsgAgentStsService.updateMberHotlineAgentCodeInfo(mberManageVO); |
|
| 590 |
+ } |
|
| 571 | 591 |
} |
| 572 | 592 |
|
| 573 | 593 |
// 알림톡 스미싱의심 온/오프 |
--- 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");//예약건은 제외하기
|
... | ... | @@ -1377,38 +1377,43 @@ |
| 1377 | 1377 |
sendKakaoVO.setSearchSortCnd("reqDate");
|
| 1378 | 1378 |
sendKakaoVO.setSearchSortOrd("desc");
|
| 1379 | 1379 |
sendKakaoVO.setFirstIndex(0); |
| 1380 |
+ sendKakaoVO.setPageType("sand");
|
|
| 1380 | 1381 |
List<KakaoVO> kakaoResultList = new ArrayList<KakaoVO>(); |
| 1381 | 1382 |
kakaoResultList = mjonKakaoATService.selectMjonKakaoATGroupCompleteByUserList(sendKakaoVO); |
| 1382 | 1383 |
|
| 1383 |
- model.addAttribute("kakaoResultList", kakaoResultList);
|
|
| 1384 |
+ model.addAttribute("kakaoResultList", kakaoResultList);
|
|
| 1384 | 1385 |
|
| 1385 | 1386 |
/* |
| 1386 | 1387 |
* 알림톡/친구톡 예약발송 리스트 불러오기 |
| 1387 |
- * */ |
|
| 1388 |
- |
|
| 1389 |
- KakaoVO reserveKakaoVO = new KakaoVO(); |
|
| 1390 |
- reserveKakaoVO.setSearchCondition2("Y");//예약건만 불러오기
|
|
| 1391 |
- reserveKakaoVO.setReserveCYn("N");//예약취소건은 제외하기
|
|
| 1392 |
- reserveKakaoVO.setUserId(reqMberManageVO.getMberId()); |
|
| 1388 |
+ */ |
|
| 1389 |
+ |
|
| 1390 |
+ KakaoVO reserveKakaoVO = new KakaoVO(); |
|
| 1391 |
+ reserveKakaoVO.setSearchCondition2("Y");//예약건만 불러오기
|
|
| 1392 |
+ reserveKakaoVO.setReserveCYn("N");//예약취소건은 제외하기
|
|
| 1393 |
+ reserveKakaoVO.setUserId(reqMberManageVO.getMberId()); |
|
| 1393 | 1394 |
// 문자발송 완료건은 모두 보이도록 처리 |
| 1394 | 1395 |
//kakaoVO.setMsgType("8");
|
| 1395 |
- reserveKakaoVO.setSearchSortCnd("reqDate");
|
|
| 1396 |
- reserveKakaoVO.setSearchSortOrd("desc");
|
|
| 1397 |
- reserveKakaoVO.setFirstIndex(0); |
|
| 1396 |
+ reserveKakaoVO.setSearchSortCnd("reqDate");
|
|
| 1397 |
+ reserveKakaoVO.setSearchSortOrd("desc");
|
|
| 1398 |
+ reserveKakaoVO.setFirstIndex(0); |
|
| 1399 |
+ reserveKakaoVO.setPageType("sand");
|
|
| 1398 | 1400 |
List<KakaoVO> kakaoReserveList = new ArrayList<KakaoVO>(); |
| 1399 | 1401 |
kakaoReserveList = mjonKakaoATService.selectReserveMjonKakaoATGroupList(reserveKakaoVO); |
| 1400 | 1402 |
|
| 1401 |
- model.addAttribute("kakaoReserveList", kakaoReserveList);
|
|
| 1403 |
+ model.addAttribute("kakaoReserveList", kakaoReserveList);
|
|
| 1404 |
+ |
|
| 1402 | 1405 |
|
| 1403 | 1406 |
/* |
| 1404 |
- * 팩스 발송 내역 리스트 불러오기 |
|
| 1405 |
- * */ |
|
| 1406 |
- |
|
| 1407 |
+ * 알림톡 지연처리 알림톡 내용 불러오기(30분 지연처리된 알림톡 내역 불러오기) |
|
| 1408 |
+ */ |
|
| 1409 |
+ List<KakaoVO> kakaoATDelaySentList = mjonKakaoATService.selectKakaoATDelaySentList(reqMberManageVO.getMberId()); |
|
| 1410 |
+ |
|
| 1411 |
+ model.addAttribute("kakaoATDelaySentList", kakaoATDelaySentList);
|
|
| 1412 |
+ } |
|
| 1413 |
+ |
|
| 1414 |
+ {//팩스 발송 내역 리스트 불러오기
|
|
| 1407 | 1415 |
List<FaxGroupDataVO> faxSendListVO = faxService.selectFaxMainList(new FaxGroupDataVO(reqMberManageVO.getMberId())); |
| 1408 | 1416 |
model.addAttribute("faxSendListVO", faxSendListVO);
|
| 1409 |
- |
|
| 1410 |
- //} |
|
| 1411 |
- |
|
| 1412 | 1417 |
} |
| 1413 | 1418 |
|
| 1414 | 1419 |
{//사용중인 전송사 정보 조회하기 - 사용자 전용 전송사 리스트 표시용
|
--- src/main/resources/egovframework/sqlmap/let/kakao/MjonKakaoATData_SQL_mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/kakao/MjonKakaoATData_SQL_mysql.xml
... | ... | @@ -348,6 +348,8 @@ |
| 348 | 348 |
M2.yellowId , |
| 349 | 349 |
M2.userNm , |
| 350 | 350 |
M2.atSmishingYn , |
| 351 |
+ M2.atDelayCompleteYn, |
|
| 352 |
+ M2.atDelayYn, |
|
| 351 | 353 |
( SELECT COUNT(0) |
| 352 | 354 |
FROM MJ_MSG_DATA C |
| 353 | 355 |
WHERE C.DEL_FLAG = 'N' |
... | ... | @@ -451,46 +453,49 @@ |
| 451 | 453 |
MSG_NOTICETALK_TMP_KEY AS msgNoticetalkTmpKey , |
| 452 | 454 |
MKPI.YELLOW_ID AS yellowId , |
| 453 | 455 |
LTM.MBER_NM AS userNm , |
| 454 |
- LTM.AT_SMISHING_YN AS atSmishingYn, |
|
| 456 |
+ LTM.AT_SMISHING_YN AS atSmishingYn, |
|
| 455 | 457 |
BIZ_UMID AS bizUmid, |
| 456 | 458 |
BL.CALL_STATUS AS callStatus, |
| 457 |
- M.BIZ_KAKAO_RESEND_YN AS bizKakaoResendYn |
|
| 458 |
- FROM ( |
|
| 459 |
- SELECT MG.USER_ID , |
|
| 460 |
- MG.MSG_GROUP_ID , |
|
| 461 |
- MG.MSG_GROUP_CNT , |
|
| 462 |
- MG.SMS_TXT , |
|
| 463 |
- MG.SUBJECT , |
|
| 464 |
- MG.REGDATE , |
|
| 465 |
- MG.REQ_DATE , |
|
| 466 |
- MD.RSLT_DATE , |
|
| 467 |
- MG.CALL_FROM , |
|
| 468 |
- MG.TOT_PRICE , |
|
| 469 |
- MG.EACH_PRICE , |
|
| 470 |
- MG.DEL_FLAG , |
|
| 471 |
- MG.MSG_TYPE , |
|
| 472 |
- MG.FILE_CNT , |
|
| 473 |
- MG.AGENT_CODE , |
|
| 474 |
- MG.RESERVE_YN , |
|
| 475 |
- MG.RESERVE_C_YN , |
|
| 476 |
- MG.CANCELDATE , |
|
| 477 |
- MD.MSG_SEQ , |
|
| 478 |
- MD.CALL_TO , |
|
| 479 |
- MD.CUR_STATE , |
|
| 480 |
- MD.RSLT_CODE , |
|
| 481 |
- MD.RSLT_CODE2 , |
|
| 482 |
- CASE |
|
| 459 |
+ M.BIZ_KAKAO_RESEND_YN AS bizKakaoResendYn, |
|
| 460 |
+ M.AT_DELAY_COMPLETE_YN AS atDelayCompleteYn, |
|
| 461 |
+ M.AT_DELAY_YN AS atDelayYn |
|
| 462 |
+ FROM |
|
| 463 |
+ (SELECT |
|
| 464 |
+ MG.USER_ID |
|
| 465 |
+ , MG.MSG_GROUP_ID |
|
| 466 |
+ , MG.MSG_GROUP_CNT |
|
| 467 |
+ , MG.SMS_TXT |
|
| 468 |
+ , MG.SUBJECT |
|
| 469 |
+ , MG.REGDATE |
|
| 470 |
+ , MG.REQ_DATE |
|
| 471 |
+ , MD.RSLT_DATE |
|
| 472 |
+ , MG.CALL_FROM |
|
| 473 |
+ , MG.TOT_PRICE |
|
| 474 |
+ , MG.EACH_PRICE |
|
| 475 |
+ , MG.DEL_FLAG |
|
| 476 |
+ , MG.MSG_TYPE |
|
| 477 |
+ , MG.FILE_CNT |
|
| 478 |
+ , MG.AGENT_CODE |
|
| 479 |
+ , MG.RESERVE_YN |
|
| 480 |
+ , MG.RESERVE_C_YN |
|
| 481 |
+ , MG.CANCELDATE |
|
| 482 |
+ , MD.MSG_SEQ |
|
| 483 |
+ , MD.CALL_TO |
|
| 484 |
+ , MD.CUR_STATE |
|
| 485 |
+ , MD.RSLT_CODE |
|
| 486 |
+ , MD.RSLT_CODE2 |
|
| 487 |
+ , CASE |
|
| 483 | 488 |
WHEN MG.MSG_TYPE = '8' |
| 484 | 489 |
THEN '알림톡' |
| 485 | 490 |
WHEN MG.MSG_TYPE = '9' |
| 486 | 491 |
THEN '친구톡' |
| 487 |
- END msgTypeName , |
|
| 488 |
- CASE |
|
| 492 |
+ END msgTypeName |
|
| 493 |
+ , CASE |
|
| 489 | 494 |
WHEN MG.MSG_TYPE = '8' |
| 490 | 495 |
THEN '1' |
| 491 | 496 |
ELSE '2' |
| 492 |
- END orderByCode , |
|
| 493 |
- ( |
|
| 497 |
+ END orderByCode |
|
| 498 |
+ , ( |
|
| 494 | 499 |
CASE |
| 495 | 500 |
WHEN MD.RSLT_CODE = '7000' |
| 496 | 501 |
THEN 'S' |
... | ... | @@ -498,18 +503,29 @@ |
| 498 | 503 |
THEN 'W' |
| 499 | 504 |
ELSE 'F' |
| 500 | 505 |
END |
| 501 |
- ) AS result , |
|
| 502 |
- MSG_NOTICETALK_SENDER_KEY , |
|
| 503 |
- MSG_NOTICETALK_TMP_KEY, |
|
| 504 |
- MD.BIZ_UMID, |
|
| 505 |
- MD.BIZ_KAKAO_RESEND_YN |
|
| 506 |
- FROM MJ_MSG_DATA MD , |
|
| 507 |
- MJ_MSG_GROUP_DATA MG |
|
| 508 |
- WHERE MD.MSG_GROUP_ID = MG.MSG_GROUP_ID |
|
| 506 |
+ ) AS result |
|
| 507 |
+ , MSG_NOTICETALK_SENDER_KEY |
|
| 508 |
+ , MSG_NOTICETALK_TMP_KEY |
|
| 509 |
+ , MD.BIZ_UMID |
|
| 510 |
+ , MD.BIZ_KAKAO_RESEND_YN |
|
| 511 |
+ , MG.AT_DELAY_COMPLETE_YN |
|
| 512 |
+ , MG.AT_DELAY_YN |
|
| 513 |
+ FROM |
|
| 514 |
+ MJ_MSG_DATA MD |
|
| 515 |
+ , MJ_MSG_GROUP_DATA MG |
|
| 516 |
+ WHERE 1=1 |
|
| 517 |
+ AND MD.MSG_GROUP_ID = MG.MSG_GROUP_ID |
|
| 509 | 518 |
AND IFNULL(MG.DEL_FLAG, 'N') = 'N' |
| 510 | 519 |
AND MD.DEL_FLAG = 'N' |
| 511 |
- <!-- JSPark 2023.03.24 알림톡 전송완료 목록은 (즉시 + 예약 발송완료) 노출 --> |
|
| 512 |
- <![CDATA[ AND MG.REQ_DATE <= NOW() ]]> |
|
| 520 |
+ <!-- JSPark 2023.07.10 알림톡 전송완료 목록은 (즉시 + 예약 발송완료 + 처리안된 지연문자(즉시,예약) 노출 --> |
|
| 521 |
+ <![CDATA[ |
|
| 522 |
+ AND CASE |
|
| 523 |
+ WHEN MG.RESERVE_YN = 'N' |
|
| 524 |
+ THEN (MG.REQ_DATE <= DATE_ADD(NOW(), INTERVAL 60 MINUTE)) |
|
| 525 |
+ WHEN MG.RESERVE_YN = 'Y' |
|
| 526 |
+ THEN (MG.REQ_DATE <= NOW() OR (MG.AT_DELAY_YN = 'Y' AND MG.AT_DELAY_COMPLETE_YN = 'N')) |
|
| 527 |
+ END |
|
| 528 |
+ ]]> |
|
| 513 | 529 |
<isNotEmpty property="userId"> |
| 514 | 530 |
AND MG.USER_ID = #userId# |
| 515 | 531 |
</isNotEmpty> |
... | ... | @@ -586,6 +602,11 @@ |
| 586 | 602 |
</isNotEmpty> |
| 587 | 603 |
</isEmpty> |
| 588 | 604 |
|
| 605 |
+ <isNotEmpty property="pageType"> |
|
| 606 |
+ <isEqual property="pageType" compareValue="sand"> |
|
| 607 |
+ AND M.CUR_STATE = '3' |
|
| 608 |
+ </isEqual> |
|
| 609 |
+ </isNotEmpty> |
|
| 589 | 610 |
|
| 590 | 611 |
<isNotEmpty property="msgType"> |
| 591 | 612 |
<isEqual property="msgType" compareValue="8"> |
... | ... | @@ -729,9 +750,9 @@ |
| 729 | 750 |
THEN '단문' |
| 730 | 751 |
ELSE '장문' |
| 731 | 752 |
END BIZ_KAKAO_RESEND_TYPE |
| 732 |
- , A.BIZ_KAKAO_RESEND_DATA |
|
| 733 |
- , A.BIZ_KAKAO_JSON_FILE |
|
| 734 |
- , A.BIZ_UMID |
|
| 753 |
+ , A.BIZ_KAKAO_RESEND_DATA |
|
| 754 |
+ , A.BIZ_KAKAO_JSON_FILE |
|
| 755 |
+ , A.BIZ_UMID |
|
| 735 | 756 |
<include refid="KakaoSentDAO.selectJoinQuery"/> |
| 736 | 757 |
<isNotEmpty property="userId"> |
| 737 | 758 |
AND B.USER_ID = #userId# |
... | ... | @@ -751,7 +772,12 @@ |
| 751 | 772 |
AND A.MSG_TYPE IN ('8','9')
|
| 752 | 773 |
</isEmpty> |
| 753 | 774 |
<![CDATA[ |
| 754 |
- AND B.REQ_DATE <= DATE_ADD(NOW(), INTERVAL 60 MINUTE) |
|
| 775 |
+ AND CASE |
|
| 776 |
+ WHEN B.RESERVE_YN = 'N' |
|
| 777 |
+ THEN (B.REQ_DATE <= DATE_ADD(NOW(), INTERVAL 60 MINUTE)) |
|
| 778 |
+ WHEN B.RESERVE_YN = 'Y' |
|
| 779 |
+ THEN (B.REQ_DATE <= NOW() OR (B.AT_DELAY_YN = 'Y' AND B.AT_DELAY_COMPLETE_YN = 'N')) |
|
| 780 |
+ END |
|
| 755 | 781 |
]]> |
| 756 | 782 |
)M |
| 757 | 783 |
LEFT JOIN MJ_KAKAO_PROFILE_INFO MKPI |
... | ... | @@ -1058,6 +1084,9 @@ |
| 1058 | 1084 |
M2.msgNoticetalkTmpKey , |
| 1059 | 1085 |
M2.yellowId , |
| 1060 | 1086 |
M2.userNm , |
| 1087 |
+ M2.atSmishingYn, |
|
| 1088 |
+ M2.atDelayCompleteYn, |
|
| 1089 |
+ M2.atDelayYn, |
|
| 1061 | 1090 |
( SELECT COUNT(0) |
| 1062 | 1091 |
FROM MJ_MSG_DATA C |
| 1063 | 1092 |
WHERE C.DEL_FLAG = 'N' |
... | ... | @@ -1158,12 +1187,15 @@ |
| 1158 | 1187 |
orderByCode AS orderByCode , |
| 1159 | 1188 |
RESULT AS msgResult , |
| 1160 | 1189 |
MSG_NOTICETALK_SENDER_KEY AS msgNoticetalkSenderKey , |
| 1161 |
- MSG_NOTICETALK_TMP_KEY AS msgNoticetalkTmpKey , |
|
| 1162 |
- MKPI.YELLOW_ID AS yellowId , |
|
| 1163 |
- LTM.MBER_NM AS userNm , |
|
| 1190 |
+ MSG_NOTICETALK_TMP_KEY AS msgNoticetalkTmpKey , |
|
| 1191 |
+ MKPI.YELLOW_ID AS yellowId , |
|
| 1192 |
+ LTM.MBER_NM AS userNm , |
|
| 1193 |
+ LTM.AT_SMISHING_YN AS atSmishingYn, |
|
| 1164 | 1194 |
BIZ_UMID AS bizUmid, |
| 1165 | 1195 |
BL.CALL_STATUS AS callStatus, |
| 1166 |
- M.BIZ_KAKAO_RESEND_YN AS bizKakaoResendYn |
|
| 1196 |
+ M.BIZ_KAKAO_RESEND_YN AS bizKakaoResendYn, |
|
| 1197 |
+ M.AT_DELAY_COMPLETE_YN AS atDelayCompleteYn, |
|
| 1198 |
+ M.AT_DELAY_YN AS atDelayYn |
|
| 1167 | 1199 |
FROM ( |
| 1168 | 1200 |
SELECT MG.USER_ID , |
| 1169 | 1201 |
MG.MSG_GROUP_ID , |
... | ... | @@ -1207,16 +1239,20 @@ |
| 1207 | 1239 |
THEN 'W' |
| 1208 | 1240 |
ELSE 'F' |
| 1209 | 1241 |
END |
| 1210 |
- ) AS result , |
|
| 1211 |
- MSG_NOTICETALK_SENDER_KEY , |
|
| 1212 |
- MSG_NOTICETALK_TMP_KEY, |
|
| 1213 |
- MD.BIZ_UMID, |
|
| 1214 |
- MD.BIZ_KAKAO_RESEND_YN |
|
| 1242 |
+ ) AS result |
|
| 1243 |
+ , MSG_NOTICETALK_SENDER_KEY |
|
| 1244 |
+ , MSG_NOTICETALK_TMP_KEY |
|
| 1245 |
+ , MD.BIZ_UMID |
|
| 1246 |
+ , MD.BIZ_KAKAO_RESEND_YN |
|
| 1247 |
+ , MG.AT_DELAY_COMPLETE_YN |
|
| 1248 |
+ , MG.AT_DELAY_YN |
|
| 1249 |
+ , MD.REFUND_YN |
|
| 1215 | 1250 |
FROM MJ_MSG_DATA MD , |
| 1216 | 1251 |
MJ_MSG_GROUP_DATA MG |
| 1217 | 1252 |
WHERE MD.MSG_GROUP_ID = MG.MSG_GROUP_ID |
| 1218 | 1253 |
AND IFNULL(MG.DEL_FLAG, 'N') = 'N' |
| 1219 | 1254 |
AND MD.DEL_FLAG = 'N' |
| 1255 |
+ |
|
| 1220 | 1256 |
<isNotEmpty property="userId"> |
| 1221 | 1257 |
AND MG.USER_ID = #userId# |
| 1222 | 1258 |
</isNotEmpty> |
... | ... | @@ -1293,6 +1329,12 @@ |
| 1293 | 1329 |
</isNotEmpty> |
| 1294 | 1330 |
</isEmpty> |
| 1295 | 1331 |
|
| 1332 |
+ <isNotEmpty property="pageType"> |
|
| 1333 |
+ <isEqual property="pageType" compareValue="sand"> |
|
| 1334 |
+ AND M.AT_DELAY_COMPLETE_YN ='Y' |
|
| 1335 |
+ AND M.REFUND_YN = 'N' |
|
| 1336 |
+ </isEqual> |
|
| 1337 |
+ </isNotEmpty> |
|
| 1296 | 1338 |
|
| 1297 | 1339 |
<isNotEmpty property="msgType"> |
| 1298 | 1340 |
<isEqual property="msgType" compareValue="8"> |
... | ... | @@ -1386,7 +1428,7 @@ |
| 1386 | 1428 |
, B.SMS_TXT |
| 1387 | 1429 |
, B.SUBJECT |
| 1388 | 1430 |
, B.REGDATE |
| 1389 |
- , B.REQ_DATE |
|
| 1431 |
+ , A.REQ_DATE |
|
| 1390 | 1432 |
, A.RSLT_DATE |
| 1391 | 1433 |
, B.CALL_FROM |
| 1392 | 1434 |
, B.TOT_PRICE |
... | ... | @@ -2252,10 +2294,102 @@ |
| 2252 | 2294 |
|
| 2253 | 2295 |
</select> |
| 2254 | 2296 |
|
| 2255 |
- |
|
| 2256 |
- |
|
| 2257 |
- |
|
| 2258 |
- |
|
| 2259 |
- |
|
| 2260 |
- |
|
| 2297 |
+ <select id="mjonKakaoATDAO.selectKakaoATDelaySentList" parameterClass="String" resultClass="KakaoVO"> |
|
| 2298 |
+ SELECT |
|
| 2299 |
+ A.msgId AS msgId |
|
| 2300 |
+ , A.msgGroupId AS msgGroupId |
|
| 2301 |
+ , A.userId AS userId |
|
| 2302 |
+ , MGD.TOT_PRICE AS totPrice |
|
| 2303 |
+ , MGD.EACH_PRICE AS eachPrice |
|
| 2304 |
+ , MGD.MSG_GROUP_CNT AS msgGroupCnt |
|
| 2305 |
+ , MGD.MSG_TYPE AS msgType |
|
| 2306 |
+ , CASE |
|
| 2307 |
+ WHEN MGD.MSG_TYPE = '8' |
|
| 2308 |
+ THEN '알림톡' |
|
| 2309 |
+ WHEN MGD.MSG_TYPE = '9' |
|
| 2310 |
+ THEN '친구톡' |
|
| 2311 |
+ END msgTypeName |
|
| 2312 |
+ , (SELECT COUNT(0) FROM MJ_MSG_DATA A |
|
| 2313 |
+ WHERE 1=1 |
|
| 2314 |
+ AND A.DEL_FLAG = 'N' |
|
| 2315 |
+ AND A.MSG_GROUP_ID = A.msgGroupId |
|
| 2316 |
+ AND (CASE |
|
| 2317 |
+ WHEN A.AGENT_CODE = '04' AND A.RSLT_CODE = '7000' |
|
| 2318 |
+ THEN 'S' |
|
| 2319 |
+ WHEN (A.RSLT_CODE IS NULL |
|
| 2320 |
+ AND A.RSLT_CODE2 IS NULL |
|
| 2321 |
+ AND A.SENT_DATE IS NULL |
|
| 2322 |
+ AND A.RSLT_DATE IS NULL |
|
| 2323 |
+ ) |
|
| 2324 |
+ THEN 'W' |
|
| 2325 |
+ ELSE 'F' |
|
| 2326 |
+ END ) = 'S' |
|
| 2327 |
+ ) AS successCnt |
|
| 2328 |
+ , MGD.SMS_TXT AS smsTxt |
|
| 2329 |
+ , A.userdata |
|
| 2330 |
+ , A.curState |
|
| 2331 |
+ , MKPI.YELLOW_ID AS yellowId |
|
| 2332 |
+ , DATE_FORMAT(A.sentDate, '%Y-%m-%d %T') AS sentDate |
|
| 2333 |
+ , DATE_FORMAT(A.reqDate, '%Y-%m-%d %T') AS reqdate |
|
| 2334 |
+ , DATE_FORMAT(MGD.REGDATE, '%Y-%m-%d %T') AS regdate |
|
| 2335 |
+ , A.result AS resultType |
|
| 2336 |
+ , MGD.AT_DELAY_YN AS atDelayYn |
|
| 2337 |
+ , MGD.AT_DELAY_COMPLETE_YN AS atDelayCompleteYn |
|
| 2338 |
+ , MGD.RESERVE_YN AS reserveYn |
|
| 2339 |
+ FROM |
|
| 2340 |
+ (SELECT |
|
| 2341 |
+ a.MSG_ID AS msgId |
|
| 2342 |
+ , a.MSG_GROUP_ID AS msgGroupId |
|
| 2343 |
+ , a.USER_ID AS userId |
|
| 2344 |
+ , a.USERDATA AS userdata |
|
| 2345 |
+ , a.CUR_STATE AS curState |
|
| 2346 |
+ , a.SENT_DATE AS sentDate |
|
| 2347 |
+ , a.REQ_DATE AS reqDate |
|
| 2348 |
+ , (CASE |
|
| 2349 |
+ WHEN A.AGENT_CODE = '04' AND (A.RSLT_CODE = '7000') |
|
| 2350 |
+ THEN 'S' |
|
| 2351 |
+ WHEN( A.RSLT_CODE IS NULL |
|
| 2352 |
+ AND A.RSLT_CODE2 IS NULL |
|
| 2353 |
+ AND A.SENT_DATE IS NULL |
|
| 2354 |
+ AND A.RSLT_DATE IS NULL |
|
| 2355 |
+ )THEN 'W' |
|
| 2356 |
+ ELSE 'F' |
|
| 2357 |
+ END) AS result |
|
| 2358 |
+ , A.RSLT_CODE AS rsltCode |
|
| 2359 |
+ , A.RSLT_CODE2 AS rsltCode2 |
|
| 2360 |
+ , A.RSLT_NET AS rsltNet |
|
| 2361 |
+ , A.CALL_FROM AS callFrom |
|
| 2362 |
+ , A.CALL_TO AS callTo |
|
| 2363 |
+ , A.SMS_TXT AS smsTxt |
|
| 2364 |
+ , A.MSG_TYPE AS msgType |
|
| 2365 |
+ , A.AGENT_CODE AS agentCode |
|
| 2366 |
+ , A.DEL_FLAG AS delFlag |
|
| 2367 |
+ , A.NEO_TYPE AS neoType |
|
| 2368 |
+ , A.RESERVE_C_YN AS reserveCYn |
|
| 2369 |
+ , A.REFUND_YN AS refundYn |
|
| 2370 |
+ , A.MSG_NOTICETALK_SENDER_KEY |
|
| 2371 |
+ , A.MSG_NOTICETALK_TMP_KEY |
|
| 2372 |
+ FROM |
|
| 2373 |
+ MJ_MSG_DATA A |
|
| 2374 |
+ WHERE 1=1 |
|
| 2375 |
+ AND A.USER_ID = #userId# |
|
| 2376 |
+ AND A.MSG_TYPE IN (8) |
|
| 2377 |
+ GROUP BY A.MSG_GROUP_ID |
|
| 2378 |
+ )A |
|
| 2379 |
+ LEFT JOIN MJ_MSG_GROUP_DATA MGD |
|
| 2380 |
+ ON A.msgGroupId = MGD.MSG_GROUP_ID |
|
| 2381 |
+ LEFT JOIN MJ_KAKAO_PROFILE_INFO MKPI |
|
| 2382 |
+ ON A.MSG_NOTICETALK_SENDER_KEY = MKPI.SENDER_KEY |
|
| 2383 |
+ AND MKPI.USER_ID = A.userId |
|
| 2384 |
+ WHERE 1=1 |
|
| 2385 |
+ AND MGD.USER_ID = #userId# |
|
| 2386 |
+ AND MGD.AT_DELAY_YN = 'Y' |
|
| 2387 |
+ AND MGD.AT_DELAY_COMPLETE_YN = 'N' |
|
| 2388 |
+ AND MGD.CANCELDATE IS NULL |
|
| 2389 |
+ AND A.curState = '0' |
|
| 2390 |
+ AND A.refundYn = 'N' |
|
| 2391 |
+ ORDER BY |
|
| 2392 |
+ reqDate DESC |
|
| 2393 |
+ ,sentDate DESC |
|
| 2394 |
+ </select> |
|
| 2261 | 2395 |
</sqlMap>(No newline at end of file) |
--- src/main/resources/egovframework/sqlmap/let/mjo/kakao/KakaoSent_SQL_Mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/mjo/kakao/KakaoSent_SQL_Mysql.xml
... | ... | @@ -375,7 +375,9 @@ |
| 375 | 375 |
AND MG.DEL_FLAG ='N' |
| 376 | 376 |
/* JSPark 2023.03.23 => 예약건중 발송완료건도 발송결과에 노출되도록 수정 */ |
| 377 | 377 |
/* AND MG.RESERVE_YN = 'N' */ |
| 378 |
- <![CDATA[ AND MG.REQ_DATE <= NOW() ]]> |
|
| 378 |
+ <![CDATA[ |
|
| 379 |
+ AND MG.REQ_DATE <= DATE_ADD(NOW(), INTERVAL 60 MINUTE) |
|
| 380 |
+ ]]> |
|
| 379 | 381 |
|
| 380 | 382 |
<isNotEmpty property="reserveCYn"> |
| 381 | 383 |
AND MG.RESERVE_C_YN = #reserveCYn# |
--- src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml
... | ... | @@ -766,9 +766,20 @@ |
| 766 | 766 |
) D ON A.MSG_TYPE = D.CODE /** 메세지타입 */ |
| 767 | 767 |
WHERE 1 = 1 |
| 768 | 768 |
AND A.MSG_TYPE IN (4, 6) |
| 769 |
+ <!-- |
|
| 769 | 770 |
AND ((IFNULL(DELAY_YN, 'N') = 'Y' AND DATE_ADD(NOW(), INTERVAL 60 MINUTE) >= REQ_DATE) |
| 770 | 771 |
OR (IFNULL(DELAY_YN, 'N') = 'N' AND NOW() >= REQ_DATE) |
| 771 | 772 |
OR (RESERVE_YN = 'Y' AND NOW() >= REQ_DATE)) |
| 773 |
+ --> |
|
| 774 |
+ <!-- JSPark 2023.07.11 문자 전송완료 목록은 (즉시 + 예약 발송완료 + 처리안된 지연문자(즉시,예약) 노출 --> |
|
| 775 |
+ <![CDATA[ |
|
| 776 |
+ AND CASE |
|
| 777 |
+ WHEN RESERVE_YN = 'N' |
|
| 778 |
+ THEN (REQ_DATE <= DATE_ADD(NOW(), INTERVAL 60 MINUTE)) |
|
| 779 |
+ WHEN RESERVE_YN = 'Y' |
|
| 780 |
+ THEN (REQ_DATE <= NOW() OR (IFNULL(DELAY_YN, 'N') = 'Y' AND IFNULL(DELAY_COMPLETE_YN, 'N') = 'N')) |
|
| 781 |
+ END |
|
| 782 |
+ ]]> |
|
| 772 | 783 |
<isNotEmpty property="searchKeyword"> |
| 773 | 784 |
<isEqual property="searchCondition" compareValue="" > |
| 774 | 785 |
AND ( |
... | ... | @@ -2055,23 +2066,24 @@ |
| 2055 | 2066 |
<select id="mjonMsgDAO.selectMberManageInfo" parameterClass="String" resultClass="mberManageVO"> |
| 2056 | 2067 |
|
| 2057 | 2068 |
SELECT |
| 2058 |
- MBER_ID AS mberId |
|
| 2059 |
- , MBER_NM AS mberNm |
|
| 2060 |
- , SHORT_PRICE AS shortPrice |
|
| 2061 |
- , LONG_PRICE AS longPrice |
|
| 2062 |
- , PICTURE_PRICE AS picturePrice |
|
| 2063 |
- , PICTURE2_PRICE AS picture2Price |
|
| 2064 |
- , PICTURE3_PRICE AS picture3Price |
|
| 2065 |
- , KAKAO_AT_PRICE AS kakaoAtPrice |
|
| 2066 |
- , FAX_PRICE AS faxPrice |
|
| 2067 |
- , USER_MONEY AS userMoney |
|
| 2068 |
- , USER_POINT AS userPoint |
|
| 2069 |
- , DEPT AS dept |
|
| 2070 |
- , MBTLNUM AS moblphonNo |
|
| 2071 |
- , MANAGER_NM AS managerNm |
|
| 2072 |
- , EXCEPT_SPAM_YN AS exceptSpamYn |
|
| 2073 |
- , HOTLINE_AGENT_CODE AS hotlineAgentCode |
|
| 2074 |
- , BLINE_CODE AS blineCode |
|
| 2069 |
+ MBER_ID AS mberId |
|
| 2070 |
+ , MBER_NM AS mberNm |
|
| 2071 |
+ , SHORT_PRICE AS shortPrice |
|
| 2072 |
+ , LONG_PRICE AS longPrice |
|
| 2073 |
+ , PICTURE_PRICE AS picturePrice |
|
| 2074 |
+ , PICTURE2_PRICE AS picture2Price |
|
| 2075 |
+ , PICTURE3_PRICE AS picture3Price |
|
| 2076 |
+ , KAKAO_AT_PRICE AS kakaoAtPrice |
|
| 2077 |
+ , FAX_PRICE AS faxPrice |
|
| 2078 |
+ , USER_MONEY AS userMoney |
|
| 2079 |
+ , USER_POINT AS userPoint |
|
| 2080 |
+ , DEPT AS dept |
|
| 2081 |
+ , MBTLNUM AS moblphonNo |
|
| 2082 |
+ , MANAGER_NM AS managerNm |
|
| 2083 |
+ , EXCEPT_SPAM_YN AS exceptSpamYn |
|
| 2084 |
+ , HOTLINE_AGENT_CODE AS hotlineAgentCode |
|
| 2085 |
+ , BLINE_CODE AS blineCode |
|
| 2086 |
+ , AT_SMISHING_YN AS atSmishingYn |
|
| 2075 | 2087 |
FROM LETTNGNRLMBER |
| 2076 | 2088 |
WHERE MBER_ID = #userId# |
| 2077 | 2089 |
|
... | ... | @@ -2208,8 +2220,9 @@ |
| 2208 | 2220 |
FILE_CNT, |
| 2209 | 2221 |
TOT_PRICE, |
| 2210 | 2222 |
EVENT_YN, |
| 2211 |
- DELAY_YN |
|
| 2212 |
- , BIZ_KAKAO_RESEND_ORGNL_TXT |
|
| 2223 |
+ DELAY_YN, |
|
| 2224 |
+ AT_DELAY_YN, |
|
| 2225 |
+ BIZ_KAKAO_RESEND_ORGNL_TXT |
|
| 2213 | 2226 |
) |
| 2214 | 2227 |
VALUES |
| 2215 | 2228 |
|
... | ... | @@ -2233,8 +2246,9 @@ |
| 2233 | 2246 |
#fileCnt#, |
| 2234 | 2247 |
#totPrice#, |
| 2235 | 2248 |
#eventYn#, |
| 2236 |
- #delayYn# |
|
| 2237 |
- , #kakaoSubMagOrgnlTxt# |
|
| 2249 |
+ #delayYn#, |
|
| 2250 |
+ #atDelayYn#, |
|
| 2251 |
+ #kakaoSubMagOrgnlTxt# |
|
| 2238 | 2252 |
) |
| 2239 | 2253 |
</insert> |
| 2240 | 2254 |
|
... | ... | @@ -5773,15 +5787,18 @@ |
| 5773 | 5787 |
|
| 5774 | 5788 |
<select id="mjonMsgDAO.selectMsgGroupDataByGoupId" parameterClass="mjonResvMsgVO" resultClass="mjonMsgVO"> |
| 5775 | 5789 |
|
| 5776 |
- SELECT MSG_GROUP_ID AS msgGroupId, |
|
| 5777 |
- USER_ID AS userId, |
|
| 5778 |
- SMS_TXT AS smsTxt, |
|
| 5779 |
- EACH_PRICE AS eachPrice, |
|
| 5780 |
- TOT_PRICE AS totPrice, |
|
| 5781 |
- MSG_GROUP_CNT AS msgGroupCnt |
|
| 5782 |
- FROM MJ_MSG_GROUP_DATA |
|
| 5783 |
- WHERE USER_ID = #userId# |
|
| 5784 |
- AND MSG_GROUP_ID = #msgGroupId# |
|
| 5790 |
+ SELECT |
|
| 5791 |
+ MSG_GROUP_ID AS msgGroupId |
|
| 5792 |
+ , USER_ID AS userId |
|
| 5793 |
+ , SMS_TXT AS smsTxt |
|
| 5794 |
+ , EACH_PRICE AS eachPrice |
|
| 5795 |
+ , TOT_PRICE AS totPrice |
|
| 5796 |
+ , MSG_GROUP_CNT AS msgGroupCnt |
|
| 5797 |
+ FROM |
|
| 5798 |
+ MJ_MSG_GROUP_DATA |
|
| 5799 |
+ WHERE 1=1 |
|
| 5800 |
+ AND USER_ID = #userId# |
|
| 5801 |
+ AND MSG_GROUP_ID = #msgGroupId# |
|
| 5785 | 5802 |
ORDER BY MSG_GROUP_ID DESC |
| 5786 | 5803 |
LIMIT 1 |
| 5787 | 5804 |
|
... | ... | @@ -5819,6 +5836,25 @@ |
| 5819 | 5836 |
|
| 5820 | 5837 |
</update> |
| 5821 | 5838 |
|
| 5839 |
+ <!-- mj_msg_data 테이블 예약 지연 문자 발송 요청 값 수정 --> |
|
| 5840 |
+ <update id="mjonMsgDAO.updateMsgDelaySendReserveTimeMsgDataFlag" parameterClass="mjonMsgVO"> |
|
| 5841 |
+ |
|
| 5842 |
+ UPDATE MJ_MSG_DATA |
|
| 5843 |
+ SET REQ_DATE = |
|
| 5844 |
+ <![CDATA[ |
|
| 5845 |
+ CASE |
|
| 5846 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), REQ_DATE) < 0 |
|
| 5847 |
+ THEN REQ_DATE |
|
| 5848 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), REQ_DATE) >= 30 |
|
| 5849 |
+ THEN DATE_ADD(REQ_DATE, INTERVAL -30 MINUTE) |
|
| 5850 |
+ ELSE DATE_ADD(REQ_DATE, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), REQ_DATE)) MINUTE) |
|
| 5851 |
+ END |
|
| 5852 |
+ ]]> |
|
| 5853 |
+ WHERE USER_ID = #userId# |
|
| 5854 |
+ AND MSG_GROUP_ID = #msgGroupId# |
|
| 5855 |
+ |
|
| 5856 |
+ </update> |
|
| 5857 |
+ |
|
| 5822 | 5858 |
<update id="mjonMsgDAO.updateMsgDelaySendRealTimeMsgGroupDataFlag" parameterClass="mjonMsgVO"> |
| 5823 | 5859 |
|
| 5824 | 5860 |
UPDATE MJ_MSG_GROUP_DATA |
... | ... | @@ -5828,12 +5864,35 @@ |
| 5828 | 5864 |
|
| 5829 | 5865 |
</update> |
| 5830 | 5866 |
|
| 5867 |
+ <!-- mj_msg_group_data 테이블 예약 지연 문자 발송 요청시간 수정 --> |
|
| 5868 |
+ <update id="mjonMsgDAO.updateMsgDelaySendReserveTimeMsgGroupDataFlag" parameterClass="mjonMsgVO"> |
|
| 5869 |
+ |
|
| 5870 |
+ UPDATE MJ_MSG_GROUP_DATA |
|
| 5871 |
+ SET REQ_DATE = |
|
| 5872 |
+ <![CDATA[ |
|
| 5873 |
+ CASE |
|
| 5874 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), REQ_DATE) < 0 |
|
| 5875 |
+ THEN REQ_DATE |
|
| 5876 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), REQ_DATE) >= 30 |
|
| 5877 |
+ THEN DATE_ADD(REQ_DATE, INTERVAL -30 MINUTE) |
|
| 5878 |
+ ELSE DATE_ADD(REQ_DATE, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), REQ_DATE)) MINUTE) |
|
| 5879 |
+ END |
|
| 5880 |
+ ]]> , |
|
| 5881 |
+ |
|
| 5882 |
+ DELAY_COMPLETE_YN = 'Y' |
|
| 5883 |
+ WHERE USER_ID = #userId# |
|
| 5884 |
+ AND MSG_GROUP_ID = #msgGroupId# |
|
| 5885 |
+ |
|
| 5886 |
+ </update> |
|
| 5887 |
+ |
|
| 5831 | 5888 |
<select id="mjonMsgDAO.selectMsgGroupDataReqDateList" parameterClass="mjonMsgResvVO" resultClass="mjonMsgResvVO"> |
| 5832 | 5889 |
|
| 5833 |
- SELECT DATE_FORMAT(REQ_DATE, '%Y-%m-%d %T' ) AS strReqDate |
|
| 5834 |
- FROM MJ_MSG_GROUP_DATA |
|
| 5890 |
+ SELECT |
|
| 5891 |
+ DATE_FORMAT(REQ_DATE, '%Y-%m-%d %T' ) AS strReqDate |
|
| 5892 |
+ FROM |
|
| 5893 |
+ MJ_MSG_GROUP_DATA |
|
| 5835 | 5894 |
WHERE 1=1 |
| 5836 |
- AND USER_ID = #userId# |
|
| 5895 |
+ AND USER_ID = #userId# |
|
| 5837 | 5896 |
<iterate prepend="AND MSG_GROUP_ID IN" open="(" close=")" conjunction="," property="msgGroupIdList">
|
| 5838 | 5897 |
#msgGroupIdList[]# |
| 5839 | 5898 |
</iterate> |
... | ... | @@ -6563,5 +6622,74 @@ |
| 6563 | 6622 |
ORDER BY M.orderByCode |
| 6564 | 6623 |
</select> |
| 6565 | 6624 |
|
| 6625 |
+ <update id="mjonMsgDAO.updateKakaoAtDelayCancelMsgDataFlag" parameterClass="mjonMsgVO"> |
|
| 6626 |
+ |
|
| 6627 |
+ UPDATE |
|
| 6628 |
+ MJ_MSG_DATA |
|
| 6629 |
+ SET |
|
| 6630 |
+ REFUND_YN = 'Y' |
|
| 6631 |
+ , REQ_DATE = NOW() |
|
| 6632 |
+ , RESULT_LOG_UPDT_PNTTM = NOW() |
|
| 6633 |
+ , CUR_STATE = '3' |
|
| 6634 |
+ , RSLT_CODE = '7300' |
|
| 6635 |
+ WHERE 1=1 |
|
| 6636 |
+ AND USER_ID = #userId# |
|
| 6637 |
+ AND MSG_GROUP_ID = #msgGroupId# |
|
| 6638 |
+ |
|
| 6639 |
+ </update> |
|
| 6640 |
+ |
|
| 6641 |
+ <update id="mjonMsgDAO.updateKakaoAtDelayCancelMsgGroupDataFlag" parameterClass="mjonMsgVO"> |
|
| 6642 |
+ |
|
| 6643 |
+ UPDATE |
|
| 6644 |
+ MJ_MSG_GROUP_DATA |
|
| 6645 |
+ SET |
|
| 6646 |
+ CANCELDATE = NOW() |
|
| 6647 |
+ , REQ_DATE = NOW() |
|
| 6648 |
+ , AT_DELAY_COMPLETE_YN = 'Y' |
|
| 6649 |
+ WHERE 1=1 |
|
| 6650 |
+ AND USER_ID = #userId# |
|
| 6651 |
+ AND MSG_GROUP_ID = #msgGroupId# |
|
| 6652 |
+ |
|
| 6653 |
+ </update> |
|
| 6654 |
+ |
|
| 6655 |
+ <update id="mjonMsgDAO.updateKakaoAtDelaySendRealTimeMsgDataFlag" parameterClass="mjonMsgVO"> |
|
| 6656 |
+ UPDATE |
|
| 6657 |
+ MJ_MSG_DATA |
|
| 6658 |
+ SET |
|
| 6659 |
+ REQ_DATE = |
|
| 6660 |
+ <![CDATA[ |
|
| 6661 |
+ CASE |
|
| 6662 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), REQ_DATE) < 0 |
|
| 6663 |
+ THEN REQ_DATE |
|
| 6664 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), REQ_DATE) >= 30 |
|
| 6665 |
+ THEN DATE_ADD(REQ_DATE, INTERVAL -30 MINUTE) |
|
| 6666 |
+ ELSE DATE_ADD(REQ_DATE, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), REQ_DATE)) MINUTE) |
|
| 6667 |
+ END |
|
| 6668 |
+ ]]> |
|
| 6669 |
+ WHERE 1=1 |
|
| 6670 |
+ AND USER_ID = #userId# |
|
| 6671 |
+ AND MSG_GROUP_ID = #msgGroupId# |
|
| 6672 |
+ </update> |
|
| 6673 |
+ |
|
| 6674 |
+ <update id="mjonMsgDAO.updateKakaoAtDelaySendRealTimeMsgGroupDataFlag" parameterClass="mjonMsgVO"> |
|
| 6675 |
+ UPDATE |
|
| 6676 |
+ MJ_MSG_GROUP_DATA |
|
| 6677 |
+ SET |
|
| 6678 |
+ REQ_DATE = |
|
| 6679 |
+ <![CDATA[ |
|
| 6680 |
+ CASE |
|
| 6681 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), REQ_DATE) < 0 |
|
| 6682 |
+ THEN REQ_DATE |
|
| 6683 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), REQ_DATE) >= 30 |
|
| 6684 |
+ THEN DATE_ADD(REQ_DATE, INTERVAL -30 MINUTE) |
|
| 6685 |
+ ELSE DATE_ADD(REQ_DATE, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), REQ_DATE)) MINUTE) |
|
| 6686 |
+ END |
|
| 6687 |
+ ]]> |
|
| 6688 |
+ , AT_DELAY_COMPLETE_YN = 'Y' |
|
| 6689 |
+ WHERE 1=1 |
|
| 6690 |
+ AND USER_ID = #userId# |
|
| 6691 |
+ AND MSG_GROUP_ID = #msgGroupId# |
|
| 6692 |
+ </update> |
|
| 6693 |
+ |
|
| 6566 | 6694 |
</sqlMap> |
| 6567 | 6695 |
|
--- src/main/resources/egovframework/sqlmap/let/msg/MjonMsgResv_SQL_mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/msg/MjonMsgResv_SQL_mysql.xml
... | ... | @@ -445,12 +445,17 @@ |
| 445 | 445 |
</select> |
| 446 | 446 |
|
| 447 | 447 |
<select id="MjonReservMsgDAO.selectMsgSeqListByGroupId" parameterClass="mjonMsgResvVO" resultClass="mjonMsgResvVO"> |
| 448 |
- |
|
| 449 |
- SELECT USERDATA AS userData |
|
| 450 |
- FROM MJ_MSG_DATA |
|
| 451 |
- WHERE USER_ID = #userId# |
|
| 452 |
- AND MSG_GROUP_ID = #msgGroupId# |
|
| 453 |
- |
|
| 448 |
+ SELECT |
|
| 449 |
+ A.USERDATA AS userData |
|
| 450 |
+ , DATE_FORMAT(A.REQ_DATE, '%Y-%m-%d %T' ) AS reqdate |
|
| 451 |
+ , B.RESERVE_YN AS reserveYn |
|
| 452 |
+ FROM |
|
| 453 |
+ MJ_MSG_DATA A |
|
| 454 |
+ , MJ_MSG_GROUP_DATA B |
|
| 455 |
+ WHERE A.MSG_GROUP_ID = B.MSG_GROUP_ID |
|
| 456 |
+ AND A.USER_ID = #userId# |
|
| 457 |
+ AND A.MSG_GROUP_ID = #msgGroupId# |
|
| 458 |
+ ORDER BY A.REQ_DATE ASC |
|
| 454 | 459 |
</select> |
| 455 | 460 |
|
| 456 | 461 |
<select id="MjonReservMsgDAO.selectMjonMsgGroupData" parameterClass="mjonMsgResvVO" resultClass="mjonMsgVO"> |
... | ... | @@ -623,10 +628,32 @@ |
| 623 | 628 |
|
| 624 | 629 |
</update> |
| 625 | 630 |
|
| 631 |
+ <!-- 현대퓨처넷 예약문자 30분 딜레이 정상 전송 처리 --> |
|
| 626 | 632 |
<update id="MjonReservMsgDAO.updateRealTimeHFNSmsMsgSeqListByMsgSeq" parameterClass="mjonMsgResvVO"> |
| 627 | 633 |
|
| 628 | 634 |
UPDATE SMS_MSG |
| 629 | 635 |
SET TR_SENDDATE = NOW() |
| 636 |
+ WHERE 1=1 |
|
| 637 |
+ <iterate prepend="AND TR_ID IN" open="(" close=")" conjunction="," property="userDataList">
|
|
| 638 |
+ #userDataList[]# |
|
| 639 |
+ </iterate> |
|
| 640 |
+ |
|
| 641 |
+ </update> |
|
| 642 |
+ |
|
| 643 |
+ <!-- 현대퓨처넷 예약 단문 지연처리 문자 정상 발송 --> |
|
| 644 |
+ <update id="MjonReservMsgDAO.updateReserveTimeHFNSmsMsgSeqListByMsgSeq" parameterClass="mjonMsgResvVO"> |
|
| 645 |
+ |
|
| 646 |
+ UPDATE SMS_MSG |
|
| 647 |
+ SET TR_SENDDATE = |
|
| 648 |
+ <![CDATA[ |
|
| 649 |
+ CASE |
|
| 650 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), TR_SENDDATE) < 0 |
|
| 651 |
+ THEN TR_SENDDATE |
|
| 652 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), TR_SENDDATE) >= 30 |
|
| 653 |
+ THEN DATE_ADD(TR_SENDDATE, INTERVAL -30 MINUTE) |
|
| 654 |
+ ELSE DATE_ADD(TR_SENDDATE, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), TR_SENDDATE)) MINUTE) |
|
| 655 |
+ END |
|
| 656 |
+ ]]> |
|
| 630 | 657 |
WHERE 1=1 |
| 631 | 658 |
<iterate prepend="AND TR_ID IN" open="(" close=")" conjunction="," property="userDataList">
|
| 632 | 659 |
#userDataList[]# |
... | ... | @@ -644,6 +671,27 @@ |
| 644 | 671 |
</iterate> |
| 645 | 672 |
|
| 646 | 673 |
</update> |
| 674 |
+ |
|
| 675 |
+ <!-- 현대퓨처넷 예약 장문/그림 지연처리 문자 정상 발송 --> |
|
| 676 |
+ <update id="MjonReservMsgDAO.updateReserveTimeHFNMmsMsgSeqListByMsgSeq" parameterClass="mjonMsgResvVO"> |
|
| 677 |
+ |
|
| 678 |
+ UPDATE MMS_MSG |
|
| 679 |
+ SET REQDATE = |
|
| 680 |
+ <![CDATA[ |
|
| 681 |
+ CASE |
|
| 682 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), REQDATE) < 0 |
|
| 683 |
+ THEN REQDATE |
|
| 684 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), REQDATE) >= 30 |
|
| 685 |
+ THEN DATE_ADD(REQDATE, INTERVAL -30 MINUTE) |
|
| 686 |
+ ELSE DATE_ADD(REQDATE, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), REQDATE)) MINUTE) |
|
| 687 |
+ END |
|
| 688 |
+ ]]> |
|
| 689 |
+ WHERE 1=1 |
|
| 690 |
+ <iterate prepend="AND ID IN" open="(" close=")" conjunction="," property="userDataList">
|
|
| 691 |
+ #userDataList[]# |
|
| 692 |
+ </iterate> |
|
| 693 |
+ |
|
| 694 |
+ </update> |
|
| 647 | 695 |
|
| 648 | 696 |
<update id="MjonReservMsgDAO.updateRealTimeIMOMsgSeqListByMsgSeq" parameterClass="mjonMsgResvVO"> |
| 649 | 697 |
|
... | ... | @@ -681,11 +729,61 @@ |
| 681 | 729 |
|
| 682 | 730 |
</update> |
| 683 | 731 |
|
| 732 |
+ <update id="MjonReservMsgDAO.updateReserveTimeJJMsgSeqListByMsgSeq" parameterClass="mjonMsgResvVO"> |
|
| 733 |
+ |
|
| 734 |
+ UPDATE MTMSG_DATA |
|
| 735 |
+ SET INPUT_DATE = |
|
| 736 |
+ <![CDATA[ |
|
| 737 |
+ CASE |
|
| 738 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), INPUT_DATE) < 0 |
|
| 739 |
+ THEN INPUT_DATE |
|
| 740 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), INPUT_DATE) >= 30 |
|
| 741 |
+ THEN DATE_ADD(INPUT_DATE, INTERVAL -30 MINUTE) |
|
| 742 |
+ ELSE DATE_ADD(INPUT_DATE, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), INPUT_DATE)) MINUTE) |
|
| 743 |
+ END |
|
| 744 |
+ ]]> , |
|
| 745 |
+ RES_DATE = |
|
| 746 |
+ <![CDATA[ |
|
| 747 |
+ CASE |
|
| 748 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), RES_DATE) < 0 |
|
| 749 |
+ THEN RES_DATE |
|
| 750 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), RES_DATE) >= 30 |
|
| 751 |
+ THEN DATE_ADD(RES_DATE, INTERVAL -30 MINUTE) |
|
| 752 |
+ ELSE DATE_ADD(RES_DATE, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), RES_DATE)) MINUTE) |
|
| 753 |
+ END |
|
| 754 |
+ ]]> |
|
| 755 |
+ WHERE 1=1 |
|
| 756 |
+ <iterate prepend="AND USERDATA IN" open="(" close=")" conjunction="," property="userDataList">
|
|
| 757 |
+ #userDataList[]# |
|
| 758 |
+ </iterate> |
|
| 759 |
+ |
|
| 760 |
+ </update> |
|
| 684 | 761 |
|
| 685 | 762 |
<update id="MjonReservMsgDAO.updateRealTimeIVTMsgSeqListByMsgSeq" parameterClass="mjonMsgResvVO"> |
| 686 | 763 |
|
| 687 | 764 |
UPDATE SMSQ_SEND |
| 688 | 765 |
SET SENDREQ_TIME = NOW() |
| 766 |
+ WHERE 1=1 |
|
| 767 |
+ <iterate prepend="AND USERDATA IN" open="(" close=")" conjunction="," property="userDataList">
|
|
| 768 |
+ #userDataList[]# |
|
| 769 |
+ </iterate> |
|
| 770 |
+ |
|
| 771 |
+ </update> |
|
| 772 |
+ |
|
| 773 |
+ <!-- 인비토 예약 지연처리 문자 즉시 발송 --> |
|
| 774 |
+ <update id="MjonReservMsgDAO.updateReserveTimeIVTMsgSeqListByMsgSeq" parameterClass="mjonMsgResvVO"> |
|
| 775 |
+ |
|
| 776 |
+ UPDATE SMSQ_SEND |
|
| 777 |
+ SET SENDREQ_TIME = |
|
| 778 |
+ <![CDATA[ |
|
| 779 |
+ CASE |
|
| 780 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), SENDREQ_TIME) < 0 |
|
| 781 |
+ THEN SENDREQ_TIME |
|
| 782 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), SENDREQ_TIME) >= 30 |
|
| 783 |
+ THEN DATE_ADD(SENDREQ_TIME, INTERVAL -30 MINUTE) |
|
| 784 |
+ ELSE DATE_ADD(SENDREQ_TIME, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), SENDREQ_TIME)) MINUTE) |
|
| 785 |
+ END |
|
| 786 |
+ ]]> |
|
| 689 | 787 |
WHERE 1=1 |
| 690 | 788 |
<iterate prepend="AND USERDATA IN" open="(" close=")" conjunction="," property="userDataList">
|
| 691 | 789 |
#userDataList[]# |
... | ... | @@ -705,6 +803,36 @@ |
| 705 | 803 |
|
| 706 | 804 |
</update> |
| 707 | 805 |
|
| 806 |
+ <update id="MjonReservMsgDAO.updateReserveTimeJJB01MsgSeqListByMsgSeq" parameterClass="mjonMsgResvVO"> |
|
| 807 |
+ |
|
| 808 |
+ UPDATE MTMSG_B1_DATA |
|
| 809 |
+ SET INPUT_DATE = |
|
| 810 |
+ <![CDATA[ |
|
| 811 |
+ CASE |
|
| 812 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), INPUT_DATE) < 0 |
|
| 813 |
+ THEN INPUT_DATE |
|
| 814 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), INPUT_DATE) >= 30 |
|
| 815 |
+ THEN DATE_ADD(INPUT_DATE, INTERVAL -30 MINUTE) |
|
| 816 |
+ ELSE DATE_ADD(INPUT_DATE, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), INPUT_DATE)) MINUTE) |
|
| 817 |
+ END |
|
| 818 |
+ ]]> , |
|
| 819 |
+ RES_DATE = |
|
| 820 |
+ <![CDATA[ |
|
| 821 |
+ CASE |
|
| 822 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), RES_DATE) < 0 |
|
| 823 |
+ THEN RES_DATE |
|
| 824 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), RES_DATE) >= 30 |
|
| 825 |
+ THEN DATE_ADD(RES_DATE, INTERVAL -30 MINUTE) |
|
| 826 |
+ ELSE DATE_ADD(RES_DATE, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), RES_DATE)) MINUTE) |
|
| 827 |
+ END |
|
| 828 |
+ ]]> |
|
| 829 |
+ WHERE 1=1 |
|
| 830 |
+ <iterate prepend="AND USERDATA IN" open="(" close=")" conjunction="," property="userDataList">
|
|
| 831 |
+ #userDataList[]# |
|
| 832 |
+ </iterate> |
|
| 833 |
+ |
|
| 834 |
+ </update> |
|
| 835 |
+ |
|
| 708 | 836 |
<update id="MjonReservMsgDAO.updateRealTimeJJB02MsgSeqListByMsgSeq" parameterClass="mjonMsgResvVO"> |
| 709 | 837 |
|
| 710 | 838 |
UPDATE MTMSG_B2_DATA |
... | ... | @@ -717,6 +845,67 @@ |
| 717 | 845 |
|
| 718 | 846 |
</update> |
| 719 | 847 |
|
| 848 |
+ <update id="MjonReservMsgDAO.updateReserveTimeJJB02MsgSeqListByMsgSeq" parameterClass="mjonMsgResvVO"> |
|
| 849 |
+ |
|
| 850 |
+ UPDATE MTMSG_B2_DATA |
|
| 851 |
+ SET INPUT_DATE = |
|
| 852 |
+ <![CDATA[ |
|
| 853 |
+ CASE |
|
| 854 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), INPUT_DATE) < 0 |
|
| 855 |
+ THEN INPUT_DATE |
|
| 856 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), INPUT_DATE) >= 30 |
|
| 857 |
+ THEN DATE_ADD(INPUT_DATE, INTERVAL -30 MINUTE) |
|
| 858 |
+ ELSE DATE_ADD(INPUT_DATE, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), INPUT_DATE)) MINUTE) |
|
| 859 |
+ END |
|
| 860 |
+ ]]> , |
|
| 861 |
+ RES_DATE = |
|
| 862 |
+ <![CDATA[ |
|
| 863 |
+ CASE |
|
| 864 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), RES_DATE) < 0 |
|
| 865 |
+ THEN RES_DATE |
|
| 866 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), RES_DATE) >= 30 |
|
| 867 |
+ THEN DATE_ADD(RES_DATE, INTERVAL -30 MINUTE) |
|
| 868 |
+ ELSE DATE_ADD(RES_DATE, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), RES_DATE)) MINUTE) |
|
| 869 |
+ END |
|
| 870 |
+ ]]> |
|
| 871 |
+ WHERE 1=1 |
|
| 872 |
+ <iterate prepend="AND USERDATA IN" open="(" close=")" conjunction="," property="userDataList">
|
|
| 873 |
+ #userDataList[]# |
|
| 874 |
+ </iterate> |
|
| 875 |
+ |
|
| 876 |
+ </update> |
|
| 877 |
+ |
|
| 878 |
+ <update id="MjonReservMsgDAO.updateReserveTimeBizMsgSeqListByMsgSeq" parameterClass="mjonMsgResvVO"> |
|
| 879 |
+ UPDATE |
|
| 880 |
+ BIZ_MSG |
|
| 881 |
+ SET |
|
| 882 |
+ REQUEST_TIME = |
|
| 883 |
+ <![CDATA[ |
|
| 884 |
+ CASE |
|
| 885 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), REQUEST_TIME) < 0 |
|
| 886 |
+ THEN REQUEST_TIME |
|
| 887 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), REQUEST_TIME) >= 30 |
|
| 888 |
+ THEN DATE_ADD(REQUEST_TIME, INTERVAL -30 MINUTE) |
|
| 889 |
+ ELSE DATE_ADD(REQUEST_TIME, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), REQUEST_TIME)) MINUTE) |
|
| 890 |
+ END |
|
| 891 |
+ ]]> , |
|
| 892 |
+ SEND_TIME = |
|
| 893 |
+ <![CDATA[ |
|
| 894 |
+ CASE |
|
| 895 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), SEND_TIME) < 0 |
|
| 896 |
+ THEN SEND_TIME |
|
| 897 |
+ WHEN TIMESTAMPDIFF(MINUTE, NOW(), SEND_TIME) >= 30 |
|
| 898 |
+ THEN DATE_ADD(SEND_TIME, INTERVAL -30 MINUTE) |
|
| 899 |
+ ELSE DATE_ADD(SEND_TIME, INTERVAL -(TIMESTAMPDIFF(MINUTE, NOW(), SEND_TIME)) MINUTE) |
|
| 900 |
+ END |
|
| 901 |
+ ]]> |
|
| 902 |
+ WHERE 1=1 |
|
| 903 |
+ <iterate prepend="AND USER_KEY IN" open="(" close=")" conjunction="," property="userDataList">
|
|
| 904 |
+ #userDataList[]# |
|
| 905 |
+ </iterate> |
|
| 906 |
+ |
|
| 907 |
+ </update> |
|
| 908 |
+ |
|
| 720 | 909 |
</sqlMap> |
| 721 | 910 |
|
| 722 | 911 |
|
--- src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml
... | ... | @@ -15,12 +15,21 @@ |
| 15 | 15 |
|
| 16 | 16 |
<!-- 등급제 시행여부 상세 --> |
| 17 | 17 |
<select id="mberGrdDAO.selectMberSettingDetail" parameterClass="mberGrdVO" resultClass="mberGrdVO"> |
| 18 |
+ <![CDATA[ |
|
| 18 | 19 |
SELECT |
| 19 | 20 |
GRD_NOTI AS grdNoti |
| 20 |
- , GRD_DATE AS grdDate |
|
| 21 |
+ , DATE_FORMAT(GRD_DATE, '%Y-%m-%d' ) AS grdDate |
|
| 22 |
+ , CASE |
|
| 23 |
+ WHEN IFNULL(GRD_DATE, '') = '' |
|
| 24 |
+ THEN 'N' |
|
| 25 |
+ WHEN DATE_FORMAT(GRD_DATE, '%Y-%m-%d') <= DATE_FORMAT(NOW(), '%Y-%m-%d') |
|
| 26 |
+ THEN 'Y' |
|
| 27 |
+ ELSE 'N' |
|
| 28 |
+ END grdDatePrgYn |
|
| 21 | 29 |
FROM |
| 22 | 30 |
MJ_MBER_SETTING |
| 23 | 31 |
LIMIT 1 |
| 32 |
+ ]]> |
|
| 24 | 33 |
</select> |
| 25 | 34 |
|
| 26 | 35 |
|
... | ... | @@ -40,13 +49,33 @@ |
| 40 | 49 |
, A.REG_DATE AS regDate |
| 41 | 50 |
, A.EDIT_ID AS editId |
| 42 | 51 |
, A.EDIT_DATE AS editDate |
| 43 |
- FROM mj_mber_grd_setting A |
|
| 52 |
+ FROM MJ_MBER_GRD_SETTING A |
|
| 44 | 53 |
ORDER BY A.GRD_SET_NO ASC |
| 54 |
+ </select> |
|
| 55 |
+ |
|
| 56 |
+ <!-- 등급제 설정 상세 --> |
|
| 57 |
+ <select id="mberGrdDAO.selectMberGrdSettingDetail" parameterClass="mberGrdVO" resultClass="mberGrdVO"> |
|
| 58 |
+ SELECT |
|
| 59 |
+ A.GRD_SET_NO AS grdSetNo |
|
| 60 |
+ , A.GRD_SET_NM AS grdSetNm |
|
| 61 |
+ , FLOOR(A.STD_AMT) AS stdAmt |
|
| 62 |
+ , FORMAT(FLOOR(A.STD_AMT),0) AS stdAmtComma |
|
| 63 |
+ , A.SHORT_PRICE AS shortPrice |
|
| 64 |
+ , A.LONG_PRICE AS longPrice |
|
| 65 |
+ , A.PICTURE_PRICE AS picturePrice |
|
| 66 |
+ , A.PICTURE2_PRICE AS picture2Price |
|
| 67 |
+ , A.PICTURE3_PRICE AS picture3Price |
|
| 68 |
+ , A.REG_ID AS regId |
|
| 69 |
+ , A.REG_DATE AS regDate |
|
| 70 |
+ , A.EDIT_ID AS editId |
|
| 71 |
+ , A.EDIT_DATE AS editDate |
|
| 72 |
+ FROM MJ_MBER_GRD_SETTING A |
|
| 73 |
+ WHERE A.GRD_SET_NO = #grdSetNo# |
|
| 45 | 74 |
</select> |
| 46 | 75 |
|
| 47 | 76 |
<!-- 등급제 설정 일괄변경 일괄변경 --> |
| 48 | 77 |
<update id="mberGrdDAO.updateGrdSetting" parameterClass="mberGrdVO"> |
| 49 |
- UPDATE mj_mber_grd_setting A |
|
| 78 |
+ UPDATE MJ_MBER_GRD_SETTING A |
|
| 50 | 79 |
SET |
| 51 | 80 |
A.STD_AMT = #stdAmt# |
| 52 | 81 |
, A.SHORT_PRICE = #shortPrice# |
... | ... | @@ -59,6 +88,71 @@ |
| 59 | 88 |
WHERE A.GRD_SET_NO = #grdSetNo# |
| 60 | 89 |
</update> |
| 61 | 90 |
|
| 91 |
+ <!-- 회원별 등급 목록 --> |
|
| 92 |
+ <select id="mberGrdDAO.selectMberGrdList" parameterClass="mberGrdVO" resultClass="mberGrdVO"> |
|
| 93 |
+ SELECT |
|
| 94 |
+ COUNT(A.MBER_ID) OVER() AS totCnt |
|
| 95 |
+ , A.MBER_ID AS mberId |
|
| 96 |
+ , C.MBER_NM AS mberNm |
|
| 97 |
+ , A.GRD_SET_NO AS grdSetNo |
|
| 98 |
+ , B.GRD_SET_NM AS grdSetNm |
|
| 99 |
+ , A.SHORT_PRICE AS shortPrice |
|
| 100 |
+ , A.LONG_PRICE AS longPrice |
|
| 101 |
+ , A.PICTURE_PRICE AS picturePrice |
|
| 102 |
+ , A.PICTURE2_PRICE AS picture2Price |
|
| 103 |
+ , A.PICTURE3_PRICE AS picture3Price |
|
| 104 |
+ , A.AMT AS amt |
|
| 105 |
+ , A.TOT_AMT AS totAmt |
|
| 106 |
+ , DATE_FORMAT(A.GRD_DATE, '%Y-%m-%d') AS grdDate |
|
| 107 |
+ , DATE_FORMAT(A.GRD_START_DATE, '%Y-%m-%d') AS grdStartDate |
|
| 108 |
+ , DATE_FORMAT(A.GRD_END_DATE, '%Y-%m-%d') AS grdEndDate |
|
| 109 |
+ , A.GRD_STATUS AS grdStatus |
|
| 110 |
+ , CASE |
|
| 111 |
+ WHEN E.EVENT_STATUS = 'Y' AND DATE_FORMAT(NOW(), '%Y-%m-%d') BETWEEN DATE_FORMAT(E.EVENT_START_DATE, '%Y-%m-%d') AND DATE_FORMAT(E.EVENT_END_DATE, '%Y-%m-%d') |
|
| 112 |
+ THEN '대기' |
|
| 113 |
+ WHEN A.GRD_STATUS = 'Y' AND NOW() BETWEEN A.GRD_START_DATE AND A.GRD_END_DATE |
|
| 114 |
+ THEN '진행' |
|
| 115 |
+ WHEN A.GRD_STATUS = 'N' |
|
| 116 |
+ THEN '대기' |
|
| 117 |
+ WHEN A.GRD_STATUS = 'E' |
|
| 118 |
+ THEN '종료' |
|
| 119 |
+ ELSE '종료' |
|
| 120 |
+ END AS grdStatusNm |
|
| 121 |
+ , A.REG_ID AS regId |
|
| 122 |
+ , DATE_FORMAT(A.REG_DATE, '%Y-%m-%d %H:%i') AS regDate |
|
| 123 |
+ , A.EDIT_ID AS editId |
|
| 124 |
+ , DATE_FORMAT(A.EDIT_DATE, '%Y-%m-%d %H:%i') AS editDate |
|
| 125 |
+ FROM |
|
| 126 |
+ MJ_MBER_GRD_INFO A |
|
| 127 |
+ INNER JOIN MJ_MBER_GRD_SETTING B |
|
| 128 |
+ ON A.GRD_SET_NO = B.GRD_SET_NO |
|
| 129 |
+ INNER JOIN LETTNGNRLMBER C |
|
| 130 |
+ ON A.MBER_ID = C.MBER_ID |
|
| 131 |
+ LEFT OUTER JOIN MJ_EVENT_MBER_INFO E |
|
| 132 |
+ ON A.MBER_ID = E.MBER_ID |
|
| 133 |
+ WHERE 1=1 |
|
| 134 |
+ AND C.MBER_STTUS = 'Y' |
|
| 135 |
+ <isNotEmpty property="searchKeyword"> |
|
| 136 |
+ <isEqual prepend="AND" property="searchCondition" compareValue=""> |
|
| 137 |
+ A.MBER_ID = #searchKeyword# |
|
| 138 |
+ </isEqual> |
|
| 139 |
+ <isEqual prepend="AND" property="searchCondition" compareValue="1"> |
|
| 140 |
+ A.MBER_ID = #searchKeyword# |
|
| 141 |
+ </isEqual> |
|
| 142 |
+ </isNotEmpty> |
|
| 143 |
+ <isNotEmpty prepend="AND" property="searchGrdStatus"> |
|
| 144 |
+ A.GRD_STATUS = #searchGrdStatus# |
|
| 145 |
+ </isNotEmpty> |
|
| 146 |
+ ORDER BY 1=1 |
|
| 147 |
+ <isNotEmpty property="searchSortCnd"> |
|
| 148 |
+ ,$searchSortCnd$ |
|
| 149 |
+ </isNotEmpty> |
|
| 150 |
+ <isNotEmpty property="searchSortOrd"> |
|
| 151 |
+ $searchSortOrd$ |
|
| 152 |
+ </isNotEmpty> |
|
| 153 |
+ LIMIT #recordCountPerPage# OFFSET #firstIndex# |
|
| 154 |
+ </select> |
|
| 155 |
+ |
|
| 62 | 156 |
<!-- 회원별 등급 상세 --> |
| 63 | 157 |
<select id="mberGrdDAO.selectMberGrdDetail" parameterClass="mberGrdVO" resultClass="mberGrdVO"> |
| 64 | 158 |
SELECT |
... | ... | @@ -72,21 +166,101 @@ |
| 72 | 166 |
, AMT AS amt |
| 73 | 167 |
, TOT_AMT AS totAmt |
| 74 | 168 |
, GRD_START_DATE AS grdStartDate |
| 75 |
- , GRD_END_DATE AS grd_endDate |
|
| 169 |
+ , GRD_END_DATE AS grdEndDate |
|
| 76 | 170 |
, GRD_STATUS AS grdStatus |
| 77 | 171 |
, REG_ID AS regId |
| 78 | 172 |
, REG_DATE AS regDate |
| 79 | 173 |
, EDIT_ID AS editId |
| 80 | 174 |
, EDIT_DATE AS editDate |
| 81 | 175 |
FROM |
| 82 |
- mj_mber_grd_info |
|
| 176 |
+ MJ_MBER_GRD_INFO |
|
| 83 | 177 |
WHERE |
| 84 | 178 |
MBER_ID = #mberId# |
| 179 |
+ LIMIT 1 |
|
| 85 | 180 |
</select> |
| 86 | 181 |
|
| 182 |
+ <!-- 회원 등급제 대상여부 정보(사용자화면용) --> |
|
| 183 |
+ <select id="mberGrdDAO.selectMberGrdInfo" parameterClass="String" resultClass="mberGrdVO"> |
|
| 184 |
+ SELECT |
|
| 185 |
+ M.mberId |
|
| 186 |
+ , blineCode |
|
| 187 |
+ , M.grdSetNo |
|
| 188 |
+ , M.grdSetNm |
|
| 189 |
+ , M.shortPrice |
|
| 190 |
+ , M.longPrice |
|
| 191 |
+ , M.picturePrice |
|
| 192 |
+ , M.picture2Price |
|
| 193 |
+ , M.picture3Price |
|
| 194 |
+ FROM ( |
|
| 195 |
+ SELECT |
|
| 196 |
+ A.MBER_ID AS mberId |
|
| 197 |
+ , IFNULL(A.BLINE_CODE, 'N') AS blineCode |
|
| 198 |
+ , G.GRD_SET_NO AS grdSetNo |
|
| 199 |
+ , S.GRD_SET_NM AS grdSetNm |
|
| 200 |
+ , G.SHORT_PRICE AS shortPrice |
|
| 201 |
+ , G.LONG_PRICE AS longPrice |
|
| 202 |
+ , G.PICTURE_PRICE AS picturePrice |
|
| 203 |
+ , G.PICTURE2_PRICE AS picture2Price |
|
| 204 |
+ , G.PICTURE3_PRICE AS picture3Price |
|
| 205 |
+ , CASE |
|
| 206 |
+ WHEN |
|
| 207 |
+ (A.SHORT_PRICE > 0 |
|
| 208 |
+ AND (B.SHORT_PRICE > A.SHORT_PRICE |
|
| 209 |
+ OR B.LONG_PRICE > A.LONG_PRICE |
|
| 210 |
+ OR B.PICTURE_PRICE > A.PICTURE_PRICE |
|
| 211 |
+ OR B.PICTURE2_PRICE > A.PICTURE2_PRICE |
|
| 212 |
+ OR B.PICTURE3_PRICE > A.PICTURE3_PRICE) |
|
| 213 |
+ ) |
|
| 214 |
+ THEN 'Y' |
|
| 215 |
+ ELSE 'N' |
|
| 216 |
+ END isSalePrice |
|
| 217 |
+ FROM LETTNGNRLMBER A |
|
| 218 |
+ INNER JOIN MJ_MBER_GRD_INFO G |
|
| 219 |
+ ON A.MBER_ID = G.MBER_ID |
|
| 220 |
+ INNER JOIN MJ_MBER_GRD_SETTING S |
|
| 221 |
+ ON G.GRD_SET_NO = S.GRD_SET_NO |
|
| 222 |
+ JOIN MJ_MBER_SETTING B |
|
| 223 |
+ WHERE 1=1 |
|
| 224 |
+ AND G.GRD_STATUS = 'Y' |
|
| 225 |
+ AND NOW() BETWEEN G.GRD_START_DATE AND G.GRD_END_DATE |
|
| 226 |
+ AND G.MBER_ID = #mberId# |
|
| 227 |
+ ) M |
|
| 228 |
+ WHERE M.isSalePrice = 'N' |
|
| 229 |
+ OR M.blineCode != 'N' |
|
| 230 |
+ LIMIT 1 |
|
| 231 |
+ </select> |
|
| 232 |
+ |
|
| 233 |
+ <!-- 회원별 등급 누적결제액 상세 --> |
|
| 234 |
+ <select id="mberGrdDAO.selectMberGrdAmtDetail" parameterClass="mberGrdVO" resultClass="mberGrdVO"> |
|
| 235 |
+ <![CDATA[ |
|
| 236 |
+ SELECT |
|
| 237 |
+ M.USER_ID AS mberId |
|
| 238 |
+ , M.AMT_SUM AS totAmt |
|
| 239 |
+ , M.GRD_SET_NO AS grdSetNo |
|
| 240 |
+ FROM ( |
|
| 241 |
+ SELECT |
|
| 242 |
+ S.USER_ID |
|
| 243 |
+ , SUM(S.AMT) AS AMT_SUM_ORIGIN |
|
| 244 |
+ , (SUM(S.AMT) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0)) AS AMT_SUM |
|
| 245 |
+ , ( |
|
| 246 |
+ SELECT MIN(S1.GRD_SET_NO) FROM MJ_MBER_GRD_SETTING S1 WHERE S1.STD_AMT <= (SUM(S.AMT) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0)) |
|
| 247 |
+ ) GRD_SET_NO |
|
| 248 |
+ FROM MJ_PG S |
|
| 249 |
+ LEFT OUTER JOIN MJ_EVENT_MBER_INFO SS |
|
| 250 |
+ ON S.USER_ID = SS.MBER_ID |
|
| 251 |
+ WHERE S.PG_STATUS = '1' |
|
| 252 |
+ AND S.REG_DATE >= CONCAT(DATE_FORMAT(#grdDate#, '%Y-%m-%d'), ' ', '00:00:00') |
|
| 253 |
+ GROUP BY S.USER_ID |
|
| 254 |
+ ) M |
|
| 255 |
+ WHERE M.GRD_SET_NO IS NOT NULL |
|
| 256 |
+ AND M.AMT_SUM > 0 |
|
| 257 |
+ AND M.USER_ID = #mberId# |
|
| 258 |
+ ]]> |
|
| 259 |
+ </select> |
|
| 260 |
+ |
|
| 87 | 261 |
<!-- 회원별 등급 등록 --> |
| 88 | 262 |
<insert id="mberGrdDAO.insertMberGrd" parameterClass="mberGrdVO"> |
| 89 |
- INSERT INTO mj_mber_grd_info |
|
| 263 |
+ INSERT INTO MJ_MBER_GRD_INFO |
|
| 90 | 264 |
( |
| 91 | 265 |
MBER_ID |
| 92 | 266 |
, GRD_SET_NO |
... | ... | @@ -97,6 +271,7 @@ |
| 97 | 271 |
, PICTURE3_PRICE |
| 98 | 272 |
, AMT |
| 99 | 273 |
, TOT_AMT |
| 274 |
+ , GRD_DATE |
|
| 100 | 275 |
, GRD_START_DATE |
| 101 | 276 |
, GRD_END_DATE |
| 102 | 277 |
, GRD_STATUS |
... | ... | @@ -116,8 +291,9 @@ |
| 116 | 291 |
, #picture3Price# |
| 117 | 292 |
, #amt# |
| 118 | 293 |
, #totAmt# |
| 294 |
+ , #grdDate# |
|
| 119 | 295 |
, #grdStartDate# |
| 120 |
- , #grd_endDate# |
|
| 296 |
+ , #grdEndDate# |
|
| 121 | 297 |
, #grdStatus# |
| 122 | 298 |
, #regId# |
| 123 | 299 |
, NOW() |
... | ... | @@ -128,7 +304,7 @@ |
| 128 | 304 |
|
| 129 | 305 |
<!-- 회원별 등급 수정 --> |
| 130 | 306 |
<update id="mberGrdDAO.updateMberGrd" parameterClass="mberGrdVO"> |
| 131 |
- UPDATE mj_mber_grd_info SET |
|
| 307 |
+ UPDATE MJ_MBER_GRD_INFO SET |
|
| 132 | 308 |
MBER_ID = #mberId# |
| 133 | 309 |
, GRD_SET_NO = #grdSetNo# |
| 134 | 310 |
, SHORT_PRICE = #shortPrice# |
... | ... | @@ -136,12 +312,9 @@ |
| 136 | 312 |
, PICTURE_PRICE = #picturePrice# |
| 137 | 313 |
, PICTURE2_PRICE = #picture2Price# |
| 138 | 314 |
, PICTURE3_PRICE = #picture3Price# |
| 139 |
- , AMT = #amt# |
|
| 315 |
+ , AMT = #amt# |
|
| 140 | 316 |
, TOT_AMT = #totAmt# |
| 141 |
- , GRD_START_DATE = #grdStartDate# |
|
| 142 |
- , GRD_END_DATE = #grd_endDate# |
|
| 143 |
- , GRD_STATUS = #grdStatus# |
|
| 144 |
- , EDIT_ID = #editId# |
|
| 317 |
+ , EDIT_ID = #editId# |
|
| 145 | 318 |
, EDIT_DATE = NOW() |
| 146 | 319 |
WHERE |
| 147 | 320 |
MBER_ID = #mberId# |
... | ... | @@ -163,17 +336,17 @@ |
| 163 | 336 |
, SUM(S.AMT) AS AMT_SUM_ORIGIN |
| 164 | 337 |
, (SUM(S.AMT) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0)) AS AMT_SUM |
| 165 | 338 |
, ( |
| 166 |
- SELECT MIN(GRD_SET_NO) FROM MJ_MBER_GRD_SETTING S1 WHERE S1.STD_AMT <= (SUM(S.AMT) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0)) |
|
| 339 |
+ SELECT MIN(S1.GRD_SET_NO) FROM MJ_MBER_GRD_SETTING S1 WHERE S1.STD_AMT <= (SUM(S.AMT) - IFNULL(SS.EVENT_FRST_CASH + ROUND(SS.EVENT_FRST_CASH / 10), 0)) |
|
| 167 | 340 |
) GRD_SET_NO |
| 168 | 341 |
FROM MJ_PG S |
| 169 | 342 |
LEFT OUTER JOIN MJ_EVENT_MBER_INFO SS |
| 170 | 343 |
ON S.USER_ID = SS.MBER_ID |
| 171 |
- AND SS.EVENT_START_DATE >= CONCAT(DATE_FORMAT(#grdDate#, '%Y-%m-%d'), ' ', '00:00:00') |
|
| 172 | 344 |
WHERE S.PG_STATUS = '1' |
| 173 | 345 |
AND S.REG_DATE >= CONCAT(DATE_FORMAT(#grdDate#, '%Y-%m-%d'), ' ', '00:00:00') |
| 174 | 346 |
GROUP BY S.USER_ID |
| 175 | 347 |
) M |
| 176 | 348 |
WHERE M.GRD_SET_NO IS NOT NULL |
| 349 |
+ AND M.AMT_SUM > 0 |
|
| 177 | 350 |
) B |
| 178 | 351 |
ON A.MBER_ID = B.USER_ID |
| 179 | 352 |
INNER JOIN MJ_MBER_GRD_SETTING C |
... | ... | @@ -186,18 +359,57 @@ |
| 186 | 359 |
, A.PICTURE2_PRICE = C.PICTURE2_PRICE |
| 187 | 360 |
, A.PICTURE3_PRICE = C.PICTURE3_PRICE |
| 188 | 361 |
, A.TOT_AMT = B.AMT_SUM |
| 189 |
- , A.GRD_START_DATE = CONCAT(DATE_FORMAT(#grdDate#, '%Y-%m-%d'), ' ', '00:00:00') |
|
| 362 |
+ , A.GRD_DATE = CONCAT(DATE_FORMAT(#grdDate#, '%Y-%m-%d'), ' ', '00:00:00') |
|
| 190 | 363 |
, A.EDIT_DATE = NOW() |
| 191 | 364 |
WHERE B.GRD_SET_NO IS NOT NULL |
| 192 |
- AND A.GRD_SET_NO >= B.GRD_SET_NO |
|
| 193 |
- AND GRD_STATUS NOT IN ('N', 'E')
|
|
| 194 |
- AND NOW() BETWEEN GRD_START_DATE AND GRD_END_DATE |
|
| 365 |
+ AND A.GRD_SET_NO > B.GRD_SET_NO |
|
| 366 |
+ AND A.GRD_STATUS = 'Y' |
|
| 367 |
+ AND NOW() BETWEEN A.GRD_START_DATE AND A.GRD_END_DATE |
|
| 195 | 368 |
]]> |
| 196 | 369 |
</update> |
| 197 | 370 |
|
| 371 |
+ <!-- 문자할인, B선라인 대상자 초기화 --> |
|
| 372 |
+ <update id="mberGrdDAO.updateMberGrdEndBySale" parameterClass="mberGrdVO"> |
|
| 373 |
+ <![CDATA[ |
|
| 374 |
+ UPDATE MJ_MBER_GRD_INFO SET |
|
| 375 |
+ GRD_END_DATE = NOW() |
|
| 376 |
+ , GRD_STATUS = 'E' |
|
| 377 |
+ , EDIT_DATE = NOW() |
|
| 378 |
+ WHERE MBER_ID IN ( |
|
| 379 |
+ SELECT |
|
| 380 |
+ M.MBER_ID |
|
| 381 |
+ FROM ( |
|
| 382 |
+ SELECT |
|
| 383 |
+ A.MBER_ID |
|
| 384 |
+ , IFNULL(A.BLINE_CODE, 'N') AS BLINE_CODE |
|
| 385 |
+ , CASE |
|
| 386 |
+ WHEN |
|
| 387 |
+ (A.SHORT_PRICE > 0 |
|
| 388 |
+ AND (B.SHORT_PRICE > A.SHORT_PRICE |
|
| 389 |
+ OR B.LONG_PRICE > A.LONG_PRICE |
|
| 390 |
+ OR B.PICTURE_PRICE > A.PICTURE_PRICE |
|
| 391 |
+ OR B.PICTURE2_PRICE > A.PICTURE2_PRICE |
|
| 392 |
+ OR B.PICTURE3_PRICE > A.PICTURE3_PRICE) |
|
| 393 |
+ ) |
|
| 394 |
+ THEN 'Y' |
|
| 395 |
+ ELSE 'N' |
|
| 396 |
+ END isSalePrice |
|
| 397 |
+ FROM LETTNGNRLMBER A |
|
| 398 |
+ INNER JOIN MJ_MBER_GRD_INFO G |
|
| 399 |
+ ON A.MBER_ID = G.MBER_ID |
|
| 400 |
+ JOIN MJ_MBER_SETTING B |
|
| 401 |
+ WHERE 1=1 |
|
| 402 |
+ AND G.GRD_STATUS != 'E' |
|
| 403 |
+ ) M |
|
| 404 |
+ WHERE M.isSalePrice = 'Y' |
|
| 405 |
+ OR M.BLINE_CODE != 'N' |
|
| 406 |
+ ) |
|
| 407 |
+ ]]> |
|
| 408 |
+ </update> |
|
| 409 |
+ |
|
| 198 | 410 |
<!-- 회원별 등급 초기화 --> |
| 199 | 411 |
<update id="mberGrdDAO.updateMberGrdEndAll" parameterClass="mberGrdVO"> |
| 200 |
- UPDATE mj_mber_grd_info SET |
|
| 412 |
+ UPDATE MJ_MBER_GRD_INFO SET |
|
| 201 | 413 |
GRD_END_DATE = NOW() |
| 202 | 414 |
, GRD_STATUS = 'E' |
| 203 | 415 |
, EDIT_ID = #editId# |
... | ... | @@ -212,15 +424,35 @@ |
| 212 | 424 |
COUNT(0) |
| 213 | 425 |
FROM MJ_MBER_GRD_INFO A |
| 214 | 426 |
WHERE A.MBER_ID = #mberId# |
| 215 |
- AND GRD_STATUS NOT IN ('N', 'E')
|
|
| 216 |
- AND NOW() BETWEEN GRD_START_DATE AND GRD_END_DATE |
|
| 427 |
+ AND A.GRD_STATUS = 'Y' |
|
| 428 |
+ AND NOW() BETWEEN A.GRD_START_DATE AND A.GRD_END_DATE |
|
| 429 |
+ LIMIT 1 |
|
| 430 |
+ </select> |
|
| 431 |
+ |
|
| 432 |
+ <!-- 회원별 이벤트 진행여부 --> |
|
| 433 |
+ <select id="mberGrdDAO.selectMberEventPrgCnt" parameterClass="String" resultClass="Integer"> |
|
| 434 |
+ SELECT |
|
| 435 |
+ COUNT(0) |
|
| 436 |
+ FROM MJ_EVENT_MBER_INFO A |
|
| 437 |
+ WHERE A.MBER_ID = #mberId# |
|
| 438 |
+ AND A.EVENT_STATUS = 'Y' |
|
| 439 |
+ AND DATE_FORMAT(NOW(), '%Y-%m-%d') BETWEEN DATE_FORMAT(A.EVENT_START_DATE, '%Y-%m-%d') AND DATE_FORMAT(A.EVENT_END_DATE, '%Y-%m-%d') |
|
| 217 | 440 |
LIMIT 1 |
| 218 | 441 |
</select> |
| 219 | 442 |
|
| 443 |
+ <!-- 회원별 등급 저장여부 --> |
|
| 444 |
+ <select id="mberGrdDAO.selectMberGrdSaveCnt" parameterClass="String" resultClass="Integer"> |
|
| 445 |
+ SELECT |
|
| 446 |
+ COUNT(0) |
|
| 447 |
+ FROM MJ_MBER_GRD_INFO A |
|
| 448 |
+ WHERE A.MBER_ID = #mberId# |
|
| 449 |
+ LIMIT 1 |
|
| 450 |
+ </select> |
|
| 451 |
+ |
|
| 220 | 452 |
|
| 221 | 453 |
<!-- 회원별 등급 히스토리 등록 --> |
| 222 | 454 |
<insert id="mberGrdDAO.insertMberGrdHist" parameterClass="mberGrdVO"> |
| 223 |
- INSERT INTO mj_mber_grd_hist |
|
| 455 |
+ INSERT INTO MJ_MBER_GRD_HIST |
|
| 224 | 456 |
( |
| 225 | 457 |
MBER_ID |
| 226 | 458 |
, GRD_SET_NO |
... | ... | @@ -231,6 +463,7 @@ |
| 231 | 463 |
, PICTURE3_PRICE |
| 232 | 464 |
, AMT |
| 233 | 465 |
, TOT_AMT |
| 466 |
+ , GRD_DATE |
|
| 234 | 467 |
, REG_ID |
| 235 | 468 |
, REG_DATE |
| 236 | 469 |
, EDIT_ID |
... | ... | @@ -247,6 +480,7 @@ |
| 247 | 480 |
, #picture3Price# |
| 248 | 481 |
, #amt# |
| 249 | 482 |
, #totAmt# |
| 483 |
+ , #grdDate# |
|
| 250 | 484 |
, #regId# |
| 251 | 485 |
, NOW() |
| 252 | 486 |
, #editId# |
... | ... | @@ -254,4 +488,64 @@ |
| 254 | 488 |
) |
| 255 | 489 |
</insert> |
| 256 | 490 |
|
| 491 |
+ <!-- 회원별 등급 히스토리 목록 => 등급제 시행일이후 목록(사용자화면용) --> |
|
| 492 |
+ <select id="mberGrdDAO.selectMberGrdHistByGrdDateList" parameterClass="mberGrdVO" resultClass="mberGrdVO"> |
|
| 493 |
+ SELECT |
|
| 494 |
+ COUNT(MBER_ID) OVER() AS totCnt |
|
| 495 |
+ , A.MBER_ID AS mberId |
|
| 496 |
+ , A.GRD_SET_NO AS grdSetNo |
|
| 497 |
+ , A.SHORT_PRICE AS shortPrice |
|
| 498 |
+ , A.LONG_PRICE AS longPrice |
|
| 499 |
+ , A.PICTURE_PRICE AS picturePrice |
|
| 500 |
+ , A.PICTURE2_PRICE AS picture2Price |
|
| 501 |
+ , A.PICTURE3_PRICE AS picture3Price |
|
| 502 |
+ , A.AMT AS amt |
|
| 503 |
+ , A.TOT_AMT AS totAmt |
|
| 504 |
+ , A.GRD_DATE AS grdDate |
|
| 505 |
+ , A.REG_ID AS regId |
|
| 506 |
+ , A.REG_DATE AS regDate |
|
| 507 |
+ , A.EDIT_ID AS editId |
|
| 508 |
+ , A.EDIT_DATE AS editDate |
|
| 509 |
+ FROM MJ_MBER_GRD_HIST A |
|
| 510 |
+ WHERE 1=1 |
|
| 511 |
+ AND A.MBER_ID = #mberId# |
|
| 512 |
+ AND A.GRD_DATE >= (SELECT S.GRD_DATE FROM MJ_MBER_GRD_INFO S WHERE S.MBER_ID = #mberId#) |
|
| 513 |
+ <isNotEmpty property="searchSortCnd"> |
|
| 514 |
+ ,$searchSortCnd$ |
|
| 515 |
+ </isNotEmpty> |
|
| 516 |
+ <isNotEmpty property="searchSortOrd"> |
|
| 517 |
+ $searchSortOrd$ |
|
| 518 |
+ </isNotEmpty> |
|
| 519 |
+ LIMIT #recordCountPerPage# OFFSET #firstIndex# |
|
| 520 |
+ </select> |
|
| 521 |
+ |
|
| 522 |
+ <!-- 회원별 등급 히스토리 목록 --> |
|
| 523 |
+ <select id="mberGrdDAO.selectMberGrdHistList" parameterClass="mberGrdVO" resultClass="mberGrdVO"> |
|
| 524 |
+ SELECT |
|
| 525 |
+ COUNT(MBER_ID) OVER() AS totCnt |
|
| 526 |
+ , A.MBER_ID AS mberId |
|
| 527 |
+ , A.GRD_SET_NO AS grdSetNo |
|
| 528 |
+ , A.SHORT_PRICE AS shortPrice |
|
| 529 |
+ , A.LONG_PRICE AS longPrice |
|
| 530 |
+ , A.PICTURE_PRICE AS picturePrice |
|
| 531 |
+ , A.PICTURE2_PRICE AS picture2Price |
|
| 532 |
+ , A.PICTURE3_PRICE AS picture3Price |
|
| 533 |
+ , A.AMT AS amt |
|
| 534 |
+ , A.TOT_AMT AS totAmt |
|
| 535 |
+ , A.GRD_DATE AS grdDate |
|
| 536 |
+ , A.REG_ID AS regId |
|
| 537 |
+ , A.REG_DATE AS regDate |
|
| 538 |
+ , A.EDIT_ID AS editId |
|
| 539 |
+ , A.EDIT_DATE AS editDate |
|
| 540 |
+ FROM MJ_MBER_GRD_HIST A |
|
| 541 |
+ WHERE 1=1 |
|
| 542 |
+ AND A.MBER_ID = #mberId# |
|
| 543 |
+ <isNotEmpty property="searchSortCnd"> |
|
| 544 |
+ ,$searchSortCnd$ |
|
| 545 |
+ </isNotEmpty> |
|
| 546 |
+ <isNotEmpty property="searchSortOrd"> |
|
| 547 |
+ $searchSortOrd$ |
|
| 548 |
+ </isNotEmpty> |
|
| 549 |
+ LIMIT #recordCountPerPage# OFFSET #firstIndex# |
|
| 550 |
+ </select> |
|
| 257 | 551 |
</sqlMap> |
--- src/main/resources/egovframework/sqlmap/let/uss/umt/EgovMberManage_SQL_Mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/uss/umt/EgovMberManage_SQL_Mysql.xml
... | ... | @@ -1668,7 +1668,7 @@ |
| 1668 | 1668 |
LEFT JOIN MJ_MSG_GROUP_DATA MGD |
| 1669 | 1669 |
ON A.msgGroupId = MGD.MSG_GROUP_ID |
| 1670 | 1670 |
WHERE MGD.USER_ID = #mberId# |
| 1671 |
- AND MGD.RESERVE_YN = 'N' |
|
| 1671 |
+ <!-- AND MGD.RESERVE_YN = 'N' --> |
|
| 1672 | 1672 |
AND MGD.RESERVE_C_YN = 'N' |
| 1673 | 1673 |
AND MGD.DELAY_YN = 'Y' |
| 1674 | 1674 |
AND MGD.DELAY_COMPLETE_YN = 'N' |
--- src/main/resources/egovframework/sqlmap/let/uss/umt/EgovUserManage_SQL_Mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/uss/umt/EgovUserManage_SQL_Mysql.xml
... | ... | @@ -1290,15 +1290,17 @@ |
| 1290 | 1290 |
</select> |
| 1291 | 1291 |
|
| 1292 | 1292 |
<select id="userManageDAO.selectAdminSmsNoticeYn" parameterClass="userVO" resultClass="userVO"> |
| 1293 |
- SELECT |
|
| 1294 |
- ADMIN_SMS_NOTICE_YN AS adminSmsNoticeYn, |
|
| 1295 |
- PRE_PAYMENT_YN AS prePaymentYn, |
|
| 1296 |
- SMISHING_YN AS smishingYn, |
|
| 1297 |
- AUTO_CASH AS autoCash, |
|
| 1298 |
- IFNULL(BLINE_CODE, 'N') AS blineCode, |
|
| 1299 |
- IFNULL(RECOMMEND_ID, '') AS recommendId |
|
| 1300 |
- FROM LETTNGNRLMBER |
|
| 1301 |
- WHERE MBER_ID = #mberId# |
|
| 1293 |
+ SELECT |
|
| 1294 |
+ ADMIN_SMS_NOTICE_YN AS adminSmsNoticeYn |
|
| 1295 |
+ ,PRE_PAYMENT_YN AS prePaymentYn |
|
| 1296 |
+ ,SMISHING_YN AS smishingYn |
|
| 1297 |
+ ,AUTO_CASH AS autoCash |
|
| 1298 |
+ ,IFNULL(BLINE_CODE, 'N') AS blineCode |
|
| 1299 |
+ ,IFNULL(RECOMMEND_ID, '') AS recommendId |
|
| 1300 |
+ FROM |
|
| 1301 |
+ LETTNGNRLMBER |
|
| 1302 |
+ WHERE |
|
| 1303 |
+ MBER_ID = #mberId# |
|
| 1302 | 1304 |
</select> |
| 1303 | 1305 |
|
| 1304 | 1306 |
<update id="userManageDAO.updateUserAdminSmsNoticeYn" parameterClass="userVO"> |
--- src/main/webapp/WEB-INF/jsp/agent/MjonMsgAgentStsMultiUpdate.jsp
+++ src/main/webapp/WEB-INF/jsp/agent/MjonMsgAgentStsMultiUpdate.jsp
... | ... | @@ -275,7 +275,7 @@ |
| 275 | 275 |
var confCode = $("#confCode").val();
|
| 276 | 276 |
|
| 277 | 277 |
|
| 278 |
- if (!confirm('문자발송 사용여부는 전송사 비율과 상관없이\n사용자 문자 발송 사용여부가 일괄 적용됩니다.(주의)\n\n수정 하시겠습니까?')){
|
|
| 278 |
+ if (!confirm('문자, 알림톡 사용자화면 발송 사용여부가 변경됩니다.\n긴급 시스템작업시에만 사용해주세요.\n수정 하시겠습니까?')){
|
|
| 279 | 279 |
return false; |
| 280 | 280 |
} |
| 281 | 281 |
|
... | ... | @@ -374,7 +374,7 @@ |
| 374 | 374 |
<br><br /> |
| 375 | 375 |
<div class="listTop maxWth"> |
| 376 | 376 |
<span class="tType4 c_e40000 fwBold"> |
| 377 |
- <p >문자발송 사용여부 - 전송사 비율과 상관없이, 사용자 문자 발송 사용여부 일괄 적용(주의)</p> |
|
| 377 |
+ <p>문자, 알림톡 발송 사용여부 - 문자, 알림톡 사용자화면 발송 사용여부(주의)</p> |
|
| 378 | 378 |
</span> |
| 379 | 379 |
</div> |
| 380 | 380 |
<div class="tableWrap maxWth"> |
... | ... | @@ -386,7 +386,7 @@ |
| 386 | 386 |
<tbody> |
| 387 | 387 |
<tr> |
| 388 | 388 |
<th> |
| 389 |
- 문자발송 사용여부 |
|
| 389 |
+ 문자, 알림톡 발송 사용여부 |
|
| 390 | 390 |
</th> |
| 391 | 391 |
<td> |
| 392 | 392 |
<ec:select codeId="CONF01" name="confCode" id="confCode" css="class='select'" selectedValue="${confVO.confCode}" />
|
--- src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectMsgDataListPop.jsp
+++ src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectMsgDataListPop.jsp
... | ... | @@ -571,7 +571,14 @@ |
| 571 | 571 |
<td class="sms_detail left"> |
| 572 | 572 |
<c:choose> |
| 573 | 573 |
<c:when test="${empty result.smsTxt}">
|
| 574 |
- 그림문자 |
|
| 574 |
+ <c:choose> |
|
| 575 |
+ <c:when test="${result.msgType eq '4'}">
|
|
| 576 |
+ 내용없음 |
|
| 577 |
+ </c:when> |
|
| 578 |
+ <c:otherwise> |
|
| 579 |
+ 그림문자 |
|
| 580 |
+ </c:otherwise> |
|
| 581 |
+ </c:choose> |
|
| 575 | 582 |
<div class="sms_detail_hover"> |
| 576 | 583 |
<c:if test="${not empty fn:split(result.atchFiles, '^')[0]}">
|
| 577 | 584 |
<img class="MyMsgImg1" src="/cmm/fms/getImage2.do?atchFileId=${fn:split(result.atchFiles, '^')[0]}&fileSn=0" style="width: 100px;">
|
--- 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> |
... | ... | @@ -3399,7 +3682,14 @@ |
| 3399 | 3682 |
<td class="sms_detail" style="text-align: left;"> |
| 3400 | 3683 |
<c:choose> |
| 3401 | 3684 |
<c:when test="${empty mjonMsgSentList.smsTxt}">
|
| 3402 |
- 그림문자 |
|
| 3685 |
+ <c:choose> |
|
| 3686 |
+ <c:when test="${mjonMsgSentList.msgType eq '4'}">
|
|
| 3687 |
+ 내용없음 |
|
| 3688 |
+ </c:when> |
|
| 3689 |
+ <c:otherwise> |
|
| 3690 |
+ 그림문자 |
|
| 3691 |
+ </c:otherwise> |
|
| 3692 |
+ </c:choose> |
|
| 3403 | 3693 |
<div class="sms_detail_hover"> |
| 3404 | 3694 |
<c:if test="${not empty fn:split(mjonMsgSentList.atchFiles, '^')[0]}">
|
| 3405 | 3695 |
<img class="MyMsgImg1" src="/cmm/fms/getImage2.do?atchFileId=${fn:split(mjonMsgSentList.atchFiles, '^')[0]}&fileSn=0" style="width: 110px;">
|
... | ... | @@ -3580,15 +3870,22 @@ |
| 3580 | 3870 |
<c:otherwise> |
| 3581 | 3871 |
- |
| 3582 | 3872 |
</c:otherwise> |
| 3583 |
- </c:choose> |
|
| 3873 |
+ </c:choose> |
|
| 3584 | 3874 |
</c:otherwise> |
| 3585 |
- </c:choose> </td> |
|
| 3875 |
+ </c:choose> |
|
| 3586 | 3876 |
</td> |
| 3587 | 3877 |
<td><c:out value="${mjonMsgSentList.callFrom}"/></td>
|
| 3588 | 3878 |
<td class="sms_detail" style="text-align: left;"> |
| 3589 | 3879 |
<c:choose> |
| 3590 | 3880 |
<c:when test="${empty mjonMsgSentList.smsTxt}">
|
| 3591 |
- 그림문자 |
|
| 3881 |
+ <c:choose> |
|
| 3882 |
+ <c:when test="${mjonMsgSentList.msgType eq '4'}">
|
|
| 3883 |
+ 내용없음 |
|
| 3884 |
+ </c:when> |
|
| 3885 |
+ <c:otherwise> |
|
| 3886 |
+ 그림문자 |
|
| 3887 |
+ </c:otherwise> |
|
| 3888 |
+ </c:choose> |
|
| 3592 | 3889 |
<div class="sms_detail_hover"> |
| 3593 | 3890 |
<c:if test="${not empty fn:split(mjonMsgSentList.atchFiles, '^')[0]}">
|
| 3594 | 3891 |
<img class="MyMsgImg1" src="/cmm/fms/getImage2.do?atchFileId=${fn:split(mjonMsgSentList.atchFiles, '^')[0]}&fileSn=0" style="width: 110px;">
|
... | ... | @@ -3751,6 +4048,9 @@ |
| 3751 | 4048 |
</c:choose> |
| 3752 | 4049 |
</td> |
| 3753 | 4050 |
<td> |
| 4051 |
+ <c:if test="${mjonMsgDelaySentList.reserveYn eq 'Y'}">
|
|
| 4052 |
+ [예약] |
|
| 4053 |
+ </c:if> |
|
| 3754 | 4054 |
<c:choose> |
| 3755 | 4055 |
<c:when test="${not empty mjonMsgDelaySentList.sentDate}">
|
| 3756 | 4056 |
<fmt:formatDate value="${mjonMsgDelaySentList.sentDate}" pattern="yyyy-MM-dd HH:mm"/>
|
... | ... | @@ -3769,24 +4069,16 @@ |
| 3769 | 4069 |
</td> |
| 3770 | 4070 |
<td><c:out value="${mjonMsgDelaySentList.callFrom}"/></td>
|
| 3771 | 4071 |
<td class="sms_detail" style="text-align: left;"> |
| 3772 |
- <%-- |
|
| 3773 |
- <div class="ellipsis_line"> |
|
| 3774 |
- <!-- 그림문자 중 텍스트 내용은 없고 그림 이미지만 있는경우 처리 --> |
|
| 3775 |
- <c:choose> |
|
| 3776 |
- <c:when test="${empty mjonMsgDelaySentList.smsTxt && not empty mjonMsgDelaySentList.filePath1}">
|
|
| 3777 |
- 그림이미지 |
|
| 3778 |
- </c:when> |
|
| 3779 |
- <c:otherwise> |
|
| 3780 |
- <c:out value="${mjonMsgDelaySentList.smsTxt}"/>
|
|
| 3781 |
- </c:otherwise> |
|
| 3782 |
- </c:choose> |
|
| 3783 |
- |
|
| 3784 |
- </div> |
|
| 3785 |
- --%> |
|
| 3786 |
- |
|
| 3787 | 4072 |
<c:choose> |
| 3788 | 4073 |
<c:when test="${empty mjonMsgDelaySentList.smsTxt}">
|
| 3789 |
- 그림문자 |
|
| 4074 |
+ <c:choose> |
|
| 4075 |
+ <c:when test="${mjonMsgDelaySentList.msgType eq '4'}">
|
|
| 4076 |
+ 내용없음 |
|
| 4077 |
+ </c:when> |
|
| 4078 |
+ <c:otherwise> |
|
| 4079 |
+ 그림문자 |
|
| 4080 |
+ </c:otherwise> |
|
| 4081 |
+ </c:choose> |
|
| 3790 | 4082 |
<div class="sms_detail_hover"> |
| 3791 | 4083 |
<c:if test="${not empty fn:split(mjonMsgDelaySentList.atchFiles, '^')[0]}">
|
| 3792 | 4084 |
<img class="MyMsgImg1" src="/cmm/fms/getImage2.do?atchFileId=${fn:split(mjonMsgDelaySentList.atchFiles, '^')[0]}&fileSn=0" style="width: 120px;">
|
... | ... | @@ -4105,23 +4397,23 @@ |
| 4105 | 4397 |
<c:otherwise> |
| 4106 | 4398 |
- |
| 4107 | 4399 |
</c:otherwise> |
| 4108 |
- </c:choose> |
|
| 4400 |
+ </c:choose> |
|
| 4109 | 4401 |
</c:otherwise> |
| 4110 |
- </c:choose> |
|
| 4402 |
+ </c:choose> |
|
| 4111 | 4403 |
</td> |
| 4112 | 4404 |
</td> |
| 4113 | 4405 |
<td><c:out value="${kakaoReserveList.yellowId}"/></td>
|
| 4114 | 4406 |
<td class="sms_detail" style="text-align: left;"> |
| 4115 | 4407 |
<c:choose> |
| 4116 | 4408 |
<c:when test="${empty kakaoReserveList.smsTxt}">
|
| 4117 |
- - |
|
| 4409 |
+ - |
|
| 4118 | 4410 |
</c:when> |
| 4119 | 4411 |
<c:otherwise> |
| 4120 | 4412 |
<div class="ellipsis_line"> |
| 4121 | 4413 |
<c:out value="${kakaoReserveList.smsTxt}"/>
|
| 4122 | 4414 |
</div> |
| 4123 | 4415 |
</c:otherwise> |
| 4124 |
- </c:choose> |
|
| 4416 |
+ </c:choose> |
|
| 4125 | 4417 |
</td> |
| 4126 | 4418 |
<td><fmt:formatNumber value="${kakaoReserveList.msgGroupCnt}" type="number" /></td>
|
| 4127 | 4419 |
<td><fmt:formatNumber value="${kakaoReserveList.successCount}" type="number" /></td>
|
... | ... | @@ -4143,7 +4435,141 @@ |
| 4143 | 4435 |
</div> |
| 4144 | 4436 |
</div> |
| 4145 | 4437 |
|
| 4146 |
- <!-- 최근 카카오톡 전송 내역 --> |
|
| 4438 |
+ <!-- 최근 알림톡 지연 내역 --> |
|
| 4439 |
+ <form id="kakaoATDelayForm" name="kakaoATDelayForm" mehoth="post"> |
|
| 4440 |
+ <div class="title_box"> |
|
| 4441 |
+ <p>최근 알림톡 지연 내역</p> |
|
| 4442 |
+ <div class="button_box"> |
|
| 4443 |
+ <button type="button" onclick="kakaoATDelaySendArray(); return false;" class="fillBlue">발송승인</button> |
|
| 4444 |
+ <button type="button" onclick="kakaoATDelayCancelArray(); return false;" class="fillRed">발송취소</button> |
|
| 4445 |
+ </div> |
|
| 4446 |
+ </div> |
|
| 4447 |
+ <table class="user_table_col"> |
|
| 4448 |
+ <colgroup> |
|
| 4449 |
+ <col style="width:5%;"> |
|
| 4450 |
+ <col style="width:9%;"> |
|
| 4451 |
+ <col style="width:13%;"> |
|
| 4452 |
+ <col style="width:15%;"> |
|
| 4453 |
+ <col style="width:auto;"> |
|
| 4454 |
+ <col style="width:8%;"> |
|
| 4455 |
+ <col style="width:8%;"> |
|
| 4456 |
+ <col style="width:8%;"> |
|
| 4457 |
+ <col style="width:8%;"> |
|
| 4458 |
+ </colgroup> |
|
| 4459 |
+ <thead> |
|
| 4460 |
+ <tr> |
|
| 4461 |
+ <th> |
|
| 4462 |
+ <input type="checkbox" name="kakaoATCheckAll" id="kakaoATCheckAll" onclick="kakaoATDelayCheckAll();" /> |
|
| 4463 |
+ <label for="kakaoATCheckAll"></label> |
|
| 4464 |
+ </th> |
|
| 4465 |
+ <th>종류</th> |
|
| 4466 |
+ <th>등록일시</th> |
|
| 4467 |
+ <th>전송일시</th> |
|
| 4468 |
+ <th>채널ID</th> |
|
| 4469 |
+ <th>내용</th> |
|
| 4470 |
+ <th>건수</th> |
|
| 4471 |
+ <th>발송</th> |
|
| 4472 |
+ <th>취소</th> |
|
| 4473 |
+ </tr> |
|
| 4474 |
+ </thead> |
|
| 4475 |
+ <tbody> |
|
| 4476 |
+ <c:choose> |
|
| 4477 |
+ <c:when test="${not empty kakaoATDelaySentList}">
|
|
| 4478 |
+ <c:forEach var="kakaoDelayInfo" items="${kakaoATDelaySentList}" varStatus="status">
|
|
| 4479 |
+ <c:if test="${status.count < 4}">
|
|
| 4480 |
+ <tr> |
|
| 4481 |
+ <td> |
|
| 4482 |
+ <input name="kakaoATCheckDelayField" id="<c:out value='${kakaoDelayInfo.msgGroupId}'/>" title="Check <c:out value="${status.count}"/>" type="checkbox"/>
|
|
| 4483 |
+ <label for="<c:out value="${result.uniqId}"/>"></label>
|
|
| 4484 |
+ <input name="kakaoATCheckDelayId" type="hidden" class="${result.userId}" value="<c:out value='${kakaoDelayInfo.msgGroupId}'/>"/>
|
|
| 4485 |
+ </td> |
|
| 4486 |
+ <td> |
|
| 4487 |
+ <c:choose> |
|
| 4488 |
+ <c:when test="${kakaoDelayInfo.msgType == '8'}">
|
|
| 4489 |
+ 알림톡 |
|
| 4490 |
+ </c:when> |
|
| 4491 |
+ <c:when test="${kakaoDelayInfo.msgType == '9'}">
|
|
| 4492 |
+ 친구톡 |
|
| 4493 |
+ </c:when> |
|
| 4494 |
+ <c:otherwise> |
|
| 4495 |
+ - |
|
| 4496 |
+ </c:otherwise> |
|
| 4497 |
+ </c:choose> |
|
| 4498 |
+ </td> |
|
| 4499 |
+ <td> |
|
| 4500 |
+ <c:choose> |
|
| 4501 |
+ <c:when test="${not empty kakaoDelayInfo.regDate}">
|
|
| 4502 |
+ <fmt:parseDate value="${kakaoDelayInfo.regDate}" var="kakaoDelayRegdate" pattern="yyyy-MM-dd HH:mm:ss"/>
|
|
| 4503 |
+ <fmt:formatDate value="${kakaoDelayRegdate}" pattern="MM-dd HH:mm"/>
|
|
| 4504 |
+ </c:when> |
|
| 4505 |
+ <c:otherwise> |
|
| 4506 |
+ - |
|
| 4507 |
+ </c:otherwise> |
|
| 4508 |
+ </c:choose> |
|
| 4509 |
+ </td> |
|
| 4510 |
+ <td> |
|
| 4511 |
+ <c:if test="${kakaoDelayInfo.reserveYn eq 'Y'}">
|
|
| 4512 |
+ [예약] |
|
| 4513 |
+ </c:if> |
|
| 4514 |
+ <c:choose> |
|
| 4515 |
+ <c:when test="${not empty kakaoDelayInfo.sentDate}">
|
|
| 4516 |
+ <fmt:formatDate value="${kakaoDelayInfo.sentDate}" pattern="yyyy-MM-dd HH:mm"/>
|
|
| 4517 |
+ </c:when> |
|
| 4518 |
+ <c:otherwise> |
|
| 4519 |
+ <c:choose> |
|
| 4520 |
+ <c:when test="${kakaoDelayInfo.atDelayYn eq 'Y'}">
|
|
| 4521 |
+ [스미싱의심] |
|
| 4522 |
+ <fmt:parseDate value="${kakaoDelayInfo.reqDate}" var="kakaoDelayReqDate" pattern="yyyy-MM-dd HH:mm:ss"/>
|
|
| 4523 |
+ <fmt:formatDate value="${kakaoDelayReqDate}" pattern="MM-dd HH:mm"/>
|
|
| 4524 |
+ </c:when> |
|
| 4525 |
+ <c:otherwise> |
|
| 4526 |
+ - |
|
| 4527 |
+ </c:otherwise> |
|
| 4528 |
+ </c:choose> |
|
| 4529 |
+ </c:otherwise> |
|
| 4530 |
+ </c:choose> |
|
| 4531 |
+ </td> |
|
| 4532 |
+ <td> |
|
| 4533 |
+ <c:out value="${kakaoDelayInfo.yellowId}"/>
|
|
| 4534 |
+ </td> |
|
| 4535 |
+ <td class="sms_detail" style="text-align: left;"> |
|
| 4536 |
+ <c:choose> |
|
| 4537 |
+ <c:when test="${empty kakaoDelayInfo.smsTxt}">
|
|
| 4538 |
+ - |
|
| 4539 |
+ </c:when> |
|
| 4540 |
+ <c:otherwise> |
|
| 4541 |
+ <div class="ellipsis_line"> |
|
| 4542 |
+ <c:out value="${kakaoDelayInfo.smsTxt}"/>
|
|
| 4543 |
+ </div> |
|
| 4544 |
+ </c:otherwise> |
|
| 4545 |
+ </c:choose> |
|
| 4546 |
+ </td> |
|
| 4547 |
+ <td> |
|
| 4548 |
+ <fmt:formatNumber value="${kakaoDelayInfo.msgGroupCnt}" type="number" />
|
|
| 4549 |
+ </td> |
|
| 4550 |
+ <td> |
|
| 4551 |
+ <button type="button" class="thinfill" id="kakaoATDelaySend${status.count}" name="msgDelaySend"
|
|
| 4552 |
+ onclick="kakaoATDelaySend('<c:out value="${kakaoDelayInfo.msgGroupId}"/>'); return false;">승인</button>
|
|
| 4553 |
+ </td> |
|
| 4554 |
+ <td> |
|
| 4555 |
+ <button type="button" class="thinfill" id="kakaoATDelayCancel${status.count}" name="msgDelayCancel"
|
|
| 4556 |
+ onclick="kakaoATDelayCancel('<c:out value="${kakaoDelayInfo.msgGroupId}"/>'); return false;">취소</button>
|
|
| 4557 |
+ </td> |
|
| 4558 |
+ </tr> |
|
| 4559 |
+ </c:if> |
|
| 4560 |
+ </c:forEach> |
|
| 4561 |
+ </c:when> |
|
| 4562 |
+ <c:otherwise> |
|
| 4563 |
+ <tr> |
|
| 4564 |
+ <td colspan="9">카카오톡 발송 내역이 없습니다.</td> |
|
| 4565 |
+ </tr> |
|
| 4566 |
+ </c:otherwise> |
|
| 4567 |
+ </c:choose> |
|
| 4568 |
+ </tbody> |
|
| 4569 |
+ </table> |
|
| 4570 |
+ </form> |
|
| 4571 |
+ |
|
| 4572 |
+ <!-- 최근 팩스 전송 내역 --> |
|
| 4147 | 4573 |
<div class="title_box"> |
| 4148 | 4574 |
<p>최근 팩스 전송 내역</p> |
| 4149 | 4575 |
<div class="button_box"> |
... | ... | @@ -4204,8 +4630,8 @@ |
| 4204 | 4630 |
<col style="width:calc(100%/2);"> |
| 4205 | 4631 |
<col style="width:calc(100%/2);"> |
| 4206 | 4632 |
<col style="width:calc(100%/2);"> |
| 4207 |
- <col style="width:calc(100%/2);"> |
|
| 4208 |
- <col style="width:calc(100%/2);"> |
|
| 4633 |
+ <col style="width:calc(100%/2);"> |
|
| 4634 |
+ <col style="width:calc(100%/2);"> |
|
| 4209 | 4635 |
</colgroup> |
| 4210 | 4636 |
<thead> |
| 4211 | 4637 |
<tr> |
... | ... | @@ -4252,7 +4678,7 @@ |
| 4252 | 4678 |
<span class="c_999999">발신번호 차단</span> |
| 4253 | 4679 |
</c:otherwise> |
| 4254 | 4680 |
</c:choose> |
| 4255 |
- </td> |
|
| 4681 |
+ </td> |
|
| 4256 | 4682 |
</tr> |
| 4257 | 4683 |
</c:forEach> |
| 4258 | 4684 |
</c:when> |
... | ... | @@ -4370,7 +4796,7 @@ |
| 4370 | 4796 |
<c:set var="userPriceL" value="${longPrice}"/>
|
| 4371 | 4797 |
<c:set var="userPriceP" value="${picturePrice}"/>
|
| 4372 | 4798 |
<c:set var="userPriceP2" value="${picture2Price}"/>
|
| 4373 |
- <c:set var="userPriceP3" value="${picture3Price}"/>
|
|
| 4799 |
+ <c:set var="userPriceP3" value="${picture3Price}"/>
|
|
| 4374 | 4800 |
<tr> |
| 4375 | 4801 |
<td>고객단가</td> |
| 4376 | 4802 |
<td> |
... | ... | @@ -4511,7 +4937,7 @@ |
| 4511 | 4937 |
</c:otherwise> |
| 4512 | 4938 |
</c:choose> |
| 4513 | 4939 |
</div> |
| 4514 |
- </td> |
|
| 4940 |
+ </td> |
|
| 4515 | 4941 |
<td> |
| 4516 | 4942 |
<c:choose> |
| 4517 | 4943 |
<c:when test="${userLogin.loginYn == 'Y'}">
|
... | ... | @@ -4824,7 +5250,7 @@ |
| 4824 | 5250 |
<br> |
| 4825 | 5251 |
작성 : <c:out value="${result.frstRegisterId}"/>(<c:out value="${result.mberNm}"/> <c:out value="${result.ofcpsNm}"/>)
|
| 4826 | 5252 |
<br> |
| 4827 |
- 일시 : <c:out value="${result.frstRegistPnttm}"/>
|
|
| 5253 |
+ 일시 : <c:out value="${result.frstRegistPnttm}"/>
|
|
| 4828 | 5254 |
</li> |
| 4829 | 5255 |
</c:forEach> |
| 4830 | 5256 |
</ul> |
+++ src/main/webapp/WEB-INF/jsp/sym/grd/mberGrdList.jsp
... | ... | @@ -0,0 +1,233 @@ |
| 1 | +<%-- | |
| 2 | + Class Name : webTitleList.jsp | |
| 3 | + Description : webTitleList 화면 | |
| 4 | + Modification Information | |
| 5 | + | |
| 6 | + 수정일 수정자 수정내용 | |
| 7 | + ------- -------- --------------------------- | |
| 8 | + 2009.02.01 lee.m.j 최초 생성 | |
| 9 | + 2011.08.31 JJY 경량환경 버전 생성 | |
| 10 | + | |
| 11 | + author : 공통서비스 개발팀 lee.m.j | |
| 12 | + since : 2009.02.01 | |
| 13 | +--%> | |
| 14 | +<%@ page contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> | |
| 15 | +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> | |
| 16 | +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> | |
| 17 | +<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> | |
| 18 | +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> | |
| 19 | +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> | |
| 20 | +<%@ page import="itn.com.cmm.LoginVO"%> | |
| 21 | +<!DOCTYPE html> | |
| 22 | +<html> | |
| 23 | +<head> | |
| 24 | +<meta http-equiv="Content-Language" content="ko"> | |
| 25 | +<title>등급제 내역</title> | |
| 26 | +<script type="text/javaScript" language="javascript" defer="defer"> | |
| 27 | +$( document ).ready(function(){ | |
| 28 | + // change 함수 | |
| 29 | + $("#searchGrdStatus").change(function(e){ | |
| 30 | + linkPage(1); | |
| 31 | + }); | |
| 32 | +}); | |
| 33 | + | |
| 34 | + | |
| 35 | +function fn_search(){ | |
| 36 | + linkPage(1); | |
| 37 | +} | |
| 38 | + | |
| 39 | +function linkPage(pageNo){ | |
| 40 | + var listForm = document.listForm ; | |
| 41 | + listForm.pageIndex.value = pageNo ; | |
| 42 | + listForm.action = "<c:url value='/sym/grd/selectMberGrdList.do'/>"; | |
| 43 | + listForm.submit(); | |
| 44 | +} | |
| 45 | + | |
| 46 | +function fnSelectMber(mberId) { | |
| 47 | + document.modiForm2.mberId.value = mberId; | |
| 48 | + window.open("about:blank", 'popupSelectMber', 'width=900, height=1800, top=100, left=100, fullscreen=no, menubar=no, status=no, toolbar=no, titlebar=yes, location=no, scrollbar=no'); | |
| 49 | + document.modiForm2.action = "<c:url value='/uss/umt/user/EgovGnrlselectedUserView.do'/>"; | |
| 50 | + document.modiForm2.target = "popupSelectMber"; | |
| 51 | + document.modiForm2.submit(); | |
| 52 | +} | |
| 53 | + | |
| 54 | +// 등급제 적용 테스트 | |
| 55 | +function setMberGrdChk(mberId) { | |
| 56 | + $.ajax({ | |
| 57 | + type: "POST", | |
| 58 | + url: "/sym/grd/mberGrdChkAjax.do", | |
| 59 | + data: {"mberId" : mberId}, | |
| 60 | + dataType:'json', | |
| 61 | + async: false, | |
| 62 | + success: function (data) { | |
| 63 | + if (data.isSuccess) { | |
| 64 | + var sHtml = ""; | |
| 65 | + sHtml += "단문 : " + data.rtnMberGrdVO.shortPrice; | |
| 66 | + sHtml += ", 장문 : " + data.rtnMberGrdVO.longPrice; | |
| 67 | + sHtml += ", 그림1 : " + data.rtnMberGrdVO.picturePrice; | |
| 68 | + sHtml += ", 그림2 : " + data.rtnMberGrdVO.picture2Price; | |
| 69 | + sHtml += ", 그림3 : " + data.rtnMberGrdVO.picture3Price; | |
| 70 | + | |
| 71 | + alert(sHtml); | |
| 72 | + //$("#tr_"+data.rtnMberGrdVO.mberId).attr("title", sHtml); | |
| 73 | + } | |
| 74 | + else { | |
| 75 | + alert("Msg : " + data.msg); | |
| 76 | + } | |
| 77 | + }, | |
| 78 | + error: function (e) { | |
| 79 | + alert("ERROR : " + JSON.stringify(e)); | |
| 80 | + } | |
| 81 | + }); | |
| 82 | +} | |
| 83 | +</script> | |
| 84 | +</head> | |
| 85 | +<body> | |
| 86 | +<noscript>자바스크립트를 지원하지 않는 브라우저에서는 일부 기능을 사용하실 수 없습니다.</noscript> | |
| 87 | +<form name="listForm" action="<c:url value='/sym/grd/selectMberGrdList.do'/>" method="post"> | |
| 88 | + <input type="hidden" name="pageIndex" value="<c:out value='${searchVO.pageIndex}' default='1' />"/> | |
| 89 | + <input type="hidden" name="metaTagNo" > | |
| 90 | + <input type="hidden" name="searchSortCnd" value="<c:out value="${searchVO.searchSortCnd}" />" /> | |
| 91 | + <input type="hidden" name="searchSortOrd" value="<c:out value="${searchVO.searchSortOrd}" />" /> | |
| 92 | + | |
| 93 | + <div class="contWrap"> | |
| 94 | + <div class="pageTitle"> | |
| 95 | + <div class="pageIcon"><img src="/pb/img/pageTitIcon4.png" alt=""></div> | |
| 96 | + <h2 class="titType1 c_222222 fwBold">등급제 내역</h2> | |
| 97 | + <p class="tType6 c_999999"></p> | |
| 98 | + </div> | |
| 99 | + <div class="pageCont"> | |
| 100 | + <div class="listSerch"> | |
| 101 | + | |
| 102 | + <select id="searchGrdStatus" name="searchGrdStatus" title="상태"> | |
| 103 | + <option value="" <c:if test="${empty searchVO.searchGrdStatus }">selected="selected"</c:if> >상태</option> | |
| 104 | + <option value="Y" <c:if test="${searchVO.searchGrdStatus == 'Y'}">selected="selected"</c:if> >진행중</option> | |
| 105 | + <option value="N" <c:if test="${searchVO.searchGrdStatus == 'N'}">selected="selected"</c:if> >미진행</option> | |
| 106 | + <option value="E" <c:if test="${searchVO.searchGrdStatus == 'E'}">selected="selected"</c:if> >종료</option> | |
| 107 | + </select> | |
| 108 | + | |
| 109 | + <select id="searchCondition" name="searchCondition"> | |
| 110 | + <option value="" <c:if test="${empty searchVO.searchCondition}">selected="selected"</c:if>>전체</option> | |
| 111 | + <option value="1" <c:if test="${searchVO.searchCondition == '1'}">selected="selected"</c:if>>아이디</option> | |
| 112 | + </select> | |
| 113 | + | |
| 114 | + <input id="searchKeyword" name="searchKeyword" class="recentSearch" type="text" value="<c:out value='${searchVO.searchKeyword}'/>" size="25" title="검색" maxlength="100" /> | |
| 115 | + <input type="button" class="btnType1" value="검색" onclick="fn_search(); return false;"> | |
| 116 | + </div> | |
| 117 | + <div class="listTop"> | |
| 118 | + <p class="tType5"> | |
| 119 | + 총 <span class="tType4 c_456ded fwBold"><fmt:formatNumber value="${paginationInfo.totalRecordCount}" pattern="#,###" /></span>건 | |
| 120 | + * 누적결제액은 문자할인이벤트 대상 결제금액을 제외한 합계금액입니다. | |
| 121 | + </p> | |
| 122 | + <div class="rightWrap"> | |
| 123 | + <!-- <input type="button" class="printBtn" > --> | |
| 124 | + <select name="pageUnit" id="pageUnit" class="select" title="검색조건선택" onchange="linkPage(1);"> | |
| 125 | + <option value='10' <c:if test="${searchVO.pageUnit == '10' or searchVO.pageUnit == ''}">selected</c:if>>10줄</option> | |
| 126 | + <option value='20' <c:if test="${searchVO.pageUnit == '20'}">selected</c:if>>20줄</option> | |
| 127 | + <option value='30' <c:if test="${searchVO.pageUnit == '30'}">selected</c:if>>30줄</option> | |
| 128 | + </select> | |
| 129 | + </div> | |
| 130 | + </div> | |
| 131 | + <div class="tableWrap"> | |
| 132 | + <table class="tbType1"> | |
| 133 | + <colgroup> | |
| 134 | + <col style="width: 8%"> | |
| 135 | + <col style="width: auto;"> | |
| 136 | + <col style="width: 10%;"> | |
| 137 | + <col style="width: 10%;"> | |
| 138 | + <col style="width: 10%"> | |
| 139 | + <col style="width: 12%"> | |
| 140 | + <col style="width: 12%"> | |
| 141 | + <col style="width: 12%"> | |
| 142 | + <col style="width: 12%"> | |
| 143 | + <col style="width: 6%"> | |
| 144 | + </colgroup> | |
| 145 | + <thead> | |
| 146 | + <tr> | |
| 147 | + <th>번호</th> | |
| 148 | + <th>아이디<input type="button" class="sortBtn sort" id="sort_mberId"></th> | |
| 149 | + <th>이름<input type="button" class="sortBtn sort" id="sort_mberNm"></th> | |
| 150 | + <th>등급<input type="button" class="sortBtn sort" id="sort_grdSetNo"></th> | |
| 151 | + <th>누적결제액<input type="button" class="sortBtn sort" id="sort_totAmt"></th> | |
| 152 | + <th>등급제 시행일<input type="button" class="sortBtn sort" id="sort_grdDate"></th> | |
| 153 | + <th>시작일<input type="button" class="sortBtn sort" id="sort_grdStartDate"></th> | |
| 154 | + <th>종료일 <input type="button" class="sortBtn sort" id="sort_grdEndDate"></th> | |
| 155 | + <th>등록일 <input type="button" class="sortBtn sort" id="sort_regDate"></th> | |
| 156 | + <th>상태<input type="button" class="sortBtn sort" id="sort_grdStatusNm"></th> | |
| 157 | + </tr> | |
| 158 | + </thead> | |
| 159 | + <tbody> | |
| 160 | + <c:forEach var="result" items="${resultList}" varStatus="status"> | |
| 161 | + <tr id="tr_${result.mberId}"> | |
| 162 | + <td> | |
| 163 | + <c:if test="${searchVO.searchSortOrd eq 'desc' }"> | |
| 164 | + <c:out value="${ ( paginationInfo.totalRecordCount - ((paginationInfo.currentPageNo -1)*paginationInfo.recordCountPerPage) ) - status.index }"/> | |
| 165 | + </c:if> | |
| 166 | + <c:if test="${searchVO.searchSortOrd eq 'asc' }"> | |
| 167 | + <c:out value="${(paginationInfo.currentPageNo - 1) * paginationInfo.recordCountPerPage + status.count}"/> | |
| 168 | + </c:if> | |
| 169 | + </td> | |
| 170 | + <td nowrap="nowrap"> | |
| 171 | + <a href="#" onclick="javascript:fnSelectMber('<c:out value="${result.mberId}"/>'); return false;"> | |
| 172 | + <c:out value="${result.mberId}"/> | |
| 173 | + </a> | |
| 174 | + </td> | |
| 175 | + <td nowrap="nowrap"> | |
| 176 | + <c:out value="${result.mberNm}"/> | |
| 177 | + </td> | |
| 178 | + <td nowrap="nowrap"> | |
| 179 | + <c:out value="${result.grdSetNm}"/>(<c:out value="${result.grdSetNo}"/>) | |
| 180 | + </td> | |
| 181 | + <td nowrap="nowrap" class="right"> | |
| 182 | + <fmt:formatNumber value="${result.totAmt}" pattern="#,###" /> | |
| 183 | + </td> | |
| 184 | + <td nowrap="nowrap"> | |
| 185 | + <c:out value="${result.grdDate}"/> | |
| 186 | + </td> | |
| 187 | + <td nowrap="nowrap"> | |
| 188 | + <c:out value="${result.grdStartDate}"/> | |
| 189 | + </td> | |
| 190 | + <td nowrap="nowrap"> | |
| 191 | + <c:out value="${result.grdEndDate}"/> | |
| 192 | + </td> | |
| 193 | + <td nowrap="nowrap"> | |
| 194 | + <c:out value="${result.regDate}"/> | |
| 195 | + </td> | |
| 196 | + <td nowrap="nowrap"> | |
| 197 | + <c:out value="${result.grdStatusNm}"/> | |
| 198 | + </td> | |
| 199 | + </tr> | |
| 200 | + </c:forEach> | |
| 201 | + </tbody> | |
| 202 | + <c:if test="${empty resultList}"> | |
| 203 | + <tr><td colspan="7"><spring:message code="common.nodata.msg" /></td></tr> | |
| 204 | + </c:if> | |
| 205 | + </table> | |
| 206 | + </div> | |
| 207 | + <div class="btnWrap"> | |
| 208 | + | |
| 209 | + </div> | |
| 210 | + | |
| 211 | + <c:if test="${!empty resultList}"> | |
| 212 | + <div class="page"> | |
| 213 | + <ul class="inline"> | |
| 214 | + <ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" /> | |
| 215 | + </ul> | |
| 216 | + </div> | |
| 217 | + </c:if> | |
| 218 | + | |
| 219 | + </div> | |
| 220 | + </div> | |
| 221 | +</form> | |
| 222 | + | |
| 223 | +<form name="modiForm2" id="modiForm2" method="post"> | |
| 224 | + <input name="mberId" type="hidden" /> | |
| 225 | +</form> | |
| 226 | + | |
| 227 | +<form name="searchForm" method="get" action="<c:url value='/sym/grd/selectMberGrdList.do'/>"> | |
| 228 | + <input type="hidden" name="pageIndex" value="<c:out value='${searchVO.pageIndex}' default='1' />"/> | |
| 229 | + <input name="searchCondition" type="hidden" /> | |
| 230 | + <input name="searchKeyword" type="hidden" /> | |
| 231 | +</form> | |
| 232 | +</body> | |
| 233 | +</html>(No newline at end of file) |
--- src/main/webapp/WEB-INF/jsp/sym/grd/mberGrdSetting.jsp
+++ src/main/webapp/WEB-INF/jsp/sym/grd/mberGrdSetting.jsp
... | ... | @@ -84,6 +84,32 @@ |
| 84 | 84 |
} |
| 85 | 85 |
} |
| 86 | 86 |
|
| 87 |
+ // 등급제 적용 테스트 |
|
| 88 |
+ function setMberGrdSave() {
|
|
| 89 |
+ if(confirm("등급제 적용하시겠습니까?")) {
|
|
| 90 |
+ $.ajax({
|
|
| 91 |
+ type: "POST", |
|
| 92 |
+ url: "/sym/grd/mberGrdSaveAjax.do", |
|
| 93 |
+ data: {},
|
|
| 94 |
+ dataType:'json', |
|
| 95 |
+ async: false, |
|
| 96 |
+ success: function (data) {
|
|
| 97 |
+ if (data.isSuccess) {
|
|
| 98 |
+ alert("저장 완료했습니다.");
|
|
| 99 |
+ location.reload(); |
|
| 100 |
+ } |
|
| 101 |
+ else {
|
|
| 102 |
+ alert("Msg : " + data.msg);
|
|
| 103 |
+ } |
|
| 104 |
+ }, |
|
| 105 |
+ error: function (e) {
|
|
| 106 |
+ alert("ERROR : " + JSON.stringify(e));
|
|
| 107 |
+ } |
|
| 108 |
+ }); |
|
| 109 |
+ } |
|
| 110 |
+ } |
|
| 111 |
+ |
|
| 112 |
+ |
|
| 87 | 113 |
</script> |
| 88 | 114 |
</head> |
| 89 | 115 |
<body> |
... | ... | @@ -172,6 +198,7 @@ |
| 172 | 198 |
<br /> |
| 173 | 199 |
<div class="btnWrap"> |
| 174 | 200 |
<input type="button" class="btnType2" value="모든 고객 등급 초기화" onclick="javascript:setMberGrdEndMassEdit(); return false;"> |
| 201 |
+ <input type="button" class="btnType2" value="등급제 적용테스트" onclick="javascript:setMberGrdSave(); return false;"> |
|
| 175 | 202 |
<input type="button" class="btnType1" value="취소" onclick="javascript:location.reload(); return false;"> |
| 176 | 203 |
<input type="button" class="btnType1" value="수정" onclick="javascript:setMberGrdSettingMassEdit(); return false;"> |
| 177 | 204 |
</div> |
--- src/main/webapp/WEB-INF/jsp/uss/ion/kakaoat/ReserveKakaoATDetailList.jsp
+++ src/main/webapp/WEB-INF/jsp/uss/ion/kakaoat/ReserveKakaoATDetailList.jsp
... | ... | @@ -150,6 +150,7 @@ |
| 150 | 150 |
<input type="hidden" name="detailType" value="<c:out value="${searchVO.detailType}" />" />
|
| 151 | 151 |
<input type="hidden" name="ntceBgnde" id="ntceBgnde" value=""> |
| 152 | 152 |
<input type="hidden" name="ntceEndde" id="ntceEndde" value=""> |
| 153 |
+ <input type="hidden" name="userId" id="userId" value="<c:out value="${searchVO.userId}" />" />
|
|
| 153 | 154 |
|
| 154 | 155 |
<div class="contWrap"> |
| 155 | 156 |
<div class="pageTitle"> |
--- src/main/webapp/WEB-INF/jsp/uss/ion/kakaoat/ReserveKakaoATList.jsp
+++ src/main/webapp/WEB-INF/jsp/uss/ion/kakaoat/ReserveKakaoATList.jsp
... | ... | @@ -351,10 +351,10 @@ |
| 351 | 351 |
if(checkedIds.length > 0) {
|
| 352 | 352 |
var msg = ""; |
| 353 | 353 |
if(flag == 'on') {
|
| 354 |
- document.listForm.smishingYn.value='Y'; |
|
| 354 |
+ document.listForm.atSmishingYn.value='Y'; |
|
| 355 | 355 |
msg = "선택하신 사용자의 스미싱의심을 On 하시겠습니까?"; |
| 356 | 356 |
} else {
|
| 357 |
- document.listForm.smishingYn.value='N'; |
|
| 357 |
+ document.listForm.atSmishingYn.value='N'; |
|
| 358 | 358 |
msg = "선택하신 사용자의 스미싱의심을 Off 하시겠습니까?"; |
| 359 | 359 |
} |
| 360 | 360 |
if(confirm(msg)){
|
... | ... | @@ -398,7 +398,7 @@ |
| 398 | 398 |
<input type="hidden" name="ntceEndde" id="ntceEndde" value=""> |
| 399 | 399 |
<input type="hidden" name="adminSmsNoticeYn" value=""/> |
| 400 | 400 |
<input name="checkedIdForDel" type="hidden" /> |
| 401 |
- <input type="hidden" name="smishingYn" value=""/> |
|
| 401 |
+ <input type="hidden" name="atSmishingYn" value=""/> |
|
| 402 | 402 |
|
| 403 | 403 |
<div class="contWrap"> |
| 404 | 404 |
<div class="pageTitle"> |
... | ... | @@ -484,9 +484,8 @@ |
| 484 | 484 |
<col style="width: 5%"> |
| 485 | 485 |
<col style="width: 13%"> |
| 486 | 486 |
<col style="width: 13%"> |
| 487 |
- <%-- <col style="width: 10%"> --%> |
|
| 488 | 487 |
<col style="width: 10%"> |
| 489 |
- <%-- <col style="width: 10%"> --%> |
|
| 488 |
+ <col style="width: 10%"> |
|
| 490 | 489 |
<col style="width: 10%"> |
| 491 | 490 |
<col style="width: 5%"> |
| 492 | 491 |
<col style="width: auto"> |
... | ... | @@ -498,15 +497,12 @@ |
| 498 | 497 |
<th>번호<input type="button" class="sort sortBtn" id="sort_msgGroupId"></th> |
| 499 | 498 |
<th>아이디<input type="button" class="sort sortBtn" id="sort_userId"></th> |
| 500 | 499 |
<th>채널ID<input type="button" class="sort sortBtn" id="sort_yellowId"></th> |
| 501 |
- <!-- <th>qkf<input type="button" class="sort sortBtn" id="sort_callFrom"></th> --> |
|
| 502 | 500 |
<th>발송건수<input type="button" class="sort sortBtn" id="sort_msgGroupCnt"></th> |
| 503 |
- <!-- <th>스미싱의심</th> --> |
|
| 501 |
+ <th>스미싱의심</th> |
|
| 504 | 502 |
<th>요청시간<input type="button" class="sort sortBtn" id="sort_reqDate"></th> |
| 505 | 503 |
<th>예약<input type="button" class="sort sortBtn" id="sort_reserveYn"></th> |
| 506 | 504 |
<th>내용<input type="button" class="sort sortBtn" id="sort_smsTxt"></th> |
| 507 | 505 |
<th>타입<input type="button" class="sort sortBtn" id="sort_msgType"></th> |
| 508 |
- <!-- <th>전송사<input type="button" class="sort sortBtn" id="sort_agentCodeTxt"></th> --> |
|
| 509 |
- <!-- <th>통신사<input type="button" class="sort sortBtn" id="sort_rsltNet"></th> --> |
|
| 510 | 506 |
</tr> |
| 511 | 507 |
</thead> |
| 512 | 508 |
<tbody> |
... | ... | @@ -516,7 +512,7 @@ |
| 516 | 512 |
<input name="checkField" id="<c:out value="${result.userId}"/>" title="Check <c:out value="${status.count}"/>" type="checkbox"/><label for="<c:out value="${result.userId}"/>"></label>
|
| 517 | 513 |
<input name="checkId" type="hidden" class="${result.userId}" value="<c:out value='${result.userId}'/>:<c:out value='${result.userId}'/>"/>
|
| 518 | 514 |
</td> |
| 519 |
- <td> |
|
| 515 |
+ <td <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 520 | 516 |
<c:if test="${searchVO.searchSortOrd eq 'desc' }">
|
| 521 | 517 |
<c:out value="${ ( paginationInfo.totalRecordCount - ((paginationInfo.currentPageNo -1)*paginationInfo.recordCountPerPage) ) - status.index }"/>
|
| 522 | 518 |
</c:if> |
... | ... | @@ -524,23 +520,17 @@ |
| 524 | 520 |
<c:out value="${(paginationInfo.currentPageNo - 1) * paginationInfo.recordCountPerPage + status.count}"/>
|
| 525 | 521 |
</c:if> |
| 526 | 522 |
</td> |
| 527 |
- <td> |
|
| 523 |
+ <td <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 528 | 524 |
<div class="id_box <c:if test='${result.vipYn eq "Y" }'>vip</c:if>">
|
| 529 | 525 |
<a href="#" onclick="javascript:fnSelectMber('<c:out value="${result.userId}"/>'); return false;">
|
| 530 | 526 |
<c:out value="${result.userId}"/>(<c:out value="${result.userNm}"/>)
|
| 531 | 527 |
</a> |
| 532 | 528 |
</div> |
| 533 | 529 |
</td> |
| 534 |
- |
|
| 535 |
- <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;">
|
|
| 536 |
- <c:out value="${result.yellowId}"/>
|
|
| 537 |
- </td> |
|
| 538 |
- |
|
| 539 |
- <%-- <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>>
|
|
| 540 |
- <c:out value="${result.callFrom}"/>
|
|
| 541 |
- </td> --%> |
|
| 542 |
- |
|
| 543 |
- <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;line-height:30px;text-align:right;">
|
|
| 530 |
+ <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;" <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 531 |
+ <c:out value="${result.yellowId}"/>
|
|
| 532 |
+ </td> |
|
| 533 |
+ <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;line-height:30px;text-align:right;" <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 544 | 534 |
<c:choose> |
| 545 | 535 |
<c:when test="${result.successCount > 0}">
|
| 546 | 536 |
<c:out value="${result.msgGroupCnt}"/>(<fmt:formatNumber value="${(result.successCount / result.msgGroupCnt) * 100}" pattern="#,###" />%)
|
... | ... | @@ -549,20 +539,50 @@ |
| 549 | 539 |
<span style="color: #0000FF;"> |
| 550 | 540 |
<c:out value="${result.msgGroupCnt}"/>(<fmt:formatNumber value="${(result.successCount / result.msgGroupCnt) * 100}" pattern="#,###" />%)
|
| 551 | 541 |
<c:if test="${result.msgGroupCnt eq result.callRejectionCount && result.callbackYn eq 'N' && result.userCallbackYn eq 'N' }">
|
| 552 |
- <%-- <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="문자" /> --%>
|
|
| 553 |
- </c:if> |
|
| 542 |
+ <%-- <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="문자" /> --%>
|
|
| 543 |
+ </c:if> |
|
| 554 | 544 |
<c:if test="${result.callbackYn eq 'Y' }">
|
| 555 |
- <span style="color: #0000FF;" title="번호도용 문자차단 안내문자 발송완료">안내완료</span> |
|
| 556 |
- </c:if> |
|
| 545 |
+ <span style="color: #0000FF;" title="번호도용 문자차단 안내문자 발송완료">안내완료</span> |
|
| 546 |
+ </c:if> |
|
| 557 | 547 |
</span> |
| 558 | 548 |
</c:otherwise> |
| 559 |
- </c:choose> |
|
| 549 |
+ </c:choose> |
|
| 560 | 550 |
</td> |
| 561 |
- <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;" title="<c:out value="${result.rsltDate}"/>">
|
|
| 551 |
+ <td <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 552 |
+ <c:choose> |
|
| 553 |
+ <c:when test="${result.atDelayYn eq 'Y'}">
|
|
| 554 |
+ <c:choose> |
|
| 555 |
+ <c:when test="${result.atDelayCompleteYn eq 'Y' && not empty result.cancelDate}">
|
|
| 556 |
+ <span style="color: #0000FF;"> |
|
| 557 |
+ <c:if test="${result.smishingYn eq 'Y'}">온</c:if><c:if test="${result.smishingYn eq 'N'}">오프</c:if>[이용정지]
|
|
| 558 |
+ <span style="overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;margin-top:3px;" title="<c:out value="${result.cancelDate}"/>">
|
|
| 559 |
+ <fmt:parseDate value="${result.cancelDate}" var="cancelDateValue" pattern="yyyy-MM-dd HH:mm"/>
|
|
| 560 |
+ <fmt:formatDate value="${cancelDateValue}" pattern="MM-dd HH:mm"/>
|
|
| 561 |
+ </span> |
|
| 562 |
+ </span> |
|
| 563 |
+ </c:when> |
|
| 564 |
+ <c:when test="${result.atDelayCompleteYn eq 'N'}">
|
|
| 565 |
+ <c:if test="${result.atSmishingYn eq 'Y'}">온</c:if>
|
|
| 566 |
+ <c:if test="${result.atSmishingYn eq 'N'}">오프</c:if>[미처리]
|
|
| 567 |
+ </c:when> |
|
| 568 |
+ <c:otherwise> |
|
| 569 |
+ <span style="color: #0000FF;"> |
|
| 570 |
+ <c:if test="${result.atSmishingYn eq 'Y'}">온</c:if>
|
|
| 571 |
+ <c:if test="${result.atSmishingYn eq 'N'}">오프</c:if>[승인]
|
|
| 572 |
+ </span> |
|
| 573 |
+ </c:otherwise> |
|
| 574 |
+ </c:choose> |
|
| 575 |
+ </c:when> |
|
| 576 |
+ <c:otherwise> |
|
| 577 |
+ - |
|
| 578 |
+ </c:otherwise> |
|
| 579 |
+ </c:choose> |
|
| 580 |
+ </td> |
|
| 581 |
+ <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;" title="<c:out value="${result.rsltDate}"/>" <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 562 | 582 |
<fmt:parseDate value="${result.reqDate}" var="reqDateValue" pattern="yyyy-MM-dd HH:mm"/>
|
| 563 |
- <fmt:formatDate value="${reqDateValue}" pattern="MM-dd HH:mm"/>
|
|
| 583 |
+ <fmt:formatDate value="${reqDateValue}" pattern="MM-dd HH:mm"/>
|
|
| 564 | 584 |
</td> |
| 565 |
- <td onclick="fn_detail_list('${result.msgGroupId}'); return false;" style="cursor:pointer;">
|
|
| 585 |
+ <td onclick="fn_detail_list('${result.msgGroupId}', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;" <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 566 | 586 |
<c:choose> |
| 567 | 587 |
<c:when test="${result.reserveYn eq 'Y'}">
|
| 568 | 588 |
예약 |
... | ... | @@ -572,25 +592,20 @@ |
| 572 | 592 |
</c:otherwise> |
| 573 | 593 |
</c:choose> |
| 574 | 594 |
</td> |
| 575 |
- <td class="sms_detail left" onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;">
|
|
| 595 |
+ <td class="sms_detail left <c:if test="${result.atSmishingYn eq 'Y'}">smishing</c:if>" onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;">
|
|
| 576 | 596 |
<p><c:out value="${result.smsTxt}"/></p>
|
| 577 | 597 |
<div class="sms_detail_hover"> |
| 578 | 598 |
<c:out value="${fn:replace(fn:replace(result.smsTxt, newLineChar, '<br/>'), newLineChar2, '<br/>')}" escapeXml="false"/>
|
| 579 | 599 |
</div> |
| 580 | 600 |
</td> |
| 581 |
- <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;">
|
|
| 601 |
+ <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;" <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 582 | 602 |
<c:out value="${result.msgTypeName}"/>
|
| 583 | 603 |
</td> |
| 584 |
- <%-- <td><c:out value="${result.conectMthdTxt}"/></td> --%>
|
|
| 585 |
- <%-- <td <c:if test="${result.smishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 586 |
- <c:out value="${result.agentCodeTxt}"/>
|
|
| 587 |
- </td> --%> |
|
| 588 |
- <%-- <td><c:out value="${result.rsltNet}"/></td> --%>
|
|
| 589 | 604 |
</tr> |
| 590 | 605 |
</c:forEach> |
| 591 | 606 |
<c:if test="${empty resultList}">
|
| 592 |
- <tr><td colspan="8"><spring:message code="common.nodata.msg" /></td></tr> |
|
| 593 |
- </c:if> |
|
| 607 |
+ <tr><td colspan="10"><spring:message code="common.nodata.msg" /></td></tr> |
|
| 608 |
+ </c:if> |
|
| 594 | 609 |
</tbody> |
| 595 | 610 |
</table> |
| 596 | 611 |
</div> |
--- src/main/webapp/WEB-INF/jsp/uss/ion/kakaoat/SendKakaoATList.jsp
+++ src/main/webapp/WEB-INF/jsp/uss/ion/kakaoat/SendKakaoATList.jsp
... | ... | @@ -456,7 +456,7 @@ |
| 456 | 456 |
<col style="width: 13%"> |
| 457 | 457 |
<%-- <col style="width: 10%"> --%> |
| 458 | 458 |
<col style="width: 10%"> |
| 459 |
- <%-- <col style="width: 10%"> --%> |
|
| 459 |
+ <col style="width: 10%"> |
|
| 460 | 460 |
<col style="width: 10%"> |
| 461 | 461 |
<col style="width: 5%"> |
| 462 | 462 |
<col style="width: auto"> |
... | ... | @@ -468,15 +468,12 @@ |
| 468 | 468 |
<th>번호<input type="button" class="sort sortBtn" id="sort_msgGroupId"></th> |
| 469 | 469 |
<th>아이디<input type="button" class="sort sortBtn" id="sort_userId"></th> |
| 470 | 470 |
<th>채널ID<input type="button" class="sort sortBtn" id="sort_yellowId"></th> |
| 471 |
- <!-- <th>qkf<input type="button" class="sort sortBtn" id="sort_callFrom"></th> --> |
|
| 472 | 471 |
<th>발송건수<input type="button" class="sort sortBtn" id="sort_msgGroupCnt"></th> |
| 473 |
- <!-- <th>스미싱의심</th> --> |
|
| 472 |
+ <th>스미싱의심</th> |
|
| 474 | 473 |
<th>요청시간<input type="button" class="sort sortBtn" id="sort_reqDate"></th> |
| 475 | 474 |
<th>예약<input type="button" class="sort sortBtn" id="sort_reserveYn"></th> |
| 476 | 475 |
<th>내용<input type="button" class="sort sortBtn" id="sort_smsTxt"></th> |
| 477 | 476 |
<th>타입<input type="button" class="sort sortBtn" id="sort_msgType"></th> |
| 478 |
- <!-- <th>전송사<input type="button" class="sort sortBtn" id="sort_agentCodeTxt"></th> --> |
|
| 479 |
- <!-- <th>통신사<input type="button" class="sort sortBtn" id="sort_rsltNet"></th> --> |
|
| 480 | 477 |
</tr> |
| 481 | 478 |
</thead> |
| 482 | 479 |
<tbody> |
... | ... | @@ -486,7 +483,7 @@ |
| 486 | 483 |
<input name="checkField" id="<c:out value="${result.userId}"/>" title="Check <c:out value="${status.count}"/>" type="checkbox"/><label for="<c:out value="${result.userId}"/>"></label>
|
| 487 | 484 |
<input name="checkId" type="hidden" class="${result.userId}" value="<c:out value='${result.userId}'/>:<c:out value='${result.userId}'/>"/>
|
| 488 | 485 |
</td> |
| 489 |
- <td> |
|
| 486 |
+ <td <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 490 | 487 |
<c:if test="${searchVO.searchSortOrd eq 'desc' }">
|
| 491 | 488 |
<c:out value="${ ( paginationInfo.totalRecordCount - ((paginationInfo.currentPageNo -1)*paginationInfo.recordCountPerPage) ) - status.index }"/>
|
| 492 | 489 |
</c:if> |
... | ... | @@ -494,23 +491,17 @@ |
| 494 | 491 |
<c:out value="${(paginationInfo.currentPageNo - 1) * paginationInfo.recordCountPerPage + status.count}"/>
|
| 495 | 492 |
</c:if> |
| 496 | 493 |
</td> |
| 497 |
- <td> |
|
| 494 |
+ <td <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 498 | 495 |
<div class="id_box <c:if test='${result.vipYn eq "Y" }'>vip</c:if>">
|
| 499 | 496 |
<a href="#" onclick="javascript:fnSelectMber('<c:out value="${result.userId}"/>'); return false;">
|
| 500 | 497 |
<c:out value="${result.userId}"/>(<c:out value="${result.userNm}"/>)
|
| 501 | 498 |
</a> |
| 502 | 499 |
</div> |
| 503 | 500 |
</td> |
| 504 |
- |
|
| 505 |
- <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;">
|
|
| 501 |
+ <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;" <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 506 | 502 |
<c:out value="${result.yellowId}"/>
|
| 507 |
- </td> |
|
| 508 |
- |
|
| 509 |
- <%-- <td onclick="fn_detail_list('${result.msgGroupId}'); return false;" <c:if test="${result.atSmishingYn eq 'Y'}">class="atSmishingYn" style="cursor:pointer;"</c:if><c:if test="${result.atSmishingYn eq 'N'}">style="cursor:pointer;"</c:if>>
|
|
| 510 |
- <c:out value="${result.callFrom}"/>
|
|
| 511 |
- </td> --%> |
|
| 512 |
- |
|
| 513 |
- <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;line-height:30px;text-align:right;">
|
|
| 503 |
+ </td> |
|
| 504 |
+ <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;" <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 514 | 505 |
<c:choose> |
| 515 | 506 |
<c:when test="${result.successCount > 0}">
|
| 516 | 507 |
<c:out value="${result.msgGroupCnt}"/>(<fmt:formatNumber value="${(result.successCount / result.msgGroupCnt) * 100}" pattern="#,###" />%)
|
... | ... | @@ -519,20 +510,51 @@ |
| 519 | 510 |
<span style="color: #0000FF;"> |
| 520 | 511 |
<c:out value="${result.msgGroupCnt}"/>(<fmt:formatNumber value="${(result.successCount / result.msgGroupCnt) * 100}" pattern="#,###" />%)
|
| 521 | 512 |
<c:if test="${result.msgGroupCnt eq result.callRejectionCount && result.callbackYn eq 'N' && result.userCallbackYn eq 'N' }">
|
| 522 |
- <%-- <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="문자" /> --%>
|
|
| 523 |
- </c:if> |
|
| 513 |
+ |
|
| 514 |
+ </c:if> |
|
| 524 | 515 |
<c:if test="${result.callbackYn eq 'Y' }">
|
| 525 |
- <span style="color: #0000FF;" title="번호도용 문자차단 안내문자 발송완료">안내완료</span> |
|
| 526 |
- </c:if> |
|
| 516 |
+ <span style="color: #0000FF;" title="번호도용 문자차단 안내문자 발송완료">안내완료</span> |
|
| 517 |
+ </c:if> |
|
| 527 | 518 |
</span> |
| 528 | 519 |
</c:otherwise> |
| 529 | 520 |
</c:choose> |
| 530 | 521 |
</td> |
| 531 |
- <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;" title="<c:out value="${result.rsltDate}"/>">
|
|
| 522 |
+ <td <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 523 |
+ <c:choose> |
|
| 524 |
+ <c:when test="${result.atDelayYn eq 'Y'}">
|
|
| 525 |
+ <c:choose> |
|
| 526 |
+ <c:when test="${result.atDelayCompleteYn eq 'Y' && not empty result.cancelDate}">
|
|
| 527 |
+ <span style="color: #0000FF;"> |
|
| 528 |
+ <c:if test="${result.atSmishingYn eq 'Y'}">온</c:if>
|
|
| 529 |
+ <c:if test="${result.atSmishingYn eq 'N'}">오프</c:if>[이용정지]
|
|
| 530 |
+ <span style="overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;margin-top:3px;" title="<c:out value="${result.cancelDate}"/>">
|
|
| 531 |
+ <fmt:parseDate value="${result.cancelDate}" var="cancelDateValue" pattern="yyyy-MM-dd HH:mm"/>
|
|
| 532 |
+ <fmt:formatDate value="${cancelDateValue}" pattern="MM-dd HH:mm"/>
|
|
| 533 |
+ </span> |
|
| 534 |
+ </span> |
|
| 535 |
+ </c:when> |
|
| 536 |
+ <c:when test="${result.atDelayCompleteYn eq 'N'}">
|
|
| 537 |
+ <c:if test="${result.atSmishingYn eq 'Y'}">온</c:if>
|
|
| 538 |
+ <c:if test="${result.atSmishingYn eq 'N'}">오프</c:if>[미처리]
|
|
| 539 |
+ </c:when> |
|
| 540 |
+ <c:otherwise> |
|
| 541 |
+ <span style="color: #0000FF;"> |
|
| 542 |
+ <c:if test="${result.atSmishingYn eq 'Y'}">온</c:if>
|
|
| 543 |
+ <c:if test="${result.atSmishingYn eq 'N'}">오프</c:if>[승인]
|
|
| 544 |
+ </span> |
|
| 545 |
+ </c:otherwise> |
|
| 546 |
+ </c:choose> |
|
| 547 |
+ </c:when> |
|
| 548 |
+ <c:otherwise> |
|
| 549 |
+ - |
|
| 550 |
+ </c:otherwise> |
|
| 551 |
+ </c:choose> |
|
| 552 |
+ </td> |
|
| 553 |
+ <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;" title="<c:out value="${result.rsltDate}"/>" <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 532 | 554 |
<fmt:parseDate value="${result.reqDate}" var="reqDateValue" pattern="yyyy-MM-dd HH:mm"/>
|
| 533 | 555 |
<fmt:formatDate value="${reqDateValue}" pattern="MM-dd HH:mm"/>
|
| 534 | 556 |
</td> |
| 535 |
- <td onclick="fn_detail_list('${result.msgGroupId}', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;">
|
|
| 557 |
+ <td onclick="fn_detail_list('${result.msgGroupId}', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;" <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 536 | 558 |
<c:choose> |
| 537 | 559 |
<c:when test="${result.reserveYn eq 'Y'}">
|
| 538 | 560 |
예약 |
... | ... | @@ -542,20 +564,15 @@ |
| 542 | 564 |
</c:otherwise> |
| 543 | 565 |
</c:choose> |
| 544 | 566 |
</td> |
| 545 |
- <td class="sms_detail left" onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;">
|
|
| 567 |
+ <td class="sms_detail left <c:if test="${result.atSmishingYn eq 'Y'}">smishing</c:if>" onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;">
|
|
| 546 | 568 |
<p><c:out value="${result.smsTxt}"/></p>
|
| 547 | 569 |
<div class="sms_detail_hover"> |
| 548 | 570 |
<c:out value="${fn:replace(fn:replace(result.smsTxt, newLineChar, '<br/>'), newLineChar2, '<br/>')}" escapeXml="false"/>
|
| 549 | 571 |
</div> |
| 550 | 572 |
</td> |
| 551 |
- <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;">
|
|
| 573 |
+ <td onclick="fn_detail_list('<c:out value="${result.msgGroupId}"/>', '<c:out value="${result.userId}"/>'); return false;" style="cursor:pointer;" <c:if test="${result.atSmishingYn eq 'Y'}">class="smishing"</c:if>>
|
|
| 552 | 574 |
<c:out value="${result.msgTypeName}"/>
|
| 553 | 575 |
</td> |
| 554 |
- <%-- <td><c:out value="${result.conectMthdTxt}"/></td> --%>
|
|
| 555 |
- <%-- <td <c:if test="${result.atSmishingYn eq 'Y'}">class="atSmishingYn"</c:if>>
|
|
| 556 |
- <c:out value="${result.agentCodeTxt}"/>
|
|
| 557 |
- </td> --%> |
|
| 558 |
- <%-- <td><c:out value="${result.rsltNet}"/></td> --%>
|
|
| 559 | 576 |
</tr> |
| 560 | 577 |
</c:forEach> |
| 561 | 578 |
<c:if test="${empty resultList}">
|
... | ... | @@ -565,10 +582,8 @@ |
| 565 | 582 |
</table> |
| 566 | 583 |
</div> |
| 567 | 584 |
<div class="btnWrap" style="margin-bottom: 15px;"> |
| 568 |
- <!-- |
|
| 569 | 585 |
<input type="button" class="btnType2" style="padding:5px 10px" onclick="fnAtSmishingUpdate('on'); return false;" value="알림톡 스미싱 ON">
|
| 570 | 586 |
<input type="button" class="btnType2" style="padding:5px 10px" onclick="fnAtSmishingUpdate('off'); return false;" value="알림톡 스미싱 OFF">
|
| 571 |
- --> |
|
| 572 | 587 |
</div> |
| 573 | 588 |
|
| 574 | 589 |
<!-- 페이지 네비게이션 시작 --> |
--- src/main/webapp/WEB-INF/jsp/uss/ion/msg/CampaignMsgList.jsp
+++ src/main/webapp/WEB-INF/jsp/uss/ion/msg/CampaignMsgList.jsp
... | ... | @@ -307,7 +307,14 @@ |
| 307 | 307 |
<td class="sms_detail left <c:if test="${result.smishingYn eq 'Y'}">smishing</c:if>">
|
| 308 | 308 |
<c:choose> |
| 309 | 309 |
<c:when test="${empty result.smsTxt}">
|
| 310 |
- 그림문자 |
|
| 310 |
+ <c:choose> |
|
| 311 |
+ <c:when test="${result.msgType eq '4'}">
|
|
| 312 |
+ 내용없음 |
|
| 313 |
+ </c:when> |
|
| 314 |
+ <c:otherwise> |
|
| 315 |
+ 그림문자 |
|
| 316 |
+ </c:otherwise> |
|
| 317 |
+ </c:choose> |
|
| 311 | 318 |
<div class="sms_detail_hover"> |
| 312 | 319 |
<c:if test="${not empty fn:split(result.atchFiles, '^')[0]}">
|
| 313 | 320 |
<img class="MyMsgImg1" src="/cmm/fms/getImage2.do?atchFileId=${fn:split(result.atchFiles, '^')[0]}&fileSn=0" style="width: 120px;">
|
--- src/main/webapp/WEB-INF/jsp/uss/ion/msg/ReserveNumberList.jsp
+++ src/main/webapp/WEB-INF/jsp/uss/ion/msg/ReserveNumberList.jsp
... | ... | @@ -471,7 +471,14 @@ |
| 471 | 471 |
<td class="sms_detail left" <c:if test="${result.smishingYn eq 'Y'}">style="color: #0000FF;"</c:if>>
|
| 472 | 472 |
<c:choose> |
| 473 | 473 |
<c:when test="${empty result.smsTxt}">
|
| 474 |
- 그림문자 |
|
| 474 |
+ <c:choose> |
|
| 475 |
+ <c:when test="${result.msgType eq '4'}">
|
|
| 476 |
+ 내용없음 |
|
| 477 |
+ </c:when> |
|
| 478 |
+ <c:otherwise> |
|
| 479 |
+ 그림문자 |
|
| 480 |
+ </c:otherwise> |
|
| 481 |
+ </c:choose> |
|
| 475 | 482 |
<div class="sms_detail_hover"> |
| 476 | 483 |
<c:if test="${not empty fn:split(result.atchFiles, '^')[0]}">
|
| 477 | 484 |
<img class="MyMsgImg1" src="/cmm/fms/getImage2.do?atchFileId=${fn:split(result.atchFiles, '^')[0]}&fileSn=0" style="width: 120px;">
|
--- src/main/webapp/WEB-INF/jsp/uss/ion/msg/SendMsgList.jsp
+++ src/main/webapp/WEB-INF/jsp/uss/ion/msg/SendMsgList.jsp
... | ... | @@ -585,7 +585,14 @@ |
| 585 | 585 |
<td class="sms_detail left <c:if test="${result.smishingYn eq 'Y'}">smishing</c:if>">
|
| 586 | 586 |
<c:choose> |
| 587 | 587 |
<c:when test="${empty result.smsTxt}">
|
| 588 |
- 그림문자 |
|
| 588 |
+ <c:choose> |
|
| 589 |
+ <c:when test="${result.msgType eq '4'}">
|
|
| 590 |
+ 내용없음 |
|
| 591 |
+ </c:when> |
|
| 592 |
+ <c:otherwise> |
|
| 593 |
+ 그림문자 |
|
| 594 |
+ </c:otherwise> |
|
| 595 |
+ </c:choose> |
|
| 589 | 596 |
<div class="sms_detail_hover"> |
| 590 | 597 |
<c:if test="${not empty fn:split(result.atchFiles, '^')[0]}">
|
| 591 | 598 |
<img class="MyMsgImg1" src="/cmm/fms/getImage2.do?atchFileId=${fn:split(result.atchFiles, '^')[0]}&fileSn=0" style="width: 120px;">
|
--- src/main/webapp/WEB-INF/jsp/uss/ion/msg/admSys/AdmSystemSendMsgList.jsp
+++ src/main/webapp/WEB-INF/jsp/uss/ion/msg/admSys/AdmSystemSendMsgList.jsp
... | ... | @@ -304,7 +304,14 @@ |
| 304 | 304 |
<td class="sms_detail left" <c:if test="${result.smishingYn eq 'Y'}">style="color: #0000FF;"</c:if>>
|
| 305 | 305 |
<c:choose> |
| 306 | 306 |
<c:when test="${empty result.smsTxt}">
|
| 307 |
- 그림문자 |
|
| 307 |
+ <c:choose> |
|
| 308 |
+ <c:when test="${result.msgType eq '4'}">
|
|
| 309 |
+ 내용없음 |
|
| 310 |
+ </c:when> |
|
| 311 |
+ <c:otherwise> |
|
| 312 |
+ 그림문자 |
|
| 313 |
+ </c:otherwise> |
|
| 314 |
+ </c:choose> |
|
| 308 | 315 |
<div class="sms_detail_hover"> |
| 309 | 316 |
<c:if test="${not empty fn:split(result.atchFiles, '^')[0]}">
|
| 310 | 317 |
<img class="MyMsgImg1" src="/cmm/fms/getImage2.do?atchFileId=${fn:split(result.atchFiles, '^')[0]}&fileSn=0" style="width: 120px;">
|
--- src/main/webapp/WEB-INF/jsp/web/cop/bbs/EgovNoticeRegist.jsp
+++ src/main/webapp/WEB-INF/jsp/web/cop/bbs/EgovNoticeRegist.jsp
... | ... | @@ -177,40 +177,12 @@ |
| 177 | 177 |
</div> |
| 178 | 178 |
</div> |
| 179 | 179 |
<div class="clause_list_body"> |
| 180 |
- <div class="agree_text"> |
|
| 181 |
- <div> |
|
| 182 |
- <p class="top_tit_text">서비스 이용약관</p> |
|
| 183 |
- <p class="date_text">제정 2022. 06. 13</p> |
|
| 184 |
- <p class="tit_text">제1장 총 칙</p> |
|
| 185 |
- <p class="stit_text">제1조(목적) 이 약관은 주식회사 아이티앤(이하“회사”)이 제공하는 |
|
| 186 |
- 인터넷 서비스 문자온(www.munjaon.co.kr, 이하 “서비스”)를 이용함에 있어 회사와 회원(이용자)의 |
|
| 187 |
- 권리, 의무, 책임사항 및 기타 필요한 사항을 규정함을목적으로 합니다.</p> |
|
| 188 |
- <p class="stit_text">제2조(용어의 정의) 이 약관에서 사용하는 용어의정의는 다음과 |
|
| 189 |
- 같습니다.</p> |
|
| 190 |
- <ul class="policy_list sec_list"> |
|
| 191 |
- <li><span>1.</span> 문자온 : 회사의 서비스명으로 회원이전송하고자 하는 |
|
| 192 |
- 내용‧정보 등을 문자메시지, 멀티미디어메시지,카카오톡, 팩스 등 다양한 메시지 형태로 변화시켜 전송하는 서비스 |
|
| 193 |
- 및 회원이 제3자로부터 메시지를 수신할 수 있도록 하는 서비스</li> |
|
| 194 |
- <li><span>2.</span> 회원 : 회사에 개인정보를 제공하여 이용계약을체결하고, 이용자 |
|
| 195 |
- 아이디(ID)를 부여 받은자로서 회사가 제공하는서비스를 지속적으로 이용할 수 있는 자</li> |
|
| 196 |
- <li><span>3.</span> 아이디(ID) : 회원의 식별과 서비스 이용을 위하여회원이 정하고 |
|
| 197 |
- 회사가 승인하는 문자와 숫자의 조합</li> |
|
| 198 |
- <li><span>4.</span> 비밀번호 : 회원이 부여 받은 아이디(ID)와 일치된회원임을 |
|
| 199 |
- 확인하고, 회원의 비밀을 보호하기 위해 회원이 설정한 문자와숫자의 조합</li> |
|
| 200 |
- <li><span>5.</span> 휴면아이디 : 12개월 이상 계속해서 로그인을포함한 서비스 이용이 |
|
| 201 |
- 없는 아이디</li> |
|
| 202 |
- <li><span>6.</span> 해지 : 회사와 회원 간 맺은 이용계약을 해지하는것</li> |
|
| 203 |
- <li><span>7.</span> 스팸메시지 : 정보통신망을 통해 수신자의명시적인 사전 동의없이 |
|
| 204 |
- 일방적으로 전송 또는 게시되는 영리목적의광고성 정보</li> |
|
| 205 |
- <li><span>8.</span> 불법스팸메시지 : 『정보통신망법』 제50조 내지제50조의8의 규정을 |
|
| 206 |
- 위반하여 전송 또는 게시되는 영리목적의 광고성정보를 말하며, 불법스팸은 형사처벌 및 과태료 부과의 대상이 됨</li> |
|
| 207 |
- <li><span>9.</span> 문자피싱메시지 : 전자금융사기를 목적으로 전송또는 게시되는 정보</li> |
|
| 208 |
- <li><span>10.</span> 스미싱메시지 : 메시지 내용 중 인터넷 주소를클릭하면 악성코드가 |
|
| 209 |
- 설치되어 수신자가 모르는 사이에 금전적 피해 또는개인‧금융정보 탈취 피해를 야기하는 메시지</li> |
|
| 210 |
- <li><span>11.</span> 카카오톡 : 주식회사 카카오(이하 ”카카오”)가운영하는 모바일 |
|
| 211 |
- 메신저 기반의 실시간 커뮤니케이션 서비스로 알림톡,친구톡 또는 해당 서비스를 제공하는 어플리케이션</li> |
|
| 212 |
- </ul> |
|
| 213 |
- </div> |
|
| 180 |
+ <div class="agree_text" style="padding-top: 0px;"> |
|
| 181 |
+ <c:forEach var="result" items="${resultList}" varStatus="status">
|
|
| 182 |
+ <p class="tit_text"><c:out value="${result.termsSj}"/></p>
|
|
| 183 |
+ |
|
| 184 |
+ <p><c:out value="${result.termsCn}" escapeXml="false"/></p>
|
|
| 185 |
+ </c:forEach> |
|
| 214 | 186 |
</div> |
| 215 | 187 |
</div> |
| 216 | 188 |
</li> |
--- src/main/webapp/WEB-INF/jsp/web/event/pay/EventPayViewV2.jsp
+++ src/main/webapp/WEB-INF/jsp/web/event/pay/EventPayViewV2.jsp
... | ... | @@ -808,8 +808,8 @@ |
| 808 | 808 |
</div>--%> |
| 809 | 809 |
<div> |
| 810 | 810 |
<p class="tab_tit">충전수단 선택</p> |
| 811 |
- <ul class="area_tab type03"> |
|
| 812 |
- <li class="btn_charge0 btn_tab active"><button type="button" onclick="TabTypePay(this,'0');"><i></i>간편결제</button></li> |
|
| 811 |
+ <ul class="area_tab"> |
|
| 812 |
+ <li class="btn_charge_simple btn_tab active"><button type="button" onclick="TabTypePay(this,'0');"><i></i>간편결제</button></li> |
|
| 813 | 813 |
<li class="btn_charge1 btn_tab"><button type="button" onclick="TabTypePay(this,'1');"><i></i>신용카드</button></li> |
| 814 | 814 |
<li class="btn_charge2 btn_tab"><button type="button" onclick="TabTypePay(this,'2');" id="btnDdedicatedAccount"><i></i>전용계좌</button></li> |
| 815 | 815 |
<li class="btn_charge5 btn_tab"><button type="button" onclick="TabTypePay(this,'5');"><i></i>즉시이체</button></li> |
--- src/main/webapp/WEB-INF/jsp/web/fax/faxDataView.jsp
+++ src/main/webapp/WEB-INF/jsp/web/fax/faxDataView.jsp
... | ... | @@ -51,6 +51,11 @@ |
| 51 | 51 |
return false; |
| 52 | 52 |
} |
| 53 | 53 |
|
| 54 |
+ if(!moneyChk()){
|
|
| 55 |
+ return false; |
|
| 56 |
+ } |
|
| 57 |
+ |
|
| 58 |
+ |
|
| 54 | 59 |
if(!valueChk()){
|
| 55 | 60 |
return false; |
| 56 | 61 |
} |
... | ... | @@ -152,6 +157,21 @@ |
| 152 | 157 |
|
| 153 | 158 |
} |
| 154 | 159 |
|
| 160 |
+ function moneyChk(){
|
|
| 161 |
+ |
|
| 162 |
+ //회원 보유 잔액 비교 |
|
| 163 |
+ var totPriceOnly = stringReplaceAll($('#totalPriceTxt').text() , ",", "");
|
|
| 164 |
+ var userMoneyOnly = stringReplaceAll($('#hdUserMoney').text(), ",", "");
|
|
| 165 |
+ |
|
| 166 |
+ if(parseFloat(userMoneyOnly) < parseFloat(totPriceOnly)){
|
|
| 167 |
+ alert("팩스 발송에 필요한 회원님의 보유 잔액이 부족 합니다.");
|
|
| 168 |
+ return false; |
|
| 169 |
+ } |
|
| 170 |
+ |
|
| 171 |
+ return true; |
|
| 172 |
+ } |
|
| 173 |
+ |
|
| 174 |
+ |
|
| 155 | 175 |
function valueChk(){
|
| 156 | 176 |
if($('#title').val() == ''){
|
| 157 | 177 |
alert('제목을 입력해 주세요.');
|
--- src/main/webapp/WEB-INF/jsp/web/kakao/intrd/KakaoAllimtalkIntro.jsp
+++ src/main/webapp/WEB-INF/jsp/web/kakao/intrd/KakaoAllimtalkIntro.jsp
... | ... | @@ -46,7 +46,7 @@ |
| 46 | 46 |
</li> |
| 47 | 47 |
<li> |
| 48 | 48 |
<p>2</p> |
| 49 |
- <p><span>문자 메시지 대비</span> 75% 이상 저렴</p> |
|
| 49 |
+ <p><span>문자 메시지 대비</span> 65% 이상 저렴</p> |
|
| 50 | 50 |
</li> |
| 51 | 51 |
<li> |
| 52 | 52 |
<p>3</p> |
... | ... | @@ -91,11 +91,11 @@ |
| 91 | 91 |
<p class="name">알림톡</p> |
| 92 | 92 |
<div class="icon"> |
| 93 | 93 |
<img src="/publish/images/kakao_intro_cont/kakao.jpg.jpg" alt="카카오"> |
| 94 |
- <p class="price">6.5원</p> |
|
| 94 |
+ <p class="price">6.9원</p> |
|
| 95 | 95 |
</div> |
| 96 | 96 |
</div> |
| 97 | 97 |
<div class="text"> |
| 98 |
- <p>문자 대비 <span>75% 저렴</span></p> |
|
| 98 |
+ <p>문자 대비 <span>65% 저렴</span></p> |
|
| 99 | 99 |
</div> |
| 100 | 100 |
</div> |
| 101 | 101 |
<div class="fight-line"></div> |
--- src/main/webapp/WEB-INF/jsp/web/kakao/msgdata/at/KakaoAlimtalkMsgDataView.jsp
+++ src/main/webapp/WEB-INF/jsp/web/kakao/msgdata/at/KakaoAlimtalkMsgDataView.jsp
... | ... | @@ -434,11 +434,38 @@ |
| 434 | 434 |
|
| 435 | 435 |
} |
| 436 | 436 |
|
| 437 |
+function checkConf() {
|
|
| 438 |
+ var confCheck = false; |
|
| 439 |
+ |
|
| 440 |
+ $.ajax({
|
|
| 441 |
+ type: "POST", |
|
| 442 |
+ url: "/web/mjon/conf/selectMjonMsgUseConfAjax.do", |
|
| 443 |
+ data: {},
|
|
| 444 |
+ dataType:'json', |
|
| 445 |
+ async: false, |
|
| 446 |
+ success: function (returnData, status) {
|
|
| 447 |
+ if(returnData.result == "fail") {
|
|
| 448 |
+ console.log(returnData.message); |
|
| 449 |
+ }else if(returnData.result == "success"){
|
|
| 450 |
+ confCheck = true; |
|
| 451 |
+ } |
|
| 452 |
+ } |
|
| 453 |
+ ,error: function (e) {console.log("ERROR : ", e); }
|
|
| 454 |
+ }); |
|
| 455 |
+ |
|
| 456 |
+ return confCheck; |
|
| 457 |
+} |
|
| 458 |
+ |
|
| 437 | 459 |
/* |
| 438 | 460 |
* 등록된 발신 탬플릿 카카오톡 전송 |
| 439 | 461 |
*/ |
| 440 | 462 |
function sendTemplateInfo(){
|
| 441 | 463 |
|
| 464 |
+ if(!checkConf()){ //문자온 conf-check
|
|
| 465 |
+ alert("현재 알림톡 발송하기 기능 점검 중입니다.\n\n1분 후 다시 시도해주세요.");
|
|
| 466 |
+ return false; |
|
| 467 |
+ } |
|
| 468 |
+ |
|
| 442 | 469 |
if(!usrDeptChk()){
|
| 443 | 470 |
return false; |
| 444 | 471 |
} |
... | ... | @@ -1055,6 +1082,8 @@ |
| 1055 | 1082 |
<input type="hidden" id="callToList" name="callToList" value=""> <!--완 받는사람 리스트--> |
| 1056 | 1083 |
<input type="hidden" id="varNmList" name="varNmList" value=""> <!--완 변수 이름 리스트--> |
| 1057 | 1084 |
<input type="hidden" id="varValList" name="varValList" value=""> <!--완 변수 리스트--> |
| 1085 |
+ |
|
| 1086 |
+ <input type="hidden" id="atSmishingYn" name="atSmishingYn" value="${atSmishingYn}"> <!--알림톡 스미싱 여부-->
|
|
| 1058 | 1087 |
</form> |
| 1059 | 1088 |
|
| 1060 | 1089 |
<form id="excelForm" name="excelForm" action="<c:url value='/web/mjon/alimtalk/kakaoApiNotityTalkSampleExcelDownload.do'/>"> |
--- src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp
+++ src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp
... | ... | @@ -1074,7 +1074,7 @@ |
| 1074 | 1074 |
<div class="layer_popup pointPop"> |
| 1075 | 1075 |
<div class="layer_popup_cont"> |
| 1076 | 1076 |
<a href="/web/mjon/alimtalk/kakaoAlimtalkMsgDataView.do" title="알림톡 링크 이동"> |
| 1077 |
- <img src="/publish/images/main/popup_allimtalk_230523.jpg" alt="문자 ON 문자온 알림톡, 대한민국 최저가 선언! 조건없이 무조건 6.9원! 기업전용 / 1,000자 이하 텍스트&이미지 / 문자 대비 75% 저렴 카카오 '알림톡' 서비스 오픈! 알림톡 바로가기"> |
|
| 1077 |
+ <img src="/publish/images/main/popup_allimtalk_230712.jpg" alt="문자 ON 문자온 알림톡, 대한민국 최저가 선언! 조건없이 무조건 6.9원! 기업전용 / 1,000자 이하 텍스트&이미지 / 문자 대비 65% 저렴 카카오 '알림톡' 서비스 오픈! 알림톡 바로가기"> |
|
| 1078 | 1078 |
</a> |
| 1079 | 1079 |
</div> |
| 1080 | 1080 |
<div class="popup_btm"> |
... | ... | @@ -1169,16 +1169,16 @@ |
| 1169 | 1169 |
<div class="swiper-container visual_swiper"> |
| 1170 | 1170 |
<div class="swiper-wrapper" id="mainSwiperWrapperArea"> |
| 1171 | 1171 |
<div class="swiper-slide"> |
| 1172 |
- <div class="slideImg"><img src="/publish/images/main/f_visual_06_20230523.jpg" alt="문자온, 카카오 '알림톡' 서비스 오픈! 문자온 알림톡, 대한민국 최저가 선언! 조건없이 무조건 6.9원! 카카오톡 채널아이디 추가를 하지 않은 이용자에게도 카카오톡 메시지 발송이 가능한 서비스! 알림톡 바로가기 알림톡 도착 kakao 문자온에서 알림톡이 도착하였습니다! 기업전용/1,000자 이하 텍스트 & 이미지/문자 대비 75% 저렴" usemap="#allimtalk-map"></div> |
|
| 1172 |
+ <div class="slideImg"><img src="/publish/images/main/f_visual_06_20230712.jpg" alt="문자온, 카카오 '알림톡' 서비스 오픈! 문자온 알림톡, 대한민국 최저가 선언! 조건없이 무조건 6.9원! 카카오톡 채널아이디 추가를 하지 않은 이용자에게도 카카오톡 메시지 발송이 가능한 서비스! 알림톡 바로가기 알림톡 도착 kakao 문자온에서 알림톡이 도착하였습니다! 기업전용/1,000자 이하 텍스트 & 이미지/문자 대비 65% 저렴" usemap="#allimtalk-map"></div> |
|
| 1173 | 1173 |
</div> |
| 1174 | 1174 |
<div class="swiper-slide"> |
| 1175 |
- <div class="slideImg"><img src="/publish/images/main/f_visual_01_20230621.jpg" alt="문자는 이제, 문자온! 단 한번, 국내 최저가! 인생 최저가! 첫결제 단문 7.5원 장문 32원 그림 59원 복날이닭 삼계탕 드시고 건강한 여름 보내세요 Summer 떠나요 힐링여행" usemap="#image-map" /></div> |
|
| 1175 |
+ <div class="slideImg"><img src="/publish/images/main/f_visual_01_20230706.jpg" alt="문자는 이제, 문자온! 단 한번, 국내 최저가! 인생 최저가! 첫결제 단문 7.5원 장문 32원 그림 59원 제헌절 7月17日 제헌절 대한민국 헌법공포 기념 국경일" usemap="#image-map" /></div> |
|
| 1176 | 1176 |
</div> |
| 1177 | 1177 |
<div class="swiper-slide"> |
| 1178 | 1178 |
<div class="slideImg"><img src="/publish/images/main/f_visual_02_20221116.jpg" alt="문자도 보내고! 현금도 챙기는! 문자온만의 특별한 혜택! 결제금액의 2% 포인트 추가 적립! 포인트 1만점 이상 적립 시 현금페이백" /></div> |
| 1179 | 1179 |
</div> |
| 1180 | 1180 |
<div class="swiper-slide"> |
| 1181 |
- <div class="slideImg"><img src="/publish/images/main/f_visual_03_20230621.jpg" alt="다른 사이트에는 없다! 오직 문자온에만 있다! 최고의 디자이너가 직접 제작하는 그림문자 맞춤제작을 통해 나만의 문자를 디자인 해보세요 해수욕장 숙박권 Summer 썸머축제 이벤트 안내 미리 예매만 해도 숙박권 70% 할인!! 엠제이여행사에서 해수욕장 숙박권을 예매하신 고객분들에게 최고급 호텔 숙박권을 무료로 드립니다 70% 할인 복날이닭 할인받자! 3만원할인 ₩12,900 마지막 복날 마지막 찬스 할인받고 복날 치킨 즐기세요! DCCHANCE 8.11(목) - 12(금) 단 2일! 고소하고 시원하게 콩국수 이以냉冷치治열熱 시원한 여름시즌메뉴로 무더위를 시원하게 극복하세요. 매콤하고 시원하게 열무말이 국수" /></div> |
|
| 1181 |
+ <div class="slideImg"><img src="/publish/images/main/f_visual_03_20230706.jpg" alt="다른 사이트에는 없다! 오직 문자온에만 있다! 최고의 디자이너가 직접 제작하는 그림문자 맞춤제작을 통해 나만의 문자를 디자인 해보세요 LOGO 제헌절 퀴즈 이벤트 이벤트 기간 2099년 7월 1일 ~ 7월 17일 7월 17일은 제헌절! 퀴즈풀고 경품받기 헌법 제1조 제2항 대한민국 주권은 ○○에게 있고 모든권력은 ○○으로부터 나온다. 이벤트 게시글에 댓글로 남겨주시면 정답을 맞추신 분께는 추첨을 통해 경품을 보내드려요! 기간 : 07.07 ~ 07.17 LOGO 7월 17일 제헌절 제헌절 이벤트 제한절에 태극기를 게양하신 사진 또는 영상을 개인 SNS에 업로드 후 페이스북 이벤트 글에 링크와 함께 댓글을 남겨주세요" /></div> |
|
| 1182 | 1182 |
</div> |
| 1183 | 1183 |
<div class="swiper-slide"> |
| 1184 | 1184 |
<div class="slideImg"><img src="/publish/images/main/f_visual_04_20221116.jpg" alt="문자는 이제, 문자온! 선택은 역시 문자온! 문자사이트 선택의 5가지 기준 1. 가격, 속도, 성능, 기능, 보안이 보장되는가? 2. 결제, 정산, 계산서 발행 등 업무가 자동화 되어 있고 편리한가? 3. 최신 IT 기술과 트렌드가 반영되어 있는가? 4. 회원가입 및 발신번호 인증이 쉽고 빠르며, 대량문자를 전송하기에 사용이 편리한가? 5. 매일 문자샘플이 업데이트 되고, CS 및 기술응대가 실시간적으로 이루어지는가?" /></div> |
--- src/main/webapp/WEB-INF/jsp/web/pay/PayListAllAjax.jsp
+++ src/main/webapp/WEB-INF/jsp/web/pay/PayListAllAjax.jsp
... | ... | @@ -343,7 +343,13 @@ |
| 343 | 343 |
</table> |
| 344 | 344 |
<div class="excel_middle"> |
| 345 | 345 |
<div class="select_btnWrap clearfix"> |
| 346 |
- <div class="add_text2">※ 요금 결제내역은 결제일을 기준으로 최대 6개월까지만 조회 가능합니다.</div> |
|
| 346 |
+ <div class="add_text2" style="line-height: 1.2em;"> |
|
| 347 |
+ ※ 요금 결제내역은 결제일을 기준으로 최대 6개월까지만 조회가능합니다. |
|
| 348 |
+ <!-- |
|
| 349 |
+ <br /> |
|
| 350 |
+ ※ 간편결제 영수증은 결제하신 서비스를 통해 제공됩니다. |
|
| 351 |
+ --> |
|
| 352 |
+ </div> |
|
| 347 | 353 |
<div> |
| 348 | 354 |
<button type="button" class="excel_btn" onclick="javascript:payExcelDownload();"> |
| 349 | 355 |
<i class="downroad"></i>엑셀 다운로드 |
... | ... | @@ -514,7 +520,7 @@ |
| 514 | 520 |
<c:if test="${result.rcptType eq '0'}">
|
| 515 | 521 |
<p class="fwRg c_002c9a">간이영수증 발행완료</p> |
| 516 | 522 |
</c:if> |
| 517 |
- <c:if test="${result.payMethod == 'CARD' || result.payMethod == 'SPAY'}">
|
|
| 523 |
+ <c:if test="${result.payMethod == 'CARD'}">
|
|
| 518 | 524 |
<button type="button" class="btnType btnType20" onclick="fnPrintReceipt('<c:out value="${result.tid}"/>', '<c:out value="${result.pgCode}"/>', '<c:out value="${result.svcId}"/>', '<c:out value="${result.mrctTrdNo}"/>', '<c:out value="${result.trdNo}"/>', '<c:out value="${result.regDate}"/>'); return false;">카드전표</button>
|
| 519 | 525 |
</c:if> |
| 520 | 526 |
</c:if> |
--- src/main/webapp/WEB-INF/jsp/web/pay/PayViewV2.jsp
+++ src/main/webapp/WEB-INF/jsp/web/pay/PayViewV2.jsp
... | ... | @@ -6,6 +6,10 @@ |
| 6 | 6 |
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> |
| 7 | 7 |
<%@ taglib prefix="ec" uri="/WEB-INF/tld/ecnet_tld.tld"%> |
| 8 | 8 |
|
| 9 |
+<style> |
|
| 10 |
+ .charg_cont .area_tab li{ width: calc((100% - 80px)/5);}
|
|
| 11 |
+</style> |
|
| 12 |
+ |
|
| 9 | 13 |
<!-- KG 모빌리언스 --> |
| 10 | 14 |
<script src="https://mup.mobilians.co.kr/js/ext/ext_inc_comm.js"></script> |
| 11 | 15 |
<script type="text/javascript" src="<c:url value='/js/MJUtill.js'/>"></script> |
... | ... | @@ -639,7 +643,7 @@ |
| 639 | 643 |
<div> |
| 640 | 644 |
<p class="tab_tit">충전수단 선택</p> |
| 641 | 645 |
<ul class="area_tab"> |
| 642 |
- <li class="btn_charge0 btn_tab active"><button type="button" onclick="TabTypePay(this,'0');"><i></i>간편결제</button></li> |
|
| 646 |
+ <li class="btn_charge_simple btn_tab active"><button type="button" onclick="TabTypePay(this,'0');"><i></i>간편결제</button></li> |
|
| 643 | 647 |
<li class="btn_charge1 btn_tab"><button type="button" onclick="TabTypePay(this,'1');"><i></i>신용카드</button></li> |
| 644 | 648 |
<li class="btn_charge2 btn_tab"><button type="button" onclick="TabTypePay(this,'2');" id="btnDdedicatedAccount"><i></i>전용계좌</button></li> |
| 645 | 649 |
<!-- <li class="btn_charge2 btn_tab"><button type="button" onclick="TabTypePay(this,'3');"><i></i>무통장입금</button></li> --> |
--- src/main/webapp/publish/css/common.css
+++ src/main/webapp/publish/css/common.css
... | ... | @@ -99,6 +99,20 @@ |
| 99 | 99 |
.login2 .login_info .login2_name p {color: #222; font-weight: 400; vertical-align: top; font-weight: 500; height: 16px; white-space:nowrap;}
|
| 100 | 100 |
.login2 .login_info .login2_name span {width: 61px;padding:0 10px 0 0;margin: 0 0 0 -5px;}
|
| 101 | 101 |
.login2 .login_info i {background-image: url(/publish/images/mypageIcon2.png);width: 34px;height: 34px;margin-right: 5px;}
|
| 102 |
+/*등급별 아이콘*/ |
|
| 103 |
+.login2 .login_info i.vvip{background-image: url(/publish/images/level/level_icon/vvip_icon.png);}
|
|
| 104 |
+.login2 .login_info i.vip{background-image: url(/publish/images/level/level_icon/vip_icon.png);}
|
|
| 105 |
+.login2 .login_info i.gold{background-image: url(/publish/images/level/level_icon/gold_icon.png);}
|
|
| 106 |
+.login2 .login_info i.sliver{background-image: url(/publish/images/level/level_icon/sliver_icon.png);}
|
|
| 107 |
+.login2 .login_info i.black{background-image: url(/publish/images/level/level_icon/black_icon.png);}
|
|
| 108 |
+.login2 .login_info i.red{background-image: url(/publish/images/level/level_icon/red_icon.png);}
|
|
| 109 |
+.login2 .login_info i.purple{background-image: url(/publish/images/level/level_icon/purple_icon.png);}
|
|
| 110 |
+.login2 .login_info i.blue{background-image: url(/publish/images/level/level_icon/blue_icon.png);}
|
|
| 111 |
+.login2 .login_info i.orange{background-image: url(/publish/images/level/level_icon/orange_icon.png);}
|
|
| 112 |
+.login2 .login_info i.green{background-image: url(/publish/images/level/level_icon/green_icon.png);}
|
|
| 113 |
+.login2 .login_info i.yellow{background-image: url(/publish/images/level/level_icon/yellow_icon.png);}
|
|
| 114 |
+.login2 .login_info i.white{background-image: url(/publish/images/level/level_icon/white_icon.png);}
|
|
| 115 |
+/*등급별 아이콘 끝*/ |
|
| 102 | 116 |
.login2 .login_info button {margin-right: 2px;}
|
| 103 | 117 |
.login2 .login_pay {display:flex;}
|
| 104 | 118 |
.login2 .check_money p span, .login2 .point p span {padding-left: 4px;}
|
... | ... | @@ -220,6 +234,7 @@ |
| 220 | 234 |
.quickMenu .quickMenuIn li i.quick9 {background-image: url(/publish/images/quick9.png);width: 24px; height:20px;}
|
| 221 | 235 |
.quickMenu .quickMenuIn li i.quick10 {background-image: url(/publish/images/quick10.png);width: 21px; height:20px;}
|
| 222 | 236 |
.quickMenu .quickMenuIn li i.quick11 {background-image: url(/publish/images/quick11.png);width: 20px; height:20px;}
|
| 237 |
+.quickMenu .quickMenuIn li i.quick12 {background-image: url(/publish/images/level/quick12.png);width: 20px; height:20px;}
|
|
| 223 | 238 |
.quickMenu .quickMenuIn li span {display: block;font-size: 12px;color: #555;padding-top: 8px;}
|
| 224 | 239 |
.quickMenu .goTop {background-color: #929599;color: #fff;width: 90px;padding: 10px 0;border-radius: 0 0 8px 8px;font-size: 20px;}
|
| 225 | 240 |
.quickMenu .goTop i {background-image: url(/publish/images/goTop.png);width: 12px;height: 10px;margin-left: 5px;margin-bottom: 5px;}
|
... | ... | @@ -234,6 +249,7 @@ |
| 234 | 249 |
.quickMenu .quickMenuIn li:hover i.quick9 {background-image: url(/publish/images/quick9_hover.png);width: 24px; height:20px;}
|
| 235 | 250 |
.quickMenu .quickMenuIn li:hover i.quick10 {background-image: url(/publish/images/quick10_hover.png);width: 21px; height:20px;}
|
| 236 | 251 |
.quickMenu .quickMenuIn li:hover i.quick11 {background-image: url(/publish/images/quick11_hover.png);width: 20px; height:20px;}
|
| 252 |
+.quickMenu .quickMenuIn li:hover i.quick12 {background-image: url(/publish/images/level/quick12_hover.png);width: 20px; height:20px;}
|
|
| 237 | 253 |
.quickMenu .quickMenuIn li:hover span {color: #002c9a;font-weight: 500;}
|
| 238 | 254 |
.quickMenu .quick_kakaobtn {position:absolute;right:0;bottom:-100px;width:90px;height:90px;font-size:0;text-indent:-9999em;background:url(/publish/images/content/icon_quick_kakao.png) no-repeat left top;z-index:15;}
|
| 239 | 255 |
.quickMenu .quick_kakaobtn a {display:block;width:100%;height:100%;}
|
--- src/main/webapp/publish/css/content.css
+++ src/main/webapp/publish/css/content.css
... | ... | @@ -90,7 +90,7 @@ |
| 90 | 90 |
/* tabTpye1 */ |
| 91 | 91 |
.tabType1 {background-color: #fff;width: 100%;border-radius: 10px; display: flex;text-align: center;margin-bottom: 20px;border:2px solid #46484a;}
|
| 92 | 92 |
.tabType1 li {flex-basis: calc(100%/2); position: relative;}
|
| 93 |
-.tabType1 li button {width: 100%;padding: 13px 0;font-size: 18px;position:relative;z-index:1;}
|
|
| 93 |
+.tabType1 li button {width: 100%;padding: 13px 0;font-size: 16px;position:relative;z-index:1;}
|
|
| 94 | 94 |
.tabType1 li.active {background-color: #46484a;}
|
| 95 | 95 |
.tabType1 li.active:after {content:'';position:absolute;left:-1px;top:-1px;width:100%;height:100%;border:1px solid #46484a;}
|
| 96 | 96 |
.tabType1 li.active button {color: #fff;border:1px solid #46484a;background-color: #46484a;}
|
... | ... | @@ -427,7 +427,7 @@ |
| 427 | 427 |
.tType1 tbody tr th.billingAmount button.cal_btn {position: absolute;right: 0; top: 50%;transform: translateY(-50%);background-color: #fbc72b;width: 88px;height: 32px;border-radius: 5px;}
|
| 428 | 428 |
.tType1 tbody tr th.billingAmount button.cal_btn:hover {box-shadow: 0px 0px 5px 3px rgba(0,0,0,0.12);}
|
| 429 | 429 |
.tType1 tbody tr th.billingAmount button.cal_btn i {background-image: url(/publish/images/content/calIcon.png);width: 12px;height: 16px;margin: 0 3px 2px 0;}
|
| 430 |
-.tType1 tbody tr th.billingAmount .pay_type {background-color: #fff; border-radius: 5px; height: 60px; padding: 12px 13px; box-sizing: border-box;}
|
|
| 430 |
+.tType1 tbody tr th.billingAmount .pay_type {background-color: #fff; border-radius: 5px 5px 0 0; height: 60px; padding: 12px 13px; box-sizing: border-box;}
|
|
| 431 | 431 |
.tType1 tbody tr th.billingAmount .pay_type button.btn_event_cash{width: 100px;}
|
| 432 | 432 |
.tType1 tbody tr th.billingAmount .pay_type:last-child {margin-top: 10px;}
|
| 433 | 433 |
.tType1 tbody tr th.billingAmount .pay_type>div:first-child {float: left;margin:0 0 0 5px;}
|
... | ... | @@ -447,6 +447,21 @@ |
| 447 | 447 |
.tType1 tbody select.sel_number {width: 340px; height: 40px; padding: 0 20px; background-color: #f2f2f2;border-radius: 5px; border: 0;color: #002c9a;font-weight: 400;font-size: 16px;background-image: url(/publish/images/select_search.png); background-repeat: no-repeat; background-position: 94% center;}
|
| 448 | 448 |
.tType1 tbody input[type="text"]::placeholder {color: #a6a6a6;}
|
| 449 | 449 |
.tType1 tbody input:disabled {background-color: #dedede;}
|
| 450 |
+ |
|
| 451 |
+/*발송금액 아래 등급별 가격안내 추가*/ |
|
| 452 |
+.my_price_wrap .center-line{width: 96%; height: 1px; background-color: #e5e5e5; margin: 0 auto;}
|
|
| 453 |
+.my_price_wrap{letter-spacing: -0.5px; width: calc(100% - 100px); background-color: #fff; border-radius: 0 0 5px 5px; width: 100%;}
|
|
| 454 |
+.my_price_wrap ul{display: flex; width: calc(100% - 20px); border-bottom: 1px dashed #d5d5d5; margin: 0 auto; padding: 15px 0px 15px 5px; align-items: center; flex-wrap: wrap; box-sizing: border-box;}
|
|
| 455 |
+.my_price_wrap ul:last-child{border: 0; align-items: flex-start;}
|
|
| 456 |
+.my_price_wrap ul:first-child li:last-child{margin: 0; padding: 0}
|
|
| 457 |
+.my_price_wrap .title{font-size: 17px; font-weight: 400; color: #222; margin-top: 1px;}
|
|
| 458 |
+.my_price_wrap .title span{font-size: 15px;}
|
|
| 459 |
+.my_price_wrap .title img{margin: 0 8px 0 0; vertical-align: top;}
|
|
| 460 |
+.my_price_wrap .type{border: 1px solid #46484a; border-radius: 3px; margin-right: 3px; color: #46484a; padding: 0 4px 1px 4px;}
|
|
| 461 |
+.my_price_wrap .type, .price_line{font-size: 16px; font-weight: 400; color: #555;}
|
|
| 462 |
+.my_price_wrap .price{color: #e40000; font-size: 18px; font-weight: 700;}
|
|
| 463 |
+.my_price_wrap .line{font-size: 14px; color: #ababab;}
|
|
| 464 |
+ |
|
| 450 | 465 |
/*// tType1 */ |
| 451 | 466 |
/*// sub page 반복 */ |
| 452 | 467 |
|
... | ... | @@ -806,7 +821,7 @@ |
| 806 | 821 |
.ext_info li:nth-child(1) i {background-image: url(/publish/images/content/list_view_icon1.png); width: 16px; height: 16px; }
|
| 807 | 822 |
.ext_info li:nth-child(2) i {background-image: url(/publish/images/content/list_view_icon2.png); width: 16px; height: 16px; margin: 0 10px 3px 0;}
|
| 808 | 823 |
.ext_info li:nth-child(3) i {background-image: url(/publish/images/content/hits_icon.png); width: 24px; height: 14px; margin: 0 10px 3px 0; opacity: 0.9;}
|
| 809 |
-.view_wrap .view_cont {padding: 40px 00px; box-sizing: border-box; border-bottom: 1px solid #d5d5d5;}
|
|
| 824 |
+/*.view_wrap .view_cont {padding: 40px 00px; box-sizing: border-box; border-bottom: 1px solid #d5d5d5;}*/
|
|
| 810 | 825 |
.view_wrap .view_cont .cont_in {font-size: 18px; line-height: 1.5; font-weight: 300;}
|
| 811 | 826 |
.view_wrap .view_cont .cont_in .img_cont {text-align: center; margin-bottom: 70px;}
|
| 812 | 827 |
|
... | ... | @@ -916,6 +931,11 @@ |
| 916 | 931 |
.pay_cont .excel_middle {margin: 20px 0 10px 0;}
|
| 917 | 932 |
.pay_cont .excel_middle .selType2 {width: 82px; height: 32px; margin-left: 0;}
|
| 918 | 933 |
.pay_cont .select_btnWrap .add_text2 {font-size: 16px; padding-top: 7px; color: #666; font-weight: 300;}
|
| 934 |
+ |
|
| 935 |
+/*등급 및 누적결제액 확인 버튼 추가*/ |
|
| 936 |
+.pay_cont .excel_middle .level_btn{margin: 0 5px; border: 1px solid #002c9a; color: #002c9a;}
|
|
| 937 |
+.pay_cont .excel_middle .level_btn img{margin-top: -3px;}
|
|
| 938 |
+ |
|
| 919 | 939 |
.pay_cont .excel_middle .print_btn {margin: 0 5px;}
|
| 920 | 940 |
.pay_cont .pay_info {display: flex; justify-content: center; background-color: #efeff0; width: 100%; padding: 16px 0; border-radius: 5px; margin: 20px 0 50px 0; box-sizing: border-box; }
|
| 921 | 941 |
.pay_cont .pay_info p:nth-child(1) {font-size: 18px;}
|
... | ... | @@ -1055,18 +1075,22 @@ |
| 1055 | 1075 |
.charg_cont.current {display: block;}
|
| 1056 | 1076 |
.charg_cont .tab_tit{font-size: 24px; font-weight: bold; color: #222; margin-bottom: 20px; margin-top: 40px;}
|
| 1057 | 1077 |
.charg_cont .area_tab{display: flex; width: 100%; justify-content: space-between;}
|
| 1078 |
+/* 간편결제 오픈 시 |
|
| 1079 |
+.charg_cont .area_tab li{ width: calc((100% - 80px)/5); border: 1px solid #ddd; border-radius: 5px; position: relative; box-sizing: border-box; text-align: center;} */
|
|
| 1058 | 1080 |
.charg_cont .area_tab li{ width: calc((100% - 80px)/4); border: 1px solid #ddd; border-radius: 5px; position: relative; box-sizing: border-box; text-align: center;}
|
| 1059 | 1081 |
.charg_cont .area_tab li button {font-size: 22px; font-weight: 400; width: 100%; height: 100%; padding: 60px 20px 40px 20px;position:relative;z-index:1;}
|
| 1060 | 1082 |
.charg_cont .area_tab li.active {border: 3px solid #fbc72b;}
|
| 1061 | 1083 |
.charg_cont .area_tab li.active::before{background-image: url(/publish/images/content/icon_chargeCheck2.png); background-color: #fbc72b; border: 2px solid #fbc72b;}
|
| 1062 | 1084 |
.charg_cont .area_tab li::before{position: absolute; content: " "; width: 31px; height: 31px; border: 3px solid #ccc; right: 15px; top: 15px; border-radius: 100%; background-image: url(/publish/images/content/icon_chargeCheck1.png); background-repeat: no-repeat; background-position: center 58%;}
|
| 1063 | 1085 |
.charg_cont .area_tab button i{width: 65px; height: 55px; display: block; margin: 0 auto 15px auto; background-position: center;}
|
| 1064 |
-.charg_cont .area_tab .btn_charge1 i{background-image: url(/publish/images/content/icon_charging1.png);}
|
|
| 1065 |
-.charg_cont .area_tab .btn_charge2 i{background-image: url(/publish/images/content/icon_charging2.png);}
|
|
| 1066 |
-.charg_cont .area_tab .btn_charge3 i{background-image: url(/publish/images/content/icon_charging3.png);}
|
|
| 1086 |
+.charg_cont .area_tab .btn_charge_simple i{background-image: url(/publish/images/simple.png);}
|
|
| 1087 |
+.charg_cont .area_tab .btn_charge1 i{background-image: url(/publish/images/content/icon_charging2.png);}
|
|
| 1088 |
+.charg_cont .area_tab .btn_charge2 i{background-image: url(/publish/images/content/icon_charging3.png);}
|
|
| 1067 | 1089 |
.charg_cont .area_tab .btn_charge4 i{background-image: url(/publish/images/content/icon_charging4.png);}
|
| 1068 | 1090 |
.charg_cont .area_tab .btn_charge5 i{background-image: url(/publish/images/content/icon_charging5.png);}
|
| 1069 | 1091 |
.charg_cont .area_tab+.checkbox_wrap{margin-top: 18px; color: #666; font-weight: 300; font-size: 18px; text-align: right; width: 100%;}
|
| 1092 |
+/* 간편결제 오픈 시 |
|
| 1093 |
+.charg_cont .area_tab.type03 li {width:calc(100%/4 - 15px);} */
|
|
| 1070 | 1094 |
.charg_cont .area_tab.type03 li {width:calc(100%/3 - 15px);}
|
| 1071 | 1095 |
.charg_cont .checkbox_wrap input[type="checkbox"], |
| 1072 | 1096 |
.charg_cont .checkbox_wrap input[type="radio"]{display: none;}
|
... | ... | @@ -1143,6 +1167,33 @@ |
| 1143 | 1167 |
.charg_cont .tType1 .box_input.flex input{border: 1px solid #ccc;}
|
| 1144 | 1168 |
.charg_cont .tType1 .box_input.flex input[type="text"] {width: 200px;background-color: #fff;}
|
| 1145 | 1169 |
.charg_cont .tType1 .box_input.flex button{background-color: #002c9a; color: #fff; border: 0; margin-left: 10px;}
|
| 1170 |
+ |
|
| 1171 |
+ |
|
| 1172 |
+/*누적결제액별 등급 및 단간 추가*/ |
|
| 1173 |
+.accrue_price{width: 100%; height: 105px; border-radius: 5px; background-color: #f2f2f2;}
|
|
| 1174 |
+.accrue_price p{font-size: 22px; font-weight: 700; line-height: 105px; margin-left: 53px;}
|
|
| 1175 |
+.accrue_price p span{border-radius: 5px; background-color: #fff; padding: 10px 10px 10px 10px; font-size: 18px; font-weight: 400;}
|
|
| 1176 |
+.accrue_price p span img{margin-right: 5px; margin-top: -5px;}
|
|
| 1177 |
+.accrue_price p span span{padding: 0; font-size: 22px; font-weight: 700; color: #e40000;}
|
|
| 1178 |
+.accrue_level .tType1_title{margin-top: 40px;}
|
|
| 1179 |
+.accrue_level .tType1_title img{margin-top: -5px;}
|
|
| 1180 |
+.accrue_level .tType2{width: 100%; border-top: 1px solid #000; text-align: center;}
|
|
| 1181 |
+.accrue_level .tType2 thead tr{background-color: #f7f7f7; border-bottom: 1px solid #e5e5e5;}
|
|
| 1182 |
+.accrue_level .tType2 thead tr th{height: 46px; font-size: 16px; font-weight: 500; border-right: 1px solid #e5e5e5; vertical-align: middle;}
|
|
| 1183 |
+.accrue_level .tType2 thead tr th:last-child{border-right: 0;}
|
|
| 1184 |
+.accrue_level .tType2 tbody tr{border-bottom: 1px solid #e5e5e5;}
|
|
| 1185 |
+.accrue_level .tType2 tbody tr th{font-size: 16px; font-weight: 500; border-right: 1px solid #e5e5e5; height: 42px; vertical-align: middle;}
|
|
| 1186 |
+.accrue_level .tType2 tbody tr td{font-size: 16px; font-weight: 300; border-right: 1px solid #e5e5e5; vertical-align: middle; line-height: 1.4;}
|
|
| 1187 |
+.accrue_level .tType2 tbody tr td:last-child{border-right: 0;}
|
|
| 1188 |
+.accrue_level .tType2 tbody tr td:last-child>span {font-weight: 400;}
|
|
| 1189 |
+ |
|
| 1190 |
+.accrue_level .tType2_level tbody tr th{font-weight: 300;}
|
|
| 1191 |
+.accrue_level .tType2_level tbody tr .level_price{font-weight: 500;}
|
|
| 1192 |
+.accrue_level .level_first{font-weight: 400; font-size: 18px; color: #666;}
|
|
| 1193 |
+.accrue_level .level span{font-weight: 400; font-size: 18px; color: #666;}
|
|
| 1194 |
+.accrue_level .tType2 .th_second span{font-size: 15px; font-weight: 300;}
|
|
| 1195 |
+.accrue_level .reqTxt4_last{text-indent: -12px; margin: 0px 0px 0px 11px;}
|
|
| 1196 |
+ |
|
| 1146 | 1197 |
/* //결제하기 */ |
| 1147 | 1198 |
|
| 1148 | 1199 |
/* 요금안내/견적내기 */ |
... | ... | @@ -1153,10 +1204,14 @@ |
| 1153 | 1204 |
.fee_cont .tType2 thead tr th{height: 46px; font-size: 16px; font-weight: 500; border-right: 1px solid #e5e5e5; vertical-align: middle;}
|
| 1154 | 1205 |
.fee_cont .tType2 thead tr th:last-child{border-right: 0;}
|
| 1155 | 1206 |
.fee_cont .tType2 tbody tr{border-bottom: 1px solid #e5e5e5;}
|
| 1207 |
+ |
|
| 1156 | 1208 |
.fee_cont .tType2 tbody tr th{font-size: 16px; font-weight: 500; border-right: 1px solid #e5e5e5; height: 50px; vertical-align: middle;}
|
| 1157 | 1209 |
.fee_cont .tType2 tbody tr td{font-size: 16px; font-weight: 300; border-right: 1px solid #e5e5e5; vertical-align: middle; line-height: 1.4;}
|
| 1158 | 1210 |
.fee_cont .tType2 tbody tr td:last-child{border-right: 0;}
|
| 1159 | 1211 |
.fee_cont .tType2 tbody tr td:last-child>span {font-weight: 400;}
|
| 1212 |
+ |
|
| 1213 |
+/*문자(등급별 요금 안내) 테이블 높이 수정*/ |
|
| 1214 |
+.fee_cont .tType2 .level_table th{height: 42px;}
|
|
| 1160 | 1215 |
|
| 1161 | 1216 |
.fee_cont .tType1 select, .fee_cont .tType1 input{border: 0; background-color: #f2f2f2;}
|
| 1162 | 1217 |
.fee_cont .btn_add{float: right;}
|
... | ... | @@ -1189,6 +1244,14 @@ |
| 1189 | 1244 |
.tb_wrap.totalPrice_tb .tType4 tbody td {font-size: 18px; font-weight: 400; color: #222; height: 52px; line-height: 31px; position: relative;}
|
| 1190 | 1245 |
.tb_wrap.totalPrice_tb .tType4 tbody td select {height: 36px; top: 8px; border: 2px solid; }
|
| 1191 | 1246 |
|
| 1247 |
+ |
|
| 1248 |
+/*문자(등급별 요금 안내)*/ |
|
| 1249 |
+.fee_cont .tType2_level tbody tr th{font-weight: 300;}
|
|
| 1250 |
+.fee_cont .tType2_level tbody tr .level_price{font-weight: 500;}
|
|
| 1251 |
+.fee_cont .level_first{font-weight: 400; font-size: 18px; color: #666;}
|
|
| 1252 |
+.fee_cont .level span{font-weight: 400; font-size: 18px; color: #666;}
|
|
| 1253 |
+.fee_cont .tType2 .th_second span{font-size: 15px; font-weight: 300;}
|
|
| 1254 |
+.fee_cont .reqTxt4_last{text-indent: -12px; margin: 0px 0px 0px 11px;}
|
|
| 1192 | 1255 |
/* //요금안내/견적내기 */ |
| 1193 | 1256 |
|
| 1194 | 1257 |
/* 예약관리 */ |
... | ... | @@ -1559,7 +1622,7 @@ |
| 1559 | 1622 |
/* .fax_content .final_wrap .pay_type {border-radius: 5px; height: 60px; padding: 12px 13px; box-sizing: border-box;} */
|
| 1560 | 1623 |
.fax_content .final_wrap .pay_type:last-child {margin-top: 10px;}
|
| 1561 | 1624 |
/* .fax_content .final_wrap .pay_type>div:first-child {float: left;margin:0 0 0 5px; background-color: #fff;} */
|
| 1562 |
-.fax_content .final_wrap .pay_type>div:first-child {display:inline-block;width: calc(100% - 187px); background-color: #fff;padding: 8px 15px; border-radius: 5px;}
|
|
| 1625 |
+.fax_content .final_wrap .pay_type>div:first-child {display:inline-block;width: calc(100% - 187px); background-color: #fff; padding: 8px 15px; border-radius: 5px;}
|
|
| 1563 | 1626 |
.fax_content .final_wrap .pay_type>div .won {display:inline-block;margin:9px 11px 0 -34px;font-size:16px;vertical-align:top;color:#9a9a9a;}
|
| 1564 | 1627 |
.fax_content .final_wrap .pay_type>div:last-child {display:inline-block;max-width: 150px; width: 100%;}
|
| 1565 | 1628 |
.fax_content .final_wrap .pay_type>div:last-child button{width: 100%;}
|
... | ... | @@ -1598,6 +1661,9 @@ |
| 1598 | 1661 |
.fax_content .qmMark:hover+.send_hover_cont{display: block;}
|
| 1599 | 1662 |
.fax_content .qmMark+.send_hover_cont li{text-indent: -9px; margin: 0 0 0 9px;}
|
| 1600 | 1663 |
|
| 1664 |
+ |
|
| 1665 |
+ |
|
| 1666 |
+ |
|
| 1601 | 1667 |
/* 카톡전송 > 알림톡 소개 */ |
| 1602 | 1668 |
.kakao_intro_cont{letter-spacing: -0.5px; /*word-break: keep-all;*/}
|
| 1603 | 1669 |
.kakao_intro_cont .heading h2{letter-spacing: 0;}
|
--- src/main/webapp/publish/css/main.css
+++ src/main/webapp/publish/css/main.css
... | ... | @@ -202,6 +202,9 @@ |
| 202 | 202 |
.btn_custom img{vertical-align: middle; margin-top: -4px; margin-right: 2px;}
|
| 203 | 203 |
.btn_custom:hover {box-shadow: 0px 0px 5px 3px rgba(0,0,0,0.12);}
|
| 204 | 204 |
|
| 205 |
+/*요금안내 top 배너 시작*/ |
|
| 206 |
+.price_top_banner{position: fixed; right: 4%; top: 160px; z-index: 20;}
|
|
| 207 |
+ |
|
| 205 | 208 |
/* media queries */ |
| 206 | 209 |
@media screen and (max-width: 1800px){
|
| 207 | 210 |
/* content2 문자샘플 영역 */ |
--- src/main/webapp/publish/css/mem.css
+++ src/main/webapp/publish/css/mem.css
... | ... | @@ -293,7 +293,7 @@ |
| 293 | 293 |
/* //join4 - 가입완료 */ |
| 294 | 294 |
|
| 295 | 295 |
|
| 296 |
-/* 마이페이지 */ |
|
| 296 |
+ |
|
| 297 | 297 |
|
| 298 | 298 |
/* 메인화면 */ |
| 299 | 299 |
.my_dashboard {margin-top: 40px;}
|
... | ... | @@ -359,6 +359,7 @@ |
| 359 | 359 |
.my_dashboard table tbody tr:last-child td {border-bottom: 1px solid transparent; }
|
| 360 | 360 |
.my_dashboard table tbody tr:last-child td:first-child {border-bottom: 1px solid transparent; border-radius: 0 0 0 5px;}
|
| 361 | 361 |
.my_dashboard table tbody tr:last-child td:last-child {border-bottom: 1px solid transparent; border-radius: 0 0 5px 0 ;}
|
| 362 |
+ |
|
| 362 | 363 |
/* mypage dashboard cont1 */ |
| 363 | 364 |
.my_dashboard .my_dashboard_cont1 {padding: 25px 30px;}
|
| 364 | 365 |
.my_dashboard_cont1>div {display: flex; align-items: center;}
|
... | ... | @@ -367,6 +368,18 @@ |
| 367 | 368 |
.my_dashboard .my_dashboard_cont1 button {font-size: 17px; height: 45px; padding: 0 15px; border: 1px solid #002c9a; border-radius: 5px; margin-left: 15px; color: #002c9a; background-color: #fff; position: relative; right: 5px; top: 3px;}
|
| 368 | 369 |
.my_dashboard_cont1>span {background-color: #fff; height: 43px; padding: 0 30px; border-radius: 21.5px; align-items: center; display: flex; font-weight: 300;}
|
| 369 | 370 |
.my_dashboard_cont1>span>span {font-weight: 500;}
|
| 371 |
+ |
|
| 372 |
+/* mypage dashboard cont1 등급제 기간 추가 - 기간 지나면 이부분 삭제 */ |
|
| 373 |
+.my_dashboard .my_dashboard_cont1 {padding: 25px 30px;}
|
|
| 374 |
+.my_dashboard_cont1>div {display: flex; align-items: center;}
|
|
| 375 |
+.my_dashboard_cont1 p {font-size: 16px; font-weight: 300;}
|
|
| 376 |
+.my_dashboard_cont1 p span {font-size: 24px; font-weight: 600; padding-right: 3px; margin-left: -20px;}
|
|
| 377 |
+.my_dashboard .my_dashboard_cont1 button {font-size: 17px; height: 45px; padding: 0 8px; border: 1px solid #002c9a; border-radius: 5px; margin-left: 15px; color: #002c9a; background-color: #fff; position: relative; right: 5px; top: 3px;}
|
|
| 378 |
+.my_dashboard_cont1>span {background-color: #fff; height: 43px; padding: 0 30px; border-radius: 21.5px; align-items: center; display: flex; font-weight: 300;}
|
|
| 379 |
+.my_dashboard_cont1>span>span {font-weight: 500;}
|
|
| 380 |
+.my_dashboard .my_dashboard_cont1 .level_icon{margin: 0 7px 0 0; display: block; width: 46px; height: 80px; text-align: center; padding: 0; background-color: transparent; border: 0;}
|
|
| 381 |
+.my_dashboard_cont1 .level_icon p{font-size: 14px; font-weight: 400; margin-top: 2px; color: #444;}
|
|
| 382 |
+ |
|
| 370 | 383 |
/* mypage dashboard cont2 */ |
| 371 | 384 |
.my_dashboard .my_dashboard_cont2 {width: 100%; flex-flow: wrap;}
|
| 372 | 385 |
.dashboard_info {display: flex; flex-flow: wrap; width: 100%; justify-content: space-between;}
|
... | ... | @@ -642,6 +655,11 @@ |
| 642 | 655 |
.limited_wrap .limited_button {margin:40px 0;}
|
| 643 | 656 |
.limited_wrap .limited_button .btnType {width:160px;margin:0 3px;}
|
| 644 | 657 |
|
| 658 |
+/* 마이페이지 */ |
|
| 659 |
+/*등급제 아이콘 추가*/ |
|
| 660 |
+ |
|
| 661 |
+ |
|
| 662 |
+ |
|
| 645 | 663 |
|
| 646 | 664 |
/* media queries */ |
| 647 | 665 |
|
... | ... | @@ -652,6 +670,14 @@ |
| 652 | 670 |
.my_dashboard .send_price{width: calc(100% - 340px);}
|
| 653 | 671 |
.send_top .send_price li{letter-spacing: -1px;}
|
| 654 | 672 |
.send_top .send_price .title{padding: 0 4px 0 0;}
|
| 673 |
+ |
|
| 674 |
+ /* mypage dashboard cont1 등급제 기간 추가 - 기간 지나면 이부분 삭제 */ |
|
| 675 |
+ .my_dashboard_cont1 p {font-size: 17px;}
|
|
| 676 |
+ .my_dashboard_cont1 p span {font-size: 22px;}
|
|
| 677 |
+ .my_dashboard .my_dashboard_cont1 button {font-size: 16px; padding: 0 8px; margin: 0 0 0 13px; color: #002c9a;}
|
|
| 678 |
+ .my_dashboard_cont1 .level_icon{margin: 0 22px 0 0;}
|
|
| 679 |
+ .my_dashboard .send_price{margin: 0 -24px 0 0;}
|
|
| 680 |
+ .my_dashboard .send_price .price_title{width: 75px;}
|
|
| 655 | 681 |
} |
| 656 | 682 |
|
| 657 | 683 |
@media only screen and (max-width:1380px){
|
--- src/main/webapp/publish/css/popupLayer.css
+++ src/main/webapp/publish/css/popupLayer.css
... | ... | @@ -1114,6 +1114,15 @@ |
| 1114 | 1114 |
|
| 1115 | 1115 |
/* 결제완료 */ |
| 1116 | 1116 |
|
| 1117 |
+/* 누적결제액 세부내역 팝업 */ |
|
| 1118 |
+.level_popup .popup_heading p span{font-size: 18px; font-weight: 400;}
|
|
| 1119 |
+.level_popup .candidate_table .tb_wrap{min-height: auto;}
|
|
| 1120 |
+.level_popup .candidate_table table tr:first-child{border-top: 0;}
|
|
| 1121 |
+.level_popup .level_tx{margin: -20px 0 3px 0; font-size: 16px; font-weight: 300;}
|
|
| 1122 |
+.level_popup .layer_in .level_title th{ font-size: 15px; font-weight: 400; text-align: center;}
|
|
| 1123 |
+.level_popup .layer_in .level_text td{font-size: 15px; font-weight: 300; text-align: center; height: 40px;}
|
|
| 1124 |
+.level_popup .pagination{margin-top: 20px;}
|
|
| 1125 |
+ |
|
| 1117 | 1126 |
/* ie */ |
| 1118 | 1127 |
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
|
| 1119 | 1128 |
/* 특수문자 */ |
--- src/main/webapp/publish/firstpay_event.html
+++ src/main/webapp/publish/firstpay_event.html
... | ... | @@ -282,388 +282,7 @@ |
| 282 | 282 |
문자온 이벤트 및 혜택을 문자, 카카오톡, 메일로 수신하는 것에 동의합니다.</label></li> |
| 283 | 283 |
</ul> --> |
| 284 | 284 |
</div> |
| 285 |
- <div class="serv_content charg_cont"> |
|
| 286 |
- <div> |
|
| 287 |
- <p class="tab_tit">충전수단 선택</p> |
|
| 288 |
- <ul class="area_tab"> |
|
| 289 |
- <li class="btn_charge1 btn_tab active"><button type="button" |
|
| 290 |
- onclick="TabTypePay(this,'1');"><i></i>신용카드</button></li> |
|
| 291 |
- <li class="btn_charge2 btn_tab"><button type="button" |
|
| 292 |
- onclick="TabTypePay(this,'2');" |
|
| 293 |
- id="btnDdedicatedAccount"><i></i>전용계좌</button></li> |
|
| 294 |
- <!-- <li class="btn_charge2 btn_tab"><button type="button" onclick="TabTypePay(this,'3');"><i></i>무통장입금</button></li> --> |
|
| 295 |
- <li class="btn_charge4 btn_tab"><button type="button" |
|
| 296 |
- onclick="TabTypePay(this,'4');"><i></i>휴대폰결제</button></li> |
|
| 297 |
- <li class="btn_charge5 btn_tab"><button type="button" |
|
| 298 |
- onclick="TabTypePay(this,'5');"><i></i>즉시이체</button></li> |
|
| 299 |
- </ul> |
|
| 300 |
- <div class="checkbox_wrap"><input type="checkbox" id="agree"><label |
|
| 301 |
- for="agree">선택한 수단을 다음 충전 시에도 |
|
| 302 |
- 이용합니다.</label></div> |
|
| 303 |
- |
|
| 304 |
- <!-- 신용카드 --> |
|
| 305 |
- <div class="area_tabcont on" id="tab2_1"> |
|
| 306 |
- <p class="tType1_title"><img |
|
| 307 |
- src="/publish/images/content/icon_charging1_small.png" |
|
| 308 |
- alt=""> 신용카드</p> |
|
| 309 |
- <table class="tType1"> |
|
| 310 |
- <caption></caption> |
|
| 311 |
- <colgroup> |
|
| 312 |
- <col style="width: 100px;"> |
|
| 313 |
- <col style="width: auto;"> |
|
| 314 |
- </colgroup> |
|
| 315 |
- <tbody> |
|
| 316 |
- <tr class="charge_content"> |
|
| 317 |
- <th scope="row">충전금액</th> |
|
| 318 |
- <td class="flex"> |
|
| 319 |
- <select name="tempPrice" id="tempPrice" |
|
| 320 |
- class="list_seType1"> |
|
| 321 |
- <option value="5000">5,000</option> |
|
| 322 |
- <option value="10000">10,000</option> |
|
| 323 |
- <option value="20000">20,000</option> |
|
| 324 |
- <option value="30000">30,000</option> |
|
| 325 |
- <option value="50000" selected>50,000</option> |
|
| 326 |
- <option value="100000">100,000</option> |
|
| 327 |
- <option value="200000">200,000</option> |
|
| 328 |
- <option value="300000">300,000</option> |
|
| 329 |
- <option value="500000">500,000</option> |
|
| 330 |
- <option value="700000">700,000</option> |
|
| 331 |
- <option value="900000">900,000</option> |
|
| 332 |
- <option value="1000000">1,000,000</option> |
|
| 333 |
- <option value="1200000">1,200,000</option> |
|
| 334 |
- <option value="1500000">1,500,000</option> |
|
| 335 |
- <option value="2000000">2,000,000</option> |
|
| 336 |
- <option value="2500000">2,500,000</option> |
|
| 337 |
- <option value="3000000">3,000,000</option> |
|
| 338 |
- </select> |
|
| 339 |
- <!-- <input type="text" numberOnly placeholder="금액을 입력해주세요" name="tempPrice" class="tempPrice" onfocus="this.placeholder=''" onblur="this.placeholder='금액을 입력해주세요'"> |
|
| 340 |
- <p class="input_in">원</p> |
|
| 341 |
- <button type="button" class="btnType1" onclick="setPrice(this , '3000'); return false;">+ 3천원</button> |
|
| 342 |
- <button type="button" onclick="setPrice(this , '5000'); return false;">+ 5천원</button> |
|
| 343 |
- <button type="button" onclick="setPrice(this , '10000'); return false;">+ 1만원</button> |
|
| 344 |
- <button type="button" onclick="setPrice(this , '100000'); return false;">+ 10만원</button> |
|
| 345 |
- <button type="button" onclick="setPrice(this , '1000000'); return false;">+ 100만원</button>--%> |
|
| 346 |
- <p class="input_in">원</p> --> |
|
| 347 |
- <!-- <span class="reqTxt6">※ 최소 3천원 이상부터 결제 가능합니다.</span> --> |
|
| 348 |
- </td> |
|
| 349 |
- </tr> |
|
| 350 |
- <tr> |
|
| 351 |
- <td colspan="2"> |
|
| 352 |
- <div class="amount_wrap"> |
|
| 353 |
- <dl> |
|
| 354 |
- <dt>최종 결제금액 :</dt> |
|
| 355 |
- <dd> |
|
| 356 |
- <ul> |
|
| 357 |
- <li><strong id="supplyPriceStr">5,000</strong>원(공급가액) |
|
| 358 |
- </li> |
|
| 359 |
- <li><span class="plus"></span><strong id="vatPriceStr">500</strong>원(부가세) |
|
| 360 |
- </li> |
|
| 361 |
- <li class="total"><span class="equal"></span><strong id="lastPriceStr">5,500</strong>원(최종금액) |
|
| 362 |
- </li> |
|
| 363 |
- </ul> |
|
| 364 |
- </dd> |
|
| 365 |
- </dl> |
|
| 366 |
- <button type="button" class="btnType" |
|
| 367 |
- onclick="pgOpenerPopup(); return false;">충전하기</button> |
|
| 368 |
- </div> |
|
| 369 |
- </td> |
|
| 370 |
- </tr> |
|
| 371 |
- <tr> |
|
| 372 |
- <td colspan="2"> |
|
| 373 |
- <div class="area_text"> |
|
| 374 |
- <!-- <p><span class="c_222222">- 신용카드 결제가 어려우신 고객께서는 문자온 고객센터(010-8432-9333)를 통해서도 ARS 신용카드 결제를 하실 수 있습니다.</span></p> --> |
|
| 375 |
- <p>- 인터넷 익스플로러 이용 고객께서는 도구-팝업 차단 해제 후 충전이 가능합니다. |
|
| 376 |
- </p> |
|
| 377 |
- <p>- 카드사별 정책상 충전금액 제한이 있을 수 있습니다. 단, ARS 신용카드 |
|
| 378 |
- 결제는 충전금액 제한 없이 이용하실 수 있습니다.</p> |
|
| 379 |
- </div> |
|
| 380 |
- </td> |
|
| 381 |
- </tr> |
|
| 382 |
- </tbody> |
|
| 383 |
- </table> |
|
| 384 |
- </div> |
|
| 385 |
- <!-- //신용카드 --> |
|
| 386 |
- |
|
| 387 |
- <!-- 전용계좌 --> |
|
| 388 |
- <div class="area_tabcont" id="tab2_2"> |
|
| 389 |
- <!-- 신규계좌발급 시 --> |
|
| 390 |
- <p class="tType1_title"><img |
|
| 391 |
- src="/publish/images/content/icon_charging1_small.png" |
|
| 392 |
- alt="계좌 이미"> 전용계좌</p> |
|
| 393 |
- <table class="tType1"> |
|
| 394 |
- <caption></caption> |
|
| 395 |
- <colgroup> |
|
| 396 |
- <col style="width: 65%"> |
|
| 397 |
- <col style="width: 35%"> |
|
| 398 |
- </colgroup> |
|
| 399 |
- <tbody> |
|
| 400 |
- <tr> |
|
| 401 |
- <td> |
|
| 402 |
- <div class="area_text"> |
|
| 403 |
- <c:choose> |
|
| 404 |
- <c:when test="${not empty resultMyList}">
|
|
| 405 |
- <p>입금 즉시 자동 충전되는 나만의 전용계좌 개설(평생 사용가능, |
|
| 406 |
- 5천원 이상 입금 가능)</p> |
|
| 407 |
- </c:when> |
|
| 408 |
- <c:otherwise> |
|
| 409 |
- <p>1. 현재 발급받은 전용계좌가 없습니다.</p> |
|
| 410 |
- <p>2. 입금 즉시 자동 충전되는 나만의 전용계좌 개설(평생 사용가능, |
|
| 411 |
- 5천원 이상 입금 가능)</p> |
|
| 412 |
- </c:otherwise> |
|
| 413 |
- </c:choose> |
|
| 414 |
- |
|
| 415 |
- <!-- <p>3. 발급받은 전용계좌는 3개월 미사용시 자동 해지됩니다.</p> --> |
|
| 416 |
- </div> |
|
| 417 |
- </td> |
|
| 418 |
- <td class="right"> |
|
| 419 |
- <label for="bankCd" class="label">은행선택</label> |
|
| 420 |
- <select name="bankCd" id="bankCd"> |
|
| 421 |
- <option value="">은행선택</option> |
|
| 422 |
- <c:forEach var="result" items="${resultList}"
|
|
| 423 |
- varStatus="status"> |
|
| 424 |
- <option value="${result.bankCd}">
|
|
| 425 |
- ${result.codeNm}</option>
|
|
| 426 |
- </c:forEach> |
|
| 427 |
- </select> |
|
| 428 |
- <p class="input_in" style="margin-right:5px;">원</p> |
|
| 429 |
- <button type="button" |
|
| 430 |
- onclick="fnNewBankAccount(); return false;">신규계좌받기</button> |
|
| 431 |
- </td> |
|
| 432 |
- </tr> |
|
| 433 |
- </tbody> |
|
| 434 |
- </table> |
|
| 435 |
- |
|
| 436 |
- <!-- 기존 계좌있을 시 --> |
|
| 437 |
- <p class="tType1_title"><img |
|
| 438 |
- src="/publish/images/content/icon_charging1_small.png" |
|
| 439 |
- alt="계좌 이미"> 전용계좌</p> |
|
| 440 |
- <table class="tType1"> |
|
| 441 |
- <caption></caption> |
|
| 442 |
- <colgroup> |
|
| 443 |
- <col style="width: 65%"> |
|
| 444 |
- <col style="width: 35%;"> |
|
| 445 |
- </colgroup> |
|
| 446 |
- <tbody> |
|
| 447 |
- <c:choose> |
|
| 448 |
- <c:when test="${not empty resultMyList}">
|
|
| 449 |
- <c:forEach var="result" items="${resultMyList}"
|
|
| 450 |
- varStatus="status"> |
|
| 451 |
- <tr> |
|
| 452 |
- <td> |
|
| 453 |
- <div class="checkbox_wrap"> |
|
| 454 |
- <input type="radio" |
|
| 455 |
- id="chkAccount${status.count}"
|
|
| 456 |
- name="chkAccount" |
|
| 457 |
- value="<c:out value='${result.bankCd}'/>_<c:out value='${result.codeNm}'/>_<c:out value='${result.acctNo}'/>">
|
|
| 458 |
- <label |
|
| 459 |
- for="chkAccount${status.count}"></label>
|
|
| 460 |
- <c:out value='${result.codeNm}' />
|
|
| 461 |
- <c:out value='${result.acctNo}' />
|
|
| 462 |
- </div> |
|
| 463 |
- <div class="account_holder"> |
|
| 464 |
- (예금주 : |
|
| 465 |
- <c:out value="${result.cmfNm}" />)
|
|
| 466 |
- </div> |
|
| 467 |
- </td> |
|
| 468 |
- <td class="right"> |
|
| 469 |
- </td> |
|
| 470 |
- </tr> |
|
| 471 |
- </c:forEach> |
|
| 472 |
- </c:when> |
|
| 473 |
- <c:otherwise> |
|
| 474 |
- <tr> |
|
| 475 |
- <td colspan="2"> |
|
| 476 |
- <div> |
|
| 477 |
- 보유한 전용 계좌가 없습니다. |
|
| 478 |
- </div> |
|
| 479 |
- </td> |
|
| 480 |
- </tr> |
|
| 481 |
- </c:otherwise> |
|
| 482 |
- </c:choose> |
|
| 483 |
- <tr> |
|
| 484 |
- <td colspan="2"> |
|
| 485 |
- <div class="area_text"> |
|
| 486 |
- <p>- 전용계좌는 개설일로부터 <span>3개월 미사용 시 자동 |
|
| 487 |
- 해지</span>됩니다.</p> |
|
| 488 |
- <p>- 전용계좌에 <span>5,000원 이상 입금</span> 시, 연중무휴 |
|
| 489 |
- <span>실시간 자동 충전이</span> 가능합니다.</p> |
|
| 490 |
- <!-- <p>- 예금주 : 문자온</p> --> |
|
| 491 |
- <p>- 계좌번호 문자로 받기(일/3회까지) |
|
| 492 |
- <label for="" class="label">전화번호 입력</label> |
|
| 493 |
- <input type="text" id="callTo" name="callTo" |
|
| 494 |
- maxLength="11" |
|
| 495 |
- placeholder="‘-’ 없이 받으실 휴대폰 번호를 입력해주세요." |
|
| 496 |
- onfocus="this.placeholder=''" |
|
| 497 |
- onblur="this.placeholder='‘-’ 없이 전화번호를 입력해주세요'"> |
|
| 498 |
- <button type="button" |
|
| 499 |
- onclick="fnSmsSend(<c:out value='${resultMsgInfo.sendCnt}'/>); return false;">문자받기</button>
|
|
| 500 |
- </p> |
|
| 501 |
- </div> |
|
| 502 |
- </td> |
|
| 503 |
- </tr> |
|
| 504 |
- </tbody> |
|
| 505 |
- </table> |
|
| 506 |
- </div> |
|
| 507 |
- <!-- //전용계좌 --> |
|
| 508 |
- |
|
| 509 |
- <!-- 휴대폰 --> |
|
| 510 |
- <div class="area_tabcont" id="tab2_4"> |
|
| 511 |
- <p class="tType1_title"><img |
|
| 512 |
- src="/publish/images/content/icon_charging4_small.png" |
|
| 513 |
- alt=""> 휴대폰결제</p> |
|
| 514 |
- <table class="tType1"> |
|
| 515 |
- <caption></caption> |
|
| 516 |
- <colgroup> |
|
| 517 |
- <col style="width: 100px;"> |
|
| 518 |
- <col style="width: auto;"> |
|
| 519 |
- </colgroup> |
|
| 520 |
- <tbody> |
|
| 521 |
- <tr class="charge_content"> |
|
| 522 |
- <th scope="row">충전금액</th> |
|
| 523 |
- <td class="flex"> |
|
| 524 |
- <select name="tempPrice" id="tempPrice" |
|
| 525 |
- class="list_seType1"> |
|
| 526 |
- <option value="5000">5,000</option> |
|
| 527 |
- <option value="10000">10,000</option> |
|
| 528 |
- <option value="20000">20,000</option> |
|
| 529 |
- <option value="30000">30,000</option> |
|
| 530 |
- <option value="50000" selected>50,000</option> |
|
| 531 |
- <option value="100000">100,000</option> |
|
| 532 |
- <option value="150000">150,000</option> |
|
| 533 |
- </select> |
|
| 534 |
- <!-- <input type="text" numberOnly placeholder="금액을 입력해주세요" name="tempPrice" class="tempPrice" onfocus="this.placeholder=''" onblur="this.placeholder='금액을 입력해주세요'"> |
|
| 535 |
- <p class="input_in">원</p> |
|
| 536 |
- <button type="button" class="btnType1" onclick="setPrice(this , '3000'); return false;">+ 3천원</button> |
|
| 537 |
- <button type="button" onclick="setPrice(this , '5000'); return false;">+ 5천원</button> |
|
| 538 |
- <button type="button" onclick="setPrice(this , '10000'); return false;">+ 1만원</button> |
|
| 539 |
- <button type="button" onclick="setPrice(this , '100000'); return false;">+ 10만원</button> |
|
| 540 |
- <button type="button" onclick="setPrice(this , '1000000'); return false;">+ 100만원</button>--%> |
|
| 541 |
- <p class="input_in">원</p> --> |
|
| 542 |
- <!-- <span class="reqTxt6">※ 최소 3천원 이상부터 결제 가능합니다.</span> --> |
|
| 543 |
- </td> |
|
| 544 |
- </tr> |
|
| 545 |
- <tr> |
|
| 546 |
- <td colspan="2"> |
|
| 547 |
- <div class="amount_wrap"> |
|
| 548 |
- <dl> |
|
| 549 |
- <dt>최종 결제금액 :</dt> |
|
| 550 |
- <dd> |
|
| 551 |
- <ul> |
|
| 552 |
- <li><strong id="supplyPriceStr">5,000</strong>원(공급가액) |
|
| 553 |
- </li> |
|
| 554 |
- <li><span class="plus"></span><strong id="vatPriceStr">500</strong>원(부가세) |
|
| 555 |
- </li> |
|
| 556 |
- <li class="total"><span class="equal"></span><strong id="lastPriceStr">5,500</strong>원(최종금액) |
|
| 557 |
- </li> |
|
| 558 |
- </ul> |
|
| 559 |
- </dd> |
|
| 560 |
- </dl> |
|
| 561 |
- <button type="button" class="btnType" |
|
| 562 |
- onclick="pgOpenerPopup(); return false;">충전하기</button> |
|
| 563 |
- </div> |
|
| 564 |
- </td> |
|
| 565 |
- </tr> |
|
| 566 |
- <tr> |
|
| 567 |
- <td colspan="2"> |
|
| 568 |
- <div class="area_text"> |
|
| 569 |
- <p>- 월 30만원 한도 내에서 충전하실 수 있습니다.</p> |
|
| 570 |
- <p>- 휴대폰 소액결제 제한에 관한 사항은 가입하신 통신사를 통해 확인하실 수 |
|
| 571 |
- 있습니다.</p> |
|
| 572 |
- <p>- 인터넷 익스플로러 이용 고객께서는 도구-팝업 차단 해제 후 충전이 가능합니다. |
|
| 573 |
- </p> |
|
| 574 |
- </div> |
|
| 575 |
- </td> |
|
| 576 |
- </tr> |
|
| 577 |
- </tbody> |
|
| 578 |
- </table> |
|
| 579 |
- </div> |
|
| 580 |
- <!-- //휴대폰 --> |
|
| 581 |
- |
|
| 582 |
- <!-- 즉시이체 --> |
|
| 583 |
- <div class="area_tabcont" id="tab2_5"> |
|
| 584 |
- <p class="tType1_title"><img |
|
| 585 |
- src="/publish/images/content/icon_charging5_small.png" |
|
| 586 |
- alt=""> 즉시이체</p> |
|
| 587 |
- <table class="tType1"> |
|
| 588 |
- <caption></caption> |
|
| 589 |
- <colgroup> |
|
| 590 |
- <col style="width: 100px;"> |
|
| 591 |
- <col style="width: auto;"> |
|
| 592 |
- </colgroup> |
|
| 593 |
- <tbody> |
|
| 594 |
- <tr class="charge_content"> |
|
| 595 |
- <th scope="row">충전금액</th> |
|
| 596 |
- <td class="flex"> |
|
| 597 |
- <select name="tempPrice" id="tempPrice" |
|
| 598 |
- class="list_seType1"> |
|
| 599 |
- <option value="5000">5,000</option> |
|
| 600 |
- <option value="10000">10,000</option> |
|
| 601 |
- <option value="20000">20,000</option> |
|
| 602 |
- <option value="30000">30,000</option> |
|
| 603 |
- <option value="50000" selected>50,000</option> |
|
| 604 |
- <option value="100000">100,000</option> |
|
| 605 |
- <option value="200000">200,000</option> |
|
| 606 |
- <option value="300000">300,000</option> |
|
| 607 |
- <option value="500000">500,000</option> |
|
| 608 |
- <option value="700000">700,000</option> |
|
| 609 |
- <option value="900000">900,000</option> |
|
| 610 |
- <option value="1000000">1,000,000</option> |
|
| 611 |
- <option value="1200000">1,200,000</option> |
|
| 612 |
- <option value="1500000">1,500,000</option> |
|
| 613 |
- <option value="2000000">2,000,000</option> |
|
| 614 |
- <option value="2500000">2,500,000</option> |
|
| 615 |
- <option value="3000000">3,000,000</option> |
|
| 616 |
- </select> |
|
| 617 |
- <!-- <input type="text" numberOnly placeholder="금액을 입력해주세요" name="tempPrice" class="tempPrice" onfocus="this.placeholder=''" onblur="this.placeholder='금액을 입력해주세요'"> |
|
| 618 |
- <p class="input_in">원</p> |
|
| 619 |
- <button type="button" class="btnType1" onclick="setPrice(this , '3000'); return false;">+ 3천원</button> |
|
| 620 |
- <button type="button" onclick="setPrice(this , '5000'); return false;">+ 5천원</button> |
|
| 621 |
- <button type="button" onclick="setPrice(this , '10000'); return false;">+ 1만원</button> |
|
| 622 |
- <button type="button" onclick="setPrice(this , '100000'); return false;">+ 10만원</button> |
|
| 623 |
- <button type="button" onclick="setPrice(this , '1000000'); return false;">+ 100만원</button>--%> |
|
| 624 |
- <p class="input_in">원</p> --> |
|
| 625 |
- <!-- <span class="reqTxt6">※ 최소 3천원 이상부터 결제 가능합니다.</span> --> |
|
| 626 |
- </td> |
|
| 627 |
- </tr> |
|
| 628 |
- <tr> |
|
| 629 |
- <td colspan="2"> |
|
| 630 |
- <div class="amount_wrap"> |
|
| 631 |
- <dl> |
|
| 632 |
- <dt>최종 결제금액 :</dt> |
|
| 633 |
- <dd> |
|
| 634 |
- <ul> |
|
| 635 |
- <li><strong id="supplyPriceStr">5,000</strong>원(공급가액) |
|
| 636 |
- </li> |
|
| 637 |
- <li><span class="plus"></span><strong id="vatPriceStr">500</strong>원(부가세) |
|
| 638 |
- </li> |
|
| 639 |
- <li class="total"><span class="equal"></span><strong id="lastPriceStr">5,500</strong>원(최종금액) |
|
| 640 |
- </li> |
|
| 641 |
- </ul> |
|
| 642 |
- </dd> |
|
| 643 |
- </dl> |
|
| 644 |
- <button type="button" class="btnType" |
|
| 645 |
- onclick="pgOpenerPopup(); return false;">충전하기</button> |
|
| 646 |
- </div> |
|
| 647 |
- </td> |
|
| 648 |
- </tr> |
|
| 649 |
- <tr> |
|
| 650 |
- <td colspan="2"> |
|
| 651 |
- <div class="area_text"> |
|
| 652 |
- <p>- 나이스페이 결제를 이용하여 인터넷뱅킹처럼 로그인 없이 간단한 정보 입력만으로 |
|
| 653 |
- 실시간 계좌 이체</p> |
|
| 654 |
- <p> (일반결제, 간편결제, 앱결제)를 할 수 있는 간편한 결제 |
|
| 655 |
- 수단입니다.(소득공제 및 지출증빙 가능)</p> |
|
| 656 |
- </div> |
|
| 657 |
- </td> |
|
| 658 |
- </tr> |
|
| 659 |
- </tbody> |
|
| 660 |
- </table> |
|
| 661 |
- </div> |
|
| 662 |
- <!-- //즉시이체 --> |
|
| 663 |
- </div> |
|
| 664 |
- </div> |
|
| 665 | 285 |
</div> |
| 666 |
- |
|
| 667 | 286 |
</div> |
| 668 | 287 |
</div> |
| 669 | 288 |
</div> |
--- src/main/webapp/publish/firstpay_event2.html
+++ src/main/webapp/publish/firstpay_event2.html
... | ... | @@ -284,26 +284,24 @@ |
| 284 | 284 |
<div> |
| 285 | 285 |
<p class="tab_tit">충전수단 선택</p> |
| 286 | 286 |
<ul class="area_tab"> |
| 287 |
- <li class="btn_charge1 btn_tab active"><button type="button" |
|
| 288 |
- onclick="TabTypePay(this,'1');"><i></i>신용카드</button></li> |
|
| 289 |
- <li class="btn_charge2 btn_tab"><button type="button" |
|
| 290 |
- onclick="TabTypePay(this,'2');" |
|
| 291 |
- id="btnDdedicatedAccount"><i></i>전용계좌</button></li> |
|
| 287 |
+ <li class="btn_charge_simple btn_tab active"> |
|
| 288 |
+ <button type="button" onclick="TabTypePay(this,'1');"><i></i>간편결제</button> |
|
| 289 |
+ </li> |
|
| 290 |
+ <li class="btn_charge1 btn_tab"> |
|
| 291 |
+ <button type="button" onclick="TabTypePay(this,'2');"><i></i>신용카드</button> |
|
| 292 |
+ </li> |
|
| 293 |
+ <li class="btn_charge2 btn_tab"> |
|
| 294 |
+ <button type="button" onclick="TabTypePay(this,'3');" id="btnDdedicatedAccount"><i></i>전용계좌</button> |
|
| 295 |
+ </li> |
|
| 292 | 296 |
<!-- <li class="btn_charge2 btn_tab"><button type="button" onclick="TabTypePay(this,'3');"><i></i>무통장입금</button></li> --> |
| 293 |
- <li class="btn_charge4 btn_tab"><button type="button" |
|
| 294 |
- onclick="TabTypePay(this,'4');"><i></i>휴대폰결제</button></li> |
|
| 295 |
- <li class="btn_charge5 btn_tab"><button type="button" |
|
| 296 |
- onclick="TabTypePay(this,'5');"><i></i>즉시이체</button></li> |
|
| 297 |
+ <!-- <li class="btn_charge4 btn_tab"><button type="button" onclick="TabTypePay(this,'4');"><i></i>휴대폰결제</button></li> --> |
|
| 298 |
+ <li class="btn_charge5 btn_tab"><button type="button" onclick="TabTypePay(this,'4');"><i></i>즉시이체</button></li> |
|
| 297 | 299 |
</ul> |
| 298 |
- <div class="checkbox_wrap"><input type="checkbox" id="agree"><label |
|
| 299 |
- for="agree">선택한 수단을 다음 충전 시에도 |
|
| 300 |
- 이용합니다.</label></div> |
|
| 300 |
+ <div class="checkbox_wrap"><input type="checkbox" id="agree"><label for="agree">선택한 수단을 다음 충전 시에도 이용합니다.</label></div> |
|
| 301 | 301 |
|
| 302 |
- <!-- 신용카드 --> |
|
| 302 |
+ <!-- 간편결제 --> |
|
| 303 | 303 |
<div class="area_tabcont on" id="tab2_1"> |
| 304 |
- <p class="tType1_title"><img |
|
| 305 |
- src="/publish/images/content/icon_charging1_small.png" |
|
| 306 |
- alt=""> 신용카드</p> |
|
| 304 |
+ <p class="tType1_title"><img src="/publish/images/simple_small.png" alt="간편결제"> 간편결제</p> |
|
| 307 | 305 |
<table class="tType1"> |
| 308 | 306 |
<caption></caption> |
| 309 | 307 |
<colgroup> |
... | ... | @@ -314,8 +312,7 @@ |
| 314 | 312 |
<tr class="charge_content"> |
| 315 | 313 |
<th scope="row">충전금액</th> |
| 316 | 314 |
<td class="flex"> |
| 317 |
- <select name="tempPrice" id="tempPrice" |
|
| 318 |
- class="list_seType1"> |
|
| 315 |
+ <select name="tempPrice" id="tempPrice" class="list_seType1"> |
|
| 319 | 316 |
<option value="5000">5,000</option> |
| 320 | 317 |
<option value="10000">10,000</option> |
| 321 | 318 |
<option value="20000">20,000</option> |
... | ... | @@ -334,6 +331,7 @@ |
| 334 | 331 |
<option value="2500000">2,500,000</option> |
| 335 | 332 |
<option value="3000000">3,000,000</option> |
| 336 | 333 |
</select> |
| 334 |
+ <p class="input_in">원</p> |
|
| 337 | 335 |
<!-- <input type="text" numberOnly placeholder="금액을 입력해주세요" name="tempPrice" class="tempPrice" onfocus="this.placeholder=''" onblur="this.placeholder='금액을 입력해주세요'"> |
| 338 | 336 |
<p class="input_in">원</p> |
| 339 | 337 |
<button type="button" class="btnType1" onclick="setPrice(this , '3000'); return false;">+ 3천원</button> |
... | ... | @@ -352,11 +350,90 @@ |
| 352 | 350 |
<dt>최종 결제금액 :</dt> |
| 353 | 351 |
<dd> |
| 354 | 352 |
<ul> |
| 355 |
- <li><strong id="supplyPriceStr">5,000</strong>원(공급가액) |
|
| 353 |
+ <li><strong id="supplyPriceStr">50,000</strong>원(공급가액) |
|
| 356 | 354 |
</li> |
| 357 |
- <li><span class="plus"></span><strong id="vatPriceStr">500</strong>원(부가세) |
|
| 355 |
+ <li><span class="plus"></span><strong id="vatPriceStr">5,000</strong>원(부가세) |
|
| 358 | 356 |
</li> |
| 359 |
- <li class="total"><span class="equal"></span><strong id="lastPriceStr">5,500</strong>원(최종금액) |
|
| 357 |
+ <li class="total"><span class="equal"></span><strong id="lastPriceStr">55,000</strong>원(최종금액) |
|
| 358 |
+ </li> |
|
| 359 |
+ </ul> |
|
| 360 |
+ </dd> |
|
| 361 |
+ </dl> |
|
| 362 |
+ <button type="button" class="btnType" |
|
| 363 |
+ onclick="pgOpenerPopup(); return false;">충전하기</button> |
|
| 364 |
+ </div> |
|
| 365 |
+ </td> |
|
| 366 |
+ </tr> |
|
| 367 |
+ <tr> |
|
| 368 |
+ <td colspan="2"> |
|
| 369 |
+ <div class="area_text"> |
|
| 370 |
+ <!-- <p><span class="c_222222">- 신용카드 결제가 어려우신 고객께서는 문자온 고객센터(010-8432-9333)를 통해서도 ARS 신용카드 결제를 하실 수 있습니다.</span></p> --> |
|
| 371 |
+ <p>- 인터넷 익스플로러 이용 고객께서는 도구-팝업 차단 해제 후 충전이 가능합니다.</p> |
|
| 372 |
+ <p>- 결제사별 정책상 충전금액 제한이 있을 수 있습니다.</p> |
|
| 373 |
+ </div> |
|
| 374 |
+ </td> |
|
| 375 |
+ </tr> |
|
| 376 |
+ </tbody> |
|
| 377 |
+ </table> |
|
| 378 |
+ </div> |
|
| 379 |
+ <!-- //간편결제 --> |
|
| 380 |
+ |
|
| 381 |
+ <!-- 신용카드 --> |
|
| 382 |
+ <div class="area_tabcont" id="tab2_2"> |
|
| 383 |
+ <p class="tType1_title"><img src="/publish/images/credit_small.png" alt="신용카드"> 신용카드</p> |
|
| 384 |
+ <table class="tType1"> |
|
| 385 |
+ <caption></caption> |
|
| 386 |
+ <colgroup> |
|
| 387 |
+ <col style="width: 100px;"> |
|
| 388 |
+ <col style="width: auto;"> |
|
| 389 |
+ </colgroup> |
|
| 390 |
+ <tbody> |
|
| 391 |
+ <tr class="charge_content"> |
|
| 392 |
+ <th scope="row">충전금액</th> |
|
| 393 |
+ <td class="flex"> |
|
| 394 |
+ <select name="tempPrice" id="tempPrice" class="list_seType1"> |
|
| 395 |
+ <option value="5000">5,000</option> |
|
| 396 |
+ <option value="10000">10,000</option> |
|
| 397 |
+ <option value="20000">20,000</option> |
|
| 398 |
+ <option value="30000">30,000</option> |
|
| 399 |
+ <option value="50000" selected>50,000</option> |
|
| 400 |
+ <option value="100000">100,000</option> |
|
| 401 |
+ <option value="200000">200,000</option> |
|
| 402 |
+ <option value="300000">300,000</option> |
|
| 403 |
+ <option value="500000">500,000</option> |
|
| 404 |
+ <option value="700000">700,000</option> |
|
| 405 |
+ <option value="900000">900,000</option> |
|
| 406 |
+ <option value="1000000">1,000,000</option> |
|
| 407 |
+ <option value="1200000">1,200,000</option> |
|
| 408 |
+ <option value="1500000">1,500,000</option> |
|
| 409 |
+ <option value="2000000">2,000,000</option> |
|
| 410 |
+ <option value="2500000">2,500,000</option> |
|
| 411 |
+ <option value="3000000">3,000,000</option> |
|
| 412 |
+ </select> |
|
| 413 |
+ <p class="input_in">원</p> |
|
| 414 |
+ <!-- <input type="text" numberOnly placeholder="금액을 입력해주세요" name="tempPrice" class="tempPrice" onfocus="this.placeholder=''" onblur="this.placeholder='금액을 입력해주세요'"> |
|
| 415 |
+ <p class="input_in">원</p> |
|
| 416 |
+ <button type="button" class="btnType1" onclick="setPrice(this , '3000'); return false;">+ 3천원</button> |
|
| 417 |
+ <button type="button" onclick="setPrice(this , '5000'); return false;">+ 5천원</button> |
|
| 418 |
+ <button type="button" onclick="setPrice(this , '10000'); return false;">+ 1만원</button> |
|
| 419 |
+ <button type="button" onclick="setPrice(this , '100000'); return false;">+ 10만원</button> |
|
| 420 |
+ <button type="button" onclick="setPrice(this , '1000000'); return false;">+ 100만원</button>--%> |
|
| 421 |
+ <p class="input_in">원</p> --> |
|
| 422 |
+ <!-- <span class="reqTxt6">※ 최소 3천원 이상부터 결제 가능합니다.</span> --> |
|
| 423 |
+ </td> |
|
| 424 |
+ </tr> |
|
| 425 |
+ <tr> |
|
| 426 |
+ <td colspan="2"> |
|
| 427 |
+ <div class="amount_wrap"> |
|
| 428 |
+ <dl> |
|
| 429 |
+ <dt>최종 결제금액 :</dt> |
|
| 430 |
+ <dd> |
|
| 431 |
+ <ul> |
|
| 432 |
+ <li><strong id="supplyPriceStr">50,000</strong>원(공급가액) |
|
| 433 |
+ </li> |
|
| 434 |
+ <li><span class="plus"></span><strong id="vatPriceStr">5,000</strong>원(부가세) |
|
| 435 |
+ </li> |
|
| 436 |
+ <li class="total"><span class="equal"></span><strong id="lastPriceStr">55,000</strong>원(최종금액) |
|
| 360 | 437 |
</li> |
| 361 | 438 |
</ul> |
| 362 | 439 |
</dd> |
... | ... | @@ -383,11 +460,9 @@ |
| 383 | 460 |
<!-- //신용카드 --> |
| 384 | 461 |
|
| 385 | 462 |
<!-- 전용계좌 --> |
| 386 |
- <div class="area_tabcont" id="tab2_2"> |
|
| 463 |
+ <div class="area_tabcont current" id="tab2_3"> |
|
| 387 | 464 |
<!-- 신규계좌발급 시 --> |
| 388 |
- <p class="tType1_title"><img |
|
| 389 |
- src="/publish/images/content/icon_charging1_small.png" |
|
| 390 |
- alt="계좌 이미"> 전용계좌</p> |
|
| 465 |
+ <p class="tType1_title"><img src="/publish/images/content/icon_charging1_small.png" alt="계좌 이미"> 전용계좌</p> |
|
| 391 | 466 |
<table class="tType1"> |
| 392 | 467 |
<caption></caption> |
| 393 | 468 |
<colgroup> |
... | ... | @@ -398,18 +473,11 @@ |
| 398 | 473 |
<tr> |
| 399 | 474 |
<td> |
| 400 | 475 |
<div class="area_text"> |
| 401 |
- <c:choose> |
|
| 402 |
- <c:when test="${not empty resultMyList}">
|
|
| 403 |
- <p>입금 즉시 자동 충전되는 나만의 전용계좌 개설(평생 사용가능, |
|
| 404 |
- 5천원 이상 입금 가능)</p> |
|
| 405 |
- </c:when> |
|
| 406 |
- <c:otherwise> |
|
| 407 |
- <p>1. 현재 발급받은 전용계좌가 없습니다.</p> |
|
| 408 |
- <p>2. 입금 즉시 자동 충전되는 나만의 전용계좌 개설(평생 사용가능, |
|
| 409 |
- 5천원 이상 입금 가능)</p> |
|
| 410 |
- </c:otherwise> |
|
| 411 |
- </c:choose> |
|
| 412 |
- |
|
| 476 |
+ <div class="area_text"> |
|
| 477 |
+ <p>1. <span>첫결제 이벤트는 최대 50만원까지만 적용이 됩니다.</span></p> |
|
| 478 |
+ <p>2. 현재 발급받은 전용계좌가 없습니다.</p> |
|
| 479 |
+ <p>3. 입금 즉시 자동 충전되는 나만의 전용계좌 개설(평생 사용가능, 5천원 이상 입금 가능)</p> |
|
| 480 |
+ </div> |
|
| 413 | 481 |
<!-- <p>3. 발급받은 전용계좌는 3개월 미사용시 자동 해지됩니다.</p> --> |
| 414 | 482 |
</div> |
| 415 | 483 |
</td> |
... | ... | @@ -417,84 +485,55 @@ |
| 417 | 485 |
<label for="bankCd" class="label">은행선택</label> |
| 418 | 486 |
<select name="bankCd" id="bankCd"> |
| 419 | 487 |
<option value="">은행선택</option> |
| 420 |
- <c:forEach var="result" items="${resultList}"
|
|
| 421 |
- varStatus="status"> |
|
| 422 |
- <option value="${result.bankCd}">
|
|
| 423 |
- ${result.codeNm}</option>
|
|
| 424 |
- </c:forEach> |
|
| 488 |
+ |
|
| 489 |
+ <option value="003">기업은행</option> |
|
| 490 |
+ |
|
| 491 |
+ <option value="004">국민은행</option> |
|
| 492 |
+ |
|
| 493 |
+ <option value="011">농협은행</option> |
|
| 494 |
+ |
|
| 495 |
+ <option value="020">우리은행</option> |
|
| 496 |
+ |
|
| 497 |
+ <option value="081">하나은행</option> |
|
| 498 |
+ |
|
| 499 |
+ <option value="088">신한은행</option> |
|
| 500 |
+ |
|
| 425 | 501 |
</select> |
| 426 | 502 |
<p class="input_in" style="margin-right:5px;">원</p> |
| 427 |
- <button type="button" |
|
| 428 |
- onclick="fnNewBankAccount(); return false;">신규계좌받기</button> |
|
| 503 |
+ <button type="button" onclick="fnNewBankAccount(); return false;">신규계좌받기</button> |
|
| 429 | 504 |
</td> |
| 430 | 505 |
</tr> |
| 431 | 506 |
</tbody> |
| 432 | 507 |
</table> |
| 433 |
- |
|
| 508 |
+ |
|
| 434 | 509 |
<!-- 기존 계좌있을 시 --> |
| 435 |
- <p class="tType1_title"><img |
|
| 436 |
- src="/publish/images/content/icon_charging1_small.png" |
|
| 437 |
- alt="계좌 이미"> 전용계좌</p> |
|
| 510 |
+ <p style="margin-top: 40px;" class="tType1_title"><img src="/publish/images/content/icon_charging1_small.png" alt="계좌 이미"> 전용계좌</p> |
|
| 438 | 511 |
<table class="tType1"> |
| 439 | 512 |
<caption></caption> |
| 440 | 513 |
<colgroup> |
| 441 | 514 |
<col style="width: 65%"> |
| 442 | 515 |
<col style="width: 35%;"> |
| 443 | 516 |
</colgroup> |
| 444 |
- <tbody> |
|
| 445 |
- <c:choose> |
|
| 446 |
- <c:when test="${not empty resultMyList}">
|
|
| 447 |
- <c:forEach var="result" items="${resultMyList}"
|
|
| 448 |
- varStatus="status"> |
|
| 449 |
- <tr> |
|
| 450 |
- <td> |
|
| 451 |
- <div class="checkbox_wrap"> |
|
| 452 |
- <input type="radio" |
|
| 453 |
- id="chkAccount${status.count}"
|
|
| 454 |
- name="chkAccount" |
|
| 455 |
- value="<c:out value='${result.bankCd}'/>_<c:out value='${result.codeNm}'/>_<c:out value='${result.acctNo}'/>">
|
|
| 456 |
- <label |
|
| 457 |
- for="chkAccount${status.count}"></label>
|
|
| 458 |
- <c:out value='${result.codeNm}' />
|
|
| 459 |
- <c:out value='${result.acctNo}' />
|
|
| 460 |
- </div> |
|
| 461 |
- <div class="account_holder"> |
|
| 462 |
- (예금주 : |
|
| 463 |
- <c:out value="${result.cmfNm}" />)
|
|
| 464 |
- </div> |
|
| 465 |
- </td> |
|
| 466 |
- <td class="right"> |
|
| 467 |
- </td> |
|
| 468 |
- </tr> |
|
| 469 |
- </c:forEach> |
|
| 470 |
- </c:when> |
|
| 471 |
- <c:otherwise> |
|
| 472 |
- <tr> |
|
| 473 |
- <td colspan="2"> |
|
| 474 |
- <div> |
|
| 475 |
- 보유한 전용 계좌가 없습니다. |
|
| 476 |
- </div> |
|
| 477 |
- </td> |
|
| 478 |
- </tr> |
|
| 479 |
- </c:otherwise> |
|
| 480 |
- </c:choose> |
|
| 517 |
+ <tbody> |
|
| 518 |
+ <tr> |
|
| 519 |
+ <td colspan="2"> |
|
| 520 |
+ <div> |
|
| 521 |
+ 보유한 전용 계좌가 없습니다. |
|
| 522 |
+ </div> |
|
| 523 |
+ </td> |
|
| 524 |
+ </tr> |
|
| 525 |
+ |
|
| 481 | 526 |
<tr> |
| 482 | 527 |
<td colspan="2"> |
| 483 | 528 |
<div class="area_text"> |
| 484 |
- <p>- 전용계좌는 개설일로부터 <span>3개월 미사용 시 자동 |
|
| 485 |
- 해지</span>됩니다.</p> |
|
| 486 |
- <p>- 전용계좌에 <span>5,000원 이상 입금</span> 시, 연중무휴 |
|
| 487 |
- <span>실시간 자동 충전이</span> 가능합니다.</p> |
|
| 529 |
+ <p>- <span>첫결제 이벤트는 최대 50만원까지만 적용이 됩니다.</span></p> |
|
| 530 |
+ <p>- 전용계좌는 개설일로부터 <span>3개월 미사용 시 자동 해지</span>됩니다.</p> |
|
| 531 |
+ <p>- 전용계좌에 <span>5,000원 이상 입금</span> 시, 연중무휴 <span>실시간 자동 충전이</span> 가능합니다.</p> |
|
| 488 | 532 |
<!-- <p>- 예금주 : 문자온</p> --> |
| 489 |
- <p>- 계좌번호 문자로 받기(일/3회까지) |
|
| 533 |
+ <p>- 계좌번호 문자로 받기(일/3회까지) |
|
| 490 | 534 |
<label for="" class="label">전화번호 입력</label> |
| 491 |
- <input type="text" id="callTo" name="callTo" |
|
| 492 |
- maxLength="11" |
|
| 493 |
- placeholder="‘-’ 없이 받으실 휴대폰 번호를 입력해주세요." |
|
| 494 |
- onfocus="this.placeholder=''" |
|
| 495 |
- onblur="this.placeholder='‘-’ 없이 전화번호를 입력해주세요'"> |
|
| 496 |
- <button type="button" |
|
| 497 |
- onclick="fnSmsSend(<c:out value='${resultMsgInfo.sendCnt}'/>); return false;">문자받기</button>
|
|
| 535 |
+ <input type="text" id="callTo" name="callTo" maxlength="11" placeholder="‘-’ 없이 받으실 휴대폰 번호를 입력해주세요." onfocus="this.placeholder=''" onblur="this.placeholder='‘-’ 없이 전화번호를 입력해주세요'"> |
|
| 536 |
+ <button type="button" onclick="fnSmsSend(); return false;">문자받기</button> |
|
| 498 | 537 |
</p> |
| 499 | 538 |
</div> |
| 500 | 539 |
</td> |
... | ... | @@ -504,7 +543,7 @@ |
| 504 | 543 |
</div> |
| 505 | 544 |
<!-- //전용계좌 --> |
| 506 | 545 |
|
| 507 |
- <!-- 휴대폰 --> |
|
| 546 |
+ <!-- 휴대폰 |
|
| 508 | 547 |
<div class="area_tabcont" id="tab2_4"> |
| 509 | 548 |
<p class="tType1_title"><img |
| 510 | 549 |
src="/publish/images/content/icon_charging4_small.png" |
... | ... | @@ -529,7 +568,7 @@ |
| 529 | 568 |
<option value="100000">100,000</option> |
| 530 | 569 |
<option value="150000">150,000</option> |
| 531 | 570 |
</select> |
| 532 |
- <!-- <input type="text" numberOnly placeholder="금액을 입력해주세요" name="tempPrice" class="tempPrice" onfocus="this.placeholder=''" onblur="this.placeholder='금액을 입력해주세요'"> |
|
| 571 |
+ <input type="text" numberOnly placeholder="금액을 입력해주세요" name="tempPrice" class="tempPrice" onfocus="this.placeholder=''" onblur="this.placeholder='금액을 입력해주세요'"> |
|
| 533 | 572 |
<p class="input_in">원</p> |
| 534 | 573 |
<button type="button" class="btnType1" onclick="setPrice(this , '3000'); return false;">+ 3천원</button> |
| 535 | 574 |
<button type="button" onclick="setPrice(this , '5000'); return false;">+ 5천원</button> |
... | ... | @@ -537,7 +576,7 @@ |
| 537 | 576 |
<button type="button" onclick="setPrice(this , '100000'); return false;">+ 10만원</button> |
| 538 | 577 |
<button type="button" onclick="setPrice(this , '1000000'); return false;">+ 100만원</button>--%> |
| 539 | 578 |
<p class="input_in">원</p> --> |
| 540 |
- <!-- <span class="reqTxt6">※ 최소 3천원 이상부터 결제 가능합니다.</span> --> |
|
| 579 |
+ <!-- <span class="reqTxt6">※ 최소 3천원 이상부터 결제 가능합니다.</span> |
|
| 541 | 580 |
</td> |
| 542 | 581 |
</tr> |
| 543 | 582 |
<tr> |
... | ... | @@ -574,11 +613,11 @@ |
| 574 | 613 |
</tr> |
| 575 | 614 |
</tbody> |
| 576 | 615 |
</table> |
| 577 |
- </div> |
|
| 616 |
+ </div>--> |
|
| 578 | 617 |
<!-- //휴대폰 --> |
| 579 | 618 |
|
| 580 | 619 |
<!-- 즉시이체 --> |
| 581 |
- <div class="area_tabcont" id="tab2_5"> |
|
| 620 |
+ <div class="area_tabcont" id="tab2_4"> |
|
| 582 | 621 |
<p class="tType1_title"><img |
| 583 | 622 |
src="/publish/images/content/icon_charging5_small.png" |
| 584 | 623 |
alt=""> 즉시이체</p> |
... | ... | @@ -612,6 +651,7 @@ |
| 612 | 651 |
<option value="2500000">2,500,000</option> |
| 613 | 652 |
<option value="3000000">3,000,000</option> |
| 614 | 653 |
</select> |
| 654 |
+ <p class="input_in">원</p> |
|
| 615 | 655 |
<!-- <input type="text" numberOnly placeholder="금액을 입력해주세요" name="tempPrice" class="tempPrice" onfocus="this.placeholder=''" onblur="this.placeholder='금액을 입력해주세요'"> |
| 616 | 656 |
<p class="input_in">원</p> |
| 617 | 657 |
<button type="button" class="btnType1" onclick="setPrice(this , '3000'); return false;">+ 3천원</button> |
... | ... | @@ -630,11 +670,11 @@ |
| 630 | 670 |
<dt>최종 결제금액 :</dt> |
| 631 | 671 |
<dd> |
| 632 | 672 |
<ul> |
| 633 |
- <li><strong id="supplyPriceStr">5,000</strong>원(공급가액) |
|
| 673 |
+ <li><strong id="supplyPriceStr">50,000</strong>원(공급가액) |
|
| 634 | 674 |
</li> |
| 635 |
- <li><span class="plus"></span><strong id="vatPriceStr">500</strong>원(부가세) |
|
| 675 |
+ <li><span class="plus"></span><strong id="vatPriceStr">5,000</strong>원(부가세) |
|
| 636 | 676 |
</li> |
| 637 |
- <li class="total"><span class="equal"></span><strong id="lastPriceStr">5,500</strong>원(최종금액) |
|
| 677 |
+ <li class="total"><span class="equal"></span><strong id="lastPriceStr">55,000</strong>원(최종금액) |
|
| 638 | 678 |
</li> |
| 639 | 679 |
</ul> |
| 640 | 680 |
</dd> |
--- src/main/webapp/publish/guide_2022.html
+++ src/main/webapp/publish/guide_2022.html
... | ... | @@ -18,6 +18,15 @@ |
| 18 | 18 |
<!-- <p>***<span class="font1"> (컨텐츠)</span> : 반복적으로 사용 안함</p> |
| 19 | 19 |
<p>***<span class="font2"> (보드)</span> : 반복적으로 사용</p> --> |
| 20 | 20 |
<ul class="page"> |
| 21 |
+ <li><a href="/publish/firstpay_event.html">firstpay_event.html</a>충전수단 선택 내용 삭제</li> |
|
| 22 |
+ <li><a href="/publish/firstpay_event2.html">firstpay_event2.html</a>충전수단 선택 내용 수정 </li> |
|
| 23 |
+ <li><a href="/publish/payment2.html">payment2.html</a>결제관리 > 결제하기 > 충전수단 선택 > 간편결제추가 + 등급별금액&누적결제액별 등급 및 단가(테이블 및 텍스트 추가)</li> |
|
| 24 |
+ <li><a href="/publish/firstpay_event2.html">firstpay_event2.html</a>고객센터 > 이벤트페이지 > 충전수단 선택 내용 추가 </li> |
|
| 25 |
+ <li><a href="/publish/index_2023.html">index_2023.html</a>로그인 바 > 등급별 아이콘 이미지 추가 + 홍길동(개인)으로 이름 변경 (님)자 제거 + 요금안내 페이지 이동 탑 배너 추가 + 퀵메뉴 > 맞춤제작을 요금안내로 변경</li> |
|
| 26 |
+ <li><a href="/publish/mypage_index_2023.html">mypage_index_2023.html</a>마이페이지 > 등급별 아이콘 버튼 추가 + 등급별 아이콘 버튼 클릭 > 팝업추가</li> |
|
| 27 |
+ <li><a href="/publish/payment3.html">payment3.html</a>결제관리 > 요금결제내역 > 간편결제 결제내역 tap추가 + 등급 및 누적결제액 확인 버튼 추가 + 등급 및 누적결제액 확인 버튼 클릭 > 팝업추가</li> |
|
| 28 |
+ <li><a href="/publish/sub1_2023.html">sub1_2023.html</a>문자발송 > 문자전송 > 발송금액 > 나의단가 금액 추가</li> |
|
| 29 |
+ <li><a href="/publish/payment1.html">payment1.html</a>결제관리 > 요금안내/견적안내(테이블 및 텍스트 추가)</li> |
|
| 21 | 30 |
<li><a href="/publish/kakao_allimtalk_intro.html">kakao_allimtalk_intro.html</a>카카오톡 소개</li> |
| 22 | 31 |
<li><a href="/publish/popup_pay_complete.html">popup_pay_complete.html</a>결제완료 팝업</li> |
| 23 | 32 |
<li><a href="/publish/payment4.html">payment4.html</a>요금사용내역(발송내역, 세부내역 타이틀 추가)</li> |
+++ src/main/webapp/publish/images/credit_small.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/accrue.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_btn_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/black_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/blue_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/gold_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/green_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/level_small/black_small_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/level_small/blue_small_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/level_small/gold_small_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/level_small/green_small_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/level_small/orange_small_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/level_small/purple_small_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/level_small/red_small_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/level_small/sliver_small_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/level_small/vip_small_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/level_small/vvip_small_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/level_small/white_small_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/level_small/yellow_small_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/orange_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/purple_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/red_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/sliver_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/vip_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/vvip_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/white_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/level_icon/yellow_icon.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/quick12.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/level/quick12_hover.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/main/f_visual_01_20230706.jpg
| Binary file is not shown |
+++ src/main/webapp/publish/images/main/f_visual_03_20230706.jpg
| Binary file is not shown |
+++ src/main/webapp/publish/images/main/f_visual_06_20230712.jpg
| Binary file is not shown |
+++ src/main/webapp/publish/images/main/popup_allimtalk_230712.jpg
| Binary file is not shown |
+++ src/main/webapp/publish/images/simple.png
| Binary file is not shown |
+++ src/main/webapp/publish/images/simple_small.png
| Binary file is not shown |
--- src/main/webapp/publish/index_2023.html
+++ src/main/webapp/publish/index_2023.html
... | ... | @@ -70,7 +70,16 @@ |
| 70 | 70 |
</div> |
| 71 | 71 |
<!--// skip 메뉴 --> |
| 72 | 72 |
|
| 73 |
- <div class="quickMenu"> |
|
| 73 |
+ <!--// 요금안내 top 배너 시작 --> |
|
| 74 |
+ <img class="price_top_banner" src="/publish/images/level/top_banner.png" alt="최저 8.1원 요금안내" usemap="#topbanner"> |
|
| 75 |
+ <map name="topbanner"> |
|
| 76 |
+ <area shape="poly" coords="45,165,194,164,182,183,155,200,124,208,85,202,63,187,46,167" href="https://www.munjaon.co.kr/web/pay/PayGuide.do" alt=""> |
|
| 77 |
+ </map> |
|
| 78 |
+ <!--// 요금안내 top 배너 끝--> |
|
| 79 |
+ |
|
| 80 |
+ <!--// quick 메뉴 시작 --> |
|
| 81 |
+ <!--quick 메뉴 변경전 |
|
| 82 |
+ <div class="quickMenu"> |
|
| 74 | 83 |
<div> |
| 75 | 84 |
<p class="quick_title">QUICK<br>MENU</p> |
| 76 | 85 |
<p class="quick_title2">QUICK</p> |
... | ... | @@ -115,7 +124,87 @@ |
| 115 | 124 |
<button type="button" class="goTop" title="맨 위로 이동">TOP<i></i></button> |
| 116 | 125 |
</div> |
| 117 | 126 |
</div> |
| 118 |
- <!--// quick 메뉴 --> |
|
| 127 |
+ --> |
|
| 128 |
+ <!--quick 메뉴 변경후 시작--> |
|
| 129 |
+ <div class="quickMenu main"> |
|
| 130 |
+ <div> |
|
| 131 |
+ <p class="quick_title">QUICK<br>MENU</p> |
|
| 132 |
+ <p class="quick_title2">QUICK</p> |
|
| 133 |
+ <ul class="quickMenuIn"> |
|
| 134 |
+ <!-- |
|
| 135 |
+ <li> |
|
| 136 |
+ <a href="#" rel="nosublink"><i class="quick2"></i><span>카톡상담</span></a> |
|
| 137 |
+ <div class="hover_cont">카톡상담</div> |
|
| 138 |
+ </li> |
|
| 139 |
+ <li> |
|
| 140 |
+ <a href="#" rel="nosublink"><i class="quick3"></i><span>원격지원</span></a> |
|
| 141 |
+ <div class="hover_cont">원격지원</div> |
|
| 142 |
+ </li> |
|
| 143 |
+ --> |
|
| 144 |
+ <!-- 맞춤제작 |
|
| 145 |
+ <li> |
|
| 146 |
+ <a href="/web/pay/PayGuide.do" rel="nosublink"><i class="quick4"></i><span>맞춤제작</span></a> |
|
| 147 |
+ <div class="hover_cont">맞춤제작</div> |
|
| 148 |
+ </li> |
|
| 149 |
+ --> |
|
| 150 |
+ <li> |
|
| 151 |
+ <a href="/web/pay/PayGuide.do" rel="nosublink"><i class="quick12"></i><span>요금안내</span></a> |
|
| 152 |
+ <div class="hover_cont">요금안내</div> |
|
| 153 |
+ </li> |
|
| 154 |
+ <li> |
|
| 155 |
+ <a href="/web/mjon/addr/selectAddrList.do" rel="nosublink"><i class="quick10"></i><span>주소록 관리</span></a> |
|
| 156 |
+ <div class="hover_cont">주소록 관리</div> |
|
| 157 |
+ </li> |
|
| 158 |
+ <li> |
|
| 159 |
+ <a href="/web/user/sendNumberManage.do"><i class="quick5"></i><span>발신번호 관리</span></a> |
|
| 160 |
+ <div class="hover_cont">발신번호 관리</div> |
|
| 161 |
+ </li> |
|
| 162 |
+ <li style="margin-top: 1px;"> |
|
| 163 |
+ <a href="/web/mjon/msgdata/excel/selectMsgExcelDataView.do"><i class="quick6"></i><span>엑셀 대량전송</span></a> |
|
| 164 |
+ <div class="hover_cont">엑셀 대량전송</div> |
|
| 165 |
+ </li> |
|
| 166 |
+ <li> |
|
| 167 |
+ <a href="/web/pay/PayGuide.do?tabType=2" rel="nosublink"><i class="quick7"></i><span>견적서</span></a> |
|
| 168 |
+ <div class="hover_cont">견적서</div> |
|
| 169 |
+ </li> |
|
| 170 |
+ <li style="margin-top: 1px;"> |
|
| 171 |
+ <a href="/web/member/pay/PayList.do" rel="nosublink"><i class="quick8"></i><span>결제관리</span></a> |
|
| 172 |
+ <div class="hover_cont">결제관리</div> |
|
| 173 |
+ </li> |
|
| 174 |
+ <!-- |
|
| 175 |
+ <li> |
|
| 176 |
+ <a href="/web/member/pay/BillPub.do" rel="nosublink"><i class="quick9"></i><span>계산서/영수증</span></a> |
|
| 177 |
+ <div class="hover_cont">계산서/영수증</div> |
|
| 178 |
+ </li> |
|
| 179 |
+ --> |
|
| 180 |
+ <li> |
|
| 181 |
+ <a href="/web/member/pay/BillPub.do" rel="nosublink"><i class="quick9"></i><span>세금계산서</span></a> |
|
| 182 |
+ <div class="hover_cont">세금계산서</div> |
|
| 183 |
+ </li> |
|
| 184 |
+ <li class="cscenter"> |
|
| 185 |
+ <a href="/web/cop/bbs/NoticeList.do" rel="nosublink"><i class="quick11"></i><span>고객센터</span></a> |
|
| 186 |
+ <div class="hover_cont"> |
|
| 187 |
+ <div class="title">고객센터</div> |
|
| 188 |
+ <div class="number">010-8432-9333<br>010-2290-4786</div> |
|
| 189 |
+ |
|
| 190 |
+ <ul class="info"> |
|
| 191 |
+ <li>· 월~금 : 09:30 ~ 18:30</li> |
|
| 192 |
+ <li>· 점심시간 : 13:00 ~ 14:00</li> |
|
| 193 |
+ <li>· 토, 일요일 및 법정공휴일 휴무</li> |
|
| 194 |
+ </ul> |
|
| 195 |
+ <div class="cskakao"> |
|
| 196 |
+ <a href="http://pf.kakao.com/_PxoTtb/chat" class="kakao" target="_blank" rel="nosublink">카톡 상담</a> |
|
| 197 |
+ <a href="javascript:void(0);" class="remote" onclick="remotePop('https://939.co.kr/munjaon/');" rel="nosublink">원격지원</a>
|
|
| 198 |
+ </div> |
|
| 199 |
+ </div> |
|
| 200 |
+ </li> |
|
| 201 |
+ </ul> |
|
| 202 |
+ <button type="button" class="goTop" title="맨 위로 이동">TOP<i></i></button> |
|
| 203 |
+ </div> |
|
| 204 |
+ <div class="quick_kakaobtn main"><a href="http://pf.kakao.com/_PxoTtb/chat" target="_blank" rel="nosublink">카카오톡 상담</a></div> |
|
| 205 |
+ </div> |
|
| 206 |
+ <!--// quick 메뉴 끝 --> |
|
| 207 |
+ |
|
| 119 | 208 |
<!-- header 영역 --> |
| 120 | 209 |
<header id="header" class="header sub"> |
| 121 | 210 |
<!-- header top 영역 --> |
... | ... | @@ -188,8 +277,8 @@ |
| 188 | 277 |
<div class="login_info"> |
| 189 | 278 |
<i></i> |
| 190 | 279 |
<div class="login2_name"> |
| 191 |
- <p>홍길동홍길동홍길동홍길동</p> |
|
| 192 |
- <span>(개인) 님</span> |
|
| 280 |
+ <p>홍길동</p> |
|
| 281 |
+ <span>(개인)</span> |
|
| 193 | 282 |
</div> |
| 194 | 283 |
<div class="session"> |
| 195 | 284 |
<span>08:46</span> |
--- src/main/webapp/publish/kakao_allimtalk_intro.html
+++ src/main/webapp/publish/kakao_allimtalk_intro.html
... | ... | @@ -264,7 +264,7 @@ |
| 264 | 264 |
<div class="fight-img"> |
| 265 | 265 |
<p class="name">문자</p> |
| 266 | 266 |
<div class="icon"> |
| 267 |
- <img src="/publish/images/kakao_intro_cont/message.jpg.jpg" alt="문자"> |
|
| 267 |
+ <img src="/publish/images/kakao_intro_cont/message.jpg" alt="문자"> |
|
| 268 | 268 |
<p class="price">18원</p> |
| 269 | 269 |
</div> |
| 270 | 270 |
</div> |
... | ... | @@ -272,7 +272,7 @@ |
| 272 | 272 |
<div class="fight-img kakao"> |
| 273 | 273 |
<p class="name">알림톡</p> |
| 274 | 274 |
<div class="icon"> |
| 275 |
- <img src="/publish/images/kakao_intro_cont/kakao.jpg.jpg" alt="카카오"> |
|
| 275 |
+ <img src="/publish/images/kakao_intro_cont/kakao.jpg" alt="카카오"> |
|
| 276 | 276 |
<p class="price">6.5원</p> |
| 277 | 277 |
</div> |
| 278 | 278 |
</div> |
... | ... | @@ -285,7 +285,7 @@ |
| 285 | 285 |
<div class="fight-img"> |
| 286 | 286 |
<p class="name">문자</p> |
| 287 | 287 |
<div class="icon"> |
| 288 |
- <img src="/publish/images/kakao_intro_cont/message.jpg.jpg" alt="문자"> |
|
| 288 |
+ <img src="/publish/images/kakao_intro_cont/message.jpg" alt="문자"> |
|
| 289 | 289 |
<p class="price">90Byte</p> |
| 290 | 290 |
</div> |
| 291 | 291 |
</div> |
... | ... | @@ -293,7 +293,7 @@ |
| 293 | 293 |
<div class="fight-img kakao"> |
| 294 | 294 |
<p class="name">알림톡</p> |
| 295 | 295 |
<div class="icon"> |
| 296 |
- <img src="/publish/images/kakao_intro_cont/kakao.jpg.jpg" alt="카카오"> |
|
| 296 |
+ <img src="/publish/images/kakao_intro_cont/kakao.jpg" alt="카카오"> |
|
| 297 | 297 |
<p class="price">1,000글자</p> |
| 298 | 298 |
</div> |
| 299 | 299 |
</div> |
--- src/main/webapp/publish/mypage_index_2023.html
+++ src/main/webapp/publish/mypage_index_2023.html
... | ... | @@ -23,6 +23,85 @@ |
| 23 | 23 |
|
| 24 | 24 |
<body> |
| 25 | 25 |
<div class="mask"></div> |
| 26 |
+ |
|
| 27 |
+ <!-- 등급 및 누적결제액 확인 팝업 data-tooltip:level_check_popup01 시작 --> |
|
| 28 |
+ <div class="tooltip-wrap level_popup"> |
|
| 29 |
+ <div class="popup-com candidate_layer level_check_popup01" tabindex="0" data-tooltip-con="level_check_popup01" data-focus="level_check_popup01" data-focus-prev="level_check_popup01-close" style="width: 680px;"> |
|
| 30 |
+ <div class="popup_heading"> |
|
| 31 |
+ <p>누적결제액 세부내역<span>(2023-06-28 ~ 현재)</span></p> |
|
| 32 |
+ <button type="button" class="tooltip-close" data-focus="level_check_popup01-close"><img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기"></button> |
|
| 33 |
+ </div> |
|
| 34 |
+ <div class="layer_in"> |
|
| 35 |
+ <div class="candidate_table"> |
|
| 36 |
+ <p class="level_tx">등급 : 오렌지(2,100,000원)</p> |
|
| 37 |
+ <div class="tb_wrap"> |
|
| 38 |
+ <table class="tType4"> |
|
| 39 |
+ <colgroup> |
|
| 40 |
+ <col style="width: 50px;"> |
|
| 41 |
+ <col style="width: 40%;"> |
|
| 42 |
+ <col style="width: 20%;"> |
|
| 43 |
+ <col style="width: 20%;"> |
|
| 44 |
+ <col style="width: 20%;"> |
|
| 45 |
+ </colgroup> |
|
| 46 |
+ <thead> |
|
| 47 |
+ <tr class="level_title"> |
|
| 48 |
+ <th>구분</th> |
|
| 49 |
+ <th>결제일시</th> |
|
| 50 |
+ <th>결제금액</th> |
|
| 51 |
+ <th>누적금액</th> |
|
| 52 |
+ <th>등급</th> |
|
| 53 |
+ </tr> |
|
| 54 |
+ </thead> |
|
| 55 |
+ <tbody> |
|
| 56 |
+ <tr class="level_text"> |
|
| 57 |
+ <td>1</td> |
|
| 58 |
+ <td>2023-06-15 10:00</td> |
|
| 59 |
+ <td>1,500,000</td> |
|
| 60 |
+ <td>2,100,000</td> |
|
| 61 |
+ <td>오렌지</td> |
|
| 62 |
+ </tr> |
|
| 63 |
+ <tr class="level_text"> |
|
| 64 |
+ <td>2</td> |
|
| 65 |
+ <td>2023-05-16 10:00</td> |
|
| 66 |
+ <td>500,000</td> |
|
| 67 |
+ <td>600,000</td> |
|
| 68 |
+ <td>옐로우</td> |
|
| 69 |
+ </tr> |
|
| 70 |
+ <tr class="level_text"> |
|
| 71 |
+ <td>3</td> |
|
| 72 |
+ <td>2023-04-15 10:00</td> |
|
| 73 |
+ <td>100,000</td> |
|
| 74 |
+ <td>100,000</td> |
|
| 75 |
+ <td>화이트</td> |
|
| 76 |
+ </tr> |
|
| 77 |
+ </tbody> |
|
| 78 |
+ </table> |
|
| 79 |
+ </div> |
|
| 80 |
+ </div> |
|
| 81 |
+ <ul class="pagination"> |
|
| 82 |
+ <li class="page_first"><button><img src="/publish/images/content/page_first.png" alt=""></button></li> |
|
| 83 |
+ <li class="page_prev"><button><img src="/publish/images/content/page_prev.png" alt=""></button></li> |
|
| 84 |
+ <li class="on"><button>1</button></li> |
|
| 85 |
+ <li><button>2</button></li> |
|
| 86 |
+ <li><button>3</button></li> |
|
| 87 |
+ <li><button>4</button></li> |
|
| 88 |
+ <li><button>5</button></li> |
|
| 89 |
+ <li><button>6</button></li> |
|
| 90 |
+ <li><button>7</button></li> |
|
| 91 |
+ <li><button>8</button></li> |
|
| 92 |
+ <li><button>9</button></li> |
|
| 93 |
+ <li><button>10</button></li> |
|
| 94 |
+ <li class="page_next"><button><img src="/publish/images/content/page_next.png" alt=""></button></li> |
|
| 95 |
+ <li class="page_last"><button><img src="/publish/images/content/page_last.png" alt=""></button></li> |
|
| 96 |
+ </ul> |
|
| 97 |
+ <div class="popup_btn_wrap2"> |
|
| 98 |
+ <button type="button" class="tooltip-close" data-focus="level_check_popup01-close">닫기</button> |
|
| 99 |
+ </div> |
|
| 100 |
+ </div> |
|
| 101 |
+ </div> |
|
| 102 |
+ </div> |
|
| 103 |
+ <!-- 등급 및 누적결제액 확인 팝업 data-tooltip:level_check_popup01 끝 --> |
|
| 104 |
+ |
|
| 26 | 105 |
<div class="skip_menu"><a href="#cont" title="본문 바로가기" class="contGo">본문 바로가기</a></div> |
| 27 | 106 |
<div class="quickMenu"> |
| 28 | 107 |
<div> |
... | ... | @@ -149,28 +228,65 @@ |
| 149 | 228 |
<h2>마이페이지</h2> |
| 150 | 229 |
</div> |
| 151 | 230 |
<div class="my_dashboard"> |
| 152 |
- <div class="my_dashboard_cont1"> |
|
| 231 |
+ <div class="my_dashboard_cont1 dash_cont"> |
|
| 232 |
+ <button type="button" class="level_icon" data-tooltip="level_check_popup01"> |
|
| 233 |
+ <img src="/publish/images/level/level_icon/level_small/orange_small_icon.png" alt="등급별 스몰 아이콘"> |
|
| 234 |
+ <!--등급별 스몰 아이콘(images > level > level_icon > level_small) 사용 )--> |
|
| 235 |
+ <p>오렌지</p> |
|
| 236 |
+ </button> |
|
| 153 | 237 |
<div> |
| 154 |
- <p><span>홍길동</span>회원님 반갑습니다</p><button type="button" class="btnType">기업회원전환</button> |
|
| 238 |
+ <p> |
|
| 239 |
+ <span>홍길동</span>회원님 반갑습니다 |
|
| 240 |
+ </p> |
|
| 241 |
+ <button type="button" class="btnType " onclick="location.href='/web/user/membershipChange.do'">기업회원전환</button> |
|
| 155 | 242 |
</div> |
| 156 | 243 |
<div class="send_price"> |
| 157 |
- <div class="price_title">나의<br />단가</div> |
|
| 244 |
+ <div class="price_title">나의<br>단가</div> |
|
| 158 | 245 |
<div class="price_wrap"> |
| 159 |
- <ul> |
|
| 160 |
- <li class="title"><img src="/publish/images/content/icon_mypage_message.png" alt="" />문자</li> |
|
| 161 |
- <li class="price_line"><span class="type">단문</span><span class="price">18 </span>원 </li> |
|
| 162 |
- <li class="price_line"><span class="type">장문</span><span class="price">50 </span>원 </li> |
|
| 163 |
- <li><span class="type">그림</span><span class="price">90 </span>원 (2장 : 110원 / 3장 : 130원)</li> |
|
| 164 |
- </ul> |
|
| 165 |
- <ul> |
|
| 166 |
- <li class="title"><img src="/publish/images/content/icon_mypage_kakaotalk.png" alt="" />카톡</li> |
|
| 167 |
- <li class="price_line"><span class="type">알림톡</span><span class="price">6.9 </span>원 </li> |
|
| 168 |
- <li class="title"><img src="/publish/images/content/icon_mypage_fax.png" alt="" />팩스</li> |
|
| 169 |
- <li><span class="type">팩스</span><span class="price">58 </span>원 </li> |
|
| 170 |
- <li class="event_wrap"> |
|
| 171 |
- <p class="event_text">※ 이벤트 단가 적용기간 : 2022-05-13 ~ 2022-07-12(<span>29</span>일 남음)</p> |
|
| 172 |
- </li> |
|
| 173 |
- </ul> |
|
| 246 |
+ <ul> |
|
| 247 |
+ <li class="title"> |
|
| 248 |
+ <img src="/publish/images/content/icon_mypage_message.png" alt="">문자 |
|
| 249 |
+ </li> |
|
| 250 |
+ <li class="price_line"> |
|
| 251 |
+ <span class="type">단문</span> |
|
| 252 |
+ <span class="price"> |
|
| 253 |
+ 18 |
|
| 254 |
+ </span>원 |
|
| 255 |
+ </li> |
|
| 256 |
+ <li class="price_line"> |
|
| 257 |
+ <span class="type">장문</span> |
|
| 258 |
+ <span class="price"> |
|
| 259 |
+ 50 |
|
| 260 |
+ </span>원 |
|
| 261 |
+ </li> |
|
| 262 |
+ <li> |
|
| 263 |
+ <span class="type">그림</span> |
|
| 264 |
+ <span class="price"> |
|
| 265 |
+ 90 |
|
| 266 |
+ </span>원 |
|
| 267 |
+ (2장 : 110원 / 3장 : 130원) |
|
| 268 |
+ </li> |
|
| 269 |
+ </ul> |
|
| 270 |
+ <ul> |
|
| 271 |
+ <li class="title"> |
|
| 272 |
+ <img src="/publish/images/content/icon_mypage_kakaotalk.png" alt="">카톡 |
|
| 273 |
+ </li> |
|
| 274 |
+ <li class="price_line"> |
|
| 275 |
+ <span class="type">알림톡</span> |
|
| 276 |
+ <span class="price"> |
|
| 277 |
+ 6.9 |
|
| 278 |
+ </span>원 |
|
| 279 |
+ </li> |
|
| 280 |
+ <li class="title"> |
|
| 281 |
+ <img src="/publish/images/content/icon_mypage_fax.png" alt="">팩스 |
|
| 282 |
+ </li> |
|
| 283 |
+ <li> |
|
| 284 |
+ <span class="type">팩스</span> |
|
| 285 |
+ <span class="price"> |
|
| 286 |
+ 58 |
|
| 287 |
+ </span>원 |
|
| 288 |
+ </li> |
|
| 289 |
+ </ul> |
|
| 174 | 290 |
</div> |
| 175 | 291 |
</div> |
| 176 | 292 |
</div> |
--- src/main/webapp/publish/payment1.html
+++ src/main/webapp/publish/payment1.html
... | ... | @@ -247,7 +247,7 @@ |
| 247 | 247 |
</div> |
| 248 | 248 |
<div class="fee_cont current" id="tab1_1"> |
| 249 | 249 |
<div> |
| 250 |
- <p class="tType1_title"><img src="/publish/images/content/icon_fee1.png" alt="문자이미지"> 문자</p> |
|
| 250 |
+ <p class="tType1_title"><img src="/publish/images/content/icon_fee1.png" alt="문자이미지"> 문자<span class="level_first">(등급 : 화이트)</span></p> |
|
| 251 | 251 |
<table class="tType2"> |
| 252 | 252 |
<caption></caption> |
| 253 | 253 |
<colgroup> |
... | ... | @@ -259,28 +259,173 @@ |
| 259 | 259 |
<tr> |
| 260 | 260 |
<th>구분</th> |
| 261 | 261 |
<th>특징</th> |
| 262 |
- <th>가격</th> |
|
| 262 |
+ <th>단가</th> |
|
| 263 | 263 |
</tr> |
| 264 | 264 |
</thead> |
| 265 | 265 |
<tbody> |
| 266 | 266 |
<tr> |
| 267 | 267 |
<th>단문(SMS)</th> |
| 268 | 268 |
<td>90Byte 이하 단문 메시지(이미지 첨부 불가)</td> |
| 269 |
- <td><span>25</span>원</td> |
|
| 269 |
+ <td><span>18.0</span>원</td> |
|
| 270 | 270 |
</tr> |
| 271 | 271 |
<tr> |
| 272 | 272 |
<th>장문(LMS)</th> |
| 273 | 273 |
<td>91~2,000Byte 이하 장문메시지(이미지 첨부 불가)</td> |
| 274 |
- <td><span>50</span>원</td> |
|
| 274 |
+ <td><span>50.0</span>원</td> |
|
| 275 | 275 |
</tr> |
| 276 | 276 |
<tr> |
| 277 | 277 |
<th>그림문자(MMS)</th> |
| 278 | 278 |
<td>2,000Byte 이하 문자 및 이미지를 포함하는그림메시지(이미지 최대 3장 첨부 가능) </td> |
| 279 |
- <td>1장 : <span>90</span>원 / 2장 : <span>120<span>원/ 3장 : <span>150</span>원</td> |
|
| 279 |
+ <td>1장 : <span>90.0</span>원 / 2장 : <span>110.0<span>원/ 3장 : <span>130.0</span>원</td> |
|
| 280 | 280 |
</tr> |
| 281 | 281 |
</tbody> |
| 282 | 282 |
</table> |
| 283 |
- <span class="reqTxt4">* 텍스트 용량(Byte)에 대한 안내 : 한글2Byte, 영문·숫자 1Byte를 차지.</span> |
|
| 283 |
+ <!--문자_등급별 요금 안내 추가 시작--> |
|
| 284 |
+ <p class="tType1_title level"><img src="/publish/images/content/icon_fee1.png" alt="문자이미지"> 문자<span>(등급별 요금 안내)</span></p> |
|
| 285 |
+ <table class="tType2 tType2_level"> |
|
| 286 |
+ <caption></caption> |
|
| 287 |
+ <colgroup> |
|
| 288 |
+ <col style="width: 13%;"> |
|
| 289 |
+ <col style="width: auto;"> |
|
| 290 |
+ <col style="width: 11%;"> |
|
| 291 |
+ <col style="width: 11%;"> |
|
| 292 |
+ <col style="width: 11%;"> |
|
| 293 |
+ <col style="width: 11%;"> |
|
| 294 |
+ <col style="width: 11%;"> |
|
| 295 |
+ </colgroup> |
|
| 296 |
+ <thead> |
|
| 297 |
+ <tr> |
|
| 298 |
+ <th>등급</th> |
|
| 299 |
+ <th class="th_second">누적결제액<span>(2023-06-28 ~ 현재)</span></th> |
|
| 300 |
+ <th>단문</th> |
|
| 301 |
+ <th>장문</th> |
|
| 302 |
+ <th>그림(1장)</th> |
|
| 303 |
+ <th>그림(2장)</th> |
|
| 304 |
+ <th>그림(3장)</th> |
|
| 305 |
+ </tr> |
|
| 306 |
+ </thead> |
|
| 307 |
+ <tbody> |
|
| 308 |
+ <tr class="level_table"> |
|
| 309 |
+ <th>VVIP</th> |
|
| 310 |
+ <td class="level_price">10,000,000</td> |
|
| 311 |
+ <td>8.1</td> |
|
| 312 |
+ <td>32</td> |
|
| 313 |
+ <td>65</td> |
|
| 314 |
+ <td>75</td> |
|
| 315 |
+ <td>80</td> |
|
| 316 |
+ </tr> |
|
| 317 |
+ <tr class="level_table"> |
|
| 318 |
+ <th>VIP</th> |
|
| 319 |
+ <td class="level_price">9,000,000</td> |
|
| 320 |
+ <td>8.5</td> |
|
| 321 |
+ <td>33</td> |
|
| 322 |
+ <td>66</td> |
|
| 323 |
+ <td>76</td> |
|
| 324 |
+ <td>83</td> |
|
| 325 |
+ </tr> |
|
| 326 |
+ <tr class="level_table"> |
|
| 327 |
+ <th>골드</th> |
|
| 328 |
+ <td class="level_price">8,000,000</td> |
|
| 329 |
+ <td>9</td> |
|
| 330 |
+ <td>34</td> |
|
| 331 |
+ <td>67</td> |
|
| 332 |
+ <td>77</td> |
|
| 333 |
+ <td>85</td> |
|
| 334 |
+ </tr> |
|
| 335 |
+ <tr class="level_table"> |
|
| 336 |
+ <th>실버</th> |
|
| 337 |
+ <td class="level_price">7,000,000</td> |
|
| 338 |
+ <td>10</td> |
|
| 339 |
+ <td>35</td> |
|
| 340 |
+ <td>68</td> |
|
| 341 |
+ <td>78</td> |
|
| 342 |
+ <td>90</td> |
|
| 343 |
+ </tr> |
|
| 344 |
+ <tr class="level_table"> |
|
| 345 |
+ <th>블랙</th> |
|
| 346 |
+ <td class="level_price">6,000,000</td> |
|
| 347 |
+ <td>11</td> |
|
| 348 |
+ <td>36</td> |
|
| 349 |
+ <td>69</td> |
|
| 350 |
+ <td>79</td> |
|
| 351 |
+ <td>95</td> |
|
| 352 |
+ </tr> |
|
| 353 |
+ <tr class="level_table"> |
|
| 354 |
+ <th>레드</th> |
|
| 355 |
+ <td class="level_price">5,000,000</td> |
|
| 356 |
+ <td>12</td> |
|
| 357 |
+ <td>38</td> |
|
| 358 |
+ <td>72</td> |
|
| 359 |
+ <td>80</td> |
|
| 360 |
+ <td>100</td> |
|
| 361 |
+ </tr> |
|
| 362 |
+ <tr class="level_table"> |
|
| 363 |
+ <th>퍼플</th> |
|
| 364 |
+ <td class="level_price">4,000,000</td> |
|
| 365 |
+ <td>13</td> |
|
| 366 |
+ <td>40</td> |
|
| 367 |
+ <td>75</td> |
|
| 368 |
+ <td>85</td> |
|
| 369 |
+ <td>105</td> |
|
| 370 |
+ </tr> |
|
| 371 |
+ <tr class="level_table"> |
|
| 372 |
+ <th>블루</th> |
|
| 373 |
+ <td class="level_price">3,000,000</td> |
|
| 374 |
+ <td>14</td> |
|
| 375 |
+ <td>42</td> |
|
| 376 |
+ <td>78</td> |
|
| 377 |
+ <td>90</td> |
|
| 378 |
+ <td>110</td> |
|
| 379 |
+ </tr> |
|
| 380 |
+ <tr class="level_table"> |
|
| 381 |
+ <th>오렌지</th> |
|
| 382 |
+ <td class="level_price">2,000,000</td> |
|
| 383 |
+ <td>15</td> |
|
| 384 |
+ <td>44</td> |
|
| 385 |
+ <td>81</td> |
|
| 386 |
+ <td>95</td> |
|
| 387 |
+ <td>115</td> |
|
| 388 |
+ </tr> |
|
| 389 |
+ <tr class="level_table"> |
|
| 390 |
+ <th>그린</th> |
|
| 391 |
+ <td class="level_price">1,000,000</td> |
|
| 392 |
+ <td>16</td> |
|
| 393 |
+ <td>46</td> |
|
| 394 |
+ <td>84</td> |
|
| 395 |
+ <td>100</td> |
|
| 396 |
+ <td>120</td> |
|
| 397 |
+ </tr> |
|
| 398 |
+ <tr class="level_table"> |
|
| 399 |
+ <th>옐로우</th> |
|
| 400 |
+ <td class="level_price">500,000</td> |
|
| 401 |
+ <td>17</td> |
|
| 402 |
+ <td>48</td> |
|
| 403 |
+ <td>87</td> |
|
| 404 |
+ <td>105</td> |
|
| 405 |
+ <td>125</td> |
|
| 406 |
+ </tr> |
|
| 407 |
+ <tr class="level_table"> |
|
| 408 |
+ <th>화이트</th> |
|
| 409 |
+ <td class="level_price">0</td> |
|
| 410 |
+ <td>18</td> |
|
| 411 |
+ <td>50</td> |
|
| 412 |
+ <td>90</td> |
|
| 413 |
+ <td>110</td> |
|
| 414 |
+ <td>130</td> |
|
| 415 |
+ </tr> |
|
| 416 |
+ </tbody> |
|
| 417 |
+ </table> |
|
| 418 |
+ <span class="reqTxt4"> |
|
| 419 |
+ * 등급별 요금제는 당사의 정책 및 운영의 필요상 수정, 중단 또는 변경될 수 있습니다. <br> |
|
| 420 |
+ * 누적결제액은 등급별 요금제 적용일로부터 적립된 결제금액을 말하며, 누적결제액에 따라 등급은 자동으로 적용됩니다. <br> |
|
| 421 |
+ * "첫결제 이벤트" 등 이벤트 결제금액은 등급별 요금제 누적결제액에서 제외됩니다. <br> |
|
| 422 |
+ </span> |
|
| 423 |
+ <p class="reqTxt4 reqTxt4_last"> |
|
| 424 |
+ * 문자피싱, 스미싱, 주식, 도박, 로또, 스팸, 사기, 협박, 범죄, 유사투자, 유사수신 등을 목적으로 하거나 교사 또는 방조하는 내용의 정보, 발신번호 조작 등으로 인지되는 문자에 대해서는 사전 또는 즉시 발송을 차단하고 |
|
| 425 |
+ 이용을 정지시킬 수 있으며, 이에 대한 어떠한 환불이나 보상을 실시하지 않습니다. 또한, 상기 문자를 발송한 회원에 대해서는 그 즉시 등급별 요금제 혜택을 취소합니다. |
|
| 426 |
+ </p> |
|
| 427 |
+ <!--문자_등급별 요금 안내 추가 끝--> |
|
| 428 |
+ |
|
| 284 | 429 |
<p class="tType1_title"><img src="/publish/images/content/icon_fee2.png" alt="알림톡 아이콘 이미지"> 알림톡</p> |
| 285 | 430 |
<table class="tType2"> |
| 286 | 431 |
<colgroup> |
--- src/main/webapp/publish/payment2.html
+++ src/main/webapp/publish/payment2.html
... | ... | @@ -2,257 +2,381 @@ |
| 2 | 2 |
<html lang="ko"> |
| 3 | 3 |
|
| 4 | 4 |
<head> |
| 5 |
- <meta charset="UTF-8"> |
|
| 6 |
- <meta http-equiv="X-UA-Compatible" content="IE=edge"> |
|
| 7 |
- <title>문자온</title> |
|
| 5 |
+ <meta charset="UTF-8"> |
|
| 6 |
+ <meta http-equiv="X-UA-Compatible" content="IE=edge"> |
|
| 7 |
+ <title>문자온</title> |
|
| 8 | 8 |
|
| 9 |
- <link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap" rel="stylesheet"> |
|
| 10 |
- <link rel="stylesheet" href="/publish/css/reset.css"> |
|
| 11 |
- <link rel="stylesheet" href="/publish/css/jquery.mCustomScrollbar.css"> |
|
| 12 |
- <link rel="stylesheet" href="/publish/css/common.css"> |
|
| 13 |
- <link rel="stylesheet" href="/publish/css/button.css"> |
|
| 14 |
- <link rel="stylesheet" href="/publish/css/content.css"> |
|
| 15 |
- <link rel="stylesheet" href="/publish/css/mem.css"> |
|
| 16 |
- <link rel="stylesheet" href="/publish/css/font.css"> |
|
| 17 |
- <link rel="stylesheet" href="/publish/css/popupLayer.css"> |
|
| 18 |
- |
|
| 19 |
- |
|
| 20 |
- <script src="/publish/js/jquery-3.5.0.js"></script> |
|
| 21 |
- <script src="/publish/js/jquery.mCustomScrollbar.concat.min.js"></script> |
|
| 22 |
- <script src="/publish/js/common.js"></script> |
|
| 23 |
- <script src="/publish/js/content.js"></script> |
|
| 24 |
- <script src="/publish/js/calendar.js"></script> |
|
| 9 |
+ <link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap" rel="stylesheet"> |
|
| 10 |
+ <link rel="stylesheet" href="/publish/css/reset.css"> |
|
| 11 |
+ <link rel="stylesheet" href="/publish/css/jquery.mCustomScrollbar.css"> |
|
| 12 |
+ <link rel="stylesheet" href="/publish/css/common.css"> |
|
| 13 |
+ <link rel="stylesheet" href="/publish/css/button.css"> |
|
| 14 |
+ <link rel="stylesheet" href="/publish/css/content.css"> |
|
| 15 |
+ <link rel="stylesheet" href="/publish/css/mem.css"> |
|
| 16 |
+ <link rel="stylesheet" href="/publish/css/font.css"> |
|
| 17 |
+ <link rel="stylesheet" href="/publish/css/popupLayer.css"> |
|
| 18 |
+ |
|
| 19 |
+ <script src="/publish/js/jquery-3.5.0.js"></script> |
|
| 20 |
+ <script src="/publish/js/jquery.mCustomScrollbar.concat.min.js"></script> |
|
| 21 |
+ <script src="/publish/js/common.js"></script> |
|
| 22 |
+ <script src="/publish/js/content.js"></script> |
|
| 23 |
+ <script src="/publish/js/calendar.js"></script> |
|
| 25 | 24 |
<script src="/publish/js/popupLayer.js"></script> |
| 26 | 25 |
|
| 27 |
- |
|
| 26 |
+ <style> |
|
| 27 |
+ .charg_cont .area_tab li{ width: calc((100% - 80px)/5);}
|
|
| 28 |
+ </style> |
|
| 29 |
+ |
|
| 28 | 30 |
</head> |
| 31 |
+ |
|
| 29 | 32 |
<body> |
| 30 |
- <div class="mask"></div> |
|
| 31 |
- <!-- skip 메뉴 --> |
|
| 32 |
- <div class="skip_menu"> |
|
| 33 |
- <a href="#cont" title="본문 바로가기" class="contGo">본문 바로가기</a> |
|
| 34 |
- </div><!--// skip 메뉴 --> |
|
| 35 |
- <!-- quick 메뉴 --> |
|
| 36 |
- <div class="quickMenu"> |
|
| 37 |
- <div> |
|
| 38 |
- <p class="quick_title">QUICK<br>MENU</p> |
|
| 39 |
- <p class="quick_title2">QUICK</p> |
|
| 40 |
- <ul class="quickMenuIn"> |
|
| 41 |
- <li> |
|
| 42 |
- <a href="/publish/index.html"><i class="quick1"></i><span>이용안내</span></a> |
|
| 43 |
- <div class="hover_cont">이용안내</div> |
|
| 44 |
- </li> |
|
| 45 |
- <li> |
|
| 46 |
- <a href="#"><i class="quick2"></i><span>채팅상담</span></a> |
|
| 47 |
- <div class="hover_cont">채팅상담</div> |
|
| 48 |
- </li> |
|
| 49 |
- <li> |
|
| 50 |
- <a href="#"><i class="quick3"></i><span>원격지원</span></a> |
|
| 51 |
- <div class="hover_cont">원격지원</div> |
|
| 52 |
- </li> |
|
| 53 |
- <li> |
|
| 54 |
- <a href="#"><i class="quick4"></i><span>맞춤제작</span></a> |
|
| 55 |
- <div class="hover_cont">맞춤제작</div> |
|
| 56 |
- </li> |
|
| 57 |
- <li> |
|
| 58 |
- <a href="#"><i class="quick5"></i><span>주소록 등록</span></a> |
|
| 59 |
- <div class="hover_cont">주소록 등록</div> |
|
| 60 |
- </li> |
|
| 61 |
- <li> |
|
| 62 |
- <a href="#"><i class="quick6"></i><span>엑셀 전송</span></a> |
|
| 63 |
- <div class="hover_cont">엑셀 대량전송</div> |
|
| 64 |
- </li> |
|
| 65 |
- <li> |
|
| 66 |
- <a href="#"><i class="quick7"></i><span>견적서</span></a> |
|
| 67 |
- <div class="hover_cont">견적서</div> |
|
| 68 |
- </li> |
|
| 69 |
- <li> |
|
| 70 |
- <a href="#"><i class="quick8"></i><span>결제</span></a> |
|
| 71 |
- <div class="hover_cont">결제</div> |
|
| 72 |
- </li> |
|
| 73 |
- <li> |
|
| 74 |
- <a href="#"><i class="quick9"></i><span>영수증/계산서</span></a> |
|
| 75 |
- <div class="hover_cont">영수증/계산서</div> |
|
| 76 |
- </li> |
|
| 77 |
- </ul> |
|
| 78 |
- <button type="button" class="goTop" title="맨 위로 이동">TOP<i></i></button> |
|
| 79 |
- </div> |
|
| 80 |
- </div><!--// quick 메뉴 --> |
|
| 81 |
- <!-- header 영역 --> |
|
| 82 |
- <header id="header" class="header"> |
|
| 83 |
- <!-- header top 영역 --> |
|
| 84 |
- <div class="header_top"> |
|
| 85 |
- <div class="inner"> |
|
| 86 |
- <ul class="menu_left"> |
|
| 87 |
- <li><a href="#"><i class="hdTop_fav"></i>즐겨찾기추가</a></li> |
|
| 88 |
- <li><a href="#"><i class="hdTop_mypage"></i>마이페이지</a></li> |
|
| 89 |
- <li><a href="#"><i class="hdTop_center"></i>고객센터</a></li> |
|
| 90 |
- </ul> |
|
| 91 |
- <ul class="menu_right"> |
|
| 92 |
- <li><a href="#">충전하기</a></li> |
|
| 93 |
- <li class="SortLine"><a href="#">요금안내</a></li> |
|
| 94 |
- <li class="SortLine"><a href="#">이용안내</a></li> |
|
| 95 |
- <li class="SortLine"><a href="#">1:1고객상담</a></li> |
|
| 96 |
- </ul> |
|
| 97 |
- </div> |
|
| 98 |
- </div><!-- header top 영역 --> |
|
| 99 |
- <!-- header body 영역 --> |
|
| 100 |
- <div class="header_body"> |
|
| 101 |
- <div class="inner table"> |
|
| 102 |
- <h1 class="logo"><a href="/publish/index.html" alt="문자온 메인 바로가기"><img src="/publish/images/CI.png" alt="문자온 CI"></a></h1> |
|
| 103 |
- <ul class="gnbWrap table_cell"> |
|
| 104 |
- <li><a href="#">문자발송</a></li> |
|
| 105 |
- <li><a href="#">선거문자</a></li> |
|
| 106 |
- <li><a href="#">맞춤제작</a></li> |
|
| 107 |
- <li><a href="#">비즈톡</a></li> |
|
| 108 |
- <li><a href="#">주소록 관리</a></li> |
|
| 109 |
- <li><a href="#">발송결과</a></li> |
|
| 110 |
- <li><a href="#">예약관리</a></li> |
|
| 111 |
- <li><a href="#">결제내역</a></li> |
|
| 112 |
- </ul> |
|
| 113 |
- <div class="s_menu"> |
|
| 114 |
- <i class="allSearch_info"><span>문자검색</span></i> |
|
| 115 |
- <button type="button" title="전체검색" class="allSearch" onclick="searchToggle();"><img src="/publish/images/search.png" alt="검색영역 열기" class="allMenu"></button> |
|
| 116 |
- <button type="button" title="전체메뉴"><img src="/publish/images/all_menu.png" alt="전체메뉴 열기"></button> |
|
| 117 |
- </div> |
|
| 118 |
- </div> |
|
| 119 |
- <!-- search popup 영역 --> |
|
| 120 |
- <div class="pop_search"> |
|
| 121 |
- <div class="inner"> |
|
| 122 |
- <div class="area_search"> |
|
| 123 |
- <select name="" id=""> |
|
| 124 |
- <option value="">그림문자</option> |
|
| 125 |
- <option value="">단문문자</option> |
|
| 126 |
- <option value="">장문문자</option> |
|
| 127 |
- <option value="">GIF</option> |
|
| 128 |
- </select> |
|
| 129 |
- <input type="text" placeholder="문자샘플 검색하기"> |
|
| 130 |
- <button><img src="/publish/images/search02.png" alt=""></button> |
|
| 131 |
- </div> |
|
| 132 |
- <div class="area_popular"> |
|
| 133 |
- <p><i></i>인기검색어</p> |
|
| 134 |
- <ul class="popular_tag"> |
|
| 135 |
- <li><a href="#">#정월대보름</a></li> |
|
| 136 |
- <li class="on"><a href="#">#추석</a></li> |
|
| 137 |
- <li><a href="#">#가을인사</a></li> |
|
| 138 |
- <li><a href="#">#좋은하루</a></li> |
|
| 139 |
- </ul> |
|
| 140 |
- </div> |
|
| 141 |
- <button class="btn_close" onclick="searchToggle();"><img src="/publish/images/btn_searchclose.png" alt=""></button> |
|
| 142 |
- </div> |
|
| 143 |
- </div><!--// search popup 영역 --> |
|
| 144 |
- </div><!--// header body 영역 --> |
|
| 145 |
- <div id="login" class="login"> |
|
| 146 |
- <div class="inner table"> |
|
| 147 |
- <div class="login_left table_cell"> |
|
| 148 |
- <div class="login_put"> |
|
| 149 |
- <label for="id_text" class="label"></label> |
|
| 150 |
- <input type="text" placeholder="아이디를 입력해주세요"id="id_text" class="id_text" maxlength="30" size="18"> |
|
| 151 |
- <label for="password_text" class="label"></label> |
|
| 152 |
- <input type="password" placeholder="비밀번호를 입력해주세요" id="password_text" class="password_text" maxlength="30"size="18"> |
|
| 153 |
- <label for="login_button" class="label"></label> |
|
| 154 |
- <button type="submit" class="btnType btnType1" class="login_button">로그인</button> |
|
| 155 |
- </div> |
|
| 156 |
- <div class="login_save"> |
|
| 157 |
- <input type="checkbox" id="save_id"> |
|
| 158 |
- <label for="save_id">아이디 저장</label> |
|
| 159 |
- </div> |
|
| 160 |
- <div class="login_find"> |
|
| 161 |
- <a href="#">아이디찾기 /</a> |
|
| 162 |
- <a href="#">비밀번호 찾기</a> |
|
| 163 |
- </div> |
|
| 164 |
- <div> |
|
| 165 |
- <button type="button" class="btnType btnType2">회원가입</button> |
|
| 166 |
- <button type="button" class="btnType btnType3">둘러보기</button> |
|
| 167 |
- </div> |
|
| 168 |
- </div> |
|
| 169 |
- <div class="login_right"> |
|
| 170 |
- <span><i></i>이달의 이벤트</span> |
|
| 171 |
- <button type="button" class="btnType btnType4">바로가기</button> |
|
| 172 |
- </div> |
|
| 173 |
- </div> |
|
| 174 |
- </div><!--// login 영역 --> |
|
| 175 |
- </header><!--// header 영역 --> |
|
| 176 |
- <!-- login 영역 --> |
|
| 177 |
- <!-- content 영역 --> |
|
| 178 |
- <div id="container" class="cont sub"> |
|
| 179 |
- <div class="inner"> |
|
| 180 |
- <!-- send top --> |
|
| 181 |
- <div class="send_top"> |
|
| 182 |
- <!-- tab button --> |
|
| 183 |
- <ul class="tabType4"> |
|
| 184 |
- <li class="tab"><button type="button" onclick="TabType5(this,'1');">요금안내/견적내기</button></li> |
|
| 185 |
- <li class="tab active"><button type="button" onclick="TabType5(this,'1');">결제하기</button></li> |
|
| 186 |
- <li class="tab"><button type="button" onclick="TabType5(this,'2');">요금 결제내역</button></li> |
|
| 187 |
- <li class="tab"><button type="button" onclick="TabType5(this,'3');">요금 사용내역</button></li> |
|
| 188 |
- <li class="tab"><button type="button" onclick="TabType5(this,'4');">계산서/현금영수증 발행 등록</button></li> |
|
| 189 |
- </ul><!--// tab button --> |
|
| 33 |
+ <div class="mask"></div> |
|
| 34 |
+ <!-- skip 메뉴 --> |
|
| 35 |
+ <div class="skip_menu"> |
|
| 36 |
+ <a href="#cont" title="본문 바로가기" class="contGo">본문 바로가기</a> |
|
| 37 |
+ </div> |
|
| 38 |
+ <!--// skip 메뉴 --> |
|
| 39 |
+ <!-- quick 메뉴 --> |
|
| 40 |
+ <div class="quickMenu"> |
|
| 41 |
+ <div> |
|
| 42 |
+ <p class="quick_title">QUICK<br>MENU</p> |
|
| 43 |
+ <p class="quick_title2">QUICK</p> |
|
| 44 |
+ <ul class="quickMenuIn"> |
|
| 45 |
+ <li> |
|
| 46 |
+ <a href="/publish/index.html"><i class="quick1"></i><span>이용안내</span></a> |
|
| 47 |
+ <div class="hover_cont">이용안내</div> |
|
| 48 |
+ </li> |
|
| 49 |
+ <li> |
|
| 50 |
+ <a href="#"><i class="quick2"></i><span>채팅상담</span></a> |
|
| 51 |
+ <div class="hover_cont">채팅상담</div> |
|
| 52 |
+ </li> |
|
| 53 |
+ <li> |
|
| 54 |
+ <a href="#"><i class="quick3"></i><span>원격지원</span></a> |
|
| 55 |
+ <div class="hover_cont">원격지원</div> |
|
| 56 |
+ </li> |
|
| 57 |
+ <li> |
|
| 58 |
+ <a href="#"><i class="quick4"></i><span>맞춤제작</span></a> |
|
| 59 |
+ <div class="hover_cont">맞춤제작</div> |
|
| 60 |
+ </li> |
|
| 61 |
+ <li> |
|
| 62 |
+ <a href="#"><i class="quick5"></i><span>주소록 등록</span></a> |
|
| 63 |
+ <div class="hover_cont">주소록 등록</div> |
|
| 64 |
+ </li> |
|
| 65 |
+ <li> |
|
| 66 |
+ <a href="#"><i class="quick6"></i><span>엑셀 전송</span></a> |
|
| 67 |
+ <div class="hover_cont">엑셀 대량전송</div> |
|
| 68 |
+ </li> |
|
| 69 |
+ <li> |
|
| 70 |
+ <a href="#"><i class="quick7"></i><span>견적서</span></a> |
|
| 71 |
+ <div class="hover_cont">견적서</div> |
|
| 72 |
+ </li> |
|
| 73 |
+ <li> |
|
| 74 |
+ <a href="#"><i class="quick8"></i><span>결제</span></a> |
|
| 75 |
+ <div class="hover_cont">결제</div> |
|
| 76 |
+ </li> |
|
| 77 |
+ <li> |
|
| 78 |
+ <a href="#"><i class="quick9"></i><span>영수증/계산서</span></a> |
|
| 79 |
+ <div class="hover_cont">영수증/계산서</div> |
|
| 80 |
+ </li> |
|
| 81 |
+ </ul> |
|
| 82 |
+ <button type="button" class="goTop" title="맨 위로 이동">TOP<i></i></button> |
|
| 83 |
+ </div> |
|
| 84 |
+ </div> |
|
| 85 |
+ <!--// quick 메뉴 --> |
|
| 86 |
+ <!-- header 영역 --> |
|
| 87 |
+ <header id="header" class="header"> |
|
| 88 |
+ <!-- header top 영역 --> |
|
| 89 |
+ <div class="header_top"> |
|
| 90 |
+ <div class="inner"> |
|
| 91 |
+ <ul class="menu_left"> |
|
| 92 |
+ <li><a href="#"><i class="hdTop_fav"></i>즐겨찾기추가</a></li> |
|
| 93 |
+ <li><a href="#"><i class="hdTop_mypage"></i>마이페이지</a></li> |
|
| 94 |
+ <li><a href="#"><i class="hdTop_center"></i>고객센터</a></li> |
|
| 95 |
+ </ul> |
|
| 96 |
+ <ul class="menu_right"> |
|
| 97 |
+ <li><a href="#">충전하기</a></li> |
|
| 98 |
+ <li class="SortLine"><a href="#">요금안내</a></li> |
|
| 99 |
+ <li class="SortLine"><a href="#">이용안내</a></li> |
|
| 100 |
+ <li class="SortLine"><a href="#">1:1고객상담</a></li> |
|
| 101 |
+ </ul> |
|
| 102 |
+ </div> |
|
| 103 |
+ </div><!-- header top 영역 --> |
|
| 104 |
+ <!-- header body 영역 --> |
|
| 105 |
+ <div class="header_body"> |
|
| 106 |
+ <div class="inner table"> |
|
| 107 |
+ <h1 class="logo"><a href="/publish/index.html" alt="문자온 메인 바로가기"><img src="/publish/images/CI.png" |
|
| 108 |
+ alt="문자온 CI"></a></h1> |
|
| 109 |
+ <ul class="gnbWrap table_cell"> |
|
| 110 |
+ <li><a href="#">문자발송</a></li> |
|
| 111 |
+ <li><a href="#">선거문자</a></li> |
|
| 112 |
+ <li><a href="#">맞춤제작</a></li> |
|
| 113 |
+ <li><a href="#">비즈톡</a></li> |
|
| 114 |
+ <li><a href="#">주소록 관리</a></li> |
|
| 115 |
+ <li><a href="#">발송결과</a></li> |
|
| 116 |
+ <li><a href="#">예약관리</a></li> |
|
| 117 |
+ <li><a href="#">결제내역</a></li> |
|
| 118 |
+ </ul> |
|
| 119 |
+ <div class="s_menu"> |
|
| 120 |
+ <i class="allSearch_info"><span>문자검색</span></i> |
|
| 121 |
+ <button type="button" title="전체검색" class="allSearch" onclick="searchToggle();"> |
|
| 122 |
+ <img src="/publish/images/search.png" alt="검색영역 열기" class="allMenu"> |
|
| 123 |
+ </button> |
|
| 124 |
+ <button type="button" title="전체메뉴"><img src="/publish/images/all_menu.png" alt="전체메뉴 열기"></button> |
|
| 125 |
+ </div> |
|
| 126 |
+ </div> |
|
| 127 |
+ <!-- search popup 영역 --> |
|
| 128 |
+ <div class="pop_search"> |
|
| 129 |
+ <div class="inner"> |
|
| 130 |
+ <div class="area_search"> |
|
| 131 |
+ <select name="" id=""> |
|
| 132 |
+ <option value="">그림문자</option> |
|
| 133 |
+ <option value="">단문문자</option> |
|
| 134 |
+ <option value="">장문문자</option> |
|
| 135 |
+ <option value="">GIF</option> |
|
| 136 |
+ </select> |
|
| 137 |
+ <input type="text" placeholder="문자샘플 검색하기"> |
|
| 138 |
+ <button><img src="/publish/images/search02.png" alt=""></button> |
|
| 139 |
+ </div> |
|
| 140 |
+ <div class="area_popular"> |
|
| 141 |
+ <p><i></i>인기검색어</p> |
|
| 142 |
+ <ul class="popular_tag"> |
|
| 143 |
+ <li><a href="#">#정월대보름</a></li> |
|
| 144 |
+ <li class="on"><a href="#">#추석</a></li> |
|
| 145 |
+ <li><a href="#">#가을인사</a></li> |
|
| 146 |
+ <li><a href="#">#좋은하루</a></li> |
|
| 147 |
+ </ul> |
|
| 148 |
+ </div> |
|
| 149 |
+ <button class="btn_close" onclick="searchToggle();"> |
|
| 150 |
+ <img src="/publish/images/btn_searchclose.png" alt=""> |
|
| 151 |
+ </button> |
|
| 152 |
+ </div> |
|
| 153 |
+ </div> |
|
| 154 |
+ <!--// search popup 영역 --> |
|
| 155 |
+ </div> |
|
| 156 |
+ <!--// header body 영역 --> |
|
| 157 |
+ <div id="login" class="login"> |
|
| 158 |
+ <div class="inner table"> |
|
| 159 |
+ <div class="login_left table_cell"> |
|
| 160 |
+ <div class="login_put"> |
|
| 161 |
+ <label for="id_text" class="label"></label> |
|
| 162 |
+ <input type="text" placeholder="아이디를 입력해주세요" id="id_text" class="id_text" maxlength="30" |
|
| 163 |
+ size="18"> |
|
| 164 |
+ <label for="password_text" class="label"></label> |
|
| 165 |
+ <input type="password" placeholder="비밀번호를 입력해주세요" id="password_text" class="password_text" |
|
| 166 |
+ maxlength="30" size="18"> |
|
| 167 |
+ <label for="login_button" class="label"></label> |
|
| 168 |
+ <button type="submit" class="btnType btnType1" class="login_button">로그인</button> |
|
| 169 |
+ </div> |
|
| 170 |
+ <div class="login_save"> |
|
| 171 |
+ <input type="checkbox" id="save_id"> |
|
| 172 |
+ <label for="save_id">아이디 저장</label> |
|
| 173 |
+ </div> |
|
| 174 |
+ <div class="login_find"> |
|
| 175 |
+ <a href="#">아이디찾기 /</a> |
|
| 176 |
+ <a href="#">비밀번호 찾기</a> |
|
| 177 |
+ </div> |
|
| 178 |
+ <div> |
|
| 179 |
+ <button type="button" class="btnType btnType2">회원가입</button> |
|
| 180 |
+ <button type="button" class="btnType btnType3">둘러보기</button> |
|
| 181 |
+ </div> |
|
| 182 |
+ </div> |
|
| 183 |
+ <div class="login_right"> |
|
| 184 |
+ <span><i></i>이달의 이벤트</span> |
|
| 185 |
+ <button type="button" class="btnType btnType4">바로가기</button> |
|
| 186 |
+ </div> |
|
| 187 |
+ </div> |
|
| 188 |
+ </div> |
|
| 189 |
+ <!--// login 영역 --> |
|
| 190 |
+ </header> |
|
| 191 |
+ <!--// header 영역 --> |
|
| 192 |
+ <!-- login 영역 --> |
|
| 193 |
+ <!-- content 영역 --> |
|
| 194 |
+ <div id="container" class="cont sub"> |
|
| 195 |
+ <div class="inner"> |
|
| 196 |
+ <!-- send top --> |
|
| 197 |
+ <div class="send_top"> |
|
| 198 |
+ <!-- tab button --> |
|
| 199 |
+ <ul class="tabType4"> |
|
| 200 |
+ <li class="tab"><button type="button" onclick="TabType5(this,'1');">요금안내/견적내기</button></li> |
|
| 201 |
+ <li class="tab active"><button type="button" onclick="TabType5(this,'1');">결제하기</button></li> |
|
| 202 |
+ <li class="tab"><button type="button" onclick="TabType5(this,'2');">요금 결제내역</button></li> |
|
| 203 |
+ <li class="tab"><button type="button" onclick="TabType5(this,'3');">요금 사용내역</button></li> |
|
| 204 |
+ <li class="tab"><button type="button" onclick="TabType5(this,'4');">계산서/현금영수증 발행 등록</button></li> |
|
| 205 |
+ </ul> |
|
| 206 |
+ <!--// tab button --> |
|
| 190 | 207 |
<!-- 결제관리 - 결제하기 --> |
| 191 |
- <div class="serv_content charg_cont current" id="tab5_2"> |
|
| 192 |
- <div class="heading"> |
|
| 193 |
- <h2>결제하기</h2> |
|
| 194 |
- </div> |
|
| 195 |
- <div class="titBox"> |
|
| 208 |
+ <div class="serv_content charg_cont current" id="tab5_2"> |
|
| 209 |
+ <div class="heading"> |
|
| 210 |
+ <h2>결제하기</h2> |
|
| 211 |
+ </div> |
|
| 212 |
+ <!--<div class="titBox"> |
|
| 196 | 213 |
<p>- 서비스 이용을 위해 충전이 필수 입니다.</p> |
| 197 | 214 |
<p>- 충전 자체로 매출 인식이 되지 않는 서비스 특성상, 부가세 신고는 전자 세금계산서로만 가능합니다.</p> |
| 198 | 215 |
<p>- 모든 요금은 VAT별도 금액입니다.</p> |
| 199 |
- </div> |
|
| 216 |
+ </div>--> |
|
| 200 | 217 |
<div> |
| 201 | 218 |
<p class="tab_tit">충전수단 선택</p> |
| 202 | 219 |
<ul class="area_tab"> |
| 203 |
- <li class="btn_charge1 btn_tab active"><button onclick="TabType2(this,'1');"><i></i>신용카드</button></li> |
|
| 204 |
- <li class="btn_charge2 btn_tab"><button onclick="TabType2(this,'2');"><i></i>전용계좌</button></li> |
|
| 220 |
+ <li class="btn_charge_simple btn_tab active"><button onclick="TabType2(this,'1');"><i></i>간편결제</button></li> |
|
| 221 |
+ <li class="btn_charge1 btn_tab"><button onclick="TabType2(this,'2');"><i></i>신용카드</button> |
|
| 222 |
+ </li> |
|
| 223 |
+ <li class="btn_charge2 btn_tab"><button onclick="TabType2(this,'3');"><i></i>전용계좌</button> |
|
| 224 |
+ </li> |
|
| 205 | 225 |
<!-- <li class="btn_charge2 btn_tab"><button onclick="TabType2(this,'3');"><i></i>무통장입금</button></li> --> |
| 206 |
- <li class="btn_charge4 btn_tab"><button onclick="TabType2(this,'4');"><i></i>휴대폰결제</button></li> |
|
| 207 |
- <li class="btn_charge5 btn_tab"><button onclick="TabType2(this,'5');"><i></i>즉시이체</button></li> |
|
| 226 |
+ <li class="btn_charge4 btn_tab"><button onclick="TabType2(this,'4');"><i></i>휴대폰결제</button> |
|
| 227 |
+ </li> |
|
| 228 |
+ <li class="btn_charge5 btn_tab"><button onclick="TabType2(this,'5');"><i></i>즉시이체</button> |
|
| 229 |
+ </li> |
|
| 208 | 230 |
</ul> |
| 209 |
- <div class="checkbox_wrap"><input type="checkbox" id="agree"><label for="agree"></label> 선택한 수단을 다음 충전 시에도 |
|
| 231 |
+ <div class="checkbox_wrap"><input type="checkbox" id="agree"><label for="agree"></label> 선택한 수단을 |
|
| 232 |
+ 다음 충전 시에도 |
|
| 210 | 233 |
이용합니다.</div> |
| 211 | 234 |
|
| 212 |
- <!-- 신용카드 --> |
|
| 235 |
+ <!-- 간편결제 --> |
|
| 213 | 236 |
<div class="area_tabcont on" id="tab2_1"> |
| 214 |
- <p class="tType1_title"><img src="/publish/images/content/icon_charging1_small.png" alt=""> 신용카드</p> |
|
| 237 |
+ <p class="tType1_title"><img src="/publish/images/simple_small.png" alt="간편결제 스몰 아이콘"> |
|
| 238 |
+ 간편결제</p> |
|
| 215 | 239 |
<table class="tType1"> |
| 216 |
- <caption></caption> |
|
| 217 | 240 |
<colgroup> |
| 218 | 241 |
<col style="width: 100px;"> |
| 219 | 242 |
<col style="width: auto;"> |
| 220 | 243 |
</colgroup> |
| 221 | 244 |
<tbody> |
| 222 |
- <tr> |
|
| 245 |
+ <tr class="charge_content"> |
|
| 223 | 246 |
<th scope="row">충전금액</th> |
| 224 | 247 |
<td class="flex"> |
| 225 |
- <input type="text" placeholder="금액을 입력해주세요" onfocus="this.placeholder=''" onblur="this.placeholder='금액을 입력해주세요'"> |
|
| 248 |
+ <select name="tempPrice" id="tempPrice" class="list_seType1"> |
|
| 249 |
+ <option value="5000">5,000</option> |
|
| 250 |
+ <option value="10000">10,000</option> |
|
| 251 |
+ <option value="20000">20,000</option> |
|
| 252 |
+ <option value="30000">30,000</option> |
|
| 253 |
+ <option value="50000" selected="">50,000</option> |
|
| 254 |
+ <option value="100000">100,000</option> |
|
| 255 |
+ <option value="200000">200,000</option> |
|
| 256 |
+ <option value="300000">300,000</option> |
|
| 257 |
+ <option value="500000">500,000</option> |
|
| 258 |
+ <option value="700000">700,000</option> |
|
| 259 |
+ <option value="900000">900,000</option> |
|
| 260 |
+ <option value="1000000">1,000,000</option> |
|
| 261 |
+ <option value="1200000">1,200,000</option> |
|
| 262 |
+ <option value="1500000">1,500,000</option> |
|
| 263 |
+ <option value="2000000">2,000,000</option> |
|
| 264 |
+ <option value="2500000">2,500,000</option> |
|
| 265 |
+ <option value="3000000">3,000,000</option> |
|
| 266 |
+ </select> |
|
| 267 |
+ |
|
| 226 | 268 |
<p class="input_in">원</p> |
| 227 |
- <button class="btnType1">+ 3천원</button> |
|
| 228 |
- <button>+ 5천원</button> |
|
| 229 |
- <button>+ 1만원</button> |
|
| 230 |
- <button>+ 10만원</button> |
|
| 231 |
- <button>+ 100만원</button> |
|
| 232 |
- <span class="reqTxt6">※ 최소 3천원 이상부터 결제 가능합니다.</span> |
|
| 269 |
+ <!-- <span class="reqTxt6">※ 최소 3천원 이상부터 결제 가능합니다.</span> --> |
|
| 270 |
+ </td> |
|
| 271 |
+ </tr> |
|
| 272 |
+ <tr> |
|
| 273 |
+ <td colspan="2"> |
|
| 274 |
+ <div class="amount_wrap"> |
|
| 275 |
+ <dl> |
|
| 276 |
+ <dt>최종 결제금액 :</dt> |
|
| 277 |
+ <dd> |
|
| 278 |
+ <ul> |
|
| 279 |
+ <li><strong id="supplyPriceStr">50,000</strong>원(공급가액)</li> |
|
| 280 |
+ <li><span class="plus"></span><strong |
|
| 281 |
+ id="vatPriceStr">5,000</strong>원(부가세)</li> |
|
| 282 |
+ <li class="total"><span class="equal"></span><strong |
|
| 283 |
+ id="lastPriceStr">55,000</strong>원(최종금액)</li> |
|
| 284 |
+ </ul> |
|
| 285 |
+ </dd> |
|
| 286 |
+ </dl> |
|
| 287 |
+ <button type="button" class="btnType" |
|
| 288 |
+ onclick="pgOpenerPopup(); return false;">충전하기</button> |
|
| 289 |
+ </div> |
|
| 233 | 290 |
</td> |
| 234 | 291 |
</tr> |
| 235 | 292 |
<tr> |
| 236 | 293 |
<td colspan="2"> |
| 237 | 294 |
<div class="area_text"> |
| 238 |
- <p><span class="c_222222">- 신용카드 결제가 어려우신 고객께서는 ARS 신용카드 결제(080-1234-5678 전화 후 결제정보 입력)를 통해서도 이용 가능합니다. </span></p> |
|
| 239 |
- <p>- 팝업차단 해제 후 충전 가능합니다(도구 → 팝업차단 메뉴에서 설정)</p> |
|
| 240 |
- <p>- 카드사별 정책상 금액제한이 있을 수 있습니다. 단, ARS 신용카드 결제는 충전금액 제한없이 이용하실 수 있습니다.</p> |
|
| 295 |
+ <p>- 인터넷 익스플로러 이용 고객께서는 도구-팝업 차단 해제 후 충전이 가능합니다.</p> |
|
| 296 |
+ <p>- 결제사별 정책상 충전금액 제한이 있을 수 있습니다.</p> |
|
| 241 | 297 |
</div> |
| 242 | 298 |
</td> |
| 243 | 299 |
</tr> |
| 244 | 300 |
</tbody> |
| 245 | 301 |
</table> |
| 246 |
- <div style="text-align: center;"> |
|
| 247 |
- <button class="btnType btnType16">충전하기</button> |
|
| 248 |
- </div> |
|
| 302 |
+ </div> |
|
| 303 |
+ |
|
| 304 |
+ <!-- 신용카드 --> |
|
| 305 |
+ <div class="area_tabcont " id="tab2_2"> |
|
| 306 |
+ <p class="tType1_title"><img src="/publish/images/credit_small.png" alt="신용카드"> |
|
| 307 |
+ 신용카드</p> |
|
| 308 |
+ <table class="tType1"> |
|
| 309 |
+ <colgroup> |
|
| 310 |
+ <col style="width: 100px;"> |
|
| 311 |
+ <col style="width: auto;"> |
|
| 312 |
+ </colgroup> |
|
| 313 |
+ <tbody> |
|
| 314 |
+ <tr class="charge_content"> |
|
| 315 |
+ <th scope="row">충전금액</th> |
|
| 316 |
+ <td class="flex"> |
|
| 317 |
+ <select name="tempPrice" id="tempPrice" class="list_seType1"> |
|
| 318 |
+ <option value="5000">5,000</option> |
|
| 319 |
+ <option value="10000">10,000</option> |
|
| 320 |
+ <option value="20000">20,000</option> |
|
| 321 |
+ <option value="30000">30,000</option> |
|
| 322 |
+ <option value="50000" selected="">50,000</option> |
|
| 323 |
+ <option value="100000">100,000</option> |
|
| 324 |
+ <option value="200000">200,000</option> |
|
| 325 |
+ <option value="300000">300,000</option> |
|
| 326 |
+ <option value="500000">500,000</option> |
|
| 327 |
+ <option value="700000">700,000</option> |
|
| 328 |
+ <option value="900000">900,000</option> |
|
| 329 |
+ <option value="1000000">1,000,000</option> |
|
| 330 |
+ <option value="1200000">1,200,000</option> |
|
| 331 |
+ <option value="1500000">1,500,000</option> |
|
| 332 |
+ <option value="2000000">2,000,000</option> |
|
| 333 |
+ <option value="2500000">2,500,000</option> |
|
| 334 |
+ <option value="3000000">3,000,000</option> |
|
| 335 |
+ </select> |
|
| 336 |
+ |
|
| 337 |
+ <p class="input_in">원</p> |
|
| 338 |
+ <!-- <span class="reqTxt6">※ 최소 3천원 이상부터 결제 가능합니다.</span> --> |
|
| 339 |
+ </td> |
|
| 340 |
+ </tr> |
|
| 341 |
+ <tr> |
|
| 342 |
+ <td colspan="2"> |
|
| 343 |
+ <div class="amount_wrap"> |
|
| 344 |
+ <dl> |
|
| 345 |
+ <dt>최종 결제금액 :</dt> |
|
| 346 |
+ <dd> |
|
| 347 |
+ <ul> |
|
| 348 |
+ <li><strong id="supplyPriceStr">50,000</strong>원(공급가액)</li> |
|
| 349 |
+ <li><span class="plus"></span><strong |
|
| 350 |
+ id="vatPriceStr">5,000</strong>원(부가세)</li> |
|
| 351 |
+ <li class="total"><span class="equal"></span><strong |
|
| 352 |
+ id="lastPriceStr">55,000</strong>원(최종금액)</li> |
|
| 353 |
+ </ul> |
|
| 354 |
+ </dd> |
|
| 355 |
+ </dl> |
|
| 356 |
+ <button type="button" class="btnType" |
|
| 357 |
+ onclick="pgOpenerPopup(); return false;">충전하기</button> |
|
| 358 |
+ </div> |
|
| 359 |
+ </td> |
|
| 360 |
+ </tr> |
|
| 361 |
+ <tr> |
|
| 362 |
+ <td colspan="2"> |
|
| 363 |
+ <div class="area_text"> |
|
| 364 |
+ <p>- 인터넷 익스플로러 이용 고객께서는 도구-팝업 차단 해제 후 충전이 가능합니다.</p> |
|
| 365 |
+ <p>- 카드사별 정책상 충전금액 제한이 있을 수 있습니다. 단, ARS 신용카드 결제는 충전금액 제한 없이 이용하실 수 |
|
| 366 |
+ 있습니다.</p> |
|
| 367 |
+ </div> |
|
| 368 |
+ </td> |
|
| 369 |
+ </tr> |
|
| 370 |
+ </tbody> |
|
| 371 |
+ </table> |
|
| 249 | 372 |
</div> |
| 250 | 373 |
<!-- //신용카드 --> |
| 251 | 374 |
|
| 252 |
- <!-- 전용계좌 --> |
|
| 253 |
- <div class="area_tabcont" id="tab2_2"> |
|
| 254 |
- <!-- 신규계좌발급 시 --> |
|
| 255 |
- <p class="tType1_title"><img src="/publish/images/content/icon_charging1_small.png" alt="계좌 이미"> 전용계좌</p> |
|
| 375 |
+ <!-- 전용계좌 --> |
|
| 376 |
+ <div class="area_tabcont current" id="tab2_3"> |
|
| 377 |
+ <!-- 신규계좌발급 시 --> |
|
| 378 |
+ <p class="tType1_title"><img src="/publish/images/content/icon_charging1_small.png" |
|
| 379 |
+ alt="계좌 이미"> 전용계좌</p> |
|
| 256 | 380 |
<table class="tType1"> |
| 257 | 381 |
<caption></caption> |
| 258 | 382 |
<colgroup> |
... | ... | @@ -264,32 +388,32 @@ |
| 264 | 388 |
<td> |
| 265 | 389 |
<div class="area_text"> |
| 266 | 390 |
<p>1. 현재 발급받은 전용계좌가 없습니다.</p> |
| 267 |
- <p>2. 평생 같은 계좌번호로 입금 즉시 자동 충전되는 전용계좌를 사용해보세요(5,000원 이상부터 입금 가능)</p> |
|
| 268 |
- <p>3. 발급받은 전용계좌는 3개월 미사용시 자동 해지됩니다.</p> |
|
| 391 |
+ <p>2. 입금 즉시 자동 충전되는 나만의 전용계좌 개설(평생 사용가능, 5천원 이상 입금 가능)</p> |
|
| 392 |
+ <!-- <p>3. 발급받은 전용계좌는 3개월 미사용시 자동 해지됩니다.</p> --> |
|
| 269 | 393 |
</div> |
| 270 | 394 |
</td> |
| 271 | 395 |
<td class="right"> |
| 272 |
- <label for="" class="label">은행선택</label> |
|
| 273 |
- <select name="" id=""> |
|
| 396 |
+ <label for="bankCd" class="label">은행선택</label> |
|
| 397 |
+ <select name="bankCd" id="bankCd"> |
|
| 274 | 398 |
<option value="">은행선택</option> |
| 275 |
- <option value="">기업은행</option> |
|
| 276 |
- <option value="">국민은행</option> |
|
| 277 |
- <option value="">외환은행</option> |
|
| 278 |
- <option value="">농협</option> |
|
| 279 |
- <option value="">우리은행</option> |
|
| 280 |
- <option value="">신한은행</option> |
|
| 281 |
- <option value="">SC은행</option> |
|
| 282 |
- <option value="">부산은행</option> |
|
| 283 |
- <option value="">우체국</option> |
|
| 399 |
+ <option value="003">기업은행</option> |
|
| 400 |
+ <option value="004">국민은행</option> |
|
| 401 |
+ <option value="011">농협은행</option> |
|
| 402 |
+ <option value="020">우리은행</option> |
|
| 403 |
+ <option value="081">하나은행</option> |
|
| 404 |
+ <option value="088">신한은행</option> |
|
| 284 | 405 |
</select> |
| 285 |
- <button type="button" data-tooltip="popup05">신규계좌받기</button> |
|
| 406 |
+ <p class="input_in" style="margin-right:5px;">원</p> |
|
| 407 |
+ <button type="button" |
|
| 408 |
+ onclick="fnNewBankAccount(); return false;">신규계좌받기</button> |
|
| 286 | 409 |
</td> |
| 287 | 410 |
</tr> |
| 288 | 411 |
</tbody> |
| 289 | 412 |
</table> |
| 290 | 413 |
|
| 291 |
- <!-- 기존 계좌있을 시 --> |
|
| 292 |
- <p class="tType1_title"><img src="/publish/images/content/icon_charging1_small.png" alt="계좌 이미"> 전용계좌</p> |
|
| 414 |
+ <!-- 기존 계좌있을 시 --> |
|
| 415 |
+ <p class="tType1_title"><img src="/publish/images/content/icon_charging1_small.png" |
|
| 416 |
+ alt="계좌 이미"> 전용계좌</p> |
|
| 293 | 417 |
<table class="tType1"> |
| 294 | 418 |
<caption></caption> |
| 295 | 419 |
<colgroup> |
... | ... | @@ -298,23 +422,28 @@ |
| 298 | 422 |
</colgroup> |
| 299 | 423 |
<tbody> |
| 300 | 424 |
<tr> |
| 301 |
- <td> |
|
| 302 |
- <div class="checkbox_wrap"><input type="checkbox"><label for=""></label> 기업은행 08202827497137</div> |
|
| 303 |
- </td> |
|
| 304 |
- <td class="right"> |
|
| 425 |
+ <td colspan="2"> |
|
| 426 |
+ <div> |
|
| 427 |
+ 보유한 전용 계좌가 없습니다. |
|
| 428 |
+ </div> |
|
| 305 | 429 |
</td> |
| 306 | 430 |
</tr> |
| 307 | 431 |
<tr> |
| 308 | 432 |
<td colspan="2"> |
| 309 | 433 |
<div class="area_text"> |
| 310 | 434 |
<p>- 전용계좌는 개설일로부터 <span>3개월 미사용 시 자동 해지</span>됩니다.</p> |
| 311 |
- <p>- 전용계좌에 <span>5,000원 이상 입금</span> 시, 연중무휴 <span>실시간 자동 충전</span>됩니다.</p> |
|
| 312 |
- <p>- 예금주 : 문자온</p> |
|
| 313 |
- <p>- 계좌번호 문자로 받기(일/3회까지) |
|
| 314 |
- <label for="" class="label">전화번호 입력</label> |
|
| 315 |
- <input type="text" placeholder="‘-’ 없이 전화번호를 입력해주세요" onfocus="this.placeholder=''" onblur="this.placeholder='‘-’ 없이 전화번호를 입력해주세요'"> |
|
| 316 |
- <button>문자받기</button> |
|
| 317 |
- </p> |
|
| 435 |
+ <p>- 전용계좌에 <span>5,000원 이상 입금</span> 시, 연중무휴 <span>실시간 자동 충전이</span> |
|
| 436 |
+ 가능합니다.</p> |
|
| 437 |
+ <!-- <p>- 예금주 : 문자온</p> --> |
|
| 438 |
+ <p>- 계좌번호 문자로 받기(일/3회까지) |
|
| 439 |
+ <label for="" class="label">전화번호 입력</label> |
|
| 440 |
+ <input type="text" id="callTo" name="callTo" maxlength="11" |
|
| 441 |
+ placeholder="‘-’ 없이 받으실 휴대폰 번호를 입력해주세요." |
|
| 442 |
+ onfocus="this.placeholder=''" |
|
| 443 |
+ onblur="this.placeholder='‘-’ 없이 전화번호를 입력해주세요'"> |
|
| 444 |
+ <button type="button" |
|
| 445 |
+ onclick="fnSmsSend(); return false;">문자받기</button> |
|
| 446 |
+ </p> |
|
| 318 | 447 |
</div> |
| 319 | 448 |
</td> |
| 320 | 449 |
</tr> |
... | ... | @@ -324,7 +453,7 @@ |
| 324 | 453 |
<!-- //전용계좌 --> |
| 325 | 454 |
|
| 326 | 455 |
<!-- 무통장입금 --> |
| 327 |
- <div class="area_tabcont" id="tab2_3"> |
|
| 456 |
+ <!-- <div class="area_tabcont" id="tab2_4"> |
|
| 328 | 457 |
<p class="tType1_title"><img src="/publish/images/content/icon_charging3_small.png" alt=""> 무통장입금</p> |
| 329 | 458 |
<table class="tType1"> |
| 330 | 459 |
<caption></caption> |
... | ... | @@ -337,29 +466,36 @@ |
| 337 | 466 |
<td colspan="2"> |
| 338 | 467 |
<ul class="info_bank"> |
| 339 | 468 |
<li><a href="#"><i></i> |
| 340 |
- <p>신한은행 <span>389-01-106644</span></p></a> |
|
| 469 |
+ <p>신한은행 <span>389-01-106644</span></p> |
|
| 470 |
+ </a> |
|
| 341 | 471 |
</li> |
| 342 | 472 |
<li><a href="#"><i></i> |
| 343 |
- <p>농협은행 <span>7700-7700-28</span></p></a> |
|
| 473 |
+ <p>농협은행 <span>7700-7700-28</span></p> |
|
| 474 |
+ </a> |
|
| 344 | 475 |
</li> |
| 345 | 476 |
<li><a href="#"><i></i> |
| 346 |
- <p>국민은행 <span>839-25-0027-299</span></p></a> |
|
| 477 |
+ <p>국민은행 <span>839-25-0027-299</span></p> |
|
| 478 |
+ </a> |
|
| 347 | 479 |
</li> |
| 348 | 480 |
<li><a href href="#"><i></i> |
| 349 |
- <p>기업은행 <span>065-048245-04-013</span></p></a> |
|
| 481 |
+ <p>기업은행 <span>065-048245-04-013</span></p> |
|
| 482 |
+ </a> |
|
| 350 | 483 |
</li> |
| 351 | 484 |
<li><a href="#"><i></i> |
| 352 |
- <p>외환(하나)은행 <span>241-22-04685-7</span></p></a> |
|
| 485 |
+ <p>외환(하나)은행 <span>241-22-04685-7</span></p> |
|
| 486 |
+ </a> |
|
| 353 | 487 |
</li> |
| 354 | 488 |
<li><a href="#"><i></i> |
| 355 |
- <p>우리은행 <span>119-301098-13-101</span></p></a> |
|
| 489 |
+ <p>우리은행 <span>119-301098-13-101</span></p> |
|
| 490 |
+ </a> |
|
| 356 | 491 |
</li> |
| 357 | 492 |
</ul> |
| 358 | 493 |
<div class="area_text"> |
| 359 | 494 |
<p>※ 입금자명은 반드시 <span>본인의 아이디</span>로 입력하셔야 합니다(동명이인 식별 불가)</p> |
| 360 | 495 |
<p>※ 반드시 은행명, 입금액, 예금주를 먼저 입력하신 후 송금을 하셔야 하며, <span>송금이 완료된 상태에서 입금알림 버튼</span>을 눌러주셔야 합니다.</p> |
| 361 | 496 |
<ul class="box_input flex"> |
| 362 |
- <li class="flex">은행명 <select name="" id=""> |
|
| 497 |
+ <li class="flex">은행명 |
|
| 498 |
+ <select name="" id=""> |
|
| 363 | 499 |
<option value="">국민은행</option> |
| 364 | 500 |
</select> |
| 365 | 501 |
</li> |
... | ... | @@ -371,24 +507,25 @@ |
| 371 | 507 |
<input type="checkbox"> 상기 계좌에 입금 알림 <button>입금알림</button> |
| 372 | 508 |
</li> |
| 373 | 509 |
</ul> |
| 374 |
- <p>- 무통장입금 계좌번호 문자로 받기(일 / 최대 3회) |
|
| 375 |
- <label for="" class="sel_type2_label">은행명</label> |
|
| 376 |
- <select name="" id="" class="sel_type2"> |
|
| 377 |
- <option value="">은행선택</option> |
|
| 378 |
- <option value="">기업은행</option> |
|
| 379 |
- <option value="">국민은행</option> |
|
| 380 |
- <option value="">외환은행</option> |
|
| 381 |
- <option value="">농협</option> |
|
| 382 |
- <option value="">우리은행</option> |
|
| 383 |
- <option value="">신한은행</option> |
|
| 384 |
- <option value="">SC은행</option> |
|
| 385 |
- <option value="">부산은행</option> |
|
| 386 |
- <option value="">우체국</option> |
|
| 387 |
- </select> |
|
| 388 |
- <label for="" class="label">전화번호 입력</label> |
|
| 389 |
- <input type="text" placeholder="‘-’ 없이 전화번호를 입력해주세요" onfocus="this.placeholder=''" onblur="this.placeholder='‘-’ 없이 전화번호를 입력해주세요'"> |
|
| 390 |
- <button>문자받기</button> |
|
| 391 |
- </p> |
|
| 510 |
+ <p>- 무통장입금 계좌번호 문자로 받기(일 / 최대 3회) |
|
| 511 |
+ <label for="" class="sel_type2_label">은행명</label> |
|
| 512 |
+ <select name="" id="" class="sel_type2"> |
|
| 513 |
+ <option value="">은행선택</option> |
|
| 514 |
+ <option value="">기업은행</option> |
|
| 515 |
+ <option value="">국민은행</option> |
|
| 516 |
+ <option value="">외환은행</option> |
|
| 517 |
+ <option value="">농협</option> |
|
| 518 |
+ <option value="">우리은행</option> |
|
| 519 |
+ <option value="">신한은행</option> |
|
| 520 |
+ <option value="">SC은행</option> |
|
| 521 |
+ <option value="">부산은행</option> |
|
| 522 |
+ <option value="">우체국</option> |
|
| 523 |
+ </select> |
|
| 524 |
+ <label for="" class="label">전화번호 입력</label> |
|
| 525 |
+ <input type="text" placeholder="‘-’ 없이 전화번호를 입력해주세요" onfocus="this.placeholder=''" |
|
| 526 |
+ onblur="this.placeholder='‘-’ 없이 전화번호를 입력해주세요'"> |
|
| 527 |
+ <button>문자받기</button> |
|
| 528 |
+ </p> |
|
| 392 | 529 |
</div> |
| 393 | 530 |
</td> |
| 394 | 531 |
</tr> |
... | ... | @@ -397,12 +534,13 @@ |
| 397 | 534 |
<div style="text-align: center;"> |
| 398 | 535 |
<button class="btnType btnType16">충전하기</button> |
| 399 | 536 |
</div> |
| 400 |
- </div> |
|
| 537 |
+ </div> --> |
|
| 401 | 538 |
<!-- //무통장입금 --> |
| 402 | 539 |
|
| 403 | 540 |
<!-- 휴대폰 --> |
| 404 |
- <div class="area_tabcont" id="tab2_4"> |
|
| 405 |
- <p class="tType1_title"><img src="/publish/images/content/icon_charging4_small.png" alt=""> 휴대폰결제</p> |
|
| 541 |
+ <div class="area_tabcont current" id="tab2_4"> |
|
| 542 |
+ <p class="tType1_title"><img src="/publish/images/content/icon_charging4_small.png" alt=""> |
|
| 543 |
+ 휴대폰결제</p> |
|
| 406 | 544 |
<table class="tType1"> |
| 407 | 545 |
<caption></caption> |
| 408 | 546 |
<colgroup> |
... | ... | @@ -410,39 +548,61 @@ |
| 410 | 548 |
<col style="width: auto;"> |
| 411 | 549 |
</colgroup> |
| 412 | 550 |
<tbody> |
| 413 |
- <tr> |
|
| 551 |
+ <tr class="charge_content"> |
|
| 414 | 552 |
<th scope="row">충전금액</th> |
| 415 | 553 |
<td class="flex"> |
| 416 |
- <input type="text" placeholder="금액을 입력해주세요" onfocus="this.placeholder=''" onblur="this.placeholder='금액을 입력해주세요'"> |
|
| 554 |
+ <select name="tempPrice" id="tempPrice" class="list_seType1"> |
|
| 555 |
+ <option value="5000">5,000</option> |
|
| 556 |
+ <option value="10000">10,000</option> |
|
| 557 |
+ <option value="20000">20,000</option> |
|
| 558 |
+ <option value="30000">30,000</option> |
|
| 559 |
+ <option value="50000" selected="">50,000</option> |
|
| 560 |
+ <option value="100000">100,000</option> |
|
| 561 |
+ <option value="150000">150,000</option> |
|
| 562 |
+ </select> |
|
| 563 |
+ |
|
| 417 | 564 |
<p class="input_in">원</p> |
| 418 |
- <button class="btnType1">+ 3천원</button> |
|
| 419 |
- <button>+ 5천원</button> |
|
| 420 |
- <button>+ 1만원</button> |
|
| 421 |
- <button>+ 10만원</button> |
|
| 422 |
- <button>+ 100만원</button> |
|
| 423 |
- <span class="reqTxt6">※ 최소 3천원 이상부터 결제 가능합니다.</span> |
|
| 565 |
+ <!-- <span class="reqTxt6">※ 최소 3천원 이상부터 결제 가능합니다.</span> --> |
|
| 566 |
+ </td> |
|
| 567 |
+ </tr> |
|
| 568 |
+ <tr> |
|
| 569 |
+ <td colspan="2"> |
|
| 570 |
+ <div class="amount_wrap"> |
|
| 571 |
+ <dl> |
|
| 572 |
+ <dt>최종 결제금액 :</dt> |
|
| 573 |
+ <dd> |
|
| 574 |
+ <ul> |
|
| 575 |
+ <li><strong id="supplyPriceStr">50,000</strong>원(공급가액)</li> |
|
| 576 |
+ <li><span class="plus"></span><strong |
|
| 577 |
+ id="vatPriceStr">5,000</strong>원(부가세)</li> |
|
| 578 |
+ <li class="total"><span class="equal"></span><strong |
|
| 579 |
+ id="lastPriceStr">55,000</strong>원(최종금액)</li> |
|
| 580 |
+ </ul> |
|
| 581 |
+ </dd> |
|
| 582 |
+ </dl> |
|
| 583 |
+ <button type="button" class="btnType" |
|
| 584 |
+ onclick="pgOpenerPopup(); return false;">충전하기</button> |
|
| 585 |
+ </div> |
|
| 424 | 586 |
</td> |
| 425 | 587 |
</tr> |
| 426 | 588 |
<tr> |
| 427 | 589 |
<td colspan="2"> |
| 428 | 590 |
<div class="area_text"> |
| 429 |
- <p>- 월 30만원 한도 내에서 충전할 수 있습니다.</p> |
|
| 430 |
- <p>- 그 외 휴대폰 소액결제 제한은 가입하신 통신사를 통해 확인할 수 있습니다.</p> |
|
| 431 |
- <p>- 팝업차단 해제 후 충전 가능합니다.(도구>팝업차단 메뉴에서 설정)</p> |
|
| 591 |
+ <p>- 월 30만원 한도 내에서 충전하실 수 있습니다.</p> |
|
| 592 |
+ <p>- 휴대폰 소액결제 제한에 관한 사항은 가입하신 통신사를 통해 확인하실 수 있습니다.</p> |
|
| 593 |
+ <p>- 인터넷 익스플로러 이용 고객께서는 도구-팝업 차단 해제 후 충전이 가능합니다.</p> |
|
| 432 | 594 |
</div> |
| 433 | 595 |
</td> |
| 434 | 596 |
</tr> |
| 435 | 597 |
</tbody> |
| 436 | 598 |
</table> |
| 437 |
- <div style="text-align: center;"> |
|
| 438 |
- <button class="btnType btnType16">충전하기</button> |
|
| 439 |
- </div> |
|
| 440 | 599 |
</div> |
| 441 | 600 |
<!-- //휴대폰 --> |
| 442 | 601 |
|
| 443 | 602 |
<!-- 즉시이체 --> |
| 444 |
- <div class="area_tabcont" id="tab2_5"> |
|
| 445 |
- <p class="tType1_title"><img src="/publish/images/content/icon_charging5_small.png" alt=""> 즉시이체</p> |
|
| 603 |
+ <div class="area_tabcont current" id="tab2_5"> |
|
| 604 |
+ <p class="tType1_title"><img src="/publish/images/content/icon_charging5_small.png" alt=""> |
|
| 605 |
+ 즉시이체</p> |
|
| 446 | 606 |
<table class="tType1"> |
| 447 | 607 |
<caption></caption> |
| 448 | 608 |
<colgroup> |
... | ... | @@ -450,70 +610,262 @@ |
| 450 | 610 |
<col style="width: auto;"> |
| 451 | 611 |
</colgroup> |
| 452 | 612 |
<tbody> |
| 453 |
- <tr> |
|
| 613 |
+ <tr class="charge_content"> |
|
| 454 | 614 |
<th scope="row">충전금액</th> |
| 455 | 615 |
<td class="flex"> |
| 456 |
- <input type="text" placeholder="금액을 입력해주세요" onfocus="this.placeholder=''" onblur="this.placeholder='금액을 입력해주세요'"> |
|
| 616 |
+ <select name="tempPrice" id="tempPrice" class="list_seType1"> |
|
| 617 |
+ <option value="5000">5,000</option> |
|
| 618 |
+ <option value="10000">10,000</option> |
|
| 619 |
+ <option value="20000">20,000</option> |
|
| 620 |
+ <option value="30000">30,000</option> |
|
| 621 |
+ <option value="50000" selected="">50,000</option> |
|
| 622 |
+ <option value="100000">100,000</option> |
|
| 623 |
+ <option value="200000">200,000</option> |
|
| 624 |
+ <option value="300000">300,000</option> |
|
| 625 |
+ <option value="500000">500,000</option> |
|
| 626 |
+ <option value="700000">700,000</option> |
|
| 627 |
+ <option value="900000">900,000</option> |
|
| 628 |
+ <option value="1000000">1,000,000</option> |
|
| 629 |
+ <option value="1200000">1,200,000</option> |
|
| 630 |
+ <option value="1500000">1,500,000</option> |
|
| 631 |
+ <option value="2000000">2,000,000</option> |
|
| 632 |
+ <option value="2500000">2,500,000</option> |
|
| 633 |
+ <option value="3000000">3,000,000</option> |
|
| 634 |
+ </select> |
|
| 635 |
+ |
|
| 457 | 636 |
<p class="input_in">원</p> |
| 458 |
- <button class="btnType1">+ 3천원</button> |
|
| 459 |
- <button>+ 5천원</button> |
|
| 460 |
- <button>+ 1만원</button> |
|
| 461 |
- <button>+ 10만원</button> |
|
| 462 |
- <button>+ 100만원</button> |
|
| 463 |
- <span class="reqTxt6">※ 최소 3천원 이상부터 결제 가능합니다.</span> |
|
| 637 |
+ <!-- <span class="reqTxt6">※ 최소 3천원 이상부터 결제 가능합니다.</span> --> |
|
| 638 |
+ </td> |
|
| 639 |
+ </tr> |
|
| 640 |
+ <tr> |
|
| 641 |
+ <td colspan="2"> |
|
| 642 |
+ <div class="amount_wrap"> |
|
| 643 |
+ <dl> |
|
| 644 |
+ <dt>최종 결제금액 :</dt> |
|
| 645 |
+ <dd> |
|
| 646 |
+ <ul> |
|
| 647 |
+ <li><strong id="supplyPriceStr">50,000</strong>원(공급가액)</li> |
|
| 648 |
+ <li><span class="plus"></span><strong |
|
| 649 |
+ id="vatPriceStr">5,000</strong>원(부가세)</li> |
|
| 650 |
+ <li class="total"><span class="equal"></span><strong |
|
| 651 |
+ id="lastPriceStr">55,000</strong>원(최종금액)</li> |
|
| 652 |
+ </ul> |
|
| 653 |
+ </dd> |
|
| 654 |
+ </dl> |
|
| 655 |
+ <button type="button" class="btnType" |
|
| 656 |
+ onclick="pgOpenerPopup(); return false;">충전하기</button> |
|
| 657 |
+ </div> |
|
| 464 | 658 |
</td> |
| 465 | 659 |
</tr> |
| 466 | 660 |
<tr> |
| 467 | 661 |
<td colspan="2"> |
| 468 | 662 |
<div class="area_text"> |
| 469 |
- <p>- 결제사의 인터넷뱅킹을 이용한 계좌이체(법인계좌불가)입니다.</p> |
|
| 470 |
- <p>- 기존 인터넷뱅킹을 이용하시는 경우 해당 이체를 통해 무통장입금을 이용하시는게 편리할 수 있습니다,</p> |
|
| 663 |
+ <p>- 나이스페이 결제를 이용하여 인터넷뱅킹처럼 로그인 없이 간단한 정보 입력만으로 실시간 계좌 이체</p> |
|
| 664 |
+ <p> (일반결제, 간편결제, 앱결제)를 할 수 있는 간편한 결제 수단입니다.(소득공제 및 지출증빙 가능)</p> |
|
| 471 | 665 |
</div> |
| 472 | 666 |
</td> |
| 473 | 667 |
</tr> |
| 474 | 668 |
</tbody> |
| 475 | 669 |
</table> |
| 476 |
- <div style="text-align: center;"> |
|
| 477 |
- <button class="btnType btnType16">충전하기</button> |
|
| 478 |
- </div> |
|
| 479 | 670 |
</div> |
| 480 | 671 |
<!-- //즉시이체 --> |
| 481 | 672 |
</div> |
| 673 |
+ |
|
| 674 |
+ <!--누적결제액별 등급 및 단가 추가 시작--> |
|
| 675 |
+ <div class="accrue_price"> |
|
| 676 |
+ <p>등급 : <span><img src="/publish/images/level/level_icon/level_small/orange_small_icon.png" alt="등급 스몰 아이콘">오렌지(누적결제액 : <span>200,000</span>원)</span></p> |
|
| 677 |
+ <!--등급별 스몰 아이콘(images > level > level_icon > level_small) 사용 )--> |
|
| 678 |
+ </div> |
|
| 679 |
+ <div class="accrue_level"> |
|
| 680 |
+ <p class="tType1_title level"><img src="/publish/images/level/accrue.png" alt="누적결제액별 등급 및 단가 아이콘"> 누적결제액별 등급 및 단가 |
|
| 681 |
+ </p> |
|
| 682 |
+ <table class="tType2 tType2_level"> |
|
| 683 |
+ <caption></caption> |
|
| 684 |
+ <colgroup> |
|
| 685 |
+ <col style="width: 13%;"> |
|
| 686 |
+ <col style="width: auto;"> |
|
| 687 |
+ <col style="width: 11%;"> |
|
| 688 |
+ <col style="width: 11%;"> |
|
| 689 |
+ <col style="width: 11%;"> |
|
| 690 |
+ <col style="width: 11%;"> |
|
| 691 |
+ <col style="width: 11%;"> |
|
| 692 |
+ </colgroup> |
|
| 693 |
+ <thead> |
|
| 694 |
+ <tr> |
|
| 695 |
+ <th>등급</th> |
|
| 696 |
+ <th class="th_second">누적결제액<span>(2023-06-28 ~ 현재)</span></th> |
|
| 697 |
+ <th>단문</th> |
|
| 698 |
+ <th>장문</th> |
|
| 699 |
+ <th>그림(1장)</th> |
|
| 700 |
+ <th>그림(2장)</th> |
|
| 701 |
+ <th>그림(3장)</th> |
|
| 702 |
+ </tr> |
|
| 703 |
+ </thead> |
|
| 704 |
+ <tbody> |
|
| 705 |
+ <tr> |
|
| 706 |
+ <th>VVIP</th> |
|
| 707 |
+ <td class="level_price">10,000,000</td> |
|
| 708 |
+ <td>8.1</td> |
|
| 709 |
+ <td>32</td> |
|
| 710 |
+ <td>65</td> |
|
| 711 |
+ <td>75</td> |
|
| 712 |
+ <td>80</td> |
|
| 713 |
+ </tr> |
|
| 714 |
+ <tr> |
|
| 715 |
+ <th>VIP</th> |
|
| 716 |
+ <td class="level_price">9,000,000</td> |
|
| 717 |
+ <td>8.5</td> |
|
| 718 |
+ <td>33</td> |
|
| 719 |
+ <td>66</td> |
|
| 720 |
+ <td>76</td> |
|
| 721 |
+ <td>83</td> |
|
| 722 |
+ </tr> |
|
| 723 |
+ <tr> |
|
| 724 |
+ <th>골드</th> |
|
| 725 |
+ <td class="level_price">8,000,000</td> |
|
| 726 |
+ <td>9</td> |
|
| 727 |
+ <td>34</td> |
|
| 728 |
+ <td>67</td> |
|
| 729 |
+ <td>77</td> |
|
| 730 |
+ <td>85</td> |
|
| 731 |
+ </tr> |
|
| 732 |
+ <tr> |
|
| 733 |
+ <th>실버</th> |
|
| 734 |
+ <td class="level_price">7,000,000</td> |
|
| 735 |
+ <td>10</td> |
|
| 736 |
+ <td>35</td> |
|
| 737 |
+ <td>68</td> |
|
| 738 |
+ <td>78</td> |
|
| 739 |
+ <td>90</td> |
|
| 740 |
+ </tr> |
|
| 741 |
+ <tr> |
|
| 742 |
+ <th>블랙</th> |
|
| 743 |
+ <td class="level_price">6,000,000</td> |
|
| 744 |
+ <td>11</td> |
|
| 745 |
+ <td>36</td> |
|
| 746 |
+ <td>69</td> |
|
| 747 |
+ <td>79</td> |
|
| 748 |
+ <td>95</td> |
|
| 749 |
+ </tr> |
|
| 750 |
+ <tr> |
|
| 751 |
+ <th>레드</th> |
|
| 752 |
+ <td class="level_price">5,000,000</td> |
|
| 753 |
+ <td>12</td> |
|
| 754 |
+ <td>38</td> |
|
| 755 |
+ <td>72</td> |
|
| 756 |
+ <td>80</td> |
|
| 757 |
+ <td>100</td> |
|
| 758 |
+ </tr> |
|
| 759 |
+ <tr> |
|
| 760 |
+ <th>퍼플</th> |
|
| 761 |
+ <td class="level_price">4,000,000</td> |
|
| 762 |
+ <td>13</td> |
|
| 763 |
+ <td>40</td> |
|
| 764 |
+ <td>75</td> |
|
| 765 |
+ <td>85</td> |
|
| 766 |
+ <td>105</td> |
|
| 767 |
+ </tr> |
|
| 768 |
+ <tr> |
|
| 769 |
+ <th>블루</th> |
|
| 770 |
+ <td class="level_price">3,000,000</td> |
|
| 771 |
+ <td>14</td> |
|
| 772 |
+ <td>42</td> |
|
| 773 |
+ <td>78</td> |
|
| 774 |
+ <td>90</td> |
|
| 775 |
+ <td>110</td> |
|
| 776 |
+ </tr> |
|
| 777 |
+ <tr> |
|
| 778 |
+ <th>오렌지</th> |
|
| 779 |
+ <td class="level_price">2,000,000</td> |
|
| 780 |
+ <td>15</td> |
|
| 781 |
+ <td>44</td> |
|
| 782 |
+ <td>81</td> |
|
| 783 |
+ <td>95</td> |
|
| 784 |
+ <td>115</td> |
|
| 785 |
+ </tr> |
|
| 786 |
+ <tr> |
|
| 787 |
+ <th>그린</th> |
|
| 788 |
+ <td class="level_price">1,000,000</td> |
|
| 789 |
+ <td>16</td> |
|
| 790 |
+ <td>46</td> |
|
| 791 |
+ <td>84</td> |
|
| 792 |
+ <td>100</td> |
|
| 793 |
+ <td>120</td> |
|
| 794 |
+ </tr> |
|
| 795 |
+ <tr> |
|
| 796 |
+ <th>옐로우</th> |
|
| 797 |
+ <td class="level_price">500,000</td> |
|
| 798 |
+ <td>17</td> |
|
| 799 |
+ <td>48</td> |
|
| 800 |
+ <td>87</td> |
|
| 801 |
+ <td>105</td> |
|
| 802 |
+ <td>125</td> |
|
| 803 |
+ </tr> |
|
| 804 |
+ <tr> |
|
| 805 |
+ <th>화이트</th> |
|
| 806 |
+ <td class="level_price">0</td> |
|
| 807 |
+ <td>18</td> |
|
| 808 |
+ <td>50</td> |
|
| 809 |
+ <td>90</td> |
|
| 810 |
+ <td>110</td> |
|
| 811 |
+ <td>130</td> |
|
| 812 |
+ </tr> |
|
| 813 |
+ </tbody> |
|
| 814 |
+ </table> |
|
| 815 |
+ <span class="reqTxt4"> |
|
| 816 |
+ * 등급별 요금제는 당사의 정책 및 운영의 필요상 수정, 중단 또는 변경될 수 있습니다. <br> |
|
| 817 |
+ * 누적결제액은 등급별 요금제 적용일로부터 적립된 결제금액을 말하며, 누적결제액에 따라 등급은 자동으로 적용됩니다. <br> |
|
| 818 |
+ * "첫결제 이벤트" 등 이벤트 결제금액은 등급별 요금제 누적결제액에서 제외됩니다. <br> |
|
| 819 |
+ </span> |
|
| 820 |
+ <p class="reqTxt4 reqTxt4_last"> |
|
| 821 |
+ * 문자피싱, 스미싱, 주식, 도박, 로또, 스팸, 사기, 협박, 범죄, 유사투자, 유사수신 등을 목적으로 하거나 교사 또는 방조하는 내용의 정보, 발신번호 조작 |
|
| 822 |
+ 등으로 인지되는 문자에 대해서는 |
|
| 823 |
+ 사전 또는 즉시 발송을 차단하고 |
|
| 824 |
+ 이용을 정지시킬 수 있으며, 이에 대한 어떠한 환불이나 보상을 실시하지 않습니다. 또한, 상기 문자를 발송한 회원에 대해서는 그 즉시 등급별 요금제 혜택을 |
|
| 825 |
+ 취소합니다. |
|
| 826 |
+ </p> |
|
| 827 |
+ <!--문자_등급별 요금 안내 추가 끝--> |
|
| 828 |
+ </div> |
|
| 482 | 829 |
</div><!-- 결제관리 - 결제하기 --> |
| 483 |
- </div><!--// send top --> |
|
| 484 |
- </div> |
|
| 485 |
- </div><!--// content 영역 --> |
|
| 486 |
- <!-- footer 영역 --> |
|
| 487 |
- <footer id="footer" class="footer"> |
|
| 488 |
- <div class="footer_top"> |
|
| 489 |
- <div class="inner table"> |
|
| 490 |
- <ul class="table_cell"> |
|
| 491 |
- <li><a href="#">이용약관</a></li> |
|
| 492 |
- <li class="SortLine fwRg c_white"><a href="#">개인정보취급방침</a></li> |
|
| 493 |
- <li class="SortLine fwRg c_white"><a href="#">스팸관리정책</a></li> |
|
| 494 |
- <li class="SortLine"><a href="#">불법스팸예방안내</a></li> |
|
| 495 |
- </ul> |
|
| 496 |
- </div> |
|
| 497 |
- </div> |
|
| 498 |
- <div class="footer_body"> |
|
| 499 |
- <div class="inner table"> |
|
| 500 |
- <div class="table_cell"> |
|
| 501 |
- <a href="#" class="footer_logo"><img src="/publish/images/CI_white.png" alt="문자온 CI"></a> |
|
| 502 |
- <div class="footer_info"> |
|
| 503 |
- <p>주소 : 경기도 남양주시 다산중앙로 19번길 21 1027호, 1028호(블루웨일 지식산업센터 1차)</p> |
|
| 504 |
- <p>사업자번호 : 653-87-00858 | 대표 : 유인식 | 통신판매등록번호 : 제 다산-12345호 | 문의전화 : 070-4786-0007</p> |
|
| 505 |
- <p>Copyright 2020 ⓒ MUNJAON co. Ltd, All rights reserved.</p> |
|
| 506 |
- </div> |
|
| 507 |
- <div class="footer_service_center"> |
|
| 508 |
- <i></i> |
|
| 509 |
- <div> |
|
| 510 |
- <p>고객센터</p> |
|
| 511 |
- <span class="footer_service_num">070-4786-0008</span> |
|
| 512 |
- <span>E-mail : help@iten.co.kr</span> |
|
| 513 |
- </div> |
|
| 514 |
- </div> |
|
| 515 |
- </div> |
|
| 516 |
- </div> |
|
| 517 |
- </div> |
|
| 518 |
- </footer><!--// footer 영역 --> |
|
| 519 |
-</body></html> |
|
| 830 |
+ </div> |
|
| 831 |
+ <!--// send top --> |
|
| 832 |
+ </div> |
|
| 833 |
+ </div> |
|
| 834 |
+ <!--// content 영역 --> |
|
| 835 |
+ <!-- footer 영역 --> |
|
| 836 |
+ <footer id="footer" class="footer"> |
|
| 837 |
+ <div class="footer_top"> |
|
| 838 |
+ <div class="inner table"> |
|
| 839 |
+ <ul class="table_cell"> |
|
| 840 |
+ <li><a href="#">이용약관</a></li> |
|
| 841 |
+ <li class="SortLine fwRg c_white"><a href="#">개인정보취급방침</a></li> |
|
| 842 |
+ <li class="SortLine fwRg c_white"><a href="#">스팸관리정책</a></li> |
|
| 843 |
+ <li class="SortLine"><a href="#">불법스팸예방안내</a></li> |
|
| 844 |
+ </ul> |
|
| 845 |
+ </div> |
|
| 846 |
+ </div> |
|
| 847 |
+ <div class="footer_body"> |
|
| 848 |
+ <div class="inner table"> |
|
| 849 |
+ <div class="table_cell"> |
|
| 850 |
+ <a href="#" class="footer_logo"><img src="/publish/images/CI_white.png" alt="문자온 CI"></a> |
|
| 851 |
+ <div class="footer_info"> |
|
| 852 |
+ <p>주소 : 경기도 남양주시 다산중앙로 19번길 21 1027호, 1028호(블루웨일 지식산업센터 1차)</p> |
|
| 853 |
+ <p>사업자번호 : 653-87-00858 | 대표 : 유인식 | 통신판매등록번호 : 제 다산-12345호 | 문의전화 : 070-4786-0007</p> |
|
| 854 |
+ <p>Copyright 2020 ⓒ MUNJAON co. Ltd, All rights reserved.</p> |
|
| 855 |
+ </div> |
|
| 856 |
+ <div class="footer_service_center"> |
|
| 857 |
+ <i></i> |
|
| 858 |
+ <div> |
|
| 859 |
+ <p>고객센터</p> |
|
| 860 |
+ <span class="footer_service_num">070-4786-0008</span> |
|
| 861 |
+ <span>E-mail : help@iten.co.kr</span> |
|
| 862 |
+ </div> |
|
| 863 |
+ </div> |
|
| 864 |
+ </div> |
|
| 865 |
+ </div> |
|
| 866 |
+ </div> |
|
| 867 |
+ </footer> |
|
| 868 |
+ <!--// footer 영역 --> |
|
| 869 |
+</body> |
|
| 870 |
+ |
|
| 871 |
+</html>(No newline at end of file) |
--- src/main/webapp/publish/payment3.html
+++ src/main/webapp/publish/payment3.html
... | ... | @@ -6,7 +6,8 @@ |
| 6 | 6 |
<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
| 7 | 7 |
<title>문자온</title> |
| 8 | 8 |
|
| 9 |
- <link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap" rel="stylesheet"> |
|
| 9 |
+ <link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap" |
|
| 10 |
+ rel="stylesheet"> |
|
| 10 | 11 |
<link rel="stylesheet" href="/publish/css/reset.css"> |
| 11 | 12 |
<link rel="stylesheet" href="/publish/css/jquery.mCustomScrollbar.css"> |
| 12 | 13 |
<link rel="stylesheet" href="/publish/css/common.css"> |
... | ... | @@ -15,29 +16,32 @@ |
| 15 | 16 |
<link rel="stylesheet" href="/publish/css/mem.css"> |
| 16 | 17 |
<link rel="stylesheet" href="/publish/css/font.css"> |
| 17 | 18 |
<link rel="stylesheet" href="/publish/css/popupLayer.css"> |
| 18 |
- |
|
| 19 |
- |
|
| 19 |
+ |
|
| 20 |
+ |
|
| 20 | 21 |
<script src="/publish/js/jquery-3.5.0.js"></script> |
| 21 | 22 |
<script src="/publish/js/jquery.mCustomScrollbar.concat.min.js"></script> |
| 22 | 23 |
<script src="/publish/js/common.js"></script> |
| 23 | 24 |
<script src="/publish/js/content.js"></script> |
| 24 | 25 |
<script src="/publish/js/calendar.js"></script> |
| 25 |
- <script src="/publish/js/popupLayer.js"></script> |
|
| 26 |
+ <script src="/publish/js/popupLayer.js"></script> |
|
| 26 | 27 |
|
| 27 | 28 |
|
| 28 | 29 |
</head> |
| 30 |
+ |
|
| 29 | 31 |
<body> |
| 30 | 32 |
<div class="mask"></div> |
| 31 | 33 |
|
| 32 | 34 |
<!-- 현금영수증 팝업 data-tooltip:cashReceipt_popup01 --> |
| 33 |
- <div class="tooltip-wrap"> |
|
| 34 |
- <div class="popup-com candidate_layer cashReceipt_popup01" tabindex="0" data-tooltip-con="cashReceipt_popup01" data-focus="cashReceipt_popup01" data-focus-prev="cashReceipt_popup01-close" style="width: 520px;"> |
|
| 35 |
- <div class="popup_heading"> |
|
| 36 |
- <p>현금영수증 발행정보</p> |
|
| 37 |
- <button type="button" class="tooltip-close" data-focus="cashReceipt_popup01-close"><img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기"></button> |
|
| 38 |
- </div> |
|
| 39 |
- <div class="layer_in"> |
|
| 40 |
- <div class="candidate_table"> |
|
| 35 |
+ <div class="tooltip-wrap"> |
|
| 36 |
+ <div class="popup-com candidate_layer cashReceipt_popup01" tabindex="0" data-tooltip-con="cashReceipt_popup01" |
|
| 37 |
+ data-focus="cashReceipt_popup01" data-focus-prev="cashReceipt_popup01-close" style="width: 520px;"> |
|
| 38 |
+ <div class="popup_heading"> |
|
| 39 |
+ <p>현금영수증 발행정보</p> |
|
| 40 |
+ <button type="button" class="tooltip-close" data-focus="cashReceipt_popup01-close"><img |
|
| 41 |
+ src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기"></button> |
|
| 42 |
+ </div> |
|
| 43 |
+ <div class="layer_in"> |
|
| 44 |
+ <div class="candidate_table"> |
|
| 41 | 45 |
<!-- <p>현금영수증 발행정보</p> --> |
| 42 | 46 |
<table> |
| 43 | 47 |
<caption>후보자 등록을 위한 성명, 주민등록번호, 주소를 입력하는 표</caption> |
... | ... | @@ -67,16 +71,100 @@ |
| 67 | 71 |
</div> |
| 68 | 72 |
<div class="popup_btn_wrap2"> |
| 69 | 73 |
<button type="button">발행하기</button> |
| 70 |
- <button type="button">수정하기</button> |
|
| 74 |
+ <button type="button">수정하기</button> |
|
| 71 | 75 |
</div> |
| 72 |
- </div> |
|
| 73 |
- </div> |
|
| 74 |
- </div><!--// 현금영수증 팝업 --> |
|
| 76 |
+ </div> |
|
| 77 |
+ </div> |
|
| 78 |
+ </div> |
|
| 79 |
+ <!--// 현금영수증 팝업 --> |
|
| 80 |
+ |
|
| 81 |
+ |
|
| 82 |
+ <!-- 등급 및 누적결제액 확인 팝업 data-tooltip:level_check_popup01 시작 --> |
|
| 83 |
+ <div class="tooltip-wrap level_popup"> |
|
| 84 |
+ <div class="popup-com candidate_layer level_check_popup01" tabindex="0" data-tooltip-con="level_check_popup01" |
|
| 85 |
+ data-focus="level_check_popup01" data-focus-prev="level_check_popup01-close" style="width: 680px;"> |
|
| 86 |
+ <div class="popup_heading"> |
|
| 87 |
+ <p>누적결제액 세부내역<span>(2023-06-28 ~ 현재)</span></p> |
|
| 88 |
+ <button type="button" class="tooltip-close" data-focus="level_check_popup01-close"><img |
|
| 89 |
+ src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기"></button> |
|
| 90 |
+ </div> |
|
| 91 |
+ <div class="layer_in"> |
|
| 92 |
+ <div class="candidate_table"> |
|
| 93 |
+ <p class="level_tx">등급 : 오렌지(2,100,000원)</p> |
|
| 94 |
+ <div class="tb_wrap"> |
|
| 95 |
+ <table class="tType4"> |
|
| 96 |
+ <colgroup> |
|
| 97 |
+ <col style="width: 50px;"> |
|
| 98 |
+ <col style="width: 40%;"> |
|
| 99 |
+ <col style="width: 20%;"> |
|
| 100 |
+ <col style="width: 20%;"> |
|
| 101 |
+ <col style="width: 20%;"> |
|
| 102 |
+ </colgroup> |
|
| 103 |
+ <thead> |
|
| 104 |
+ <tr class="level_title"> |
|
| 105 |
+ <th>구분</th> |
|
| 106 |
+ <th>결제일시</th> |
|
| 107 |
+ <th>결제금액</th> |
|
| 108 |
+ <th>누적금액</th> |
|
| 109 |
+ <th>등급</th> |
|
| 110 |
+ </tr> |
|
| 111 |
+ </thead> |
|
| 112 |
+ <tbody> |
|
| 113 |
+ <tr class="level_text"> |
|
| 114 |
+ <td>1</td> |
|
| 115 |
+ <td>2023-06-15 10:00</td> |
|
| 116 |
+ <td>1,500,000</td> |
|
| 117 |
+ <td>2,100,000</td> |
|
| 118 |
+ <td>오렌지</td> |
|
| 119 |
+ </tr> |
|
| 120 |
+ <tr class="level_text"> |
|
| 121 |
+ <td>2</td> |
|
| 122 |
+ <td>2023-05-16 10:00</td> |
|
| 123 |
+ <td>500,000</td> |
|
| 124 |
+ <td>600,000</td> |
|
| 125 |
+ <td>옐로우</td> |
|
| 126 |
+ </tr> |
|
| 127 |
+ <tr class="level_text"> |
|
| 128 |
+ <td>3</td> |
|
| 129 |
+ <td>2023-04-15 10:00</td> |
|
| 130 |
+ <td>100,000</td> |
|
| 131 |
+ <td>100,000</td> |
|
| 132 |
+ <td>화이트</td> |
|
| 133 |
+ </tr> |
|
| 134 |
+ </tbody> |
|
| 135 |
+ </table> |
|
| 136 |
+ </div> |
|
| 137 |
+ </div> |
|
| 138 |
+ <ul class="pagination"> |
|
| 139 |
+ <li class="page_first"><button><img src="/publish/images/content/page_first.png" alt=""></button> |
|
| 140 |
+ </li> |
|
| 141 |
+ <li class="page_prev"><button><img src="/publish/images/content/page_prev.png" alt=""></button></li> |
|
| 142 |
+ <li class="on"><button>1</button></li> |
|
| 143 |
+ <li><button>2</button></li> |
|
| 144 |
+ <li><button>3</button></li> |
|
| 145 |
+ <li><button>4</button></li> |
|
| 146 |
+ <li><button>5</button></li> |
|
| 147 |
+ <li><button>6</button></li> |
|
| 148 |
+ <li><button>7</button></li> |
|
| 149 |
+ <li><button>8</button></li> |
|
| 150 |
+ <li><button>9</button></li> |
|
| 151 |
+ <li><button>10</button></li> |
|
| 152 |
+ <li class="page_next"><button><img src="/publish/images/content/page_next.png" alt=""></button></li> |
|
| 153 |
+ <li class="page_last"><button><img src="/publish/images/content/page_last.png" alt=""></button></li> |
|
| 154 |
+ </ul> |
|
| 155 |
+ <div class="popup_btn_wrap2"> |
|
| 156 |
+ <button type="button" class="tooltip-close" data-focus="level_check_popup01-close">닫기</button> |
|
| 157 |
+ </div> |
|
| 158 |
+ </div> |
|
| 159 |
+ </div> |
|
| 160 |
+ </div> |
|
| 161 |
+ <!-- 등급 및 누적결제액 확인 팝업 data-tooltip:level_check_popup01 끝 --> |
|
| 75 | 162 |
|
| 76 | 163 |
<!-- skip 메뉴 --> |
| 77 | 164 |
<div class="skip_menu"> |
| 78 | 165 |
<a href="#cont" title="본문 바로가기" class="contGo">본문 바로가기</a> |
| 79 |
- </div><!--// skip 메뉴 --> |
|
| 166 |
+ </div> |
|
| 167 |
+ <!--// skip 메뉴 --> |
|
| 80 | 168 |
<!-- quick 메뉴 --> |
| 81 | 169 |
<div class="quickMenu"> |
| 82 | 170 |
<div> |
... | ... | @@ -122,7 +210,8 @@ |
| 122 | 210 |
</ul> |
| 123 | 211 |
<button type="button" class="goTop" title="맨 위로 이동">TOP<i></i></button> |
| 124 | 212 |
</div> |
| 125 |
- </div><!--// quick 메뉴 --> |
|
| 213 |
+ </div> |
|
| 214 |
+ <!--// quick 메뉴 --> |
|
| 126 | 215 |
<!-- header 영역 --> |
| 127 | 216 |
<header id="header" class="header"> |
| 128 | 217 |
<!-- header top 영역 --> |
... | ... | @@ -144,7 +233,8 @@ |
| 144 | 233 |
<!-- header body 영역 --> |
| 145 | 234 |
<div class="header_body"> |
| 146 | 235 |
<div class="inner table"> |
| 147 |
- <h1 class="logo"><a href="/publish/index.html" alt="문자온 메인 바로가기"><img src="/publish/images/CI.png" alt="문자온 CI"></a></h1> |
|
| 236 |
+ <h1 class="logo"><a href="/publish/index.html" alt="문자온 메인 바로가기"><img src="/publish/images/CI.png" |
|
| 237 |
+ alt="문자온 CI"></a></h1> |
|
| 148 | 238 |
<ul class="gnbWrap table_cell"> |
| 149 | 239 |
<li><a href="#">문자발송</a></li> |
| 150 | 240 |
<li><a href="#">선거문자</a></li> |
... | ... | @@ -157,7 +247,8 @@ |
| 157 | 247 |
</ul> |
| 158 | 248 |
<div class="s_menu"> |
| 159 | 249 |
<i class="allSearch_info"><span>문자검색</span></i> |
| 160 |
- <button type="button" title="전체검색" class="allSearch" onclick="searchToggle();"><img src="/publish/images/search.png" alt="검색영역 열기" class="allMenu"></button> |
|
| 250 |
+ <button type="button" title="전체검색" class="allSearch" onclick="searchToggle();"><img |
|
| 251 |
+ src="/publish/images/search.png" alt="검색영역 열기" class="allMenu"></button> |
|
| 161 | 252 |
<button type="button" title="전체메뉴"><img src="/publish/images/all_menu.png" alt="전체메뉴 열기"></button> |
| 162 | 253 |
</div> |
| 163 | 254 |
</div> |
... | ... | @@ -171,8 +262,8 @@ |
| 171 | 262 |
<option value="">장문문자</option> |
| 172 | 263 |
<option value="">GIF</option> |
| 173 | 264 |
</select> |
| 174 |
- <input type="text" placeholder="문자샘플 검색하기"> |
|
| 175 |
- <button><img src="/publish/images/search02.png" alt=""></button> |
|
| 265 |
+ <input type="text" placeholder="문자샘플 검색하기"> |
|
| 266 |
+ <button><img src="/publish/images/search02.png" alt=""></button> |
|
| 176 | 267 |
</div> |
| 177 | 268 |
<div class="area_popular"> |
| 178 | 269 |
<p><i></i>인기검색어</p> |
... | ... | @@ -183,18 +274,23 @@ |
| 183 | 274 |
<li><a href="#">#좋은하루</a></li> |
| 184 | 275 |
</ul> |
| 185 | 276 |
</div> |
| 186 |
- <button class="btn_close" onclick="searchToggle();"><img src="/publish/images/btn_searchclose.png" alt=""></button> |
|
| 277 |
+ <button class="btn_close" onclick="searchToggle();"><img src="/publish/images/btn_searchclose.png" |
|
| 278 |
+ alt=""></button> |
|
| 187 | 279 |
</div> |
| 188 |
- </div><!--// search popup 영역 --> |
|
| 189 |
- </div><!--// header body 영역 --> |
|
| 280 |
+ </div> |
|
| 281 |
+ <!--// search popup 영역 --> |
|
| 282 |
+ </div> |
|
| 283 |
+ <!--// header body 영역 --> |
|
| 190 | 284 |
<div id="login" class="login"> |
| 191 | 285 |
<div class="inner table"> |
| 192 | 286 |
<div class="login_left table_cell"> |
| 193 | 287 |
<div class="login_put"> |
| 194 | 288 |
<label for="id_text" class="label"></label> |
| 195 |
- <input type="text" placeholder="아이디를 입력해주세요"id="id_text" class="id_text" maxlength="30" size="18"> |
|
| 289 |
+ <input type="text" placeholder="아이디를 입력해주세요" id="id_text" class="id_text" maxlength="30" |
|
| 290 |
+ size="18"> |
|
| 196 | 291 |
<label for="password_text" class="label"></label> |
| 197 |
- <input type="password" placeholder="비밀번호를 입력해주세요" id="password_text" class="password_text" maxlength="30"size="18"> |
|
| 292 |
+ <input type="password" placeholder="비밀번호를 입력해주세요" id="password_text" class="password_text" |
|
| 293 |
+ maxlength="30" size="18"> |
|
| 198 | 294 |
<label for="login_button" class="label"></label> |
| 199 | 295 |
<button type="submit" class="btnType btnType1" class="login_button">로그인</button> |
| 200 | 296 |
</div> |
... | ... | @@ -216,8 +312,10 @@ |
| 216 | 312 |
<button type="button" class="btnType btnType4">바로가기</button> |
| 217 | 313 |
</div> |
| 218 | 314 |
</div> |
| 219 |
- </div><!--// login 영역 --> |
|
| 220 |
- </header><!--// header 영역 --> |
|
| 315 |
+ </div> |
|
| 316 |
+ <!--// login 영역 --> |
|
| 317 |
+ </header> |
|
| 318 |
+ <!--// header 영역 --> |
|
| 221 | 319 |
<!-- login 영역 --> |
| 222 | 320 |
<!-- content 영역 --> |
| 223 | 321 |
<div id="container" class="cont sub"> |
... | ... | @@ -231,331 +329,494 @@ |
| 231 | 329 |
<li class="tab active"><button type="button" onclick="TabType5(this,'2');">요금 결제내역</button></li> |
| 232 | 330 |
<li class="tab"><button type="button" onclick="TabType5(this,'3');">요금 사용내역</button></li> |
| 233 | 331 |
<li class="tab"><button type="button" onclick="TabType5(this,'4');">계산서/현금영수증 발행 등록</button></li> |
| 234 |
- </ul><!--// tab button --> |
|
| 235 |
- <!-- 결제내역 - 요금결제내역(환불신청빼고 같은 폼) --> |
|
| 332 |
+ </ul> |
|
| 333 |
+ <!--// tab button --> |
|
| 334 |
+ <!-- 결제내역 - 요금결제내역(환불신청빼고 같은 폼) --> |
|
| 236 | 335 |
<div class="serv_content current" id="tab5_1"> |
| 237 | 336 |
<div class="heading"> |
| 238 | 337 |
<h2>요금결제내역</h2> |
| 239 | 338 |
</div> |
| 240 |
- <div class="pay_tab_wrap"> |
|
| 241 |
- <!-- tab button --> |
|
| 242 |
- <ul class="tabType1"> |
|
| 243 |
- <li class="tab active"><button type="button" onclick="TabType1(this,'1');">전체</button></li> |
|
| 244 |
- <li class="tab"><button type="button" onclick="TabType1(this,'2');">전용계좌 결제내역</button></li> |
|
| 245 |
- <li class="tab"><button type="button" onclick="TabType1(this,'3');">신용카드 결제내역</button></li> |
|
| 246 |
- <li class="tab"><button type="button" onclick="TabType1(this,'4');">무통장입금</button></li> |
|
| 247 |
- <li class="tab"><button type="button" onclick="TabType1(this,'5');">휴대폰결제</button></li> |
|
| 248 |
- <li class="tab"><button type="button" onclick="TabType1(this,'6');">환불신청</button></li> |
|
| 249 |
- </ul><!--// tab button --> |
|
| 250 |
- </div> |
|
| 251 |
- <!-- 결제내역 - 요금결제내역 - 전체부터 휴대폰결제까지(환불신청빼고 같은 폼) --> |
|
| 252 |
- <div class="pay_cont current" id="tab1_1"> |
|
| 253 |
- <table class="tType1"> |
|
| 254 |
- <caption>요금결제내역 기간설정에 대한 표</caption> |
|
| 255 |
- <colgroup> |
|
| 256 |
- <col style="width: 160px;"> |
|
| 257 |
- <col style="width: auto;"> |
|
| 258 |
- </colgroup> |
|
| 259 |
- <tbody> |
|
| 260 |
- <tr> |
|
| 261 |
- <th scope="row">기간설정</th> |
|
| 262 |
- <td> |
|
| 263 |
- <div class="calendar_wrap"> |
|
| 264 |
- <input type="text" class="startDate inp" title="검색 시작일" id="startDate" name="startDate" value="" data-datecontrol="true"> |
|
| 265 |
- <div class="calendar_in" id="calendarName_startDate" style="z-index: 9;"> |
|
| 266 |
- <button type="button" value="달력 팝업 열기" onclick="return calendarOpen('startDate-lry','',this)"></button>
|
|
| 267 |
- <div id="startDate-lry" class="calendarPop" style="display: none;"> |
|
| 268 |
- <iframe id="startDate3-ifrm" name="startDate-ifrm" class="calendar-frame" src="/publish/calendar.html" title=" 달력 팝업" frameborder="0" scrolling="no"></iframe> |
|
| 269 |
- </div> |
|
| 270 |
- </div> |
|
| 271 |
- <span class="dateEtc">~</span> |
|
| 272 |
- <input type="text" class="endDate inp" title="검색 종료일" id="endDate" name="endDate" value="" data-datecontrol="true"> |
|
| 273 |
- <div class="calendar_in" id="calendarName_endDate" style="z-index: 0;"> |
|
| 274 |
- <button type="button" value="달력 팝업 열기" onclick="return calendarOpen('endDate-lry','',this)"></button>
|
|
| 339 |
+ <div class="pay_tab_wrap"> |
|
| 340 |
+ <!-- tab button --> |
|
| 341 |
+ <ul class="tabType1"> |
|
| 342 |
+ <li class="tab active"><button type="button" onclick="TabType1(this,'1');">전체</button></li> |
|
| 343 |
+ <li class="tab"><button type="button" onclick="TabType1(this,'2');">간편결제 결제내역</button></li> |
|
| 344 |
+ <li class="tab"><button type="button" onclick="TabType1(this,'3');">전용계좌 결제내역</button></li> |
|
| 345 |
+ <li class="tab"><button type="button" onclick="TabType1(this,'4');">신용카드 결제내역</button></li> |
|
| 346 |
+ <li class="tab"><button type="button" onclick="TabType1(this,'5');">휴대폰 결제내역</button></li> |
|
| 347 |
+ <li class="tab"><button type="button" onclick="TabType1(this,'6');">즉시이체 결제내역</button></li> |
|
| 348 |
+ <li class="tab"><button type="button" onclick="TabType1(this,'7');">포인트 교환내역</button></li> |
|
| 349 |
+ <li class="tab"><button type="button" onclick="TabType1(this,'8');">환불신청</button></li> |
|
| 350 |
+ </ul> |
|
| 351 |
+ <!--// tab button --> |
|
| 352 |
+ </div> |
|
| 353 |
+ <!-- 결제내역 - 요금결제내역 - 전체부터 휴대폰결제까지(환불신청빼고 같은 폼) --> |
|
| 354 |
+ <div class="pay_cont current" id="tab1_1"> |
|
| 355 |
+ <table class="tType1"> |
|
| 356 |
+ <caption>요금결제내역 기간설정에 대한 표</caption> |
|
| 357 |
+ <colgroup> |
|
| 358 |
+ <col style="width: 160px;"> |
|
| 359 |
+ <col style="width: auto;"> |
|
| 360 |
+ </colgroup> |
|
| 361 |
+ <tbody> |
|
| 362 |
+ <tr> |
|
| 363 |
+ <th scope="row">기간설정</th> |
|
| 364 |
+ <td> |
|
| 365 |
+ <div class="calendar_wrap"> |
|
| 366 |
+ <input type="text" class="startDate inp" title="검색 시작일" id="startDate" |
|
| 367 |
+ name="startDate" value="" data-datecontrol="true"> |
|
| 368 |
+ <div class="calendar_in" id="calendarName_startDate" style="z-index: 9;"> |
|
| 369 |
+ <button type="button" value="달력 팝업 열기" |
|
| 370 |
+ onclick="return calendarOpen('startDate-lry','',this)"></button>
|
|
| 371 |
+ <div id="startDate-lry" class="calendarPop" style="display: none;"> |
|
| 372 |
+ <iframe id="startDate3-ifrm" name="startDate-ifrm" |
|
| 373 |
+ class="calendar-frame" src="/publish/calendar.html" |
|
| 374 |
+ title=" 달력 팝업" frameborder="0" scrolling="no"></iframe> |
|
| 275 | 375 |
</div> |
| 276 | 376 |
</div> |
| 277 |
- <button type="button" class="btnType btnType19">전월</button> |
|
| 278 |
- <button type="button" class="btnType btnType19">당월</button> |
|
| 279 |
- <button type="button" class="btnType btnType6">조회</button> |
|
| 280 |
- <button type="button" class="btnType btnType17">기간 초기화</button> |
|
| 377 |
+ <span class="dateEtc">~</span> |
|
| 378 |
+ <input type="text" class="endDate inp" title="검색 종료일" id="endDate" |
|
| 379 |
+ name="endDate" value="" data-datecontrol="true"> |
|
| 380 |
+ <div class="calendar_in" id="calendarName_endDate" style="z-index: 0;"> |
|
| 381 |
+ <button type="button" value="달력 팝업 열기" |
|
| 382 |
+ onclick="return calendarOpen('endDate-lry','',this)"></button>
|
|
| 383 |
+ </div> |
|
| 384 |
+ </div> |
|
| 385 |
+ <button type="button" class="btnType btnType19">전월</button> |
|
| 386 |
+ <button type="button" class="btnType btnType19">당월</button> |
|
| 387 |
+ <button type="button" class="btnType btnType6">조회</button> |
|
| 388 |
+ <button type="button" class="btnType btnType17">기간 초기화</button> |
|
| 389 |
+ </td> |
|
| 390 |
+ </tr> |
|
| 391 |
+ </tbody> |
|
| 392 |
+ </table> |
|
| 393 |
+ <div class="excel_middle"> |
|
| 394 |
+ <div class="select_btnWrap clearfix"> |
|
| 395 |
+ <div class="add_text2">※ 요금 결제내역은 결제일을 기준으로 최대 6개월까지만 조회 가능합니다.</div> |
|
| 396 |
+ <div> |
|
| 397 |
+ <button type="button" class="level_btn" data-tooltip="level_check_popup01"> |
|
| 398 |
+ <img src="/publish/images/level/level_btn_icon.png" alt="등급 및 누적결제액 확인 버튼">등급 및 누적결제액 확인 |
|
| 399 |
+ </button> |
|
| 400 |
+ <button type="button" class="excel_btn"><i class="downroad"></i>엑셀 다운로드</button> |
|
| 401 |
+ <button type="button" class="print_btn"><i class="print_img"></i>인쇄하기</button> |
|
| 402 |
+ <label for="" class="label">검색조건 선택</label> |
|
| 403 |
+ <select name="" id="" class="selType2"> |
|
| 404 |
+ <option value="">10개</option> |
|
| 405 |
+ <option value="">10개</option> |
|
| 406 |
+ <option value="">10개</option> |
|
| 407 |
+ </select> |
|
| 408 |
+ </div> |
|
| 409 |
+ </div> |
|
| 410 |
+ </div> |
|
| 411 |
+ <!-- 현금영수증 발행 전 --> |
|
| 412 |
+ <div class="tb_wrap pay3_list"> |
|
| 413 |
+ <table class="tType4"> |
|
| 414 |
+ <colgroup> |
|
| 415 |
+ <col style="width: 40px;"> |
|
| 416 |
+ <col style="width: 5%;"> |
|
| 417 |
+ <col style="width: 20%;"> |
|
| 418 |
+ <col style="width: 15%;"> |
|
| 419 |
+ <col style="width: 15%;"> |
|
| 420 |
+ <col style="width: 25%;"> |
|
| 421 |
+ <col style="width: 20%;"> |
|
| 422 |
+ </colgroup> |
|
| 423 |
+ <thead> |
|
| 424 |
+ <tr> |
|
| 425 |
+ <th> |
|
| 426 |
+ <label for="" class="label">전체 선택</label> |
|
| 427 |
+ <input type="checkbox"> |
|
| 428 |
+ </th> |
|
| 429 |
+ <th> |
|
| 430 |
+ 번호 |
|
| 431 |
+ <div class="sort_wrap"> |
|
| 432 |
+ <button type="button"><img src="/publish/images/sortUp.png" |
|
| 433 |
+ alt="오름차순으로 분류"></button> |
|
| 434 |
+ <button type="button"><img src="/publish/images/sortDown.png" |
|
| 435 |
+ alt="내림차순으로 분류"></button> |
|
| 436 |
+ </div> |
|
| 437 |
+ </th> |
|
| 438 |
+ <th> |
|
| 439 |
+ 결제일시 |
|
| 440 |
+ <div class="sort_wrap"> |
|
| 441 |
+ <button type="button"><img src="/publish/images/sortUp.png" |
|
| 442 |
+ alt="오름차순으로 분류"></button> |
|
| 443 |
+ <button type="button"><img src="/publish/images/sortDown.png" |
|
| 444 |
+ alt="내림차순으로 분류"></button> |
|
| 445 |
+ </div> |
|
| 446 |
+ </th> |
|
| 447 |
+ <th> |
|
| 448 |
+ 결제방식 |
|
| 449 |
+ <div class="sort_wrap"> |
|
| 450 |
+ <button type="button"><img src="/publish/images/sortUp.png" |
|
| 451 |
+ alt="오름차순으로 분류"></button> |
|
| 452 |
+ <button type="button"><img src="/publish/images/sortDown.png" |
|
| 453 |
+ alt="내림차순으로 분류"></button> |
|
| 454 |
+ </div> |
|
| 455 |
+ </th> |
|
| 456 |
+ <th> |
|
| 457 |
+ 결제금액 |
|
| 458 |
+ <div class="sort_wrap"> |
|
| 459 |
+ <button type="button"><img src="/publish/images/sortUp.png" |
|
| 460 |
+ alt="오름차순으로 분류"></button> |
|
| 461 |
+ <button type="button"><img src="/publish/images/sortDown.png" |
|
| 462 |
+ alt="내림차순으로 분류"></button> |
|
| 463 |
+ </div> |
|
| 464 |
+ </th> |
|
| 465 |
+ <th>결제정보</th> |
|
| 466 |
+ <th>증빙서류 발행 요청</th> |
|
| 467 |
+ </tr> |
|
| 468 |
+ </thead> |
|
| 469 |
+ <tbody> |
|
| 470 |
+ <tr> |
|
| 471 |
+ <td> |
|
| 472 |
+ <label for="" class="label">선택</label> |
|
| 473 |
+ <input type="checkbox"> |
|
| 474 |
+ </td> |
|
| 475 |
+ <td> |
|
| 476 |
+ <p>1</p> |
|
| 477 |
+ </td> |
|
| 478 |
+ <td> |
|
| 479 |
+ <p>2021-06-25, 09:30:52</p> |
|
| 480 |
+ </td> |
|
| 481 |
+ <td> |
|
| 482 |
+ <p>신용카드</p> |
|
| 483 |
+ </td> |
|
| 484 |
+ <td class="td_price"> |
|
| 485 |
+ <p>199,000</p> |
|
| 486 |
+ </td> |
|
| 487 |
+ <td class="td_payInfo"> |
|
| 488 |
+ <p>신한카드<span></span> 카드승인번호 : 12345678</p> |
|
| 489 |
+ </td> |
|
| 490 |
+ <td><button class="btnType btnType20">카드전표</button></td> |
|
| 491 |
+ </tr> |
|
| 492 |
+ <tr> |
|
| 493 |
+ <td> |
|
| 494 |
+ <label for="" class="label">선택</label> |
|
| 495 |
+ <input type="checkbox"> |
|
| 496 |
+ </td> |
|
| 497 |
+ <td> |
|
| 498 |
+ <p>2</p> |
|
| 499 |
+ </td> |
|
| 500 |
+ <td> |
|
| 501 |
+ <p>2021-06-25, 09:30:52</p> |
|
| 502 |
+ </td> |
|
| 503 |
+ <td> |
|
| 504 |
+ <p>무통장입금</p> |
|
| 505 |
+ </td> |
|
| 506 |
+ <td class="td_price"> |
|
| 507 |
+ <p>199,000</p> |
|
| 508 |
+ </td> |
|
| 509 |
+ <td class="td_payInfo"> |
|
| 510 |
+ <p>신한카드<span></span> 우리은행 : 1234-56-78901</p> |
|
| 511 |
+ </td> |
|
| 512 |
+ <td><button class="btnType btnType20" |
|
| 513 |
+ data-tooltip="cashReceipt_popup01">현금영수증</button><button |
|
| 514 |
+ class="btnType btnType20">간이영수증</button></td> |
|
| 515 |
+ </tr> |
|
| 516 |
+ <tr> |
|
| 517 |
+ <td> |
|
| 518 |
+ <label for="" class="label">선택</label> |
|
| 519 |
+ <input type="checkbox"> |
|
| 520 |
+ </td> |
|
| 521 |
+ <td> |
|
| 522 |
+ <p>3</p> |
|
| 523 |
+ </td> |
|
| 524 |
+ <td> |
|
| 525 |
+ <p>2021-06-25, 09:30:52</p> |
|
| 526 |
+ </td> |
|
| 527 |
+ <td> |
|
| 528 |
+ <p>포인트</p> |
|
| 529 |
+ </td> |
|
| 530 |
+ <td> |
|
| 531 |
+ <p>199,000</p> |
|
| 532 |
+ </td> |
|
| 533 |
+ <td class="td_payInfo"> |
|
| 534 |
+ <p>사용포인트(수수료 포함) : 5,250</p> |
|
| 535 |
+ </td> |
|
| 536 |
+ <td></td> |
|
| 537 |
+ </tr> |
|
| 538 |
+ <tr> |
|
| 539 |
+ <td> |
|
| 540 |
+ <label for="" class="label">선택</label> |
|
| 541 |
+ <input type="checkbox"> |
|
| 542 |
+ </td> |
|
| 543 |
+ <td> |
|
| 544 |
+ <p>4</p> |
|
| 545 |
+ </td> |
|
| 546 |
+ <td> |
|
| 547 |
+ <p>2021-06-25, 09:30:52</p> |
|
| 548 |
+ </td> |
|
| 549 |
+ <td> |
|
| 550 |
+ <p>전용계좌</p> |
|
| 551 |
+ </td> |
|
| 552 |
+ <td> |
|
| 553 |
+ <p>199,000</p> |
|
| 554 |
+ </td> |
|
| 555 |
+ <td class="td_payInfo"> |
|
| 556 |
+ <p>전용계좌번호 : 1234-56-78901</p> |
|
| 557 |
+ </td> |
|
| 558 |
+ <td><button class="btnType btnType20">현금영수증</button><button |
|
| 559 |
+ class="btnType btnType20">간이영수증</button></td> |
|
| 560 |
+ </tr> |
|
| 561 |
+ <tr> |
|
| 562 |
+ <td> |
|
| 563 |
+ <label for="" class="label">선택</label> |
|
| 564 |
+ <input type="checkbox"> |
|
| 565 |
+ </td> |
|
| 566 |
+ <td> |
|
| 567 |
+ <p>5</p> |
|
| 568 |
+ </td> |
|
| 569 |
+ <td> |
|
| 570 |
+ <p>2021-06-25, 09:30:52</p> |
|
| 571 |
+ </td> |
|
| 572 |
+ <td> |
|
| 573 |
+ <p>휴대폰</p> |
|
| 574 |
+ </td> |
|
| 575 |
+ <td> |
|
| 576 |
+ <p>199,000</p> |
|
| 577 |
+ </td> |
|
| 578 |
+ <td class="td_payInfo"> |
|
| 579 |
+ <p>결제 휴대폰 번호 : 010-1234-5678</p> |
|
| 580 |
+ </td> |
|
| 581 |
+ <td><button class="btnType btnType20">간이영수증</button></td> |
|
| 582 |
+ </tr> |
|
| 583 |
+ <tr> |
|
| 584 |
+ <td> |
|
| 585 |
+ <label for="" class="label">선택</label> |
|
| 586 |
+ <input type="checkbox"> |
|
| 587 |
+ </td> |
|
| 588 |
+ <td> |
|
| 589 |
+ <p>6</p> |
|
| 590 |
+ </td> |
|
| 591 |
+ <td> |
|
| 592 |
+ <p>2021-06-25, 09:30:52</p> |
|
| 593 |
+ </td> |
|
| 594 |
+ <td> |
|
| 595 |
+ <p>즉시이체</p> |
|
| 596 |
+ </td> |
|
| 597 |
+ <td> |
|
| 598 |
+ <p>199,000</p> |
|
| 599 |
+ </td> |
|
| 600 |
+ <td class="td_payInfo"> |
|
| 601 |
+ <p>출금계좌<span></span> 국민은행 : 1234-56-78901</p> |
|
| 602 |
+ </td> |
|
| 603 |
+ <td><button class="btnType btnType20">현금영수증</button><button |
|
| 604 |
+ class="btnType btnType20">간이영수증</button></td> |
|
| 605 |
+ </tr> |
|
| 606 |
+ </tbody> |
|
| 607 |
+ </table> |
|
| 608 |
+ </div> |
|
| 609 |
+ <!-- //현금영수증 발행 전 --> |
|
| 610 |
+ |
|
| 611 |
+ <!-- 현금영수증 발행 후 --> |
|
| 612 |
+ <div class="tb_wrap pay3_list"> |
|
| 613 |
+ <table class="tType4"> |
|
| 614 |
+ <colgroup> |
|
| 615 |
+ <col style="width: 40px;"> |
|
| 616 |
+ <col style="width: 5%;"> |
|
| 617 |
+ <col style="width: 20%;"> |
|
| 618 |
+ <col style="width: 15%;"> |
|
| 619 |
+ <col style="width: 15%;"> |
|
| 620 |
+ <col style="width: 25%;"> |
|
| 621 |
+ <col style="width: 20%;"> |
|
| 622 |
+ </colgroup> |
|
| 623 |
+ <thead> |
|
| 624 |
+ <tr> |
|
| 625 |
+ <th> |
|
| 626 |
+ <label for="" class="label">전체 선택</label> |
|
| 627 |
+ <input type="checkbox"> |
|
| 628 |
+ </th> |
|
| 629 |
+ <th> |
|
| 630 |
+ 번호 |
|
| 631 |
+ <div class="sort_wrap"> |
|
| 632 |
+ <button type="button"><img src="/publish/images/sortUp.png" |
|
| 633 |
+ alt="오름차순으로 분류"></button> |
|
| 634 |
+ <button type="button"><img src="/publish/images/sortDown.png" |
|
| 635 |
+ alt="내림차순으로 분류"></button> |
|
| 636 |
+ </div> |
|
| 637 |
+ </th> |
|
| 638 |
+ <th> |
|
| 639 |
+ 결제일시 |
|
| 640 |
+ <div class="sort_wrap"> |
|
| 641 |
+ <button type="button"><img src="/publish/images/sortUp.png" |
|
| 642 |
+ alt="오름차순으로 분류"></button> |
|
| 643 |
+ <button type="button"><img src="/publish/images/sortDown.png" |
|
| 644 |
+ alt="내림차순으로 분류"></button> |
|
| 645 |
+ </div> |
|
| 646 |
+ </th> |
|
| 647 |
+ <th> |
|
| 648 |
+ 결제방식 |
|
| 649 |
+ <div class="sort_wrap"> |
|
| 650 |
+ <button type="button"><img src="/publish/images/sortUp.png" |
|
| 651 |
+ alt="오름차순으로 분류"></button> |
|
| 652 |
+ <button type="button"><img src="/publish/images/sortDown.png" |
|
| 653 |
+ alt="내림차순으로 분류"></button> |
|
| 654 |
+ </div> |
|
| 655 |
+ </th> |
|
| 656 |
+ <th> |
|
| 657 |
+ 결제금액 |
|
| 658 |
+ <div class="sort_wrap"> |
|
| 659 |
+ <button type="button"><img src="/publish/images/sortUp.png" |
|
| 660 |
+ alt="오름차순으로 분류"></button> |
|
| 661 |
+ <button type="button"><img src="/publish/images/sortDown.png" |
|
| 662 |
+ alt="내림차순으로 분류"></button> |
|
| 663 |
+ </div> |
|
| 664 |
+ </th> |
|
| 665 |
+ <th>결제정보</th> |
|
| 666 |
+ <th>증빙서류 발행 요청</th> |
|
| 667 |
+ </tr> |
|
| 668 |
+ </thead> |
|
| 669 |
+ <tbody> |
|
| 670 |
+ <tr> |
|
| 671 |
+ <td> |
|
| 672 |
+ <label for="" class="label">선택</label> |
|
| 673 |
+ <input type="checkbox"> |
|
| 674 |
+ </td> |
|
| 675 |
+ <td> |
|
| 676 |
+ <p>1</p> |
|
| 677 |
+ </td> |
|
| 678 |
+ <td> |
|
| 679 |
+ <p>2021-06-25, 09:30:52</p> |
|
| 680 |
+ </td> |
|
| 681 |
+ <td> |
|
| 682 |
+ <p>신용카드</p> |
|
| 683 |
+ </td> |
|
| 684 |
+ <td> |
|
| 685 |
+ <p>199,000</p> |
|
| 686 |
+ </td> |
|
| 687 |
+ <td> |
|
| 688 |
+ <p>신한카드 <span></span> 카드승인번호 : 12345678</p> |
|
| 689 |
+ </td> |
|
| 690 |
+ <td><button class="btnType btnType20">카드전표</button></td> |
|
| 691 |
+ </tr> |
|
| 692 |
+ <tr> |
|
| 693 |
+ <td> |
|
| 694 |
+ <label for="" class="label">선택</label> |
|
| 695 |
+ <input type="checkbox"> |
|
| 696 |
+ </td> |
|
| 697 |
+ <td> |
|
| 698 |
+ <p>2</p> |
|
| 699 |
+ </td> |
|
| 700 |
+ <td> |
|
| 701 |
+ <p>2021-06-25, 09:30:52</p> |
|
| 702 |
+ </td> |
|
| 703 |
+ <td> |
|
| 704 |
+ <p>무통장입금</p> |
|
| 705 |
+ </td> |
|
| 706 |
+ <td> |
|
| 707 |
+ <p>199,000</p> |
|
| 708 |
+ </td> |
|
| 709 |
+ <td> |
|
| 710 |
+ <p>신한카드 <span></span> 우리은행 : 1234-56-78901</p> |
|
| 711 |
+ </td> |
|
| 712 |
+ <td> |
|
| 713 |
+ <p class="fwRg c_222">세금계산서 발행완료</p> |
|
| 714 |
+ </td> |
|
| 715 |
+ </tr> |
|
| 716 |
+ <tr> |
|
| 717 |
+ <td> |
|
| 718 |
+ <label for="" class="label">선택</label> |
|
| 719 |
+ <input type="checkbox"> |
|
| 720 |
+ </td> |
|
| 721 |
+ <td> |
|
| 722 |
+ <p>3</p> |
|
| 723 |
+ </td> |
|
| 724 |
+ <td> |
|
| 725 |
+ <p>2021-06-25, 09:30:52</p> |
|
| 726 |
+ </td> |
|
| 727 |
+ <td> |
|
| 728 |
+ <p>포인트</p> |
|
| 729 |
+ </td> |
|
| 730 |
+ <td> |
|
| 731 |
+ <p>199,000</p> |
|
| 732 |
+ </td> |
|
| 733 |
+ <td> |
|
| 734 |
+ <p>사용포인트(수수료 포함) : 5,250</p> |
|
| 735 |
+ </td> |
|
| 736 |
+ <td>-</td> |
|
| 737 |
+ </tr> |
|
| 738 |
+ <tr> |
|
| 739 |
+ <td> |
|
| 740 |
+ <label for="" class="label">선택</label> |
|
| 741 |
+ <input type="checkbox"> |
|
| 742 |
+ </td> |
|
| 743 |
+ <td> |
|
| 744 |
+ <p>4</p> |
|
| 745 |
+ </td> |
|
| 746 |
+ <td> |
|
| 747 |
+ <p>2021-06-25, 09:30:52</p> |
|
| 748 |
+ </td> |
|
| 749 |
+ <td> |
|
| 750 |
+ <p>전용계좌</p> |
|
| 751 |
+ </td> |
|
| 752 |
+ <td> |
|
| 753 |
+ <p>199,000</p> |
|
| 754 |
+ </td> |
|
| 755 |
+ <td> |
|
| 756 |
+ <p>전용계좌번호 : 1234-56-78901</p> |
|
| 757 |
+ </td> |
|
| 758 |
+ <td> |
|
| 759 |
+ <p class="fwRg c_222">현금계산서 발행완료</p> |
|
| 760 |
+ </td> |
|
| 761 |
+ </tr> |
|
| 762 |
+ <tr> |
|
| 763 |
+ <td> |
|
| 764 |
+ <label for="" class="label">선택</label> |
|
| 765 |
+ <input type="checkbox"> |
|
| 766 |
+ </td> |
|
| 767 |
+ <td> |
|
| 768 |
+ <p>5</p> |
|
| 769 |
+ </td> |
|
| 770 |
+ <td> |
|
| 771 |
+ <p>2021-06-25, 09:30:52</p> |
|
| 772 |
+ </td> |
|
| 773 |
+ <td> |
|
| 774 |
+ <p>휴대폰</p> |
|
| 775 |
+ </td> |
|
| 776 |
+ <td> |
|
| 777 |
+ <p>199,000</p> |
|
| 778 |
+ </td> |
|
| 779 |
+ <td> |
|
| 780 |
+ <p>결제 휴대폰 번호 : 010-1234-5678</p> |
|
| 781 |
+ </td> |
|
| 782 |
+ <td> |
|
| 783 |
+ <p class="fwRg c_002c9a">세금계산서 발행대기</p> |
|
| 784 |
+ </td> |
|
| 785 |
+ </tr> |
|
| 786 |
+ <tr> |
|
| 787 |
+ <td> |
|
| 788 |
+ <label for="" class="label">선택</label> |
|
| 789 |
+ <input type="checkbox"> |
|
| 790 |
+ </td> |
|
| 791 |
+ <td> |
|
| 792 |
+ <p>6</p> |
|
| 793 |
+ </td> |
|
| 794 |
+ <td> |
|
| 795 |
+ <p>2021-06-25, 09:30:52</p> |
|
| 796 |
+ </td> |
|
| 797 |
+ <td> |
|
| 798 |
+ <p>즉시이체</p> |
|
| 799 |
+ </td> |
|
| 800 |
+ <td> |
|
| 801 |
+ <p>199,000</p> |
|
| 802 |
+ </td> |
|
| 803 |
+ <td> |
|
| 804 |
+ <p>출금계좌 <span></span> 국민은행 : 1234-56-78901</p> |
|
| 805 |
+ </td> |
|
| 806 |
+ <td> |
|
| 807 |
+ <p class="fwRg c_002c9a">세금계산서 발행대기</p> |
|
| 281 | 808 |
</td> |
| 282 | 809 |
</tr> |
| 283 | 810 |
</tbody> |
| 284 | 811 |
</table> |
| 285 |
- <div class="excel_middle"> |
|
| 286 |
- <div class="select_btnWrap clearfix"> |
|
| 287 |
- <div class="add_text2">※ 요금 결제내역은 결제일을 기준으로 최대 6개월까지만 조회 가능합니다.</div> |
|
| 288 |
- <div> |
|
| 289 |
- <button type="button" class="excel_btn"><i class="downroad"></i>엑셀 다운로드</button> |
|
| 290 |
- <button type="button" class="print_btn"><i class="print_img"></i>인쇄하기</button> |
|
| 291 |
- <label for="" class="label">검색조건 선택</label> |
|
| 292 |
- <select name="" id="" class="selType2"> |
|
| 293 |
- <option value="">10개</option> |
|
| 294 |
- <option value="">10개</option> |
|
| 295 |
- <option value="">10개</option> |
|
| 296 |
- </select> |
|
| 297 |
- </div> |
|
| 298 |
- </div> |
|
| 299 |
- </div> |
|
| 300 |
- <!-- 현금영수증 발행 전 --> |
|
| 301 |
- <div class="tb_wrap pay3_list"> |
|
| 302 |
- <table class="tType4"> |
|
| 303 |
- <colgroup> |
|
| 304 |
- <col style="width: 40px;"> |
|
| 305 |
- <col style="width: 5%;"> |
|
| 306 |
- <col style="width: 20%;"> |
|
| 307 |
- <col style="width: 15%;"> |
|
| 308 |
- <col style="width: 15%;"> |
|
| 309 |
- <col style="width: 25%;"> |
|
| 310 |
- <col style="width: 20%;"> |
|
| 311 |
- </colgroup> |
|
| 312 |
- <thead> |
|
| 313 |
- <tr> |
|
| 314 |
- <th> |
|
| 315 |
- <label for="" class="label">전체 선택</label> |
|
| 316 |
- <input type="checkbox"> |
|
| 317 |
- </th> |
|
| 318 |
- <th> |
|
| 319 |
- 번호 |
|
| 320 |
- <div class="sort_wrap"> |
|
| 321 |
- <button type="button"><img src="/publish/images/sortUp.png" alt="오름차순으로 분류"></button> |
|
| 322 |
- <button type="button"><img src="/publish/images/sortDown.png" alt="내림차순으로 분류"></button> |
|
| 323 |
- </div> |
|
| 324 |
- </th> |
|
| 325 |
- <th> |
|
| 326 |
- 결제일시 |
|
| 327 |
- <div class="sort_wrap"> |
|
| 328 |
- <button type="button"><img src="/publish/images/sortUp.png" alt="오름차순으로 분류"></button> |
|
| 329 |
- <button type="button"><img src="/publish/images/sortDown.png" alt="내림차순으로 분류"></button> |
|
| 330 |
- </div> |
|
| 331 |
- </th> |
|
| 332 |
- <th> |
|
| 333 |
- 결제방식 |
|
| 334 |
- <div class="sort_wrap"> |
|
| 335 |
- <button type="button"><img src="/publish/images/sortUp.png" alt="오름차순으로 분류"></button> |
|
| 336 |
- <button type="button"><img src="/publish/images/sortDown.png" alt="내림차순으로 분류"></button> |
|
| 337 |
- </div> |
|
| 338 |
- </th> |
|
| 339 |
- <th> |
|
| 340 |
- 결제금액 |
|
| 341 |
- <div class="sort_wrap"> |
|
| 342 |
- <button type="button"><img src="/publish/images/sortUp.png" alt="오름차순으로 분류"></button> |
|
| 343 |
- <button type="button"><img src="/publish/images/sortDown.png" alt="내림차순으로 분류"></button> |
|
| 344 |
- </div> |
|
| 345 |
- </th> |
|
| 346 |
- <th>결제정보</th> |
|
| 347 |
- <th>증빙서류 발행 요청</th> |
|
| 348 |
- </tr> |
|
| 349 |
- </thead> |
|
| 350 |
- <tbody> |
|
| 351 |
- <tr> |
|
| 352 |
- <td> |
|
| 353 |
- <label for="" class="label">선택</label> |
|
| 354 |
- <input type="checkbox"> |
|
| 355 |
- </td> |
|
| 356 |
- <td><p>1</p></td> |
|
| 357 |
- <td><p>2021-06-25, 09:30:52</p></td> |
|
| 358 |
- <td><p>신용카드</p></td> |
|
| 359 |
- <td class="td_price"><p>199,000</p></td> |
|
| 360 |
- <td class="td_payInfo"><p>신한카드<span></span> 카드승인번호 : 12345678</p></td> |
|
| 361 |
- <td><button class="btnType btnType20">카드전표</button></td> |
|
| 362 |
- </tr> |
|
| 363 |
- <tr> |
|
| 364 |
- <td> |
|
| 365 |
- <label for="" class="label">선택</label> |
|
| 366 |
- <input type="checkbox"> |
|
| 367 |
- </td> |
|
| 368 |
- <td><p>2</p></td> |
|
| 369 |
- <td><p>2021-06-25, 09:30:52</p></td> |
|
| 370 |
- <td><p>무통장입금</p></td> |
|
| 371 |
- <td class="td_price"><p>199,000</p></td> |
|
| 372 |
- <td class="td_payInfo"><p>신한카드<span></span> 우리은행 : 1234-56-78901</p></td> |
|
| 373 |
- <td><button class="btnType btnType20" data-tooltip="cashReceipt_popup01">현금영수증</button><button class="btnType btnType20">간이영수증</button></td> |
|
| 374 |
- </tr> |
|
| 375 |
- <tr> |
|
| 376 |
- <td> |
|
| 377 |
- <label for="" class="label">선택</label> |
|
| 378 |
- <input type="checkbox"> |
|
| 379 |
- </td> |
|
| 380 |
- <td><p>3</p></td> |
|
| 381 |
- <td><p>2021-06-25, 09:30:52</p></td> |
|
| 382 |
- <td><p>포인트</p></td> |
|
| 383 |
- <td><p>199,000</p></td> |
|
| 384 |
- <td class="td_payInfo"><p>사용포인트(수수료 포함) : 5,250</p></td> |
|
| 385 |
- <td></td> |
|
| 386 |
- </tr> |
|
| 387 |
- <tr> |
|
| 388 |
- <td> |
|
| 389 |
- <label for="" class="label">선택</label> |
|
| 390 |
- <input type="checkbox"> |
|
| 391 |
- </td> |
|
| 392 |
- <td><p>4</p></td> |
|
| 393 |
- <td><p>2021-06-25, 09:30:52</p></td> |
|
| 394 |
- <td><p>전용계좌</p></td> |
|
| 395 |
- <td><p>199,000</p></td> |
|
| 396 |
- <td class="td_payInfo"><p>전용계좌번호 : 1234-56-78901</p></td> |
|
| 397 |
- <td><button class="btnType btnType20">현금영수증</button><button class="btnType btnType20">간이영수증</button></td> |
|
| 398 |
- </tr> |
|
| 399 |
- <tr> |
|
| 400 |
- <td> |
|
| 401 |
- <label for="" class="label">선택</label> |
|
| 402 |
- <input type="checkbox"> |
|
| 403 |
- </td> |
|
| 404 |
- <td><p>5</p></td> |
|
| 405 |
- <td><p>2021-06-25, 09:30:52</p></td> |
|
| 406 |
- <td><p>휴대폰</p></td> |
|
| 407 |
- <td><p>199,000</p></td> |
|
| 408 |
- <td class="td_payInfo"><p>결제 휴대폰 번호 : 010-1234-5678</p></td> |
|
| 409 |
- <td><button class="btnType btnType20">간이영수증</button></td> |
|
| 410 |
- </tr> |
|
| 411 |
- <tr> |
|
| 412 |
- <td> |
|
| 413 |
- <label for="" class="label">선택</label> |
|
| 414 |
- <input type="checkbox"> |
|
| 415 |
- </td> |
|
| 416 |
- <td><p>6</p></td> |
|
| 417 |
- <td><p>2021-06-25, 09:30:52</p></td> |
|
| 418 |
- <td><p>즉시이체</p></td> |
|
| 419 |
- <td><p>199,000</p></td> |
|
| 420 |
- <td class="td_payInfo"><p>출금계좌<span></span> 국민은행 : 1234-56-78901</p></td> |
|
| 421 |
- <td><button class="btnType btnType20">현금영수증</button><button class="btnType btnType20">간이영수증</button></td> |
|
| 422 |
- </tr> |
|
| 423 |
- </tbody> |
|
| 424 |
- </table> |
|
| 425 |
- </div> |
|
| 426 |
- <!-- //현금영수증 발행 전 --> |
|
| 427 |
- |
|
| 428 |
- <!-- 현금영수증 발행 후 --> |
|
| 429 |
- <div class="tb_wrap pay3_list"> |
|
| 430 |
- <table class="tType4"> |
|
| 431 |
- <colgroup> |
|
| 432 |
- <col style="width: 40px;"> |
|
| 433 |
- <col style="width: 5%;"> |
|
| 434 |
- <col style="width: 20%;"> |
|
| 435 |
- <col style="width: 15%;"> |
|
| 436 |
- <col style="width: 15%;"> |
|
| 437 |
- <col style="width: 25%;"> |
|
| 438 |
- <col style="width: 20%;"> |
|
| 439 |
- </colgroup> |
|
| 440 |
- <thead> |
|
| 441 |
- <tr> |
|
| 442 |
- <th> |
|
| 443 |
- <label for="" class="label">전체 선택</label> |
|
| 444 |
- <input type="checkbox"> |
|
| 445 |
- </th> |
|
| 446 |
- <th> |
|
| 447 |
- 번호 |
|
| 448 |
- <div class="sort_wrap"> |
|
| 449 |
- <button type="button"><img src="/publish/images/sortUp.png" alt="오름차순으로 분류"></button> |
|
| 450 |
- <button type="button"><img src="/publish/images/sortDown.png" alt="내림차순으로 분류"></button> |
|
| 451 |
- </div> |
|
| 452 |
- </th> |
|
| 453 |
- <th> |
|
| 454 |
- 결제일시 |
|
| 455 |
- <div class="sort_wrap"> |
|
| 456 |
- <button type="button"><img src="/publish/images/sortUp.png" alt="오름차순으로 분류"></button> |
|
| 457 |
- <button type="button"><img src="/publish/images/sortDown.png" alt="내림차순으로 분류"></button> |
|
| 458 |
- </div> |
|
| 459 |
- </th> |
|
| 460 |
- <th> |
|
| 461 |
- 결제방식 |
|
| 462 |
- <div class="sort_wrap"> |
|
| 463 |
- <button type="button"><img src="/publish/images/sortUp.png" alt="오름차순으로 분류"></button> |
|
| 464 |
- <button type="button"><img src="/publish/images/sortDown.png" alt="내림차순으로 분류"></button> |
|
| 465 |
- </div> |
|
| 466 |
- </th> |
|
| 467 |
- <th> |
|
| 468 |
- 결제금액 |
|
| 469 |
- <div class="sort_wrap"> |
|
| 470 |
- <button type="button"><img src="/publish/images/sortUp.png" alt="오름차순으로 분류"></button> |
|
| 471 |
- <button type="button"><img src="/publish/images/sortDown.png" alt="내림차순으로 분류"></button> |
|
| 472 |
- </div> |
|
| 473 |
- </th> |
|
| 474 |
- <th>결제정보</th> |
|
| 475 |
- <th>증빙서류 발행 요청</th> |
|
| 476 |
- </tr> |
|
| 477 |
- </thead> |
|
| 478 |
- <tbody> |
|
| 479 |
- <tr> |
|
| 480 |
- <td> |
|
| 481 |
- <label for="" class="label">선택</label> |
|
| 482 |
- <input type="checkbox"> |
|
| 483 |
- </td> |
|
| 484 |
- <td><p>1</p></td> |
|
| 485 |
- <td><p>2021-06-25, 09:30:52</p></td> |
|
| 486 |
- <td><p>신용카드</p></td> |
|
| 487 |
- <td><p>199,000</p></td> |
|
| 488 |
- <td><p>신한카드 <span></span> 카드승인번호 : 12345678</p></td> |
|
| 489 |
- <td><button class="btnType btnType20">카드전표</button></td> |
|
| 490 |
- </tr> |
|
| 491 |
- <tr> |
|
| 492 |
- <td> |
|
| 493 |
- <label for="" class="label">선택</label> |
|
| 494 |
- <input type="checkbox"> |
|
| 495 |
- </td> |
|
| 496 |
- <td><p>2</p></td> |
|
| 497 |
- <td><p>2021-06-25, 09:30:52</p></td> |
|
| 498 |
- <td><p>무통장입금</p></td> |
|
| 499 |
- <td><p>199,000</p></td> |
|
| 500 |
- <td><p>신한카드 <span></span> 우리은행 : 1234-56-78901</p></td> |
|
| 501 |
- <td><p class="fwRg c_222">세금계산서 발행완료</p></td> |
|
| 502 |
- </tr> |
|
| 503 |
- <tr> |
|
| 504 |
- <td> |
|
| 505 |
- <label for="" class="label">선택</label> |
|
| 506 |
- <input type="checkbox"> |
|
| 507 |
- </td> |
|
| 508 |
- <td><p>3</p></td> |
|
| 509 |
- <td><p>2021-06-25, 09:30:52</p></td> |
|
| 510 |
- <td><p>포인트</p></td> |
|
| 511 |
- <td><p>199,000</p></td> |
|
| 512 |
- <td><p>사용포인트(수수료 포함) : 5,250</p></td> |
|
| 513 |
- <td>-</td> |
|
| 514 |
- </tr> |
|
| 515 |
- <tr> |
|
| 516 |
- <td> |
|
| 517 |
- <label for="" class="label">선택</label> |
|
| 518 |
- <input type="checkbox"> |
|
| 519 |
- </td> |
|
| 520 |
- <td><p>4</p></td> |
|
| 521 |
- <td><p>2021-06-25, 09:30:52</p></td> |
|
| 522 |
- <td><p>전용계좌</p></td> |
|
| 523 |
- <td><p>199,000</p></td> |
|
| 524 |
- <td><p>전용계좌번호 : 1234-56-78901</p></td> |
|
| 525 |
- <td><p class="fwRg c_222">현금계산서 발행완료</p></td> |
|
| 526 |
- </tr> |
|
| 527 |
- <tr> |
|
| 528 |
- <td> |
|
| 529 |
- <label for="" class="label">선택</label> |
|
| 530 |
- <input type="checkbox"> |
|
| 531 |
- </td> |
|
| 532 |
- <td><p>5</p></td> |
|
| 533 |
- <td><p>2021-06-25, 09:30:52</p></td> |
|
| 534 |
- <td><p>휴대폰</p></td> |
|
| 535 |
- <td><p>199,000</p></td> |
|
| 536 |
- <td><p>결제 휴대폰 번호 : 010-1234-5678</p></td> |
|
| 537 |
- <td><p class="fwRg c_002c9a">세금계산서 발행대기</p></td> |
|
| 538 |
- </tr> |
|
| 539 |
- <tr> |
|
| 540 |
- <td> |
|
| 541 |
- <label for="" class="label">선택</label> |
|
| 542 |
- <input type="checkbox"> |
|
| 543 |
- </td> |
|
| 544 |
- <td><p>6</p></td> |
|
| 545 |
- <td><p>2021-06-25, 09:30:52</p></td> |
|
| 546 |
- <td><p>즉시이체</p></td> |
|
| 547 |
- <td><p>199,000</p></td> |
|
| 548 |
- <td><p>출금계좌 <span></span> 국민은행 : 1234-56-78901</p></td> |
|
| 549 |
- <td><p class="fwRg c_002c9a">세금계산서 발행대기</p></td> |
|
| 550 |
- </tr> |
|
| 551 |
- </tbody> |
|
| 552 |
- </table> |
|
| 553 |
- </div> |
|
| 554 |
- <!-- //현금영수증 발행 후 --> |
|
| 812 |
+ </div> |
|
| 813 |
+ <!-- //현금영수증 발행 후 --> |
|
| 555 | 814 |
<!-- pagination --> |
| 556 | 815 |
<ul class="pagination"> |
| 557 |
- <li class="page_first"><button><img src="/publish/images/content/page_first.png"alt=""></button></li> |
|
| 558 |
- <li class="page_prev"><button><img src="/publish/images/content/page_prev.png"alt=""></button></li> |
|
| 816 |
+ <li class="page_first"><button><img src="/publish/images/content/page_first.png" |
|
| 817 |
+ alt=""></button></li> |
|
| 818 |
+ <li class="page_prev"><button><img src="/publish/images/content/page_prev.png" |
|
| 819 |
+ alt=""></button></li> |
|
| 559 | 820 |
<li class="on"><button>1</button></li> |
| 560 | 821 |
<li><button>2</button></li> |
| 561 | 822 |
<li><button>3</button></li> |
... | ... | @@ -566,222 +827,236 @@ |
| 566 | 827 |
<li><button>8</button></li> |
| 567 | 828 |
<li><button>9</button></li> |
| 568 | 829 |
<li><button>10</button></li> |
| 569 |
- <li class="page_next"><button><img src="/publish/images/content/page_next.png"alt=""></button></li> |
|
| 570 |
- <li class="page_last"><button><img src="/publish/images/content/page_last.png"alt=""></button></li> |
|
| 830 |
+ <li class="page_next"><button><img src="/publish/images/content/page_next.png" |
|
| 831 |
+ alt=""></button></li> |
|
| 832 |
+ <li class="page_last"><button><img src="/publish/images/content/page_last.png" |
|
| 833 |
+ alt=""></button></li> |
|
| 571 | 834 |
</ul><!-- pagination --> |
| 572 |
- </div><!-- 결제내역 - 요금결제내역 - 전체부터 휴대폰결제까지(환불신청빼고 같은 폼) --> |
|
| 573 |
- <!-- 결제내역 - 요금결제내역 - 환불신청 --> |
|
| 574 |
- <div class="pay_cont current" id="tab1_6"> |
|
| 575 |
- <div class="titBox"> |
|
| 576 |
- <p>- 포인트는 환불되지 않습니다.</p> |
|
| 577 |
- <p>- 환불 신청 금액에 따라 환불 수수료가 차감됩니다.</p> |
|
| 578 |
- <p>- 결제 방식에 따라 환불 수수료는 다르게 적용될 수 있습니다.</p> |
|
| 579 |
- <p>- 취소 처리기간 경과시에 증빙서류를 첨부해야 환불처리 가능하며, 결제대행 수수료가 부과됩니다.</p> |
|
| 580 |
- <p>- 1,000원 이하의 잔액은 환불이 불가합니다.</p> |
|
| 581 |
- <p>- 무통장입금 제외 모든 결제는 부분취소가 불가하여, 사용금액(차액) 결제 후 전액취소를 원칙으로 합니다.</p> |
|
| 582 |
- <p> (예) 핸드폰 3만원 결제 후 3천원 사용한 경우, 3,300원(부가세포함)송금 또는 3천원 핸드폰 결제 후 3만원 전액취소</p> |
|
| 583 |
- <p><span>- 환불업무는 매주 수요일에 순차적으로 처리됩니다.</span></p> |
|
| 584 |
- </div> |
|
| 585 |
- <!-- <div class="pay_info"> |
|
| 835 |
+ </div><!-- 결제내역 - 요금결제내역 - 전체부터 휴대폰결제까지(환불신청빼고 같은 폼) --> |
|
| 836 |
+ <!-- 결제내역 - 요금결제내역 - 환불신청 --> |
|
| 837 |
+ <div class="pay_cont current" id="tab1_8"> |
|
| 838 |
+ <div class="titBox"> |
|
| 839 |
+ <p>- 포인트는 환불되지 않습니다.</p> |
|
| 840 |
+ <p>- 환불 신청 금액에 따라 환불 수수료가 차감됩니다.</p> |
|
| 841 |
+ <p>- 결제 방식에 따라 환불 수수료는 다르게 적용될 수 있습니다.</p> |
|
| 842 |
+ <p>- 취소 처리기간 경과시에 증빙서류를 첨부해야 환불처리 가능하며, 결제대행 수수료가 부과됩니다.</p> |
|
| 843 |
+ <p>- 1,000원 이하의 잔액은 환불이 불가합니다.</p> |
|
| 844 |
+ <p>- 무통장입금 제외 모든 결제는 부분취소가 불가하여, 사용금액(차액) 결제 후 전액취소를 원칙으로 합니다.</p> |
|
| 845 |
+ <p> (예) 핸드폰 3만원 결제 후 3천원 사용한 경우, 3,300원(부가세포함)송금 또는 3천원 핸드폰 결제 후 3만원 전액취소</p> |
|
| 846 |
+ <p><span>- 환불업무는 매주 수요일에 순차적으로 처리됩니다.</span></p> |
|
| 847 |
+ </div> |
|
| 848 |
+ <!-- <div class="pay_info"> |
|
| 586 | 849 |
<p>※ 환불 수수료 안내</p> |
| 587 | 850 |
<p>- 10,000원 이하 : <span>1,000</span>원</p> |
| 588 | 851 |
<p>- 10,000원 초과 : <span>10</span>%</p> |
| 589 | 852 |
</div> --> |
| 590 |
- <ul class="clause_list"> |
|
| 591 |
- <li class="list_open on"> |
|
| 592 |
- <div class="clause_list_head"> |
|
| 593 |
- <div class="list_head_in"> |
|
| 594 |
- <span><i></i>증빙서류 및 환불수수료 안내</span> |
|
| 595 |
- <button type="button" onclick="clause_list(this);"><i></i></button> |
|
| 853 |
+ <ul class="clause_list"> |
|
| 854 |
+ <li class="list_open on"> |
|
| 855 |
+ <div class="clause_list_head"> |
|
| 856 |
+ <div class="list_head_in"> |
|
| 857 |
+ <span><i></i>증빙서류 및 환불수수료 안내</span> |
|
| 858 |
+ <button type="button" onclick="clause_list(this);"><i></i></button> |
|
| 859 |
+ </div> |
|
| 860 |
+ </div> |
|
| 861 |
+ <div class="clause_list_body"> |
|
| 862 |
+ <table class="refund_info"> |
|
| 863 |
+ <caption>증빙서류 및 환불수수료 안내</caption> |
|
| 864 |
+ <colgroup> |
|
| 865 |
+ <col style="width: 15%;"> |
|
| 866 |
+ <col style="width: 22%;"> |
|
| 867 |
+ <col style="width: auto;"> |
|
| 868 |
+ <col style="width: 14%;"> |
|
| 869 |
+ </colgroup> |
|
| 870 |
+ <thead> |
|
| 871 |
+ <tr> |
|
| 872 |
+ <th>결제방법</th> |
|
| 873 |
+ <th>취소가능기간</th> |
|
| 874 |
+ <th>증빙서류</th> |
|
| 875 |
+ <th>환불수수료</th> |
|
| 876 |
+ </tr> |
|
| 877 |
+ </thead> |
|
| 878 |
+ <tbody> |
|
| 879 |
+ <tr> |
|
| 880 |
+ <td>전용계좌</td> |
|
| 881 |
+ <td>명의자 계좌로 환불</td> |
|
| 882 |
+ <td>이체확인증(이체한 통장내역) 통장사본</td> |
|
| 883 |
+ <td>환불금액의 3%</td> |
|
| 884 |
+ </tr> |
|
| 885 |
+ <tr> |
|
| 886 |
+ <td>신용카드</td> |
|
| 887 |
+ <td>결제일 기준 2개월 내 취소가능</td> |
|
| 888 |
+ <td>통장사본</td> |
|
| 889 |
+ <td>환불금액의 5%</td> |
|
| 890 |
+ </tr> |
|
| 891 |
+ <tr> |
|
| 892 |
+ <td>무통장입금</td> |
|
| 893 |
+ <td>명의자 계좌로 환불</td> |
|
| 894 |
+ <td>이체확인증(이체한 통장내역) 통장사본</td> |
|
| 895 |
+ <td>환불금액의 3%</td> |
|
| 896 |
+ </tr> |
|
| 897 |
+ <tr> |
|
| 898 |
+ <td>휴대폰결제</td> |
|
| 899 |
+ <td>결제 당월 취소가능</td> |
|
| 900 |
+ <td>결제당월 일반 전화요금 납입영수증, 일반전화 명의자의 통장사본</td> |
|
| 901 |
+ <td>환불금액의 8%</td> |
|
| 902 |
+ </tr> |
|
| 903 |
+ <tr> |
|
| 904 |
+ <td>즉시이체</td> |
|
| 905 |
+ <td>결제 당일건만 취소가능</td> |
|
| 906 |
+ <td>통장사본</td> |
|
| 907 |
+ <td>환불금액의 5%</td> |
|
| 908 |
+ </tr> |
|
| 909 |
+ </tbody> |
|
| 910 |
+ </table> |
|
| 911 |
+ </div> |
|
| 912 |
+ </li> |
|
| 913 |
+ </ul> |
|
| 914 |
+ <p class="tType1_title">환불 금액 입력</p> |
|
| 915 |
+ <table class="tType1"> |
|
| 916 |
+ <caption>환불 가능, 신청, 예정에 대한 표</caption> |
|
| 917 |
+ <colgroup> |
|
| 918 |
+ <col style="width: 160px;"> |
|
| 919 |
+ <col style="width: auto;"> |
|
| 920 |
+ </colgroup> |
|
| 921 |
+ <tbody> |
|
| 922 |
+ <tr> |
|
| 923 |
+ <th scope="row">환불 가능 금액</th> |
|
| 924 |
+ <td class="price_ref1"><span>120,000</span>원</td> |
|
| 925 |
+ </tr> |
|
| 926 |
+ <tr> |
|
| 927 |
+ <th scope="row">환불 신청 금액</th> |
|
| 928 |
+ <td> |
|
| 929 |
+ <input type="text" style="margin-right: 18px;" size="36"> |
|
| 930 |
+ <label for="" class="price_input">원</label> |
|
| 931 |
+ <input type="checkbox" id="" class="re"> |
|
| 932 |
+ <label for="" class="alarm label">선택</label> |
|
| 933 |
+ <span class="text_req">전액환불(1,000원 이하 환불 불가)</span> |
|
| 934 |
+ </td> |
|
| 935 |
+ </tr> |
|
| 936 |
+ <tr> |
|
| 937 |
+ <th scope="row">환불 예정 금액</th> |
|
| 938 |
+ <td class="price_ref1"><span class="c_e40000">120,000</span>원<span |
|
| 939 |
+ class="reqTxt5">(수수료 10% 제외)</span></td> |
|
| 940 |
+ </tr> |
|
| 941 |
+ </tbody> |
|
| 942 |
+ </table> |
|
| 943 |
+ <p class="tType1_title">환불 계좌 입력 <span>(가입자가 충전하지 않았거나 타인의 계좌로 환불신청하는 경우 별도 서류가 요구될 수 있으며, 서류 |
|
| 944 |
+ 불충분 시 환불되지 않습니다.)</span></p> |
|
| 945 |
+ <table class="tType1"> |
|
| 946 |
+ <caption>예금주, 계좌정보, 연락처, 통장사본, 증빙서류에 대한 표</caption> |
|
| 947 |
+ <colgroup> |
|
| 948 |
+ <col style="width: 160px;"> |
|
| 949 |
+ <col style="width: auto;"> |
|
| 950 |
+ </colgroup> |
|
| 951 |
+ <tbody> |
|
| 952 |
+ <tr> |
|
| 953 |
+ <th scope="row">예금주</th> |
|
| 954 |
+ <td class="send_cf"> |
|
| 955 |
+ <input id="radio1" type="radio" name="" checked="checked"> |
|
| 956 |
+ <label for="radio1">가입자</label> |
|
| 957 |
+ <input id="radio2" type="radio" name=""> |
|
| 958 |
+ <label for="radio2">가입자 외</label> |
|
| 959 |
+ <input id="radio3" type="radio" name=""> |
|
| 960 |
+ <label for="radio3">기업</label> |
|
| 961 |
+ </td> |
|
| 962 |
+ </tr> |
|
| 963 |
+ <tr> |
|
| 964 |
+ <th scope="row">계좌정보</th> |
|
| 965 |
+ <td> |
|
| 966 |
+ <label for="" class="label">예금주</label> |
|
| 967 |
+ <input type="text" placeholder="예금주 : 홍길동" readonly class="readonly"> |
|
| 968 |
+ <select name="" id="" class="selType2"> |
|
| 969 |
+ <option value="">은행선택</option> |
|
| 970 |
+ <option value="">신한은행</option> |
|
| 971 |
+ <option value="">우리은행</option> |
|
| 972 |
+ </select> |
|
| 973 |
+ <label for="" class="label">계좌번호 입력</label> |
|
| 974 |
+ <input type="text" placeholder="계좌번호를 입력해주세요. 숫자만 입력가능" |
|
| 975 |
+ onfocus="this.placeholder=''" |
|
| 976 |
+ onblur="this.placeholder='계좌번호를 입력해주세요. 숫자만 입력가능'" size="36" |
|
| 977 |
+ class="account_put"> |
|
| 978 |
+ </td> |
|
| 979 |
+ </tr> |
|
| 980 |
+ <tr> |
|
| 981 |
+ <th scope="row">연락처</th> |
|
| 982 |
+ <td> |
|
| 983 |
+ <label for="" class="label">연락처 입력</label> |
|
| 984 |
+ <input type="text" placeholder="‘-’ 없이 숫자만 입력" onfocus="this.placeholder=''" |
|
| 985 |
+ onblur="this.placeholder='‘-’ 없이 숫자만 입력'" size="36"> |
|
| 986 |
+ </td> |
|
| 987 |
+ </tr> |
|
| 988 |
+ <tr> |
|
| 989 |
+ <th scope="row">통장사본</th> |
|
| 990 |
+ <td class="attachedFile_wrap"> |
|
| 991 |
+ <label for="" class="label">통장사본 파일첨부</label> |
|
| 992 |
+ <input type="text" placeholder="* 첨부가능 파일 jpg, gif, png 각 2MB 이내" readonly |
|
| 993 |
+ size="36"> |
|
| 994 |
+ <button type="button" class="btnType btnType9">파일첨부</button> |
|
| 995 |
+ <span class="reqTxt6">※ 파일첨부가 안되시는 경우, 메일 munjaon@iten.co.kr로 보내주세요</span> |
|
| 996 |
+ </td> |
|
| 997 |
+ </tr> |
|
| 998 |
+ <tr> |
|
| 999 |
+ <th scope="row">증빙서류</th> |
|
| 1000 |
+ <td class="attachedFile_wrap"> |
|
| 1001 |
+ <label for="" class="label">증빙서류</label> |
|
| 1002 |
+ <input type="text" placeholder="* 첨부가능 파일 jpg, gif, png 각 2MB 이내" readonly |
|
| 1003 |
+ size="36"> |
|
| 1004 |
+ <button type="button" class="btnType btnType9">파일첨부</button> |
|
| 1005 |
+ <span class="reqTxt6">※ 이체확인증 또는 핸드폰 납부 영수증을 첨부해주세요</span> |
|
| 1006 |
+ </td> |
|
| 1007 |
+ </tr> |
|
| 1008 |
+ </tbody> |
|
| 1009 |
+ </table> |
|
| 1010 |
+ <p class="tType1_title">환불 사유</p> |
|
| 1011 |
+ <table class="tType1"> |
|
| 1012 |
+ <caption>환불사유, 비밀번호에 대한 표</caption> |
|
| 1013 |
+ <colgroup> |
|
| 1014 |
+ <col style="width: 160px;"> |
|
| 1015 |
+ <col style="width: auto;"> |
|
| 1016 |
+ </colgroup> |
|
| 1017 |
+ <tbody> |
|
| 1018 |
+ <tr> |
|
| 1019 |
+ <th scope="row" style="line-height: 70px;">환불사유</th> |
|
| 1020 |
+ <td class="send_cf"> |
|
| 1021 |
+ <div> |
|
| 1022 |
+ <input id="radio4" type="radio" name="" checked="checked"> |
|
| 1023 |
+ <label for="radio4">문자 단가가 높음</label> |
|
| 1024 |
+ <input id="radio5" type="radio" name=""> |
|
| 1025 |
+ <label for="radio5">사용할 일이 없어서</label> |
|
| 1026 |
+ <input id="radio6" type="radio" name=""> |
|
| 1027 |
+ <label for="radio6">사이트 이용 불만</label> |
|
| 596 | 1028 |
</div> |
| 597 |
- </div> |
|
| 598 |
- <div class="clause_list_body"> |
|
| 599 |
- <table class="refund_info"> |
|
| 600 |
- <caption>증빙서류 및 환불수수료 안내</caption> |
|
| 601 |
- <colgroup> |
|
| 602 |
- <col style="width: 15%;"> |
|
| 603 |
- <col style="width: 22%;"> |
|
| 604 |
- <col style="width: auto;"> |
|
| 605 |
- <col style="width: 14%;"> |
|
| 606 |
- </colgroup> |
|
| 607 |
- <thead> |
|
| 608 |
- <tr> |
|
| 609 |
- <th>결제방법</th> |
|
| 610 |
- <th>취소가능기간</th> |
|
| 611 |
- <th>증빙서류</th> |
|
| 612 |
- <th>환불수수료</th> |
|
| 613 |
- </tr> |
|
| 614 |
- </thead> |
|
| 615 |
- <tbody> |
|
| 616 |
- <tr> |
|
| 617 |
- <td>전용계좌</td> |
|
| 618 |
- <td>명의자 계좌로 환불</td> |
|
| 619 |
- <td>이체확인증(이체한 통장내역) 통장사본</td> |
|
| 620 |
- <td>환불금액의 3%</td> |
|
| 621 |
- </tr> |
|
| 622 |
- <tr> |
|
| 623 |
- <td>신용카드</td> |
|
| 624 |
- <td>결제일 기준 2개월 내 취소가능</td> |
|
| 625 |
- <td>통장사본</td> |
|
| 626 |
- <td>환불금액의 5%</td> |
|
| 627 |
- </tr> |
|
| 628 |
- <tr> |
|
| 629 |
- <td>무통장입금</td> |
|
| 630 |
- <td>명의자 계좌로 환불</td> |
|
| 631 |
- <td>이체확인증(이체한 통장내역) 통장사본</td> |
|
| 632 |
- <td>환불금액의 3%</td> |
|
| 633 |
- </tr> |
|
| 634 |
- <tr> |
|
| 635 |
- <td>휴대폰결제</td> |
|
| 636 |
- <td>결제 당월 취소가능</td> |
|
| 637 |
- <td>결제당월 일반 전화요금 납입영수증, 일반전화 명의자의 통장사본</td> |
|
| 638 |
- <td>환불금액의 8%</td> |
|
| 639 |
- </tr> |
|
| 640 |
- <tr> |
|
| 641 |
- <td>즉시이체</td> |
|
| 642 |
- <td>결제 당일건만 취소가능</td> |
|
| 643 |
- <td>통장사본</td> |
|
| 644 |
- <td>환불금액의 5%</td> |
|
| 645 |
- </tr> |
|
| 646 |
- </tbody> |
|
| 647 |
- </table> |
|
| 648 |
- </div> |
|
| 649 |
- </li> |
|
| 650 |
- </ul> |
|
| 651 |
- <p class="tType1_title">환불 금액 입력</p> |
|
| 652 |
- <table class="tType1"> |
|
| 653 |
- <caption>환불 가능, 신청, 예정에 대한 표</caption> |
|
| 654 |
- <colgroup> |
|
| 655 |
- <col style="width: 160px;"> |
|
| 656 |
- <col style="width: auto;"> |
|
| 657 |
- </colgroup> |
|
| 658 |
- <tbody> |
|
| 659 |
- <tr> |
|
| 660 |
- <th scope="row">환불 가능 금액</th> |
|
| 661 |
- <td class="price_ref1"><span>120,000</span>원</td> |
|
| 662 |
- </tr> |
|
| 663 |
- <tr> |
|
| 664 |
- <th scope="row">환불 신청 금액</th> |
|
| 665 |
- <td> |
|
| 666 |
- <input type="text" style="margin-right: 18px;" size="36"> |
|
| 667 |
- <label for="" class="price_input">원</label> |
|
| 668 |
- <input type="checkbox" id="" class="re"> |
|
| 669 |
- <label for="" class="alarm label">선택</label> |
|
| 670 |
- <span class="text_req">전액환불(1,000원 이하 환불 불가)</span> |
|
| 671 |
- </td> |
|
| 672 |
- </tr> |
|
| 673 |
- <tr> |
|
| 674 |
- <th scope="row">환불 예정 금액</th> |
|
| 675 |
- <td class="price_ref1"><span class="c_e40000">120,000</span>원<span class="reqTxt5">(수수료 10% 제외)</span></td> |
|
| 676 |
- </tr> |
|
| 677 |
- </tbody> |
|
| 678 |
- </table> |
|
| 679 |
- <p class="tType1_title">환불 계좌 입력 <span>(가입자가 충전하지 않았거나 타인의 계좌로 환불신청하는 경우 별도 서류가 요구될 수 있으며, 서류 불충분 시 환불되지 않습니다.)</span></p> |
|
| 680 |
- <table class="tType1"> |
|
| 681 |
- <caption>예금주, 계좌정보, 연락처, 통장사본, 증빙서류에 대한 표</caption> |
|
| 682 |
- <colgroup> |
|
| 683 |
- <col style="width: 160px;"> |
|
| 684 |
- <col style="width: auto;"> |
|
| 685 |
- </colgroup> |
|
| 686 |
- <tbody> |
|
| 687 |
- <tr> |
|
| 688 |
- <th scope="row">예금주</th> |
|
| 689 |
- <td class="send_cf"> |
|
| 690 |
- <input id="radio1" type="radio"name="" checked="checked"> |
|
| 691 |
- <label for="radio1">가입자</label> |
|
| 692 |
- <input id="radio2" type="radio" name=""> |
|
| 693 |
- <label for="radio2">가입자 외</label> |
|
| 694 |
- <input id="radio3" type="radio" name=""> |
|
| 695 |
- <label for="radio3">기업</label> |
|
| 696 |
- </td> |
|
| 697 |
- </tr> |
|
| 698 |
- <tr> |
|
| 699 |
- <th scope="row">계좌정보</th> |
|
| 700 |
- <td> |
|
| 701 |
- <label for="" class="label">예금주</label> |
|
| 702 |
- <input type="text" placeholder="예금주 : 홍길동" readonly class="readonly"> |
|
| 703 |
- <select name="" id="" class="selType2"> |
|
| 704 |
- <option value="">은행선택</option> |
|
| 705 |
- <option value="">신한은행</option> |
|
| 706 |
- <option value="">우리은행</option> |
|
| 707 |
- </select> |
|
| 708 |
- <label for="" class="label">계좌번호 입력</label> |
|
| 709 |
- <input type="text" placeholder="계좌번호를 입력해주세요. 숫자만 입력가능" onfocus="this.placeholder=''" onblur="this.placeholder='계좌번호를 입력해주세요. 숫자만 입력가능'" size="36" class="account_put"> |
|
| 710 |
- </td> |
|
| 711 |
- </tr> |
|
| 712 |
- <tr> |
|
| 713 |
- <th scope="row">연락처</th> |
|
| 714 |
- <td> |
|
| 715 |
- <label for="" class="label">연락처 입력</label> |
|
| 716 |
- <input type="text" placeholder="‘-’ 없이 숫자만 입력" onfocus="this.placeholder=''" onblur="this.placeholder='‘-’ 없이 숫자만 입력'" size="36"> |
|
| 717 |
- </td> |
|
| 718 |
- </tr> |
|
| 719 |
- <tr> |
|
| 720 |
- <th scope="row">통장사본</th> |
|
| 721 |
- <td class="attachedFile_wrap"> |
|
| 722 |
- <label for="" class="label">통장사본 파일첨부</label> |
|
| 723 |
- <input type="text" placeholder="* 첨부가능 파일 jpg, gif, png 각 2MB 이내" readonly size="36"> |
|
| 724 |
- <button type="button" class="btnType btnType9">파일첨부</button> |
|
| 725 |
- <span class="reqTxt6">※ 파일첨부가 안되시는 경우, 메일 munjaon@iten.co.kr로 보내주세요</span> |
|
| 726 |
- </td> |
|
| 727 |
- </tr> |
|
| 728 |
- <tr> |
|
| 729 |
- <th scope="row">증빙서류</th> |
|
| 730 |
- <td class="attachedFile_wrap"> |
|
| 731 |
- <label for="" class="label">증빙서류</label> |
|
| 732 |
- <input type="text" placeholder="* 첨부가능 파일 jpg, gif, png 각 2MB 이내" readonly size="36"> |
|
| 733 |
- <button type="button" class="btnType btnType9">파일첨부</button> |
|
| 734 |
- <span class="reqTxt6">※ 이체확인증 또는 핸드폰 납부 영수증을 첨부해주세요</span> |
|
| 735 |
- </td> |
|
| 736 |
- </tr> |
|
| 737 |
- </tbody> |
|
| 738 |
- </table> |
|
| 739 |
- <p class="tType1_title">환불 사유</p> |
|
| 740 |
- <table class="tType1"> |
|
| 741 |
- <caption>환불사유, 비밀번호에 대한 표</caption> |
|
| 742 |
- <colgroup> |
|
| 743 |
- <col style="width: 160px;"> |
|
| 744 |
- <col style="width: auto;"> |
|
| 745 |
- </colgroup> |
|
| 746 |
- <tbody> |
|
| 747 |
- <tr> |
|
| 748 |
- <th scope="row" style="line-height: 70px;">환불사유</th> |
|
| 749 |
- <td class="send_cf"> |
|
| 750 |
- <div> |
|
| 751 |
- <input id="radio4" type="radio"name="" checked="checked"> |
|
| 752 |
- <label for="radio4">문자 단가가 높음</label> |
|
| 753 |
- <input id="radio5" type="radio" name=""> |
|
| 754 |
- <label for="radio5">사용할 일이 없어서</label> |
|
| 755 |
- <input id="radio6" type="radio" name=""> |
|
| 756 |
- <label for="radio6">사이트 이용 불만</label> |
|
| 757 |
- </div> |
|
| 758 |
- <div> |
|
| 759 |
- <input id="radio7" type="radio" name=""> |
|
| 760 |
- <label for="radio7">다른 사이트 이용</label> |
|
| 761 |
- <input id="radio8" type="radio" name=""> |
|
| 762 |
- <label for="radio8">환불사유 직접 입력</label> |
|
| 763 |
- <label for="" class="label">환불사유 직접 입력</label> |
|
| 764 |
- <input type="text" size="36"> |
|
| 765 |
- </div> |
|
| 766 |
- </td> |
|
| 767 |
- </tr> |
|
| 768 |
- <tr> |
|
| 769 |
- <th scope="row">비밀번호</th> |
|
| 770 |
- <td> |
|
| 771 |
- <label for="" class="label">비밀번호 입력</label> |
|
| 772 |
- <input type="text" placeholder="문자온 로그인 비밀번호를 입력해주세요." onfocus="this.placeholder=''" onblur="this.placeholder='문자온 로그인 비밀번호를 입력해주세요.'" size="36"> |
|
| 773 |
- </td> |
|
| 774 |
- </tr> |
|
| 775 |
- </tbody> |
|
| 776 |
- </table> |
|
| 777 |
- <div style="text-align: center;"> |
|
| 778 |
- <button type="button" class="btnType btnType16">환불신청</button> |
|
| 779 |
- </div> |
|
| 780 |
- </div><!-- 결제내역 - 요금결제내역 - 환불신청 --> |
|
| 781 |
- </div><!-- 결제내역 - 요금결제내역(환불신청빼고 같은 폼) --> |
|
| 782 |
- </div><!--// send top --> |
|
| 1029 |
+ <div> |
|
| 1030 |
+ <input id="radio7" type="radio" name=""> |
|
| 1031 |
+ <label for="radio7">다른 사이트 이용</label> |
|
| 1032 |
+ <input id="radio8" type="radio" name=""> |
|
| 1033 |
+ <label for="radio8">환불사유 직접 입력</label> |
|
| 1034 |
+ <label for="" class="label">환불사유 직접 입력</label> |
|
| 1035 |
+ <input type="text" size="36"> |
|
| 1036 |
+ </div> |
|
| 1037 |
+ </td> |
|
| 1038 |
+ </tr> |
|
| 1039 |
+ <tr> |
|
| 1040 |
+ <th scope="row">비밀번호</th> |
|
| 1041 |
+ <td> |
|
| 1042 |
+ <label for="" class="label">비밀번호 입력</label> |
|
| 1043 |
+ <input type="text" placeholder="문자온 로그인 비밀번호를 입력해주세요." |
|
| 1044 |
+ onfocus="this.placeholder=''" |
|
| 1045 |
+ onblur="this.placeholder='문자온 로그인 비밀번호를 입력해주세요.'" size="36"> |
|
| 1046 |
+ </td> |
|
| 1047 |
+ </tr> |
|
| 1048 |
+ </tbody> |
|
| 1049 |
+ </table> |
|
| 1050 |
+ <div style="text-align: center;"> |
|
| 1051 |
+ <button type="button" class="btnType btnType16">환불신청</button> |
|
| 1052 |
+ </div> |
|
| 1053 |
+ </div><!-- 결제내역 - 요금결제내역 - 환불신청 --> |
|
| 1054 |
+ </div><!-- 결제내역 - 요금결제내역(환불신청빼고 같은 폼) --> |
|
| 1055 |
+ </div> |
|
| 1056 |
+ <!--// send top --> |
|
| 783 | 1057 |
</div> |
| 784 |
- </div><!--// content 영역 --> |
|
| 1058 |
+ </div> |
|
| 1059 |
+ <!--// content 영역 --> |
|
| 785 | 1060 |
<!-- footer 영역 --> |
| 786 | 1061 |
<footer id="footer" class="footer"> |
| 787 | 1062 |
<div class="footer_top"> |
... | ... | @@ -799,8 +1074,8 @@ |
| 799 | 1074 |
<div class="table_cell"> |
| 800 | 1075 |
<a href="#" class="footer_logo"><img src="/publish/images/CI_white.png" alt="문자온 CI"></a> |
| 801 | 1076 |
<div class="footer_info"> |
| 802 |
- <p>주소 : 경기도 남양주시 다산중앙로 19번길 21 1027호, 1028호(블루웨일 지식산업센터 1차)</p> |
|
| 803 |
- <p>사업자번호 : 653-87-00858 | 대표 : 유인식 | 통신판매등록번호 : 제 다산-12345호 | 문의전화 : 070-4786-0007</p> |
|
| 1077 |
+ <p>주소 : 경기도 남양주시 다산중앙로 19번길 21 1027호, 1028호(블루웨일 지식산업센터 1차)</p> |
|
| 1078 |
+ <p>사업자번호 : 653-87-00858 | 대표 : 유인식 | 통신판매등록번호 : 제 다산-12345호 | 문의전화 : 070-4786-0007</p> |
|
| 804 | 1079 |
<p>Copyright 2020 ⓒ MUNJAON co. Ltd, All rights reserved.</p> |
| 805 | 1080 |
</div> |
| 806 | 1081 |
<div class="footer_service_center"> |
... | ... | @@ -814,5 +1089,8 @@ |
| 814 | 1089 |
</div> |
| 815 | 1090 |
</div> |
| 816 | 1091 |
</div> |
| 817 |
- </footer><!--// footer 영역 --> |
|
| 818 |
-</body></html> |
|
| 1092 |
+ </footer> |
|
| 1093 |
+ <!--// footer 영역 --> |
|
| 1094 |
+</body> |
|
| 1095 |
+ |
|
| 1096 |
+</html>(No newline at end of file) |
--- src/main/webapp/publish/sub1_2023.html
+++ src/main/webapp/publish/sub1_2023.html
... | ... | @@ -1507,6 +1507,30 @@ |
| 1507 | 1507 |
</div> |
| 1508 | 1508 |
<div><button type="button" data-tooltip="popup07" class="btnType btnType3 btn_event_cash">이벤트 잔액</button></div> |
| 1509 | 1509 |
</div> |
| 1510 |
+ <!--발송금액 아래 등급별 가격안내 추가--> |
|
| 1511 |
+ <div class="my_price_wrap"> |
|
| 1512 |
+ <div class="center-line"></div> |
|
| 1513 |
+ <ul> |
|
| 1514 |
+ <li class="title"> |
|
| 1515 |
+ <img src="/publish/images/content/icon_mypage_message.png" alt="">나의 단가 <span>:</span> |
|
| 1516 |
+ </li> |
|
| 1517 |
+ <li class="price_line"> |
|
| 1518 |
+ <span class="type">단문</span> |
|
| 1519 |
+ <span class="price">18</span>원 |
|
| 1520 |
+ <span class="line">/ </span> |
|
| 1521 |
+ </li> |
|
| 1522 |
+ <li class="price_line"> |
|
| 1523 |
+ <span class="type">장문</span> |
|
| 1524 |
+ <span class="price">50</span>원 |
|
| 1525 |
+ <span class="line">/ </span> |
|
| 1526 |
+ </li> |
|
| 1527 |
+ <li class="price_line"> |
|
| 1528 |
+ <span class="type">그림</span> |
|
| 1529 |
+ <span class="price">90</span>원 |
|
| 1530 |
+ (2장 : 110원 / 3장 : 130원) |
|
| 1531 |
+ </li> |
|
| 1532 |
+ </ul> |
|
| 1533 |
+ </div> |
|
| 1510 | 1534 |
</div> |
| 1511 | 1535 |
</th> |
| 1512 | 1536 |
</tr> |
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?