이준호 전자조정시스템 커밋

- (관리자) 발송관리 > SMS, 이메일 발송
    - textarea 크기 변경 및 문구 변경
    - 문의 회신 연락처 텍스트 추가
This commit is contained in:
leejunho 2023-10-16 14:54:00 +09:00
parent ab22a8e5eb
commit 6fbd73272e
5 changed files with 108 additions and 73 deletions

View File

@ -20,6 +20,9 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.support.RedirectAttributes; import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
import kcc.com.cmm.LoginVO;
import kcc.com.utl.fcc.service.EgovStringUtil;
import kcc.kccadr.adjreqmgr.service.AdjReqMgrVO; import kcc.kccadr.adjreqmgr.service.AdjReqMgrVO;
import kcc.kccadr.msg.service.MsgMgrService; import kcc.kccadr.msg.service.MsgMgrService;
import kcc.kccadr.sendMgr.service.SendMgrService; import kcc.kccadr.sendMgr.service.SendMgrService;
@ -64,66 +67,73 @@ public class SendMgrEmailController {
ModelMap model ModelMap model
) { ) {
String emailTop = "<!DOCTYPE html>" + // String emailTop = "<!DOCTYPE html>" +
"<html lang=\"ko\">" + // "<html lang=\"ko\">" +
"<head>" + // "<head>" +
"<meta charset=\"UTF-8\">" + // "<meta charset=\"UTF-8\">" +
"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />" + // "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />" +
"<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />" + // "<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />" +
"<meta name=\"viewport\" content=\"\" />" + // "<meta name=\"viewport\" content=\"\" />" +
"<meta name=\"Keywords\" content=\"\" />" + // "<meta name=\"Keywords\" content=\"\" />" +
"<meta name=\"Description\" content=\"\" />" + // "<meta name=\"Description\" content=\"\" />" +
"</head>" + // "</head>" +
"<body>" + // "<body>" +
"<table align=\"center\" width=\"800\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"border: 5px solid rgb(241, 89, 34);\">" + // "<table align=\"center\" width=\"800\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"border: 5px solid rgb(241, 89, 34);\">" +
" <tbody>" + // " <tbody>" +
" <tr>" + // " <tr>" +
" <td align=\"left\" bgcolor=\"#ffffff\" style=\"padding: 30px 40px 40px;\">" + // " <td align=\"left\" bgcolor=\"#ffffff\" style=\"padding: 30px 40px 40px;\">" +
" <a href=\"https://adr.copyright.or.kr\" rel=\"noreferrer noopener\" target=\"_blank\">" + // " <a href=\"https://adr.copyright.or.kr\" rel=\"noreferrer noopener\" target=\"_blank\">" +
" <img alt=\"한국저작권위원회-저작권 전자조정시스템 로고\" src=\"https://adr.copyright.or.kr/kccadrPb/usr/image/common/top_logo.png\" style=\"width: 200px; border: 0px currentColor; vertical-align: middle\">" + // " <img alt=\"한국저작권위원회-저작권 전자조정시스템 로고\" src=\"https://adr.copyright.or.kr/kccadrPb/usr/image/common/top_logo.png\" style=\"width: 200px; border: 0px currentColor; vertical-align: middle\">" +
" </a>" + // " </a>" +
" </td>" + // " </td>" +
" </tr>" + // " </tr>" +
" <tr>" + // " <tr>" +
" <td align=\"center\" bgcolor=\"#ffffff\" style=\"padding: 0 40px 22px;\">" + // " <td align=\"center\" bgcolor=\"#ffffff\" style=\"padding: 0 40px 22px;\">" +
" <p style=\"margin: 0; padding: 24px; font-family: 'Noto Sans KR'; line-height: 26px; text-align: left; border: 3px solid rgb(223, 223, 223);\">" + // " <p style=\"margin: 0; padding: 24px; font-family: 'Noto Sans KR'; line-height: 26px; text-align: left; border: 3px solid rgb(223, 223, 223);\">" +
" "; // " ";
model.addAttribute("emailTop", emailTop); //
// String emailBottom = "</p>" +
String emailBottom = "</p>" + // " </td>" +
" </td>" + // " </tr>" +
" </tr>" + // " <tr>" +
" <tr>" + // " <td style=\"padding: 60px 0 0;\">" +
" <td style=\"padding: 60px 0 0;\">" + // " <table width=\"800\" bgcolor=\"#f8f8f8\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"padding: 22px 0; border-top: 1px solid #cecece;\">" +
" <table width=\"800\" bgcolor=\"#f8f8f8\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"padding: 22px 0; border-top: 1px solid #cecece;\">" + // " <tbody>" +
" <tbody>" + // " <tr>" +
" <tr>" + // " <td align=\"left\" style=\"padding: 0 28px;\">" +
" <td align=\"left\" style=\"padding: 0 28px;\">" + // " <a href=\"https://oneid.copyright.or.kr/\" rel=\"noreferrer noopener\" style=\"vertical-align: middle; display: table-cell\" target=\"_blank\" data-saferedirecturl=\"https://www.google.com/url?q=https://oneid.copyright.or.kr/&amp;source=gmail&amp;ust=1647666525852000&amp;usg=AOvVaw3aJ4SNBKmUaX89PBd69nPC\">" +
" <a href=\"https://oneid.copyright.or.kr/\" rel=\"noreferrer noopener\" style=\"vertical-align: middle; display: table-cell\" target=\"_blank\" data-saferedirecturl=\"https://www.google.com/url?q=https://oneid.copyright.or.kr/&amp;source=gmail&amp;ust=1647666525852000&amp;usg=AOvVaw3aJ4SNBKmUaX89PBd69nPC\">" + // " <img alt=\"한국저작권위원회-통합회원 로고\" src=\"https://ci5.googleusercontent.com/proxy/0JqqeL8s5aHiWESa7Hkqq7DoxHF0qGfEGwL3ZsfXSpyh-P9mJolNp4QpMbgMj_A7cR44XGl1C3MdSjQ50oR_vqWDIv87H1E=s0-d-e1-ft#https://oneid.copyright.or.kr/images/mail/f_logo.gif\" style=\"border: 0px currentColor; vertical-align: middle\" class=\"CToWUd\">" +
" <img alt=\"한국저작권위원회-통합회원 로고\" src=\"https://ci5.googleusercontent.com/proxy/0JqqeL8s5aHiWESa7Hkqq7DoxHF0qGfEGwL3ZsfXSpyh-P9mJolNp4QpMbgMj_A7cR44XGl1C3MdSjQ50oR_vqWDIv87H1E=s0-d-e1-ft#https://oneid.copyright.or.kr/images/mail/f_logo.gif\" style=\"border: 0px currentColor; vertical-align: middle\" class=\"CToWUd\">" + // " </a>" +
" </a>" + // " </td>" +
" </td>" + // " <td align=\"left\" style=\"font-family: 'Noto Sans KR'; font-size: 15px; letter-spacing: -0.2px;\">" +
" <td align=\"left\" style=\"font-family: 'Noto Sans KR'; font-size: 15px; letter-spacing: -0.2px;\">" + // " <p style=\"margin: 0px 0px 11px; padding: 0px\">본 메일은 발신전용으로 회신하지 않습니다.</p>" +
" <p style=\"margin: 0px 0px 11px; padding: 0px\">본 메일은 발신전용으로 회신하지 않습니다.</p>" + // " <p style=\"margin: 0px; padding: 0px\">" +
" <p style=\"margin: 0px; padding: 0px\">" + // " <span style=\"font-weight: bold\">진주</span>" +
" <span style=\"font-weight: bold\">진주</span>" + // " [우 52851] 경상남도 진주시 소호로 117 <span>&nbsp;대표번호 : 055.792.0000</span>" +
" [우 52851] 경상남도 진주시 소호로 117 <span>&nbsp;대표번호 : 055.792.0000</span>" + // " <br>" +
" <br>" + // " <span style=\"font-weight: bold\">서울</span>" +
" <span style=\"font-weight: bold\">서울</span>" + // " [우 04323] 서울특별시 용산구 후암로 107, 5/16층. <span>&nbsp;대표번호 : 02.2669.0010</span>" +
" [우 04323] 서울특별시 용산구 후암로 107, 5/16층. <span>&nbsp;대표번호 : 02.2669.0010</span>" + // " </p>" +
" </p>" + // " </td>" +
" </td>" + // " </tr>" +
" </tr>" + // " </tbody>" +
" </tbody>" + // " </table>" +
" </table>" + // " </td>" +
" </td>" + // " </tr>" +
" </tr>" + // " </tbody>" +
" </tbody>" + // " </table>" +
" </table>" + // "</body>" +
"</body>" + // "</html>";
"</html>";
// model.addAttribute("emailTop", emailTop);
// model.addAttribute("emailBottom", emailBottom);
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated() ? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser() : null;
//문자발송 팝업에 전달할 데이터
model.addAttribute("adminEmail", loginVO.getEmail());
model.addAttribute("emailBottom", emailBottom);
return "/kccadr/sendMgr/emailSendMgr_tabulator"; return "/kccadr/sendMgr/emailSendMgr_tabulator";
} }

