diff --git a/src/main/resources/egovframework/sqlmap/let/fax/addr/Fax_Addr_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/let/fax/addr/Fax_Addr_SQL_Mysql.xml index d0818384..35f0d34c 100644 --- a/src/main/resources/egovframework/sqlmap/let/fax/addr/Fax_Addr_SQL_Mysql.xml +++ b/src/main/resources/egovframework/sqlmap/let/fax/addr/Fax_Addr_SQL_Mysql.xml @@ -45,6 +45,11 @@ AND (C.RECV_STATUS = 'Y' OR C.RECV_STATUS IS NULL) + AND + ( + A.ADDR_GRP_ID = 0 + or B.DELETE_YN ='N' + ) @@ -161,6 +166,11 @@ AND (C.RECV_STATUS = 'Y' OR C.RECV_STATUS IS NULL) + AND + ( + A.ADDR_GRP_ID = 0 + or B.DELETE_YN ='N' + ) @@ -407,7 +417,12 @@ WHERE A.MBER_ID = #mberId# AND (A.RECV_STATUS = 'Y' OR A.RECV_STATUS = 'S' OR A.RECV_STATUS IS NULL) - AND A.DELETE_YN = 'N' + AND + ( A.ADDR_GRP_ID = 0 or + A.ADDR_GRP_ID in ( + select ADDR_GRP_ID from mj_fax_addr_grp mfag where MBER_ID = #mberId# and DELETE_YN ='N' + ) + ) diff --git a/src/main/resources/egovframework/sqlmap/let/mjo/addr/Addr_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/let/mjo/addr/Addr_SQL_Mysql.xml index cc4b4a66..18402eee 100644 --- a/src/main/resources/egovframework/sqlmap/let/mjo/addr/Addr_SQL_Mysql.xml +++ b/src/main/resources/egovframework/sqlmap/let/mjo/addr/Addr_SQL_Mysql.xml @@ -60,17 +60,21 @@ - AND A.ADDR_GRP_ID in ( - select addr_grp_id - from mj_addr_grp - where 1=1 - - AND MBER_ID = #mberId# - - - AND ADDR_GRP_ID = #searchAddrGrpId# - - ) + AND ( + A.ADDR_GRP_ID = 0 + or A.ADDR_GRP_ID in ( + select addr_grp_id + from mj_addr_grp + where 1=1 + AND DELETE_YN = 'N' + + AND MBER_ID = #mberId# + + + AND ADDR_GRP_ID = #searchAddrGrpId# + + ) + ) @@ -183,7 +187,9 @@ - AND A.ADDR_GRP_ID in ( + AND + A.ADDR_GRP_ID = 0 + or A.ADDR_GRP_ID in ( select addr_grp_id from mj_addr_grp where 1=1 @@ -194,6 +200,7 @@ AND ADDR_GRP_ID = #addrGrpId# ) + ) diff --git a/src/main/webapp/WEB-INF/jsp/web/addr/include/addrListforClipboard.jsp b/src/main/webapp/WEB-INF/jsp/web/addr/include/addrListforClipboard.jsp index 11f5a43f..2b080fe7 100644 --- a/src/main/webapp/WEB-INF/jsp/web/addr/include/addrListforClipboard.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/addr/include/addrListforClipboard.jsp @@ -227,17 +227,6 @@ $(document).ready(function(){ console.log('Tabulator data after getData:', $tableClip.getData()); }); - - - - - - - - - - - }); diff --git a/src/main/webapp/WEB-INF/jsp/web/fax/addr/FaxAddrList.jsp b/src/main/webapp/WEB-INF/jsp/web/fax/addr/FaxAddrList.jsp index 7e6eec13..2177b21e 100644 --- a/src/main/webapp/WEB-INF/jsp/web/fax/addr/FaxAddrList.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/fax/addr/FaxAddrList.jsp @@ -678,6 +678,7 @@ $(document).on('click', '#btnAddrMassRegCall', function() { // 주소록 그룹정보 불러오기 function getAddrGroupList() { + console.log('getAddrGroupList: ', getAddrGroupList); $.ajax({ type : "POST", async : false, @@ -706,8 +707,11 @@ function getAddrGroupListShow(jsonList) { for (var j = 0; j < jsonList.length; j++) { sHtml += " "; } - - $("#addrGrpIdInfo").html(sHtml); + + var tabulNm = fn_utils_getTabulatorNm(); + var tabluC = '.'+tabulNm + $(tabluC+" #addrGrpIdInfo").html(sHtml); + console.log('sHtml : ', sHtml); } $(document).on('change', '#addrGrpIdInfo', function() { @@ -938,6 +942,8 @@ function GetAddrMassSaveDupli() { //function fn_tabToggle('1') function fn_tabToggle(tabNum){ var tabId = '#tab'+tabNum; + console.log('tabNum : ', tabNum); + console.log('tabId : ', tabId ); $('.tab_c').hide(); $(tabId).show(); getAddrGroupList(); @@ -974,13 +980,16 @@ function fn_tabToggle(tabNum){ +
<%@include file="/WEB-INF/jsp/web/fax/addr/include/FaxAddrListforExcel.jsp" %>
diff --git a/src/main/webapp/WEB-INF/jsp/web/fax/addr/include/FaxAddrListforClipboard.jsp b/src/main/webapp/WEB-INF/jsp/web/fax/addr/include/FaxAddrListforClipboard.jsp index 6e95617e..4bd5ecb5 100644 --- a/src/main/webapp/WEB-INF/jsp/web/fax/addr/include/FaxAddrListforClipboard.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/fax/addr/include/FaxAddrListforClipboard.jsp @@ -23,31 +23,6 @@ function addrGroupLoadAjax(){ } -// 주소록그룹 콤보박스 유지 -function setSelectSetting(selectVal) { - $("#addrRegistSelect").val(selectVal).prop("selected", true); -} - -function linkPage(pageNo){ - if ($('#searchKeywordAddr').val() != "" && $('#searchKeywordAddr').val() != null && $('#searchKeywordAddr').val() != undefined) { - // 문자전송 검색용 - $("#msgStartKeyword").val(""); - } - - var searchForm = document.searchAddrForm; - searchForm.pageIndex.value = pageNo; - searchForm.pageUnit.value = $('#pageUnit').val(); - searchForm.searchCondition.value = $('#searchConditionAddr').val(); - searchForm.searchKeyword.value = $('#searchKeywordAddr').val(); - searchForm.startKeyword.value = $("#msgStartKeyword").val(); - - var sendData = $(document.searchAddrForm).serializeArray(); - $("#adr1_right").load("/web/mjon/addr/selectAddrAjax.do", sendData, function(response, status, xhr){tableAllChk();}); - addrGroupLoadAjax(); -} - - - //############################################################################################# //Tabulator //############################################################################################# @@ -307,7 +282,7 @@ function GetAddrMassDupli() {

