let trCarrerList=[]; let selectedIdx=0; $(document).on('click', '.userInfoTr', function (){ document.getElementById('accessTab').classList.add('active'); document.getElementById('approvalTab').classList.remove('active'); const trKey = (Number($(this).find(".trKey").val())); const verNo = (Number($(this).find(".verNo").val())); const url = '/translator/translatorEditModal'; revisionHistory(trKey,verNo,url); var html=""; html += ''; html += ''; $("#KeyValue").empty().html(html) }) $(document).on('click', '#updateBtn', function (){ if(confirm("수정하시겠습니까?")){ contentFade("in"); const formData = new FormData($("#trInfoUpdate")[0]); $.ajax({ type : 'POST', data : formData, url : "/translator/updatetranslatorInfo", processData: false, contentType: false, success : function() { alert("수정되었습니다."); contentFade("out"); location.reload(); }, error : function(xhr, status) { alert("수정에 실패하였습니다."); contentFade("out"); } }) } }) $(document).on('click', '#saveBtn', function (){ console.log(trCarrerList); if(confirm("저장하시겠습니까?")){ contentFade("in"); const formData = new FormData($("#translatorInsert")[0]); var values = JSON.stringify(trCarrerList); $('input[name=TranslatorCrr]').val(values); $.ajax({ type : 'POST', data : formData, url : "/translator/insertTranslatorInfo", contentType: 'false', success : function(result) { alert("저장되었습니다.") contentFade("out"); location.reload(); }, error : function(xhr, status) { alert("저장에 실패하였습니다.") contentFade("out"); } }) } }) function valueCheck(form){ const targetForm = $("#"+form); const userId = targetForm.find("#userId").val(); const password = targetForm.find("#modalPassword"); const passwordConfirm = targetForm.find("#passwordConfirm"); const userNm = targetForm.find("#userNm").val(); const ogCd = targetForm.find("#ogCd").val(); const ofcCd = targetForm.find("#ofcCd").val(); let returnFlag = true; if(!userId){ alert("아이디를 입력해주세요."); returnFlag = false; }else{ const idReg = /^[a-z]+[a-z0-9]{5,19}$/g; if(!idReg.test(userId)){ returnFlag = false; alert("아이디 조건이 맞지 않습니다.") } } if(!password[0].disabled && !password.val()){ alert("비밀번호를 입력해주세요."); returnFlag = false; } if(!password[0].disabled && !passwordConfirm.val()){ alert("비밀번호 확인을 입력해주세요."); returnFlag = false; } if(!userNm){ alert("이름 입력해주세요."); returnFlag = false; } if(returnFlag){ const passwordReg = /^(?=.*[a-zA-z])(?=.*[0-9])(?=.*[$`~!@$!%*#^?&\\(\\)\-_=+]).{8,16}$/; if(!password[0].disabled){ if(!passwordReg.test(password.val())){ alert("비밀번호 조건이 맞지 않습니다.") returnFlag = false; }else{ if(password.val() !== passwordConfirm.val()){ alert("비밀번호가 같지 않습니다."); returnFlag = false; } } } } if(!ogCd){ alert("관서를 선택해주세요."); returnFlag = false; } if(!ofcCd){ alert("부서를 선택해주세요."); returnFlag = false; } return returnFlag; } $(document).on('click', '.historyInfoTr', function (){ $.ajax({ url: '/translator/HistoryView', data: { translatorKey: Number($(this).find(".trKey").val()), versionNo : Number($(this).find(".verNo").val()) }, type: 'GET', dataType:"json", success: function(data){ $("#ogdp1V").val(data.ogdp1); $("#trLangV").val(data.trLang); $("#trCareerV").val(data.trCareer); $("#trNameV").val(data.trName); $("#trSexV").val(data.trSex); $("#trPhoneV").val(data.trPhone); $("#trNnyV").val(data.trNny); $("#trAgeV").val(data.trAge); $("#trVisaV").val(data.trVisa); $("#trEduV").val(data.trEdu); $("#trCftV").val(data.trCft); $("#aptDtV").val(data.aptDt); $("#dmlYnV").val(data.dmlYn); $("#remarkV").val(data.remark); // $("#configInfo").empty().append(html) // $("#translatorEditModal").modal('show'); }, error:function(){ } }); }) $(document).ready( function() { $("#aptDt").datepicker({ format: "yyyy-mm-dd", language: "ko" }); $(".tcDt").datepicker({ format: "yyyy-mm-dd", language: "ko" }); }); $(document).on('click', '#approvalTab', function (){ const trKey = (Number($('.tapTrKey').val())); const verNo = (Number($('.tapVerNo').val())); const url = '/translator/revisionHistory'; revisionHistory(trKey,verNo,url); document.getElementById('accessTab').classList.remove('active'); document.getElementById('approvalTab').classList.add('active'); }) $(document).on('click', '#accessTab', function (){ const trKey = (Number($('.tapTrKey').val())); const verNo = (Number($('.tapVerNo').val())); const url = '/translator/translatorEditModal'; revisionHistory(trKey,verNo,url); document.getElementById('approvalTab').classList.remove('active'); document.getElementById('accessTab').classList.add('active'); }) function revisionHistory(trKey,verNo,url){ $.ajax({ url: url, data: { translatorKey: trKey, versionNo : verNo }, type: 'GET', dataType:"html", success: function(html){ $("#configInfo").empty().append(html) $("#translatorEditModal").modal('show'); }, error:function(){ } }); } $(document).on('change', '#trNny', function (){ if($(this).val() == "NNY001"){ $("#trVisa").attr("disabled",true); }else{ $("#trVisa").removeAttr("disabled"); } }); $(document).on('click', '#crrAddBtn', function (){ $('#crr').append( '
'+ '
'+ ''+ '
'+ ''+ '
'+ ''+ '
'+ ''+ '
'+ ''+ '
'+ ''+ '
'+ ''+ '
'+ ''+ '
'+ ''+ '
'+ '
' ) $(".tcDt").datepicker({ format: "yyyy-mm-dd", language: "ko" }); trCarrerList.push({hisGubun:"",tcDt:"",contents:"",remark:""}); console.log(trCarrerList); }) $(document).on('click', '.rowDeleteBtn', function (){ console.log($(this).parents('#crr').children('#crrDiv')); selectedIdx = $(this).parents('#crr').children('#crrDiv').length-1; trCarrerList.splice(selectedIdx,1); console.log(selectedIdx); console.log(trCarrerList); $(this).parents('#crrDiv').remove(); }) $(document).on('change', '.crrInput', function (){ selectedIdx = $(this).parents('#crr').children('#crrDiv').length-1; const target = trCarrerList[selectedIdx]; console.log(target) switch (this.name){ case "hisGubun": target.hisGubun = this.value break; case "tcDt": target.tcDt = this.value break; case "contents": target.contents = this.value break; case "remark": target.remark = this.value break; } })