From d781c7836ada870b30aa285f3ea8de6721141d20 Mon Sep 17 00:00:00 2001 From: leebj Date: Fri, 14 Mar 2025 09:59:43 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B3=80=EB=8F=99=EB=B6=84=20=EC=A1=B0?= =?UTF-8?q?=ED=9A=8C=20=ED=94=84=EB=A1=9C=EC=84=B8=EC=8A=A4=20=EC=88=98?= =?UTF-8?q?=EC=A0=95(=EC=98=A4=EB=A5=98=EA=B0=80=20=EC=97=86=EB=8A=94=20?= =?UTF-8?q?=EA=B2=BD=EC=9A=B0=EB=A7=8C=20=EB=B3=80=EB=8F=99=EB=B6=84=20?= =?UTF-8?q?=EC=A0=84=EC=86=A1=EC=9D=BC=EC=8B=9C=20=EC=88=98=EC=A0=95)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/CommCollectServerController.java | 368 +++++++----------- 1 file changed, 138 insertions(+), 230 deletions(-) diff --git a/src/cfs/trsmrcv/web/CommCollectServerController.java b/src/cfs/trsmrcv/web/CommCollectServerController.java index 83816a5..e521eb0 100644 --- a/src/cfs/trsmrcv/web/CommCollectServerController.java +++ b/src/cfs/trsmrcv/web/CommCollectServerController.java @@ -800,7 +800,7 @@ public class CommCollectServerController { , HttpServletRequest request) throws Exception { ResultSmartPlatform result = new ResultSmartPlatform(); - + //--------------- //--------------- @@ -833,253 +833,161 @@ public class CommCollectServerController { logger.info("==== PRP_SENDTIME : " + obj.get(0).get("PRP_SENDTIME").toString()); logger.info("==== end_dt.substring(0, 8) : " + end_dt.substring(0, 8)); + if(!( + obj.get(0).get("PRP_FLAG").toString().equals("2") == true + && obj.get(0).get("PRP_SENDTIME").toString().equals(end_dt.substring(0, 8)) == true + ) + ) { + //마스터 작업중이므로 변동분 미처리 + result.setMsg(ResultSmartPlatform.STATUS_SUCESS, "정상적으로 처리되었습니다."); + result.setMsg(ResultSmartPlatform.RESULT_KEY_DEFAULT, "조회결과가 없습니다."); + return result.getResult(); + } - if(obj.get(0).get("PRP_FLAG").toString().equals("2") == true - && obj.get(0).get("PRP_SENDTIME").toString().equals(end_dt.substring(0, 8)) == true) { - // 마스터 작업중이지 않을때 변동분 처리 - if(Long.parseLong(obj.get(0).get("PRP_CHG_TIME").toString()) < Long.parseLong(start_dt)) { - mapOrg.put("start_dt", obj.get(0).get("PRP_CHG_TIME").toString()); - - Map mapOrgTemp = new HashMap(); - mapOrgTemp.put("PRP_UPDATE_YN", "Y"); - if(commCollectServerService.updateMstFlag(mapOrgTemp) < 0) { - result.setErrorMsg(null, null); - logger.info(result.getResult().get("resultMessage").toString()); - return result.getResult(); - } - mapOrgTemp.clear(); - } - // 사전등록결제 웹서비스 호출 - String url = cfsCommonService.findCommonSecureGet("ITF_CFS_O_037"); - CallWebService callWebService = new CallWebService(url); - Map map = callWebService.callWebServicePost(mapOrg); + //마스터 작업중아니므로 변동분 처리 + + boolean prpUpdateFlag = false; + if(Long.parseLong(obj.get(0).get("PRP_CHG_TIME").toString()) < Long.parseLong(start_dt)) { + + prpUpdateFlag = true; + //start_dt를 바꿈 + mapOrg.put("start_dt", obj.get(0).get("PRP_CHG_TIME").toString()); - if(map == null || map.get("result").toString().equals("FAIL") == true) { - // 조회 실패 - logger.info("CarInfoChangeNeo_조회 실패"); - result.setMsg(ResultSmartPlatform.STATUS_SUCESS, "정상적으로 처리되었습니다."); - result.setMsg(ResultSmartPlatform.RESULT_KEY_DEFAULT, "조회결과가 없습니다."); - return result.getResult(); - } - JSONParser parser = new JSONParser(); - JSONObject jsonParam = (JSONObject)parser.parse(map.get("data").toString()); - System.out.println("=== " + jsonParam.toJSONString()); + } else { + //start_dt를 안바꿈 + } + + // 사전등록결제 웹서비스 호출 + String url = cfsCommonService.findCommonSecureGet("ITF_CFS_O_037"); + CallWebService callWebService = new CallWebService(url); + Map apiResultMap = callWebService.callWebServicePost(mapOrg); + + if(apiResultMap == null || apiResultMap.get("result").toString().equals("FAIL") == true) { - obj = (List>)jsonParam.get("dataArray"); - String strExmptCode = ""; - // 사전등록정보 갱신 - for(int i=0; i< obj.size(); i++){ - obj.get(i).put("CAR_NO", obj.get(i).get("vhcleNo").toString()); - obj.get(i).put("CAR_OWNER_CI", obj.get(i).get("vhcleOwnerCi").toString()); - obj.get(i).put("REQ_DATE", obj.get(i).get("registDt").toString()); - obj.get(i).put("VHCLE_STTUS_TY", obj.get(i).get("vhcleSttusTy").toString()); - obj.get(i).put("NAMSAN_PASMNY", obj.get(i).get("namsanPasmny").toString()); - obj.get(i).put("SECSN_YN", obj.get(i).get("secsnAt").toString()); - if(obj.get(i).get("SECSN_YN").equals("Y")){ - obj.get(i).put("SECSN_DATE", obj.get(i).get("secsnDt").toString()); - obj.get(i).put("OWNER_NM", "delete"); - }else{ - obj.get(i).put("OWNER_NM", obj.get(i).get("mberNm").toString()); - } - - // 01: 일반, 02: 경차, 03: 면제 - // 면제차량 확인 - strExmptCode = searchExmptCarNo(obj.get(i).get("CAR_NO").toString(), false); - // 감면차량 확인 - if(strExmptCode.equals("") == true) { - strExmptCode = searchHalfExmptCarNo(obj.get(i).get("CAR_NO").toString()); - } - obj.get(i).put("EXMP_CD", strExmptCode); - obj.get(i).put("CAR_NO_HEX", CarNo2Code.runCarNo2Code(obj.get(i).get("CAR_NO").toString())); - obj.get(i).put("WORKER", "admin"); - obj.get(i).put("MODI_YN", "N"); - - logger.info("=== 1 : " + obj.get(i).get("CAR_NO").toString()); //전인종 - - // 탈퇴이거나 차량을 삭제하면 삭제만 함. - if(obj.get(i).get("SECSN_YN").toString().equals("Y") == true - || obj.get(i).get("VHCLE_STTUS_TY").toString().equals("02") == true - || obj.get(i).get("VHCLE_STTUS_TY").toString().equals("03") == true - || obj.get(i).get("NAMSAN_PASMNY").toString().equals("N") == true - ) { - //마스터 데이터 삭제 - obj.get(i).put("SECSN_YN", "Y"); - obj.get(i).put("SECSN_DATE", ""); - logger.info("=== 사전등록결제 회원 탈퇴 : " + obj.get(i).get("CAR_NO").toString()); - } - commCollectServerService.insertPreRegistInfoModi(obj.get(i)); + // 조회 실패 + logger.info("CarInfoChangeNeo_조회 실패"); + result.setMsg(ResultSmartPlatform.STATUS_SUCESS, "정상적으로 처리되었습니다."); + result.setMsg(ResultSmartPlatform.RESULT_KEY_DEFAULT, "조회결과가 없습니다."); + return result.getResult(); + } + + + JSONParser parser = new JSONParser(); + JSONObject jsonParam = (JSONObject)parser.parse(apiResultMap.get("data").toString()); + System.out.println("=== " + jsonParam.toJSONString()); + + List> brsDataArray = (List>)jsonParam.get("dataArray"); + + if(brsDataArray == null || brsDataArray.size() == 0){ + if(prpUpdateFlag){ + Map mapOrgTemp = new HashMap(); + mapOrgTemp.put("PRP_UPDATE_YN", "Y"); + commCollectServerService.updateMstFlag(mapOrgTemp); } - obj = commCollectServerService.selectSendPreRegistCarInfo(mapOrg); - if(obj == null || obj.size() == 0) { - result.setMsg(ResultSmartPlatform.STATUS_SUCESS, "정상적으로 처리되었습니다."); - result.setMsg(ResultSmartPlatform.RESULT_KEY_DEFAULT, "조회결과가 없습니다."); - return result.getResult(); + result.setMsg(ResultSmartPlatform.STATUS_SUCESS, "정상적으로 처리되었습니다."); + result.setMsg(ResultSmartPlatform.RESULT_KEY_DEFAULT, "조회결과가 없습니다."); + return result.getResult(); + } + + String strExmptCode = ""; + // 사전등록정보 갱신 + for(int i=0; i< brsDataArray.size(); i++){ + brsDataArray.get(i).put("CAR_NO", brsDataArray.get(i).get("vhcleNo").toString()); + brsDataArray.get(i).put("CAR_OWNER_CI", brsDataArray.get(i).get("vhcleOwnerCi").toString()); + brsDataArray.get(i).put("REQ_DATE", brsDataArray.get(i).get("registDt").toString()); + brsDataArray.get(i).put("VHCLE_STTUS_TY", brsDataArray.get(i).get("vhcleSttusTy").toString()); + brsDataArray.get(i).put("NAMSAN_PASMNY", brsDataArray.get(i).get("namsanPasmny").toString()); + brsDataArray.get(i).put("SECSN_YN", brsDataArray.get(i).get("secsnAt").toString()); + if(brsDataArray.get(i).get("SECSN_YN").equals("Y")){ + brsDataArray.get(i).put("SECSN_DATE", brsDataArray.get(i).get("secsnDt").toString()); + brsDataArray.get(i).put("OWNER_NM", "delete"); + }else{ + brsDataArray.get(i).put("OWNER_NM", brsDataArray.get(i).get("mberNm").toString()); } - logger.info("==== 사전등록결제정보 변동분 조회 신규 - 6"); - String str = ""; - StringBuffer strbuf = new StringBuffer(); - for(int i = 0; i < obj.size(); i++) { - obj.get(i).put("WORKER", "admin"); - - str = String.format("%010d%s%s%s" - , Integer.parseInt(obj.get(i).get("PRP_INFO_SEQ").toString()) - , obj.get(i).get("REGIST_DIV").toString() - , obj.get(i).get("CHG_DATA_KIND").toString() - , obj.get(i).get("CAR_NO_HEX").toString().trim()); - strbuf.append(str); - + // 01: 일반, 02: 경차, 03: 면제 + // 면제차량 확인 + strExmptCode = searchExmptCarNo(brsDataArray.get(i).get("CAR_NO").toString(), false); + // 감면차량 확인 + if(strExmptCode.equals("") == true) { + strExmptCode = searchHalfExmptCarNo(brsDataArray.get(i).get("CAR_NO").toString()); } + brsDataArray.get(i).put("EXMP_CD", strExmptCode); + brsDataArray.get(i).put("CAR_NO_HEX", CarNo2Code.runCarNo2Code(brsDataArray.get(i).get("CAR_NO").toString())); + brsDataArray.get(i).put("WORKER", "admin"); + brsDataArray.get(i).put("MODI_YN", "N"); - long end = System.currentTimeMillis(); // 작동 시간 측정용 - double d = end -start; - logger.info("==== 사전등록결제정보 변동분 조회 소요시간 1 :" + d) ; + logger.info("=== 1 : " + brsDataArray.get(i).get("CAR_NO").toString()); //전인종 - logger.info("==== 사전등록결제정보 변동분 조회 신규 - 7"); - Map paramMap = new HashMap(); - paramMap.put("staffList", obj); - commCollectServerService.updatePreRegistInfoSend(paramMap); - - d = end -start; - logger.info("==== 사전등록결제정보 변동분 조회 소요시간 2 :" + d) ; - paramMap.remove("staffList"); - - d = end -start; - logger.info("==== 사전등록결제정보 변동분 조회 소요시간 3 :" + d) ; - logger.info("==== 사전등록결제정보 변동분 조회 신규 - 8"); - result.setMsg(ResultSmartPlatform.STATUS_SUCESS, "정상적으로 처리되었습니다."); - result.setMsg(ResultSmartPlatform.RESULT_KEY_DEFAULT, strbuf.toString()); + // 탈퇴이거나 차량을 삭제하면 삭제만 함. + if(brsDataArray.get(i).get("SECSN_YN").toString().equals("Y") == true + || brsDataArray.get(i).get("VHCLE_STTUS_TY").toString().equals("02") == true + || brsDataArray.get(i).get("VHCLE_STTUS_TY").toString().equals("03") == true + || brsDataArray.get(i).get("NAMSAN_PASMNY").toString().equals("N") == true + ) { + //마스터 데이터 삭제 + brsDataArray.get(i).put("SECSN_YN", "Y"); + brsDataArray.get(i).put("SECSN_DATE", ""); + logger.info("=== 사전등록결제 회원 탈퇴 : " + brsDataArray.get(i).get("CAR_NO").toString()); + } + commCollectServerService.insertPreRegistInfoModi(brsDataArray.get(i)); + } + + List> newList = commCollectServerService.selectSendPreRegistCarInfo(mapOrg); + if(newList == null || newList.size() == 0) { + if(prpUpdateFlag){ + Map mapOrgTemp = new HashMap(); + mapOrgTemp.put("PRP_UPDATE_YN", "Y"); + commCollectServerService.updateMstFlag(mapOrgTemp); + } - }else { result.setMsg(ResultSmartPlatform.STATUS_SUCESS, "정상적으로 처리되었습니다."); result.setMsg(ResultSmartPlatform.RESULT_KEY_DEFAULT, "조회결과가 없습니다."); - return result.getResult(); + return result.getResult(); } + logger.info("==== 사전등록결제정보 변동분 조회 신규 - 6"); + String str = ""; + StringBuffer strbuf = new StringBuffer(); + for(int i = 0; i < newList.size(); i++) { + newList.get(i).put("WORKER", "admin"); + + str = String.format("%010d%s%s%s" + , Integer.parseInt(newList.get(i).get("PRP_INFO_SEQ").toString()) + , newList.get(i).get("REGIST_DIV").toString() + , newList.get(i).get("CHG_DATA_KIND").toString() + , newList.get(i).get("CAR_NO_HEX").toString().trim()); + strbuf.append(str); + + } + long end = System.currentTimeMillis(); // 작동 시간 측정용 + double d = end -start; + logger.info("==== 사전등록결제정보 변동분 조회 소요시간 1 :" + d) ; - - - - - - - - - -// if(obj.get(0).get("PRP_FLAG").toString().equals("2") == true -// && obj.get(0).get("PRP_SENDTIME").toString().equals(end_dt.substring(0, 8)) == true) { -// // 마스터 작업중이지 않을때 변동분 처리 -// if(Long.parseLong(obj.get(0).get("PRP_CHG_TIME").toString()) < Long.parseLong(start_dt)) { -// mapOrg.put("start_dt", obj.get(0).get("PRP_CHG_TIME").toString()); -// -// Map mapOrgTemp = new HashMap(); -// mapOrgTemp.put("PRP_UPDATE_YN", "Y"); -// if(commCollectServerService.updateMstFlag(mapOrgTemp) < 0) { -// result.setErrorMsg(null, null); -// logger.info(result.getResult().get("resultMessage").toString()); -// return result.getResult(); -// } -// mapOrgTemp.clear(); -// } -// -// -// logger.info("==== 사전등록결제정보 변동분 조회 신규 - 3"); -// obj = commCollectServerService.selectPreRegistCarInfoChange(mapOrg); -// -// -// if(obj == null || obj.size() == 0) { -// result.setMsg(ResultSmartPlatform.STATUS_SUCESS, "정상적으로 처리되었습니다."); -// result.setMsg(ResultSmartPlatform.RESULT_KEY_DEFAULT, "조회결과가 없습니다."); -// return result.getResult(); -// } -// -// logger.info("==== 사전등록결제정보 변동분 조회 신규 - 4"); -// String strExmptCode = ""; -// // 사전등록정보 갱신 -// for(int i=0; i< obj.size(); i++){ -// -// // 01: 일반, 02: 경차, 03: 면제 -// // 면제차량 확인 -// strExmptCode = searchExmptCarNo(obj.get(i).get("CAR_NO").toString(), false); -// // 감면차량 확인 -// if(strExmptCode.equals("") == true) { -// strExmptCode = searchHalfExmptCarNo(obj.get(i).get("CAR_NO").toString()); -// } -// obj.get(i).put("EXMP_CD", strExmptCode); -// -// obj.get(i).put("CAR_NO_HEX", CarNo2Code.runCarNo2Code(obj.get(i).get("CAR_NO").toString())); -// obj.get(i).put("WORKER", "admin"); -// -// logger.info("=== 1 : " + obj.get(i).get("CAR_NO").toString()); -// -//// if(obj.get(i).get("UPDT_SE").toString().equals("02") == true) { // 변경시 삭제 등록 -//// obj.get(i).put("MODI_YN", "Y"); -//// commCollectServerService.insertPreRegistInfoModi(obj.get(i)); -//// } -// -// // 탈퇴이거나 차량을 삭제하면 삭제만 함. -// if(obj.get(i).get("SECSN_YN").toString().equals("Y") == true -// || obj.get(i).get("VHCLE_STTUS_TY").toString().equals("03") == true -// || obj.get(i).get("NAMSAN_PASMNY").toString().equals("N") == true -// //|| obj.get(i).get("NAMSAN_FFNLG").toString().equals("N") == true // 과태료 사용여부 체크 제외 -// ) { -// logger.info("=== 사전등록결제 회원 탈퇴 : " + obj.get(i).get("CAR_NO").toString()); -// }else { -// obj.get(i).put("MODI_YN", "N"); -// commCollectServerService.insertPreRegistInfoModi(obj.get(i)); -// } -// } // end for i -// logger.info("==== 사전등록결제정보 변동분 조회 신규 - 5"); -// -// obj = commCollectServerService.selectSendPreRegistCarInfo(mapOrg); -// if(obj == null || obj.size() == 0) { -// result.setErrorMsg(null, null); -// logger.info(result.getResult().get("resultMessage").toString()); -// return result.getResult(); -// } -// -// logger.info("==== 사전등록결제정보 변동분 조회 신규 - 6"); -// String str = ""; -// StringBuffer strbuf = new StringBuffer(); -// for(int i = 0; i < obj.size(); i++) { -// obj.get(i).put("WORKER", "admin"); -// -// str = String.format("%010d%s%s%s" -// , Integer.parseInt(obj.get(i).get("PRP_INFO_SEQ").toString()) -// , obj.get(i).get("MODI_YN").toString() -// , obj.get(i).get("EXMP_CD").toString() -// , obj.get(i).get("CAR_NO_HEX").toString().trim()); -// strbuf.append(str); -// -// } -// -// long end = System.currentTimeMillis(); // 작동 시간 측정용 -// double d = end -start; -// logger.info("==== 사전등록결제정보 변동분 조회 소요시간 1 :" + d) ; -// -// logger.info("==== 사전등록결제정보 변동분 조회 신규 - 7"); -// Map paramMap = new HashMap(); -// paramMap.put("staffList", obj); -// commCollectServerService.updatePreRegistInfoSend(paramMap); -// -// d = end -start; -// logger.info("==== 사전등록결제정보 변동분 조회 소요시간 2 :" + d) ; -// paramMap.remove("staffList"); -// -// d = end -start; -// logger.info("==== 사전등록결제정보 변동분 조회 소요시간 3 :" + d) ; -// logger.info("==== 사전등록결제정보 변동분 조회 신규 - 8"); -// result.setMsg(ResultSmartPlatform.STATUS_SUCESS, "정상적으로 처리되었습니다."); -// result.setMsg(ResultSmartPlatform.RESULT_KEY_DEFAULT, strbuf.toString()); -// } -// else { -// result.setMsg(ResultSmartPlatform.STATUS_SUCESS, "정상적으로 처리되었습니다."); -// result.setMsg(ResultSmartPlatform.RESULT_KEY_DEFAULT, "조회결과가 없습니다."); -// return result.getResult(); -// } + logger.info("==== 사전등록결제정보 변동분 조회 신규 - 7"); + Map paramMap = new HashMap(); + paramMap.put("staffList", newList); + commCollectServerService.updatePreRegistInfoSend(paramMap); + + d = end -start; + logger.info("==== 사전등록결제정보 변동분 조회 소요시간 2 :" + d) ; + paramMap.remove("staffList"); + + d = end -start; + logger.info("==== 사전등록결제정보 변동분 조회 소요시간 3 :" + d) ; + logger.info("==== 사전등록결제정보 변동분 조회 신규 - 8"); + result.setMsg(ResultSmartPlatform.STATUS_SUCESS, "정상적으로 처리되었습니다."); + result.setMsg(ResultSmartPlatform.RESULT_KEY_DEFAULT, strbuf.toString()); + + if(prpUpdateFlag){ + Map mapOrgTemp = new HashMap(); + mapOrgTemp.put("PRP_UPDATE_YN", "Y"); + commCollectServerService.updateMstFlag(mapOrgTemp); + } + }catch(RuntimeException e) { e.printStackTrace(); result.setErrorMsg(Result.STATUS_ERROR, Result.STATUS_ERROR_MESSAGE);