View File

@ -4,11 +4,15 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.support.RedirectAttributes; import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
import kcc.com.cmm.LoginVO;
import kcc.com.utl.fcc.service.EgovStringUtil;
import kcc.kccadr.adjreqmgr.service.AdjReqMgrVO; import kcc.kccadr.adjreqmgr.service.AdjReqMgrVO;
import kcc.kccadr.cmm.service.SMSOracleService; import kcc.kccadr.cmm.service.SMSOracleService;
import kcc.kccadr.sendMgr.service.SendMgrService; import kcc.kccadr.sendMgr.service.SendMgrService;
@ -50,7 +54,13 @@ public class SendMgrSMSController {
* @Method 설명 : SMS 발송 화면이동 * @Method 설명 : SMS 발송 화면이동
*/ */
@RequestMapping(value = "/kccadr/sendMgr/smsSendMgr.do") @RequestMapping(value = "/kccadr/sendMgr/smsSendMgr.do")
public String smsSendMgrPage() { public String smsSendMgrPage(ModelMap model) {
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated() ? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser() : null;
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId());
//문자발송 팝업에 전달할 데이터
model.addAttribute("adminPhone", loginVO.getPhone());
return "/kccadr/sendMgr/smsSendMgr_tabulator"; return "/kccadr/sendMgr/smsSendMgr_tabulator";
} }

