fix : 이메일/sms발송화면 호출개선

This commit is contained in:
jazz
2026-03-17 17:57:16 +09:00
parent a229a7fec0
commit fa337ec3a7
9 changed files with 105 additions and 17 deletions

View File

@@ -28,4 +28,12 @@ public class BOMaEmailSrchVO extends AbstractVO {
/*secretkey*/ /*secretkey*/
private String secretKey; private String secretKey;
/** 셋팅용 파라미터 tab구분
* send : 이메일 수동발송
* search : 이메일 발송내역*/
private String reqTab;
/** 셋팅용 파라미터 받는사람 이메일주소*/
private String email;
} }

View File

@@ -156,4 +156,11 @@ public class BOMssageVO extends AbstractVO {
/** 메세지 취소 구분코드 */ /** 메세지 취소 구분코드 */
private String cancelDvCd; private String cancelDvCd;
/** 셋팅용 파라미터 tab구분
* send : 메시지수동바송
* search : 메시지 발송내역*/
private String reqTab;
/** 셋팅용 파라미터 받는사람 휴대전화번호*/
private String mbtlnb;
} }

View File

@@ -116,8 +116,8 @@ public class EmailController {
*/ */
@Policy(AuthPolicy.RESTRICTED) @Policy(AuthPolicy.RESTRICTED)
@RequestMapping(value="/selectEmailPassivSndngManage") @RequestMapping(value="/selectEmailPassivSndngManage")
public String selectEmailPassivSndngManage(){ public String selectEmailPassivSndngManage(ModelMap model, BOMaEmailSrchVO bOMaEmailSrchVO){
model.addAttribute("emailSrchVO", bOMaEmailSrchVO);
return "mngr/ntcn/email/EmailPassivSndngManage"; return "mngr/ntcn/email/EmailPassivSndngManage";
} }

View File

@@ -122,10 +122,11 @@ public class MssageController {
*/ */
@Policy(AuthPolicy.RESTRICTED) @Policy(AuthPolicy.RESTRICTED)
@RequestMapping(value="/selectMssagePassivSndngManage") @RequestMapping(value="/selectMssagePassivSndngManage")
public String selectMessagePassivSndngManage(MssageVO vo, ModelMap model, public String selectMessagePassivSndngManage(BOMssageVO vo, ModelMap model,
@CookieValue(value = "authSopmalCd") String authSopmalCd){ @CookieValue(value = "authSopmalCd") String authSopmalCd){
vo.setSopmalCd(authSopmalCd); vo.setSopmalCd(authSopmalCd);
model.addAttribute("mssageVO", vo);
return "mngr/ntcn/mssage/MssagePassivSndngManage"; return "mngr/ntcn/mssage/MssagePassivSndngManage";
} }
@@ -149,6 +150,7 @@ public class MssageController {
} }
DataMap content = new DataMap(); DataMap content = new DataMap();
content.put("mssageVO", vo);
content.put("shopInfoMap", service.selectBOShopInfoInqire(vo)); content.put("shopInfoMap", service.selectBOShopInfoInqire(vo));
content.put("sopmalCd", user.getSopmalCd()); content.put("sopmalCd", user.getSopmalCd());
@@ -178,6 +180,7 @@ public class MssageController {
vo.setSopmalCd(user.getSopmalCd()); vo.setSopmalCd(user.getSopmalCd());
} }
DataMap content = new DataMap(); DataMap content = new DataMap();
content.put("mssageVO", vo);
content.put("shopInfoMap", service.selectBOShopInfoInqire(vo)); content.put("shopInfoMap", service.selectBOShopInfoInqire(vo));
content.put("sopmalCd", user.getSopmalCd()); content.put("sopmalCd", user.getSopmalCd());

View File

