diff --git a/src/main/java/com/dbnt/faisp/fipTarget/FipTargetController.java b/src/main/java/com/dbnt/faisp/fipTarget/FipTargetController.java index 709ae95c..858c8331 100644 --- a/src/main/java/com/dbnt/faisp/fipTarget/FipTargetController.java +++ b/src/main/java/com/dbnt/faisp/fipTarget/FipTargetController.java @@ -5,6 +5,8 @@ import com.dbnt.faisp.authMgt.service.AuthMgtService; import com.dbnt.faisp.fipTarget.model.PartInfo; import com.dbnt.faisp.fipTarget.service.FipTargetService; import com.dbnt.faisp.organMgt.service.OrganConfigService; +import com.dbnt.faisp.publicBoard.model.PublicBoard; +import com.dbnt.faisp.translator.model.Translator; import com.dbnt.faisp.userInfo.model.UserInfo; import com.dbnt.faisp.util.ParamMap; import com.dbnt.faisp.util.Utils; @@ -31,29 +33,35 @@ public class FipTargetController { private final OrganConfigService organConfigService; private final AuthMgtService authMgtService; - private final FipTargetService fipTargetSevice; + private final FipTargetService fipTargetService; + // 외사분실운영현황 시작 @GetMapping("/partInfoList") public ModelAndView partInfoList(@AuthenticationPrincipal UserInfo loginUser,PartInfo partInfo, HttpServletResponse response) { ModelAndView mav = new ModelAndView("fipTarget/partInfoList"); partInfo.setDownOrganCdList(loginUser.getDownOrganCdList()); //엑셀다운 if(partInfo.getExcel() != null && partInfo.getExcel().equals("Y")){ - ParamMap header = fipTargetSevice.selectWorkTypeTotal(partInfo); + ParamMap header = fipTargetService.selectWorkTypeTotal(partInfo); String[] headers = { "mgt_organ", "land_police", "mp_work_type", "mp_people_cnt", "mp_description", "pl_work_type", "pl_people_cnt", "pl_description", "terminal_nm", "pi_manager_name", "rent_price", "utility_price", "wrt_dt"}; String[] headerNames = { "해경서", "육경서", "해경", "", "", "육경", "", "", "", "", "", "",""}; - String[] headerNames2 = { "", "", "상주 "+header.getString("mp_sangju")+"개소 "+header.getString("mp_sangju_total")+"명" - ,"상주 "+header.getString("mp_bsangju")+"개소 "+header.getString("mp_bsangju_total")+"명" - ,"상주 "+header.getString("mp_closure")+"개소 "+header.getString("mp_closure_total")+"명" - ,"상주 "+header.getString("pl_sangju")+"개소 "+header.getString("pl_sangju_total")+"명" - ,"상주 "+header.getString("pl_bsangju")+"개소 "+header.getString("pl_bsangju_total")+"명" - ,"상주 "+header.getString("pl_closure")+"개소 "+header.getString("pl_closure_total")+"명" - , "", "", "", "", "" }; + String[] headerNames2 = null; + if(header != null) { + headerNames2 = new String[] { "", "", "상주 "+header.getString("mp_sangju")+"개소 "+header.getString("mp_sangju_total")+"명" + ,"비상주 "+header.getString("mp_bsangju")+"개소 "+header.getString("mp_bsangju_total")+"명" + ,"폐쇄 "+header.getString("mp_closure")+"개소 "+header.getString("mp_closure_total")+"명" + ,"상주 "+header.getString("pl_sangju")+"개소 "+header.getString("pl_sangju_total")+"명" + ,"비상주 "+header.getString("pl_bsangju")+"개소 "+header.getString("pl_bsangju_total")+"명" + ,"폐쇄 "+header.getString("pl_closure")+"개소 "+header.getString("pl_closure_total")+"명" + , "", "", "", "", "" }; + }else { + headerNames2 = new String[] { "", "", "상주 0개소 0명","비상주 0개소 0명","폐쇄 0개소 0명","상주 0개소 0명","비상주 0개소 0명","폐쇄 0개소 0명", "", "", "", "", "" }; + } String[] headerNames3 = { "", "", "근무방법", "명", "비고", "근무방법", "명", "비고", "터미널명", "담당자", "임차료", "공공요금", "최종수정일" }; - String[] columnType = { "String", "String", "String", "int", "String", "String", "int", "String", "String", "String", "int","int", "String"}; + String[] columnType = { "String", "String", "String", "int", "String", "String", "int", "String", "String", "String", "String","String", "String"}; String sheetName = "외사 분실 현황"; String excelFileName = "외사 분실 현황"; - List partInfoList= fipTargetSevice.selectPartInfoList(partInfo); + List partInfoList= fipTargetService.selectPartInfoList(partInfo); try { Utils.partInfolistToExcel(partInfoList, response, headers, headerNames,headerNames2,headerNames3, columnType, sheetName, excelFileName); @@ -67,9 +75,9 @@ public class FipTargetController { mav.addObject("accessAuth", accessAuth); partInfo.setDownOrganCdList(loginUser.getDownOrganCdList()); partInfo.setQueryInfo(); - mav.addObject("total", fipTargetSevice.selectWorkTypeTotal(partInfo)); - mav.addObject("partInfoList", fipTargetSevice.selectPartInfoList(partInfo)); - partInfo.setContentCnt(fipTargetSevice.selectPartInfoListCnt(partInfo)); + mav.addObject("total", fipTargetService.selectWorkTypeTotal(partInfo)); + mav.addObject("partInfoList", fipTargetService.selectPartInfoList(partInfo)); + partInfo.setContentCnt(fipTargetService.selectPartInfoListCnt(partInfo)); partInfo.setPaginationInfo(); mav.addObject("mgtOrganList", loginUser.getDownOrganCdList()); mav.addObject("searchParams", partInfo); @@ -89,7 +97,7 @@ public class FipTargetController { ModelAndView mav = new ModelAndView("fipTarget/partInfoSelecBox"); ParamMap param = new ParamMap(); param.put("downOrganCdList", organConfigService.selectDownOrganListWhereUserOgCd(ogCd)); - mav.addObject("managerList", fipTargetSevice.selectPartInfoManagerList(param)); + mav.addObject("managerList", fipTargetService.selectPartInfoManagerList(param)); return mav; } @@ -101,22 +109,58 @@ public class FipTargetController { partInfo.setWrtUserSeq(loginUser.getUserSeq()); partInfo.setWrtOrgan(loginUser.getOgCd()); partInfo.setWrtDt(LocalDateTime.now()); - fipTargetSevice.savePartInfo(partInfo); + fipTargetService.savePartInfo(partInfo); } @GetMapping("/updatePartInfoPage") public ModelAndView updatePartInfoPage(@AuthenticationPrincipal UserInfo loginUser,PartInfo partInfo) { ModelAndView mav = new ModelAndView("fipTarget/partInfoModifyModal"); mav.addObject("mgtOrganList", loginUser.getDownOrganCdList()); - PartInfo partInfoView = fipTargetSevice.selectPartInfo(partInfo); + PartInfo partInfoView = fipTargetService.selectPartInfo(partInfo); ParamMap param = new ParamMap(); param.put("downOrganCdList", organConfigService.selectDownOrganListWhereUserOgCd(partInfoView.getMgtOrgan())); - mav.addObject("managerList", fipTargetSevice.selectPartInfoManagerList(param)); - partInfoView.setFileList(fipTargetSevice.selectPartInfoFile(partInfo)); + mav.addObject("managerList", fipTargetService.selectPartInfoManagerList(param)); + partInfoView.setFileList(fipTargetService.selectPartInfoFile(partInfo)); mav.addObject("partInfo", partInfoView); return mav; } + @PostMapping("/updatePartInfo") + public int updatePartInfo (@AuthenticationPrincipal UserInfo loginUser,PartInfo partInfo, + MultipartHttpServletRequest request, + @RequestParam(value = "fileSeq", required = false) List < Integer > deleteFileSeq){ + partInfo.setMultipartFileList(request.getMultiFileMap().get("uploadFiles")); + partInfo.setWrtUserSeq(loginUser.getUserSeq()); + partInfo.setWrtNm(loginUser.getUserId()); + partInfo.setWrtPart(loginUser.getOfcCd()); + partInfo.setWrtDt(LocalDateTime.now()); + fipTargetService.updatePartInfo(partInfo,deleteFileSeq); + return partInfo.getPiSeq(); + } + + @GetMapping("/PartInfoHistoryPage") + public ModelAndView PartInfoHistoryPage(PartInfo partInfo) { + ModelAndView mav = new ModelAndView("fipTarget/partInfoHistory"); + mav.addObject("partInfoList", fipTargetService.selectPartInfoSeq(partInfo)); + return mav; + } + + @GetMapping("/partInfoHistoryView") + @ResponseBody + public PartInfo partInfoHistoryView(PartInfo partInfo){ + PartInfo partInfoHistory = fipTargetService.selectPartInfoHistoryView(partInfo); + partInfoHistory.setFileList(fipTargetService.selectPartInfoFileHistoryView(partInfo)); + return partInfoHistory; + } + + @PostMapping("/deletePartInfo") + @ResponseBody + public void deletePartInfo(@RequestBody PartInfo partInfo) { + fipTargetService.deletePartInfo(partInfo); + } + //외사분실 운영현황 끝 + + diff --git a/src/main/java/com/dbnt/faisp/fipTarget/mapper/FipTargetMapper.java b/src/main/java/com/dbnt/faisp/fipTarget/mapper/FipTargetMapper.java index 516de93a..be4b58ca 100644 --- a/src/main/java/com/dbnt/faisp/fipTarget/mapper/FipTargetMapper.java +++ b/src/main/java/com/dbnt/faisp/fipTarget/mapper/FipTargetMapper.java @@ -1,6 +1,7 @@ package com.dbnt.faisp.fipTarget.mapper; import com.dbnt.faisp.fipTarget.model.PartInfo; +import com.dbnt.faisp.fipTarget.model.PartInfoFile; import com.dbnt.faisp.util.ParamMap; import org.apache.ibatis.annotations.Mapper; @@ -20,6 +21,14 @@ public interface FipTargetMapper { PartInfo selectPartInfo(PartInfo partInfo); + List selectPartInfoFile(PartInfo partInfo); + + List selectPartInfoSeq(PartInfo partInfo); + + PartInfo selectPartInfoHistoryView(PartInfo partInfo); + + List selectPartInfoFileHistoryView(PartInfo partInfo); + diff --git a/src/main/java/com/dbnt/faisp/fipTarget/repository/PartInfoFileRepository.java b/src/main/java/com/dbnt/faisp/fipTarget/repository/PartInfoFileRepository.java index 4bae229c..93971f7f 100644 --- a/src/main/java/com/dbnt/faisp/fipTarget/repository/PartInfoFileRepository.java +++ b/src/main/java/com/dbnt/faisp/fipTarget/repository/PartInfoFileRepository.java @@ -15,6 +15,12 @@ public interface PartInfoFileRepository extends JpaRepository findByPiSeqAndVersionNoOrderByFileSeqAsc(Integer piSeq, Integer versionNo); + PartInfoFile findTopByPiSeqOrderByFileSeqDesc(Integer piSeq); + + PartInfoFile findTopByPiSeqAndVersionNoOrderByFileSeqDesc(Integer piSeq, Integer versionNo); + + void deleteByPiSeq(Integer piSeq); + diff --git a/src/main/java/com/dbnt/faisp/fipTarget/repository/PartInfoRepository.java b/src/main/java/com/dbnt/faisp/fipTarget/repository/PartInfoRepository.java index 2292f6e6..a37ef8aa 100644 --- a/src/main/java/com/dbnt/faisp/fipTarget/repository/PartInfoRepository.java +++ b/src/main/java/com/dbnt/faisp/fipTarget/repository/PartInfoRepository.java @@ -12,6 +12,8 @@ public interface PartInfoRepository extends JpaRepository multipartFileList) { - PartInfoFile lastFileInfo = partInfoFileRepository.findTopByPiSeqOrderByFileSeq(piSeq); + PartInfoFile lastFileInfo = partInfoFileRepository.findTopByPiSeqAndVersionNoOrderByFileSeqDesc(piSeq,versionNo); int fileSeq = lastFileInfo==null?1:(lastFileInfo.getFileSeq()+1); if(multipartFileList == null || multipartFileList.isEmpty()) { - PartInfoFile fileInfo = new PartInfoFile(); - fileInfo.setFileSeq(fileSeq); - fileInfo.setPiSeq(piSeq); - fileInfo.setVersionNo(versionNo); - - partInfoFileRepository.save(fileInfo); + if(lastFileInfo == null || lastFileInfo.getOrigNm() == null ) { + PartInfoFile fileInfo = new PartInfoFile(); + fileInfo.setFileSeq(fileSeq); + fileInfo.setPiSeq(piSeq); + fileInfo.setVersionNo(versionNo); + partInfoFileRepository.save(fileInfo); + } + } else { for(MultipartFile file : multipartFileList){ String saveName = UUID.randomUUID().toString(); @@ -102,7 +109,94 @@ public class FipTargetService extends BaseService { } public List selectPartInfoFile(PartInfo partInfo) { - return partInfoFileRepository.findByPiSeqAndVersionNoOrderByFileSeqAsc(partInfo.getPiSeq(),partInfo.getVersionNo()); + return fipTargetMapper.selectPartInfoFile(partInfo); + } + + @Transactional + public void updatePartInfo(PartInfo partInfo, List deleteFileSeq) { + PartInfo dbPart = partInfoRepository.findById(new PartInfoId(partInfo.getPiSeq(), partInfo.getVersionNo())).orElse(null); + PartInfo partTmp = new PartInfo(); + partTmp.setPiSeq(dbPart.getPiSeq()); + partTmp.setVersionNo(dbPart.getVersionNo()+1); + partTmp.setMgtOrgan(partInfo.getMgtOrgan()); + partTmp.setLandPolice(partInfo.getLandPolice()); + partTmp.setPiUserSeq(partInfo.getPiUserSeq()); + partTmp.setRentType(partInfo.getRentType()); + partTmp.setRentPrice(partInfo.getRentPrice()); + partTmp.setUtilityType(partInfo.getUtilityType()); + partTmp.setUtilityPrice(partInfo.getUtilityPrice()); + partTmp.setTerminalNm(partInfo.getTerminalNm()); + partTmp.setMpWorkType(partInfo.getMpWorkType()); + partTmp.setMpPeopleCnt(partInfo.getMpPeopleCnt()); + partTmp.setMpDescription(partInfo.getMpDescription()); + partTmp.setPlWorkType(partInfo.getPlWorkType()); + partTmp.setPlPeopleCnt(partInfo.getPlPeopleCnt()); + partTmp.setPlDescription(partInfo.getPlDescription()); + partTmp.setWrtUserSeq(partInfo.getWrtUserSeq()); + partTmp.setWrtNm(partInfo.getWrtNm()); + partTmp.setWrtPart(partInfo.getWrtPart()); + //첫번째 작성자 관서그대로입력 + partTmp.setWrtOrgan(dbPart.getWrtOrgan()); + partTmp.setWrtDt(partInfo.getWrtDt()); + partInfoRepository.save(partTmp); + //업데이트하는 버전 파일조회 + List fileList = partInfoFileRepository.findByPiSeqAndVersionNoOrderByFileSeqAsc(partInfo.getPiSeq(),partInfo.getVersionNo()); + if(fileList.get(0).getOrigNm() != null) { + for(PartInfoFile fileInfo : fileList){ + PartInfoFile tmpFile = new PartInfoFile(); + tmpFile.setFileSeq(fileInfo.getFileSeq()); + tmpFile.setPiSeq(fileInfo.getPiSeq()); + tmpFile.setVersionNo(partTmp.getVersionNo()); + tmpFile.setOrigNm(fileInfo.getOrigNm()); + tmpFile.setConvNm(fileInfo.getConvNm()); + tmpFile.setFileExtn(fileInfo.getFileExtn()); + tmpFile.setFileSize(fileInfo.getFileSize()); + tmpFile.setFilePath(fileInfo.getFilePath()); + partInfoFileRepository.save(tmpFile); + } + } + //수정시 삭제한 파일삭제 + if(deleteFileSeq!=null && deleteFileSeq.size()>0){ + deletePartInfoFile(partTmp.getPiSeq(),partTmp.getVersionNo(), deleteFileSeq); + } + //파일업로드 + saveUploadFiles(partTmp.getPiSeq(),partTmp.getVersionNo(), partInfo.getMultipartFileList()); + } + + private void deletePartInfoFile(Integer piSeq,Integer versionNo, List deleteFileSeq) { + List partInfoFileList = partInfoFileRepository.findByPiSeqAndVersionNoOrderByFileSeqAsc(piSeq,versionNo); + for(PartInfoFile file: partInfoFileList){ + if(deleteFileSeq.contains(file.getFileSeq())){ + deleteStoredFile(new File(file.getFilePath(), file.getConvNm())); + partInfoFileRepository.deleteById(new PartInfoFileId(file.getFileSeq(),piSeq,versionNo)); + } + } + } + + public List selectPartInfoSeq(PartInfo partInfo) { + return fipTargetMapper.selectPartInfoSeq(partInfo); + } + + public PartInfo selectPartInfoHistoryView(PartInfo partInfo) { + return fipTargetMapper.selectPartInfoHistoryView(partInfo); + } + + public List selectPartInfoFileHistoryView(PartInfo partInfo) { + return fipTargetMapper.selectPartInfoFileHistoryView(partInfo); + } + + @Transactional + public void deletePartInfo(PartInfo partInfo) { + //파일삭제 + List partInfoFileList= selectPartInfoFile(partInfo); + for(PartInfoFile file: partInfoFileList){ + if(file.getOrigNm() != null){ + deleteStoredFile(new File(file.getFilePath(), file.getConvNm())); + } + } + partInfoFileRepository.deleteByPiSeq(partInfo.getPiSeq()); + partInfoRepository.deleteByPiSeq(partInfo.getPiSeq()); + } diff --git a/src/main/java/com/dbnt/faisp/util/Utils.java b/src/main/java/com/dbnt/faisp/util/Utils.java index 0166118b..526f4aec 100644 --- a/src/main/java/com/dbnt/faisp/util/Utils.java +++ b/src/main/java/com/dbnt/faisp/util/Utils.java @@ -430,8 +430,16 @@ public class Utils { rowData.set("pl_description", partInfoList.get(i).getPlDescription()); rowData.set("terminal_nm", partInfoList.get(i).getTerminalNm()); rowData.set("pi_manager_name", partInfoList.get(i).getPiManagerName()); - rowData.set("rent_price", partInfoList.get(i).getRentPrice()); - rowData.set("utility_price", partInfoList.get(i).getUtilityPrice()); + if(partInfoList.get(i).getRentType().equals("Y")) { + rowData.set("rent_price", partInfoList.get(i).getRentPrice().toString()+"만"); + }else { + rowData.set("rent_price", "무상"); + } + if(partInfoList.get(i).getUtilityType().equals("Y")) { + rowData.set("utility_price", partInfoList.get(i).getUtilityPrice().toString()+"만"); + }else { + rowData.set("utility_price", "무상"); + } rowData.set("wrt_dt", partInfoList.get(i).getWrtDt().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); for(int j=0; j order by wrt_dt desc - + limit #{rowCnt} offset #{firstIndex} @@ -238,5 +238,78 @@ and pi.version_no = b.lastVer and pi.pi_seq = #{piSeq} + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/static/js/fipTarget/partInfo.js b/src/main/resources/static/js/fipTarget/partInfo.js index 58496871..5c6eceb9 100644 --- a/src/main/resources/static/js/fipTarget/partInfo.js +++ b/src/main/resources/static/js/fipTarget/partInfo.js @@ -59,7 +59,54 @@ $(document).on('change', '#mgtOrgan', function (){ } }); +$(document).on('change', '#mMgtOrgan', function (){ + const ogCd = $(this).val(); + if(ogCd != ''){ + $.ajax({ + url: '/target/partInfoSelecBox', + data: { + ogCd, + }, + type: 'GET', + dataType:"html", + success: function(html){ + $("#mPiUserSeq").empty().append(html); + $("#mPiUserSeq").prop('disabled',false); + }, + error:function(){ + } + }); + }else{ + $("#mPiUserSeq").prop('disabled',true); + $("#mPiUserSeq").val(''); + } +}); + $(document).on('click', '#savePartInfo', function (){ + if($('#mgtOrgan').val() == ''){ + alert('해경서를 선택해주세요'); + $('#mgtOrgan').focus(); + return false; + } + if($('#piUserSeq').val() == ''){ + alert('담당자를 선택해주세요'); + $('#piUserSeq').focus(); + return false; + } + if($('#mpWorkType').val() != ''){ + if($('#mpPeopleCnt').val() == ''){ + alert('해경 인원수를 입력해주세요'); + $('#mpPeopleCnt').focus(); + return false; + } + } + if($('#plWorkType').val() != ''){ + if($('#plPeopleCnt').val() == ''){ + alert('육경 인원수를 입력해주세요'); + $('#plPeopleCnt').focus(); + return false; + } + } if($("#rentType").val() == 'Y'){ if($("#rentPrice").val() == ''){ alert("임차료를 입력해주세요."); @@ -102,17 +149,14 @@ $(document).on('click', '#savePartInfo', function (){ $(document).on('click', '.partInfoTr', function (){ const piSeq = (Number($(this).find(".piSeq").val())); - const versionNo = (Number($(this).find(".verNo").val())); - const url = '/target/updatePartInfoPage'; - showModal(piSeq,versionNo,url); + showModal(piSeq); }) -function showModal(piSeq,versionNo,url){ +function showModal(piSeq){ $.ajax({ - url: url, + url: '/target/updatePartInfoPage', data: { - piSeq: piSeq, - versionNo: versionNo + piSeq: piSeq }, type: 'GET', dataType:"html", @@ -168,5 +212,162 @@ $(document).on('change', '#mUtilityType', function (){ } }); +$(document).on('click', '#updatePartInfo', function (){ + if($('#mMgtOrgan').val() == ''){ + alert('해경서를 선택해주세요'); + $('#mMgtOrgan').focus(); + return false; + } + if($('#mPiUserSeq').val() == ''){ + alert('담당자를 선택해주세요'); + $('#mPiUserSeq').focus(); + return false; + } + if($('#mMpWorkType').val() != ''){ + if($('#mMpPeopleCnt').val() == ''){ + alert('해경 인원수를 입력해주세요'); + $('#mMpPeopleCnt').focus(); + return false; + } + } + if($('#mPlWorkType').val() != ''){ + if($('#mPlPeopleCnt').val() == ''){ + alert('육경 인원수를 입력해주세요'); + $('#mPlPeopleCnt').focus(); + return false; + } + } + if($("#mRentType").val() == 'Y'){ + if($("#mRentPrice").val() == ''){ + alert("임차료를 입력해주세요."); + $('#mRentPrice').focus(); + return false; + } + } + if($("#mUtilityType").val() == 'Y'){ + if($("#mUtilityPrice").val() == ''){ + alert("공공요금을 입력해주세요."); + $('#mUtilityPrice').focus(); + return false; + } + } + if(confirm("수정하시겠습니까?")){ + contentFade("in"); + const formData = new FormData($("#partInfoUpdate")[0]); + for(const file of files) { + if(!file.isDelete) + formData.append('uploadFiles', file, file.name); + } + $(".text-decoration-line-through").each(function (idx, el){ + formData.append('fileSeq', $(el).attr("data-fileseq")); + }) + $.ajax({ + type : 'POST', + data : formData, + url : "/target/updatePartInfo", + processData: false, + contentType: false, + success : function(result) { + alert("수정되었습니다."); + contentFade("out"); + showModal(result); + }, + error : function(xhr, status) { + alert("수정에 실패하였습니다.") + contentFade("out"); + } + }) + } +}) + +function showHistory(piSeq){ + $.ajax({ + url: '/target/PartInfoHistoryPage', + data: { + piSeq: piSeq + }, + type: 'GET', + dataType:"html", + success: function(html){ + $("#partInfoEditModalEditModalContent").empty().append(html); + $("#partInfoEditModal").modal('show'); + }, + error:function(){ + + } + }); +} + +$(document).on('click', '.historyInfoTr', function (){ + $(this).find('.hisChk').prop('checked',true) + if($(this).find('.hisChk').prop('checked')){ + $('.hisChk').prop('checked',false); + $(this).find('.hisChk').prop('checked',true) + } + $.ajax({ + url: '/target/partInfoHistoryView', + data: { + piSeq: Number($(this).find(".piSeq").val()), + versionNo : Number($(this).find(".verNo").val()) + }, + type: 'GET', + dataType:"json", + success: function(data){ + $('#hMgtOrgan').val(data.mgtOrgan); + $('#hLandPolice').val(data.landPolice); + $('#hPiUserSeq').val(data.piManagerName); + $('#hMpWorkType').val(data.mpWorkType); + $('#hMpPeopleCnt').val(data.mpPeopleCnt); + $('#hMpDescription').val(data.mpDescription); + $('#hPlWorkType').val(data.plWorkType); + $('#hPlPeopleCnt').val(data.plPeopleCnt); + $('#hPlDescription').val(data.plDescription); + $('#hTerminalNm').val(data.terminalNm); + $('#hRentType').val(data.rentType); + $('#hRentPrice').val(data.rentPrice); + $('#hUtilityType').val(data.utilityType); + $('#hUtilityPrice').val(data.utilityPrice); + if(data.fileList[0].origNm != null){ + $('#historyFile').empty(); + for(var i=0;i' + ); + } + }else{ + $('#historyFile').empty().append( + '' + ); + } + }, + error:function(){ + + } + }); +}) + +$(document).on('click', '#deletePartInfo', function (){ + const piSeq = $('input[name=piSeq]').val(); + if(confirm("삭제하시겠습니까?")){ + contentFade("in"); + $.ajax({ + type : 'POST', + url : "/target/deletePartInfo", + data : JSON.stringify({piSeq:piSeq}), + contentType: 'application/json', + beforeSend: function (xhr){ + xhr.setRequestHeader($("[name='_csrf_header']").val(), $("[name='_csrf']").val()); + }, + success : function(data) { + alert("삭제 처리되었습니다."); + location.reload(); + }, + error : function(xhr, status) { + alert("삭제 처리에 실패하였습니다"); + } + }) + + } +}) diff --git a/src/main/resources/templates/fipTarget/partInfoEditModal.html b/src/main/resources/templates/fipTarget/partInfoEditModal.html index 470f0ee4..2071773e 100644 --- a/src/main/resources/templates/fipTarget/partInfoEditModal.html +++ b/src/main/resources/templates/fipTarget/partInfoEditModal.html @@ -39,7 +39,7 @@
- @@ -59,7 +59,7 @@
- @@ -92,7 +92,7 @@
- +
@@ -105,7 +105,7 @@
- +
diff --git a/src/main/resources/templates/fipTarget/partInfoHistory.html b/src/main/resources/templates/fipTarget/partInfoHistory.html new file mode 100644 index 00000000..a193cd7c --- /dev/null +++ b/src/main/resources/templates/fipTarget/partInfoHistory.html @@ -0,0 +1,147 @@ + + + + + + + \ No newline at end of file diff --git a/src/main/resources/templates/fipTarget/partInfoList.html b/src/main/resources/templates/fipTarget/partInfoList.html index 105e40ad..c104250a 100644 --- a/src/main/resources/templates/fipTarget/partInfoList.html +++ b/src/main/resources/templates/fipTarget/partInfoList.html @@ -99,12 +99,22 @@ 최종수정일 + + + + 상주 0개소 0명 + 비상주 0개소 0명 + 폐쇄 0개소 0명 + 상주 0개소 0명 + 비상주 0개소 0명 + 폐쇄 0개소 0명 + 근무방법 @@ -130,12 +140,10 @@ - - - - - - + + 무상 + + 무상 diff --git a/src/main/resources/templates/fipTarget/partInfoModifyModal.html b/src/main/resources/templates/fipTarget/partInfoModifyModal.html index 6345eb75..7440b689 100644 --- a/src/main/resources/templates/fipTarget/partInfoModifyModal.html +++ b/src/main/resources/templates/fipTarget/partInfoModifyModal.html @@ -2,6 +2,7 @@