|
|
@ -2,6 +2,8 @@ package cokr.xit.fims.cvlc.service.bean;
|
|
|
|
|
|
|
|
|
|
|
|
import java.io.File;
|
|
|
|
import java.io.File;
|
|
|
|
import java.text.SimpleDateFormat;
|
|
|
|
import java.text.SimpleDateFormat;
|
|
|
|
|
|
|
|
import java.time.LocalDate;
|
|
|
|
|
|
|
|
import java.time.format.DateTimeFormatter;
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.Date;
|
|
|
|
import java.util.Date;
|
|
|
|
import java.util.List;
|
|
|
|
import java.util.List;
|
|
|
@ -27,7 +29,10 @@ import cokr.xit.fims.crdn.dao.Crdn06Mapper;
|
|
|
|
import cokr.xit.fims.cvlc.CrdnCvlcpt;
|
|
|
|
import cokr.xit.fims.cvlc.CrdnCvlcpt;
|
|
|
|
import cokr.xit.fims.cvlc.dao.CrdnCvlcptMapper;
|
|
|
|
import cokr.xit.fims.cvlc.dao.CrdnCvlcptMapper;
|
|
|
|
import cokr.xit.fims.cvlc.service.CrdnCvlcptService;
|
|
|
|
import cokr.xit.fims.cvlc.service.CrdnCvlcptService;
|
|
|
|
|
|
|
|
import cokr.xit.fims.excl.Excl01;
|
|
|
|
|
|
|
|
import cokr.xit.fims.excl.service.bean.Excl01Bean;
|
|
|
|
import cokr.xit.fims.sprt.Sprt;
|
|
|
|
import cokr.xit.fims.sprt.Sprt;
|
|
|
|
|
|
|
|
import cokr.xit.foundation.UserInfo;
|
|
|
|
import cokr.xit.foundation.component.AbstractServiceBean;
|
|
|
|
import cokr.xit.foundation.component.AbstractServiceBean;
|
|
|
|
import cokr.xit.foundation.data.DataObject;
|
|
|
|
import cokr.xit.foundation.data.DataObject;
|
|
|
|
import kr.dogfoot.hwplib.object.HWPFile;
|
|
|
|
import kr.dogfoot.hwplib.object.HWPFile;
|
|
|
@ -44,6 +49,9 @@ public class CrdnCvlcptServiceBean extends AbstractServiceBean implements CrdnCv
|
|
|
|
@Resource(name="crdnCvlcptBean")
|
|
|
|
@Resource(name="crdnCvlcptBean")
|
|
|
|
protected CrdnCvlcptBean crdnCvlcptBean;
|
|
|
|
protected CrdnCvlcptBean crdnCvlcptBean;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Resource(name="excl01Bean")
|
|
|
|
|
|
|
|
private Excl01Bean excl01Bean;
|
|
|
|
|
|
|
|
|
|
|
|
@Resource(name = "crdnCvlcptMapper")
|
|
|
|
@Resource(name = "crdnCvlcptMapper")
|
|
|
|
private CrdnCvlcptMapper crdnCvlcptMapper;
|
|
|
|
private CrdnCvlcptMapper crdnCvlcptMapper;
|
|
|
|
|
|
|
|
|
|
|
@ -237,46 +245,110 @@ public class CrdnCvlcptServiceBean extends AbstractServiceBean implements CrdnCv
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public boolean updateCvlcptPrcs(Map<String, Object> nonQueryRequest, CrdnCvlcpt crdnCvlcpt, Crdn crdn, List<FileInfo> newFileInfoList) {
|
|
|
|
public boolean updateCvlcptPrcsSe(Map<String, Object> nonQueryRequest, CrdnCvlcpt crdnCvlcpt, Crdn crdn, List<FileInfo> newFileInfoList) {
|
|
|
|
boolean saved = false;
|
|
|
|
boolean saved = false;
|
|
|
|
|
|
|
|
|
|
|
|
int fileInsertEffected = 0;
|
|
|
|
DataObject crdnInfo = crdnCvlcptBean.getCrdnInfo(crdn.getCrdnId());
|
|
|
|
int fileDeleteEffected = 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(newFileInfoList != null && !newFileInfoList.isEmpty()) {
|
|
|
|
crdnCvlcpt.setCvlcptLinkId(crdnInfo.string("CVLCPT_LINK_ID"));
|
|
|
|
fileInsertEffected = fileBean.create(newFileInfoList);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if((String[])nonQueryRequest.get("deleteFileKeyList") != null) {
|
|
|
|
String acceptType = (String)nonQueryRequest.get("acceptType");
|
|
|
|
fileDeleteEffected = fileBean.remove((String[])nonQueryRequest.get("deleteFileKeyList"));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int changeFileCnt = (fileInsertEffected - fileDeleteEffected);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (crdnInfo.string("CRDN_REG_SE_CD").equals("02")) {
|
|
|
|
|
|
|
|
|
|
|
|
crdnCvlcpt.setCvlcptLinkId(crdn.getLinkId());
|
|
|
|
if(acceptType.equals("someAccept") || acceptType.equals("nonAccept")) { //일부수용,불수용
|
|
|
|
|
|
|
|
|
|
|
|
String acceptType = (String)nonQueryRequest.get("acceptType");
|
|
|
|
// 단속민원(TB_CRDN_CVLCPT) 대장
|
|
|
|
|
|
|
|
Excl01 updtCrdnCvlcpt = new Excl01();
|
|
|
|
|
|
|
|
boolean retSuccess = false;
|
|
|
|
|
|
|
|
String newCvlcptPrcsCd = "";
|
|
|
|
|
|
|
|
String newCvlcptTrsmCd = "";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
updtCrdnCvlcpt.setCvlcptLinkId(crdnInfo.string("CVLCPT_LINK_ID")); // 민원 연계 ID
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 답변내용 초기화
|
|
|
|
|
|
|
|
retSuccess = crdnCvlcptBean.initCvlcptPrcsRsltCn(crdnCvlcpt.getCvlcptLinkId());
|
|
|
|
|
|
|
|
if (!retSuccess) {
|
|
|
|
|
|
|
|
// 예외를 발생시켜서 오류메세지를 보내고 DB Rollback
|
|
|
|
|
|
|
|
throw new RuntimeException("부과제외 등록 중 단속민원 대장의 민원처리결과내용 초기화에 실패하였습니다.");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 답변완료 후 서손처리에 대해서는 답변 상태를 업데이트 하지 않는다
|
|
|
|
|
|
|
|
// 전송대상, 전송 미대상 자료에 대해서 업데이트한다.
|
|
|
|
|
|
|
|
if (crdnInfo.string("CVLCPT_TRSM_CD").equals("01")
|
|
|
|
|
|
|
|
|| crdnInfo.string("CVLCPT_TRSM_CD").equals("02")
|
|
|
|
|
|
|
|
|| crdnInfo.string("CVLCPT_TRSM_CD").equals("03")) {
|
|
|
|
|
|
|
|
// 민원 답변 문구(TB_CVLCPT_ANS_WORDS) 대장 조회
|
|
|
|
|
|
|
|
DataObject infoCvlcptAnsWords = excl01Bean.selectCvlcptAnsWordsInfo(crdn.getLevyExclRsnCd());
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 비부과(서손)사유가 민원 답변대상인가? 민원 답변 문구(TB_CVLCPT_ANS_WORDS) 대장에 답변 사유 코드가 존재한다면..
|
|
|
|
|
|
|
|
if (!infoCvlcptAnsWords.string("ANS_WORDS_ID").equals("")) {
|
|
|
|
|
|
|
|
newCvlcptPrcsCd = "04"; // 민원 처리 코드 - 불수용(과태료 부과제외)
|
|
|
|
|
|
|
|
newCvlcptTrsmCd = "01"; // 민원 전송 코드 - 전송 대상
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
newCvlcptPrcsCd = "07"; // 민원 처리 코드 - 비부과(서손)사유가 답변 미대상
|
|
|
|
|
|
|
|
newCvlcptTrsmCd = "03"; // 민원 전송 코드 - 비부과(서손)사유가 전송 미대상
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 현재 날짜 구하기
|
|
|
|
|
|
|
|
LocalDate now = LocalDate.now();
|
|
|
|
|
|
|
|
// 포맷 정의
|
|
|
|
|
|
|
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmmss"); // yyyy년 MM월 dd일 HH시 mm분 ss초
|
|
|
|
|
|
|
|
// 포맷 적용
|
|
|
|
|
|
|
|
String formatedNow = now.format(formatter);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 단속민원(TB_CRDN_CVLCPT) 대장을 수정 한다.
|
|
|
|
|
|
|
|
updtCrdnCvlcpt.setCvlcptPrcsCd(newCvlcptPrcsCd); // 민원 처리 코드
|
|
|
|
|
|
|
|
updtCrdnCvlcpt.setCvlcptPrcsSumry(infoCvlcptAnsWords.string("PRCS_SUMRY")); // 민원 처리 요약
|
|
|
|
|
|
|
|
updtCrdnCvlcpt.setCvlcptPrcsRsltCn(infoCvlcptAnsWords.string("PRCS_RSLT_CN")); // 민원 처리 결과 내용
|
|
|
|
|
|
|
|
updtCrdnCvlcpt.setCvlcptPrcsCmptnDt(formatedNow); // 민원 처리 완료 일시
|
|
|
|
|
|
|
|
updtCrdnCvlcpt.setCvlcptPrcsPic(UserInfo.current().getId()); // 민원 처리 담당자
|
|
|
|
|
|
|
|
updtCrdnCvlcpt.setCvlcptTrsmCd(newCvlcptTrsmCd); // 민원 전송 코드
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 단속민원 민원처리코드 수정
|
|
|
|
|
|
|
|
retSuccess = excl01Bean.updateCrdnCvlcpt(updtCrdnCvlcpt);
|
|
|
|
|
|
|
|
if (!retSuccess) {
|
|
|
|
|
|
|
|
// 예외를 발생시켜서 오류메세지를 보내고 DB Rollback
|
|
|
|
|
|
|
|
throw new RuntimeException("부과제외 등록 중 단속민원답변 수정에 실패하였습니다.");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if(acceptType.equals("someAccept") || acceptType.equals("nonAccept")) {
|
|
|
|
|
|
|
|
///call 부과제외
|
|
|
|
} else { //수용일 때
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//TODO : 전송코드,처리코드 결정
|
|
|
|
|
|
|
|
crdnCvlcpt.setCvlcptPrcsCd("");
|
|
|
|
|
|
|
|
crdnCvlcpt.setCvlcptTrsmCd("02");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//TODO : 전송문구 조회
|
|
|
|
|
|
|
|
crdnCvlcpt.setCvlcptPrcsSumry("요약요약요약");
|
|
|
|
|
|
|
|
crdnCvlcpt.setCvlcptPrcsRsltCn("결과결과결과");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//민원정보변경
|
|
|
|
|
|
|
|
saved = crdnCvlcptBean.updateCvlcptPrcsSe(crdnCvlcpt);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//TODO : 전송코드,처리코드 결정
|
|
|
|
|
|
|
|
crdnCvlcpt.setCvlcptPrcsCd("");
|
|
|
|
|
|
|
|
crdnCvlcpt.setCvlcptTrsmCd("02");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//TODO : 전송문구 조회
|
|
|
|
int fileInsertEffected = 0;
|
|
|
|
crdnCvlcpt.setCvlcptPrcsSumry("요약요약요약");
|
|
|
|
int fileDeleteEffected = 0;
|
|
|
|
crdnCvlcpt.setCvlcptPrcsRsltCn("결과결과결과");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//민원정보변경
|
|
|
|
if(newFileInfoList != null && !newFileInfoList.isEmpty()) {
|
|
|
|
saved = crdnCvlcptBean.updateCvlcptPrcs(crdnCvlcpt);
|
|
|
|
fileInsertEffected = fileBean.create(newFileInfoList);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if((String[])nonQueryRequest.get("deleteFileKeyList") != null) {
|
|
|
|
|
|
|
|
fileDeleteEffected = fileBean.remove((String[])nonQueryRequest.get("deleteFileKeyList"));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
nonQueryRequest.put("changeFileCnt", changeFileCnt);
|
|
|
|
int changeFileCnt = (fileInsertEffected - fileDeleteEffected);
|
|
|
|
//단속정보변경
|
|
|
|
//단속정보변경
|
|
|
|
|
|
|
|
nonQueryRequest.put("changeFileCnt", changeFileCnt);
|
|
|
|
saved = crdnCvlcptBean.updateCrdn(nonQueryRequest, crdn);
|
|
|
|
saved = crdnCvlcptBean.updateCrdn(nonQueryRequest, crdn);
|
|
|
|
|
|
|
|
|
|
|
|
return saved;
|
|
|
|
return saved;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|