diff --git a/src/main/webapp/WEB-INF/jsp/web/addr/AddrList.jsp b/src/main/webapp/WEB-INF/jsp/web/addr/AddrList.jsp index c655ccb0..97b4d2e4 100644 --- a/src/main/webapp/WEB-INF/jsp/web/addr/AddrList.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/addr/AddrList.jsp @@ -326,16 +326,17 @@ function SetAddrMassSave(){ // } if (confirm(confirmMsg)) { //로딩창 show -// $('.loading_layer').addClass('active'); + fn_loadAddActive(); -// setTimeout(setSenderList_advc, 1000); - $('.loading_layer').addClass('active'); - setSenderList_advc(); + setTimeout(setSenderList_advc, 1000); + +// fn_loadAddActive(); +// setSenderList_advc(); } } // 주소록 등록 advc -function setSenderList_advc(){ +/* function setSenderList_advc(){ // tab에 해당하는 타블레이터 가져오기 var $objTabul = fn_utils_getTabulator(); @@ -388,33 +389,36 @@ function setSenderList_advc(){ }); } - - /* + */ + function setSenderList_advc(){ var $objTabul = fn_utils_getTabulator(); var dataToSend = $objTabul.getData(); var addrGrpIdInfo = $("#addrGrpIdInfo").val(); var addrGrpNmInfo = $("#addrGrpNm").val(); - var batchSize = 20000; // 배치 크기 + var batchSize = 50000; // 배치 크기 var totalBatches = Math.ceil(dataToSend.length / batchSize); // 총 배치 수 var currentBatch = 0; // 현재 배치 인덱스 + fn_loadAddActive(); - function sendBatch() { if (currentBatch < totalBatches) { + fn_loadAddActive(); var start = currentBatch * batchSize; var end = Math.min(start + batchSize, dataToSend.length); var batchData = dataToSend.slice(start, end); + console.time('updateData'); var updateData = batchData.map(row => { row.addrGrpId = addrGrpIdInfo; row.addrGrpNm = addrGrpNmInfo; return row; }); - + console.timeEnd('updateData'); + $.ajax({ type: "POST", url: "/web/mjon/addr/addrMassInsertByTempAjax_advc.do", @@ -423,6 +427,10 @@ function setSenderList_advc(){ contentType: 'application/json', async: true, success: function (data) { + + + fn_loadRemoveActive(); + console.log('Batch ' + (currentBatch + 1) + ' success: ', data); if (data.status == 'OK') { if (currentBatch === totalBatches - 1) { @@ -444,18 +452,20 @@ function setSenderList_advc(){ beforeSend: function(xmlHttpRequest) { }, complete: function(xhr, textStatus) { - console.log('end : ', end); - $('#lodingTxt').text(end); + if (currentBatch === totalBatches - 1) { + $('#lodingTxt').text('Loading'); + } else { + $('#lodingTxt').text(end+'...'); + } } }); } } // 첫 번째 배치 전송 시작 sendBatch(); - $('.loading_layer').removeClass('active'); } - */ + //주소록그룹 콤보박스 유지 function setSelectMassSetting(selectMassVal) { diff --git a/src/main/webapp/WEB-INF/jsp/web/custom/MsgCustomPopupAjax.jsp b/src/main/webapp/WEB-INF/jsp/web/custom/MsgCustomPopupAjax.jsp index b2f4c52c..3d68708c 100644 --- a/src/main/webapp/WEB-INF/jsp/web/custom/MsgCustomPopupAjax.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/custom/MsgCustomPopupAjax.jsp @@ -53,6 +53,19 @@ $(document).ready(function(){ $(".radio12_input").css("display","none"); } }) + + + // 요청사항 글자수 제한 + $("textarea[name='customRequest']").on('input', function() { + var maxLength = 2000; + var currentLength = $(this).val().length; + + if (currentLength > maxLength) { + $(this).val($(this).val().substring(0, maxLength)); + } + }); + + }); //샘플 이미지 리스트 diff --git a/src/main/webapp/WEB-INF/jsp/web/msgdata/MsgDataSMLView.jsp b/src/main/webapp/WEB-INF/jsp/web/msgdata/MsgDataSMLView.jsp index beba3800..ea6d5d97 100644 --- a/src/main/webapp/WEB-INF/jsp/web/msgdata/MsgDataSMLView.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/msgdata/MsgDataSMLView.jsp @@ -10,6 +10,90 @@ <% pageContext.setAttribute("newLineChar", "\r\n"); %>