@@ -25,7 +25,16 @@
</head> </head>
<script> <script>
$(document).ready(function () { $(document).ready(function () {
<c:choose>
<c:when test="${emailSrchVO != null && emailSrchVO.reqTab eq 'search'}">
fn_select_listForm(1);
</c:when>
<c:otherwise>
fn_select_Sndng(); fn_select_Sndng();
</c:otherwise>
</c:choose>
}); });
/* ******************************************************** /* ********************************************************

View File

@@ -14,6 +14,7 @@
------- -------- --------------------------- ------- -------- ---------------------------
2024-05-22 이대환 최초 생성 2024-05-22 이대환 최초 생성
--%> --%>
<spring:eval expression="@environment.getProperty('mail.username')" var="sndrEmail"/>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="ko"> <html lang="ko">
<head> <head>
@@ -239,8 +240,8 @@
<th>보내는 사람</th> <th>보내는 사람</th>
<td> <td>
<div class="td-inner"> <div class="td-inner">
<input class="input-text xl" type="text" title="해당 인풋에 대한 설명" name="sndrEmail" id="sndrEmail" <input class="input-text xl" type="text" title="해당 인풋에 대한 설명" name="sndrEmail" id="sndrEmail" value='<c:out value="${sndrEmail}"/>'
placeholder="메일 주소 입력"> placeholder="메일 주소 입력" readonly>
</div> </div>
</td> </td>
</tr> </tr>
@@ -264,7 +265,7 @@
<th>받는 사람 (직접 입력)</th> <th>받는 사람 (직접 입력)</th>
<td> <td>
<div class="td-inner"> <div class="td-inner">
<input class="input-text xl" type="text" title="해당 인풋에 대한 설명" name="recpntEmail" id="recpntEmail" <input class="input-text xl" type="text" title="해당 인풋에 대한 설명" name="recpntEmail" id="recpntEmail" value="<c:if test="${emailSrchVO.reqTab eq 'send'}">${emailSrchVO.email}</c:if>"
placeholder="메일 주소는 ,(콤마)로 구분하여 입력"> placeholder="메일 주소는 ,(콤마)로 구분하여 입력">
</div> </div>
</td> </td>

View File

@@ -34,8 +34,14 @@
} }
}) })
<c:choose>
<c:when test="${mssageVO != null && mssageVO.reqTab eq 'search'}">
fn_select_listForm();
</c:when>
<c:otherwise>
fn_select_Sndng(); fn_select_Sndng();
</c:otherwise>
</c:choose>
}); });

View File

@@ -24,9 +24,15 @@
</head> </head>
<script> <script>
$(document).ready(function () { $(document).ready(function () {
var reqTab = '${resultMap.mssageVO.reqTab}';
fn_preview(); fn_preview();
if (reqTab == 'send'){
fn_select_Sndng('${resultMap.mssageVO.mbtlnb}');
}else if (reqTab == 'search'){
fn_select_listForm();
}else {
fn_select_Sndng(); fn_select_Sndng();
}
//특수문자 버튼 //특수문자 버튼
$("#special_cont").click(function(){ $("#special_cont").click(function(){
@@ -55,8 +61,8 @@
/* ******************************************************** /* ********************************************************
* 메시지 수동 발송 TAB * 메시지 수동 발송 TAB
******************************************************** */ ******************************************************** */
const fn_select_Sndng = function () { const fn_select_Sndng = function (mbtlnb) {
console.log("==========mbtlnb",mbtlnb);
$.ajax({ $.ajax({
type: 'post', type: 'post',
url: '/mngr/ntcn/mssage/selectMssagePassivSndng', url: '/mngr/ntcn/mssage/selectMssagePassivSndng',
@@ -67,6 +73,9 @@
$("#selectSndngBtn").addClass("active"); $("#selectSndngBtn").addClass("active");
$("#selectSndng").addClass("active"); $("#selectSndng").addClass("active");
$('#selectSndng').html(resultHtml); $('#selectSndng').html(resultHtml);
if (mbtlnb != null){
$('#inputData').text(mbtlnb);
}
} }
}); });
} }

View File

@@ -1240,7 +1240,29 @@
return false; return false;
} }
PopupCenter('/mngr/ntcn/mssage/selectMssageSndngPopupForm', 'SMS 발송', '1400', '840'); PopupCenter('', 'SMS 발송', '1400', '840');
var form = document.createElement("form");
form.setAttribute("method", "post");
form.setAttribute("action", "/mngr/ntcn/mssage/selectMssageSndngPopupForm"); // 데이터를 받을 URL
form.setAttribute("target", "SMS 발송"); // 위에서 생성한 팝업 이름
var reqTab = document.createElement("input");
reqTab.setAttribute("type", "hidden");
reqTab.setAttribute("name", "reqTab");
reqTab.setAttribute("value", "send");
form.appendChild(reqTab);
var mbtlnbObj = document.createElement("input");
mbtlnbObj.setAttribute("type", "hidden");
mbtlnbObj.setAttribute("name", "mbtlnb");
mbtlnbObj.setAttribute("value", mbtlnb);
form.appendChild(mbtlnbObj);
document.body.appendChild(form);
form.submit();
document.body.removeChild(form);
} }
/* EMAIL 발송 팝업 화면 이동 */ /* EMAIL 발송 팝업 화면 이동 */
@@ -1251,7 +1273,30 @@
return false; return false;
} }
PopupCenter('/mngr/ntcn/email/selectEmailSndngPopupForm','EMAIL 발송','1400','840'); PopupCenter('','EMAIL 발송','1400','840');
var form = document.createElement("form");
form.setAttribute("method", "post");
form.setAttribute("action", "/mngr/ntcn/email/selectEmailSndngPopupForm"); // 데이터를 받을 URL
form.setAttribute("target", "EMAIL 발송"); // 위에서 생성한 팝업 이름
var reqTab = document.createElement("input");
reqTab.setAttribute("type", "hidden");
reqTab.setAttribute("name", "reqTab");
reqTab.setAttribute("value", "send");
form.appendChild(reqTab);
var emailObj = document.createElement("input");
emailObj.setAttribute("type", "hidden");
emailObj.setAttribute("name", "email");
emailObj.setAttribute("value", email);
form.appendChild(emailObj);
document.body.appendChild(form);
form.submit();
document.body.removeChild(form);
} }
/* 메일 발송 내역 화면 이동 */ /* 메일 발송 내역 화면 이동 */
@@ -1262,7 +1307,7 @@
$(form).attr('method', 'post'); $(form).attr('method', 'post');
$(form).attr('target', '_blank'); $(form).attr('target', '_blank');
$(form).attr('action', '<c:url value="/mngr/ntcn/email/selectEmailPassivSndngManage"/>'); $(form).attr('action', '<c:url value="/mngr/ntcn/email/selectEmailPassivSndngManage?reqTab=search"/>');
$(form).appendTo('body'); $(form).appendTo('body');
@@ -1278,7 +1323,7 @@
$(form).attr('method', 'post'); $(form).attr('method', 'post');
$(form).attr('target', '_blank'); $(form).attr('target', '_blank');
$(form).attr('action', '<c:url value="/mngr/ntcn/mssage/selectMssagePassivSndngManage"/>'); $(form).attr('action', '<c:url value="/mngr/ntcn/mssage/selectMssagePassivSndngManage?reqTab=search"/>');
$(form).appendTo('body'); $(form).appendTo('body');