diff --git a/.gitignore b/.gitignore index e6c7a219..deacff1d 100644 --- a/.gitignore +++ b/.gitignore @@ -74,4 +74,4 @@ buildNumber.properties .mvn/timing.properties # jrebel -rebel.xml +src/main/resources/rebel.xml diff --git a/src/main/java/kcc/com/cmm/util/IpUtil.java b/src/main/java/kcc/com/cmm/util/IpUtil.java index 695eab24..fbfae2d8 100644 --- a/src/main/java/kcc/com/cmm/util/IpUtil.java +++ b/src/main/java/kcc/com/cmm/util/IpUtil.java @@ -97,7 +97,7 @@ public class IpUtil { String ozServerNm = ""; - if(serverNm.contains("localhost") || serverNm.contains("219.240.88.15")) {//로컬 및 개발서버 요청시 서버 경로 처리 + if(serverNm.contains("localhost") || serverNm.contains("219.240.88.15") || serverNm.contains("iten.co.kr")) {//로컬 및 개발서버 요청시 서버 경로 처리 ozServerNm = "http://219.240.88.15:8091"; diff --git a/src/main/java/kcc/kccadr/accdnt/adr/service/AdjstDeputyReqVO.java b/src/main/java/kcc/kccadr/accdnt/adr/service/AdjstDeputyReqVO.java index b33e99a6..0e795c2e 100644 --- a/src/main/java/kcc/kccadr/accdnt/adr/service/AdjstDeputyReqVO.java +++ b/src/main/java/kcc/kccadr/accdnt/adr/service/AdjstDeputyReqVO.java @@ -78,6 +78,7 @@ public class AdjstDeputyReqVO extends ComDefaultVO implements Serializable { private String resPonDentNms; private String ccTy; private String rejectCn; + private String expCode; public int getRowNumber() { return rowNumber; @@ -390,5 +391,13 @@ public class AdjstDeputyReqVO extends ComDefaultVO implements Serializable { public void setRejectCn(String rejectCn) { this.rejectCn = rejectCn; } + + public String getExpCode() { + return expCode; + } + + public void setExpCode(String expCode) { + this.expCode = expCode; + } } diff --git a/src/main/java/kcc/kccadr/accdnt/ars/service/AdjstReqStatusVO.java b/src/main/java/kcc/kccadr/accdnt/ars/service/AdjstReqStatusVO.java index c68ff234..80f46b68 100644 --- a/src/main/java/kcc/kccadr/accdnt/ars/service/AdjstReqStatusVO.java +++ b/src/main/java/kcc/kccadr/accdnt/ars/service/AdjstReqStatusVO.java @@ -44,6 +44,10 @@ public class AdjstReqStatusVO extends AdjstIncidentVO { private String docTy; private String rpplUsrTyNm; + + private String pageExpIndex; + + private String expCode; public String getAdrSn() { return adrSn; @@ -242,8 +246,22 @@ public class AdjstReqStatusVO extends AdjstIncidentVO { public void setRpplUsrTyNm(String rpplUsrTyNm) { this.rpplUsrTyNm = rpplUsrTyNm; } - - - + + public String getPageExpIndex() { + return pageExpIndex; + } + + public void setPageExpIndex(String pageExpIndex) { + this.pageExpIndex = pageExpIndex; + } + + public String getExpCode() { + return expCode; + } + + public void setExpCode(String expCode) { + this.expCode = expCode; + } + } diff --git a/src/main/java/kcc/kccadr/adjPgrMgr/apm/web/ApmController.java b/src/main/java/kcc/kccadr/adjPgrMgr/apm/web/ApmController.java index 0e937de3..ac88b541 100644 --- a/src/main/java/kcc/kccadr/adjPgrMgr/apm/web/ApmController.java +++ b/src/main/java/kcc/kccadr/adjPgrMgr/apm/web/ApmController.java @@ -535,6 +535,7 @@ public class ApmController { int resultCnt = entService.updateEntApprYnInfo(entVO , "조정진행관리>>조정진행목록>조정진행상세>사건문서>취하신청사유>P>취하신청상세-처리" //String p_code_desc - CC199 , "A330" //String p_stat_cd - 취하처리 + , "" ); if(resultCnt > 0) { diff --git a/src/main/java/kcc/kccadr/adjPgrMgr/dtb/service/DtbService.java b/src/main/java/kcc/kccadr/adjPgrMgr/dtb/service/DtbService.java index a49cdc9a..0792aa3c 100644 --- a/src/main/java/kcc/kccadr/adjPgrMgr/dtb/service/DtbService.java +++ b/src/main/java/kcc/kccadr/adjPgrMgr/dtb/service/DtbService.java @@ -12,12 +12,14 @@ public interface DtbService { int updateDistribution(DtbVO dtbVO , String p_code_desc - , String p_stat_cd + , String p_stat_cd + , String p_adrHstryMgrSeq ) throws Exception; int insertDistribution(DtbVO dtbVO , String p_code_desc - , String p_stat_cd + , String p_stat_cd + , String p_adrHstryMgrSeq ) throws Exception; int deleteDistribution(DtbVO dtbVO) throws Exception; diff --git a/src/main/java/kcc/kccadr/adjPgrMgr/dtb/service/impl/DtbServiceImpl.java b/src/main/java/kcc/kccadr/adjPgrMgr/dtb/service/impl/DtbServiceImpl.java index 25e8de1d..41424321 100644 --- a/src/main/java/kcc/kccadr/adjPgrMgr/dtb/service/impl/DtbServiceImpl.java +++ b/src/main/java/kcc/kccadr/adjPgrMgr/dtb/service/impl/DtbServiceImpl.java @@ -61,11 +61,13 @@ public class DtbServiceImpl implements DtbService { @Override public int updateDistribution(DtbVO dtbVO , String p_code_desc - , String p_stat_cd + , String p_stat_cd + , String p_adrHstryMgrSeq ) throws Exception { return insertDistribution(dtbVO , p_code_desc - , p_stat_cd + , p_stat_cd + , p_adrHstryMgrSeq ); } @@ -76,7 +78,8 @@ public class DtbServiceImpl implements DtbService { @Override public int insertDistribution(DtbVO dtbVO , String p_code_desc - , String p_stat_cd + , String p_stat_cd + , String p_adrHstryMgrSeq ) throws Exception { @@ -94,6 +97,31 @@ public class DtbServiceImpl implements DtbService { dtbVO.setAssUsrTy("01"); // 01 조정부장 dtbVO.setAddChgYn("N"); dtbDAO.insertDistribution_setp0(dtbVO); + + + //이력관리를 위한 adr_hstry_mgr_detail - 2022-09-07 serviceImpl #1 + //이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09 + //adr_hstry_mgr에 값 넣기 - 시작 + adrHstryMgrDAO.insert4Func(dtbVO.getAdrSeq() + //, "상태코드수정" + , p_code_desc + //, adjReqMgrVO.getStatCd() + , p_stat_cd + + , dtbVO.getFrstRegisterId() + , dtbVO.getLastUpdusrId() + + , p_adrHstryMgrSeq //, String p_adrHstryMgrSeq + , "I" //, String p_useCd I/U/UI/II/RE + , "ADR_ASS_MGR" //, String p_tableName + , " WHERE 1=1 AND adr_seq='"+dtbVO.getAdrSeq() + + " AND adr_sn='"+dtbVO.getAdrSn() + + " AND ass_seq='"+dtbVO.getAssSeq() + +"' " //, String p_updateQuery + + ); + //adr_hstry_mgr에 값 넣기 - 끝 + } @@ -108,6 +136,31 @@ public class DtbServiceImpl implements DtbService { dtbDAO.insertDistribution_setp0(dtbVO); + + //이력관리를 위한 adr_hstry_mgr_detail - 2022-09-07 serviceImpl #1 + //이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09 + //adr_hstry_mgr에 값 넣기 - 시작 + adrHstryMgrDAO.insert4Func(dtbVO.getAdrSeq() + //, "상태코드수정" + , p_code_desc + //, adjReqMgrVO.getStatCd() + , p_stat_cd + + , dtbVO.getFrstRegisterId() + , dtbVO.getLastUpdusrId() + + , p_adrHstryMgrSeq //, String p_adrHstryMgrSeq + , "I" //, String p_useCd I/U/UI/II/RE + , "ADR_ASS_MGR" //, String p_tableName + , " WHERE 1=1 AND adr_seq='"+dtbVO.getAdrSeq() + + " AND adr_sn='"+dtbVO.getAdrSn() + + " AND ass_seq='"+dtbVO.getAssSeq() + +"' " //, String p_updateQuery + + ); + //adr_hstry_mgr에 값 넣기 - 끝 + + } @@ -117,6 +170,32 @@ public class DtbServiceImpl implements DtbService { dtbVO.setAssUsrTy("02"); // 02 조정위원 dtbVO.setAddChgYn(dtbVO.getAddChgYn1()); dtbDAO.insertDistribution_setp0(dtbVO); + + + //이력관리를 위한 adr_hstry_mgr_detail - 2022-09-07 serviceImpl #1 + //이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09 + //adr_hstry_mgr에 값 넣기 - 시작 + adrHstryMgrDAO.insert4Func(dtbVO.getAdrSeq() + //, "상태코드수정" + , p_code_desc + //, adjReqMgrVO.getStatCd() + , p_stat_cd + + , dtbVO.getFrstRegisterId() + , dtbVO.getLastUpdusrId() + + , p_adrHstryMgrSeq //, String p_adrHstryMgrSeq + , "I" //, String p_useCd I/U/UI/II/RE + , "ADR_ASS_MGR" //, String p_tableName + , " WHERE 1=1 AND adr_seq='"+dtbVO.getAdrSeq() + + " AND adr_sn='"+dtbVO.getAdrSn() + + " AND ass_seq='"+dtbVO.getAssSeq() + +"' " //, String p_updateQuery + + ); + //adr_hstry_mgr에 값 넣기 - 끝 + + } if (!StringUtil.isEmpty(dtbVO.getAddUsrId2())) { @@ -125,6 +204,32 @@ public class DtbServiceImpl implements DtbService { dtbVO.setAssUsrTy("02"); // 02 조정위원 dtbVO.setAddChgYn(dtbVO.getAddChgYn2()); // 대석여부 dtbDAO.insertDistribution_setp0(dtbVO); + + + //이력관리를 위한 adr_hstry_mgr_detail - 2022-09-07 serviceImpl #1 + //이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09 + //adr_hstry_mgr에 값 넣기 - 시작 + adrHstryMgrDAO.insert4Func(dtbVO.getAdrSeq() + //, "상태코드수정" + , p_code_desc + //, adjReqMgrVO.getStatCd() + , p_stat_cd + + , dtbVO.getFrstRegisterId() + , dtbVO.getLastUpdusrId() + + , p_adrHstryMgrSeq //, String p_adrHstryMgrSeq + , "I" //, String p_useCd I/U/UI/II/RE + , "ADR_ASS_MGR" //, String p_tableName + , " WHERE 1=1 AND adr_seq='"+dtbVO.getAdrSeq() + + " AND adr_sn='"+dtbVO.getAdrSn() + + " AND ass_seq='"+dtbVO.getAssSeq() + +"' " //, String p_updateQuery + + ); + //adr_hstry_mgr에 값 넣기 - 끝 + + } @@ -139,8 +244,15 @@ public class DtbServiceImpl implements DtbService { , p_stat_cd , dtbVO.getFrstRegisterId() - , dtbVO.getLastUpdusrId()); - //adr_hstry_mgr에 값 넣기 - 끝 + , dtbVO.getLastUpdusrId() + + , p_adrHstryMgrSeq //, String p_adrHstryMgrSeq + , "U" //, String p_useCd I/U/UI/II/RE + , "ADR_ASS_MGR" //, String p_tableName + , "" //, String p_updateQuery + + ); + //adr_hstry_mgr에 값 넣기 - 끝 return rs; } diff --git a/src/main/java/kcc/kccadr/adjPgrMgr/dtb/web/DtbController.java b/src/main/java/kcc/kccadr/adjPgrMgr/dtb/web/DtbController.java index 2a09f283..0012eb10 100644 --- a/src/main/java/kcc/kccadr/adjPgrMgr/dtb/web/DtbController.java +++ b/src/main/java/kcc/kccadr/adjPgrMgr/dtb/web/DtbController.java @@ -231,7 +231,8 @@ public class DtbController { //이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09 dtbService.insertDistribution(dtbVO , "조정진행관리>>조정진행목록>조정결재상세>조정부지정>배당결재요청" //String p_code_desc - CC199 - , "A100" //String p_stat_cd 배당결재요청 + , "A100" //String p_stat_cd 배당결재요청 + , "" ); @@ -274,7 +275,8 @@ public class DtbController { dtbService.insertDistribution(dtbVO , "조정진행관리>>조정진행목록>조정결재상세>조정부지정>배당결재요청" //String p_code_desc - CC199 - , "A100" //String p_stat_cd 배당결재요청 + , "A100" //String p_stat_cd 배당결재요청 + , "" ); /* 조정부등록 @@ -318,7 +320,8 @@ public class DtbController { dtbService.updateDistribution(dtbVO , "조정진행관리>>조정진행목록>조정결재상세>조정부지정>배당결재요청-수정" //String p_code_desc - CC199 - , "A110" //String p_stat_cd 배당결재요청 + , "A110" //String p_stat_cd 배당결재요청 + , "" ); diff --git a/src/main/java/kcc/kccadr/adjPgrMgr/ent/service/EntService.java b/src/main/java/kcc/kccadr/adjPgrMgr/ent/service/EntService.java index 94ae8b40..2f4a7406 100644 --- a/src/main/java/kcc/kccadr/adjPgrMgr/ent/service/EntService.java +++ b/src/main/java/kcc/kccadr/adjPgrMgr/ent/service/EntService.java @@ -9,7 +9,8 @@ public interface EntService { public int updateEntApprYnInfo(EntVO entVO , String p_code_desc - , String p_stat_cd + , String p_stat_cd + , String p_adrHstryMgrSeq ) throws Exception; } diff --git a/src/main/java/kcc/kccadr/adjPgrMgr/ent/service/impl/EntServiceImpl.java b/src/main/java/kcc/kccadr/adjPgrMgr/ent/service/impl/EntServiceImpl.java index 4c972cfd..40eb0c31 100644 --- a/src/main/java/kcc/kccadr/adjPgrMgr/ent/service/impl/EntServiceImpl.java +++ b/src/main/java/kcc/kccadr/adjPgrMgr/ent/service/impl/EntServiceImpl.java @@ -53,7 +53,8 @@ public class EntServiceImpl implements EntService{ public int updateEntApprYnInfo(EntVO entVO , String p_code_desc - , String p_stat_cd + , String p_stat_cd + , String p_adrHstryMgrSeq ) throws Exception{ if(KccadrConstants.ADR_CNCL_DROP_COMP.equals(entVO.getApprYn())){ @@ -87,7 +88,14 @@ public class EntServiceImpl implements EntService{ , p_stat_cd , adjReqMgrVO.getFrstRegisterId() - , adjReqMgrVO.getLastUpdusrId()); + , adjReqMgrVO.getLastUpdusrId() + + , p_adrHstryMgrSeq //, String p_adrHstryMgrSeq + , "U" //, String p_useCd I/U/UI/II/RE + , "adr_cncl_mgr" //, String p_tableName + , "" //, String p_updateQuery + + ); //adr_hstry_mgr에 값 넣기 - 끝 }catch(Exception ex) { ex.printStackTrace(); diff --git a/src/main/java/kcc/kccadr/adjPgrMgr/exmp/app/web/ExmpAppManagerController.java b/src/main/java/kcc/kccadr/adjPgrMgr/exmp/app/web/ExmpAppManagerController.java index afa68f47..ddd0802f 100644 --- a/src/main/java/kcc/kccadr/adjPgrMgr/exmp/app/web/ExmpAppManagerController.java +++ b/src/main/java/kcc/kccadr/adjPgrMgr/exmp/app/web/ExmpAppManagerController.java @@ -61,7 +61,7 @@ public class ExmpAppManagerController { private EgovFileMngService fileMngService; - +///kccadr/adjPgrMgr/expm/AdjustExpmManagerList.do @RequestMapping(value = "/kccadr/adjPgrMgr/exmp/exmpAppManagerList.do") public String exmpAppManagerList(@ModelAttribute("exmpAppManageVO") ExmpManageVO exmpAppManageVO , ModelMap model) throws Exception { if(exmpAppManageVO.getPageUnit() != 10) { @@ -82,6 +82,8 @@ public class ExmpAppManagerController { exmpAppManageVO.setFirstIndex(paginationInfo.getFirstRecordIndex()); exmpAppManageVO.setLastIndex(paginationInfo.getLastRecordIndex()); exmpAppManageVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage()); + + exmpAppManageVO.setCodeId("CC002"); paginationInfo.setTotalRecordCount(exmpAppManageService.selectExmpAppManagerCount(exmpAppManageVO)); model.addAttribute("paginationInfo", paginationInfo); model.addAttribute("list", exmpAppManageService.selectExmpAppManagerList(exmpAppManageVO)); diff --git a/src/main/java/kcc/kccadr/adjPgrMgr/iam/service/InternalApprovManageService.java b/src/main/java/kcc/kccadr/adjPgrMgr/iam/service/InternalApprovManageService.java index d6e096a2..916735bf 100644 --- a/src/main/java/kcc/kccadr/adjPgrMgr/iam/service/InternalApprovManageService.java +++ b/src/main/java/kcc/kccadr/adjPgrMgr/iam/service/InternalApprovManageService.java @@ -10,6 +10,7 @@ public interface InternalApprovManageService { Integer updateinternalApprovManageSave(InternalApprovManageVO internalApprovManageVO , String p_code_desc , String p_stat_cd + , String p_adrHstryMgrSeq ) throws Exception; List selectInternalApprovManageList(InternalApprovManageVO internalApprovManageVO) throws Exception; diff --git a/src/main/java/kcc/kccadr/adjPgrMgr/iam/service/impl/InternalAppovManageServiceImpl.java b/src/main/java/kcc/kccadr/adjPgrMgr/iam/service/impl/InternalAppovManageServiceImpl.java index ec7f1ad1..39bdab88 100644 --- a/src/main/java/kcc/kccadr/adjPgrMgr/iam/service/impl/InternalAppovManageServiceImpl.java +++ b/src/main/java/kcc/kccadr/adjPgrMgr/iam/service/impl/InternalAppovManageServiceImpl.java @@ -52,6 +52,7 @@ public class InternalAppovManageServiceImpl implements InternalApprovManageServi public Integer updateinternalApprovManageSave(InternalApprovManageVO internalApprovManageVO , String p_code_desc , String p_stat_cd + , String p_adrHstryMgrSeq ) throws Exception { int rs = 0; @@ -72,15 +73,39 @@ public class InternalAppovManageServiceImpl implements InternalApprovManageServi // 조정부일때.. if(KccadrConstants.SBMT_USER_TYPE.equals(statInfo.getTarget())){ rs += internalApprovManageDAO.updateDeptUserSbmt(internalApprovManageVO); + + + //이력관리를 위한 adr_hstry_mgr_detail - 2022-09-07 serviceImpl #1 + //이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09 + //adr_hstry_mgr에 값 넣기 - 시작 + adrHstryMgrDAO.insert4Func(internalApprovManageVO.getAdrSeq() + //, "상태코드수정" + , p_code_desc + //, adjReqMgrVO.getStatCd() + , p_stat_cd + + , internalApprovManageVO.getFrstRegisterId() + , internalApprovManageVO.getLastUpdusrId() + + , p_adrHstryMgrSeq //, String p_adrHstryMgrSeq + , "U" //, String p_useCd I/U/UI/II/RE + , "ADR_SBMT_DETAIL_MGR" //, String p_tableName + , "" //, String p_updateQuery + + ); + //adr_hstry_mgr에 값 넣기 - 끝 + // 조정부 전체 결재 상태가 null이 아니고 , Y일때 와 반려를했을때만 부모테이블 업데이트 처리 if((StringUtils.isNotBlank(statInfo.getMemSuc()) && "Y".equals(statInfo.getMemSuc()) ) || "N".equals(internalApprovManageVO.getSbmtYn())){ rs += internalApprovManageDAO.updateUserSbmtMgr(internalApprovManageVO); + } }else{ rs += internalApprovManageDAO.updateUserSbmtMgr(internalApprovManageVO); + } - + //이력관리를 위한 adr_hstry_mgr_detail - 2022-09-07 serviceImpl #1 //이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09 //adr_hstry_mgr에 값 넣기 - 시작 adrHstryMgrDAO.insert4Func(internalApprovManageVO.getAdrSeq() @@ -90,8 +115,16 @@ public class InternalAppovManageServiceImpl implements InternalApprovManageServi , p_stat_cd , internalApprovManageVO.getFrstRegisterId() - , internalApprovManageVO.getLastUpdusrId()); - //adr_hstry_mgr에 값 넣기 - 끝 + , internalApprovManageVO.getLastUpdusrId() + + , p_adrHstryMgrSeq //, String p_adrHstryMgrSeq + , "U" //, String p_useCd I/U/UI/II/RE + , "ADR_SBMT_MGR" //, String p_tableName + , "" //, String p_updateQuery + + ); + //adr_hstry_mgr에 값 넣기 - 끝 + } diff --git a/src/main/java/kcc/kccadr/adjPgrMgr/iam/web/InternalApprovManageController.java b/src/main/java/kcc/kccadr/adjPgrMgr/iam/web/InternalApprovManageController.java index edc94259..1b40e648 100644 --- a/src/main/java/kcc/kccadr/adjPgrMgr/iam/web/InternalApprovManageController.java +++ b/src/main/java/kcc/kccadr/adjPgrMgr/iam/web/InternalApprovManageController.java @@ -357,7 +357,8 @@ public class InternalApprovManageController { //이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09 int rs = internalApprovManageService.updateinternalApprovManageSave(internalApprovManageVO , "조정진행관리>>내부결재목록>조정결재상세>결재처리" //String p_code_desc - CC199 - , "A090" //String p_stat_cd + , "A090" //String p_stat_cd + , "" ); if(rs > 0 ){ AdjstConciliatorVO statSearch = new AdjstConciliatorVO(); diff --git a/src/main/java/kcc/kccadr/adjst/service/AdjstReqService.java b/src/main/java/kcc/kccadr/adjst/service/AdjstReqService.java index 4f9b4974..e545ae3c 100644 --- a/src/main/java/kcc/kccadr/adjst/service/AdjstReqService.java +++ b/src/main/java/kcc/kccadr/adjst/service/AdjstReqService.java @@ -63,7 +63,10 @@ public interface AdjstReqService { public int updateAdjstReqPerson(AdjstReqVO adjstReqVO) throws Exception; //3단계 저장 - public int updateMasterInfo(AdjstReqVO adjstReqVO, MultipartHttpServletRequest multipartHttpServletRequest) throws Exception; + public int updateMasterInfo(AdjstReqVO adjstReqVO + , MultipartHttpServletRequest multipartHttpServletRequest + , String p_adrHstryMgrSeq + ) throws Exception; public int selectAdjstReqRegistPopCount(AdjstReqVO adjstReq) throws Exception; diff --git a/src/main/java/kcc/kccadr/adjst/service/impl/AdjstReqServiceImpl.java b/src/main/java/kcc/kccadr/adjst/service/impl/AdjstReqServiceImpl.java index 524a6cf3..835fe5b8 100644 --- a/src/main/java/kcc/kccadr/adjst/service/impl/AdjstReqServiceImpl.java +++ b/src/main/java/kcc/kccadr/adjst/service/impl/AdjstReqServiceImpl.java @@ -766,10 +766,15 @@ public class AdjstReqServiceImpl extends EgovAbstractServiceImpl implements Adj } @Override - public int updateMasterInfo(AdjstReqVO adjstReqVO, MultipartHttpServletRequest mltReq) throws Exception { + public int updateMasterInfo(AdjstReqVO adjstReqVO + , MultipartHttpServletRequest mltReq + , String p_adrHstryMgrSeq + ) throws Exception { int rs = 0; - rs = _updateMasterInfo(adjstReqVO, mltReq); + rs = _updateMasterInfo(adjstReqVO, mltReq + , p_adrHstryMgrSeq + ); /* String atchFileId = adjstReqVO.getAtchFileId(); @@ -1039,7 +1044,10 @@ public class AdjstReqServiceImpl extends EgovAbstractServiceImpl implements Adj return result; } - private int _updateMasterInfo(AdjstReqVO adjstReqVO, MultipartHttpServletRequest mltReq) throws Exception { + private int _updateMasterInfo(AdjstReqVO adjstReqVO + , MultipartHttpServletRequest mltReq + , String p_adrHstryMgrSeq + ) throws Exception { int rs = 0; String atchFileId = adjstReqVO.getAtchFileId(); @@ -1101,6 +1109,23 @@ public class AdjstReqServiceImpl extends EgovAbstractServiceImpl implements Adj if(StringUtils.isNotBlank(adjstReqVO.getEdtSn()) ){ adjstReqVO.setEdtStatus("02"); // 수정, 보완 완료상태로 변경 adjstReqDAO.updateAdrMgrEditInfo(adjstReqVO); + + + //이력관리를 위한 adr_hstry_mgr_detail - 2022-09-07 serviceImpl #1 + //이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09 + //adr_hstry_mgr에 값 넣기 - 시작 + adrHstryMgrDAO.insert4Func(adjstReqVO.getAdrSeq(), "조정신청서 제출", adjstReqVO.getStatCd() + , adjstReqVO.getFrstRegisterId() + , adjstReqVO.getLastUpdusrId() + + , p_adrHstryMgrSeq //, String p_adrHstryMgrSeq + , "U" //, String p_useCd I/U/UI/II/RE + , "ADR_EDT_REQ" //, String p_tableName + , "" //, String p_updateQuery + + ); + //adr_hstry_mgr에 값 넣기 - 끝 + // 보완요청을 했을경우 상태를 보완요청완료로 변경 if("S".equals(adjstReqVO.getEdtTy())){ adjstReqVO.setStatCd(KccadrConstants.ADR_SUPP_COMP); @@ -1108,14 +1133,23 @@ public class AdjstReqServiceImpl extends EgovAbstractServiceImpl implements Adj } rs += adjstReqDAO.updateAdrMgrMasterComplete(adjstReqVO); + + //이력관리를 위한 adr_hstry_mgr_detail - 2022-09-07 serviceImpl #1 //이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09 //adr_hstry_mgr에 값 넣기 - 시작 adrHstryMgrDAO.insert4Func(adjstReqVO.getAdrSeq(), "조정신청서 제출", adjstReqVO.getStatCd() , adjstReqVO.getFrstRegisterId() , adjstReqVO.getLastUpdusrId() + + , p_adrHstryMgrSeq //, String p_adrHstryMgrSeq + , "U" //, String p_useCd I/U/UI/II/RE + , "ADR_MGR_MASTER" //, String p_tableName + , "" //, String p_updateQuery + ); //adr_hstry_mgr에 값 넣기 - 끝 + } return rs; } diff --git a/src/main/java/kcc/kccadr/adjst/web/AdjstReqWebController.java b/src/main/java/kcc/kccadr/adjst/web/AdjstReqWebController.java index 6e7f1d7a..77486a2b 100644 --- a/src/main/java/kcc/kccadr/adjst/web/AdjstReqWebController.java +++ b/src/main/java/kcc/kccadr/adjst/web/AdjstReqWebController.java @@ -17,7 +17,6 @@ import org.json.simple.JSONArray; import org.json.simple.JSONObject; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.core.env.SystemEnvironmentPropertySource; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; @@ -47,7 +46,6 @@ import kcc.com.cmm.util.StringUtil; import kcc.com.utl.fcc.service.EgovStringUtil; import kcc.com.utl.user.service.CheckAdrProcessUtil; import kcc.kccadr.accdnt.crtfc.service.CrtfcService; -import kcc.kccadr.adjPgrMgr.exmp.cmm.ExmpManageVO; import kcc.kccadr.adjst.service.AdjstReqService; import kcc.kccadr.adjst.service.AdjstReqVO; import kcc.kccadr.cmm.KccadrConstants; @@ -484,7 +482,10 @@ public class AdjstReqWebController { String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); adjstReqVO.setFrstRegisterId(userId); adjstReqVO.setLastUpdusrId(userId); - int rs = adjstReqService.updateMasterInfo(adjstReqVO, multiRequest); + int rs = adjstReqService.updateMasterInfo(adjstReqVO + , multiRequest + , "" + ); modelAndView.addObject("result", KccadrConstants.SUCCESS); // 성공메세지 modelAndView.addObject("rsVO", adjstReqVO); // 성공메세지 return modelAndView; diff --git a/src/main/java/kcc/kccadr/adjstExp/service/AdjstExpService.java b/src/main/java/kcc/kccadr/adjstExp/service/AdjstExpService.java index f64b7e82..82583916 100644 --- a/src/main/java/kcc/kccadr/adjstExp/service/AdjstExpService.java +++ b/src/main/java/kcc/kccadr/adjstExp/service/AdjstExpService.java @@ -4,8 +4,11 @@ import java.util.List; import org.springframework.web.multipart.MultipartHttpServletRequest; +import kcc.kccadr.accdnt.adr.service.AdjstDeputyReqVO; +import kcc.kccadr.accdnt.ai.service.AdjstIncidentVO; +import kcc.kccadr.accdnt.arc.service.CorReqVO; +import kcc.kccadr.accdnt.ars.service.AdjstReqStatusVO; import kcc.kccadr.adjst.service.AdjstReqVO; -import kcc.kccadr.cmm.RestResponse; /** * 조정신청 관리를 위한 서비스 인터페이스 클래스 @@ -26,6 +29,8 @@ import kcc.kccadr.cmm.RestResponse; public interface AdjstExpService { + /*===== 신청하기 =====*/ + String checkAdjsReqEditStatus(AdjstReqVO adjstReq) throws Exception; // 조정사건 대리인/신청인/피신청인 정보 불러오기 @@ -40,4 +45,27 @@ public interface AdjstExpService { //1단계 수정(from 이전 불러오기) public int updatedjsReqStep1Save(AdjstReqVO adjstReqVO) throws Exception; + //2단계 저장 + public int insertAdjsReqStep2Save(AdjstReqVO adjstReqVO) throws Exception; + + //3단계 저장 + public int updateMasterInfo(AdjstReqVO adjstReqVO + , MultipartHttpServletRequest multipartHttpServletRequest + , String p_adrHstryMgrSeq + ) throws Exception; + + + + + + /*===== Detail =====*/ + + List selectAdjstReqRpplInfo(AdjstReqStatusVO adjstReqStatusVO) throws Exception; + + AdjstIncidentVO selectAdjstIncidentMaster(AdjstIncidentVO adjstIncidentVO) throws Exception; + + List selectRpplList(AdjstDeputyReqVO adjDeputyReqVO); + + + } diff --git a/src/main/java/kcc/kccadr/adjstExp/service/impl/AdjstExpDAO.java b/src/main/java/kcc/kccadr/adjstExp/service/impl/AdjstExpDAO.java index 084e99a6..f99467c9 100644 --- a/src/main/java/kcc/kccadr/adjstExp/service/impl/AdjstExpDAO.java +++ b/src/main/java/kcc/kccadr/adjstExp/service/impl/AdjstExpDAO.java @@ -5,6 +5,10 @@ import java.util.List; import org.springframework.stereotype.Repository; import egovframework.rte.psl.dataaccess.EgovAbstractDAO; +import kcc.kccadr.accdnt.adr.service.AdjstDeputyReqVO; +import kcc.kccadr.accdnt.ai.service.AdjstIncidentVO; +import kcc.kccadr.accdnt.arc.service.CorReqVO; +import kcc.kccadr.accdnt.ars.service.AdjstReqStatusVO; import kcc.kccadr.adjst.service.AdjstReqVO; /** @@ -25,47 +29,93 @@ import kcc.kccadr.adjst.service.AdjstReqVO; */ @Repository("AdjstExpDAO") public class AdjstExpDAO extends EgovAbstractDAO { + + /*===== 신청하기 =====*/ // 조정사건 정보 불러오기 public AdjstReqVO selectAdjsMgrMasterByUniqId(AdjstReqVO adjstReqVO) throws Exception{ - return (AdjstReqVO) select("AdjstExpDAO.selectAdjsMgrMasterByUniqId", adjstReqVO); + return (AdjstReqVO) select("adjstExpDAO.selectAdjsMgrMasterByUniqId", adjstReqVO); } public AdjstReqVO selectAdjsReqEditInfo(AdjstReqVO adjstReqVO) throws Exception{ - return (AdjstReqVO) select("AdjstExpDAO.selectAdjsReqEditInfo", adjstReqVO); + return (AdjstReqVO) select("adjstExpDAO.selectAdjsReqEditInfo", adjstReqVO); } // 조정사건 대리인/신청인/피신청인 정보 불러오기 @SuppressWarnings("unchecked") public List selectAdjsReqUserListByadjSeq(AdjstReqVO adjstReqVO) throws Exception{ - return (List) list("AdjstExpDAO.selectAdjsReqUserListByadjSeq", adjstReqVO); + return (List) list("adjstExpDAO.selectAdjsReqUserListByadjSeq", adjstReqVO); } //조정사건 신규 등록 public int insertAdrMgrMaster(AdjstReqVO adjstReqVO) throws Exception{ - return update("AdjstExpDAO.insertAdrMgrMaster", adjstReqVO); + return update("adjstExpDAO.insertAdrMgrMaster", adjstReqVO); } //조정사건 상세 신규 등록 public int insertAdrMgrMasterDetail(AdjstReqVO adjstReqVO) throws Exception{ - return update("AdjstExpDAO.insertAdrMgrMasterDetail", adjstReqVO); + return update("adjstExpDAO.insertAdrMgrMasterDetail", adjstReqVO); } public int updateCopyMasterInfo(AdjstReqVO adjstReqVO) throws Exception { - return (Integer) update("AdjstExpDAO.updateCopyMasterInfo", adjstReqVO); + return (Integer) update("adjstExpDAO.updateCopyMasterInfo", adjstReqVO); } public void mergeIntoAdrRppl(AdjstReqVO adjstReqVO) throws Exception { - insert("AdjstExpDAO.mergeIntoAdrRppl", adjstReqVO); + insert("adjstExpDAO.mergeIntoAdrRppl", adjstReqVO); } //조정사건 대리인, 신청인, 피신청인 정보 등록 public int insertAdrRppl(AdjstReqVO adjstReqVO) throws Exception{ - return update("AdjstExpDAO.insertAdrRppl", adjstReqVO); + return update("adjstExpDAO.insertAdrRppl", adjstReqVO); } // 조정사건 대리인/신청인 정보 수정 public int updateAdrRppl(AdjstReqVO adjstReqVO) throws Exception{ - return update("AdjstExpDAO.updateAdrRppl", adjstReqVO); + return update("adjstExpDAO.updateAdrRppl", adjstReqVO); } - + + public int deleteAdjstReqPersonNotIn(AdjstReqVO adjstReqVO) throws Exception { + return delete("adjstExpDAO.deleteAdjstReqPersonNotIn", adjstReqVO); + } + + //조정신청 신청인 취지/원인 정보 등록 + public int updateAdrMgrMaster(AdjstReqVO adjstReqVO) throws Exception{ + return update("adjstExpDAO.updateAdrMgrMaster", adjstReqVO); + } + + public int updateAdrMgrEditInfo(AdjstReqVO adjstReqVO) throws Exception { + return (Integer) update("adjstExpDAO.updateAdrMgrEditInfo", adjstReqVO); + } + //조정신청 최종제출 처리 + public int updateAdrMgrMasterComplete(AdjstReqVO adjstReqVO) throws Exception{ + return update("adjstExpDAO.updateAdrMgrMasterComplete", adjstReqVO); + } + + + + + + /*===== Detail =====*/ + + + public List selectAdjstReqRpplInfo(AdjstReqStatusVO adjstReqStatusVO) throws Exception { + return (List) list("adjstExpDAO.selectAdjstReqRpplInfo", adjstReqStatusVO); + } + + public AdjstIncidentVO selectAdjstIncidentMaster(AdjstIncidentVO adjstIncidentVO) throws Exception { + return (AdjstIncidentVO) select("adjstExpDAO.selectAdjstIncidentMaster", adjstIncidentVO); + } + + public List selectRpplList(AdjstDeputyReqVO adjDeputyReqVO) { + return (List) list("adjstExpDAO.selectRpplList", adjDeputyReqVO); + } +// public AdjstIncidentVO selectApmChgDateInfo(AdjstIncidentVO adjstIncidentVO) throws Exception{ +// return (AdjstIncidentVO) select("adjstExpDAO.selectApmChgDateInfo", adjstIncidentVO); +// } +// + + + + + } diff --git a/src/main/java/kcc/kccadr/adjstExp/service/impl/AdjstExpServiceImpl.java b/src/main/java/kcc/kccadr/adjstExp/service/impl/AdjstExpServiceImpl.java index 0e2c2caf..012f80d7 100644 --- a/src/main/java/kcc/kccadr/adjstExp/service/impl/AdjstExpServiceImpl.java +++ b/src/main/java/kcc/kccadr/adjstExp/service/impl/AdjstExpServiceImpl.java @@ -1,311 +1,607 @@ -package kcc.kccadr.adjstExp.service.impl; - -import java.time.LocalDateTime; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -import javax.annotation.Resource; - -import org.apache.commons.collections.CollectionUtils; -import org.apache.commons.lang3.StringUtils; -import org.codehaus.jackson.map.ObjectMapper; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.http.HttpStatus; -import org.springframework.stereotype.Service; -import org.springframework.web.multipart.MultipartFile; -import org.springframework.web.multipart.MultipartHttpServletRequest; - -import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl; -import egovframework.rte.fdl.idgnr.EgovIdGnrService; -import kcc.com.cmm.service.CmmnDetailCode; -import kcc.com.cmm.service.EgovFileMngService; -import kcc.com.cmm.service.EgovFileMngUtil; -import kcc.com.cmm.service.FileVO; -import kcc.com.utl.user.service.CheckAdrProcessUtil; -import kcc.kccadr.adjreqmgr.service.AdjReqMgrVO; -import kcc.kccadr.adjreqmgr.service.impl.AdjReqMgrDAO; -import kcc.kccadr.adjst.service.AdjstReqService; -import kcc.kccadr.adjst.service.AdjstReqVO; -import kcc.kccadr.adjstExp.service.AdjstExpService; -import kcc.kccadr.advc.service.impl.AdrHstryMgrDAO; -import kcc.kccadr.cmm.KccadrConstants; -import kcc.kccadr.cmm.RestResponse; -import kcc.let.sym.ccm.cde.service.CmmnDetailCodeVO; -import kcc.let.sym.ccm.cde.service.EgovCcmCmmnDetailCodeManageService; -import kcc.let.utl.fcc.service.EgovCryptoUtil; - -/** - * 조정신청 관리를 위한 서비스 구현 클래스 - * @author 여현준 - * @since 2021.08.03 - * @version 1.0 - * @see - * - *
- * << 개정이력(Modification Information) >>
- *
- *   수정일      수정자           수정내용
- *  -------    --------    ---------------------------
- *   2021.08.03  여현준          최초 생성
- *
- * 
- */ -@Service("AdjstExpService") -public class AdjstExpServiceImpl extends EgovAbstractServiceImpl implements AdjstExpService { - - - Logger log = LoggerFactory.getLogger(this.getClass()); - // 조정신청 DAO - @Resource(name = "AdjstExpDAO") - private AdjstExpDAO adjstExpDAO; - - // 조정상태관련 공통 - @Resource(name = "checkAdrProcessUtil") - private CheckAdrProcessUtil checkAdrProcessUtil; - - //상세 코드 정보 - @Resource(name = "CmmnDetailCodeManageService") - private EgovCcmCmmnDetailCodeManageService cmmnDetailCodeManageService; - - @Resource(name="AdjReqMgrDAO") - private AdjReqMgrDAO adjReqMgrDAO; - - // 조정사건이력관리 DAO - @Resource(name = "adrHstryMgrDAO") - private AdrHstryMgrDAO adrHstryMgrDAO; - - /** - * 고유ID 설정 추가 - * - 설정파일경로 : /resources/egovframework/spring/com/context-idgen.xml - */ - // eGov 고유ID Generation - @Resource(name="xxxGnrService") - private EgovIdGnrService idgenService; - - @Resource(name="adrGnrService") - private EgovIdGnrService adrIdgenService; - - @Resource(name="rpplGnrService") - private EgovIdGnrService rpplIdgenService; - - //첨부파일 경로, realPath 설정 - @Resource(name="EgovFileMngUtil") - private EgovFileMngUtil fileUtil; - - // 첨부파일 정보 - @Resource(name="EgovFileMngService") - private EgovFileMngService fileMngService; - - @Resource(name = "EgovFileMngService") - private EgovFileMngService fileService; - - //암복호화 유틸 - @Resource(name = "egovCryptoUtil") - EgovCryptoUtil egovCryptoUtil; - - private static final Logger LOGGER = LoggerFactory.getLogger(AdjstExpServiceImpl.class); - - @Override - public String checkAdjsReqEditStatus(AdjstReqVO adjstReq) throws Exception { - AdjstReqVO editInfo = null; - String result = null; - - if(StringUtils.isNotBlank(adjstReq.getAdrSeq()) && StringUtils.isBlank(adjstReq.getCopyAdrSeq())){ - AdjstReqVO adjMsrMaster = adjstExpDAO.selectAdjsMgrMasterByUniqId(adjstReq); - if(adjMsrMaster != null){ - // 수정요청 승인이거나, 보완요청이거나 - if(KccadrConstants.ADR_UPDT_APPR.equals(adjMsrMaster.getStatCd()) || KccadrConstants.ADR_SUPP_REQ.equals(adjMsrMaster.getStatCd())){ - editInfo = adjstExpDAO.selectAdjsReqEditInfo(adjstReq); - } - } - } - if(editInfo != null){ - result = new ObjectMapper().writeValueAsString(editInfo); - } - return result; - } - - // 조정사건 대리인/신청인/피신청인 정보 불러오기 - public List selectAdjsReqUserListByadjSeq(AdjstReqVO adjstReqVO) throws Exception{ - return adjstExpDAO.selectAdjsReqUserListByadjSeq(adjstReqVO); - } - - // 조정사건 정보 불러오기 - public AdjstReqVO selectAdjsMgrMasterByUniqId(AdjstReqVO adjstReqVO) throws Exception{ - return adjstExpDAO.selectAdjsMgrMasterByUniqId(adjstReqVO); - } - - - - @Override - public int insertAdjsReqStep1Save(AdjstReqVO adjstReqVO) throws Exception { - - return this._insertAdjsReqStep1Save(adjstReqVO); - } - - private int _insertAdjsReqStep1Save(AdjstReqVO adjstReqVO) throws Exception{ - int rs = 0; - /* - * 조정마스터 테이블에 기본 임시정보 생성 - * */ - - // 조정키 생성 - adjstReqVO.setAdrSeq(adrIdgenService.getNextStringId()); - // 온:오프라인 온라인 코드로 등록 - adjstReqVO.setReqOlCd(KccadrConstants.ADR_REQ_ONLINE); - // 조정상태 작성중 상태로 등록 - adjstReqVO.setStatCd(KccadrConstants.ADR_REQ_ING); - - // 마스터 정보 insert - rs = adjstExpDAO.insertAdrMgrMaster(adjstReqVO); - // 조정상세 정보 등록 - if(rs > 0){ - // 처음 등록하는 조정사건이기때문에 1회차 등록 - adjstReqVO.setAdrSn("1"); - rs = adjstExpDAO.insertAdrMgrMasterDetail(adjstReqVO); - } - // 신청인 및 대리인 등록 - - if(CollectionUtils.isNotEmpty(adjstReqVO.getAdjstRpplList())){ - for(AdjstReqVO model : adjstReqVO.getAdjstRpplList()){ - model.setAdrSeq(adjstReqVO.getAdrSeq()); - // 관련인 키 생성 - model.setRpplSeq(rpplIdgenService.getNextStringId()); - // 최초등록자 - model.setFrstRegisterId(adjstReqVO.getFrstRegisterId()); - // 마지막 수정자 - model.setLastUpdusrId(adjstReqVO.getLastUpdusrId()); - // 조정기일 대리 여부 - model.setAgntYn("N"); - - /* 신청인에 경우 rrplId를 등록해준다.*/ - if(KccadrConstants.ADR_RPPL_TY_REQ.equals(model.getRpplTy())){ - model.setRpplId(adjstReqVO.getFrstRegisterId()); - } - - rs += cryptAdjReqRpplSend(model); - } - } - - // 이전신청 불러오기 데이터가 존재한다면 피신청인과, 마스터 정보를 복제해준다. - if(StringUtils.isNotBlank(adjstReqVO.getCopyAdrSeq())){ - adjstExpDAO.updateCopyMasterInfo(adjstReqVO); - // 피신청인 목록조회.. - String rpplTyArr[] = {KccadrConstants.ADR_RPPL_TY_RES}; - adjstReqVO.setRpplTyArr(rpplTyArr); - List list = adjstExpDAO.selectAdjsReqUserListByadjSeq(adjstReqVO); - for(AdjstReqVO model : list){ - /* - * 복제할때는 암호화된 데이터 그대로 삽입... - * */ - model.setRpplSeq(rpplIdgenService.getNextStringId()); // 관련인 일련번호 생성 - model.setAdrSeq(adjstReqVO.getAdrSeq()); // 생성된 조정일련번호로 교체.. - model.setAgntYn("N"); // 조정기일대리여부 - model.setAdrOlYn(""); // 전자조정진행여부 - model.setRpplId(""); // 조정사건관리인ID - model.setSbmtYn(""); // 제출여부 - model.setSbmtDe(null); // 제출일시 - model.setUsrCi(""); // 전자서명인증값 - model.setApprYn(""); // 결제여부 - model.setApprDe(null); // 결제일시 - model.setAtchFileId(""); // 첨부파일ID - model.setFrstRegisterId(adjstReqVO.getFrstRegisterId()); - model.setLastUpdusrId(adjstReqVO.getLastUpdusrId()); - adjstExpDAO.mergeIntoAdrRppl(model); - } - } - - return rs; - } - - private int _updatedjsReqStep1Save(AdjstReqVO adjstReqVO) throws Exception { - int rs = 0; - if(CollectionUtils.isNotEmpty(adjstReqVO.getAdjstRpplList())){ - for(AdjstReqVO model : adjstReqVO.getAdjstRpplList()){ - model.setAdrSeq(adjstReqVO.getAdrSeq()); - // 최초등록자 - model.setFrstRegisterId(adjstReqVO.getFrstRegisterId()); - // 마지막 수정자 - model.setLastUpdusrId(adjstReqVO.getLastUpdusrId()); - // 조정기일 대리 여부 - model.setAgntYn("N"); - - /* 신청인에 경우 rrplId를 등록해준다.*/ - if(KccadrConstants.ADR_RPPL_TY_REQ.equals(model.getRpplTy())){ - model.setRpplId(adjstReqVO.getFrstRegisterId()); - } - - rs = cryptAdjReqRpplSendUpdate(model); - } - } - return rs; - } - - - // 조정신청 이름, 이메일, 연락처, 주소정보 암호화 후 데이터베이스에 수정해주기 - public int cryptAdjReqRpplSendUpdate(AdjstReqVO adjstReqVO) throws Exception{ - - String rpplNm = egovCryptoUtil.encrypt(adjstReqVO.getRpplNm()); //신청인이름 - String rpplEmail = egovCryptoUtil.encrypt(adjstReqVO.getRpplEmail()); //이메일주소 - String rpplPhone = egovCryptoUtil.encrypt(adjstReqVO.getRpplPhone()); //연락처 - String rpplPost = egovCryptoUtil.encrypt(adjstReqVO.getRpplPost()); //우편번호 - String rpplAddr = egovCryptoUtil.encrypt(adjstReqVO.getRpplAddr()); //주소 - String rpplAddrDtl = egovCryptoUtil.encrypt(adjstReqVO.getRpplAddrDtl()); //상세주소 - String rpplRealPost = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealPost()); //우편물 수령지 우편번호 - String rpplRealAddr = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealAddr()); //우편물 수령지 주소 - String rpplRealAddrDtl = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealAddrDtl()); //우편물 수령지 상세주소 - - adjstReqVO.setRpplNm(rpplNm); - adjstReqVO.setRpplEmail(rpplEmail); - adjstReqVO.setRpplPhone(rpplPhone); - adjstReqVO.setRpplPost(rpplPost); - adjstReqVO.setRpplAddr(rpplAddr); - adjstReqVO.setRpplAddrDtl(rpplAddrDtl); - adjstReqVO.setRpplRealPost(rpplRealPost); - adjstReqVO.setRpplRealAddr(rpplRealAddr); - adjstReqVO.setRpplRealAddrDtl(rpplRealAddrDtl); - - //디비에 수정해 주기 - int resultCnt = adjstExpDAO.updateAdrRppl(adjstReqVO); - - return resultCnt; - } - - - // 조정신청 이름, 이메일, 연락처, 주소정보 암호화 후 데이터베이스에 입력해주기 - public int cryptAdjReqRpplSend(AdjstReqVO adjstReqVO) throws Exception{ - - String rpplNm = egovCryptoUtil.encrypt(adjstReqVO.getRpplNm()); //신청인이름 - String rpplEmail = egovCryptoUtil.encrypt(adjstReqVO.getRpplEmail()); //이메일주소 - String rpplPhone = egovCryptoUtil.encrypt(adjstReqVO.getRpplPhone()); //연락처 - String rpplPost = egovCryptoUtil.encrypt(adjstReqVO.getRpplPost()); //우편번호 - String rpplAddr = egovCryptoUtil.encrypt(adjstReqVO.getRpplAddr()); //주소 - String rpplAddrDtl = egovCryptoUtil.encrypt(adjstReqVO.getRpplAddrDtl()); //상세주소 - String rpplRealPost = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealPost()); //우편물 수령지 우편번호 - String rpplRealAddr = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealAddr()); //우편물 수령지 주소 - String rpplRealAddrDtl = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealAddrDtl()); //우편물 수령지 상세주소 - - adjstReqVO.setRpplNm(rpplNm); - adjstReqVO.setRpplEmail(rpplEmail); - adjstReqVO.setRpplPhone(rpplPhone); - adjstReqVO.setRpplPost(rpplPost); - adjstReqVO.setRpplAddr(rpplAddr); - adjstReqVO.setRpplAddrDtl(rpplAddrDtl); - adjstReqVO.setRpplRealPost(rpplRealPost); - adjstReqVO.setRpplRealAddr(rpplRealAddr); - adjstReqVO.setRpplRealAddrDtl(rpplRealAddrDtl); - - //디비에 추가해 주기 - int resultCnt = adjstExpDAO.insertAdrRppl(adjstReqVO); - - return resultCnt; - } - - @Override - public int updatedjsReqStep1Save(AdjstReqVO adjstReqVO) throws Exception { - return _updatedjsReqStep1Save(adjstReqVO); - } - -} +package kcc.kccadr.adjstExp.service.impl; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import javax.annotation.Resource; + +import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.lang3.StringUtils; +import org.codehaus.jackson.map.ObjectMapper; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; + +import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl; +import egovframework.rte.fdl.idgnr.EgovIdGnrService; +import kcc.com.cmm.service.CmmnDetailCode; +import kcc.com.cmm.service.EgovFileMngService; +import kcc.com.cmm.service.EgovFileMngUtil; +import kcc.com.cmm.service.FileVO; +import kcc.com.cmm.util.StringUtil; +import kcc.com.utl.user.service.CheckAdrProcessUtil; +import kcc.kccadr.accdnt.adr.service.AdjstDeputyReqVO; +import kcc.kccadr.accdnt.ai.service.AdjstIncidentVO; +import kcc.kccadr.accdnt.arc.service.CorReqVO; +import kcc.kccadr.accdnt.ars.service.AdjstReqStatusVO; +import kcc.kccadr.adjreqmgr.service.AdjReqMgrVO; +import kcc.kccadr.adjreqmgr.service.impl.AdjReqMgrDAO; +import kcc.kccadr.adjst.service.AdjstReqVO; +import kcc.kccadr.adjstExp.service.AdjstExpService; +import kcc.kccadr.advc.service.impl.AdrHstryMgrDAO; +import kcc.kccadr.cmm.KccadrConstants; +import kcc.let.sym.ccm.cde.service.CmmnDetailCodeVO; +import kcc.let.sym.ccm.cde.service.EgovCcmCmmnDetailCodeManageService; +import kcc.let.utl.fcc.service.EgovCryptoUtil; + +/** + * 조정신청 관리를 위한 서비스 구현 클래스 + * @author 여현준 + * @since 2021.08.03 + * @version 1.0 + * @see + * + *
+ * << 개정이력(Modification Information) >>
+ *
+ *   수정일      수정자           수정내용
+ *  -------    --------    ---------------------------
+ *   2021.08.03  여현준          최초 생성
+ *
+ * 
+ */ +@Service("AdjstExpService") +public class AdjstExpServiceImpl extends EgovAbstractServiceImpl implements AdjstExpService { + + + Logger log = LoggerFactory.getLogger(this.getClass()); + // 조정신청 DAO + @Resource(name = "AdjstExpDAO") + private AdjstExpDAO adjstExpDAO; + + // 조정상태관련 공통 + @Resource(name = "checkAdrProcessUtil") + private CheckAdrProcessUtil checkAdrProcessUtil; + + //상세 코드 정보 + @Resource(name = "CmmnDetailCodeManageService") + private EgovCcmCmmnDetailCodeManageService cmmnDetailCodeManageService; + + @Resource(name="AdjReqMgrDAO") + private AdjReqMgrDAO adjReqMgrDAO; + + // 조정사건이력관리 DAO + @Resource(name = "adrHstryMgrDAO") + private AdrHstryMgrDAO adrHstryMgrDAO; + + /** + * 고유ID 설정 추가 + * - 설정파일경로 : /resources/egovframework/spring/com/context-idgen.xml + */ + + @Resource(name="adrExpGnrService") + private EgovIdGnrService adrExpGnrService; + + @Resource(name="rpplExpGnrService") + private EgovIdGnrService rpplExpGnrService; + + //첨부파일 경로, realPath 설정 + @Resource(name="EgovFileMngUtil") + private EgovFileMngUtil fileUtil; + + // 첨부파일 정보 + @Resource(name="EgovFileMngService") + private EgovFileMngService fileMngService; + + @Resource(name = "EgovFileMngService") + private EgovFileMngService fileService; + + //암복호화 유틸 + @Resource(name = "egovCryptoUtil") + EgovCryptoUtil egovCryptoUtil; + + private static final Logger LOGGER = LoggerFactory.getLogger(AdjstExpServiceImpl.class); + + /*===== 신청하기 =====*/ + + @Override + public String checkAdjsReqEditStatus(AdjstReqVO adjstReq) throws Exception { + AdjstReqVO editInfo = null; + String result = null; + + if(StringUtils.isNotBlank(adjstReq.getAdrSeq()) && StringUtils.isBlank(adjstReq.getCopyAdrSeq())){ + AdjstReqVO adjMsrMaster = adjstExpDAO.selectAdjsMgrMasterByUniqId(adjstReq); + if(adjMsrMaster != null){ + // 수정요청 승인이거나, 보완요청이거나 + if(KccadrConstants.ADR_UPDT_APPR.equals(adjMsrMaster.getStatCd()) || KccadrConstants.ADR_SUPP_REQ.equals(adjMsrMaster.getStatCd())){ + editInfo = adjstExpDAO.selectAdjsReqEditInfo(adjstReq); + } + } + } + if(editInfo != null){ + result = new ObjectMapper().writeValueAsString(editInfo); + } + return result; + } + + // 조정사건 대리인/신청인/피신청인 정보 불러오기 + public List selectAdjsReqUserListByadjSeq(AdjstReqVO adjstReqVO) throws Exception{ + return adjstExpDAO.selectAdjsReqUserListByadjSeq(adjstReqVO); + } + + // 조정사건 정보 불러오기 + public AdjstReqVO selectAdjsMgrMasterByUniqId(AdjstReqVO adjstReqVO) throws Exception{ + return adjstExpDAO.selectAdjsMgrMasterByUniqId(adjstReqVO); + } + + @Override + public int insertAdjsReqStep1Save(AdjstReqVO adjstReqVO) throws Exception { + + return this._insertAdjsReqStep1Save(adjstReqVO); + } + + private int _insertAdjsReqStep1Save(AdjstReqVO adjstReqVO) throws Exception{ + int rs = 0; + /* + * 조정마스터 테이블에 기본 임시정보 생성 + * */ + + // 조정키 생성 + adjstReqVO.setAdrSeq(adrExpGnrService.getNextStringId()); + // 온:오프라인 온라인 코드로 등록 + adjstReqVO.setReqOlCd(KccadrConstants.ADR_REQ_ONLINE); + // 조정상태 작성중 상태로 등록 + adjstReqVO.setStatCd(KccadrConstants.ADR_REQ_ING); + + // 마스터 정보 insert + rs = adjstExpDAO.insertAdrMgrMaster(adjstReqVO); + // 조정상세 정보 등록 + if(rs > 0){ + // 처음 등록하는 조정사건이기때문에 1회차 등록 + adjstReqVO.setAdrSn("1"); + rs = adjstExpDAO.insertAdrMgrMasterDetail(adjstReqVO); + } + // 신청인 및 대리인 등록 + + if(CollectionUtils.isNotEmpty(adjstReqVO.getAdjstRpplList())){ + for(AdjstReqVO model : adjstReqVO.getAdjstRpplList()){ + model.setAdrSeq(adjstReqVO.getAdrSeq()); + // 관련인 키 생성 + model.setRpplSeq(rpplExpGnrService.getNextStringId()); + // 최초등록자 + model.setFrstRegisterId(adjstReqVO.getFrstRegisterId()); + // 마지막 수정자 + model.setLastUpdusrId(adjstReqVO.getLastUpdusrId()); + // 조정기일 대리 여부 + model.setAgntYn("N"); + + /* 신청인에 경우 rrplId를 등록해준다.*/ + if(KccadrConstants.ADR_RPPL_TY_REQ.equals(model.getRpplTy())){ + model.setRpplId(adjstReqVO.getFrstRegisterId()); + } + + rs += cryptAdjReqRpplSend(model); + } + } + + // 이전신청 불러오기 데이터가 존재한다면 피신청인과, 마스터 정보를 복제해준다. + if(StringUtils.isNotBlank(adjstReqVO.getCopyAdrSeq())){ + adjstExpDAO.updateCopyMasterInfo(adjstReqVO); + // 피신청인 목록조회.. + String rpplTyArr[] = {KccadrConstants.ADR_RPPL_TY_RES}; + adjstReqVO.setRpplTyArr(rpplTyArr); + List list = adjstExpDAO.selectAdjsReqUserListByadjSeq(adjstReqVO); + for(AdjstReqVO model : list){ + /* + * 복제할때는 암호화된 데이터 그대로 삽입... + * */ + model.setRpplSeq(rpplExpGnrService.getNextStringId()); // 관련인 일련번호 생성 + model.setAdrSeq(adjstReqVO.getAdrSeq()); // 생성된 조정일련번호로 교체.. + model.setAgntYn("N"); // 조정기일대리여부 + model.setAdrOlYn(""); // 전자조정진행여부 + model.setRpplId(""); // 조정사건관리인ID + model.setSbmtYn(""); // 제출여부 + model.setSbmtDe(null); // 제출일시 + model.setUsrCi(""); // 전자서명인증값 + model.setApprYn(""); // 결제여부 + model.setApprDe(null); // 결제일시 + model.setAtchFileId(""); // 첨부파일ID + model.setFrstRegisterId(adjstReqVO.getFrstRegisterId()); + model.setLastUpdusrId(adjstReqVO.getLastUpdusrId()); + adjstExpDAO.mergeIntoAdrRppl(model); + } + } + + return rs; + } + + private int _updatedjsReqStep1Save(AdjstReqVO adjstReqVO) throws Exception { + int rs = 0; + if(CollectionUtils.isNotEmpty(adjstReqVO.getAdjstRpplList())){ + for(AdjstReqVO model : adjstReqVO.getAdjstRpplList()){ + model.setAdrSeq(adjstReqVO.getAdrSeq()); + // 최초등록자 + model.setFrstRegisterId(adjstReqVO.getFrstRegisterId()); + // 마지막 수정자 + model.setLastUpdusrId(adjstReqVO.getLastUpdusrId()); + // 조정기일 대리 여부 + model.setAgntYn("N"); + + /* 신청인에 경우 rrplId를 등록해준다.*/ + if(KccadrConstants.ADR_RPPL_TY_REQ.equals(model.getRpplTy())){ + model.setRpplId(adjstReqVO.getFrstRegisterId()); + } + + rs = cryptAdjReqRpplSendUpdate(model); + } + } + return rs; + } + + @Override + public int insertAdjsReqStep2Save(AdjstReqVO adjstReqVO) throws Exception { + return _insertAdjsReqStep2Save(adjstReqVO); + } + + private int _insertAdjsReqStep2Save(AdjstReqVO adjstReqVO) throws Exception { + int rs = 0 ; + List existSeqList = new ArrayList<>(); + if(CollectionUtils.isNotEmpty(adjstReqVO.getAdjstRpplList())){ + + for(AdjstReqVO model : adjstReqVO.getAdjstRpplList()){ + + // 관련일 일련번호가 없다면 생성 + if(StringUtils.isEmpty(model.getRpplSeq())){ + model.setRpplSeq(rpplExpGnrService.getNextStringId()); + } + model.setRpplTy(KccadrConstants.ADR_RPPL_TY_RES); + model.setAdrSeq(adjstReqVO.getAdrSeq()); + // 최초등록자 + model.setFrstRegisterId(adjstReqVO.getFrstRegisterId()); + // 마지막 수정자 + model.setLastUpdusrId(adjstReqVO.getLastUpdusrId()); + // 조정기일 대리 여부 + model.setAgntYn("N"); + + cryptAdjReqRpplSendMerge(model); + existSeqList.add(model.getRpplSeq()); + rs++; + } + } + // 등록된 피신청인을 제외한 나머지 삭제 처리.... + if(rs > 0){ + // 피신청인 중 현재 등록 수정된 피신청인을 제외한 나머지 삭제 처리.. + adjstReqVO.setExistSeqList(existSeqList); + adjstReqVO.setRpplTy(KccadrConstants.ADR_RPPL_TY_RES); + adjstExpDAO.deleteAdjstReqPersonNotIn(adjstReqVO); + } + return rs; + } + @Override + public int updateMasterInfo(AdjstReqVO adjstReqVO + , MultipartHttpServletRequest mltReq + , String p_adrHstryMgrSeq + ) throws Exception { + int rs = 0; + + rs = _updateMasterInfo(adjstReqVO + , mltReq + , p_adrHstryMgrSeq + ); + + return rs; + } + + + private int _updateMasterInfo(AdjstReqVO adjstReqVO + , MultipartHttpServletRequest mltReq + , String p_adrHstryMgrSeq + ) throws Exception { + int rs = 0; + String atchFileId = adjstReqVO.getAtchFileId(); + + final Map files = mltReq.getFileMap(); + if (!files.isEmpty()) { + if ("".equals(atchFileId)) { + List result = fileUtil.parseFileInf(files, "조정 신청_", 0, atchFileId, "", ""); + + atchFileId = fileMngService.insertFileInfs(result); + adjstReqVO.setAtchFileId(atchFileId); + } else { + FileVO fvo = new FileVO(); + fvo.setAtchFileId(atchFileId); + int cnt = fileMngService.getMaxFileSN(fvo); + List result = fileUtil.parseFileInf(files, "조정 신청_", cnt, atchFileId, "", ""); + + fileMngService.updateFileInfs(result); + } + } + + + // 조정사건이력업데이트 + { + AdjReqMgrVO adjReqMgrVO = new AdjReqMgrVO(); + adjReqMgrVO.setAdrSeq(adjstReqVO.getAdrSeq()); + adjReqMgrVO.setAdrSn(adjstReqVO.getAdrSn()); + adjReqMgrVO.setStatCd(KccadrConstants.ADR_REQ_COMP); + adjReqMgrVO = checkAdrProcessUtil.getAdrHstryCn(adjReqMgrVO); // 이력 내용 확인 + + //하기 내용으로 변경 + CmmnDetailCodeVO cmmnDetailCodeVO = new CmmnDetailCodeVO(); + cmmnDetailCodeVO.setCodeId("CC022"); + cmmnDetailCodeVO.setCode(KccadrConstants.ADR_REQ_COMP); + CmmnDetailCode cmmnDetailCode = new CmmnDetailCode(); + cmmnDetailCode = cmmnDetailCodeManageService.selectCmmnDetailCodeDetail(cmmnDetailCodeVO); + + adjReqMgrVO.setHstryCn(cmmnDetailCode.getCodeNm()); + + System.out.println("cmmnDetailCode.getCodeNm()"); + System.out.println(cmmnDetailCode.getCodeNm()); + + try { + adjReqMgrDAO.insertAdrHstry(adjReqMgrVO); // 이력 등록 + }catch(Exception ex) { + ex.printStackTrace(); + } + + } + + + + + + // 조정 마스터 정보 업데이트 + rs += adjstExpDAO.updateAdrMgrMaster(adjstReqVO); + if(KccadrConstants.ADR_MODE_SMT.equals(adjstReqVO.getMode())){ + adjstReqVO.setStatCd(KccadrConstants.ADR_REQ_COMP); // 제출완료상태 + // 수정,보완요청 상태 업데이트.. + if(StringUtils.isNotBlank(adjstReqVO.getEdtSn()) ){ + adjstReqVO.setEdtStatus("02"); // 수정, 보완 완료상태로 변경 + adjstExpDAO.updateAdrMgrEditInfo(adjstReqVO); + + + //이력관리를 위한 adr_hstry_mgr_detail - 2022-09-07 serviceImpl #1 + //이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09 + //adr_hstry_mgr에 값 넣기 - 시작 + adrHstryMgrDAO.insert4Func(adjstReqVO.getAdrSeq(), "조정신청서 제출", adjstReqVO.getStatCd() + , adjstReqVO.getFrstRegisterId() + , adjstReqVO.getLastUpdusrId() + + , p_adrHstryMgrSeq //, String p_adrHstryMgrSeq + , "U" //, String p_useCd I/U/UI/II/RE + , "ADR_EDT_REQ" //, String p_tableName + , "" //, String p_updateQuery + + ); + //adr_hstry_mgr에 값 넣기 - 끝 + + + // 보완요청을 했을경우 상태를 보완요청완료로 변경 + if("S".equals(adjstReqVO.getEdtTy())){ + adjstReqVO.setStatCd(KccadrConstants.ADR_SUPP_COMP); + } + } + rs += adjstExpDAO.updateAdrMgrMasterComplete(adjstReqVO); + + //이력관리를 위한 adr_hstry_mgr_detail - 2022-09-07 serviceImpl #1 + //이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09 + //adr_hstry_mgr에 값 넣기 - 시작 + adrHstryMgrDAO.insert4Func(adjstReqVO.getAdrSeq(), "조정신청서 제출", adjstReqVO.getStatCd() + , adjstReqVO.getFrstRegisterId() + , adjstReqVO.getLastUpdusrId() + + , p_adrHstryMgrSeq //, String p_adrHstryMgrSeq + , "U" //, String p_useCd I/U/UI/II/RE + , "ADR_MGR_MASTER" //, String p_tableName + , "" //, String p_updateQuery + + ); + //adr_hstry_mgr에 값 넣기 - 끝 + + } + return rs; + } + + + + /*===== Detail =====*/ + + @Override + public List selectAdjstReqRpplInfo(AdjstReqStatusVO adjstReqStatusVO) throws Exception { + return adjstExpDAO.selectAdjstReqRpplInfo(adjstReqStatusVO); + } + + @Override + public AdjstIncidentVO selectAdjstIncidentMaster(AdjstIncidentVO adjstIncidentVO) throws Exception { + return adjstExpDAO.selectAdjstIncidentMaster(adjstIncidentVO); + } + + + + + + /*===== 공통 =====*/ + + // 조정신청 이름, 이메일, 연락처, 주소정보 암호화 후 데이터베이스에 수정해주기 + public int cryptAdjReqRpplSendUpdate(AdjstReqVO adjstReqVO) throws Exception{ + + String rpplNm = egovCryptoUtil.encrypt(adjstReqVO.getRpplNm()); //신청인이름 + String rpplEmail = egovCryptoUtil.encrypt(adjstReqVO.getRpplEmail()); //이메일주소 + String rpplPhone = egovCryptoUtil.encrypt(adjstReqVO.getRpplPhone()); //연락처 + String rpplPost = egovCryptoUtil.encrypt(adjstReqVO.getRpplPost()); //우편번호 + String rpplAddr = egovCryptoUtil.encrypt(adjstReqVO.getRpplAddr()); //주소 + String rpplAddrDtl = egovCryptoUtil.encrypt(adjstReqVO.getRpplAddrDtl()); //상세주소 + String rpplRealPost = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealPost()); //우편물 수령지 우편번호 + String rpplRealAddr = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealAddr()); //우편물 수령지 주소 + String rpplRealAddrDtl = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealAddrDtl()); //우편물 수령지 상세주소 + + adjstReqVO.setRpplNm(rpplNm); + adjstReqVO.setRpplEmail(rpplEmail); + adjstReqVO.setRpplPhone(rpplPhone); + adjstReqVO.setRpplPost(rpplPost); + adjstReqVO.setRpplAddr(rpplAddr); + adjstReqVO.setRpplAddrDtl(rpplAddrDtl); + adjstReqVO.setRpplRealPost(rpplRealPost); + adjstReqVO.setRpplRealAddr(rpplRealAddr); + adjstReqVO.setRpplRealAddrDtl(rpplRealAddrDtl); + + //디비에 수정해 주기 + int resultCnt = adjstExpDAO.updateAdrRppl(adjstReqVO); + + return resultCnt; + } + + + // 조정신청 이름, 이메일, 연락처, 주소정보 암호화 후 데이터베이스에 입력해주기 + public int cryptAdjReqRpplSend(AdjstReqVO adjstReqVO) throws Exception{ + + String rpplNm = egovCryptoUtil.encrypt(adjstReqVO.getRpplNm()); //신청인이름 + String rpplEmail = egovCryptoUtil.encrypt(adjstReqVO.getRpplEmail()); //이메일주소 + String rpplPhone = egovCryptoUtil.encrypt(adjstReqVO.getRpplPhone()); //연락처 + String rpplPost = egovCryptoUtil.encrypt(adjstReqVO.getRpplPost()); //우편번호 + String rpplAddr = egovCryptoUtil.encrypt(adjstReqVO.getRpplAddr()); //주소 + String rpplAddrDtl = egovCryptoUtil.encrypt(adjstReqVO.getRpplAddrDtl()); //상세주소 + String rpplRealPost = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealPost()); //우편물 수령지 우편번호 + String rpplRealAddr = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealAddr()); //우편물 수령지 주소 + String rpplRealAddrDtl = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealAddrDtl()); //우편물 수령지 상세주소 + + adjstReqVO.setRpplNm(rpplNm); + adjstReqVO.setRpplEmail(rpplEmail); + adjstReqVO.setRpplPhone(rpplPhone); + adjstReqVO.setRpplPost(rpplPost); + adjstReqVO.setRpplAddr(rpplAddr); + adjstReqVO.setRpplAddrDtl(rpplAddrDtl); + adjstReqVO.setRpplRealPost(rpplRealPost); + adjstReqVO.setRpplRealAddr(rpplRealAddr); + adjstReqVO.setRpplRealAddrDtl(rpplRealAddrDtl); + + //디비에 추가해 주기 + int resultCnt = adjstExpDAO.insertAdrRppl(adjstReqVO); + + return resultCnt; + } + + @Override + public int updatedjsReqStep1Save(AdjstReqVO adjstReqVO) throws Exception { + return _updatedjsReqStep1Save(adjstReqVO); + } + + public void cryptAdjReqRpplSendMerge(AdjstReqVO adjstReqVO) throws Exception{ + String rpplNm = egovCryptoUtil.encrypt(adjstReqVO.getRpplNm()); //신청인이름 + String rpplEmail = egovCryptoUtil.encrypt(adjstReqVO.getRpplEmail()); //이메일주소 + String rpplPhone = egovCryptoUtil.encrypt(adjstReqVO.getRpplPhone()); //연락처 + String rpplPost = egovCryptoUtil.encrypt(adjstReqVO.getRpplPost()); //우편번호 + String rpplAddr = egovCryptoUtil.encrypt(adjstReqVO.getRpplAddr()); //주소 + String rpplAddrDtl = egovCryptoUtil.encrypt(adjstReqVO.getRpplAddrDtl()); //상세주소 + String rpplRealPost = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealPost()); //우편물 수령지 우편번호 + String rpplRealAddr = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealAddr()); //우편물 수령지 주소 + String rpplRealAddrDtl = egovCryptoUtil.encrypt(adjstReqVO.getRpplRealAddrDtl()); //우편물 수령지 상세주소 + + adjstReqVO.setRpplNm(rpplNm); + adjstReqVO.setRpplEmail(rpplEmail); + adjstReqVO.setRpplPhone(rpplPhone); + adjstReqVO.setRpplPost(rpplPost); + adjstReqVO.setRpplAddr(rpplAddr); + adjstReqVO.setRpplAddrDtl(rpplAddrDtl); + adjstReqVO.setRpplRealPost(rpplRealPost); + adjstReqVO.setRpplRealAddr(rpplRealAddr); + adjstReqVO.setRpplRealAddrDtl(rpplRealAddrDtl); + + //디비에 수정해 주기 + adjstExpDAO.mergeIntoAdrRppl(adjstReqVO); + } + + + + @Override + public List selectRpplList(AdjstDeputyReqVO adjDeputyReqVO) { + List list = adjstExpDAO.selectRpplList(adjDeputyReqVO); + for (CorReqVO item : list) { + decpyptVo(item); + } + return list; + } + + /** + * 신청인, 피신청인 복호화 + * + * @param result + */ + private void decpyptVo(CorReqVO result) { + + if (result != null) { + StringBuffer key = new StringBuffer(result.getRpplSeq()); + if (!StringUtil.isEmpty(result.getRpplNm())) { + result.setRpplNm(egovCryptoUtil.decrypt(result.getRpplNm())); + key.append("|" + result.getRpplNm()); + } + + //조정신청 신청인 이름 + if (!StringUtil.isEmpty(result.getAppliCantNm())) { + result.setAppliCantNm(egovCryptoUtil.decrypt(result.getAppliCantNm())); + key.append("|" + result.getAppliCantNm()); + } + + if (!StringUtil.isEmpty(result.getRpplPost())) { + result.setRpplPost(egovCryptoUtil.decrypt(result.getRpplPost())); + key.append("|" + result.getRpplPost()); + } + if (!StringUtil.isEmpty(result.getRpplAddr())) { + result.setRpplAddr(egovCryptoUtil.decrypt(result.getRpplAddr())); + key.append("|" + result.getRpplAddr()); + } + if (!StringUtil.isEmpty(result.getRpplAddrDtl())) { + result.setRpplAddrDtl(egovCryptoUtil.decrypt(result.getRpplAddrDtl())); + key.append("|" + result.getRpplAddrDtl()); + } + if (!StringUtil.isEmpty(result.getRpplPhone())) { + result.setRpplPhone(egovCryptoUtil.decrypt(result.getRpplPhone())); + if(!result.getRpplPhone().contains("-")) { + StringBuffer buff = new StringBuffer(); + buff.append(result.getRpplPhone()); + buff.insert(3, "-"); + buff.insert(8, "-"); + result.setRpplPhone(buff.toString()); + } + String phone[] = result.getRpplPhone().split("-"); + + result.setRpplPhone01(phone[0]); + result.setRpplPhone02(phone[1]); + result.setRpplPhone03(phone[2]); + key.append("|" + result.getRpplPhone()); + } + if (!StringUtil.isEmpty(result.getRpplEmail())) { + result.setRpplEmail(egovCryptoUtil.decrypt(result.getRpplEmail())); + String email[] = result.getRpplEmail().split("@"); + result.setRpplEmail01(email[0]); + result.setRpplEmail02(email[1]); + key.append("|" + result.getRpplEmail()); + } + + if (!StringUtil.isEmpty(result.getOldRpplNm())) { + result.setOldRpplNm(egovCryptoUtil.decrypt(result.getOldRpplNm())); + } + if (!StringUtil.isEmpty(result.getOldRpplPost())) { + result.setOldRpplPost(egovCryptoUtil.decrypt(result.getOldRpplPost())); + } + if (!StringUtil.isEmpty(result.getOldRpplAddr())) { + result.setOldRpplAddr(egovCryptoUtil.decrypt(result.getOldRpplAddr())); + } + if (!StringUtil.isEmpty(result.getOldRpplAddrDtl())) { + result.setOldRpplAddrDtl(egovCryptoUtil.decrypt(result.getOldRpplAddrDtl())); + } + if (!StringUtil.isEmpty(result.getOldRpplPhone())) { + result.setOldRpplPhone(egovCryptoUtil.decrypt(result.getOldRpplPhone())); + } + if (!StringUtil.isEmpty(result.getOldRpplEmail())) { + result.setOldRpplEmail(egovCryptoUtil.decrypt(result.getOldRpplEmail())); + } + + result.setSelectRpplKey(key.toString()); + } + } + +} diff --git a/src/main/java/kcc/kccadr/adjstExp/web/AdjstExpController.java b/src/main/java/kcc/kccadr/adjstExp/web/AdjstExpController.java index 0f3abdfa..f58e7e76 100644 --- a/src/main/java/kcc/kccadr/adjstExp/web/AdjstExpController.java +++ b/src/main/java/kcc/kccadr/adjstExp/web/AdjstExpController.java @@ -1,279 +1,404 @@ -package kcc.kccadr.adjstExp.web; - -import java.util.ArrayList; -import java.util.List; - -import javax.annotation.Resource; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpSession; - -import org.apache.commons.collections.CollectionUtils; -import org.apache.commons.lang3.StringUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.stereotype.Controller; -import org.springframework.ui.ModelMap; -import org.springframework.web.bind.annotation.ModelAttribute; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.servlet.ModelAndView; -import org.springframework.web.servlet.mvc.support.RedirectAttributes; - -import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; -import kcc.com.cmm.LoginVO; -import kcc.com.cmm.util.StringUtil; -import kcc.com.utl.fcc.service.EgovStringUtil; -import kcc.kccadr.accdnt.crtfc.service.CrtfcService; -import kcc.kccadr.adjst.service.AdjstReqService; -import kcc.kccadr.adjst.service.AdjstReqVO; -import kcc.kccadr.adjstExp.service.AdjstExpService; -import kcc.kccadr.cmm.KccadrConstants; -import kcc.let.uat.uia.service.SsoLoginVO; -import kcc.let.uss.umt.service.MberManageVO; -import kcc.let.utl.fcc.service.EgovCryptoUtil; - -/** - * 대국민(사용자) - * 조정신청에 관한 controller 클래스를 정의한다. - * @author 여현준 - * @since 2021.08.17 - * @version 1.0 - * @see - * - *
- * << 개정이력(Modification Information) >>
- *
- *   수정일      수정자           수정내용
- *  -------    --------    ---------------------------
- *   2021.08.17  여현준          최초 생성
- *
- * 
- */ -@Controller -public class AdjstExpController { - - // 조정신청 서비스단 -// @Resource(name = "AdjstReqExpService") -// private AdjstReqExpService adjstReqExpService; - - //공동인증서 서비스단 - @Resource(name="CrtfcService") - private CrtfcService crtfcService; - - // 조정신청 서비스단 - @Resource(name = "AdjstExpService") - private AdjstExpService adjstExpService; - - //암복호화 유틸 - @Resource(name = "egovCryptoUtil") - EgovCryptoUtil egovCryptoUtil; - - - private static final Logger LOGGER = LoggerFactory.getLogger(AdjstExpController.class); - - /** - * 조정신청 구분선택 - 안내화면 - */ - @RequestMapping("/web/kccadr/adjstExp/adjstReqRegistInformation.do") - public String adjstReqRegistInformation(@ModelAttribute("adjstReqVO") AdjstReqVO adjstReqVO, ModelMap model) throws Exception { - - - adjstReqVO.setStep(KccadrConstants.STEP6); - - // 오라클 연동 테스트 > 여현준 -// sMSOracleService.selectOracleTest(); -// AdjReqMgrVO adjReqMgrVO = new AdjReqMgrVO(); -// adjReqMgrVO.setAdrSeq("ADR_0000000000000381"); -// adjReqMgrVO.setStatCd("104010"); -// sMSOracleService.insertSmsSend(adjReqMgrVO); - - //로그인 권한정보 불러오기 - LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; - String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); - - MberManageVO mberManageVO = new MberManageVO(); - - mberManageVO.setMberId(userId); - - MberManageVO resultMberVO = crtfcService.selectMberCrtfc(mberManageVO); - - String crtfcSn = "N"; - if(StringUtil.isNotEmpty(resultMberVO.getCrtfcSn())) { - crtfcSn = "Y"; - } - - model.addAttribute("crtfcSn", crtfcSn); - - return "/web/kccadr/adjstExp/adjstReqRegistInformation"; - } - - /* - * 신청인 및 대리인 작성화면 STEP1 - * [체험하기] 신청인 및 대리인 작성화면 STEP7 - * */ - @RequestMapping("/web/kccadr/adjstExp/adjstReqRegistStep1.do") - public String adjstReqRegistStep1(@ModelAttribute("adjstReqVO") AdjstReqVO adjstReqVO, ModelMap model, RedirectAttributes redirectAttributes, HttpSession session) throws Exception { - - //로그인 권한정보 불러오기 - LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; - String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); - - SsoLoginVO ssoLoginVO = (SsoLoginVO)session.getAttribute("SSOLoginVO"); - model.addAttribute("ssoLoginVO", ssoLoginVO); - - // 작성단계 셋팅 - adjstReqVO.setStep(KccadrConstants.STEP7); - adjstReqVO.setFrstRegisterId(userId); // 최초등록자 - adjstReqVO.setLastUpdusrId(userId); // 마지막 수정자 - adjstReqVO.setEsntlId(userId); // 사용자 키 - - // 신청인 , 대리인 목록 초기화 - List list = null; - - // 조정일련번호와 카피 조정일련번호가 있다면 수정상태로 본다.. - if(StringUtils.isNotBlank(adjstReqVO.getAdrSeq()) || StringUtils.isNotBlank(adjstReqVO.getCopyAdrSeq())){ - - AdjstReqVO adjMsrMaster = adjstExpService.selectAdjsMgrMasterByUniqId(adjstReqVO); - // 대리인, 신청인 불러오기 - String rpplTyArr[] = {KccadrConstants.ADR_RPPL_TY_REQ, KccadrConstants.ADR_RPPL_TY_REQ_DEPUTY}; - adjstReqVO.setRpplTyArr(rpplTyArr); - adjstReqVO.setRpplTy(""); // 전페이지에서 넘어온 피신청값 제거... - list = adjstExpService.selectAdjsReqUserListByadjSeq(adjstReqVO); - decryptObjectAndCollection(adjMsrMaster, list); - if(CollectionUtils.isEmpty(list)){ - // 만약에 신청인과 , 대리인 없다면 오류로 발생한 데이터다 - // 그래도 처리를 해야한다면 신청인으로 등록할수있도록 처리해준다. - list = new ArrayList<>(); - AdjstReqVO req = new AdjstReqVO(); // 신청인 - req.setRpplTy(KccadrConstants.ADR_RPPL_TY_REQ); - list.add(req); - } - model.addAttribute("editInfo", adjstExpService.checkAdjsReqEditStatus(adjstReqVO)); - model.addAttribute("master", adjMsrMaster); - }else{ - // 조정일련번호가 없다면 작성상태로 본다. - // 첫번째 화면에서 대리인을 선택했다면 두로우 셋팅 - list = new ArrayList<>(); - if(KccadrConstants.ADR_RPPL_TY_REQ_DEPUTY.equals(adjstReqVO.getRpplTy())){ - AdjstReqVO duty = new AdjstReqVO(); // 대리인 - duty.setRpplTy(KccadrConstants.ADR_RPPL_TY_REQ_DEPUTY); - AdjstReqVO req = new AdjstReqVO(); // 신청인 - req.setRpplTy(KccadrConstants.ADR_RPPL_TY_REQ); - - list.add(duty); // 화면상 대리인이 존재한다면 대리인 부터 보여야하기 때문에 첫번째로 셋팅해줘야한다. - list.add(req); - }else if(KccadrConstants.ADR_RPPL_TY_REQ.equals(adjstReqVO.getRpplTy())){ - AdjstReqVO req = new AdjstReqVO(); // 신청인 - req.setRpplTy(KccadrConstants.ADR_RPPL_TY_REQ); - list.add(req); - } - } - model.addAttribute("list", list); // 조정사건폼 - return "/web/kccadr/adjstExp/adjstReqRegistStep1"; - } - - - @RequestMapping(value = {"/web/kccadr/adjstExp/adjstReqRegistStep1Save.do"}, method = RequestMethod.POST) - public ModelAndView adjReqMgrRegSecurityStatusChange(HttpServletRequest request , @RequestBody AdjstReqVO adjstReqVO) throws Exception { - ModelAndView modelAndView = new ModelAndView(); - modelAndView.setViewName("jsonView"); - - //로그인 권한정보 불러오기 - LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; - String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); - - adjstReqVO.setFrstRegisterId(userId); - adjstReqVO.setLastUpdusrId(userId); - - int rs = adjstExpService.insertAdjsReqStep1Save(adjstReqVO); - - modelAndView.addObject("result", KccadrConstants.SUCCESS); // 성공메세지 - modelAndView.addObject("rsVO", adjstReqVO); // 성공데이터 - modelAndView.addObject("rs", rs); // 삽입 개수 - return modelAndView; - } - - - - @RequestMapping(value = {"/web/kccadr/adjstExp/adjstReqRegistStep1Update.do"}, method = RequestMethod.POST) - public ModelAndView adjstReqRegistStep1Update(HttpServletRequest request , @RequestBody AdjstReqVO adjstReqVO) throws Exception { - ModelAndView modelAndView = new ModelAndView(); - modelAndView.setViewName("jsonView"); - - //로그인 권한정보 불러오기 - LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; - String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); - - adjstReqVO.setFrstRegisterId(userId); - adjstReqVO.setLastUpdusrId(userId); - - int rs = adjstExpService.updatedjsReqStep1Save(adjstReqVO); - - modelAndView.addObject("result", KccadrConstants.SUCCESS); // 성공메세지 - modelAndView.addObject("rsVO", adjstReqVO); // 성공데이터 - modelAndView.addObject("rs", rs); // 삽입 개수 - return modelAndView; - } - - - - - - - - - - - - - - public void decryptObjectAndCollection(AdjstReqVO adjstReqVO, List list){ - if(adjstReqVO != null){ - decryptInfo(adjstReqVO); - } - if(CollectionUtils.isNotEmpty(list)){ - for(AdjstReqVO model : list){ - decryptInfo(model); - } - } - } - - - public void decryptInfo(AdjstReqVO adjstReqVO){ - String rpplNm = egovCryptoUtil.decrypt(adjstReqVO.getRpplNm()); //신청인이름 - String rpplEmail = egovCryptoUtil.decrypt(adjstReqVO.getRpplEmail()); //이메일주소 - String rpplPhone = egovCryptoUtil.decrypt(adjstReqVO.getRpplPhone()); //연락처 - String rpplPost = egovCryptoUtil.decrypt(adjstReqVO.getRpplPost()); //우편번호 - String rpplAddr = egovCryptoUtil.decrypt(adjstReqVO.getRpplAddr()); //주소 - String rpplAddrDtl = egovCryptoUtil.decrypt(adjstReqVO.getRpplAddrDtl()); //상세주소 - String rpplRealPost = egovCryptoUtil.decrypt(adjstReqVO.getRpplRealPost()); //우편물 수령지 우편번호 - String rpplRealAddr = egovCryptoUtil.decrypt(adjstReqVO.getRpplRealAddr()); //우편물 수령지 주소 - String rpplRealAddrDtl = egovCryptoUtil.decrypt(adjstReqVO.getRpplRealAddrDtl()); //우편물 수령지 상세주소 - - // 피신청인 다중으로 가져왔을때.. - if(StringUtils.isNotBlank(adjstReqVO.getResPonDentNms())){ - String[] resNms = adjstReqVO.getResPonDentNms().split("\\|"); - if(resNms.length > 1 ){ - List names = new ArrayList<>(); - for(String name : resNms){ - names.add(egovCryptoUtil.decrypt(name)); - } - adjstReqVO.setResPonDentNms(String.join(",", names)); - }else{ - adjstReqVO.setResPonDentNms(egovCryptoUtil.decrypt(resNms[0])); - } - } - - adjstReqVO.setRpplNm(rpplNm); - adjstReqVO.setRpplEmail(rpplEmail); - adjstReqVO.setRpplPhone(rpplPhone); - adjstReqVO.setRpplPost(rpplPost); - adjstReqVO.setRpplAddr(rpplAddr); - adjstReqVO.setRpplAddrDtl(rpplAddrDtl); - adjstReqVO.setRpplRealPost(rpplRealPost); - adjstReqVO.setRpplRealAddr(rpplRealAddr); - adjstReqVO.setRpplRealAddrDtl(rpplRealAddrDtl); - } - -} +package kcc.kccadr.adjstExp.web; + +import java.util.ArrayList; +import java.util.List; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; + +import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Controller; +import org.springframework.ui.ModelMap; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import org.springframework.web.servlet.mvc.support.RedirectAttributes; + +import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; +import kcc.com.cmm.LoginVO; +import kcc.com.cmm.service.EgovFileMngService; +import kcc.com.cmm.service.FileVO; +import kcc.com.cmm.util.StringUtil; +import kcc.com.utl.fcc.service.EgovStringUtil; +import kcc.kccadr.accdnt.crtfc.service.CrtfcService; +import kcc.kccadr.adjst.service.AdjstReqVO; +import kcc.kccadr.adjstExp.service.AdjstExpService; +import kcc.kccadr.cmm.KccadrConstants; +import kcc.let.uat.uia.service.SsoLoginVO; +import kcc.let.uss.umt.service.MberManageVO; +import kcc.let.utl.fcc.service.EgovCryptoUtil; + +/** + * 대국민 체험 기능(사용자) + * 체험기능 신청 컨트롤러 + * @author 이호영 + * @since 2022.09.01 + * @version 1.0 + * @see + * + *
+ * << 개정이력(Modification Information) >>
+ *
+ *   수정일		수정자		수정내용
+ *  -------		--------    ---------------------------
+ *  22.09.01	이호영		최초 생성
+ *
+ * 
+ */ +@Controller +public class AdjstExpController { + + // 조정신청 서비스단 +// @Resource(name = "AdjstReqExpService") +// private AdjstReqExpService adjstReqExpService; + + //공동인증서 서비스단 + @Resource(name="CrtfcService") + private CrtfcService crtfcService; + + // 조정신청 서비스단 + @Resource(name = "AdjstExpService") + private AdjstExpService adjstExpService; + + //암복호화 유틸 + @Resource(name = "egovCryptoUtil") + EgovCryptoUtil egovCryptoUtil; + + @Resource(name = "EgovFileMngService") + private EgovFileMngService fileService; + + + private static final Logger LOGGER = LoggerFactory.getLogger(AdjstExpController.class); + + /** + * 조정신청 구분선택 - 안내화면 + */ + @RequestMapping("/web/kccadr/adjstExp/adjstReqRegistInformation.do") + public String adjstReqRegistInformation(@ModelAttribute("adjstReqVO") AdjstReqVO adjstReqVO, ModelMap model) throws Exception { + + + adjstReqVO.setStep(KccadrConstants.STEP6); + + // 오라클 연동 테스트 > 여현준 +// sMSOracleService.selectOracleTest(); +// AdjReqMgrVO adjReqMgrVO = new AdjReqMgrVO(); +// adjReqMgrVO.setAdrSeq("ADR_0000000000000381"); +// adjReqMgrVO.setStatCd("104010"); +// sMSOracleService.insertSmsSend(adjReqMgrVO); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); + + MberManageVO mberManageVO = new MberManageVO(); + + mberManageVO.setMberId(userId); + + MberManageVO resultMberVO = crtfcService.selectMberCrtfc(mberManageVO); + + String crtfcSn = "N"; + if(StringUtil.isNotEmpty(resultMberVO.getCrtfcSn())) { + crtfcSn = "Y"; + } + + model.addAttribute("crtfcSn", crtfcSn); + + return "/web/kccadr/adjstExp/adjstReqRegistInformation"; + } + + /* + * 신청인 및 대리인 작성화면 STEP1 + * [체험하기] 신청인 및 대리인 작성화면 STEP7 + * */ + @RequestMapping("/web/kccadr/adjstExp/adjstReqRegistStep1.do") + public String adjstReqRegistStep1(@ModelAttribute("adjstReqVO") AdjstReqVO adjstReqVO, ModelMap model, RedirectAttributes redirectAttributes, HttpSession session) throws Exception { + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); + + SsoLoginVO ssoLoginVO = (SsoLoginVO)session.getAttribute("SSOLoginVO"); + model.addAttribute("ssoLoginVO", ssoLoginVO); + + // 작성단계 셋팅 + adjstReqVO.setStep(KccadrConstants.STEP7); + adjstReqVO.setFrstRegisterId(userId); // 최초등록자 + adjstReqVO.setLastUpdusrId(userId); // 마지막 수정자 + adjstReqVO.setEsntlId(userId); // 사용자 키 + + // 신청인 , 대리인 목록 초기화 + List list = null; + + // 조정일련번호와 카피 조정일련번호가 있다면 수정상태로 본다.. + if(StringUtils.isNotBlank(adjstReqVO.getAdrSeq()) || StringUtils.isNotBlank(adjstReqVO.getCopyAdrSeq())){ + + AdjstReqVO adjMsrMaster = adjstExpService.selectAdjsMgrMasterByUniqId(adjstReqVO); + // 대리인, 신청인 불러오기 + String rpplTyArr[] = {KccadrConstants.ADR_RPPL_TY_REQ, KccadrConstants.ADR_RPPL_TY_REQ_DEPUTY}; + adjstReqVO.setRpplTyArr(rpplTyArr); + adjstReqVO.setRpplTy(""); // 전페이지에서 넘어온 피신청값 제거... + list = adjstExpService.selectAdjsReqUserListByadjSeq(adjstReqVO); + decryptObjectAndCollection(adjMsrMaster, list); + if(CollectionUtils.isEmpty(list)){ + // 만약에 신청인과 , 대리인 없다면 오류로 발생한 데이터다 + // 그래도 처리를 해야한다면 신청인으로 등록할수있도록 처리해준다. + list = new ArrayList<>(); + AdjstReqVO req = new AdjstReqVO(); // 신청인 + req.setRpplTy(KccadrConstants.ADR_RPPL_TY_REQ); + list.add(req); + } + model.addAttribute("editInfo", adjstExpService.checkAdjsReqEditStatus(adjstReqVO)); + model.addAttribute("master", adjMsrMaster); + }else{ + // 조정일련번호가 없다면 작성상태로 본다. + // 첫번째 화면에서 대리인을 선택했다면 두로우 셋팅 + list = new ArrayList<>(); + if(KccadrConstants.ADR_RPPL_TY_REQ_DEPUTY.equals(adjstReqVO.getRpplTy())){ + AdjstReqVO duty = new AdjstReqVO(); // 대리인 + duty.setRpplTy(KccadrConstants.ADR_RPPL_TY_REQ_DEPUTY); + AdjstReqVO req = new AdjstReqVO(); // 신청인 + req.setRpplTy(KccadrConstants.ADR_RPPL_TY_REQ); + + list.add(duty); // 화면상 대리인이 존재한다면 대리인 부터 보여야하기 때문에 첫번째로 셋팅해줘야한다. + list.add(req); + }else if(KccadrConstants.ADR_RPPL_TY_REQ.equals(adjstReqVO.getRpplTy())){ + AdjstReqVO req = new AdjstReqVO(); // 신청인 + req.setRpplTy(KccadrConstants.ADR_RPPL_TY_REQ); + list.add(req); + } + } + model.addAttribute("list", list); // 조정사건폼 + return "/web/kccadr/adjstExp/adjstReqRegistStep1"; + } + + + @RequestMapping(value = {"/web/kccadr/adjstExp/adjstReqRegistStep1Save.do"}, method = RequestMethod.POST) + public ModelAndView adjstReqRegistStep1Save(HttpServletRequest request , @RequestBody AdjstReqVO adjstReqVO) throws Exception { + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); + + adjstReqVO.setFrstRegisterId(userId); + adjstReqVO.setLastUpdusrId(userId); + + int rs = adjstExpService.insertAdjsReqStep1Save(adjstReqVO); + LOGGER.info("adjstReqVO.getAdrSeq() : [{}]", adjstReqVO.getAdrSeq()); + + modelAndView.addObject("result", KccadrConstants.SUCCESS); // 성공메세지 + modelAndView.addObject("rsVO", adjstReqVO); // 성공데이터 + modelAndView.addObject("rs", rs); // 삽입 개수 + return modelAndView; + } + + @RequestMapping(value = {"/web/kccadr/adjstExp/adjstReqRegistStep1Update.do"}, method = RequestMethod.POST) + public ModelAndView adjstReqRegistStep1Update(HttpServletRequest request , @RequestBody AdjstReqVO adjstReqVO) throws Exception { + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); + + adjstReqVO.setFrstRegisterId(userId); + adjstReqVO.setLastUpdusrId(userId); + + int rs = adjstExpService.updatedjsReqStep1Save(adjstReqVO); + + modelAndView.addObject("result", KccadrConstants.SUCCESS); // 성공메세지 + modelAndView.addObject("rsVO", adjstReqVO); // 성공데이터 + modelAndView.addObject("rs", rs); // 삽입 개수 + return modelAndView; + } + + /* + * 피신청인 작성화면 STEP2 + * */ + @RequestMapping("/web/kccadr/adjstExp/adjstReqRegistStep2.do") + public String adjstReqRegistStep2(@ModelAttribute("adjstReqVO") AdjstReqVO adjstReqVO, ModelMap model) throws Exception { + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); + + if (loginVO == null) { + + model.addAttribute("msg", "로그인 해주세요."); + return "redirect:/web/user/login/ssoLogin.do"; + } + LOGGER.info("adjstReqRegistStep2 getAdrSeq() : [{}]", adjstReqVO.getAdrSeq()); + + // 작성단계 셋팅 + adjstReqVO.setStep(KccadrConstants.STEP8); + adjstReqVO.setFrstRegisterId(userId); // 최초등록자 + adjstReqVO.setLastUpdusrId(userId); // 마지막 수정자 + adjstReqVO.setEsntlId(userId); // 사용자 키 + + AdjstReqVO adjMsrMaster = adjstExpService.selectAdjsMgrMasterByUniqId(adjstReqVO); + // 피신청인 목록조회.. + String rpplTyArr[] = {KccadrConstants.ADR_RPPL_TY_RES}; + adjstReqVO.setRpplTyArr(rpplTyArr); + List list = adjstExpService.selectAdjsReqUserListByadjSeq(adjstReqVO); + + // 개인정보 복호화 처리.. + decryptObjectAndCollection(adjMsrMaster, list); + model.addAttribute("editInfo", adjstExpService.checkAdjsReqEditStatus(adjstReqVO)); + model.addAttribute("master", adjMsrMaster); + model.addAttribute("list", list); + return "/web/kccadr/adjstExp/adjstReqRegistStep2"; + } + + @RequestMapping(value = {"/web/kccadr/adjstExp/adjstReqRegistStep2Save.do"}, method = RequestMethod.POST) + public ModelAndView adjstReqRegistStep2Save(HttpServletRequest request , @RequestBody AdjstReqVO adjstReqVO) throws Exception { + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); + + adjstReqVO.setFrstRegisterId(userId); + adjstReqVO.setLastUpdusrId(userId); + + int rs = adjstExpService.insertAdjsReqStep2Save(adjstReqVO); + + modelAndView.addObject("result", KccadrConstants.SUCCESS); // 성공메세지 + modelAndView.addObject("rsVO", adjstReqVO); // 성공데이터 + //modelAndView.addObject("rs", rs); // 삽입 개수 + return modelAndView; + } + + + /* + * 조정신청 정보 작성화면 STEP3 + * */ + @RequestMapping("/web/kccadr/adjstExp/adjstReqRegistStep3.do") + public String adjstReqRegistStep3(@ModelAttribute("adjstReqVO") AdjstReqVO adjstReqVO, ModelMap model, RedirectAttributes redirectAttributes) throws Exception { + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); + + // 작성단계 셋팅 + adjstReqVO.setStep(KccadrConstants.STEP9); + adjstReqVO.setFrstRegisterId(userId); // 최초등록자 + adjstReqVO.setLastUpdusrId(userId); // 마지막 수정자 + adjstReqVO.setEsntlId(userId); // 사용자 키 + AdjstReqVO adjMsrMaster = adjstExpService.selectAdjsMgrMasterByUniqId(adjstReqVO); + if(StringUtils.isNotBlank(adjMsrMaster.getAtchFileId())){ + FileVO fileVO = new FileVO(); + fileVO.setAtchFileId(adjMsrMaster.getAtchFileId()); + List fileList = fileService.selectFileInfs(fileVO); + model.addAttribute("fileList", fileList); + } + model.addAttribute("editInfo", adjstExpService.checkAdjsReqEditStatus(adjstReqVO)); + model.addAttribute("master", adjMsrMaster); + return "/web/kccadr/adjstExp/adjstReqRegistStep3"; + } + + @RequestMapping("/web/kccadr/adjstExp/adjstReqRegistStep3Save.do") + public ModelAndView adjstReqRegistStep3Save( + @ModelAttribute("adjstReqVO") AdjstReqVO adjstReqVO + , final MultipartHttpServletRequest multiRequest + ) throws Exception { + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); + adjstReqVO.setFrstRegisterId(userId); + adjstReqVO.setLastUpdusrId(userId); + int rs = adjstExpService.updateMasterInfo(adjstReqVO + , multiRequest + , "" + ); + modelAndView.addObject("result", KccadrConstants.SUCCESS); // 성공메세지 + modelAndView.addObject("rsVO", adjstReqVO); // 성공메세지 + return modelAndView; + } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + public void decryptObjectAndCollection(AdjstReqVO adjstReqVO, List list){ + if(adjstReqVO != null){ + decryptInfo(adjstReqVO); + } + if(CollectionUtils.isNotEmpty(list)){ + for(AdjstReqVO model : list){ + decryptInfo(model); + } + } + } + + + public void decryptInfo(AdjstReqVO adjstReqVO){ + String rpplNm = egovCryptoUtil.decrypt(adjstReqVO.getRpplNm()); //신청인이름 + String rpplEmail = egovCryptoUtil.decrypt(adjstReqVO.getRpplEmail()); //이메일주소 + String rpplPhone = egovCryptoUtil.decrypt(adjstReqVO.getRpplPhone()); //연락처 + String rpplPost = egovCryptoUtil.decrypt(adjstReqVO.getRpplPost()); //우편번호 + String rpplAddr = egovCryptoUtil.decrypt(adjstReqVO.getRpplAddr()); //주소 + String rpplAddrDtl = egovCryptoUtil.decrypt(adjstReqVO.getRpplAddrDtl()); //상세주소 + String rpplRealPost = egovCryptoUtil.decrypt(adjstReqVO.getRpplRealPost()); //우편물 수령지 우편번호 + String rpplRealAddr = egovCryptoUtil.decrypt(adjstReqVO.getRpplRealAddr()); //우편물 수령지 주소 + String rpplRealAddrDtl = egovCryptoUtil.decrypt(adjstReqVO.getRpplRealAddrDtl()); //우편물 수령지 상세주소 + + // 피신청인 다중으로 가져왔을때.. + if(StringUtils.isNotBlank(adjstReqVO.getResPonDentNms())){ + String[] resNms = adjstReqVO.getResPonDentNms().split("\\|"); + if(resNms.length > 1 ){ + List names = new ArrayList<>(); + for(String name : resNms){ + names.add(egovCryptoUtil.decrypt(name)); + } + adjstReqVO.setResPonDentNms(String.join(",", names)); + }else{ + adjstReqVO.setResPonDentNms(egovCryptoUtil.decrypt(resNms[0])); + } + } + + adjstReqVO.setRpplNm(rpplNm); + adjstReqVO.setRpplEmail(rpplEmail); + adjstReqVO.setRpplPhone(rpplPhone); + adjstReqVO.setRpplPost(rpplPost); + adjstReqVO.setRpplAddr(rpplAddr); + adjstReqVO.setRpplAddrDtl(rpplAddrDtl); + adjstReqVO.setRpplRealPost(rpplRealPost); + adjstReqVO.setRpplRealAddr(rpplRealAddr); + adjstReqVO.setRpplRealAddrDtl(rpplRealAddrDtl); + } +} diff --git a/src/main/java/kcc/kccadr/adjstExp/web/AdjstExpDetailController.java b/src/main/java/kcc/kccadr/adjstExp/web/AdjstExpDetailController.java new file mode 100644 index 00000000..8f2dab17 --- /dev/null +++ b/src/main/java/kcc/kccadr/adjstExp/web/AdjstExpDetailController.java @@ -0,0 +1,303 @@ +package kcc.kccadr.adjstExp.web; + +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; +import java.util.stream.Collectors; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; + +import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Controller; +import org.springframework.ui.ModelMap; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import org.springframework.web.servlet.mvc.support.RedirectAttributes; + +import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; +import kcc.com.cmm.LoginVO; +import kcc.com.cmm.service.EgovFileMngService; +import kcc.com.cmm.service.FileVO; +import kcc.com.cmm.util.StringUtil; +import kcc.com.utl.fcc.service.EgovStringUtil; +import kcc.kccadr.accdnt.acd.service.AdjstChangeDateVO; +import kcc.kccadr.accdnt.adr.service.AdjstDeputyReqVO; +import kcc.kccadr.accdnt.ai.service.AdjstIncidentVO; +import kcc.kccadr.accdnt.ars.service.AdjstReqStatusVO; +import kcc.kccadr.accdnt.crtfc.service.CrtfcService; +import kcc.kccadr.adjclsmgr.service.AdjClsMgrVO; +import kcc.kccadr.adjst.service.AdjstReqService; +import kcc.kccadr.adjst.service.AdjstReqVO; +import kcc.kccadr.adjstExp.service.AdjstExpService; +import kcc.kccadr.cmm.KccadrConstants; +import kcc.let.uat.uia.service.SsoLoginVO; +import kcc.let.uss.umt.service.MberManageVO; +import kcc.let.utl.fcc.service.EgovCryptoUtil; + +/** + * 대국민 체험 기능(사용자) + * 체험기능 컨트롤러 상세 + * @author 이호영 + * @since 2022.09.01 + * @version 1.0 + * @see + * + *
+ * << 개정이력(Modification Information) >>
+ *
+ *   수정일		수정자		수정내용
+ *  -------		--------    ---------------------------
+ *  22.09.01	이호영		최초 생성
+ *
+ * 
+ */ +@Controller +public class AdjstExpDetailController { + + // 조정신청 서비스단 +// @Resource(name = "AdjstReqExpService") +// private AdjstReqExpService adjstReqExpService; + + //공동인증서 서비스단 + @Resource(name="CrtfcService") + private CrtfcService crtfcService; + + // 조정신청 서비스단 + @Resource(name = "AdjstExpService") + private AdjstExpService adjstExpService; + + //암복호화 유틸 + @Resource(name = "egovCryptoUtil") + EgovCryptoUtil egovCryptoUtil; + + @Resource(name = "EgovFileMngService") + private EgovFileMngService fileService; + + + private static final Logger LOGGER = LoggerFactory.getLogger(AdjstExpDetailController.class); + + + /** + * 조정진행 상세 화면 + */ + @RequestMapping("/web/kccadr/adjstExpDetail/adjstReqStatusDetail.do") + public String adjstReqStatusDetail(@ModelAttribute("adjstReqStatusVO") AdjstReqStatusVO adjstReqStatusVO, ModelMap model) throws Exception { + return "/web/kccadr/adjstExpDetail/adjstReqStatusDetail"; + } + + /** + * 조정진행 상세 Tab 조정상세 화면 + */ + @RequestMapping("/web/kccadr/adjstExpDetail/tab/adjstReqStatusTabDetail.do") + public String adjstReqStatusTabDetail( + @ModelAttribute("adjstReqStatusVO") AdjstReqStatusVO adjstReqStatusVO + , @ModelAttribute("adjstIncidentVO") AdjstIncidentVO adjstIncidentVO + , ModelMap model) throws Exception { + + + + // 조정신청 관련인 조회 + List list = adjstExpService.selectAdjstReqRpplInfo(adjstReqStatusVO); + +// System.out.println("=============================== ============"); +// list.stream().forEach(t -> System.out.println(" :::: "+t.getRpplUsrTyNm())); + + // 신청인 추출 + Optional reqInfo = list.stream().filter(t -> t.getRpplTy().equals(KccadrConstants.ADR_RPPL_TY_REQ)).findFirst(); + + // 대리인 추출 + Optional agenInfo = list.stream().filter(t -> t.getRpplTy().equals(KccadrConstants.ADR_RPPL_TY_REQ_DEPUTY)).findFirst(); + + AdjstReqStatusVO reqPeson = reqInfo.isPresent() ? reqInfo.get() : null; + + AdjstReqStatusVO agenPerson = agenInfo.isPresent() ? agenInfo.get() : null; + + this.decryptInfomation(null, reqPeson); + + this.decryptInfomation(null, agenPerson); + + // 피신청인 추출 + List resInfo = list.stream().filter(t -> t.getRpplTy().equals(KccadrConstants.ADR_RPPL_TY_RES)).collect(Collectors.toList()); + + // 기일 예정일 정보 불러오기 - 업무 담당자가 등록하 최근의 데이터 불러오기 + + +// model.addAttribute("apmChgInfo", adjstExpService.selectApmChgDateInfo(adjstIncidentVO)); + + decryptInfomation(resInfo, null); + + model.addAttribute("master" , adjstExpService.selectAdjstIncidentMaster(adjstIncidentVO)); + model.addAttribute("pageExpIndex" , StringUtils.isEmpty(adjstReqStatusVO.getPageExpIndex()) ? "2" : adjstReqStatusVO.getPageExpIndex()); + model.addAttribute("reqInfo" , reqPeson); + model.addAttribute("agenInfo" , agenPerson); + model.addAttribute("resInfo" , resInfo); + return "/web/kccadr/adjstExpDetail/adjstReqStatusTabDetail"; + } + /** + * 조정진행 상세 Tab 사건진행 화면 + */ + @RequestMapping("/web/kccadr/adjstExpDetail/tab/adjstReqStatusTabStatus.do") + public String adjstReqStatusTabStatus() throws Exception { + return "/web/kccadr/adjstExpDetail/adjstReqStatusTabStatus"; + } + /** + * 조정진행 상세 Tab 조정기록 화면 + */ + @RequestMapping("/web/kccadr/adjstExpDetail/tab/adjstReqStatusTabNormal.do") + public String adjstReqStatusTabNormal() throws Exception { + return "/web/kccadr/adjstExpDetail/adjstReqStatusTabNormal"; + } + + /** + * 조정신청 구분선택 - 안내화면 + */ + @RequestMapping("/web/kccadr/adjstExpDetail/popup/openExpExamplePop.do") + public String adjstReqOpenAnswerExamplePop(@ModelAttribute("adjDeputyReqVO") AdjstDeputyReqVO adjDeputyReqVO, ModelMap model) throws Exception { + + String returnUrl = "/web/kccadr/adjstExpDetail/"; + + /* + 공통 + - 답변서 제출 - 01 + 기일지정 + - 조정 대리인 신청 - 02 + - 기일변경 요청 - 03 + - 조정 취하 신청 - 04 + - 경정신청 - 05 + 기일개최 + - 조정 취하 신청 + - 경정신청 + 조정중(직권조정) + - 이의신청 + - 직권조정 결정서 상세 - 06 + */ + + + + System.out.println("adjDeputyReqVO.getExpCode() :: "+ adjDeputyReqVO.getExpCode()); + + String expCode = adjDeputyReqVO.getExpCode(); + + switch (expCode) { + case "01": returnUrl += "expAnsSubmit"; + break; + case "02": returnUrl += "expAdjstDeputyReqCreate"; + break; + case "03": returnUrl += "expAdjstChangeDateCreate"; + model.addAttribute("adjstChangeDateVO" , new AdjstChangeDateVO()); + break; + case "04": returnUrl += "expAdjstWithDrawCreate"; + break; + case "05": returnUrl += "expCorReqCreate"; // 경정신청 + model.addAttribute("list", adjstExpService.selectRpplList(adjDeputyReqVO)); // 피신청인 리스트 + break; + case "06": returnUrl += "expOadDetail"; // 직권조정결정서 상세 + break; + case "07": returnUrl += "expOjctRegist"; // 이의 신청 + break; + default: returnUrl += "expAnsSubmit"; + break; + } + + return returnUrl; + } + + + // 기록열람, 조정조서 발급 요청 팝업 + + @RequestMapping(value = "/web/kccadr/adjstExpDetail/popup/docIssReqViewPop.do") + public String docIssReqViewPop(@ModelAttribute("adjClsMgrVO") AdjClsMgrVO adjClsMgrVO, ModelMap model) throws Exception { +// model.addAttribute("security", adjReqMgrService.selectAdjstReqSecurityInfo(param)); + return "/web/kccadr/adjstExpDetail/docIssReqViewPop"; + } + + /** + * 조정대리신청 화면 + */ + @RequestMapping("/web/kccadr/adjstExpDetail/popup/adjstDeputyReqCreate.do") + public String adjstDeputyReqCreate(@ModelAttribute("adjDeputyReqVO") AdjstDeputyReqVO adjDeputyReqVO, ModelMap model) throws Exception { + return "/web/kccadr/adjstExpDetail/adjstDeputyReqCreate"; + } + + + + + + + + + + + + + + + + + + + + + + + public void decryptInfomation(List list, AdjstReqStatusVO info){ + if(CollectionUtils.isNotEmpty(list)){ + for(AdjstReqStatusVO model : list){ + model.setRpplNm(egovCryptoUtil.decrypt(model.getRpplNm())); + model.setRpplAddr(egovCryptoUtil.decrypt(model.getRpplAddr())); + model.setRpplAddrDtl(egovCryptoUtil.decrypt(model.getRpplAddrDtl())); + model.setRpplPost(egovCryptoUtil.decrypt(model.getRpplPost())); + model.setRpplEmail(egovCryptoUtil.decrypt(model.getRpplEmail())); + model.setRpplPhone(egovCryptoUtil.decrypt(model.getRpplPhone())); + model.setRpplRealPost(egovCryptoUtil.decrypt(model.getRpplRealPost())); + model.setRpplRealAddr(egovCryptoUtil.decrypt(model.getRpplRealAddr())); + model.setRpplRealAddrDtl(egovCryptoUtil.decrypt(model.getRpplRealAddrDtl())); + + + model.setDepuTyNm(egovCryptoUtil.decrypt(model.getDepuTyNm())); +// model.setResPonDentNm(egovCryptoUtil.decrypt(model.getResPonDentNm())); + //피신청인 명수 표시 '외 N명' 처리_이준호_220801 + if (!StringUtil.isEmpty(model.getResPonDentNm())) { + String tmpStr = ""; + if(model.getResPonDentNm().contains("외")) { + tmpStr = model.getResPonDentNm().substring(model.getResPonDentNm().length()-3); + } + model.setResPonDentNm(egovCryptoUtil.decrypt(model.getResPonDentNm()) + " " + tmpStr); + } + model.setAppliCantNm(egovCryptoUtil.decrypt(model.getAppliCantNm())); + + } + } + + if(info != null){ + info.setRpplNm(egovCryptoUtil.decrypt(info.getRpplNm())); + info.setRpplAddr(egovCryptoUtil.decrypt(info.getRpplAddr())); + info.setRpplAddrDtl(egovCryptoUtil.decrypt(info.getRpplAddrDtl())); + info.setRpplPost(egovCryptoUtil.decrypt(info.getRpplPost())); + info.setRpplEmail(egovCryptoUtil.decrypt(info.getRpplEmail())); + info.setRpplPhone(egovCryptoUtil.decrypt(info.getRpplPhone())); + info.setDepuTyNm(egovCryptoUtil.decrypt(info.getDepuTyNm())); + info.setResPonDentNm(egovCryptoUtil.decrypt(info.getResPonDentNm())); + info.setAppliCantNm(egovCryptoUtil.decrypt(info.getAppliCantNm())); + info.setRpplRealPost(egovCryptoUtil.decrypt(info.getRpplRealPost())); + info.setRpplRealAddr(egovCryptoUtil.decrypt(info.getRpplRealAddr())); + info.setRpplRealAddrDtl(egovCryptoUtil.decrypt(info.getRpplRealAddrDtl())); + } + } + + + + + + + +} diff --git a/src/main/java/kcc/kccadr/ozSchd/web/OzSchdExportUtil.java b/src/main/java/kcc/kccadr/ozSchd/web/OzSchdExportUtil.java index 1c3f79c9..f4bbef3c 100644 --- a/src/main/java/kcc/kccadr/ozSchd/web/OzSchdExportUtil.java +++ b/src/main/java/kcc/kccadr/ozSchd/web/OzSchdExportUtil.java @@ -22,9 +22,9 @@ public class OzSchdExportUtil { //개발서버 및 운영서버 구분에 따른 서버 정보 셋팅 String serverNm = request.getServerName(); - if(serverNm.contains("localhost") || serverNm.contains("219.240.88.15")) { + if(serverNm.contains("localhost") || serverNm.contains("219.240.88.15") || serverNm.contains("iten.co.kr")) { - ozApiUrl = "http://219.240.88.15:8091/oz80/server"; + ozApiUrl = "http://192.168.0.125:8091/oz80/server"; ozApiIp = "192.168.0.125"; }else { diff --git a/src/main/java/kcc/web/MainController.java b/src/main/java/kcc/web/MainController.java index 8322892d..3023cd59 100644 --- a/src/main/java/kcc/web/MainController.java +++ b/src/main/java/kcc/web/MainController.java @@ -417,6 +417,8 @@ public class MainController { popupzoneVo.setFirstIndex(0); popupzoneVo.setSeCd("02"); //좌측팝업 popupzoneVo.setUseYn("Y"); + popupzoneVo.setSearchSortCnd("MB.sort"); + popupzoneVo.setSearchSortOrd("ASC"); List popupzoneList = egovPopupManageService.selectPopupzoneList(popupzoneVo); model.addAttribute("popupzoneList", popupzoneList); @@ -1276,6 +1278,7 @@ public class MainController { if(menuUrl.equals("/web/cop/org/selectOrgDetail.do")){ menuUrl = "/web/cop/org/selectOrgList.do" ; }else if(menuUrl.equals("/web/kccadr/accdnt/ars/adjstReqStatusDetail.do") + || menuUrl.equals("/web/kccadr/adjstExpDetail/adjstReqStatusDetail.do") || menuUrl.equals("/web/kccadr/accdnt/acd/adjstChangeDateList.do") || menuUrl.equals("/web/kccadr/accdnt/acd/adjstChangeDateCreate.do") || menuUrl.equals("/web/kccadr/accdnt/arc/corReqList.do") diff --git a/src/main/resources/egovframework/egovProps/globals_local.properties b/src/main/resources/egovframework/egovProps/globals_local.properties index 92babf02..44070cae 100644 --- a/src/main/resources/egovframework/egovProps/globals_local.properties +++ b/src/main/resources/egovframework/egovProps/globals_local.properties @@ -33,8 +33,8 @@ Globals.DriverClassName=cubrid.jdbc.driver.CUBRIDDriver #\ud074\ub77c\uc6b0\ub4dc \uc11c\ubc84 #Globals.Url=jdbc:cubrid:158.247.225.133:30000:kcc_adrs4:::?charset=utf8 #\uac1c\ubc1c\uc11c\ubc84 -#Globals.Url=jdbc:cubrid:192.168.0.176:30000:cubdb:::?charset=utf8 -Globals.Url=jdbc:cubrid:119.193.215.98:30000:kcc_adr_advc:::?charset=utf8 +Globals.Url=jdbc:CUBRID:119.193.215.98:30000:kcc_adr_advc:::?charset=utf8 + #\uc2e4\uc11c\ubc84 #Globals.Url=jdbc:cubrid:192.168.39.14:30000:kcc_adrs4:::?charset=utf8 diff --git a/src/main/resources/egovframework/spring/com/context-idgen.xml b/src/main/resources/egovframework/spring/com/context-idgen.xml index b6576c23..56826d8f 100644 --- a/src/main/resources/egovframework/spring/com/context-idgen.xml +++ b/src/main/resources/egovframework/spring/com/context-idgen.xml @@ -2688,6 +2688,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + diff --git a/src/main/resources/egovframework/sqlmap/kccadr/adjstExp/AdjstExp_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/kccadr/adjstExp/AdjstExp_SQL_Mysql.xml index 7e9aaa98..44608725 100644 --- a/src/main/resources/egovframework/sqlmap/kccadr/adjstExp/AdjstExp_SQL_Mysql.xml +++ b/src/main/resources/egovframework/sqlmap/kccadr/adjstExp/AdjstExp_SQL_Mysql.xml @@ -3,11 +3,14 @@ + - + + + - SELECT ADR_SEQ AS adrSeq, ADR_NO AS adrNo, STAT_CD AS statCd, @@ -27,7 +30,7 @@ FRST_REGIST_PNTTM AS frstRegistPnttm, LAST_UPDUSR_ID AS lastUpdusrId, LAST_UPDT_PNTTM AS lastUpdtPnttm - FROM ADR_MGR_MASTER + FROM ADR_MGR_EXP_MASTER WHERE ADR_SEQ = #adrSeq# AND FRST_REGISTER_ID = #esntlId# @@ -35,7 +38,7 @@ - SELECT ADR_SEQ AS adrSeq, EDT_SN AS edtSn, @@ -58,7 +61,7 @@ - SELECT ADR_SEQ AS adrSeq, RPPL_SEQ AS rpplSeq, @@ -96,7 +99,7 @@ FRST_REGISTER_ID AS frstRegisterId, LAST_UPDT_PNTTM AS lastUpdtPnttm, LAST_UPDUSR_ID AS lastUpdusrId - FROM ADR_RPPL + FROM ADR_EXP_RPPL WHERE (ADR_SEQ = #adrSeq# OR ADR_SEQ = #copyAdrSeq#) AND RPPL_TY = #rpplTy# @@ -109,8 +112,8 @@ - - INSERT INTO ADR_MGR_MASTER ( + + INSERT INTO ADR_MGR_EXP_MASTER ( ADR_SEQ ,STAT_CD ,REQ_OL_CD @@ -150,8 +153,8 @@ - - INSERT INTO ADR_MGR_DETAIL( + + INSERT INTO ADR_MGR_EXP_DETAIL( ADR_SEQ, ADR_SN, FRST_REGIST_PNTTM, @@ -170,8 +173,8 @@ ) - - UPDATE ADR_MGR_MASTER + + UPDATE ADR_MGR_EXP_MASTER SET ( REQ_CN1 ,REQ_CN2 @@ -183,15 +186,15 @@ ,REQ_CN2 ,REQ_TY ,CC_TY - FROM ADR_MGR_MASTER + FROM ADR_MGR_EXP_MASTER WHERE ADR_SEQ = #copyAdrSeq# ) WHERE ADR_SEQ = #adrSeq# - - MERGE INTO ADR_RPPL T1 USING DB_ROOT + + MERGE INTO ADR_EXP_RPPL T1 USING DB_ROOT ON (T1.ADR_SEQ = #adrSeq# AND T1.RPPL_SEQ = #rpplSeq# AND T1.RPPL_TY = #rpplTy#) WHEN MATCHED THEN UPDATE SET @@ -296,8 +299,8 @@ - - INSERT INTO ADR_RPPL ( + + INSERT INTO ADR_EXP_RPPL ( ADR_SEQ ,RPPL_SEQ ,RPPL_TY @@ -374,8 +377,8 @@ - - UPDATE ADR_RPPL SET + + UPDATE ADR_EXP_RPPL SET RPPL_TY = #rpplTy# ,RPPL_ID = #rpplId# ,AGNT_YN = #agntYn# @@ -406,18 +409,204 @@ AND RPPL_SEQ = #rpplSeq# + + + DELETE FROM ADR_EXP_RPPL + WHERE 1=1 + AND ADR_SEQ = #adrSeq# + AND RPPL_TY = #rpplTy# + AND RPPL_SEQ + + #existSeqList[]# + + + + + UPDATE ADR_MGR_EXP_MASTER SET + + REQ_CN1 = #reqCn1#, + + + REQ_CN2 = #reqCn2#, + + + CC_TY = #ccTy#, + + + ATCH_FILE_ID = #atchFileId#, + + LAST_UPDT_PNTTM = NOW(), + LAST_UPDUSR_ID = #lastUpdusrId# + WHERE 1=1 + AND ADR_SEQ = #adrSeq# + + + + UPDATE ADR_EXP_EDT_REQ SET + EDT_STATUS = #edtStatus#, + CPMTE_DT = NOW(), + LAST_UPDT_PNTTM = NOW(), + LAST_UPDUSR_ID = #lastUpdusrId# + WHERE ADR_SEQ = #adrSeq# + AND EDT_SN = #edtSn# + AND EDT_TY = #edtTy# + + + + + UPDATE ADR_MGR_EXP_MASTER SET + STAT_CD = #statCd# + ,SBMT_DE = NOW() + ,APPR_DE = NOW() + ,LAST_UPDT_PNTTM = NOW() + ,LAST_UPDUSR_ID = #lastUpdusrId# + WHERE 1=1 + AND ADR_SEQ = #adrSeq# + + + + + + + - - - - - + + diff --git a/src/main/resources/rebel.xml b/src/main/resources/rebel.xml index 907219ad..20c9d7e6 100644 --- a/src/main/resources/rebel.xml +++ b/src/main/resources/rebel.xml @@ -7,7 +7,7 @@ - + @@ -22,5 +22,5 @@ - + diff --git a/src/main/webapp/WEB-INF/decorators.xml b/src/main/webapp/WEB-INF/decorators.xml index 6a1f178b..8a0c17aa 100644 --- a/src/main/webapp/WEB-INF/decorators.xml +++ b/src/main/webapp/WEB-INF/decorators.xml @@ -53,6 +53,7 @@ */web/kccadr/kccadrCom/* */web/kccadr/**/none/**/* */web/kccadr/**/tab/* + */web/kccadr/**/comment/* */kccadr/**/comment/* */web/kccadr/accdnt/apm/popup/* diff --git a/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/apm/popup/adrDetailPop.jsp b/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/apm/popup/adrDetailPop.jsp index 98a6ff6c..3e1faae4 100644 --- a/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/apm/popup/adrDetailPop.jsp +++ b/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/apm/popup/adrDetailPop.jsp @@ -323,10 +323,11 @@ + -

피신청인 정보

+

피신청인 정보${cnt }

@@ -418,6 +419,7 @@
+
diff --git a/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/drt/drtDetail.jsp b/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/drt/drtDetail.jsp index 65ef7c94..01bef45b 100644 --- a/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/drt/drtDetail.jsp +++ b/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/drt/drtDetail.jsp @@ -564,7 +564,7 @@ 조서내용 - + diff --git a/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/drt/drtReg.jsp b/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/drt/drtReg.jsp index af4754d2..3db92c69 100644 --- a/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/drt/drtReg.jsp +++ b/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/drt/drtReg.jsp @@ -369,7 +369,8 @@ - + <%-- --%> + @@ -500,7 +501,7 @@ 조서내용 - + diff --git a/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/exmp/exmpAppManagerList.jsp b/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/exmp/exmpAppManagerList.jsp index fc4d8c52..92f04d16 100644 --- a/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/exmp/exmpAppManagerList.jsp +++ b/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/exmp/exmpAppManagerList.jsp @@ -173,9 +173,9 @@ -
- -
+ +<%-- --%> + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/accdnt/adr/adjstDeputyReqList.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/accdnt/adr/adjstDeputyReqList.jsp index be288f52..a62ba4a2 100644 --- a/src/main/webapp/WEB-INF/jsp/web/kccadr/accdnt/adr/adjstDeputyReqList.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/accdnt/adr/adjstDeputyReqList.jsp @@ -13,7 +13,7 @@ - +
-

조정신청

+

조정신청 체험하기

- +
@@ -171,7 +115,7 @@ - + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExp/adjstReqRegistStep3.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExp/adjstReqRegistStep3.jsp index dedc60ab..60216049 100644 --- a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExp/adjstReqRegistStep3.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExp/adjstReqRegistStep3.jsp @@ -1,259 +1,253 @@ -ㅊ <%-- - 대국민 사용자 - Class Name : adjstReq4Regist.jsp - Description : 조정신청 등록화면4 - 신청취지/원인 정보 등록 - Modification Information - - 수정일 수정자 수정내용 - ------- -------- --------------------------- - 2021.08.24 우영두 내용 - - author : 우영두 - since : 2021.08.24 - ---%> -<%-- 공통 JS 함수 정의 : /jsp/web/com/webLayout.jsp --%> -<%@ page contentType="text/html; charset=utf-8"%> -<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> -<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> -<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> -<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> -<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> -<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> -<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> -<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %> - - - - - -신청취지/원인 등록 - - -<%-- --%> - - - - - - - - - - - -
-
-
-

조정신청

-
- -
-
-

신청인 취지/원인

-
- - - - - - - - - - - - - - - - - - - - - - - - -
신청인 취지/원인 정보 : 저작물 종류, 신청취지, 신청원인, 첨부파일등의 정보입력
-

필수입력 항목*

-

저작물종류

-
- - -
-

필수입력 항목*

-

신청취지

- -
- - -
-

필수입력 항목*

-

신청원인

- -
- - -
-

필수입력 항목*

-

첨부파일

-
- - - -
- - - - - - - - - - - - - - - - - - - - -
첨부파일 리스트 : 파일명, 종류, 크기, 삭제
파일 명종류크기삭제
-

첨부하실 파일을 마우스로 끌어서 넣어주세요.

-
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - -
첨부파일 리스트 : 파일명, 종류, 크기, 삭제
파일 명종류크기삭제
- 파일 - - - ">. - - "> - - -
-
-
-
- -
-
-
- - -<%-- --%> - - - - - - - - - -
-
- -
-
- -
- - +ㅊ <%-- + 대국민 사용자 + Class Name : adjstReq4Regist.jsp + Description : 조정신청 등록화면4 - 신청취지/원인 정보 등록 + Modification Information + + 수정일 수정자 수정내용 + ------- -------- --------------------------- + 2021.08.24 우영두 내용 + + author : 우영두 + since : 2021.08.24 + +--%> +<%-- 공통 JS 함수 정의 : /jsp/web/com/webLayout.jsp --%> +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> +<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %> + + + + + +신청취지/원인 등록 + + +<%-- --%> + + + + + + + + + + + +
+
+
+

조정신청

+
+ +
+
+

신청인 취지/원인

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
신청인 취지/원인 정보 : 저작물 종류, 신청취지, 신청원인, 첨부파일등의 정보입력
+

필수입력 항목*

+

저작물종류

+
+ + +
+

필수입력 항목*

+

신청취지

+ +
+ + +
+

필수입력 항목*

+

신청원인

+ +
+ + +
+ +

첨부파일

+
+ + + +
+ + + + + + + + + + + + + + + + + + + + +
첨부파일 리스트 : 파일명, 종류, 크기, 삭제
파일 명종류크기삭제
+

첨부하실 파일을 마우스로 끌어서 넣어주세요.

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
첨부파일 리스트 : 파일명, 종류, 크기, 삭제
파일 명종류크기삭제
+ 파일 + + + ">. + + "> + + +
+
+
+
+ +
+ +
+ +
+
+ +
+
+ +
+
+ + +
+ + + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqOpenAnswerExamplePop.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqOpenAnswerExamplePop.jsp new file mode 100644 index 00000000..f447b529 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqOpenAnswerExamplePop.jsp @@ -0,0 +1,75 @@ +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> +<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> +<%pageContext.setAttribute("crlf", "\r\n"); %> + + + +조정신청 예문보기 + + + + + + + + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqStatusDetail.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqStatusDetail.jsp new file mode 100644 index 00000000..02ce706e --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqStatusDetail.jsp @@ -0,0 +1,101 @@ +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> + + + +조정진행 상세 + + + + + + + + + " /> + " /> + " /> + + + + + + + +
+ +   +   +   +
+
+

[체험]조정진행 상세

+
+
+

조정번호 : + + 조정 + +

+

접수일 :

+

진행현황 :

+
+
+
+ + + + <%----%> +
+
+ +
+
+
+
+ + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqStatusTabDetail.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqStatusTabDetail.jsp new file mode 100644 index 00000000..77a9f17e --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqStatusTabDetail.jsp @@ -0,0 +1,403 @@ +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> + + + + +조정진행 + + + + + +
+ " /> + " /> + " /> + + + +
+ +
+ + + +
+ <%--reqInfo +agenInfo +resInfo--%> + + +
+
+ + + + + + +
+
" data-info="1" style="cursor:pointer;"> + +

+ STEP. 01 + 접수 +

+ 다음 +
+
" data-info="2" style="cursor:pointer;"> + +

+ STEP. 02 + 기일지정 +

+ 다음 +
+
" data-info="3" style="cursor:pointer;"> + +

+ STEP. 03 + 기일개최 +

+ 다음 +
+
" data-info="4" style="cursor:pointer;"> + +

+ STEP. 04 + 조정중 +

+ 다음 +
+
" data-info="5" style="cursor:pointer;"> + +

+ STEP. 05 + 종료 +

+
+
+ + +
+ +

+ 기일예정일 : + +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
신청인, 주소등의 정보제공
+

신청인

+
+

+
+

신청인 분류

+
+

+
+

피신청인 1

+
+

+
+

피신청인 2

+
+

+
+

피신청인 3

+
+

+
+

피신청인 4

+
+

+
+

피신청인 5

+
+

+
+ + + + + + + + + + + + + + + + + +
신청취지, 신청원인등의 정보제공
+

신청취지

+
+

+
+

신청원인

+
+

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + <%-- 조정 대리인 신청(기일참관인)은 입금완료 후 부터 기일조서 결재완료 전까지 노출 --%> +<%-- --%> + +<%-- --%> +<%-- <%-- 기일 변경 요청 버튼 stat_cd가 기일통지서승인 보다 크거나 같고 종결결재요청 보다작을 때 버튼 노출 --%> +<%-- 기일이 저징 되어있어야 기일변경 요청을 할수 있도록 변경--%> +<%-- --%> + +<%-- --%> +<%-- <%-- 조정 취하 신청의 경우 조정부장의 결재가 필수이므로 배당결제완료 이후 버튼 노출_이준호_220310 --%> +<%-- --%> + +<%-- --%> +<%-- --%> +<%-- <%-- 현재 일시가 이의신청 기한보다 작을 경우만 버튼 오픈 --%> + +<%-- --%> +<%-- --%> + +<%-- --%> +<%-- <%-- 경정신청의 경우 접수결재완료 이후부터 종결결재요청 전까지 노출 --%> +<%-- --%> + +<%-- --%> +<%-- <%-- 조정위원 기피 버튼은 관리자가 조정위원 기피 허용해 줬을경우 노출(업무시스템 조정진행 상세 > 조정위원 항목옆에 체크박스) --%> +<%-- --%> + +<%-- --%> +
+
+ + + + + + + + + + +
+
+ + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqStatusTabNormal.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqStatusTabNormal.jsp new file mode 100644 index 00000000..07b1127a --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqStatusTabNormal.jsp @@ -0,0 +1,364 @@ +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> + + + + +조정진행 + + + + + + + + +
+ +
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
조정진행 상세 - 조정기록 : 일자, 등록인, 문건명, 상대방 공개여부 등 정보제공
일자등록인문건명상대방 공개여부
+

+ +

+
+

2022-09-23

+
+

체험인

+
[체험]조정신청서 +

+ 공개 +

+
+

+ +

+
+

2022-10-30

+
+

체험인

+
[체험]메인비주얼.jpg +

공개

+
+

+ +

+
+

2022-11-24

+
+

체험인

+
[체험]체험 테스트 파일.hwp +

비공개

+
+
+
+
+
+
+ + + +
+
+ + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqStatusTabStatus.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqStatusTabStatus.jsp new file mode 100644 index 00000000..370911d6 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/adjstReqStatusTabStatus.jsp @@ -0,0 +1,101 @@ +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> +<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> + + + + +조정진행 + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
조정진행 상세 - 사건진행 : 일자, 진행현황, 비고 등 정보제공
일자진행현황비고
+

2022-01-01

+
+ [체험] 조정접수 +
+

2022-02-05

+
+ [체험] 신청인 홍길동 답변서 제출 +
+

2022-04-07

+
+ [체험] 접수 결재 완료 +
+
+
+
+ + <%-- --%> + + + <%-- --%> + +
+
+ +
+
+ + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/docIssReqViewPop.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/docIssReqViewPop.jsp new file mode 100644 index 00000000..2d18f30f --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/docIssReqViewPop.jsp @@ -0,0 +1,134 @@ +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> + + + + +조정신청 보완/수정요청 + + + + + + + + + + + + + + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAdjstChangeDateCreate.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAdjstChangeDateCreate.jsp new file mode 100644 index 00000000..fcc257ff --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAdjstChangeDateCreate.jsp @@ -0,0 +1,512 @@ +<%-- + 대국민 사용자 + Class Name : adjstChangeDateCreate.jsp + Description : 기일 변경 신청 작성 + Modification Information + + 수정일 수정자 수정내용 + ------- -------- --------------------------- + 2021.08.24 우영두 내용 + + author : 우영두 + since : 2021.08.24 + +--%> +<%-- 공통 JS 함수 정의 : /jsp/web/com/webLayout.jsp --%> +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> + + +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator"%> +<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> + + + + + +기일변경신청 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + +
+ +<%-- --%> + + + + + + +
+
+
+

기일변경신청

+
+
+
+
+
    +
  • +

    기일변경신청 입니다.

    +
  • + + + + + + + +
+

주의사항 : 분쟁조정신청 작성이 오래 걸릴 경우 신청 중 오류가 발생할 수 있습니다. 신청 취지/원인을 미리 작성한 후 신청하시기 바랍니다.(STEP3 + 신청취지/원인 예문보기)

+
+
+
+ + + + +   +   +   + + + + + + + + + + + + + + + + + + + + + + +
사건, 담당조정부, 신청인, 피신청인등의 정보제공
+

사건

+
+ 조정 + +

담당조정부

+
+

[체험]조정부

+
+

신청인

+
+

+
+

피신청인

+
+

+
+ +
+ + +
+
+

기일변경 정보

+ <%----%> +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
기일변경 정보 : 변경사유, 변경기일, 연락처, 휴대전화, 첨부서류등의 정보 입력
+

필수입력 항목*

+

변경사유

+
+ + +
+

필수입력 항목*

+

변경기일

+
+
+
+
+ + +
+ + +
+ +
+ +
+

필수입력 항목*

+

연락처

+
+ + + - + - + +
+

필수입력 항목*

+

휴대전화

+
+ + + - + - + +
+

필수입력 항목*

+

첨부서류

+

(신분증 첨부 필수)

+
+ + + + +
+ + + + + + + + + + + + + + + + + + + + +
첨부파일 추가 리스트 : 파일명, 종류, 크기, 삭제
파일 명종류크기삭제
+

첨부하실 파일을 마우스로 끌어서 넣어주세요.

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
첨부파일 추가 리스트 : 파일명, 종류, 크기, 삭제
파일 명종류크기삭제
+ ${fileList.orignlFileNm} + + "> + + "> + + +
+
+
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAdjstDeputyReqCreate.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAdjstDeputyReqCreate.jsp new file mode 100644 index 00000000..a03a1474 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAdjstDeputyReqCreate.jsp @@ -0,0 +1,484 @@ +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> +<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> + + + +조정대리신청 + + + + + + + + + + + + + + +
+ +
+ +
+ + + +
+ +
+ + + + + +
+ + + + + + + + + +
+
+
+

조정대리신청

+
+
+
+
+
    +
  • +

    조정대리신청 입니다.

    +
  • + + + + + + + +
+

주의사항 : 분쟁조정신청 작성이 오래 걸릴 경우 신청 중 오류가 발생할 수 있습니다. 신청 취지/원인을 미리 작성한 후 신청하시기 바랍니다.(STEP3 + 신청취지/원인 예문보기)

+
+
+ +   +   +   +
+ + + + + + + + + + + + + + + + + + + + + + +
조정진행 상세 - 사건정보 상세 내용 : 사건, 조정회차, 신청인, 피신청인 등의 정보제공
+

조정번호

+
+ 조정 + +

조정회차

+
+

1회차

+
+

신청인

+
+

+
+

피신청인

+
+

+
+
+ +
+
+

조정대리 정보

+ <%----%> +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
조정대리 정보 : 이름, 생년월일, 주소, 자택(사무소), 휴대전화등의 정보 입력
+

필수입력 항목*

+

이름

+
+ + +

필수입력 항목*

+

생년월일

+
+ +
+

필수입력 항목*

+

주소

+
+ + + +
+ + + + +
+ +
+

필수입력 항목*

+

자택(사무소)

+
+ + + +

필수입력 항목*

+

휴대전화

+
+ + +
+
+ +
+ + + + + + + + + + + + + + + + + + + + +
위임인과의 관계, 첨부서류, 조정위임 사항등의 정보 입력
+

필수입력 항목*

+

위임인과의 관계

+
+
+ checked > + + checked > + + checked> + +
+
+

필수입력 항목*

+

첨부서류

+
+ + + + +
+ + + + + + + + + + + + + + + + + + + + +
첨부파일 리스트 : 파일명, 종류, 크기, 삭제
파일 명종류크기삭제
+

첨부하실 파일을 마우스로 끌어서 넣어주세요.

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
첨부파일 리스트 : 파일명, 종류, 크기, 삭제
파일 명종류크기삭제
+ ${fileList.orignlFileNm} + + "> + + "> + + +
+
+
+

필수입력 항목*

+

조정위임 사항

+
+

+ 1. 저작권 분쟁조정에 관한 일체의 조정행위 및 합의 행위
+ 2. 조정의 취하
+ 3. 기타 +

+
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAdjstDeputyReqList.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAdjstDeputyReqList.jsp new file mode 100644 index 00000000..32d3ed65 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAdjstDeputyReqList.jsp @@ -0,0 +1,106 @@ +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> +<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> + + + +조정대리신청 목록 + + + + + + + + + + + + + + + + + + + +
+
+
+

조정대리신청 목록

+
+
+
+
+
    +
  • +

    조정대리신청 목록 입니다.

    +
  • + + + + + + + +
+

주의사항 : 분쟁조정신청 작성이 오래 걸릴 경우 신청 중 오류가 발생할 수 있습니다. 신청 취지/원인을 미리 작성한 후 신청하시기 바랍니다.(STEP3 + 신청취지/원인 예문보기)

+
+
+<%-- --%> + +
+ + + + + + + + + + + + + + + + + + + + + + +
조정대리신청 목록 : 번호, 대리인, 조정회차, 신청일자, 상태등의 정보제공
번호대리인조정회차신청일자상태
자료가 없습니다. 다른 검색조건을 선택해주세요
+
+ + +
+ + +
+ +
+
+ + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAdjstWithDrawCreate.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAdjstWithDrawCreate.jsp new file mode 100644 index 00000000..c3c4b37a --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAdjstWithDrawCreate.jsp @@ -0,0 +1,279 @@ +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> + + + +조정취하등록 + + + +<%-- --%> + + + + + + + + + +
+ + + + + +
+
+ + + +
+ +  +  +  + + +
+
+
+

조정취하등록

+
+
+
+
+
    +
  • +

    조정취하등록 입니다.

    +
  • + + + + + + + +
+

주의사항 : 분쟁조정신청 작성이 오래 걸릴 경우 신청 중 오류가 발생할 수 있습니다. 신청 취지/원인을 미리 작성한 후 신청하시기 바랍니다.(STEP3 + 신청취지/원인 예문보기)

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + +
조정진행 상세 - 사건정보 상세 내용 : 사건, 조정회차, 신청인, 피신청인 등의 정보제공
+

조정번호

+
+ 조정 + +

조정회차

+
+

1회차

+
+

신청인

+
+

+
+

피신청인

+
+

+
+
+ + +
+ + + + + + + + + + + + + + +
취하사유 입력
+

필수입력 항목*

+

취하사유

+
+ +
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAnsSubmit.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAnsSubmit.jsp new file mode 100644 index 00000000..1157d884 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expAnsSubmit.jsp @@ -0,0 +1,343 @@ +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> + + + +기일변경상세 + + + + +<%-- --%> + + + + + + + + + + + +   +   +   + +
+ + + + + + +
+
+
+

답변서 제출

+
+
+
+
+
    +
  • +

    답변서 양식 입니다.

    +
  • + + + + + + + +
+

주의사항 : 분쟁조정신청 작성이 오래 걸릴 경우 신청 중 오류가 발생할 수 있습니다. 신청 취지/원인을 미리 작성한 후 신청하시기 바랍니다.(STEP3 + 신청취지/원인 예문보기)

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
답변서 제출 상세 : 사건, 담당조정부, 신청인, 피신청인등의 정보제공
+

사건

+
+

+ 조정 +

+
+

담당조정부

+
+

+ 체험 조정부 +

+
+

신청인

+
+

+ 체험자 +

+
+

피신청인

+
+

+ 피체험자 +

+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
답변내용, 문건명, 첨부서류, 상대방 공개여부등의 정보제공
+

필수입력 항목*

+

답변내용

+ + +
+ + +
+

문건명

+
+

+ + +

+
+

필수입력 항목*

+

첨부서류

+
+ + + + + +

* 첨부파일을 등록해 주세요. (최대3개)

+
+ + + + + + + + + + + + + + + + + + + + +
첨부파일 추가 리스트 : 파일명, 종류, 크기, 삭제
파일 명종류크기삭제
+

+ 첨부하실 파일을 + 마우스로 끌어서 + 넣어주세요. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
첨부파일 추가 리스트 : 파일명, 종류, 크기, 삭제
파일 명종류크기삭제
+ + + + "> + + + + "> + + + + +
+
+
+

상대방공개여부

+
+
+ + + + + + + + +
+
+
+ +
+
+
+ + +
+
+ +
+
+ +
+ + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expCorReqCreate.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expCorReqCreate.jsp new file mode 100644 index 00000000..39a73e2d --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expCorReqCreate.jsp @@ -0,0 +1,438 @@ +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> +<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> + + + +경정신청서 등록 + + + + + + + + + + + + + + + + + +
+
+
+

경정신청 등록

+
+
+
+
+
    +
  • +

    경정신청 등록 입니다.

    +
  • +
  • +

    대상추가를 클릭하시면 등록창이 보입니다.

    +
  • + + + +
+

주의사항 : 분쟁조정신청 작성이 오래 걸릴 경우 신청 중 오류가 발생할 수 있습니다. 신청 취지/원인을 미리 작성한 후 신청하시기 바랍니다.(STEP3 + 신청취지/원인 예문보기)

+
+
+ +<%-- --%> +<%-- --%> +<%-- --%> + +
+

경정신청 대상

+
+ + + +
+
+
+ + + + + +
+ + + +
+
+
+ + +
+
+ + +
+
+ + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expOadDetail.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expOadDetail.jsp new file mode 100644 index 00000000..790e1457 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expOadDetail.jsp @@ -0,0 +1,237 @@ +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> + + + +직권조정결정서 상세 + + + + + + + + + + + " /> + " /> + " /> + " /> + + + +   +   +   +
+
+

직권조정결정서 상세

+
+
+
+
    +
  • +

    직권조정결정서 상세 입니다.

    +
  • + + + + + + + +
+

주의사항 : 분쟁조정신청 작성이 오래 걸릴 경우 신청 중 오류가 발생할 수 있습니다. 신청 취지/원인을 미리 작성한 후 신청하시기 바랍니다.(STEP3 + 신청취지/원인 예문보기)

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + <%-- + + + --%> + + + + + + + + + + + + + + + + + <%-- + + + + 조정위원 이름 split 처리 + + + 조정위원 일련번호 split 처리 + + + + + + + --%> + +
+

조정부

+
+

+<%-- --%> + [체험]조정부 +

+
+

사건

+
+

+<%-- --%> + 조정 +

+
+

신청인

+
+

+

+

+
+

피신청인

+
+

+

+

+
+

결정일

+
+ <%--
+ " data-datecontrol="true" readonly> +
+ + +
+
--%> +

2022/05/06

+
+

송달완료일

+
+

+ +

+
+

이의신청기한

+
+ <%--
+ " data-datecontrol="true" readonly> +
+ + +
+
--%> +

2022/05/20

+
+

주문

+
+ <%-- " size="70"> --%> +

주문 예시 작성해야함

+
+

신청취지

+
+ <%-- " size="70"> --%> +

신청취지

+
+

이유

+
+

이유 예시 작성해야함

+
+

조정부장

+
+

+ + + + + + +

+
+

조정위원

+
+

+ + 현재 선택된 조정위원에 해당하는 일련번호 변수 저장 + + + + + + +

+
+
+ + + +
+
+
+ +
+
+ +
+ +
+
+ + diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expOjctRegist.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expOjctRegist.jsp new file mode 100644 index 00000000..f3bf9c09 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/adjstExpDetail/expOjctRegist.jsp @@ -0,0 +1,281 @@ +<%-- + 대국민 사용자 + Class Name : ojctRegist.jsp + Description : 이의신청 등록화면 + Modification Information + + 수정일 수정자 수정내용 + ------- -------- --------------------------- + 2021.09.09 이지우 내용 + + author : 이지우 + since : 2021.09.09 + +--%> +<%-- 공통 JS 함수 정의 : /jsp/web/com/webLayout.jsp --%> +<%@ page contentType="text/html; charset=utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> + + + + + + + + + +  +  +  + + +
+
+

이의신청 등록

+ +
+
+
+
    +
  • +

    이의신청 등록 입니다.

    +
  • + + + + + + + +
+

주의사항 : 분쟁조정신청 작성이 오래 걸릴 경우 신청 중 오류가 발생할 수 있습니다. 신청 취지/원인을 미리 작성한 후 신청하시기 바랍니다.(STEP3 + 신청취지/원인 예문보기)

+
+
+
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
이의신청 등록 : 사건, 사건명, 신청인, 피신청인 등의 정보제공 및 이의신청사유 입력, 첨부파일 선택 등록
+

필수입력 항목*

+

사건

+
+

조정

+
+

필수입력 항목*

+

사건명

+
+<%--

--%> +

[체험]저작물

+
+

필수입력 항목*

+

신청인

+
+

+
+

필수입력 항목*

+

피신청인

+
+

+
+

필수입력 항목*

+

이의신청사유

+
+

필수입력 항목*

+

첨부파일

+
+ + + +
+ + + + + + + + + + + + + + + + + + + +
첨부파일 리스트 : 파일명, 종류, 크기, 삭제
파일 명종류크기삭제
+

첨부하실 파일을 마우스로 끌어서 넣어주세요.

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
첨부파일 리스트 : 파일명, 종류, 크기, 삭제
파일 명종류크기삭제
+ + + + "> + + "> + + +
+
+
+
+
+ + +
+
+
+ + +
+
+ +
+ + +
+ + + + " /> + " /> +
\ No newline at end of file diff --git a/src/main/webapp/WEB-INF/jsp/web/kccadr/kccadrCom/kccadrConstantsJsp.jsp b/src/main/webapp/WEB-INF/jsp/web/kccadr/kccadrCom/kccadrConstantsJsp.jsp index 58bbbe62..47d228f2 100644 --- a/src/main/webapp/WEB-INF/jsp/web/kccadr/kccadrCom/kccadrConstantsJsp.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/kccadr/kccadrCom/kccadrConstantsJsp.jsp @@ -261,10 +261,14 @@ var AdjstReq = { // 신청유형 data.reqTy = $("#reqTy").val(); - console.log("saveData ::" , data); - var url = "/web/kccadr/adjst/adjstReqRegistStep1Save.do"; + + + // 신청하기, 체험하기 구분 + var depth = this.expDivision(this.STEP); + + var url = "/web/kccadr/"+depth+"/adjstReqRegistStep1Save.do"; if(mode == "${KccadrConstants.ADR_MODE_UPT}"){ - url = "/web/kccadr/adjst/adjstReqRegistStep1Update.do"; + url = "/web/kccadr/"+depth+"/adjstReqRegistStep1Update.do"; } if (confirm("신청인 정보 등록을 진행하시겠습니까?")) { @@ -321,7 +325,8 @@ var AdjstReq = { // 조정회차 data.adrSn = $("#adrSn").val(); - var url = "/web/kccadr/adjst/adjstReqRegistStep2Save.do"; + var depth = this.expDivision(this.STEP); + var url = "/web/kccadr/"+depth+"/adjstReqRegistStep2Save.do"; if (confirm("피신청인 정보 등록을 진행하시겠습니까?")) { $.ajax({ @@ -377,11 +382,14 @@ var AdjstReq = { return false; } + var depth = this.expDivision(this.STEP); + var url = "/web/kccadr/"+depth+"/adjstReqRegistStep3Save.do"; + $.ajax({ type: "POST", enctype: 'multipart/form-data', - url: "/web/kccadr/adjst/adjstReqRegistStep3Save.do", - data: data, + url: url, + data: data, dataType:'json', async: false, processData: false, @@ -808,9 +816,14 @@ var AdjstReq = { return false; } + if($(".uploaded_obj").length <= 0 ) { - alert("파일첨부는 필수입력입니다."); - return false; + if(this.STEP == "${KccadrConstants.STEP9}"){ + alert("조정신청에서 첨부파일은 필수입력입니다."); + }else{ + alert("파일첨부는 필수입력입니다."); + return false; + } } return true; @@ -1009,7 +1022,23 @@ var AdjstReq = { location.href="/web/main/mainPage.do"; }, fncGoMyAdjstListPage : function(){ - location.href="/web/kccadr/accdnt/ai/adjstIncidentList.do"; + + /** + * expDivision fn = 체험기능인지 인지 아닌지 구분 값 + */ + if(this.expDivision(this.STEP) === 'adjstExp') + { + /** + * 체험이면 현재 페이지에 expGoDetail form으로 상세페이지 일동 + */ + expGoDetail.submit(); + } + else + { + location.href="/web/kccadr/accdnt/ai/adjstIncidentList.do"; + } + + }, historyAdjstPopList : function(paramObj){ if(paramObj == undefined || paramObj == ''){ @@ -1041,7 +1070,6 @@ var AdjstReq = { ); }, openAnswerExamplePop : function(codeId){ - console.log('codeId :: ', codeId); commonPopLayeropen( "/web/kccadr/adjst/popup/adjstReqOpenAnswerExamplePop.do" , 1100 @@ -1101,8 +1129,8 @@ var AdjstReq = { } } } - }, - rpplUsrTyLayout : function(thisObj){ + } + ,rpplUsrTyLayout : function(thisObj){ var thisElm = $(thisObj).closest(".tb_wrap"); var val = $(thisObj).val(); thisElm.find("tr[usrTy]").hide(); @@ -1111,5 +1139,18 @@ var AdjstReq = { thisElm.find("tr[usrTy="+val+"]").show(); thisElm.find("tr[usrTy="+val+"]").find("input").prop("disabled" , false); } + ,expDivision : function(stepVal){ + + var depth = "adjst"; + if(stepVal == 'STEP6' + || stepVal == 'STEP7' + || stepVal == 'STEP8' + || stepVal == 'STEP9') + { + depth = "adjstExp" + } + + return depth; + } } \ No newline at end of file diff --git a/src/main/webapp/kccadrPb/usr/css/content.css b/src/main/webapp/kccadrPb/usr/css/content.css index 52e46bc3..2a3c180c 100644 --- a/src/main/webapp/kccadrPb/usr/css/content.css +++ b/src/main/webapp/kccadrPb/usr/css/content.css @@ -670,6 +670,32 @@ table .label{position: absolute;width: 1px; height: 1px; margin: 0; border: none .page .btn_page_last i{background-image: url(/kccadrPb/usr/image/btn_page_last.png); background-position: 46% center;} /* //page */ +/* 워크플로우 */ +.work_flow_wrap{background-color: #f1f2f4; border: 1px solid #d5d5d5; border-radius: 5px; padding: 0 20px; margin: 0 0 30px 0;transition: all 0.5s ease; height: auto;} +.work_flow_wrap .work_tit{display: flex; justify-content: space-between; align-items: center; font-size: 20px; padding: 20px 0 20px 6px;} +.btn_open, .work_flow_wrap .btn_close{width: 30px; height: 30px; border-radius: 5px; background-color: #fff;} +.btn_open i{display: inline-block; width: 100%; height: 100%; background-image: url(/kccadrPb/usr/image/common/btn_plus.png); background-repeat: no-repeat; background-position: center;} +.work_flow_wrap .btn_close i{display: inline-block; width: 100%; height: 100%; background-image: url(/kccadrPb/usr/image/common/btn_minus.png); background-repeat: no-repeat; background-position: center;} +.work_cont{background-color: #fff; border-radius: 5px; padding: 20px 25px; margin: 0 0 25px 0;transition: all 0.5s ease;} +.work_flow_wrap .top_work{display: flex; justify-content: space-between; align-items: center;} + +.work_flow_wrap .work_cont .top_work li{overflow: visible;} +.work_flow_wrap .work_cont li{position: relative; width: 100%; overflow: hidden;} +.work_flow_wrap .work_cont p{display: inline-flex; width: 210px; text-align: center; border: 1px solid #d5d5d5; height: 45px; border-radius: 5px; align-items: center; justify-content: center; font-size: 16px; color: #666; margin-bottom: 26px;background-color: transparent; position: relative;} +.work_flow_wrap .work_cont p+img{position: absolute; right: -10px; top: 8px; z-index: 1;} +.work_2{margin-top: 55px; position: relative;} +.work_3,.work_5{float: right;} +.work_5{margin-left: 10px; margin-top: 73px;} +.work_flow_wrap .work_cont .work_3 li{overflow: visible;} +.work_4{float: right; margin-left: 240px; margin-top: -73px; position: relative;} +.work_flow_wrap .work_cont p+.nexticon_3{position: absolute; top: 100%; left: 98px; top: 54px;} +.nexticon_4{position: absolute; top: -58px; left: 235px;} +.nexticon_5{position: absolute; top: 22px; left: 215px;} + +.work_flow_wrap.off .work_cont{height: 0; padding: 0 25px; margin: 0; transition: all 0.5s ease; overflow: hidden;} +.work_cont .status01 p{border: 1px solid #ea5404; color: #ea5404;} +.work_cont .status02 p{border: 2px solid #1b6fcd; color: #1b6fcd; font-weight: 500;} +/* //워크플로우 */ /* 익스플로어 */ @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none){ diff --git a/src/main/webapp/kccadrPb/usr/css/content_media.css b/src/main/webapp/kccadrPb/usr/css/content_media.css index 79fae56a..3704fd55 100644 --- a/src/main/webapp/kccadrPb/usr/css/content_media.css +++ b/src/main/webapp/kccadrPb/usr/css/content_media.css @@ -4,6 +4,10 @@ .tb_corapp th .req_text+p{width: calc(100% - 40px); vertical-align: text-top;} } +@media all and (max-width: 1280px){ + .work_flow_wrap{display: none;} +} + @media all and (max-width: 1150px){ /* 대시보드 */ .usr_dashboard .box{padding: 26px 0 26px 15px;} diff --git a/src/main/webapp/kccadrPb/usr/image/workflow/nexticon1.png b/src/main/webapp/kccadrPb/usr/image/workflow/nexticon1.png new file mode 100644 index 00000000..8dc11884 Binary files /dev/null and b/src/main/webapp/kccadrPb/usr/image/workflow/nexticon1.png differ diff --git a/src/main/webapp/kccadrPb/usr/image/workflow/nexticon2.png b/src/main/webapp/kccadrPb/usr/image/workflow/nexticon2.png new file mode 100644 index 00000000..defc7c33 Binary files /dev/null and b/src/main/webapp/kccadrPb/usr/image/workflow/nexticon2.png differ diff --git a/src/main/webapp/kccadrPb/usr/image/workflow/nexticon3.png b/src/main/webapp/kccadrPb/usr/image/workflow/nexticon3.png new file mode 100644 index 00000000..aa5291a0 Binary files /dev/null and b/src/main/webapp/kccadrPb/usr/image/workflow/nexticon3.png differ diff --git a/src/main/webapp/kccadrPb/usr/image/workflow/nexticon4.png b/src/main/webapp/kccadrPb/usr/image/workflow/nexticon4.png new file mode 100644 index 00000000..d2bea615 Binary files /dev/null and b/src/main/webapp/kccadrPb/usr/image/workflow/nexticon4.png differ diff --git a/src/main/webapp/kccadrPb/usr/image/workflow/nexticon5.png b/src/main/webapp/kccadrPb/usr/image/workflow/nexticon5.png new file mode 100644 index 00000000..1a684d59 Binary files /dev/null and b/src/main/webapp/kccadrPb/usr/image/workflow/nexticon5.png differ diff --git a/src/main/webapp/kccadrPb/usr/image/workflow/workflow_1.png b/src/main/webapp/kccadrPb/usr/image/workflow/workflow_1.png new file mode 100644 index 00000000..385a0c62 Binary files /dev/null and b/src/main/webapp/kccadrPb/usr/image/workflow/workflow_1.png differ diff --git a/src/main/webapp/kccadrPb/usr/image/workflow/workflow_2.png b/src/main/webapp/kccadrPb/usr/image/workflow/workflow_2.png new file mode 100644 index 00000000..28f3cae5 Binary files /dev/null and b/src/main/webapp/kccadrPb/usr/image/workflow/workflow_2.png differ diff --git a/src/main/webapp/kccadrPb/usr/image/workflow/workflow_3.png b/src/main/webapp/kccadrPb/usr/image/workflow/workflow_3.png new file mode 100644 index 00000000..01ef7455 Binary files /dev/null and b/src/main/webapp/kccadrPb/usr/image/workflow/workflow_3.png differ diff --git a/src/main/webapp/kccadrPb/usr/script/content.js b/src/main/webapp/kccadrPb/usr/script/content.js index 4d72c51c..3a626d15 100644 --- a/src/main/webapp/kccadrPb/usr/script/content.js +++ b/src/main/webapp/kccadrPb/usr/script/content.js @@ -655,6 +655,16 @@ $(document).ready(function(){ $(".btn_start").one("mouseover",function(){ calendarOpen(); }); + + $(".work_flow_wrap .btn_open").click(function(){ + if($(".work_flow_wrap").is(".off") == true){ + $(".work_flow_wrap").removeClass("off"); + $(this).addClass("btn_close").removeClass("btn_open"); + }else{ + $(".work_flow_wrap").addClass("off"); + $(this).removeClass("btn_close").addClass("btn_open"); + } + }); }) function otherDateInput(targetObj,thisVal,orgVal){ diff --git a/src/main/webapp/kccadrPb/usr/workflow.html b/src/main/webapp/kccadrPb/usr/workflow.html new file mode 100644 index 00000000..166ddb61 --- /dev/null +++ b/src/main/webapp/kccadrPb/usr/workflow.html @@ -0,0 +1,754 @@ + + + + + + + + 저작권 전자조정시스템 > 전자조정 신청 > 조정 진행 상세 + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + + + + +
+
+
+
+ 한국저작권위원회 + 바로가기 +
+
+ 로그인 + 회원가입 +
+ + +
+
+
+
+ +
+ + + + + + + + + + + + + + +
+
+
+

조정 진행 상세

+
+ +
+

조정번호 : 2021조정054

v +

접수일 : 2021-07-15

+

진행현황 : 조정진행

+
+ +
+
+ + + +
+
+
+
+

조정진행 워크플로우

+ +
+
+
    +
  • 조정신청 제출

    다음
  • +
  • 신청서 보완

    다음
  • +
  • 조정비용납부

    다음
  • +
  • 사건접수

    다음
  • +
  • 조정부배정

    다음
  • +
+
    +
  • 기일확정

    다음
  • +
  • +

    기일통지

    다음다음 +
      +
    • 1차 기일 개최

      다음
    • +
    • +

      2차 기일 개최다음

      다음 +
        +
      • 조정성립

      • +
      • 직권조정다음

        +
          +
        • 이의신청

        • +
        +
      • +
      • 조정권고

      • +
      • 쌍방수락여부 확인

      • +
      • 불성립종결

      • +
      +
    • +
    • 3차 기일 개최

      다음
    • +
    • 4차 기일 개최

    • +
    +
  • +
  • 기일변경

  • +
  • 변론서 및 답변서

  • +
  • 취하신청

    다음

    취하종결

  • +
+
+
+
+ +

기일예정일 : 2021-09-25

+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
+

신청인

+
+

홍길동

+
+

대리인

+
+

없음

+
+

피신청인1

+
+

고길동

+
+

피신청인2

+
+

고길동

+
+
+
+ + + + + + + + + + + + + + + + +
신청취지, 신청원인등의 정보제공
+

신청취지

+
+

독도는 우리땅입니다.

+
+

신청원인

+
+

아직도 넌 혼잔거니 물어오네요 난 그저 웃어요 사랑하고 있죠 사랑하는 사람 있어요 그대는 내가 안쓰러운 건가봐 + 좋은 사람있다면 한 번 만나보라 말하죠 그댄 모르죠 내게도 멋진 애인이 있다는 걸 너무 소중해 꼭 숨겨 두었죠 + 그 사람 나만 볼 수 있어요 내 눈에만 보여요 내 입술에 영원히 담아둘거야 가끔씩 차오르는 눈물만 알고 있죠 그 사람 그대라는 걸 + 나는 그 사람 갖고 싶지 않아요 욕심나지 않아요 그냥 사랑하고 싶어요 그댄 모르죠 내게도 멋진 애인이 있다는 걸 너무 소중해 꼭 숨겨 두었죠 + 그 사람 나만 볼 수 있어요 내 눈에만 보여요 내 입술에 영원히 담아둘거야 가끔씩 차오르는 눈물만 알고 있죠 그 사람 그대라는 걸 +

+ +
+
+ + +
+ +
+
+
+

신청인

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

신청인

+

신청인

+
+

홍길동

+
+

주소

+
+

서울특별시 마포구 마포대로 33

+
+

이메일

+
+

eee@naver.com

+
+

전화

+
+

+
+

휴대전화

+
+

010-1111-1111

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

대리인

+

이름

+
+

+
+

주소

+
+

+
+

이메일

+
+

+
+

전화

+
+

+
+

휴대전화

+
+

+
+
+
+
+

피신청인

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

피신청인1

+

신청인

+
+

고길동

+
+

주소

+
+

서울특별시 마포구 마포대로 33

+
+

이메일

+
+

aaa@naver.com

+
+

전화

+
+

+
+

휴대전화

+
+

010-1111-1111

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

피신청인2

+

이름

+
+

고길동

+
+

주소

+
+

+
+

이메일

+
+

+
+

전화

+
+

+
+

휴대전화

+
+

+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
조정진행내용 : 일자, 내용, 첨부파일 정보제공
일자내용첨부파일
+

2021-07-15

+
+

접수

+
+

2021-07-17

+
+

조정부 지정

+
+

2021-07-18

+
+

피신청인 답변서 제출

+
답변서.hwp
+

2021-07-15

+
+

신청인이 추가 답변서 제출

+
추가 답변서.hwp
+

2021-07-15

+
+

1차 기일 지정

+
+
+
+ + + + +
+
+
+ +
+
+ + +
+
+ + + + + + + + \ No newline at end of file