View File

@ -40,6 +40,9 @@
}); });
} }
</script> </script>
<style>
#sendMsg{width:50%; height:300px;}
</style>
</head> </head>
<body> <body>
<form id="smsForm" name="smsForm" onsubmit="return false;" method="post"> <form id="smsForm" name="smsForm" onsubmit="return false;" method="post">
@ -64,7 +67,10 @@
<tr> <tr>
<th>내용</th> <th>내용</th>
<td> <td>
<p><textarea rows="50" cols="30" name="sendMsg" id="sendMsg">문의회신 연락처 : <c:out value="${adjReqMgrVO.adminPhone}"/></textarea></p> <p><textarea rows="50" cols="30" name="sendMsg" id="sendMsg">
문의회신 연락처 : <c:out value="${adjReqMgrVO.adminPhone}"/></textarea></p>
</td> </td>
</tr> </tr>
</tbody> </tbody>

View File

@ -70,10 +70,10 @@
var emailSubject = $("#emailSubject").val(); var emailSubject = $("#emailSubject").val();
var emailContent = $("#emailContent").val(); var emailContent = $("#emailContent").val();
var emailTop = $("#emailTop").val(); // var emailTop = $("#emailTop").val();
var emailBottom = $("#emailBottom").val(); // var emailBottom = $("#emailBottom").val();
emailContent = emailTop + emailContent + emailBottom; // emailContent = emailTop + emailContent + emailBottom;
if(sendLength == 0){ if(sendLength == 0){
alert("수신 메일주소를 입력해 주세요"); alert("수신 메일주소를 입력해 주세요");
@ -136,7 +136,7 @@
// var table = new Tabulator("#tabulatorArea", { // var table = new Tabulator("#tabulatorArea", {
$("#tabulatorArea").tabulator({ $("#tabulatorArea").tabulator({
//table setup options //table setup options
height:"500px", height:"300px",
data:tabledata, data:tabledata,
layout:"fitDataTable", layout:"fitDataTable",
reactiveData:true, reactiveData:true,
@ -176,11 +176,12 @@
}); });
} }
</script> </script>
<form id="emailForm" name="emailForm" method="post"> <form id="emailForm" name="emailForm" method="post">
<input type="hidden" id="emailList" name="emailList"/> <input type="hidden" id="emailList" name="emailList"/>
<input type="hidden" id="emailSendContent" name="emailSendContent"/> <input type="hidden" id="emailSendContent" name="emailSendContent"/>
<input type="hidden" id="emailTop" name="emailTop" value="<c:out value="${emailTop}"/>"/> <%-- <input type="hidden" id="emailTop" name="emailTop" value="<c:out value="${emailTop}"/>"/> --%>
<input type="hidden" id="emailBottom" name="emailBottom" value="<c:out value="${emailBottom}"/>"/> <%-- <input type="hidden" id="emailBottom" name="emailBottom" value="<c:out value="${emailBottom}"/>"/> --%>
<!-- cont --> <!-- cont -->
<div class="cont_wrap"> <div class="cont_wrap">
<div class="box"> <div class="box">
@ -217,9 +218,12 @@
<tr> <tr>
<th>발송내용</th> <th>발송내용</th>
<td> <td>
<textarea name="emailContent" id="emailContent" cols="30" rows="10"></textarea> <textarea name="emailContent" id="emailContent" cols="30" rows="10">
<span>줄바꿈 시 '&lt;br&gt;'을 넣어주세요.</span>
<span><br>ex) 줄바꿈시에는 &lt;br&gt;<br>을 넣어주세요.</span> <br>
<br>
회신(담당자) 메일주소 : <c:out value="${adminEmail}"/></textarea>
<span style="font-size: 15px; color:#e40000; font-weight: 500; margin: -10px 0 0 0;">줄바꿈 시 '&lt;br&gt;'입력필수(예: 안녕하십니까? &lt;br&gt; 귀하의 조정사건 관련으로.......)</span>
</td> </td>
</tr> </tr>
<tr id="pasteArea"> <tr id="pasteArea">

