문자전송, 선거문자 주소록 불러오기 속도 개선 - 주소록 불러오기 팝업 그룹 선택시 로딩바 표시 추가 - 주소 추가시 중복 번호 체크 로직 속도 개선
- 주소록 불러오기 팝업 그룹 선택시 로딩바 표시 추가 - 주소 추가시 중복 번호 체크 로직 속도 개선
@ab889486ae42bf749741bf5cb4f80eb511322592
--- src/main/webapp/WEB-INF/jsp/web/msgcampain/MsgDataSMLView.jsp
+++ src/main/webapp/WEB-INF/jsp/web/msgcampain/MsgDataSMLView.jsp
... | ... | @@ -65,7 +65,9 @@ |
| 65 | 65 |
|
| 66 | 66 |
//기존 수신 리스트를 지워준 후 신규 전체 리스트를 추가해준다. |
| 67 | 67 |
tableL.clearData(); //기존 받는사람 목록을 삭제. |
| 68 |
- tableL.addData(dupliPhoneData(tableData)); // 받는사람 목록에 주소 정보 입력하기 |
|
| 68 |
+ //tableL.addData(dupliPhoneData(tableData)); // 받는사람 목록에 주소 정보 입력하기 |
|
| 69 |
+ tableL.addData(getSpupDupliPhoneDataChk(tableData)); // 속도 개선된 중복 검사 호출 |
|
| 70 |
+ |
|
| 69 | 71 |
_fileForm2 = []; //form file data 초기화 |
| 70 | 72 |
_fileIdx = 0; //form file idx 초기화 |
| 71 | 73 |
|
... | ... | @@ -2429,7 +2431,7 @@ |
| 2429 | 2431 |
url: url, |
| 2430 | 2432 |
data: data, |
| 2431 | 2433 |
dataType:'json', |
| 2432 |
- async: false, |
|
| 2434 |
+ async: true, |
|
| 2433 | 2435 |
cache: false, |
| 2434 | 2436 |
success: function (returnData, status) {
|
| 2435 | 2437 |
if(status == 'success'){ // status 확인 필요한가. 석세스 안뜨면 에러 가지 않나
|
... | ... | @@ -2467,7 +2469,17 @@ |
| 2467 | 2469 |
alert("주소록 불러오기에 실패하였습니다. !!");
|
| 2468 | 2470 |
} |
| 2469 | 2471 |
}, |
| 2470 |
- error: function (e) { alert("주소록 불러오기에 실패하였습니다."); console.log("ERROR : ", e); }
|
|
| 2472 |
+ error: function (e) {
|
|
| 2473 |
+ alert("주소록 불러오기에 실패하였습니다."); console.log("ERROR : ", e);
|
|
| 2474 |
+ }, |
|
| 2475 |
+ beforeSend : function(xmlHttpRequest) {
|
|
| 2476 |
+ //로딩창 show |
|
| 2477 |
+ $('.loading_layer').addClass('active');
|
|
| 2478 |
+ }, |
|
| 2479 |
+ complete : function(xhr, textStatus) {
|
|
| 2480 |
+ //로딩창 hide |
|
| 2481 |
+ $('.loading_layer').removeClass('active');
|
|
| 2482 |
+ } |
|
| 2471 | 2483 |
}); |
| 2472 | 2484 |
|
| 2473 | 2485 |
} |
--- src/main/webapp/WEB-INF/jsp/web/msgcampain/tw/MsgTWDataSMLView.jsp
+++ src/main/webapp/WEB-INF/jsp/web/msgcampain/tw/MsgTWDataSMLView.jsp
... | ... | @@ -2564,13 +2564,12 @@ |
| 2564 | 2564 |
url: url, |
| 2565 | 2565 |
data: data, |
| 2566 | 2566 |
dataType:'json', |
| 2567 |
- async: false, |
|
| 2567 |
+ async: true, |
|
| 2568 | 2568 |
cache: false, |
| 2569 | 2569 |
success: function (returnData, status) {
|
| 2570 | 2570 |
if(status == 'success'){ // status 확인 필요한가. 석세스 안뜨면 에러 가지 않나
|
| 2571 | 2571 |
|
| 2572 | 2572 |
if(returnData.result == "success"){
|
| 2573 |
- |
|
| 2574 | 2573 |
var addrList = returnData.resultAddrList; |
| 2575 | 2574 |
var tableData = []; |
| 2576 | 2575 |
|
... | ... | @@ -2580,14 +2579,12 @@ |
| 2580 | 2579 |
tableAddr.setData(tableData); |
| 2581 | 2580 |
return false; |
| 2582 | 2581 |
} |
| 2583 |
- |
|
| 2584 | 2582 |
//받는사람 리스트를 담아둔 배열에 신규 추가 데이터를 추가해 준다. |
| 2585 | 2583 |
for(var i=0; i < addrList.length; i++){
|
| 2586 | 2584 |
|
| 2587 | 2585 |
tableData.push({addrGroupNm: addrList[i].addrGrpNm, addrPhone: removeDash(addrList[i].addrPhoneNo) , addrName: addrList[i].addrNm, addrRep1: addrList[i].addrInfo1, addrRep2: addrList[i].addrInfo2, addrRep3: addrList[i].addrInfo3, addrRep4: addrList[i].addrInfo4});
|
| 2588 | 2586 |
|
| 2589 | 2587 |
} |
| 2590 |
- |
|
| 2591 | 2588 |
//우측 주소록 리스트 Tabulator에 입력해주기 |
| 2592 | 2589 |
tableAddr.setData(tableData); |
| 2593 | 2590 |
|
... | ... | @@ -2602,7 +2599,17 @@ |
| 2602 | 2599 |
alert("주소록 불러오기에 실패하였습니다. !!");
|
| 2603 | 2600 |
} |
| 2604 | 2601 |
}, |
| 2605 |
- error: function (e) { alert("주소록 불러오기에 실패하였습니다."); console.log("ERROR : ", e); }
|
|
| 2602 |
+ error: function (e) {
|
|
| 2603 |
+ alert("주소록 불러오기에 실패하였습니다."); console.log("ERROR : ", e);
|
|
| 2604 |
+ }, |
|
| 2605 |
+ beforeSend : function(xmlHttpRequest) {
|
|
| 2606 |
+ //로딩창 show |
|
| 2607 |
+ $('.loading_layer').addClass('active');
|
|
| 2608 |
+ }, |
|
| 2609 |
+ complete : function(xhr, textStatus) {
|
|
| 2610 |
+ //로딩창 hide |
|
| 2611 |
+ $('.loading_layer').removeClass('active');
|
|
| 2612 |
+ } |
|
| 2606 | 2613 |
}); |
| 2607 | 2614 |
|
| 2608 | 2615 |
} |
--- src/main/webapp/WEB-INF/jsp/web/msgdata/MsgDataSMLView.jsp
+++ src/main/webapp/WEB-INF/jsp/web/msgdata/MsgDataSMLView.jsp
... | ... | @@ -65,7 +65,9 @@ |
| 65 | 65 |
|
| 66 | 66 |
//기존 수신 리스트를 지워준 후 신규 전체 리스트를 추가해준다. |
| 67 | 67 |
tableL.clearData(); //기존 받는사람 목록을 삭제. |
| 68 |
- tableL.addData(dupliPhoneData(tableData)); // 받는사람 목록에 주소 정보 입력하기 |
|
| 68 |
+ //tableL.addData(dupliPhoneData(tableData)); // 받는사람 목록에 주소 정보 입력하기 |
|
| 69 |
+ tableL.addData(getSpupDupliPhoneDataChk(tableData)); // 받는사람 목록에 주소 정보 입력하기 |
|
| 70 |
+ |
|
| 69 | 71 |
_fileForm2 = []; //form file data 초기화 |
| 70 | 72 |
_fileIdx = 0; //form file idx 초기화 |
| 71 | 73 |
|
... | ... | @@ -2691,7 +2693,7 @@ |
| 2691 | 2693 |
url: url, |
| 2692 | 2694 |
data: data, |
| 2693 | 2695 |
dataType:'json', |
| 2694 |
- async: false, |
|
| 2696 |
+ async: true, |
|
| 2695 | 2697 |
cache: false, |
| 2696 | 2698 |
success: function (returnData, status) {
|
| 2697 | 2699 |
if(status == 'success'){ // status 확인 필요한가. 석세스 안뜨면 에러 가지 않나
|
... | ... | @@ -2729,7 +2731,17 @@ |
| 2729 | 2731 |
alert("주소록 불러오기에 실패하였습니다. !!");
|
| 2730 | 2732 |
} |
| 2731 | 2733 |
}, |
| 2732 |
- error: function (e) { alert("주소록 불러오기에 실패하였습니다."); console.log("ERROR : ", e); }
|
|
| 2734 |
+ error: function (e) {
|
|
| 2735 |
+ alert("주소록 불러오기에 실패하였습니다."); console.log("ERROR : ", e);
|
|
| 2736 |
+ }, |
|
| 2737 |
+ beforeSend : function(xmlHttpRequest) {
|
|
| 2738 |
+ //로딩창 show |
|
| 2739 |
+ $('.loading_layer').addClass('active');
|
|
| 2740 |
+ }, |
|
| 2741 |
+ complete : function(xhr, textStatus) {
|
|
| 2742 |
+ //로딩창 hide |
|
| 2743 |
+ $('.loading_layer').removeClass('active');
|
|
| 2744 |
+ } |
|
| 2733 | 2745 |
}); |
| 2734 | 2746 |
|
| 2735 | 2747 |
} |
--- src/main/webapp/js/MJUtill.js
+++ src/main/webapp/js/MJUtill.js
... | ... | @@ -575,6 +575,7 @@ |
| 575 | 575 |
|
| 576 | 576 |
//중복 전화번호 체크하기 |
| 577 | 577 |
function dupliPhoneData(data){
|
| 578 |
+ |
|
| 578 | 579 |
var chk = true; //중복값 유무 |
| 579 | 580 |
var uniqData = []; // 중복값 삭제 후 데이터 저장 |
| 580 | 581 |
var dupCnt = 0; |
... | ... | @@ -622,6 +623,23 @@ |
| 622 | 623 |
return uniqData; |
| 623 | 624 |
} |
| 624 | 625 |
|
| 626 |
+ |
|
| 627 |
+//연락처 중복검사 속도 개선 버전 |
|
| 628 |
+function getSpupDupliPhoneDataChk(data){
|
|
| 629 |
+ |
|
| 630 |
+ var dataLen = data.length; |
|
| 631 |
+ const arrUnique = data.filter((character, idx, arr)=>{
|
|
| 632 |
+ return arr.findIndex((item) => item.phone === character.phone) === idx |
|
| 633 |
+ }); |
|
| 634 |
+ |
|
| 635 |
+ var uniqLen = arrUnique.length; |
|
| 636 |
+ var dupCnt = dataLen - uniqLen; |
|
| 637 |
+ //중복건수 텍스트 입력해 주기 |
|
| 638 |
+ $("#rowDupCnt").text(dupCnt);
|
|
| 639 |
+ |
|
| 640 |
+ return arrUnique; |
|
| 641 |
+} |
|
| 642 |
+ |
|
| 625 | 643 |
// Get 중복 연락처 |
| 626 | 644 |
function GetDupliPhoneDataReal(item) {
|
| 627 | 645 |
var isDuplicate = false; |
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?