diff --git a/src/main/java/itn/let/cop/bbs/web/EgovBBSManageController.java b/src/main/java/itn/let/cop/bbs/web/EgovBBSManageController.java index be44c270..087de32c 100644 --- a/src/main/java/itn/let/cop/bbs/web/EgovBBSManageController.java +++ b/src/main/java/itn/let/cop/bbs/web/EgovBBSManageController.java @@ -1572,6 +1572,32 @@ public class EgovBBSManageController { if(pattern.equals("/web/cop/bbs/addSuggestBoardArticle.do")){ // 불편신고 model.addAttribute("boardType", "suggest"); } + + // NEW + // 공통 + List resultList = new ArrayList(); + + // 이용약관, 개인정보보호방침 최신버전 List + TermsVO termsVO3 = new TermsVO(); + termsVO3.setFirstIndex(0); + termsVO3.setRecordCountPerPage(1); + termsVO3.setSearchDiv("03"); + termsVO3.setSearchUseYn("Y"); + termsVO3.setSearchSortCnd("effectDate"); + termsVO3.setSearchSortOrd("desc"); + List termsMastList2 = egovSiteManagerService.selectTermsMastMngList(termsVO3); + if (termsMastList2.size() > 0) { + TermsVO termsVO4 = new TermsVO(); + termsVO4.setFirstIndex(0); + termsVO4.setRecordCountPerPage(20); + termsVO4.setTermsMastNo(termsMastList2.get(0).getTermsMastNo()); + termsVO4.setSearchUseYn("Y"); + termsVO4.setSearchSortCnd("sort"); + termsVO4.setSearchSortOrd("ASC"); + resultList = egovSiteManagerService.selectTermsSubMngList(termsVO4); + } + + model.addAttribute("resultList", resultList); return "web/cop/bbs/EgovNoticeRegist"; } @@ -1641,6 +1667,32 @@ public class EgovBBSManageController { model.addAttribute("board", boardVO); //최대 첨부파일 갯수 지정 + // NEW + // 공통 + List resultList = new ArrayList(); + + // 이용약관, 개인정보보호방침 최신버전 List + TermsVO termsVO3 = new TermsVO(); + termsVO3.setFirstIndex(0); + termsVO3.setRecordCountPerPage(1); + termsVO3.setSearchDiv("03"); + termsVO3.setSearchUseYn("Y"); + termsVO3.setSearchSortCnd("effectDate"); + termsVO3.setSearchSortOrd("desc"); + List termsMastList2 = egovSiteManagerService.selectTermsMastMngList(termsVO3); + if (termsMastList2.size() > 0) { + TermsVO termsVO4 = new TermsVO(); + termsVO4.setFirstIndex(0); + termsVO4.setRecordCountPerPage(20); + termsVO4.setTermsMastNo(termsMastList2.get(0).getTermsMastNo()); + termsVO4.setSearchUseYn("Y"); + termsVO4.setSearchSortCnd("sort"); + termsVO4.setSearchSortOrd("ASC"); + resultList = egovSiteManagerService.selectTermsSubMngList(termsVO4); + } + + model.addAttribute("resultList", resultList); + return "web/cop/bbs/EgovNoticeRegist"; } diff --git a/src/main/java/itn/let/fax/addr/web/FaxAddrController.java b/src/main/java/itn/let/fax/addr/web/FaxAddrController.java index 2959b4b8..f21c50ff 100644 --- a/src/main/java/itn/let/fax/addr/web/FaxAddrController.java +++ b/src/main/java/itn/let/fax/addr/web/FaxAddrController.java @@ -57,8 +57,6 @@ import itn.let.fax.addr.service.FaxAddrGroupVO; import itn.let.fax.addr.service.FaxAddrService; import itn.let.fax.addr.service.FaxAddrTransHistVO; import itn.let.fax.addr.service.FaxAddrVO; -import itn.let.mjo.addr.service.AddrGroupVO; -import itn.let.mjo.addr.service.AddrVO; import itn.let.mjo.msgdata.service.PhoneVO; @Controller @@ -1679,19 +1677,19 @@ public class FaxAddrController { if(userId != "") { addrGroupVO.setMberId(userId); - } - if(addrGroupVO.getPageUnit() != 10) { - addrGroupVO.setPageUnit(addrGroupVO.getPageUnit()); + if(addrGroupVO.getPageUnit() != 10) { + addrGroupVO.setPageUnit(addrGroupVO.getPageUnit()); + } + + if("".equals(addrGroupVO.getSearchSortCnd())){ //최초조회시 최신것 조회List + addrGroupVO.setSearchSortCnd("grpOrder"); + addrGroupVO.setSearchSortOrd("desc"); + } + + addrGroupVO.setSiteId("web"); + addrGroupList = faxAddrGroupService.selectFaxAddrGroupList(addrGroupVO); } - - if("".equals(addrGroupVO.getSearchSortCnd())){ //최초조회시 최신것 조회List - addrGroupVO.setSearchSortCnd("grpOrder"); - addrGroupVO.setSearchSortOrd("desc"); - } - - addrGroupVO.setSiteId("web"); - addrGroupList = faxAddrGroupService.selectFaxAddrGroupList(addrGroupVO); } catch(Exception e) { isSuccess = false; diff --git a/src/main/java/itn/let/mjo/addr/web/AddrController.java b/src/main/java/itn/let/mjo/addr/web/AddrController.java index fa1d76a8..5e42a7e9 100644 --- a/src/main/java/itn/let/mjo/addr/web/AddrController.java +++ b/src/main/java/itn/let/mjo/addr/web/AddrController.java @@ -1979,19 +1979,19 @@ public class AddrController { if(userId != "") { addrGroupVO.setMberId(userId); - } - - if(addrGroupVO.getPageUnit() != 10) { - addrGroupVO.setPageUnit(addrGroupVO.getPageUnit()); - } - - if("".equals(addrGroupVO.getSearchSortCnd())){ //최초조회시 최신것 조회List - addrGroupVO.setSearchSortCnd("grpOrder"); - addrGroupVO.setSearchSortOrd("desc"); - } - - addrGroupVO.setSiteId("web"); - addrGroupList = addrGroupService.selectAddrGroupList(addrGroupVO); + + if(addrGroupVO.getPageUnit() != 10) { + addrGroupVO.setPageUnit(addrGroupVO.getPageUnit()); + } + + if("".equals(addrGroupVO.getSearchSortCnd())){ //최초조회시 최신것 조회List + addrGroupVO.setSearchSortCnd("grpOrder"); + addrGroupVO.setSearchSortOrd("desc"); + } + + addrGroupVO.setSiteId("web"); + addrGroupList = addrGroupService.selectAddrGroupList(addrGroupVO); + } } catch(Exception e) { isSuccess = false; diff --git a/src/main/java/itn/let/sym/grd/service/MberGrdService.java b/src/main/java/itn/let/sym/grd/service/MberGrdService.java index a482082e..b86da814 100644 --- a/src/main/java/itn/let/sym/grd/service/MberGrdService.java +++ b/src/main/java/itn/let/sym/grd/service/MberGrdService.java @@ -14,12 +14,21 @@ public interface MberGrdService { // 등급제 설정 목록 List selectMberGrdSettingList(MberGrdVO mberGrdVO) throws Exception; + // 회원별 설정 상세 + public MberGrdVO selectMberGrdSettingDetail(MberGrdVO mberGrdVO) throws Exception; + // 등급제 설정 일괄변경 public int updateGrdSettingList(MberGrdVO mberGrdVO) throws Exception; + + // 등급제 등급 목록 + List selectMberGrdList(MberGrdVO mberGrdVO) throws Exception; // 회원별 등급 상세 public MberGrdVO selectMberGrdDetail(MberGrdVO mberGrdVO) throws Exception; + // 회원별 등급 누적결제액 상세 + public MberGrdVO selectMberGrdAmtDetail(MberGrdVO mberGrdVO) throws Exception; + // 회원별 등급 등록 public void insertMberGrd(MberGrdVO mberGrdVO) throws Exception; @@ -32,10 +41,23 @@ public interface MberGrdService { // 회원별 등급 초기화 public int updateMberGrdEndAll(MberGrdVO mberGrdVO) throws Exception; + // 회원별 등급 적용 + public void mberGrdSaveByUser(MberGrdVO mberGrdVO) throws Exception; + // 회원별 등급 진행여부 int selectMberGrdPrgCnt(String userId) throws Exception; + // 회원별 등급 저장여부 + int selectMberGrdSaveCnt(String userId) throws Exception; + // 회원별 등급 히스토리 등록 - public void insertMberGrdHist(MberGrdVO mberGrdVO) throws Exception ; + public void insertMberGrdHist(MberGrdVO mberGrdVO) throws Exception; + + // 회원별 등급 히스토리 목록 => 등급제 시행일이후 목록(사용자화면용) + List selectMberGrdHistByGrdDateList(MberGrdVO mberGrdVO) throws Exception; + + // 회원별 등급 히스토리 목록 + List selectMberGrdHistList(MberGrdVO mberGrdVO) throws Exception; + } diff --git a/src/main/java/itn/let/sym/grd/service/MberGrdVO.java b/src/main/java/itn/let/sym/grd/service/MberGrdVO.java index 028b99f4..4fa19779 100644 --- a/src/main/java/itn/let/sym/grd/service/MberGrdVO.java +++ b/src/main/java/itn/let/sym/grd/service/MberGrdVO.java @@ -2,8 +2,11 @@ package itn.let.sym.grd.service; import java.util.List; -public class MberGrdVO { +import itn.let.uss.umt.service.UserDefaultVO; +public class MberGrdVO extends UserDefaultVO { + private static final long serialVersionUID = 1L; + private int grdSetNo; // 등급설정번호 private String grdSetNm; // 등급설정명 private long stdAmt; // 기준결제액 @@ -28,15 +31,19 @@ public class MberGrdVO { private List picture3Prices; private String mberId; + private String mberNm; private String amt; private String grdStartDate; - private String grd_endDate; + private String grdEndDate; private String grdStatus; + private String grdStatusNm; private int mberGrdHistNo; private String grdNoti; // 회원등급제 시행 여부 private String grdDate; // 회원등급제 시행일자 - + + // 검색필터 + private String searchGrdStatus; public int getGrdSetNo() { return grdSetNo; @@ -172,6 +179,12 @@ public class MberGrdVO { public void setMberId(String mberId) { this.mberId = mberId; } + public String getMberNm() { + return mberNm; + } + public void setMberNm(String mberNm) { + this.mberNm = mberNm; + } public String getAmt() { return amt; } @@ -184,11 +197,11 @@ public class MberGrdVO { public void setGrdStartDate(String grdStartDate) { this.grdStartDate = grdStartDate; } - public String getGrd_endDate() { - return grd_endDate; + public String getGrdEndDate() { + return grdEndDate; } - public void setGrd_endDate(String grd_endDate) { - this.grd_endDate = grd_endDate; + public void setGrdEndDate(String grd_endDate) { + this.grdEndDate = grd_endDate; } public String getGrdStatus() { return grdStatus; @@ -196,6 +209,12 @@ public class MberGrdVO { public void setGrdStatus(String grdStatus) { this.grdStatus = grdStatus; } + public String getGrdStatusNm() { + return grdStatusNm; + } + public void setGrdStatusNm(String grdStatusNm) { + this.grdStatusNm = grdStatusNm; + } public int getMberGrdHistNo() { return mberGrdHistNo; } @@ -214,4 +233,10 @@ public class MberGrdVO { public void setGrdDate(String grdDate) { this.grdDate = grdDate; } + public String getSearchGrdStatus() { + return searchGrdStatus; + } + public void setSearchGrdStatus(String searchGrdStatus) { + this.searchGrdStatus = searchGrdStatus; + } } diff --git a/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java b/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java index c21ad015..3b4a8561 100644 --- a/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java +++ b/src/main/java/itn/let/sym/grd/service/impl/MberGrdDAO.java @@ -20,22 +20,39 @@ public class MberGrdDAO extends EgovAbstractDAO { return (MberGrdVO) select("mberGrdDAO.selectMberSettingDetail", mberGrdVO); } + // 등급제 설정 목록 @SuppressWarnings("unchecked") public List selectMberGrdSettingList(MberGrdVO mberGrdVO) throws Exception{ return (List)list("mberGrdDAO.selectMberGrdSettingList", mberGrdVO); } + // 회원별 설정 상세 + public MberGrdVO selectMberGrdSettingDetail(MberGrdVO mberGrdVO) throws Exception{ + return (MberGrdVO) select("mberGrdDAO.selectMberGrdSettingDetail", mberGrdVO); + } + // 등급제 설정 일괄변경 public int updateGrdSetting(MberGrdVO mberGrdVO) throws Exception { return update("mberGrdDAO.updateGrdSetting", mberGrdVO); } + // 등급제 등급 목록 + @SuppressWarnings("unchecked") + public List selectMberGrdList(MberGrdVO mberGrdVO) throws Exception{ + return (List)list("mberGrdDAO.selectMberGrdList", mberGrdVO); + } + // 회원별 등급 상세 public MberGrdVO selectMberGrdDetail(MberGrdVO mberGrdVO) throws Exception{ return (MberGrdVO) select("mberGrdDAO.selectMberGrdDetail", mberGrdVO); } + // 회원별 등급 누적결제액 상세 + public MberGrdVO selectMberGrdAmtDetail(MberGrdVO mberGrdVO) throws Exception{ + return (MberGrdVO) select("mberGrdDAO.selectMberGrdAmtDetail", mberGrdVO); + } + // 회원별 등급 등록 public void insertMberGrd(MberGrdVO mberGrdVO) throws Exception{ insert("mberGrdDAO.insertMberGrd", mberGrdVO); @@ -61,9 +78,27 @@ public class MberGrdDAO extends EgovAbstractDAO { return (int) select("mberGrdDAO.selectMberGrdPrgCnt", userId); } + // 회원별 등급 저장여부 + public int selectMberGrdSaveCnt(String userId) throws Exception{ + return (int) select("mberGrdDAO.selectMberGrdSaveCnt", userId); + } + // 회원별 등급 히스토리 등록 public void insertMberGrdHist(MberGrdVO mberGrdVO) throws Exception{ insert("mberGrdDAO.insertMberGrdHist", mberGrdVO); } + + // 회원별 등급 히스토리 목록 => 등급제 시행일이후 목록(사용자화면용) + @SuppressWarnings("unchecked") + public List selectMberGrdHistByGrdDateList(MberGrdVO mberGrdVO) throws Exception{ + return (List)list("mberGrdDAO.selectMberGrdHistByGrdDateList", mberGrdVO); + } + + // 회원별 등급 히스토리 목록 + @SuppressWarnings("unchecked") + public List selectMberGrdHistList(MberGrdVO mberGrdVO) throws Exception{ + return (List)list("mberGrdDAO.selectMberGrdHistList", mberGrdVO); + } + } diff --git a/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java b/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java index dde47c86..0149c753 100644 --- a/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java +++ b/src/main/java/itn/let/sym/grd/service/impl/MberGrdServiceImpl.java @@ -1,5 +1,7 @@ package itn.let.sym.grd.service.impl; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.List; import javax.annotation.Resource; @@ -7,8 +9,11 @@ import javax.annotation.Resource; import org.springframework.stereotype.Service; import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl; +import itn.let.mjo.pay.service.MjonPayService; import itn.let.sym.grd.service.MberGrdService; import itn.let.sym.grd.service.MberGrdVO; +import itn.let.uss.umt.service.EgovMberManageService; +import itn.let.uss.umt.service.MberManageVO; @Service("mberGrdService") public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberGrdService { @@ -16,6 +21,13 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG @Resource(name="mberGrdDAO") MberGrdDAO mberGrdDAO; + @Resource(name = "mjonPayService") + private MjonPayService mjonPayService; + + /** mberManageService */ + @Resource(name = "mberManageService") + private EgovMberManageService mberManageService; + // 등급제 시행여부 변경 @Override public int updateMberSetting(MberGrdVO mberGrdVO) throws Exception { @@ -29,11 +41,18 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG } + // 등급제 설정 목록 @Override public List selectMberGrdSettingList(MberGrdVO mberGrdVO) throws Exception { return mberGrdDAO.selectMberGrdSettingList(mberGrdVO); } + // 회원별 설정 상세 + @Override + public MberGrdVO selectMberGrdSettingDetail(MberGrdVO mberGrdVO) throws Exception { + return mberGrdDAO.selectMberGrdSettingDetail(mberGrdVO); + } + // 등급제 설정 일괄변경 @Override public int updateGrdSettingList(MberGrdVO mberGrdVO) throws Exception { @@ -56,6 +75,12 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG return updateCnt; } + + // 등급제 등급 목록 + @Override + public List selectMberGrdList(MberGrdVO mberGrdVO) throws Exception { + return mberGrdDAO.selectMberGrdList(mberGrdVO); + } // 회원별 등급 상세 @Override @@ -63,6 +88,12 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG return mberGrdDAO.selectMberGrdDetail(mberGrdVO); } + // 회원별 등급 누적결제액 상세 + @Override + public MberGrdVO selectMberGrdAmtDetail(MberGrdVO mberGrdVO) throws Exception { + return mberGrdDAO.selectMberGrdAmtDetail(mberGrdVO); + } + // 회원별 등급 등록 @Override public void insertMberGrd(MberGrdVO mberGrdVO) throws Exception { @@ -78,7 +109,16 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG // 회원별 등급 초기화 @Override public int updateMberGrdAll(MberGrdVO mberGrdVO) throws Exception { - return mberGrdDAO.updateMberGrdAll(mberGrdVO); + int updateCnt = 0; + + // Step 1. 등급제 시행 ON 일경우 + MberGrdVO mberGrdVO1 = new MberGrdVO(); + mberGrdVO1 = selectMberSettingDetail(mberGrdVO); + if (mberGrdVO1.getGrdNoti().equals("Y") && null != mberGrdVO1.getGrdDate()) { + updateCnt = mberGrdDAO.updateMberGrdAll(mberGrdVO); + } + + return updateCnt; } // 회원별 등급 일괄변경 @@ -87,16 +127,112 @@ public class MberGrdServiceImpl extends EgovAbstractServiceImpl implements MberG return mberGrdDAO.updateMberGrdEndAll(mberGrdVO); } + // 회원별 등급 적용 + @Override + public void mberGrdSaveByUser(MberGrdVO mberGrdVO) throws Exception { + // 현재 날짜 구하기 + LocalDate now = LocalDate.now(); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); // 포맷 정의 + String nowDate = now.format(formatter); // 포맷 적용 + + mberGrdVO.setRegId(mberGrdVO.getMberId()); + mberGrdVO.setEditId(mberGrdVO.getMberId()); + + // Step 1. 등급제 시행 ON 일경우 + MberGrdVO mberGrdVO1 = new MberGrdVO(); + mberGrdVO1 = selectMberSettingDetail(mberGrdVO); + if (mberGrdVO1.getGrdNoti().equals("Y") && null != mberGrdVO1.getGrdDate()) { + mberGrdVO.setGrdDate(mberGrdVO1.getGrdDate()); + + // Step 2. /협의/스팸/비선등급 적용 제외 + // 문자할인여부(1: 할인, 0: 미할인) + int isMsgSalePrice = mjonPayService.selectMsgSalePriceCnt(mberGrdVO.getMberId()); + if(isMsgSalePrice == 0) { + // B선 전송사 이용고객 => 등급제대상 제외처리 + MberManageVO mberManageVO = new MberManageVO(); + mberManageVO.setMberId(mberGrdVO.getMberId()); + String blineCode = mberManageService.selectBlineCodeByMberId(mberManageVO); + if (blineCode != null && blineCode.equals("N")) { + + // Step 3. 누적결제금액(이벤트금액 제외) 추출 및 등급 조회 + MberGrdVO mberGrdVO3 = new MberGrdVO(); + mberGrdVO3 = selectMberGrdAmtDetail(mberGrdVO); + if (null != mberGrdVO3) { + mberGrdVO.setTotAmt(mberGrdVO3.getTotAmt()); + mberGrdVO.setGrdSetNo(mberGrdVO3.getGrdSetNo()); + + // Step 4. 등급제 설정값 조회 + MberGrdVO mberGrdVO4 = new MberGrdVO(); + mberGrdVO4 = selectMberGrdSettingDetail(mberGrdVO); + if (null != mberGrdVO4) { + mberGrdVO.setAmt("0"); + mberGrdVO.setTotAmt(mberGrdVO.getTotAmt()); + mberGrdVO.setShortPrice(mberGrdVO4.getShortPrice()); + mberGrdVO.setLongPrice(mberGrdVO4.getLongPrice()); + mberGrdVO.setPicturePrice(mberGrdVO4.getPicturePrice()); + mberGrdVO.setPicture2Price(mberGrdVO4.getPicture2Price()); + mberGrdVO.setPicture3Price(mberGrdVO4.getPicture3Price()); + mberGrdVO.setGrdDate(mberGrdVO.getGrdDate()); + mberGrdVO.setGrdStartDate(nowDate + " 00:00:00"); + mberGrdVO.setGrdEndDate("9999:12:31 23:59:59"); + mberGrdVO.setGrdStatus("Y"); + + // Step 5. 인서트 Or 업데이트 + MberGrdVO mberGrdVO5 = new MberGrdVO(); + mberGrdVO5 = selectMberGrdDetail(mberGrdVO); + if (null != mberGrdVO5) { + // 업데이트 => 현재 등급보다 낮거나 같으면 업데이트 처리 + if (mberGrdVO5.getGrdSetNo() >= mberGrdVO.getGrdSetNo()) { + updateMberGrd(mberGrdVO); + + // 회원별 등급 히스토리 인서트 + insertMberGrdHist(mberGrdVO); + } + } + else { + // 인서트 + insertMberGrd(mberGrdVO); + + // 회원별 등급 히스토리 인서트 + insertMberGrdHist(mberGrdVO); + } + } + } + } + } + + } + } + // 회원별 등급 진행여부 @Override public int selectMberGrdPrgCnt(String userId) throws Exception{ return mberGrdDAO.selectMberGrdPrgCnt(userId); } + // 회원별 등급 저장여부 + @Override + public int selectMberGrdSaveCnt(String userId) throws Exception{ + return mberGrdDAO.selectMberGrdSaveCnt(userId); + } + // 회원별 등급 히스토리 등록 @Override public void insertMberGrdHist(MberGrdVO mberGrdVO) throws Exception { mberGrdDAO.insertMberGrdHist(mberGrdVO); } + + // 회원별 등급 히스토리 목록 => 등급제 시행일이후 목록(사용자화면용) + @Override + public List selectMberGrdHistByGrdDateList(MberGrdVO mberGrdVO) throws Exception { + return mberGrdDAO.selectMberGrdHistByGrdDateList(mberGrdVO); + } + + // 회원별 등급 히스토리 목록 + @Override + public List selectMberGrdHistList(MberGrdVO mberGrdVO) throws Exception { + return mberGrdDAO.selectMberGrdHistList(mberGrdVO); + } + } diff --git a/src/main/java/itn/let/sym/grd/web/MberGrdController.java b/src/main/java/itn/let/sym/grd/web/MberGrdController.java index adba000f..9c6886bf 100644 --- a/src/main/java/itn/let/sym/grd/web/MberGrdController.java +++ b/src/main/java/itn/let/sym/grd/web/MberGrdController.java @@ -11,6 +11,7 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; +import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo; import itn.com.cmm.LoginVO; import itn.let.sym.grd.service.MberGrdService; import itn.let.sym.grd.service.MberGrdVO; @@ -127,4 +128,73 @@ public class MberGrdController { return modelAndView; } + // 회원별 등급 적용 테스트 + @RequestMapping(value = "/sym/grd/mberGrdSaveAjax.do") + public ModelAndView mberGrdSaveAjax( + @ModelAttribute("mberGrdVO") MberGrdVO mberGrdVO) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + boolean isSuccess = true; + String msg = ""; + + // 로그인VO에서 사용자 정보 가져오기 + LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser(); + String frstRegisterId = loginVO == null ? "" : loginVO.getId(); + mberGrdVO.setEditId(frstRegisterId); // 최초등록자ID + + try{ + + // 회원별 등급 적용 + mberGrdVO.setAmt("0"); // 결제금액 + mberGrdVO.setMberId("nopay"); // 결제자 + mberGrdService.mberGrdSaveByUser(mberGrdVO); + + } + catch(Exception e) { + isSuccess = false; + msg = e.getMessage(); + } + + modelAndView.addObject("isSuccess", isSuccess); + modelAndView.addObject("msg", msg); + + return modelAndView; + } + + /** + * 회원별 등급제 목록 화면 + * + * @param mberGrdVO + * @param model + * @return + * @throws Exception + */ + @RequestMapping("/sym/grd/selectMberGrdList.do") + public String selectMetaTagList(@ModelAttribute("searchVO") MberGrdVO mberGrdVO, ModelMap model) throws Exception{ + + /** paging */ + PaginationInfo paginationInfo = new PaginationInfo(); + paginationInfo.setCurrentPageNo(mberGrdVO.getPageIndex()); + paginationInfo.setRecordCountPerPage(mberGrdVO.getPageUnit()); + paginationInfo.setPageSize(mberGrdVO.getPageSize()); + + mberGrdVO.setFirstIndex(paginationInfo.getFirstRecordIndex()); + mberGrdVO.setLastIndex(paginationInfo.getLastRecordIndex()); + mberGrdVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage()); + + if("".equals(mberGrdVO.getSearchSortCnd())){ //최초조회시 최신것 조회List + mberGrdVO.setSearchSortCnd("regDate"); + mberGrdVO.setSearchSortOrd("desc"); + } + + List resultList = mberGrdService.selectMberGrdList(mberGrdVO); + model.addAttribute("resultList", resultList); + paginationInfo.setTotalRecordCount( resultList.size()> 0 ? resultList.get(0).getTotCnt() : 0); + model.addAttribute("paginationInfo", paginationInfo); + + return "/sym/grd/mberGrdList"; + } + } diff --git a/src/main/java/itn/let/uss/umt/service/EgovUserManageService.java b/src/main/java/itn/let/uss/umt/service/EgovUserManageService.java index 887475ff..33ea023a 100644 --- a/src/main/java/itn/let/uss/umt/service/EgovUserManageService.java +++ b/src/main/java/itn/let/uss/umt/service/EgovUserManageService.java @@ -186,6 +186,7 @@ public interface EgovUserManageService { public void updateOneUserSmishingYn(UserManageVO userManageVO) throws Exception; // 스미싱의심 온/오프 - 상세에서 단일로 => 슬랙, 문자 알림 No + // B선 회원이 아닌경우 전송사 JJ로 변경 로직 포함 public void updateOneUserSmishingYnNotAlert(UserManageVO userManageVO) throws Exception; // 알림톡 스미싱의심 온/오프 diff --git a/src/main/java/itn/let/uss/umt/service/impl/EgovUserManageServiceImpl.java b/src/main/java/itn/let/uss/umt/service/impl/EgovUserManageServiceImpl.java index 5cae0e38..33d9041b 100644 --- a/src/main/java/itn/let/uss/umt/service/impl/EgovUserManageServiceImpl.java +++ b/src/main/java/itn/let/uss/umt/service/impl/EgovUserManageServiceImpl.java @@ -20,6 +20,7 @@ import itn.com.cmm.util.DateUtil; import itn.let.fax.user.service.FaxGroupDataVO; import itn.let.fax.user.service.impl.FaxDAO; import itn.let.mjo.mjocommon.MjonCommon; +import itn.let.mjo.msgagent.service.MjonMsgAgentStsService; import itn.let.mjo.msgdata.service.MjonMsgDataService; import itn.let.mjo.pay.service.MjonPayVO; import itn.let.mjo.pay.service.impl.MjonPayDAO; @@ -32,6 +33,7 @@ import itn.let.sym.site.service.JoinSettingVO; import itn.let.sym.site.service.SiteManagerVO; import itn.let.sym.site.service.impl.SiteManagerDAO; import itn.let.uat.uia.service.impl.MberManageDAO; +import itn.let.uss.umt.service.EgovMberManageService; import itn.let.uss.umt.service.EgovUserManageService; import itn.let.uss.umt.service.MberManageVO; import itn.let.uss.umt.service.UserDefaultVO; @@ -113,6 +115,13 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement @Resource(name = "egovSiteManagerService") EgovSiteManagerService egovSiteManagerService; + /** mberManageService */ + @Resource(name = "mberManageService") + private EgovMberManageService mberManageService; + + @Resource(name = "mjonMsgAgentStsService") + private MjonMsgAgentStsService mjonMsgAgentStsService; + /** * 입력한 사용자아이디의 중복여부를 체크하여 사용가능여부를 확인 * @param checkId 중복여부 확인대상 아이디 @@ -565,9 +574,20 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement } // 스미싱의심 온/오프 단일 => 슬랙, 문자 알림 No + // B선 회원이 아닌경우 전송사 JJ로 변경 로직 포함 public void updateOneUserSmishingYnNotAlert(UserManageVO userManageVO) throws Exception { // 업데이트 userManageDAO.updateUserSmishingYn(userManageVO); + + // B선 전송사 이용고객 => 전송사 JJ로 변경안함 + MberManageVO mberManageVO = new MberManageVO(); + mberManageVO.setMberId(userManageVO.getMberId()); + String blineCode = mberManageService.selectBlineCodeByMberId(mberManageVO); + if (blineCode != null && blineCode.equals("N")) { + // 전송사 JJ로 변경 + mberManageVO.setHotlineAgentCode("05"); // 전송사 JJ + mjonMsgAgentStsService.updateMberHotlineAgentCodeInfo(mberManageVO); + } } // 알림톡 스미싱의심 온/오프 diff --git a/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml index 016f2a91..d8507540 100644 --- a/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml +++ b/src/main/resources/egovframework/sqlmap/let/sym/grd/MberGrd_SQL_Mysql.xml @@ -17,7 +17,7 @@ + + + - UPDATE mj_mber_grd_setting A + UPDATE MJ_MBER_GRD_SETTING A SET A.STD_AMT = #stdAmt# , A.SHORT_PRICE = #shortPrice# @@ -59,6 +79,67 @@ WHERE A.GRD_SET_NO = #grdSetNo# + + + + + + - INSERT INTO mj_mber_grd_info + INSERT INTO MJ_MBER_GRD_INFO ( MBER_ID , GRD_SET_NO @@ -97,6 +206,7 @@ , PICTURE3_PRICE , AMT , TOT_AMT + , GRD_DATE , GRD_START_DATE , GRD_END_DATE , GRD_STATUS @@ -116,8 +226,9 @@ , #picture3Price# , #amt# , #totAmt# + , #grdDate# , #grdStartDate# - , #grd_endDate# + , #grdEndDate# , #grdStatus# , #regId# , NOW() @@ -128,7 +239,7 @@ - UPDATE mj_mber_grd_info SET + UPDATE MJ_MBER_GRD_INFO SET MBER_ID = #mberId# , GRD_SET_NO = #grdSetNo# , SHORT_PRICE = #shortPrice# @@ -136,12 +247,9 @@ , PICTURE_PRICE = #picturePrice# , PICTURE2_PRICE = #picture2Price# , PICTURE3_PRICE = #picture3Price# - , AMT = #amt# + , AMT = #amt# , TOT_AMT = #totAmt# - , GRD_START_DATE = #grdStartDate# - , GRD_END_DATE = #grd_endDate# - , GRD_STATUS = #grdStatus# - , EDIT_ID = #editId# + , EDIT_ID = #editId# , EDIT_DATE = NOW() WHERE MBER_ID = #mberId# @@ -186,10 +294,10 @@ , A.PICTURE2_PRICE = C.PICTURE2_PRICE , A.PICTURE3_PRICE = C.PICTURE3_PRICE , A.TOT_AMT = B.AMT_SUM - , A.GRD_START_DATE = CONCAT(DATE_FORMAT(#grdDate#, '%Y-%m-%d'), ' ', '00:00:00') + , A.GRD_DATE = CONCAT(DATE_FORMAT(#grdDate#, '%Y-%m-%d'), ' ', '00:00:00') , A.EDIT_DATE = NOW() WHERE B.GRD_SET_NO IS NOT NULL - AND A.GRD_SET_NO >= B.GRD_SET_NO + AND A.GRD_SET_NO > B.GRD_SET_NO AND GRD_STATUS NOT IN ('N', 'E') AND NOW() BETWEEN GRD_START_DATE AND GRD_END_DATE ]]> @@ -197,7 +305,7 @@ - UPDATE mj_mber_grd_info SET + UPDATE MJ_MBER_GRD_INFO SET GRD_END_DATE = NOW() , GRD_STATUS = 'E' , EDIT_ID = #editId# @@ -216,11 +324,20 @@ AND NOW() BETWEEN GRD_START_DATE AND GRD_END_DATE LIMIT 1 - + + + + - INSERT INTO mj_mber_grd_hist + INSERT INTO MJ_MBER_GRD_HIST ( MBER_ID , GRD_SET_NO @@ -231,6 +348,7 @@ , PICTURE3_PRICE , AMT , TOT_AMT + , GRD_DATE , REG_ID , REG_DATE , EDIT_ID @@ -247,6 +365,7 @@ , #picture3Price# , #amt# , #totAmt# + , #grdDate# , #regId# , NOW() , #editId# @@ -254,4 +373,64 @@ ) + + + + + diff --git a/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectMsgDataListPop.jsp b/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectMsgDataListPop.jsp index d3999925..b66dbde4 100644 --- a/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectMsgDataListPop.jsp +++ b/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectMsgDataListPop.jsp @@ -571,7 +571,14 @@ function fn_updateSendRealTime(userId, msgGroupId){ - 그림문자 + + + 내용없음 + + + 그림문자 + +
diff --git a/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectUpdt.jsp b/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectUpdt.jsp index db077c66..45aef268 100644 --- a/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectUpdt.jsp +++ b/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectUpdt.jsp @@ -3682,7 +3682,14 @@ function kakaoATDelayCancel(msgGroupId){ - 그림문자 + + + 내용없음 + + + 그림문자 + +
@@ -3871,7 +3878,14 @@ function kakaoATDelayCancel(msgGroupId){ - 그림문자 + + + 내용없음 + + + 그림문자 + +
@@ -4069,7 +4083,14 @@ function kakaoATDelayCancel(msgGroupId){ - 그림문자 + + + 내용없음 + + + 그림문자 + +
diff --git a/src/main/webapp/WEB-INF/jsp/sym/grd/mberGrdList.jsp b/src/main/webapp/WEB-INF/jsp/sym/grd/mberGrdList.jsp new file mode 100644 index 00000000..7d2a7a25 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/sym/grd/mberGrdList.jsp @@ -0,0 +1,204 @@ +<%-- + Class Name : webTitleList.jsp + Description : webTitleList 화면 + Modification Information + + 수정일 수정자 수정내용 + ------- -------- --------------------------- + 2009.02.01 lee.m.j 최초 생성 + 2011.08.31 JJY 경량환경 버전 생성 + + author : 공통서비스 개발팀 lee.m.j + since : 2009.02.01 +--%> +<%@ page contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> +<%@ page import="itn.com.cmm.LoginVO"%> + + + + +등급제 내역 + + + + +
+ + + " /> + " /> + +
+
+
+

등급제 내역

+

+
+
+
+ + + + + + + +
+
+

+ 총 건 +     * 누적결제액은 문자할인이벤트 대상 결제금액을 제외한 합계금액입니다. +

+
+ + +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
번호아이디이름등급누적결제액등급제 시행일시작일종료일 등록일 상태
+ + + + + + + + '); return false;"> + + + + + + () + + + + + + + + + + + + +
+
+
+ +
+ + +
+
    + +
+
+
+ +
+
+
+ +
+ +
+ +
+ + + +
+ + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/jsp/sym/grd/mberGrdSetting.jsp b/src/main/webapp/WEB-INF/jsp/sym/grd/mberGrdSetting.jsp index eec67867..bc7aa820 100644 --- a/src/main/webapp/WEB-INF/jsp/sym/grd/mberGrdSetting.jsp +++ b/src/main/webapp/WEB-INF/jsp/sym/grd/mberGrdSetting.jsp @@ -84,6 +84,32 @@ } } + // 등급제 적용 테스트 + function setMberGrdSave() { + if(confirm("등급제 적용하시겠습니까?")) { + $.ajax({ + type: "POST", + url: "/sym/grd/mberGrdSaveAjax.do", + data: {}, + dataType:'json', + async: false, + success: function (data) { + if (data.isSuccess) { + alert("저장 완료했습니다."); + location.reload(); + } + else { + alert("Msg : " + data.msg); + } + }, + error: function (e) { + alert("ERROR : " + JSON.stringify(e)); + } + }); + } + } + + @@ -172,6 +198,7 @@
+
diff --git a/src/main/webapp/WEB-INF/jsp/uss/ion/msg/CampaignMsgList.jsp b/src/main/webapp/WEB-INF/jsp/uss/ion/msg/CampaignMsgList.jsp index d4954ce9..95e7f863 100644 --- a/src/main/webapp/WEB-INF/jsp/uss/ion/msg/CampaignMsgList.jsp +++ b/src/main/webapp/WEB-INF/jsp/uss/ion/msg/CampaignMsgList.jsp @@ -307,7 +307,14 @@ function fnSelectMber(mberId) { smishing
"> - 그림문자 + + + 내용없음 + + + 그림문자 + +
diff --git a/src/main/webapp/WEB-INF/jsp/uss/ion/msg/ReserveNumberList.jsp b/src/main/webapp/WEB-INF/jsp/uss/ion/msg/ReserveNumberList.jsp index be8beae8..8e2433ce 100644 --- a/src/main/webapp/WEB-INF/jsp/uss/ion/msg/ReserveNumberList.jsp +++ b/src/main/webapp/WEB-INF/jsp/uss/ion/msg/ReserveNumberList.jsp @@ -471,7 +471,14 @@ function fnSmishingUpdate(flag) { style="color: #0000FF;"> - 그림문자 + + + 내용없음 + + + 그림문자 + +
diff --git a/src/main/webapp/WEB-INF/jsp/uss/ion/msg/SendMsgList.jsp b/src/main/webapp/WEB-INF/jsp/uss/ion/msg/SendMsgList.jsp index 37701685..816cca3c 100644 --- a/src/main/webapp/WEB-INF/jsp/uss/ion/msg/SendMsgList.jsp +++ b/src/main/webapp/WEB-INF/jsp/uss/ion/msg/SendMsgList.jsp @@ -585,7 +585,14 @@ function fnSmishingUpdate(flag) { smishing"> - 그림문자 + + + 내용없음 + + + 그림문자 + +
diff --git a/src/main/webapp/WEB-INF/jsp/uss/ion/msg/admSys/AdmSystemSendMsgList.jsp b/src/main/webapp/WEB-INF/jsp/uss/ion/msg/admSys/AdmSystemSendMsgList.jsp index be315a02..a270324e 100644 --- a/src/main/webapp/WEB-INF/jsp/uss/ion/msg/admSys/AdmSystemSendMsgList.jsp +++ b/src/main/webapp/WEB-INF/jsp/uss/ion/msg/admSys/AdmSystemSendMsgList.jsp @@ -304,7 +304,14 @@ function fnSetCalMonth(val) { style="color: #0000FF;"> - 그림문자 + + + 내용없음 + + + 그림문자 + +
diff --git a/src/main/webapp/WEB-INF/jsp/web/cop/bbs/EgovNoticeRegist.jsp b/src/main/webapp/WEB-INF/jsp/web/cop/bbs/EgovNoticeRegist.jsp index ba0ab4ed..60ab3028 100644 --- a/src/main/webapp/WEB-INF/jsp/web/cop/bbs/EgovNoticeRegist.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/cop/bbs/EgovNoticeRegist.jsp @@ -177,40 +177,12 @@
-
-
-

서비스 이용약관

-

제정 2022. 06. 13

-

제1장 총 칙

-

제1조(목적) 이 약관은 주식회사 아이티앤(이하“회사”)이 제공하는 - 인터넷 서비스 문자온(www.munjaon.co.kr, 이하 “서비스”)를 이용함에 있어 회사와 회원(이용자)의 - 권리, 의무, 책임사항 및 기타 필요한 사항을 규정함을목적으로 합니다.

-

제2조(용어의 정의) 이 약관에서 사용하는 용어의정의는 다음과 - 같습니다.

-
    -
  • 1. 문자온 : 회사의 서비스명으로 회원이전송하고자 하는 - 내용‧정보 등을 문자메시지, 멀티미디어메시지,카카오톡, 팩스 등 다양한 메시지 형태로 변화시켜 전송하는 서비스 - 및 회원이 제3자로부터 메시지를 수신할 수 있도록 하는 서비스
  • -
  • 2. 회원 : 회사에 개인정보를 제공하여 이용계약을체결하고, 이용자 - 아이디(ID)를 부여 받은자로서 회사가 제공하는서비스를 지속적으로 이용할 수 있는 자
  • -
  • 3. 아이디(ID) : 회원의 식별과 서비스 이용을 위하여회원이 정하고 - 회사가 승인하는 문자와 숫자의 조합
  • -
  • 4. 비밀번호 : 회원이 부여 받은 아이디(ID)와 일치된회원임을 - 확인하고, 회원의 비밀을 보호하기 위해 회원이 설정한 문자와숫자의 조합
  • -
  • 5. 휴면아이디 : 12개월 이상 계속해서 로그인을포함한 서비스 이용이 - 없는 아이디
  • -
  • 6. 해지 : 회사와 회원 간 맺은 이용계약을 해지하는것
  • -
  • 7. 스팸메시지 : 정보통신망을 통해 수신자의명시적인 사전 동의없이 - 일방적으로 전송 또는 게시되는 영리목적의광고성 정보
  • -
  • 8. 불법스팸메시지 : 『정보통신망법』 제50조 내지제50조의8의 규정을 - 위반하여 전송 또는 게시되는 영리목적의 광고성정보를 말하며, 불법스팸은 형사처벌 및 과태료 부과의 대상이 됨
  • -
  • 9. 문자피싱메시지 : 전자금융사기를 목적으로 전송또는 게시되는 정보
  • -
  • 10. 스미싱메시지 : 메시지 내용 중 인터넷 주소를클릭하면 악성코드가 - 설치되어 수신자가 모르는 사이에 금전적 피해 또는개인‧금융정보 탈취 피해를 야기하는 메시지
  • -
  • 11. 카카오톡 : 주식회사 카카오(이하 ”카카오”)가운영하는 모바일 - 메신저 기반의 실시간 커뮤니케이션 서비스로 알림톡,친구톡 또는 해당 서비스를 제공하는 어플리케이션
  • -
-
+
+ +

+ +

+
diff --git a/src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp b/src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp index bb923bd1..2a79d610 100644 --- a/src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp @@ -1172,13 +1172,13 @@ function fn_click_banner_add_stat(bannerMenuCode){
문자온, 카카오 '알림톡' 서비스 오픈! 문자온 알림톡, 대한민국 최저가 선언! 조건없이 무조건 6.9원! 카카오톡 채널아이디 추가를 하지 않은 이용자에게도 카카오톡 메시지 발송이 가능한 서비스! 알림톡 바로가기 알림톡 도착 kakao 문자온에서 알림톡이 도착하였습니다! 기업전용/1,000자 이하 텍스트 & 이미지/문자 대비 75% 저렴
-
문자는 이제, 문자온! 단 한번, 국내 최저가! 인생 최저가! 첫결제 단문 7.5원 장문 32원 그림 59원  복날이닭 삼계탕 드시고 건강한 여름 보내세요 Summer 떠나요 힐링여행
+
문자는 이제, 문자온! 단 한번, 국내 최저가! 인생 최저가! 첫결제 단문 7.5원 장문 32원 그림 59원  제헌절 7月17日 제헌절 대한민국 헌법공포 기념 국경일
문자도 보내고! 현금도 챙기는! 문자온만의 특별한 혜택! 결제금액의 2% 포인트 추가 적립! 포인트 1만점 이상 적립 시 현금페이백
-
다른 사이트에는 없다! 오직 문자온에만 있다! 최고의 디자이너가 직접 제작하는 그림문자 맞춤제작을 통해 나만의 문자를 디자인 해보세요 해수욕장 숙박권 Summer 썸머축제 이벤트 안내 미리 예매만 해도 숙박권 70% 할인!! 엠제이여행사에서 해수욕장 숙박권을 예매하신 고객분들에게 최고급 호텔 숙박권을 무료로 드립니다 70% 할인 복날이닭 할인받자! 3만원할인 ₩12,900 마지막 복날 마지막 찬스 할인받고 복날 치킨 즐기세요! DCCHANCE 8.11(목) - 12(금) 단 2일! 고소하고 시원하게 콩국수 이以냉冷치治열熱 시원한 여름시즌메뉴로 무더위를 시원하게 극복하세요. 매콤하고 시원하게 열무말이 국수
+
다른 사이트에는 없다! 오직 문자온에만 있다! 최고의 디자이너가 직접 제작하는 그림문자 맞춤제작을 통해 나만의 문자를 디자인 해보세요 LOGO 제헌절 퀴즈 이벤트 이벤트 기간 2099년 7월 1일 ~ 7월 17일 7월 17일은 제헌절! 퀴즈풀고 경품받기 헌법 제1조 제2항 대한민국 주권은 ○○에게 있고 모든권력은 ○○으로부터 나온다. 이벤트 게시글에 댓글로 남겨주시면 정답을 맞추신 분께는 추첨을 통해 경품을 보내드려요! 기간 : 07.07 ~ 07.17 LOGO 7월 17일 제헌절 제헌절 이벤트 제한절에 태극기를 게양하신 사진 또는 영상을 개인 SNS에 업로드 후 페이스북 이벤트 글에 링크와 함께 댓글을 남겨주세요
문자는 이제, 문자온! 선택은 역시 문자온! 문자사이트 선택의 5가지 기준 1. 가격, 속도, 성능, 기능, 보안이 보장되는가? 2. 결제, 정산, 계산서 발행 등 업무가 자동화 되어 있고 편리한가? 3. 최신 IT 기술과 트렌드가 반영되어 있는가? 4. 회원가입 및 발신번호 인증이 쉽고 빠르며, 대량문자를 전송하기에 사용이 편리한가? 5. 매일 문자샘플이 업데이트 되고, CS 및 기술응대가 실시간적으로 이루어지는가?
diff --git a/src/main/webapp/WEB-INF/jsp/web/pay/PayListAllAjax.jsp b/src/main/webapp/WEB-INF/jsp/web/pay/PayListAllAjax.jsp index da109637..740ef08c 100644 --- a/src/main/webapp/WEB-INF/jsp/web/pay/PayListAllAjax.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/pay/PayListAllAjax.jsp @@ -343,7 +343,13 @@ $(document).on("click", "#chkAll", function(e) {
-
※ 요금 결제내역은 결제일을 기준으로 최대 6개월까지만 조회 가능합니다.
+
+ ※ 요금 결제내역은 결제일을 기준으로 최대 6개월까지만 조회가능합니다. + +
diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml index 65c4db4c..8d5bda92 100644 --- a/src/main/webapp/WEB-INF/web.xml +++ b/src/main/webapp/WEB-INF/web.xml @@ -151,5 +151,5 @@ /common/error.jsp - + diff --git a/src/main/webapp/publish/images/main/f_visual_01_20230706.jpg b/src/main/webapp/publish/images/main/f_visual_01_20230706.jpg new file mode 100644 index 00000000..4d1cde5d Binary files /dev/null and b/src/main/webapp/publish/images/main/f_visual_01_20230706.jpg differ diff --git a/src/main/webapp/publish/images/main/f_visual_03_20230706.jpg b/src/main/webapp/publish/images/main/f_visual_03_20230706.jpg new file mode 100644 index 00000000..8e112194 Binary files /dev/null and b/src/main/webapp/publish/images/main/f_visual_03_20230706.jpg differ diff --git a/src/main/webapp/publish/mem3.html b/src/main/webapp/publish/mem3.html index 9f546d73..8731f195 100644 --- a/src/main/webapp/publish/mem3.html +++ b/src/main/webapp/publish/mem3.html @@ -327,7 +327,7 @@