View File

@ -125,7 +125,7 @@
// jquery로 만들어서 jquery로 함수 호출 가능 // jquery로 만들어서 jquery로 함수 호출 가능
$("#tabulatorArea").tabulator({ $("#tabulatorArea").tabulator({
//table setup options //table setup options
height:"500px", height:"300px",
data:tabledata, data:tabledata,
layout:"fitDataTable", layout:"fitDataTable",
reactiveData:true, reactiveData:true,
@ -165,7 +165,9 @@
} }
</script> </script>
<style>
#sendMsg{width:40%;height:300px;}
</style>
<form id="smsForm" name="smsForm" method="post"> <form id="smsForm" name="smsForm" method="post">
<input type="hidden" id="phoneList" name="phoneList"/> <input type="hidden" id="phoneList" name="phoneList"/>
<!-- cont --> <!-- cont -->
@ -198,7 +200,10 @@
<tr> <tr>
<th>발송내용</th> <th>발송내용</th>
<td> <td>
<textarea name="sendMsg" id="sendMsg" cols="30" rows="10"></textarea> <textarea name="sendMsg" id="sendMsg" cols="30" rows="10">
문의회신 연락처 : <c:out value="${adminPhone}"/></textarea>
</td> </td>
</tr> </tr>
<tr> <tr>