|
|
@ -241,17 +241,30 @@ public class BizNimsServiceBean extends AbstractServiceBean implements BizNimsSe
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 0. 조회(저장)한 데이타 대상 에서 제외 (usrRptIdNo가 DB에 저장된 경우)
|
|
|
|
// 0. 조회(저장)한 데이타 대상 에서 제외 (usrRptIdNo가 DB에 저장된 경우)
|
|
|
|
List<NimsApiDto.DsuseRptInfo> list = new ArrayList<>();
|
|
|
|
// 작업대상 데이타 List
|
|
|
|
|
|
|
|
List<NimsApiDto.DsuseRptInfo> workList = new ArrayList<>();
|
|
|
|
|
|
|
|
// 결과 return 작업 대상, 대상 데이타 List
|
|
|
|
|
|
|
|
List<NimsApiDto.DsuseRptInfo> rtnTmplist = new ArrayList<>();
|
|
|
|
|
|
|
|
List<NimsApiDto.DsuseRptInfo> rtnlist = new ArrayList<>();
|
|
|
|
for (NimsApiDto.DsuseRptInfo dto : rsltList) {
|
|
|
|
for (NimsApiDto.DsuseRptInfo dto : rsltList) {
|
|
|
|
Map<String, String> map = new HashMap<>();
|
|
|
|
Map<String, String> map = new HashMap<>();
|
|
|
|
map.put("usrRptIdNo", dto.getUsrRptIdNo());
|
|
|
|
map.put("usrRptIdNo", dto.getUsrRptIdNo());
|
|
|
|
if(isEmpty(bizNimsMapper.selectDsuseRptInfoByUsrRptIdNo(map))){
|
|
|
|
NimsApiDto.DsuseRptInfo infoDto = bizNimsMapper.selectDsuseRptInfoByUsrRptIdNo(map);
|
|
|
|
list.add(dto);
|
|
|
|
if(isEmpty(infoDto)){
|
|
|
|
|
|
|
|
workList.add(dto);
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
|
|
|
// FIXME: API 적용 필요
|
|
|
|
|
|
|
|
// API 조회 반영된 사용여부가 'Y', 처리상태코드가 미완료인 경우는 return 대상
|
|
|
|
|
|
|
|
//if("Y".equals(infoDto.getUseYn()) && !"".equals(infoDto.getStatus())){
|
|
|
|
|
|
|
|
if("Y".equals(infoDto.getUseYn())){
|
|
|
|
|
|
|
|
rtnTmplist.add(dto);
|
|
|
|
|
|
|
|
rtnlist.add(dto);
|
|
|
|
|
|
|
|
}
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 1. 신규(rptTyCd : 0) 저장 - tb_dsuse_rpt_info, tb_dsuse_rpt_info_dtl 생성
|
|
|
|
// 1. 신규(rptTyCd : 0) 저장 - tb_dsuse_rpt_info, tb_dsuse_rpt_info_dtl 생성
|
|
|
|
for (NimsApiDto.DsuseRptInfo dto : list) {
|
|
|
|
for (NimsApiDto.DsuseRptInfo dto : workList) {
|
|
|
|
dto.setOrgUsrRptIdNo(dto.getUsrRptIdNo());
|
|
|
|
dto.setOrgUsrRptIdNo(dto.getUsrRptIdNo());
|
|
|
|
dto.setRgtr(Constants.NIMS_API_USER_ID);
|
|
|
|
dto.setRgtr(Constants.NIMS_API_USER_ID);
|
|
|
|
|
|
|
|
|
|
|
@ -260,6 +273,8 @@ public class BizNimsServiceBean extends AbstractServiceBean implements BizNimsSe
|
|
|
|
|
|
|
|
|
|
|
|
// 폐기 보고 정보 데이타 생성
|
|
|
|
// 폐기 보고 정보 데이타 생성
|
|
|
|
createDsuseRpt(dto, true);
|
|
|
|
createDsuseRpt(dto, true);
|
|
|
|
|
|
|
|
rtnTmplist.add(dto);
|
|
|
|
|
|
|
|
rtnlist.add(dto);
|
|
|
|
|
|
|
|
|
|
|
|
// FIXME : 폐기 관리 데이타 매핑
|
|
|
|
// FIXME : 폐기 관리 데이타 매핑
|
|
|
|
List<BizNimsResponse.DsuseMgtRes> newList = dto.mappingNewDsuseRptInfo(dsuseMgts);
|
|
|
|
List<BizNimsResponse.DsuseMgtRes> newList = dto.mappingNewDsuseRptInfo(dsuseMgts);
|
|
|
@ -275,7 +290,7 @@ public class BizNimsServiceBean extends AbstractServiceBean implements BizNimsSe
|
|
|
|
|
|
|
|
|
|
|
|
// 2. 신규 외의 경우(rptTyCd : 1 - 취소, 2 - 변경)
|
|
|
|
// 2. 신규 외의 경우(rptTyCd : 1 - 취소, 2 - 변경)
|
|
|
|
String errMsg = null;
|
|
|
|
String errMsg = null;
|
|
|
|
for (NimsApiDto.DsuseRptInfo dto : list) {
|
|
|
|
for (NimsApiDto.DsuseRptInfo dto : workList) {
|
|
|
|
dto.setRgtr(Constants.NIMS_API_USER_ID);
|
|
|
|
dto.setRgtr(Constants.NIMS_API_USER_ID);
|
|
|
|
|
|
|
|
|
|
|
|
// 신규인 경우 skip
|
|
|
|
// 신규인 경우 skip
|
|
|
@ -297,6 +312,20 @@ public class BizNimsServiceBean extends AbstractServiceBean implements BizNimsSe
|
|
|
|
// 2-3. tb_dsuse_rpt_info, tb_dsuse_rpt_info_dtl 생성 (취소인 경우는 tb_dsuse_rpt_info의 사용 여부 'N'으로 생성)
|
|
|
|
// 2-3. tb_dsuse_rpt_info, tb_dsuse_rpt_info_dtl 생성 (취소인 경우는 tb_dsuse_rpt_info의 사용 여부 'N'으로 생성)
|
|
|
|
createDsuseRpt(dto, false);
|
|
|
|
createDsuseRpt(dto, false);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// FIXME : API 적용 필요
|
|
|
|
|
|
|
|
// 결과 return 대상 데이타 List에서 조회한 변경 대상이 있는 경우 replace
|
|
|
|
|
|
|
|
// 결과 return 대상 데이타 List에서 조회한 취소 대상이 있는 경우 삭제
|
|
|
|
|
|
|
|
for(NimsApiDto.DsuseRptInfo d : rtnTmplist){
|
|
|
|
|
|
|
|
if(d.getOrgUsrRptIdNo().equals(dto.getOrgUsrRptIdNo())
|
|
|
|
|
|
|
|
&& d.getUsrRptIdNo().equals(dto.getRefUsrRptIdNo())){
|
|
|
|
|
|
|
|
rtnlist.remove(d);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(dto.getRptTyCd().equals("2")){
|
|
|
|
|
|
|
|
rtnlist.add(dto);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// FIXME : 폐기 관리 데이타 매핑
|
|
|
|
// FIXME : 폐기 관리 데이타 매핑
|
|
|
|
List<BizNimsResponse.DsuseMgtRes> newList = dto.mappingDsuseRptInfo(dsuseMgts);
|
|
|
|
List<BizNimsResponse.DsuseMgtRes> newList = dto.mappingDsuseRptInfo(dsuseMgts);
|
|
|
|
if(newList.size() > 1){
|
|
|
|
if(newList.size() > 1){
|
|
|
@ -311,7 +340,7 @@ public class BizNimsServiceBean extends AbstractServiceBean implements BizNimsSe
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// return dtos;
|
|
|
|
// return dtos;
|
|
|
|
return list;
|
|
|
|
return workList;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//------------------------------------------------------------------------------------------------------
|
|
|
|
//------------------------------------------------------------------------------------------------------
|
|
|
@ -478,45 +507,6 @@ public class BizNimsServiceBean extends AbstractServiceBean implements BizNimsSe
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* <pre>
|
|
|
|
|
|
|
|
* tb_dsuse_rpt_info, tb_dsuse_rpt_info_dtl 사용여부 'N' update
|
|
|
|
|
|
|
|
* tb_dsuse_mgt
|
|
|
|
|
|
|
|
* 조건 : 사용자보고식별번호 = 참조사용자보고식별번호
|
|
|
|
|
|
|
|
* => usr_rpt_id_no -> refUsrRptIdNo update
|
|
|
|
|
|
|
|
* => 취소인 경우 use_yn = 'N' update
|
|
|
|
|
|
|
|
* @param dto NimsApiDto.DsuseRptInfo
|
|
|
|
|
|
|
|
* </pre>
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
private void updateDsuseRpt(NimsApiDto.DsuseRptInfo dto) {
|
|
|
|
|
|
|
|
String errMsg;
|
|
|
|
|
|
|
|
if ("1".equals(dto.getRptTyCd())) errMsg = "취소";
|
|
|
|
|
|
|
|
else errMsg = "변경";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (bizNimsMapper.updateCancelDsuseRptInfo(dto) == 1) {
|
|
|
|
|
|
|
|
// TODO : 폐기 관리 테이블에 사용자보고식별번호 반영
|
|
|
|
|
|
|
|
// tb_dsuse_mgt
|
|
|
|
|
|
|
|
// 조건 : 사용자보고식별번호 = 참조사용자보고식별번호
|
|
|
|
|
|
|
|
// => usr_rpt_id_no -> refUsrRptIdNo update
|
|
|
|
|
|
|
|
// => 취소인 경우 use_yn = 'N' update
|
|
|
|
|
|
|
|
// if(bizNimsMapper.updateCancelDsuseMgt(dto) == 0){
|
|
|
|
|
|
|
|
// throw ApiCustomException.create("폐기보고정보 변경 적용 실패\n[폐기관리테이블에 사용자보고식별번호 = 참조사용자보고식별번호에 해당하는 데이타 미존재]");
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int cnt = bizNimsMapper.updateCancelDsuseRptInfoDtl(dto);
|
|
|
|
|
|
|
|
if(cnt == 0) throw ApiCustomException.create(String.format("폐기 정보 상세 %s 실패", errMsg));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 변경인 경우 상세 데이타 건수와 일치 하지 않는 경우 오류 처리
|
|
|
|
|
|
|
|
if ("2".equals(dto.getRptTyCd()) && dto.getRndDtlRptCnt() != cnt) {
|
|
|
|
|
|
|
|
throw ApiCustomException.create(String.format("폐기 정보 상세 %s 실패", errMsg));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
throw ApiCustomException.create(String.format("폐기 정보 %s 실패", errMsg));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* <pre>
|
|
|
|
* <pre>
|
|
|
|
* tb_dsuse_rpt_info, tb_dsuse_rpt_info_dtl 생성
|
|
|
|
* tb_dsuse_rpt_info, tb_dsuse_rpt_info_dtl 생성
|
|
|
@ -583,6 +573,44 @@ public class BizNimsServiceBean extends AbstractServiceBean implements BizNimsSe
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* <pre>
|
|
|
|
|
|
|
|
* tb_dsuse_rpt_info, tb_dsuse_rpt_info_dtl 사용여부 'N' update
|
|
|
|
|
|
|
|
* tb_dsuse_mgt
|
|
|
|
|
|
|
|
* 조건 : 사용자보고식별번호 = 참조사용자보고식별번호
|
|
|
|
|
|
|
|
* => usr_rpt_id_no -> refUsrRptIdNo update
|
|
|
|
|
|
|
|
* => 취소인 경우 use_yn = 'N' update
|
|
|
|
|
|
|
|
* @param dto NimsApiDto.DsuseRptInfo
|
|
|
|
|
|
|
|
* </pre>
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
private void updateDsuseRpt(NimsApiDto.DsuseRptInfo dto) {
|
|
|
|
|
|
|
|
String errMsg;
|
|
|
|
|
|
|
|
if ("1".equals(dto.getRptTyCd())) errMsg = "취소";
|
|
|
|
|
|
|
|
else errMsg = "변경";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (bizNimsMapper.updateCancelDsuseRptInfo(dto) == 1) {
|
|
|
|
|
|
|
|
// TODO : 폐기 관리 테이블에 사용자보고식별번호 반영
|
|
|
|
|
|
|
|
// tb_dsuse_mgt
|
|
|
|
|
|
|
|
// 조건 : 사용자보고식별번호 = 참조사용자보고식별번호
|
|
|
|
|
|
|
|
// => usr_rpt_id_no -> refUsrRptIdNo update
|
|
|
|
|
|
|
|
// => 취소인 경우 use_yn = 'N' update
|
|
|
|
|
|
|
|
// if(bizNimsMapper.updateCancelDsuseMgt(dto) == 0){
|
|
|
|
|
|
|
|
// throw ApiCustomException.create("폐기보고정보 변경 적용 실패\n[폐기관리테이블에 사용자보고식별번호 = 참조사용자보고식별번호에 해당하는 데이타 미존재]");
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int cnt = bizNimsMapper.updateCancelDsuseRptInfoDtl(dto);
|
|
|
|
|
|
|
|
if(cnt == 0) throw ApiCustomException.create(String.format("폐기 정보 상세 %s 실패", errMsg));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 변경인 경우 상세 데이타 건수와 일치 하지 않는 경우 오류 처리
|
|
|
|
|
|
|
|
if ("2".equals(dto.getRptTyCd()) && dto.getRndDtlRptCnt() != cnt) {
|
|
|
|
|
|
|
|
throw ApiCustomException.create(String.format("폐기 정보 상세 %s 실패", errMsg));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
throw ApiCustomException.create(String.format("폐기 정보 %s 실패", errMsg));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* <pre>
|
|
|
|
* <pre>
|
|
|
|
* 마약류 취급자 업체 추가 정보 set
|
|
|
|
* 마약류 취급자 업체 추가 정보 set
|
|
|
|