fix: 폐기신청 변경 기능 추가

dev
Jonguk. Lim 5 months ago
parent e278286ab2
commit f06a84ee6e

@ -86,6 +86,8 @@ public interface BizNimsMapper extends AbstractMapper {
// 이미지 업로드시 이전 이미지 삭제를 위한 fileId 조회
List<String> selectFileId(Map<String, String> map);
void deleteDsuseMgtDtl(final String dscdmngId);
//List<NimsApiDto.DsuseRptInfoDtl> selectDsuseRptInfoDtls(final Map<String, String> map);

@ -277,24 +277,31 @@ public class BizNimsServiceBean extends AbstractServiceBean implements BizNimsSe
// FIXME: 파일 갯수 확인 - 프론트 파일 처리 완료시 까지 comment 처리
if(files.size() != dtls.size()) throw ApiCustomException.create("폐기물 파일 갯수 오류[파일 갯수 확인]");
if(bizNimsMapper.insertDsuseMgtReceipt(reqDto) == 1){
int dtlCnt = 0;
if(isEmpty(reqDto.getDscdmngId())) {
for (BizNimsDto.DsuseMgtDtl d : dtls) {
String sn = StringUtils.leftPad(dtlCnt + 1 + "", 3, "0");
d.setDscdmngId(reqDto.getDscdmngId());
d.setDscdmngSn(sn);
d.setRgtr(reqDto.getUserId());
dtlCnt = dtlCnt + bizNimsMapper.insertDsuseMgtDtl(d);
if (bizNimsMapper.insertDsuseMgtReceipt(reqDto) == 1) {
// FIXME: 파일 갯수 확인 - 프론트 파일 처리 완료시 까지 comment 처리
d.setFileId(
uploadFileDeleteAndSave(Constants.FILE_INF_TYPE.DSUSE_PRD_IMG.getCode(), reqDto.getDscdmngId(), sn, files.get(dtlCnt-1)));
}
if(dtls.size() != dtlCnt) throw ApiCustomException.create("폐기 관리 상세 등록 실패");
// 폐기관리 상세 등록
saveDsuseMgtDtls(reqDto, dtls, files);
} else {
throw ApiCustomException.create("폐기 관리 마스터 등록 실패");
}
} else {
bizNimsMapper.updateDsuseMgtReceipt(reqDto);
// 파일 삭제
List<String> fileIds = bizNimsMapper.selectFileId(
Map.of("infType", Constants.FILE_INF_TYPE.DSUSE_PRD_IMG.getCode(), "infKey", reqDto.getDscdmngId()));
if (!fileIds.isEmpty()) {
fileService.delete(fileIds.toArray(new String[0]));
}
// 폐기관리 상세 삭제
bizNimsMapper.deleteDsuseMgtDtl(reqDto.getDscdmngId());
// 폐기관리 상세 등록
saveDsuseMgtDtls(reqDto, dtls, files);
}
return reqDto;
}
@ -899,6 +906,34 @@ public class BizNimsServiceBean extends AbstractServiceBean implements BizNimsSe
}
}
/**
* <pre>
*
* @param reqDto
* @param dtls
* @param files
* </pre>
*/
private void saveDsuseMgtDtls(BizNimsRequest.DsuseMgtReceiptReq reqDto, List<BizNimsDto.DsuseMgtDtl> dtls,
List<MultipartFile> files) {
int dtlCnt = 0;
for (BizNimsDto.DsuseMgtDtl d : dtls) {
String sn = StringUtils.leftPad(dtlCnt + 1 + "", 3, "0");
d.setDscdmngId(reqDto.getDscdmngId());
d.setDscdmngSn(sn);
d.setRgtr(reqDto.getUserId());
dtlCnt = dtlCnt + bizNimsMapper.insertDsuseMgtDtl(d);
d.setFileId(
uploadFileDeleteAndSave(Constants.FILE_INF_TYPE.DSUSE_PRD_IMG.getCode(), reqDto.getDscdmngId(),
sn, files.get(dtlCnt - 1)));
}
if (dtls.size() != dtlCnt)
throw ApiCustomException.create("폐기 관리 상세 등록 실패");
}
/**
* <pre>
* file

@ -279,7 +279,7 @@
)
</insert>
<update id="updateDsuseMgtReceipt" parameterType="cokr.xit.adds.biz.nims.model.BizNimsRequest$DsuseMgtRsltReq">
<update id="updateDsuseMgtReceipt" parameterType="cokr.xit.adds.biz.nims.model.BizNimsRequest$DsuseMgtReceiptReq">
/** nims-mysql-mapper|updateDsuseMgtReceipt-폐기관리 정보 변경|julim */
UPDATE tb_dsuse_mgt
SET dsuse_prv_cd = #{dsusePrvCd}
@ -344,6 +344,12 @@
)
</insert>
<delete id="deleteDsuseMgtDtl" parameterType="string">
/** nims-mysql-mapper|deleteDsuseMgtDtl-폐기관리 상세 삭제|julim */
DELETE FROM tb_dsuse_mgt_dtl
WHERE dscdmng_id = #{dscdmngId}
</delete>
<insert id="insertDsuseMgtDtl" parameterType="cokr.xit.adds.biz.nims.model.BizNimsDto$DsuseMgtDtl">
/** nims-mysql-mapper|insertDsuseMgtDtl-폐기관리 상세 생성|julim */
INSERT INTO tb_dsuse_mgt_dtl (

Loading…
Cancel
Save