From 6120143e26d06842c0be13abc40f4dc2a8a88d0f Mon Sep 17 00:00:00 2001 From: myname Date: Wed, 20 Nov 2024 18:20:03 +0900 Subject: [PATCH] =?UTF-8?q?2024-11-20=2018:19=20gw=20=EC=88=98=EB=8F=99=20?= =?UTF-8?q?=EC=97=B0=EB=8F=99=20=EC=B2=98=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../seed/com/gtm/base/GwBaseController.java | 107 ++++++++++--- .../config/mappers/common/common_sql.xml | 39 +++++ .../sqlmap/config/mappers/nanum/nanum_sql.xml | 20 +++ .../_extra/gtm/trublprocessmng/rceptEdit.jsp | 149 ++++++++++++++++-- 4 files changed, 283 insertions(+), 32 deletions(-) diff --git a/src/main/java/seed/com/gtm/base/GwBaseController.java b/src/main/java/seed/com/gtm/base/GwBaseController.java index abdccab9..925003bc 100644 --- a/src/main/java/seed/com/gtm/base/GwBaseController.java +++ b/src/main/java/seed/com/gtm/base/GwBaseController.java @@ -84,13 +84,6 @@ public class GwBaseController { //String customsql = ""; String s_jobID = ""; - try { - s_jobID = params.get("jobID").toString(); - }catch(Exception ex) { - ex.printStackTrace(); - } - - if(!"".equals((String) params.get("type")) && (String) params.get("type") != null){ type = (String) params.get("type"); }else{ @@ -108,6 +101,12 @@ public class GwBaseController { if ("SanctnhistoryInsNew".equals(pageAction)) { //gw 보고서 팝업 띄우기 + try { + s_jobID = params.get("jobID").toString(); + }catch(Exception ex) { + ex.printStackTrace(); + } + if("S".equals(type)){ //작성용 //SanctnhistoryInsNew - pageAction //ajax - pageName @@ -149,7 +148,26 @@ public class GwBaseController { } } - }else if ("nanumHisDelSelTmp".equals(pageAction)) { //삭제대상 보고서 리스트 가져오기 + + + }else if ("nanumMasterProcessChg".equals(pageAction)) { //사건 상태 수동 변경 - 임시 + + String s_caseNo = params.get("caseNo").toString(); + String s_statePro = params.get("statePro").toString(); + + if(!"0406000000".equals(s_statePro)){ //중지는 여기에서 처리하지 않고, 나머지는 처리한다. + //mav.addObject("data", bservice.list(params)); + params.put("sql", "nanumMasterProcessChg"); //사건 정보 + params.put("data", JSPUtil.fixNull(bservice.list(params))); + + params.put("resultCode", "SUCCESS"); + params.put("resultMessage", "성공하였습니다"); + + }else { + params.put("resultCode", "FAIL"); + params.put("resultMessage", "실패하였습니다"); + } + }else if ("nanumHisDelSelTmp".equals(pageAction)) { //삭제대상 보고서 리스트 가져오기 - 임시 if("L".equals(type)){ //리스트 정보 //mav.addObject("data", bservice.list(params)); @@ -160,8 +178,19 @@ public class GwBaseController { } + }else if ("nanumHisDelSelProTmp".equals(pageAction)) { //사건의 진행상태 수동 변경용 대상 리스트 - 임시 - }else if ("RetrunHisDelTmp".equals(pageAction)) { //삭제 호출 + if("L".equals(type)){ //리스트 정보 + //mav.addObject("data", bservice.list(params)); + params.put("codeIdxs", "0400000000"); //사건진행상태 + params.put("sql", "commonCaseGubunAll"); //사건 정보 + params.put("data", JSPUtil.fixNull(bservice.list(params))); + + System.out.println("22222222222222222222222222222222222lllllllllllllllllllllllllllllllllllllll"); + + } + + }else if ("RetrunHisDelTmp".equals(pageAction)) { //삭제 호출 - 임시 if("D".equals(type)){ //mav.addObject("data", bservice.delete(params)); @@ -203,6 +232,8 @@ public class GwBaseController { //Map map, @RequestParam Map map){ + String v_ret = "0"; + System.out.println("request.getParameter(\"approKey\")="+request.getParameter("approKey")); System.out.println("request.getParameter(\"docId\")="+request.getParameter("docId")); @@ -303,7 +334,7 @@ public class GwBaseController { } - this.nanumOld(params); + v_ret = this.nanumOld(params, p_caseNo); System.out.println(p_approKey); System.out.println(p_docId); @@ -312,8 +343,15 @@ public class GwBaseController { }else { //자동으로 g/w에서 전달된 데이터 값 처리 String[] s_Arr = params.get("approKey").toString().split("_"); - params.put("caseNo", s_Arr[0]); //사건 정보 - params.put("docId", s_Arr[1]); //문서 정보 + + try { + params.put("caseNo", s_Arr[0]); //사건 정보 + params.put("docId", s_Arr[1]); //문서 정보 + + }catch(Exception ex) { + ex.printStackTrace(); + } + //params.put("result", p_docSts); //결과값 if ("DP".equals(p_docSts)) { //자동 전달의 삭제코드 확인 필요 - returned @@ -345,13 +383,23 @@ public class GwBaseController { } - this.nanumOld(params); + v_ret = this.nanumOld(params, p_caseNo); } GwApi testApi = new GwApi(); - testApi.setResultCode("SUCCESS"); - testApi.setResultMessage("성공하였습니다"); + + if ("1".equals(v_ret)) { //처리 실패한 경우 + testApi.setResultCode("FAIL"); + testApi.setResultMessage("실패하였습니다"); + + testApi.setResultCode("SUCCESS"); + testApi.setResultMessage("성공하였습니다"); + }else { + testApi.setResultCode("SUCCESS"); + testApi.setResultMessage("성공하였습니다"); + } + return testApi; @@ -450,7 +498,7 @@ public class GwBaseController { return v_ret; } - private String nanumOld(EgovMap params) { + private String nanumOld(EgovMap params, String p_caseNo) { //manu String v_ret = "0"; try { @@ -631,8 +679,29 @@ public class GwBaseController { bservice.insert(params); } }else if("returned".equals(params.get("status"))){ - params.put("sql", "nanumSanctnhistorySel"); - params.put("data", JSPUtil.fixNull(bservice.select(params))); + + if ("manu".equals(p_caseNo)) { + //수동 삭제인 경우 모두 삭제 + params.put("sql", "nanumSanctnhistorySel"); + params.put("data", JSPUtil.fixNull(bservice.select(params))); + + }else { + //자동 삭제인경우 processed가 없으면 + params.put("sql", "nanumSanctnhistorySelTmp"); + params.put("data", JSPUtil.fixNull(bservice.select(params))); + + EgovMap emap = new EgovMap(); + emap = (EgovMap) params.get("data"); + + if (Integer.parseInt(emap.get("cnt").toString())<=0) { + params.put("sql", "nanumSanctnhistorySel"); + params.put("data", JSPUtil.fixNull(bservice.select(params))); + }else { + v_ret = "1"; + } + + } + EgovMap emap = new EgovMap(); emap = (EgovMap) params.get("data"); @@ -645,8 +714,6 @@ public class GwBaseController { } } - v_ret = "0"; - }catch(Exception ex) { ex.printStackTrace(); } diff --git a/src/main/resources/egovframework/sqlmap/config/mappers/common/common_sql.xml b/src/main/resources/egovframework/sqlmap/config/mappers/common/common_sql.xml index 6f8428ae..0ebbeb85 100644 --- a/src/main/resources/egovframework/sqlmap/config/mappers/common/common_sql.xml +++ b/src/main/resources/egovframework/sqlmap/config/mappers/common/common_sql.xml @@ -16,6 +16,24 @@ ) WHERE RNUM > #{pageStart} AND #{perPageNum} >= ROWNUM + + + + + + + @@ -1201,4 +1215,10 @@ , MEDIATION_BIG = '' WHERE CASE_NO = #{caseNo} + + + UPDATE C_MASTER SET + STATE_PRO = #{statePro} + WHERE CASE_NO = #{caseNo} + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/jsp/seed/_extra/gtm/trublprocessmng/rceptEdit.jsp b/src/main/webapp/WEB-INF/jsp/seed/_extra/gtm/trublprocessmng/rceptEdit.jsp index 0ad34bba..16850e25 100644 --- a/src/main/webapp/WEB-INF/jsp/seed/_extra/gtm/trublprocessmng/rceptEdit.jsp +++ b/src/main/webapp/WEB-INF/jsp/seed/_extra/gtm/trublprocessmng/rceptEdit.jsp @@ -55,10 +55,15 @@ $(document).ready(function(){ nanumHisDelSel(); } -//결재 내용 연동 처리를 위한 임시 리스트 - callback 작동하면 주석처리 하애한다. + //결재 내용 연동 처리를 위한 임시 리스트 - callback 작동하면 주석처리 하애한다. if($("#nanumHisDelSelTmp") != undefined){ nanumHisDelSelTmp(); } + + //결재 내용 연동 처리를 위한 임시 리스트 - callback 작동하면 주석처리 하애한다. + if($("#nanumHisDelSelProTmp") != undefined){ + nanumHisDelSelProTmp(); + } selectFunc(); @@ -2473,6 +2478,25 @@ function mediationSmall(){ }); } + /* 사건의 진행상태값 수동 변경용 */ + function nanumHisDelSelProTmp(){ + var url = ""; + $("#type").val("L"); + var param = jQuery('#frm').serialize(); + url = "/gtm/case/ajax/nanumHisDelSelProTmp.do"; + XHR2(url, param, function(r){ + $.each(r.data, function(k,v) { + if (v.codeDepth == 1){ + //$('#nanumHisDelSelProTmp').append(''); + }else{ + $('#nanumHisDelSelProTmp').append(''); + } + + //$('#prveConfirmTmp').append(''); + }); + }); +} + function mediationBig(){ var url = ""; $("#type").val("L"); @@ -3658,15 +3682,24 @@ function nanumProcessCall(codeNo){ XHR2(url, param, function(r){ /* $("#doc").val(r.data.docId); $("#docID").val(r.data.docId); */ + + $("#approKeyTmp").val(r.data.docId); + $("#docIdImsi").val(r.data.docId); + $("#formIdImsi").val('336'); + $("#modImsi").val('v'); //작성 고정 - $("#compSeq").val('1000'); - $("#deptSeq").val('1221'); - $("#approKey").val('uni_9999_20221107_2'); - $("#outProcessCode").val('st_test1'); - $("#empSeq").val('1331'); - $("#fileKey").val('Yb27d960f-97f1-41e5-bfdc-9b027e327079&'); - $("#mod").val('V'); + //$("#approKeyImsi").val(r.data2.docId); //외부시스템 연동키 외부시스템 연동키 + $("#loginIdImsi").val('test04'); //그룹웨어로그인아이디 + //$("#subjectStrImsi").val(r.title); //그룹웨어로그인아이디 + //$("#contentsStrImsi").val(r.contents); //그룹웨어로그인아이디 + + var f = document.nanumImsiFrm; + f.action = $("#gwCallUrlImsi").val(); + f.target = "_blank"; + f.submit(); + +/* var f = document.nanumFrm; f.target = "_blank"; if(r.data.resultData == 'NODATA'){ @@ -3676,6 +3709,14 @@ function nanumProcessCall(codeNo){ f.action = $("#nanumProcessUrl").val(); } f.submit(); +*/ + + /* + var f = document.nanumImsiFrm; + f.action = $("#gwCallUrlImsi").val(); + f.target = "_blank"; + f.submit(); + */ }); } @@ -3720,9 +3761,27 @@ function nanumHisDelTmp(p_type){ var url = ""; //$("#typeNanum").val("D"); $("#typeTmp").val(p_type); - $("#approKeyTmp").val(codeNo); + $("#approKeyTmp").val(codeNo); - if ("D" == p_type && codeNo.includes("undefined")){ //결과값은 받지않은(callback 없는) 삭제는 바로DB에서 제거한다. + //callback을 수동으로 호출한다. + var url = ""; + //$("#typeTmp").val(p_type); + //$("#approKeyTmp").val(codeNo); + $("#docIdTmp").val(''); + $("#docStsTmp").val(p_type); + $("#caseNoTmp").val('manu'); + + var param = jQuery('#callbackFrm').serialize(); + url = "/web/GwCallback.do"; + + XHR2(url, param, function(r){ //C_SANCTNHISTORY 에 데이터 생성 + //alert("해당 기안문 상태가 변경되었습니다."); + alert(r.resultCode); + location.reload(); + }); + + /* + if ("D" == p_type && codeNo.includes("undefined")){ //결과값은 받지않은(callback 없는) 삭제는 바로DB에서 제거한다. - 일종의 이력삭제임 var param = jQuery('#callbackFrm').serialize(); url = "/gtm/case/ajax/RetrunHisDelTmp.do"; XHR2(url, param, function(r){ @@ -3748,8 +3807,54 @@ function nanumHisDelTmp(p_type){ location.reload(); }); } + */ } +function nanumHisDelProTmp(p_type){ + + var codeNo = $("#nanumHisDelSelProTmp").val(); + //var docId = $("#nanumHisDelSelTmp").val(); + + alert(codeNo); + + if(codeNo == "" || codeNo == undefined){ + alert("상태를 변경할 사건진행상태를 선택해 주세요.(임시기능임 callback 이후 삭제)"); + return false; + } + + if(codeNo == "0406000000"){ + alert("중지는 기존 프로세스를 사용해야 합니다."); + return false; + } + + if(!confirm("사건 진행 상태를 수동 변경 하시겠습니까? 다시한번 확인해 주세요.(임시기능임 callback 이후 삭제)")){ + return false; + } + + var url = ""; + //$("#typeNanum").val("D"); + $("#stateProTmp").val(codeNo); + $("#caseNoTmp").val($("#caseNo").val()); + + var param = jQuery('#callbackFrm').serialize(); + url = "/gtm/case/ajax/nanumMasterProcessChg.do"; + XHR2(url, param, function(r){ + alert(r.resultMessage); + location.reload(); + + /* + if (r.resultCode=="SUCCESS"){ + alert("해당 사건 상태가 변경되었습니다."); + //alert(r.resultCode); + location.reload(); + }else{ + alert(r.resultMessage); + } + */ + + }); + } + function SetPriceInput(str){ str=str.replace(/,/g,''); var retValue = ""; @@ -4234,8 +4339,8 @@ function nanumProcessStartTmp(){
- - + + @@ -4410,6 +4515,23 @@ function nanumProcessStartTmp(){
+ ====하기는 GW연동을 대체하는 임시 기능힙니다.==== + +
+
+ ====하기는 GW연동을 대체하는 임시 기능힙니다.==== + +
+ +
+
+ +
+ + +
+ @@ -8872,6 +8995,8 @@ function nanumProcessStartTmp(){ + +