회원상세 알림톡 스미싱의심 기능추가
@2a717788b82ec03566192455c29366c6919768a3
--- src/main/java/itn/let/uss/umt/service/EgovUserManageService.java
+++ src/main/java/itn/let/uss/umt/service/EgovUserManageService.java
... | ... | @@ -177,12 +177,20 @@ |
| 177 | 177 |
|
| 178 | 178 |
public UserManageVO selectSmishingYnUserInfo(UserManageVO userManageVO) throws Exception; |
| 179 | 179 |
|
| 180 |
+ public UserManageVO selectAtSmishingYnUserInfo(UserManageVO userManageVO) throws Exception; |
|
| 181 |
+ |
|
| 180 | 182 |
// 스미싱의심 온/오프 |
| 181 | 183 |
public void updateUserSmishingYn(UserManageVO userManageVO, String checkedIdForUpt) throws Exception; |
| 182 | 184 |
|
| 183 | 185 |
// 스미싱의심 온/오프 - 상세에서 단일로 |
| 184 | 186 |
public void updateOneUserSmishingYn(UserManageVO userManageVO) throws Exception; |
| 185 | 187 |
|
| 188 |
+ // 알림톡 스미싱의심 온/오프 |
|
| 189 |
+ public void updateUserAtSmishingYn(UserManageVO userManageVO, String checkedIdForUpt) throws Exception; |
|
| 190 |
+ |
|
| 191 |
+ // 알림톡 스미싱의심 온/오프 - 상세에서 단일로 |
|
| 192 |
+ public void updateOneUserAtSmishingYn(UserManageVO userManageVO) throws Exception; |
|
| 193 |
+ |
|
| 186 | 194 |
// 후불제 여부 저장 |
| 187 | 195 |
public void updateUserPrePaymentYn(UserManageVO userManageVO) throws Exception; |
| 188 | 196 |
|
--- src/main/java/itn/let/uss/umt/service/MberManageVO.java
+++ src/main/java/itn/let/uss/umt/service/MberManageVO.java
... | ... | @@ -532,7 +532,14 @@ |
| 532 | 532 |
|
| 533 | 533 |
private String smishingYn; // 스미싱 의심여부 |
| 534 | 534 |
private String vipYn; // VIP 여부 |
| 535 |
+ private String atSmishingYn; // 알림톡 스미싱 의심여부 |
|
| 535 | 536 |
|
| 537 |
+ public String getAtSmishingYn() {
|
|
| 538 |
+ return atSmishingYn; |
|
| 539 |
+ } |
|
| 540 |
+ public void setAtSmishingYn(String atSmishingYn) {
|
|
| 541 |
+ this.atSmishingYn = atSmishingYn; |
|
| 542 |
+ } |
|
| 536 | 543 |
public String getPrePaymentYn() {
|
| 537 | 544 |
return prePaymentYn; |
| 538 | 545 |
} |
--- src/main/java/itn/let/uss/umt/service/UserManageVO.java
+++ src/main/java/itn/let/uss/umt/service/UserManageVO.java
... | ... | @@ -204,7 +204,14 @@ |
| 204 | 204 |
private float cash; |
| 205 | 205 |
private String blineCode; // B라인코드 |
| 206 | 206 |
private String recommendId; // 추천아이디 |
| 207 |
- |
|
| 207 |
+ private String atSmishingYn; // 알림톡 스미싱 의심여부 |
|
| 208 |
+ |
|
| 209 |
+ public String getAtSmishingYn() {
|
|
| 210 |
+ return atSmishingYn; |
|
| 211 |
+ } |
|
| 212 |
+ public void setAtSmishingYn(String atSmishingYn) {
|
|
| 213 |
+ this.atSmishingYn = atSmishingYn; |
|
| 214 |
+ } |
|
| 208 | 215 |
public String getBlineCode() {
|
| 209 | 216 |
return blineCode; |
| 210 | 217 |
} |
--- src/main/java/itn/let/uss/umt/service/impl/EgovUserManageServiceImpl.java
+++ src/main/java/itn/let/uss/umt/service/impl/EgovUserManageServiceImpl.java
... | ... | @@ -497,6 +497,11 @@ |
| 497 | 497 |
return userManageDAO.selectSmishingYnUserInfo(userManageVO); |
| 498 | 498 |
} |
| 499 | 499 |
|
| 500 |
+ @Override |
|
| 501 |
+ public UserManageVO selectAtSmishingYnUserInfo(UserManageVO userManageVO) {
|
|
| 502 |
+ return userManageDAO.selectAtSmishingYnUserInfo(userManageVO); |
|
| 503 |
+ } |
|
| 504 |
+ |
|
| 500 | 505 |
// 스미싱의심 온/오프 |
| 501 | 506 |
public void updateUserSmishingYn(UserManageVO userManageVO, String checkedIdForUpt) throws Exception {
|
| 502 | 507 |
if(!"".equals(checkedIdForUpt)) {
|
... | ... | @@ -560,6 +565,69 @@ |
| 560 | 565 |
|
| 561 | 566 |
} |
| 562 | 567 |
|
| 568 |
+ // 알림톡 스미싱의심 온/오프 |
|
| 569 |
+ public void updateUserAtSmishingYn(UserManageVO userManageVO, String checkedIdForUpt) throws Exception {
|
|
| 570 |
+ if(!"".equals(checkedIdForUpt)) {
|
|
| 571 |
+ String [] uptIdAll = checkedIdForUpt.split(",");
|
|
| 572 |
+ String[] uptId = Arrays.stream(uptIdAll).distinct().toArray(String[]::new); |
|
| 573 |
+ for (int i=0; i<uptId.length ; i++){
|
|
| 574 |
+ // 업데이트 |
|
| 575 |
+ userManageVO.setMberId(uptId[i]); |
|
| 576 |
+ userManageDAO.updateUserAtSmishingYn(userManageVO); |
|
| 577 |
+ |
|
| 578 |
+ // 법인폰 알림문자 발송 |
|
| 579 |
+ UserManageVO rtnVO = new UserManageVO(); |
|
| 580 |
+ rtnVO = selectAtSmishingYnUserInfo(userManageVO); |
|
| 581 |
+ if (rtnVO.getAtSmishingYn().equals("Y")) {
|
|
| 582 |
+ // 법인폰 알람여부 체크 |
|
| 583 |
+ JoinSettingVO joinSettingVO = new JoinSettingVO(); |
|
| 584 |
+ joinSettingVO = egovSiteManagerService.selectAdminNotiDetail(); |
|
| 585 |
+ // SMS 체크 |
|
| 586 |
+ if (joinSettingVO != null && joinSettingVO.getSmsNoti().equals("Y")) {
|
|
| 587 |
+ // 스미싱의심 SMS 알림전송 |
|
| 588 |
+ mjonNoticeSendUtil.smishingSmsNoticeSend("알림톡 스미싱 의심!", rtnVO.getMberId(), rtnVO.getMberNm());
|
|
| 589 |
+ } |
|
| 590 |
+ |
|
| 591 |
+ // SLACK 체크 |
|
| 592 |
+ if (joinSettingVO != null && joinSettingVO.getSlackNoti().equals("Y")) {
|
|
| 593 |
+ // Slack 메시지 발송(단순본문) |
|
| 594 |
+ String msg = "[문자온] 알림톡 스미싱 의심! - " + rtnVO.getMberNm() +"("+ rtnVO.getMberId() + ")";
|
|
| 595 |
+ mjonCommon.sendSimpleSlackMsg(msg); |
|
| 596 |
+ } |
|
| 597 |
+ } |
|
| 598 |
+ } |
|
| 599 |
+ } |
|
| 600 |
+ |
|
| 601 |
+ } |
|
| 602 |
+ |
|
| 603 |
+ // 알림톡 스미싱의심 온/오프 단일 |
|
| 604 |
+ public void updateOneUserAtSmishingYn(UserManageVO userManageVO) throws Exception {
|
|
| 605 |
+ // 업데이트 |
|
| 606 |
+ userManageDAO.updateUserAtSmishingYn(userManageVO); |
|
| 607 |
+ |
|
| 608 |
+ // 법인폰 알림문자 발송 |
|
| 609 |
+ UserManageVO rtnVO = new UserManageVO(); |
|
| 610 |
+ rtnVO = selectAtSmishingYnUserInfo(userManageVO); |
|
| 611 |
+ if (rtnVO.getAtSmishingYn().equals("Y")) {
|
|
| 612 |
+ // 법인폰 알람여부 체크 |
|
| 613 |
+ JoinSettingVO joinSettingVO = new JoinSettingVO(); |
|
| 614 |
+ joinSettingVO = egovSiteManagerService.selectAdminNotiDetail(); |
|
| 615 |
+ // SMS 체크 |
|
| 616 |
+ if (joinSettingVO != null && joinSettingVO.getSmsNoti().equals("Y")) {
|
|
| 617 |
+ // 스미싱의심 SMS 알림전송 |
|
| 618 |
+ mjonNoticeSendUtil.smishingSmsNoticeSend("알림톡 스미싱 의심!", rtnVO.getMberId(), rtnVO.getMberNm());
|
|
| 619 |
+ } |
|
| 620 |
+ |
|
| 621 |
+ // SLACK 체크 |
|
| 622 |
+ if (joinSettingVO != null && joinSettingVO.getSlackNoti().equals("Y")) {
|
|
| 623 |
+ // Slack 메시지 발송(단순본문) |
|
| 624 |
+ String msg = "[문자온] 알림톡 스미싱 의심! - " + rtnVO.getMberNm() +"("+ rtnVO.getMberId() + ")";
|
|
| 625 |
+ mjonCommon.sendSimpleSlackMsg(msg); |
|
| 626 |
+ } |
|
| 627 |
+ } |
|
| 628 |
+ |
|
| 629 |
+ } |
|
| 630 |
+ |
|
| 563 | 631 |
// 후불제 여부 저장 |
| 564 | 632 |
public void updateUserPrePaymentYn(UserManageVO userManageVO) throws Exception {
|
| 565 | 633 |
userManageDAO.updateUserPrePaymentYn(userManageVO); |
--- src/main/java/itn/let/uss/umt/service/impl/UserManageDAO.java
+++ src/main/java/itn/let/uss/umt/service/impl/UserManageDAO.java
... | ... | @@ -271,11 +271,20 @@ |
| 271 | 271 |
return (UserManageVO) select("userManageDAO.selectSmishingYnUserInfo",userManageVO);
|
| 272 | 272 |
} |
| 273 | 273 |
|
| 274 |
+ public UserManageVO selectAtSmishingYnUserInfo(UserManageVO userManageVO) {
|
|
| 275 |
+ return (UserManageVO) select("userManageDAO.selectAtSmishingYnUserInfo",userManageVO);
|
|
| 276 |
+ } |
|
| 277 |
+ |
|
| 274 | 278 |
// 스미싱의심 온/오프 |
| 275 | 279 |
public void updateUserSmishingYn(UserManageVO userManageVO){
|
| 276 | 280 |
update("userManageDAO.updateUserSmishingYn",userManageVO);
|
| 277 | 281 |
} |
| 278 | 282 |
|
| 283 |
+ // 알림톡 스미싱의심 온/오프 |
|
| 284 |
+ public void updateUserAtSmishingYn(UserManageVO userManageVO){
|
|
| 285 |
+ update("userManageDAO.updateUserAtSmishingYn",userManageVO);
|
|
| 286 |
+ } |
|
| 287 |
+ |
|
| 279 | 288 |
// 후불제 여부 저장 |
| 280 | 289 |
public void updateUserPrePaymentYn(UserManageVO userManageVO){
|
| 281 | 290 |
update("userManageDAO.updateUserPrePaymentYn",userManageVO);
|
--- src/main/java/itn/let/uss/umt/web/EgovUserManageController.java
+++ src/main/java/itn/let/uss/umt/web/EgovUserManageController.java
... | ... | @@ -2418,6 +2418,38 @@ |
| 2418 | 2418 |
|
| 2419 | 2419 |
return modelAndView; |
| 2420 | 2420 |
} |
| 2421 |
+ |
|
| 2422 |
+ // 알림톡 스미싱의심 여부 변경 |
|
| 2423 |
+ @RequestMapping("/uss/umt/user/EgovGnrlUpdateUserAtSmishingAjax.do")
|
|
| 2424 |
+ public ModelAndView EgovGnrlUpdateUserAtSmishingAjax(@ModelAttribute("userManageVO") UserManageVO userManageVO) throws Exception {
|
|
| 2425 |
+ |
|
| 2426 |
+ ModelAndView modelAndView = new ModelAndView(); |
|
| 2427 |
+ modelAndView.setViewName("jsonView");
|
|
| 2428 |
+ |
|
| 2429 |
+ Boolean isSuccess = true; |
|
| 2430 |
+ String msg = ""; |
|
| 2431 |
+ |
|
| 2432 |
+ try {
|
|
| 2433 |
+ // 미인증 사용자에 대한 보안처리 |
|
| 2434 |
+ Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated(); |
|
| 2435 |
+ if(!isAuthenticated) {
|
|
| 2436 |
+ isSuccess = false; |
|
| 2437 |
+ msg = "로그인이 필요합니다."; |
|
| 2438 |
+ } |
|
| 2439 |
+ else {
|
|
| 2440 |
+ userManageService.updateOneUserAtSmishingYn(userManageVO); |
|
| 2441 |
+ } |
|
| 2442 |
+ } catch (Exception e) {
|
|
| 2443 |
+ isSuccess = false; |
|
| 2444 |
+ msg = e.getMessage(); |
|
| 2445 |
+ } |
|
| 2446 |
+ |
|
| 2447 |
+ modelAndView.addObject("isSuccess", isSuccess);
|
|
| 2448 |
+ modelAndView.addObject("msg", msg);
|
|
| 2449 |
+ |
|
| 2450 |
+ return modelAndView; |
|
| 2451 |
+ } |
|
| 2452 |
+ |
|
| 2421 | 2453 |
// VIP 여부 변경 |
| 2422 | 2454 |
@RequestMapping("/uss/umt/user/EgovGnrlUpdateUserVIPAjax.do")
|
| 2423 | 2455 |
public ModelAndView EgovGnrlUpdateUserVIPAjax(@ModelAttribute("userManageVO") UserManageVO userManageVO) throws Exception {
|
--- src/main/resources/egovframework/sqlmap/let/uss/umt/EgovMberManage_SQL_Mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/uss/umt/EgovMberManage_SQL_Mysql.xml
... | ... | @@ -729,7 +729,8 @@ |
| 729 | 729 |
A.SMISHING_YN smishingYn, |
| 730 | 730 |
A.VIP_YN vipYn, |
| 731 | 731 |
A.EXCEPT_SPAM_YN AS exceptSpamYn, |
| 732 |
- A.HOTLINE_AGENT_CODE AS hotlineAgentCode |
|
| 732 |
+ A.HOTLINE_AGENT_CODE AS hotlineAgentCode, |
|
| 733 |
+ A.AT_SMISHING_YN atSmishingYn |
|
| 733 | 734 |
FROM LETTNGNRLMBER A |
| 734 | 735 |
LEFT JOIN MJ_CANDIDATE_INFO MCI |
| 735 | 736 |
ON A.MBER_ID = MCI.MBER_ID |
--- src/main/resources/egovframework/sqlmap/let/uss/umt/EgovUserManage_SQL_Mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/uss/umt/EgovUserManage_SQL_Mysql.xml
... | ... | @@ -1328,6 +1328,15 @@ |
| 1328 | 1328 |
WHERE MBER_ID = #mberId# |
| 1329 | 1329 |
</select> |
| 1330 | 1330 |
|
| 1331 |
+ <select id="userManageDAO.selectAtSmishingYnUserInfo" parameterClass="userVO" resultClass="userVO"> |
|
| 1332 |
+ SELECT |
|
| 1333 |
+ MBER_ID AS mberId, |
|
| 1334 |
+ MBER_NM AS mberNm, |
|
| 1335 |
+ AT_SMISHING_YN AS atSmishingYn |
|
| 1336 |
+ FROM LETTNGNRLMBER |
|
| 1337 |
+ WHERE MBER_ID = #mberId# |
|
| 1338 |
+ </select> |
|
| 1339 |
+ |
|
| 1331 | 1340 |
<update id="userManageDAO.updateUserSmishingYn" parameterClass="userVO"> |
| 1332 | 1341 |
UPDATE |
| 1333 | 1342 |
LETTNGNRLMBER |
... | ... | @@ -1337,6 +1346,15 @@ |
| 1337 | 1346 |
AND MBER_ID = #mberId# |
| 1338 | 1347 |
</update> |
| 1339 | 1348 |
|
| 1349 |
+ <update id="userManageDAO.updateUserAtSmishingYn" parameterClass="userVO"> |
|
| 1350 |
+ UPDATE |
|
| 1351 |
+ LETTNGNRLMBER |
|
| 1352 |
+ SET |
|
| 1353 |
+ AT_SMISHING_YN = #atSmishingYn# |
|
| 1354 |
+ WHERE 1=1 |
|
| 1355 |
+ AND MBER_ID = #mberId# |
|
| 1356 |
+ </update> |
|
| 1357 |
+ |
|
| 1340 | 1358 |
<update id="userManageDAO.updateUserPrePaymentYn" parameterClass="userVO"> |
| 1341 | 1359 |
UPDATE |
| 1342 | 1360 |
LETTNGNRLMBER |
--- src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectUpdt.jsp
+++ src/main/webapp/WEB-INF/jsp/cmm/uss/umt/EgovGnrlUserSelectUpdt.jsp
... | ... | @@ -1182,6 +1182,45 @@ |
| 1182 | 1182 |
} |
| 1183 | 1183 |
|
| 1184 | 1184 |
} |
| 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 |
+ |
|
| 1185 | 1224 |
// VIP 여부 |
| 1186 | 1225 |
function fnMberVIPYn(){
|
| 1187 | 1226 |
var form = document.mberManageVO; |
... | ... | @@ -2536,6 +2575,18 @@ |
| 2536 | 2575 |
</td> |
| 2537 | 2576 |
</tr> |
| 2538 | 2577 |
<tr> |
| 2578 |
+ <th>스미싱 의심(카톡)</th> |
|
| 2579 |
+ <td> |
|
| 2580 |
+ <select name="atSmishingYn" id="atSmishingYn" style="width:150px;" onFocus='this.initialSelect = this.selectedIndex;' onChange="javascript:fnMberAtSmishingYn();"> |
|
| 2581 |
+ <option value="Y" <c:if test="${mberManageVO.atSmishingYn == 'Y'}">selected="selected"</c:if>>온(On)</option>
|
|
| 2582 |
+ <option value="N" <c:if test="${mberManageVO.atSmishingYn == 'N'}">selected="selected"</c:if>>오프(Off)</option>
|
|
| 2583 |
+ </select> |
|
| 2584 |
+ </td> |
|
| 2585 |
+ <th></th> |
|
| 2586 |
+ <td> |
|
| 2587 |
+ </td> |
|
| 2588 |
+ </tr> |
|
| 2589 |
+ <tr> |
|
| 2539 | 2590 |
<th>전용 전송사</th> |
| 2540 | 2591 |
<td> |
| 2541 | 2592 |
<select name="hotlineAgentCode" id="hotlineAgentCode" style="width:150px;" onFocus='this.initialSelect = this.selectedIndex;' onChange="javascript:fnMberHotlineAgentYn();"> |
... | ... | @@ -2970,6 +3021,18 @@ |
| 2970 | 3021 |
</td> |
| 2971 | 3022 |
</tr> |
| 2972 | 3023 |
<tr> |
| 3024 |
+ <th>스미싱 의심(카톡)</th> |
|
| 3025 |
+ <td> |
|
| 3026 |
+ <select name="atSmishingYn" id="atSmishingYn" style="width:150px;" onFocus='this.initialSelect = this.selectedIndex;' onChange="javascript:fnMberAtSmishingYn();"> |
|
| 3027 |
+ <option value="Y" <c:if test="${mberManageVO.atSmishingYn == 'Y'}">selected="selected"</c:if>>온(On)</option>
|
|
| 3028 |
+ <option value="N" <c:if test="${mberManageVO.atSmishingYn == 'N'}">selected="selected"</c:if>>오프(Off)</option>
|
|
| 3029 |
+ </select> |
|
| 3030 |
+ </td> |
|
| 3031 |
+ <th></th> |
|
| 3032 |
+ <td> |
|
| 3033 |
+ </td> |
|
| 3034 |
+ </tr> |
|
| 3035 |
+ <tr> |
|
| 2973 | 3036 |
<th>전용 전송사</th> |
| 2974 | 3037 |
<td> |
| 2975 | 3038 |
<select name="hotlineAgentCode" id="hotlineAgentCode" style="width:150px;" onFocus='this.initialSelect = this.selectedIndex;' onChange="javascript:fnMberHotlineAgentYn();"> |
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?