diff --git a/src/main/java/cokr/xit/fims/nxrp/service/bean/NisIndivBean.java b/src/main/java/cokr/xit/fims/nxrp/service/bean/NisIndivBean.java index 33192327..d170d478 100644 --- a/src/main/java/cokr/xit/fims/nxrp/service/bean/NisIndivBean.java +++ b/src/main/java/cokr/xit/fims/nxrp/service/bean/NisIndivBean.java @@ -25,8 +25,10 @@ import org.springframework.stereotype.Component; import com.fasterxml.jackson.databind.ObjectMapper; import cokr.xit.base.user.service.bean.UserBean; +import cokr.xit.fims.cmmn.CmmnQuery; import cokr.xit.fims.crdn.Crdn; import cokr.xit.fims.crdn.dao.CrdnUpdtMapper; +import cokr.xit.fims.mngt.service.bean.FactionBean; import cokr.xit.fims.nxrp.NisIndivA01; import cokr.xit.fims.nxrp.NisIndivA02; import cokr.xit.fims.nxrp.NisIndivA03; @@ -77,6 +79,10 @@ public class NisIndivBean extends AbstractComponent { @Resource(name="userBean") protected UserBean userBean; + /** 부서 정보 DAO */ + @Resource(name = "factionBean") + private FactionBean factionBean; + /**지정한 조건에 따라 과태료 대장 단속 정보 등록 목록을 조회하여 반환한다. * @param req 과태료 대장 단속 정보 등록 조회 조건 * @return 과태료 대장 단속 정보 등록 목록 @@ -120,10 +126,13 @@ public class NisIndivBean extends AbstractComponent { List sndngDtlIds = sndngDtlMapper.selectSndngTrgtDtlIds(sndbQuery); - // 2. 사용자 정보를 조회하여 자치단체 코드 및 부서 코드 확인 + // 2. 사용자 정보 DataObject userInfo = userBean.getUserInfo(currentUser().getId()); - // 3. 단속 자료를 조회하여 세외수입 단속 연계 여부를 확인하여 "N"인 자료는 세외수입 연계 테이블에 등록한다. + // 3. 부서 정보 + DataObject deptInfo = factionBean.getDeptInfo(new CmmnQuery().setDeptCd(userInfo.string("DEPT_CD"))); + + // 4. 단속 자료를 조회하여 세외수입 단속 연계 여부를 확인하여 "N"인 자료는 세외수입 연계 테이블에 등록한다. for (int iLoop = 0; iLoop < sndngDtlIds.size(); iLoop++) { // 발송 상세 상태 코드(SNDNG_DTL_STTS_CD) 가 처리전(00)이 아니라면 다음 자료로.. if (!sndngDtlIds.get(iLoop).string("SNDNG_DTL_STTS_CD").equals("00")) { @@ -146,21 +155,21 @@ public class NisIndivBean extends AbstractComponent { nisIndivA01.setRprsTxmCd(selectCrdnInfo.string("TXITM_CD")); // 대표세입과목코드 nisIndivA01.setOperItemCd(selectCrdnInfo.string("OPER_ITEM_CD")); // 운영항목코드 // 과태료과징금구분코드 01:과태료 02:과징금 - if (selectCrdnInfo.string("TASK_SE_CD").equals("PES")) { // 밤샘주차는 과징금(02) + if (selectCrdnInfo.string("TASK_SE_CD").equals("PES")) { // 밤샘주차는 과징금(02) nisIndivA01.setFinScrgSeCd("02"); } else { nisIndivA01.setFinScrgSeCd("01"); } // 납부자구분코드(FIM011) 01:주민 02:외국인 03:법인 04:사업자 05:기타 -> 01:개인 02:법인 03:단체 05:외국인 - if (selectCrdnInfo.string("RTPYR_SE_CD").equals("01")) { // 주민(01) -> 개인(01) + if (selectCrdnInfo.string("RTPYR_SE_CD").equals("01")) { // 주민(01) -> 개인(01) nisIndivA01.setPyrSeCd("01"); - } else if (selectCrdnInfo.string("RTPYR_SE_CD").equals("02")) { // 외국인(02) -> 외국인(05) + } else if (selectCrdnInfo.string("RTPYR_SE_CD").equals("02")) { // 외국인(02) -> 외국인(05) nisIndivA01.setPyrSeCd("05"); - } else if (selectCrdnInfo.string("RTPYR_SE_CD").equals("03")) { // 법인(03) -> 법인(02) + } else if (selectCrdnInfo.string("RTPYR_SE_CD").equals("03")) { // 법인(03) -> 법인(02) nisIndivA01.setPyrSeCd("02"); - } else if (selectCrdnInfo.string("RTPYR_SE_CD").equals("04")) { // 사업자(04) -> 사업자(04) + } else if (selectCrdnInfo.string("RTPYR_SE_CD").equals("04")) { // 사업자(04) -> 사업자(04) nisIndivA01.setPyrSeCd("04"); - } else { // 기타(05) -> 단체(03) + } else { // 기타(05) -> 단체(03) nisIndivA01.setPyrSeCd("03"); } nisIndivA01.setPyrNo(selectCrdnInfo.string("RTPYR_NO")); // 납부자번호 @@ -175,9 +184,9 @@ public class NisIndivBean extends AbstractComponent { nisIndivA01.setPyrZip(selectCrdnInfo.string("ZIP")); // 납부자우편번호 nisIndivA01.setPyrRoadNmCd(selectCrdnInfo.string("ROAD_NM_CD")); // 납부자도로명코드 // 납부자주소지하여부(FIM036) 0:지상 1: 지하 -> Y:지하, N:지상 - if (selectCrdnInfo.string("ROAD_NM_CD").equals("1")) { // 지하(1) -> 지하(Y) + if (selectCrdnInfo.string("ROAD_NM_CD").equals("1")) { // 지하(1) -> 지하(Y) nisIndivA01.setPyrAddrUdgdYn("Y"); - } else { // 기본값('N') + } else { // 기본값('N') nisIndivA01.setPyrAddrUdgdYn("N"); } nisIndivA01.setPyrBmno(selectCrdnInfo.string("BMNO")); // 납부자건물본번 @@ -185,9 +194,9 @@ public class NisIndivBean extends AbstractComponent { nisIndivA01.setPyrStdgCd(selectCrdnInfo.string("STDG_CD")); // 납부자법정동코드 nisIndivA01.setPyrDongCd(selectCrdnInfo.string("DONG_CD")); // 납부자행정동코드 // 산 구분 코드(FIM037) 0: 1:산 -> 납부자산구분코드 01:일반번지, 02:산번지 - if (selectCrdnInfo.string("MTN_SE_CD").equals("1")) { // 산(1) -> 산번지(02) + if (selectCrdnInfo.string("MTN_SE_CD").equals("1")) { // 산(1) -> 산번지(02) nisIndivA01.setPyrMtnSeCd("02"); - } else { // 01:일반번지 + } else { // 01:일반번지 nisIndivA01.setPyrMtnSeCd("01"); } nisIndivA01.setPyrBldgMngNo(selectCrdnInfo.string("BLDG_MNG_NO")); // 납부자건물관리번호 @@ -234,23 +243,23 @@ public class NisIndivBean extends AbstractComponent { nisIndivA01.setFcltSeCd(""); // 시설구분코드 / 금연구역흡연위반 과태료인 경우 활용 nisIndivA01.setRegSeCd(""); // 등록구분코드 / 폐기물관리법위반 과태료인 경우 01투기, 02소각, 99기타 // 감경 사유 코드(FIM019) -> 감경사유구분코드 - if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("01")) { // 국민기초생활수급자 + if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("01")) { // 국민기초생활수급자 nisIndivA01.setRdtRsnSeCd("0101"); - } else if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("02")) { // 한부모가족보호대상자 + } else if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("02")) { // 한부모가족보호대상자 nisIndivA01.setRdtRsnSeCd("0102"); - } else if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("03")) { // 장애인(장애의 정도가 심한 장애인) + } else if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("03")) { // 장애인(장애의 정도가 심한 장애인) nisIndivA01.setRdtRsnSeCd("0103"); - } else if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("04")) { // 국가유공자(상이등급3급이상) + } else if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("04")) { // 국가유공자(상이등급3급이상) nisIndivA01.setRdtRsnSeCd("0104"); - } else if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("05")) { // 미성년자 + } else if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("05")) { // 미성년자 nisIndivA01.setRdtRsnSeCd("0105"); - } else if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("08")) { // 의견진술감액 + } else if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("08")) { // 의견진술감액 nisIndivA01.setRdtRsnSeCd(""); - } else if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("09")) { // 기타 + } else if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("09")) { // 기타 nisIndivA01.setRdtRsnSeCd(""); - } else if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("99")) { // 타법령에의한감경 + } else if (selectCrdnInfo.string("RDUCT_RSN_CD").equals("99")) { // 타법령에의한감경 nisIndivA01.setRdtRsnSeCd("0199"); - } else { // 해당없음 + } else { // 해당없음 nisIndivA01.setRdtRsnSeCd("0100"); } nisIndivA01.setVhrno(selectCrdnInfo.string("VHRNO")); // 자동차등록번호 @@ -296,10 +305,8 @@ public class NisIndivBean extends AbstractComponent { nisIndivA01.setModifiedBy(userInfo.string("USER_ID")); // 차세대 세외수입 연계 서비스 호출 - A01 과태료 대장 단속 정보 등록 - String protocol = "https://"; - String ip = StringUtils.joinWith(".", "211", "119", "124", "117"); - String port = ":18080"; - String sUrl = protocol+ip+port+"/intf/lntris/a01/create"; +// String sUrl = deptInfo.string("NXRP_LINK_SRVC_URL") + "/intf/lntris/a01"; + String sUrl = deptInfo.string("NXRP_LINK_SRVC_URL") + "/intf/lntris/a01/create"; String sMethod = "POST"; String sJsonData = ""; @@ -308,27 +315,17 @@ public class NisIndivBean extends AbstractComponent { try { String voToJson = mapper.writeValueAsString(nisIndivA01); - sJsonData = "{\"taskSeCd\":" + "\"" + nisIndivA01.getTaskSeCd() + "\"" - + ", \"msg\":" + voToJson - + "}"; + sJsonData = "{ \"taskSeCd\":" + "\"" + nisIndivA01.getTaskSeCd() + "\"" + ", \"msg\":" + voToJson + " }"; } catch (IOException e) { throw new RuntimeException("세외수입 과태료대장에 보낼 자료 생성중 오류가 발생하엿습니다."); // 예외를 발생시켜서 DB Rollback } - String resultMsg = callHttpsJson(sUrl, sMethod, sJsonData); // 연계 서비스 호출 - System.out.println(resultMsg); - + // 연계 서비스 호출 + String resultMsg = callHttpsJson(sUrl, sMethod, sJsonData); if (resultMsg.equals("")) { throw new RuntimeException("세외수입 과태료대장 연계에 실패하였습니다."); } -/* - rtnScs = nisIndivA01Mapper.insert(nisIndivA01); - if (!rtnScs) { - throw new RuntimeException("세외수입 과태료대장에 단속 정보 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback - } -*/ - // 발송 대장(TB_SNDNG) - 발송 상태 코드(SNDNG_DTL_STTS_CD) 수정 SndngDtl sndngDtl = new SndngDtl(); sndngDtl.setSndngDtlSttsCd("01"); // 발송 상태 코드(FIM050) 01:세외수입부과 @@ -348,7 +345,6 @@ public class NisIndivBean extends AbstractComponent { if(effected != 1) { throw new RuntimeException("세외수입 과태료대장 연계 정보를 단속 대장에 수정하지 못했습니다."); } - } rtnMsg = "[S] 작업이 정상 처리 되었습니다."; diff --git a/src/main/resources/sql/mapper/fims/mngt/faction-mapper.xml b/src/main/resources/sql/mapper/fims/mngt/faction-mapper.xml index 6524df9a..ba36baf9 100644 --- a/src/main/resources/sql/mapper/fims/mngt/faction-mapper.xml +++ b/src/main/resources/sql/mapper/fims/mngt/faction-mapper.xml @@ -60,7 +60,7 @@ LEFT OUTER JOIN TB_DEPT B ON (A.INST_CD = B.INST_CD) - + /* 시군구 객체 가져오기(factionMapper.selectSggs) */ @@ -185,6 +185,7 @@ UPDATE TB_SGG + @@ -222,6 +223,7 @@ UPDATE TB_SGG , D.ENS_TARGET_CD , D.ENS_URL , D.NXRP_LINK_YN + , D.NXRP_LINK_SRVC_URL , D.NXRP_RGN_SE_CD , D.DTBN_BANK_NM , D.DTBN_ACTNO