- 엑셀(EXCEL), 텍스트(TXT) 파일로 작성된 주소록 내용을 복사하여 등록 가능합니다.

- 많은 양의 데이터를 입력하시려면 ‘주소록 복사(Ctrl+C) + 붙여넣기(Ctrl+V)’를 이용해주세요.

- 입력 내용은 (Tab) 또는 (,) 기호로 구분하여 입력하여야 합니다.

-

- 이름 200byte, [*1*]~[*4*] 200byte, 메모 250byte까지 입력 가능합니다.

+

- 이름 200byte, 메모 250byte까지 입력 가능합니다.

- 주소록 등록이 어려우신 경우에는 주소록 입력대행 메뉴를 이용하실 수 있습니다.

@@ -382,6 +357,7 @@ function GetAddrMassDupli() { +
diff --git a/src/main/webapp/WEB-INF/jsp/web/fax/addr/include/FaxAddrListforExcel.jsp b/src/main/webapp/WEB-INF/jsp/web/fax/addr/include/FaxAddrListforExcel.jsp index c7e855d3..6e16da09 100644 --- a/src/main/webapp/WEB-INF/jsp/web/fax/addr/include/FaxAddrListforExcel.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/fax/addr/include/FaxAddrListforExcel.jsp @@ -17,10 +17,6 @@ function addrGroupLoadAjax(){ -// 주소록그룹 콤보박스 유지 -function setSelectSetting(selectVal) { - $("#addrRegistSelect").val(selectVal).prop("selected", true); -} $(document).ready(function(){ // 파일 선택 버튼 클릭 이벤트 @@ -248,19 +244,12 @@ $(document).on("click", "#duplicationChkAll", function(e) {
-

- 엑셀(EXCEL) 파일로 주소록을 한 번에 최대 2만건까지 등록하여 간편하게 발송 및 관리하실 수 있습니다.

-

- 반드시 샘플파일을 다운로드하여 작성방법을 확인하신 후 정해진 양식에 맞추어 주소록을 작성하셔야 합니다.

-

  ※ 팩스 번호는 지역번호(02, 031, 033 등), 타사부가번호(030*, 050*, 060, 070, 080, 1**)로 시작하는 번호만 발송 가능합니다.

-

  ※ 주소록 관리 메뉴에서 다운로드 받으신 엑셀 파일 또한 업로드 양식에 맞추어 작성하셔야 하며,

-

      주소록에 이미 등록된 팩스 번호는 업데이트 되지 않으므로 기존 주소록에서 해당 팩스 번호를 삭제한 후 재등록해 주시기 바랍니다.

-

- 쉼표(,), 구분선(|), 역슬래시(\, ₩), 작은따옴표('), 큰따옴표(") 등 발송불가 특수문자는 저장되지 않습니다.

-

- 팩스 번호는 필수입력 항목입니다.

-

- 팩스번호 형태는 02-1234-5678 또는 0212345678 모두 가능합니다. 단, 공백은 허용되지 않습니다.

-

- 엑셀 파일에 비밀번호 설정, 제한된 보기, 수식 등이 설정되어 있는 경우 업로드가 불가합니다.

-

- 이름 20byte, 메모 250byte까지 입력 가능합니다.

-

- 첨부가능 파일 : xlsx, xls(최대용량 3MB)

-

- ‘오류 검사’를 통해 등록된 데이터에 팩스 번호 입력 오류를 확인하실 수 있습니다.

-

- 주소록 등록이 어려우신 경우에는 주소록 입력대행 메뉴를 이용하시면 됩니다.

+

- 주소록은 한 번에 최대 30만건까지 등록(EXCEL파일, 최대용량 20MB) 가능합니다.

+

- 엑셀 파일에 비밀번호 설정, 제한된 보기, 수식 등이 설정되어 있는 경우 업로드가 불가합니다.

+

- 구분선(|), 역슬래시(\, ₩), 큰따옴표(") 등 발송불가 특수문자는 저장되지 않습니다.

+

- 이름 200byte, 메모 250byte까지 입력 가능합니다.

+

- 팩스 번호는 지역번호(02, 031, 033 등), 타사부가번호(030*, 050*, 060, 070, 080, 1**)로 시작하는 번호만 발송 가능합니다.

+

- 주소록 등록이 어려우신 경우에는 주소록 입력대행 메뉴를 이용하실 수 있습니다.

diff --git a/src/main/webapp/WEB-INF/jsp/web/fax/addr/include/FaxAddrListforSelf.jsp b/src/main/webapp/WEB-INF/jsp/web/fax/addr/include/FaxAddrListforSelf.jsp index caec8724..6e89cdef 100644 --- a/src/main/webapp/WEB-INF/jsp/web/fax/addr/include/FaxAddrListforSelf.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/fax/addr/include/FaxAddrListforSelf.jsp @@ -76,8 +76,8 @@ function fn_selfUpdataCount(value){ return ''; } - if (!isValidPhoneNumber(formattedNumber)) { // 유효성 검사 - alert('휴대폰 형식에 맞지 않는 데이터입니다.\nex) 발송불가 특수문자, 자릿수 오류 등'); + if (!checkFaxNum(formattedNumber)) { // 유효성 검사 + alert('팩스번호 형식에 맞지 않는 데이터입니다.\nex) 발송불가 특수문자, 자릿수 오류 등'); $(tabluC+" #rowTotCnt").text(totalCnt-1); return ''; } @@ -100,8 +100,8 @@ function fn_selfUpdataCount(value){

- 셀간 이동은 Tab으로 가능합니다.

-

- 핸드폰 번호를 입력하지 않은 행은 저장되지 않습니다.

-

- 이름 200byte, [*1*]~[*4*] 200byte, 메모 250byte까지 입력 가능합니다.

+

- 팩스 번호를 입력하지 않은 행은 저장되지 않습니다.

+

- 이름 200byte, 메모 250byte까지 입력 가능합니다.

- 주소록 등록이 어려우신 경우에는 주소록 입력대행 메뉴를 이용하실 수 있습니다.

diff --git a/src/main/webapp/WEB-INF/jsp/web/fax/faxDataView.jsp b/src/main/webapp/WEB-INF/jsp/web/fax/faxDataView.jsp index 7e88eb93..27a5ba32 100644 --- a/src/main/webapp/WEB-INF/jsp/web/fax/faxDataView.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/fax/faxDataView.jsp @@ -665,10 +665,12 @@
-

- 최대 2만 건까지 등록할 수 있습니다.

-

- [엑셀 불러오기]시 문서의 A, B열을 불러옵니다.(지원하는 파일 형식 : xls, xlsx)

-

- 이름 : 20byte까지 입력 가능합니다.

+

- 주소록은 한 번에 최대 30만건까지 등록(EXCEL파일, 최대용량 20MB) 가능합니다.

+

- 엑셀 파일에 비밀번호 설정, 제한된 보기, 수식 등이 설정되어 있는 경우 업로드가 불가합니다.

+

- 구분선(|), 역슬래시(\, ₩), 큰따옴표(") 등 발송불가 특수문자는 저장되지 않습니다.

+

- 이름 200byte, 메모 250byte까지 입력 가능합니다.

- 팩스 번호는 지역번호(02, 031, 033 등), 타사부가번호(030*, 050*, 060, 070, 080, 1**)로 시작하는 번호만 발송 가능합니다.

+

- 주소록 등록이 어려우신 경우에는 주소록 입력대행 메뉴를 이용하실 수 있습니다.

diff --git a/src/main/webapp/js/MJUtill.js b/src/main/webapp/js/MJUtill.js index a965d9c3..3dfe9d80 100644 --- a/src/main/webapp/js/MJUtill.js +++ b/src/main/webapp/js/MJUtill.js @@ -58,7 +58,9 @@ function checkOnlyHpNum(str) { function checkFaxNum(str) { str = removeDash(str); var subNum = str.substring(0,3); - var regExp = /^(02[0-9]{1}|030|050|060|070|080|0[3-6]{1}[1-5]{1}|1[0-9]{1}[0-9]{1})$/; //지역번호(일반전화) 형식까지 체크해주는 정규식 + /*var regExp = /^(02[0-9]{1}|030|050|060|070|080|0[3-6]{1}[1-5]{1}|1[0-9]{1}[0-9]{1})$/; //지역번호(일반전화) 형식까지 체크해주는 정규식 + return regExp.test(subNum);*/ + var regExp = /^(02|0[3-6][1-4]|030|050|060|070|080|1\d{2})$/; return regExp.test(subNum); } diff --git a/src/main/webapp/js/user/fax/addr/event.js b/src/main/webapp/js/user/fax/addr/event.js index 2c55e4be..2cd211f9 100644 --- a/src/main/webapp/js/user/fax/addr/event.js +++ b/src/main/webapp/js/user/fax/addr/event.js @@ -80,7 +80,7 @@ $(document).ready(function(){ const cleanedNumber = formattedNumber.replace(/[^0-9]/g, ''); // 숫자만 남김 if (!existingNumbers.has(cleanedNumber)) { // 중복 번호 체크 - if (isValidPhoneNumber(formattedNumber)) { // 유효성 검사 + if (checkFaxNum(formattedNumber)) { // 유효성 검사 row.addrPhoneNo = formattedNumber; existingNumbers.add(cleanedNumber); // 추가된 번호를 기존 목록에 추가 newData.push(row); // 유효한 데이터만 새로운 배열에 추가 @@ -271,6 +271,7 @@ $(document).ready(function(){ // 초기 후 필드 값 셋팅하기 $('[data-group="' + group + '"] .field-selector').each(function(index) { var selectedField = $(this).val(); + console.log('selectedField : ', selectedField); // ASCII 문자 코드 사용 - 65=A, 66=B ... var field = String.fromCharCode(65 + index); if (selectedField) { diff --git a/src/main/webapp/js/user/fax/addr/init.js b/src/main/webapp/js/user/fax/addr/init.js index 60dc0ae1..ff982a8e 100644 --- a/src/main/webapp/js/user/fax/addr/init.js +++ b/src/main/webapp/js/user/fax/addr/init.js @@ -105,6 +105,11 @@ $(document).ready(function(){ {title:"미등록 결과", field:"result", hozAlign:"center", headerHozAlign: "center", width:125} ] }); + + + // 직접입력 타블레이터 + fn_selfmakeTable(); + // 타뷸레이터 width값 변경 시 위에 select width 값 변경 var titleArray = ["A","B","C","D","E","F","G"]; @@ -172,12 +177,12 @@ function fn_selfmakeTable(){ }, data: tableData, columns: [ - {formatter: "rowSelection", titleFormatter: "rowSelection", clipboard: false, hozAlign: "center", headerHozAlign: "center", headerSort: false, cellClick: function(e, cell) { + {formatter: "rowSelection", titleFormatter: "rowSelection", clipboard: false, hozAlign: "center", headerHozAlign: "center", width:50, headerSort: false, cellClick: function(e, cell) { cell.getRow().toggleSelect(); }}, - {formatter:"rownum", hozAlign:"center" ,title:"No", headerHozAlign:"center", width:40}, - {title:"이름", field:"addrNm", hozAlign:"center", headerHozAlign: "center", width:119, validator:["maxLength:100"], editor:"input"}, - {title:"휴대폰", field:"addrPhoneNo", hozAlign:"center", headerHozAlign: "center", width:119, validator:["maxLength:100"], editor:"input" + {formatter:"rownum", hozAlign:"center" ,title:"No", headerHozAlign:"center", width:100}, + {title:"이름", field:"addrNm", hozAlign:"center", headerHozAlign: "center", width:200, validator:["maxLength:100"], editor:"input"}, + {title:"팩스번호", field:"addrPhoneNo", hozAlign:"center", headerHozAlign: "center", width:269, validator:["maxLength:100"], editor:"input" , cellEdited:function(cell){ var currentValue = cell.getValue(); console.log('cell.getValue() : ', currentValue); @@ -195,11 +200,7 @@ function fn_selfmakeTable(){ } } }, - {title:"[*1*]", field:"addrInfo1", hozAlign:"center", headerHozAlign: "center", width:119, validator:["maxLength:100"], editor:"input"}, - {title:"[*2*]", field:"addrInfo2", hozAlign:"center", headerHozAlign: "center", width:119, validator:["maxLength:100"], editor:"input"}, - {title:"[*3*]", field:"addrInfo3", hozAlign:"center", headerHozAlign: "center", width:119, validator:["maxLength:100"], editor:"input"}, - {title:"[*4*]", field:"addrInfo4", hozAlign:"center", headerHozAlign: "center", width:119, validator:["maxLength:100"], editor:"input"}, - {title:"메모", field:"addrComment", hozAlign:"center", headerHozAlign: "center", width:119, validator:["maxLength:100"], editor:"input"} + {title:"메모", field:"addrComment", hozAlign:"center", headerHozAlign: "center", width:297, validator:["maxLength:100"], editor:"input"} ], navigation: true // 키보드 탐색 활성화 });