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 a7fbe1f3..dbe297dd 100644 --- a/src/main/java/kcc/kccadr/adjPgrMgr/apm/web/ApmController.java +++ b/src/main/java/kcc/kccadr/adjPgrMgr/apm/web/ApmController.java @@ -73,8 +73,6 @@ import kcc.kccadr.adjst.service.AdjstReqService; import kcc.kccadr.adjst.service.AdjstReqVO; import kcc.kccadr.advc.service.AdrHstryMgrService; import kcc.kccadr.advc.service.AdrHstryMgrVO; -import kcc.kccadr.advc.service.impl.AdrHstryMgrDAO; -import kcc.kccadr.advc.service.impl.AdrHstryMgrDetailDAO; import kcc.kccadr.cmm.KccadrConstants; import kcc.kccadr.kccadrCom.service.KccadrCommonSearchVO; import kcc.kccadr.kccadrCom.service.KccadrCommonService; @@ -202,14 +200,6 @@ public class ApmController { private static String islocal; // /pdf/out/ @Value("#{globalSettings['Globals.prod.islocal']}") public void setIslocal(String path) { islocal = path; } - - //조정 사건 이력 관리 - @Resource(name = "adrHstryMgrDAO") - private AdrHstryMgrDAO adrHstryMgrDAO; - - //조정 사건 이력 상세 관리 - @Resource(name = "adrHstryMgrDetailDAO") - private AdrHstryMgrDetailDAO adrHstryMgrDetailDAO; /** * 조정진행목록 목록 @@ -1597,12 +1587,23 @@ public class ApmController { LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated() ? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser() : null; String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); try { + if (loginVO == null) { + + modelAndView.addObject("result", "fail"); + modelAndView.addObject("message", "로그인 해주세요."); + return modelAndView; + } + System.out.println(adrHstryMgrVO.toString()); + //취소 대상 데이터 삭제하기 + adrHstryMgrVO.setFrstRegisterId(userId); + int rs = adrHstryMgrService.delete4CancelAll(adrHstryMgrVO); + //단계 리스트 가져오기 - List adrHstryMgrVOList = adrHstryMgrDAO.selectCancelList(adrHstryMgrVO); + //List adrHstryMgrVOList = adrHstryMgrDAO.selectCancelList(adrHstryMgrVO); //단계별 상세 처리 가져오기 - List adrHstryMgrDetailVOList = adrHstryMgrDetailDAO.selectCancelList(adrHstryMgrVO); + //List adrHstryMgrDetailVOList = adrHstryMgrDetailDAO.selectCancelList(adrHstryMgrVO); /* //이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09 @@ -1633,6 +1634,12 @@ public class ApmController { @RequestMapping(value = "apmDetail.do") public String apmDetail(@ModelAttribute("apmVO") ApmVO apmVO, ModelMap model) throws Exception { + //로그인 정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId()); + + apmVO.setFrstRegisterId(userId); + //가장 마지막 조정회차로 지정 //이력관리를 위한 adr_hstry_mgr 데이터 관리 추가 - 2022-08-09 String adrSn = cmmService.selectLastAdrSn(apmVO diff --git a/src/main/java/kcc/kccadr/advc/service/AdrHstryMgrService.java b/src/main/java/kcc/kccadr/advc/service/AdrHstryMgrService.java index aae23abe..34a7c38a 100644 --- a/src/main/java/kcc/kccadr/advc/service/AdrHstryMgrService.java +++ b/src/main/java/kcc/kccadr/advc/service/AdrHstryMgrService.java @@ -37,5 +37,8 @@ public interface AdrHstryMgrService { List selectPagingList(AdrHstryMgrVO adrHstryMgrVO) throws Exception; //L - List selectCancelList(AdrHstryMgrVO adrHstryMgrVO) throws Exception; + List selectCancelList(AdrHstryMgrVO adrHstryMgrVO) throws Exception; + + //D + int delete4CancelAll(AdrHstryMgrVO adrHstryMgrVO) throws Exception; } diff --git a/src/main/java/kcc/kccadr/advc/service/impl/AdrHstryMgrDAO.java b/src/main/java/kcc/kccadr/advc/service/impl/AdrHstryMgrDAO.java index a0882efe..110df16f 100644 --- a/src/main/java/kcc/kccadr/advc/service/impl/AdrHstryMgrDAO.java +++ b/src/main/java/kcc/kccadr/advc/service/impl/AdrHstryMgrDAO.java @@ -202,4 +202,100 @@ public class AdrHstryMgrDAO extends EgovAbstractDAO { List tlist = (List) list("AdrHstryMgrDAO.selectCancelList", adrHstryMgrVO); return tlist; } + + /** + * 취소 처리 + * @param addrAgencyVO + * @return + * @throws Exception + */ + public int delete4CancelAll(AdrHstryMgrVO adrHstryMgrVO) throws Exception { + int i_ret = 1; + //step1.전체 리스트를 가져온다. + + //step2.각각의 상세 전체 리스트를 가져온다. + + //step3.U,I여부 확인 + //step3-1.가 아니면 오류발생 rollback 한다. - Q + //step3-2.면 처리 + //step3-2-1.I인경우 delete 구문 실행 - Q + //step3-2-2.U인 경우 처리 + //step3-2-2-1.query가 없으면 삭제 + //step3-2-2-2.query가 있으면 update 구문 실행 - Q + + //step4.각각의 상세 전체 대상 삭제 - Q + + //step5.전체 대상 삭제 - Q + + try { + //step1.전체 리스트를 가져온다. + List tlist = (List) list("AdrHstryMgrDAO.selectCancelList", adrHstryMgrVO); + + for (int i=0;i tDetaillist = (List) list("AdrHstryMgrDetailDAO.selectCancelList", adrHstryMgrTmpVO); + + for (int j=0;j tlist = adrHstryMgrDAO.selectCancelList(adrHstryMgrVO); + + for (int i=0;i tDetaillist = adrHstryMgrDetailDAO.selectCancelList(adrHstryMgrTmpVO); + + for (int j=0;j diff --git a/src/main/resources/egovframework/sqlmap/kccadr/accdnt/ars/AdjustReqStatus_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/kccadr/accdnt/ars/AdjustReqStatus_SQL_Mysql.xml index df1cb2ea..ca388df0 100644 --- a/src/main/resources/egovframework/sqlmap/kccadr/accdnt/ars/AdjustReqStatus_SQL_Mysql.xml +++ b/src/main/resources/egovframework/sqlmap/kccadr/accdnt/ars/AdjustReqStatus_SQL_Mysql.xml @@ -207,6 +207,7 @@ AND ( stat_cd IN ( '101050') OR stat_cd >'200000' + OR stat_cd ='000050' ) diff --git a/src/main/resources/egovframework/sqlmap/kccadr/advc/AdrHstryMgrDetail_SQL_Cubrid.xml b/src/main/resources/egovframework/sqlmap/kccadr/advc/AdrHstryMgrDetail_SQL_Cubrid.xml index 243fd16f..26c21052 100644 --- a/src/main/resources/egovframework/sqlmap/kccadr/advc/AdrHstryMgrDetail_SQL_Cubrid.xml +++ b/src/main/resources/egovframework/sqlmap/kccadr/advc/AdrHstryMgrDetail_SQL_Cubrid.xml @@ -37,7 +37,7 @@ a.adr_hstry_mgr_detail_seq AS adrHstryMgrDetailSeq, a.adr_sn AS adrSn, a.use_cd AS useCd, - a.table_name AS tableNm, + a.table_name AS tableName, a.adr_pk_3 AS adrPk3, a.adr_pk_4 AS adrPk4, @@ -204,6 +204,8 @@ WHERE a.adr_seq = #adrSeq# AND a.adr_hstry_mgr_seq = #adrHstryMgrSeq# + + ORDER BY a.adr_hstry_mgr_detail_seq desc diff --git a/src/main/resources/egovframework/sqlmap/kccadr/advc/AdrHstryMgr_SQL_Cubrid.xml b/src/main/resources/egovframework/sqlmap/kccadr/advc/AdrHstryMgr_SQL_Cubrid.xml index 0fc8eab5..778dae4b 100644 --- a/src/main/resources/egovframework/sqlmap/kccadr/advc/AdrHstryMgr_SQL_Cubrid.xml +++ b/src/main/resources/egovframework/sqlmap/kccadr/advc/AdrHstryMgr_SQL_Cubrid.xml @@ -196,8 +196,39 @@ WHERE a.adr_seq = #adrSeq# AND a.adr_hstry_mgr_seq >= #adrHstryMgrSeq# + + AND 0>=instr(a.menu_id,'V') - ORDER BY a.adr_hstry_mgr_seq + ORDER BY a.adr_hstry_mgr_seq DESC + + + + DELETE + $tableName$ + $updateQuery$ + + + + + + UPDATE + $tableName$ + $updateQuery$ + + + + + + UPDATE + + SET + aaa + + WHERE + adr_seq = #adrSeq# + AND adr_hstry_mgr_seq = #adrHstryMgrSeq# + + diff --git a/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/apm/apmTab2.jsp b/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/apm/apmTab2.jsp index f1e2b294..d8e6d3de 100644 --- a/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/apm/apmTab2.jsp +++ b/src/main/webapp/WEB-INF/jsp/kccadr/adjPgrMgr/apm/apmTab2.jsp @@ -20,14 +20,14 @@ function fncCancelDo(p_a, p_b){ - var message = "해당 상태까지 취소 처리합니까?"; + var message = "해당 상태를 포함하여 이후 단계를 모두 취소 처리합니다.\n관련데이터는 모두 삭제처리 됩니다.\n(삭제된 데이터는 복구할수 없습니다.)\n\n진행합니까?"; // alert(p_a); if(confirm(message)){ var data = new FormData(document.getElementById("listForm")); - data.append("adrSeq", p_a); + //data.append("adrSeq", p_a); data.append("adrHstryMgrSeq", p_b); @@ -58,7 +58,8 @@ function fncCancelDo(p_a, p_b){ return false; }else{ - alert("취소 처리가 완료되었습니다."); + alert("취소 처리가 완료되었습니다."); + location.reload(); return false; } @@ -207,7 +208,7 @@ function fncCancelDo(p_a, p_b){

- + 취소