diff --git a/src/main/java/com/dbnt/faisp/main/faRpt/FaRptController.java b/src/main/java/com/dbnt/faisp/main/faRpt/FaRptController.java index a8589195..bca47b01 100644 --- a/src/main/java/com/dbnt/faisp/main/faRpt/FaRptController.java +++ b/src/main/java/com/dbnt/faisp/main/faRpt/FaRptController.java @@ -71,15 +71,19 @@ public class FaRptController { faRptBoard = faRptService.selectFaRptBoard(faRptBoard.getFaRptKey(), null); }else{ if(faRptBoard.getRefKey()!=null){ + FaRptBoard originFaRpt = faRptService.selectFaRptBoard(faRptBoard.getRefKey(), null); FaRptReadUser readUser = new FaRptReadUser(); - readUser.setUserSeq(faRptBoard.getWrtUserSeq()); - readUser.setOgCd(faRptBoard.getWrtOrgan()); - readUser.setOfcCd(faRptBoard.getWrtPart()); - readUser.setTitleCd(faRptBoard.getWrtUserGrd()); - readUser.setUserNm(faRptBoard.getWrtUserNm()); + readUser.setUserSeq(originFaRpt.getWrtUserSeq()); + readUser.setOgCd(originFaRpt.getWrtOrgan()); + readUser.setOfcCd(originFaRpt.getWrtPart()); + readUser.setTitleCd(originFaRpt.getWrtUserGrd()); + readUser.setUserNm(originFaRpt.getWrtUserNm()); + faRptBoard.setFaRptType(originFaRpt.getFaRptType()); faRptBoard.setReadUserList(new ArrayList<>()); faRptBoard.getReadUserList().add(readUser); + faRptBoard.setTitle("RE: "+originFaRpt.getTitle()); } + faRptBoard.setWrtUserSeq(loginUser.getUserSeq()); faRptBoard.setWrtOrgan(loginUser.getOgCd()); faRptBoard.setWrtPart(loginUser.getOfcCd()); diff --git a/src/main/resources/static/js/modal/userModal.js b/src/main/resources/static/js/modal/userModal.js index 295b6d61..d893e529 100644 --- a/src/main/resources/static/js/modal/userModal.js +++ b/src/main/resources/static/js/modal/userModal.js @@ -1,24 +1,26 @@ -$(document).on('click', '.userInfoTr', function (){ - const checkBox = $(this).find(".userInfoCheckBox")[0] - checkBox.checked = !checkBox.checked; - - const userSeq = $(this).find(".userSeq").val(); - if(checkBox.checked){ - selectedList.push({ - userSeq: userSeq, - ogCd: $(this).find(".ogCd").val(), - ofcCd: $(this).find(".ofcCd").val(), - titleCd: $(this).find(".titleCd").val(), - userNm: $(this).find(".userNm").val() +$(document).on('change', '.allChk', function (){ + if(this.checked){ + $.each($(".userInfoCheckBox:checked"), function (idx, chkBox){ + addUserToSelectedList($(chkBox).parents('tr')); }) }else{ - const tempList = []; - $.each(selectedList, function (idx, user){ - if(user.userSeq !== userSeq){ - tempList.push(user); + $.each($(".userInfoCheckBox"), function (idx, chkBox){ + if(!chkBox.checked){ + removeUserToSelectedList($(chkBox).parents('tr').find(".userSeq").val()); } }) - selectedList = tempList; + } +}) + +$(document).on('click', '.userInfoTr', function (event){ + const checkBox = $(this).find(".userInfoCheckBox")[0] + if(event.target.name !== 'userChk'){ + checkBox.checked = !checkBox.checked; + } + if(checkBox.checked){ + addUserToSelectedList($(this)) + }else{ + removeUserToSelectedList($(this).find(".userSeq").val()); } }) @@ -26,4 +28,33 @@ function setSelectedChkBox(){ $.each(selectedList, function (idx, item){ $(".userInfoCheckBox[value="+item.userSeq+"]").prop("checked", true); }) +} + +function addUserToSelectedList(tr){ + const userSeq = tr.find(".userSeq").val(); + let flag = true; + $.each(selectedList, function (idx, user){ + if(user.userSeq===userSeq){ + flag = false; + } + }) + if(flag){ + selectedList.push({ + userSeq: tr.find(".userSeq").val(), + ogCd: tr.find(".ogCd").val(), + ofcCd: tr.find(".ofcCd").val(), + titleCd: tr.find(".titleCd").val(), + userNm: tr.find(".userNm").val() + }) + } +} + +function removeUserToSelectedList(userSeq){ + const tempList = []; + $.each(selectedList, function (idx, user){ + if(user.userSeq !== userSeq){ + tempList.push(user); + } + }) + selectedList = tempList; } \ No newline at end of file