From c390b02134d4a99afa05db6cd9fdbe34c4222386 Mon Sep 17 00:00:00 2001 From: rosewiper Date: Wed, 25 Sep 2024 11:21:09 +0900 Subject: [PATCH] =?UTF-8?q?=EC=B5=9C=EA=B7=BC=20=EB=AC=B8=EC=9E=90?= =?UTF-8?q?=EC=A0=84=EC=86=A1=20=EC=83=81=EC=84=B8=20=ED=8C=9D=EC=97=85=20?= =?UTF-8?q?=ED=99=94=EB=A9=B4=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../uss/umt/web/EgovUserManageController.java | 95 +++++ .../sqlmap/let/msg/MjonMsgData_SQL_mysql.xml | 3 +- ...EgovGnrlUserSelectMsgDataDetailListPop.jsp | 28 +- .../EgovGnrlUserSelectMsgDataDetailPop.jsp | 366 ++++++++++++++++++ .../umt/EgovGnrlUserSelectMsgDataListPop.jsp | 1 - .../cmm/uss/umt/EgovGnrlUserSelectUpdt.jsp | 4 +- 6 files changed, 475 insertions(+), 22 deletions(-) create mode 100644 src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectMsgDataDetailPop.jsp diff --git a/src/main/java/itn/let/uss/umt/web/EgovUserManageController.java b/src/main/java/itn/let/uss/umt/web/EgovUserManageController.java index 75cc6be1..45a757c8 100644 --- a/src/main/java/itn/let/uss/umt/web/EgovUserManageController.java +++ b/src/main/java/itn/let/uss/umt/web/EgovUserManageController.java @@ -69,6 +69,7 @@ import itn.com.cmm.LoginVO; import itn.com.cmm.service.EgovCmmUseService; import itn.com.cmm.service.EgovFileMngService; import itn.com.cmm.service.EgovFileMngUtil; +import itn.com.cmm.service.FileVO; import itn.com.cmm.util.EgovDoubleSubmitHelper; import itn.com.cmm.util.MJUtil; import itn.com.cmm.util.RedirectUrlMaker; @@ -109,6 +110,7 @@ import itn.let.mjo.pay.service.RefundService; import itn.let.mjo.pay.service.RefundVO; import itn.let.mjo.payva.service.VacsVactService; import itn.let.mjo.payva.service.VacsVactVO; +import itn.let.mjo.reservmsg.service.MjonReservMsgService; import itn.let.org.service.LocVO; import itn.let.org.service.OrgChartManageService; import itn.let.sec.ram.service.AuthorManageVO; @@ -270,6 +272,9 @@ public class EgovUserManageController { @Resource(name = "kakaoApiService") private KakaoApiService kakaoApiService; + @Resource(name = "MjonReservMsgService") + private MjonReservMsgService mjonReservMsgService; + @Autowired KakaoApiTemplate kakaoApiTemplate; @@ -2009,6 +2014,96 @@ public class EgovUserManageController { return "cmm/uss/umt/EgovGnrlUserSelectMsgDataDetailListPop"; } + + /** + * 문자전송 상세보기 팝업화면 + * @param searchVO + * @param model + * @return "uss/ion/msg/SendMsgDetailPopAjax.do" + * @throws Exception + */ + @RequestMapping(value = {"uss/ion/msg/SendMsgDetailPopAjax.do"}) + public String SendMsgDetailPopAjax( + @ModelAttribute("searchVO") MjonMsgVO searchVO, + HttpServletRequest request , + Model model) throws Exception { + + String pattern = (String) request.getAttribute(HandlerMapping.BEST_MATCHING_PATTERN_ATTRIBUTE) ; + String reserveType = searchVO.getReserveType(); + + MjonMsgVO mjonMsgVO = new MjonMsgVO(); + if(null != searchVO.getUserData() && !"".equals(searchVO.getUserData())) { //수정 + mjonMsgVO = mjonMsgService.selectMjonMsgVO(searchVO); + + //문자 상세보기 이미지 아이디 받아오기 + String atchFileId1 =""; + String atchFileId2 =""; + String atchFileId3 =""; + + String path1 = mjonMsgVO.getFilePath1(); + String path2 = mjonMsgVO.getFilePath2(); + String path3 = mjonMsgVO.getFilePath3(); + + FileVO fileVO1 = new FileVO(); + FileVO fileVO2 = new FileVO(); + FileVO fileVO3 = new FileVO(); + + if(StringUtil.isNotEmpty(path1)) { + + //파일경로 및 이름을 이용하여 atchFileId, fileExtsn 번호 받아오기 + fileVO1 = getFilePathToAtchFileId(path1); + model.addAttribute("fileVO1", fileVO1); + } + + if(StringUtil.isNotEmpty(path2)) { + + //파일경로 및 이름을 이용하여 atchFileId, fileExtsn 번호 받아오기 + fileVO2 = getFilePathToAtchFileId(path2); + model.addAttribute("fileVO2", fileVO2); + } + + if(StringUtil.isNotEmpty(path3)) { + + //파일경로 및 이름을 이용하여 atchFileId, fileExtsn 번호 받아오기 + fileVO3 = getFilePathToAtchFileId(path3); + model.addAttribute("fileVO3", fileVO3); + } + } + + if(request.getHeader("REFERER").contains("ReceiveNumberList") ) { //수신번호 조회에서 넘김 + mjonMsgVO.setBeforeUrl("ReceiveNumberList"); + } + if(pattern.equals("/uss/ion/msg/CampaignMsgModify.do")) { //사용자 발신 + searchVO.setSearchCampaignYn("Y"); + } + + + mjonMsgVO.setReserveType(reserveType); + model.addAttribute("mjonMsgVO", mjonMsgVO); + return "/cmm/uss/umt/EgovGnrlUserSelectMsgDataDetailPop"; + } + + //파일 이름을 이용하여 첨부파일 아이디(atchFileId), 첨부파일 순번(fileExtsn)을 찾는 함수 + public FileVO getFilePathToAtchFileId(String filePath) throws Exception{ + + //마지막 / 의 인덱스 값 +1을 기준으로 문자열을 짤라줌 + String strFilePath = filePath.substring(filePath.lastIndexOf("/")+1); + + FileVO returnFileVO = new FileVO(); + + //파일 이름과 확장자를 분리해줌 + String[] arrFileNm = strFilePath.split("\\."); + String fileNm = arrFileNm[0]; + String fileExtsn = arrFileNm[1]; + + FileVO fileVO = new FileVO(); + fileVO.setStreFileNm(fileNm); + fileVO.setFileExtsn(fileExtsn); + returnFileVO = mjonReservMsgService.selectFileNmToAtchFileIdInfo(fileVO); + + return returnFileVO; + + } /** * @Method Name : EgovGnrlselectedUserKakaoDataListAjax diff --git a/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml b/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml index ccb3ec76..5a382ae1 100644 --- a/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml +++ b/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml @@ -1458,7 +1458,8 @@ MRC.RESULT_CODE_TXT AS resultCodeTxt, /** 문자 결과 코드 정보*/ MRC.RESULT_CODE AS resultCode, /** 문자 결과 코드 정보*/ MRC.RESULT_CODE2 AS resultCode2, /** 문자 결과 코드 정보*/ - MGD.MSG_KIND AS msgKind /** 문자 종류 -일반, 광고, 선거문자*/ + MGD.MSG_KIND AS msgKind, /** 문자 종류 -일반, 광고, 선거문자*/ + MGD.MSG_GROUP_ID AS msgGroupId FROM MJ_MSG_DATA A LEFT JOIN MJ_MSG_GROUP_DATA MGD ON A.MSG_GROUP_ID = MGD.MSG_GROUP_ID diff --git a/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectMsgDataDetailListPop.jsp b/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectMsgDataDetailListPop.jsp index 7ef93746..7d2ad24f 100644 --- a/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectMsgDataDetailListPop.jsp +++ b/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectMsgDataDetailListPop.jsp @@ -1,14 +1,14 @@ <%-- - Class Name : EgovGnrlUserSelectMsgDataListPop.jsp - Description : 사용자 문자전송리스트(전체) + Class Name : EgovGnrlUserSelectMsgDataDetailListPop.jsp + Description : 사용자 문자전송 상세 리스트 팝업 화면 Modification Information 수정일 수정자 수정내용 ------- -------- --------------------------- - 2022.07.01 우영두 최초 생성 + 2024.09.24 우영두 최초 생성 author : 우영두 - since : 2022.07.01 + since : 2024.09.24 Copyright (C) 2009 by MOPAS All right reserved. --%> @@ -88,17 +88,10 @@ function fn_delete(){ } } -/* 수정 화면*/ -function fn_modify(msgId){ +/* 상세 화면*/ +function fn_modify(userData){ var frm = document.modiForm ; - frm.msgId.value = msgId ; - //frm.submit(); -} - -/* 수정 화면*/ -function fn_detail_list(msgGroupId){ - var frm = document.modiForm ; - frm.msgGroupId.value = msgGroupId ; + frm.userData.value = userData ; frm.submit(); } @@ -380,11 +373,10 @@ function goList(){ -
- + + + - -
diff --git a/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectMsgDataDetailPop.jsp b/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectMsgDataDetailPop.jsp new file mode 100644 index 00000000..dd5ec230 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectMsgDataDetailPop.jsp @@ -0,0 +1,366 @@ +<%-- + Class Name : EgovGnrlUserSelectMsgDataDetailPop.jsp + Description : 사용자 전송 문자 상세내용 화면 + Modification Information + + 수정일 수정자 수정내용 + ------- -------- --------------------------- + 2024.09.25 우영두 최초 생성 + + author : 우영두 + since : 2024.09.25 + + Copyright (C) 2009 by MOPAS All right reserved. +--%> +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> +<%@ taglib prefix="ec" uri="/WEB-INF/tld/ecnet_tld.tld"%> +<% pageContext.setAttribute("newLineChar", "\r\n"); %> +<% pageContext.setAttribute("newLineChar2", "\n"); %> +<% + response.setHeader("Cache-Control","no-store"); + response.setHeader("Pragma","no-cache"); + response.setDateHeader("Expires",0); + if (request.getProtocol().equals("HTTP/1.1")) response.setHeader("Cache-Control", "no-cache"); +%> + + + +사용자 문자전송 관리 + + + + + + + + + + + + + + + + + +
+
+
+
Loading
+
+
+ + + + + + + " /> + " /> + " /> + + +
+
+ +

전송 문자 상세

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%-- + + + + + --%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
아이디 + '); return false;"> + + +
전송사구분 + <%-- --%> + +
발신번호 + +
수신번호 + <%-- --%> + +
문자타입 + <%-- --%> + <%-- --%> + + + 단문 문자 + + + + + 그림문자 + + + 장문문자 + + + + +
메세지타입 + + + 일반문자 + + + 광고문자 + + + 선거문자 + + + 관리자 발송 + + +
제목 + +
내용 + <%-- --%> + +

+ + +
발신 이미지 + + 발송된 그림문자 미리보기 + + + 발송된 그림문자 미리보기 + + + 발송된 그림문자 미리보기 + +
전송시간 + +
핸드폰 도착시간 + +
현재상태 + + + 예약 취소() + + + + + +
처리결과 + ( + + + + + + + ) + +
환불결과(전송실패시) + + + 미환불 + + + 환불 완료 + + +
접속기기 + +
전송사 + +
통신사 + +
삭제여부 + ${mjonMsgVO.delFlagTxt} +
+ +
+ +
+
+
+
+ +
+ + + +
+ + + 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 a66ffe5b..a66fa1f4 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 @@ -757,7 +757,6 @@ function fnGoMsgGroupList(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 a88627d0..37877b14 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 @@ -2993,9 +2993,9 @@ function fnInputSmsTxt(){ }else if(selValue == '3'){ $("#smsTxt").val('(안내) 안녕하세요. 문자온입니다. \r\n문자온에서는 고객님께 ‘080 수신거부(080-880-0858)’ 서비스를 무료로 제공하고 있습니다. \r\n광고문자 발송 시 아래 이미지처럼 ‘(광고)’ 시작문구와 함께 업체명과 전화번호를 모두 입력하여 이용해주시기 바랍니다. \r\n문자 전송창 문자분류에서 광고를 선택하시면 광고규칙이 자동 적용됩니다. \r\n광고성 문자 발송자는 수신자의 최초 수신동의를 받은 날로부터 2년마다 재동의를 받아야 하며, 상기 사항 위반 시 정보통신망법에 의거하여 서비스 이용 차단과 함께 과태료가 부과되오니 발송에 항상 유의해 주시기 바랍니다. 기타 자세한 사항은 불법스팸대응센터 또는 문자온 홈페이지를 참고해주시기 바랍니다. 감사합니다.'); }else if(selValue == '4'){ - $("#smsTxt").val('[문자온] 문자발송 결과(실패) \r\n안내 고객님은 현재 이동통신사의 "번호도용 문자차단 서비스"에 가입되어 있어 인터넷 문자사이트를 통한 문자발송이 모두 차단되어 있습니다. \r\n문자발송 서비스를 정상적으로 이용하기 위해서는 이용중인 이동통신사에 문의하시어 상기 서비스를 해지하신 후 문자를 재발송해주시기를 바랍니다. \r\n(서비스 해지 후 정상 발송까지 3~7일 소요될 수 있습니다.) \r\n※번호도용 문자차단 서비스 : 웹에서 발송되는 스팸, 스미싱 문자에 내 번호가 회신번호로 악용되는 것을 방지해주는 서비스'); + $("#smsTxt").val('[문자온] 문자발송 결과(실패) 안내 \r\n고객님은 현재 이동통신사의 "번호도용 문자차단 서비스"에 가입되어 있어 인터넷 문자사이트를 통한 문자발송이 모두 차단되어 있습니다. \r\n문자발송 서비스를 정상적으로 이용하기 위해서는 이용중인 이동통신사에 문의하시어 상기 서비스를 해지하신 후 문자를 재발송해주시기를 바랍니다. \r\n(서비스 해지 후 정상 발송까지 3~7일 소요될 수 있습니다.) \r\n※번호도용 문자차단 서비스 : 웹에서 발송되는 스팸, 스미싱 문자에 내 번호가 회신번호로 악용되는 것을 방지해주는 서비스'); }else if(selValue == '5'){ - $("#smsTxt").val('[문자온] 안녕하세요, 문자온입니다. 고객님은 현재 이동통신사의 "번호도용 문자차단 서비스"에 가입되어 있어 인터넷 문자사이트를 통한 문자발송이 모두 차단되어 있습니다. \r\n문자발송 서비스를 정상적으로 이용하기 위해서는 이용중인 이동통신사에 문의하시어 상기 서비스를 해지하신 후 문자를 재발송해 주시길 바랍니다.\r\n동 서비스 해지 후 문자 정상 발송까지는 3~7일 소요될수 있으며, 만약 통신사를 통해 해지처리를 하였음에도 문자발송이 계속 실패하는 경우에는 아직 한국인터넷진흥원(KISA)와 문자중계사업자간 연동처리가 완료되지 않은 경우이므로 충분한 시간여유를 두시고 추후에 발송시도 해 주시기를 부탁드립니다. 감사합니다. \r\n※번호도용 문자차단 서비스 : 웹에서 발송되는 스팸, 스미싱 문자에 내 번호가 회신번호로 악용되는 것을 방지해주는 서비스'); + $("#smsTxt").val('[문자온] 안녕하세요, 문자온입니다. 고객님은 현재 이동통신사의 "번호도용 문자차단 서비스"에 가입되어 있어 인터넷 문자사이트를 통한 문자발송이 모두 차단되어 있습니다. \r\n문자발송 서비스를 정상적으로 이용하기 위해서는 이용중인 이동통신사에 문의하시어 상기 서비스를 해지하신 후 문자를 재발송해 주시길 바랍니다.\r\n동 서비스 해지 후 문자 정상 발송까지는 3~7일 소요될수 있으며, 만약 통신사를 통해 해지처리를 하였음에도 문자발송이 계속 실패하는 경우에는 아직 한국인터넷진흥원(KISA)과 문자중계사업자간 연동처리가 완료되지 않은 경우이므로 충분한 시간여유를 두시고 추후에 발송시도 해 주시기를 부탁드립니다. 감사합니다. \r\n※번호도용 문자차단 서비스 : 웹에서 발송되는 스팸, 스미싱 문자에 내 번호가 회신번호로 악용되는 것을 방지해주는 서비스'); }else if(selValue == '6'){ $("#smsTxt").val('[문자온] 고객님께서는 시스템 스팸 필터링으로 인해 사이트 이용정지 처리되었음을 안내 드립니다. 문의사항이 있으신 경우 고객센터(1551-8011)로 연락 부탁드립니다.'); }else if(selValue == '7'){