feat: 폐기관리목록조회 & 폐기관리문서생성데이타 조회 분리

dev
Jonguk. Lim 6 months ago
parent 8ff4808c8a
commit 7d0b21a014

@ -533,11 +533,18 @@ public class BizNimsRequest {
@Schema(requiredMode = AUTO, title = "폐기 관리 ID 목록", example = "[\"2024050001\", \"2024050002\"]") @Schema(requiredMode = AUTO, title = "폐기 관리 ID 목록", example = "[\"2024050001\", \"2024050002\"]")
private List<String> dscdmngIds; private List<String> dscdmngIds;
@Schema(requiredMode = REQUIRED, title = "사용자 ID", example = " ") @Schema(requiredMode = REQUIRED, title = "사용자 ID", example = "suji")
@NotEmpty(message = "사용자 ID는 필수 입니다") @NotEmpty(message = "사용자 ID는 필수 입니다")
private String userId; private String userId;
@Schema(title = "부서(관할청)코드", example = " ") /**
* <pre>
* ()
*
* -> but,
* </pre>
*/
@Schema(title = "부서(관할청)코드", example = "4050149")
private String deptCd; private String deptCd;
/** /**

@ -59,7 +59,7 @@ public interface BizNimsService {
BizNimsRequest.DsuseMgtReceipt saveDsuseMgtReceipt(final BizNimsRequest.DsuseMgtReceipt dto, final List<BizNimsRequest.DsuseMgtDtl> dtls, List<MultipartFile> files); BizNimsRequest.DsuseMgtReceipt saveDsuseMgtReceipt(final BizNimsRequest.DsuseMgtReceipt dto, final List<BizNimsRequest.DsuseMgtDtl> dtls, List<MultipartFile> files);
BizNimsRequest.DsuseMgtRslt saveDsuseMgtRslt(final BizNimsRequest.DsuseMgtRslt dto, List<MultipartFile> files); BizNimsRequest.DsuseMgtRslt saveDsuseMgtRslt(final BizNimsRequest.DsuseMgtRslt dto, List<MultipartFile> files);
BizNimsRequest.DsuseMgt saveDsuseMgt(final BizNimsRequest.DsuseMgt dto); BizNimsRequest.DsuseMgt saveDsuseMgt(final BizNimsRequest.DsuseMgt dto);
List<BizNimsResponse.DsuseMgtRes> getDsuseMgts(final BizNimsRequest.DsuseMgtInq dto, final String apiKey); List<BizNimsResponse.DsuseMgtRes> getDsuseMgts(final BizNimsRequest.DsuseMgtInq dto, final boolean isForDoc);
void modifyPrgsSttsOfDsuseMgt(final BizNimsRequest.DsuseMgt dto); void modifyPrgsSttsOfDsuseMgt(final BizNimsRequest.DsuseMgt dto);
NimsApiDto.ProductInfoKd getPrdMnfSeqInfoOfBarcode(final String barcodeStr); NimsApiDto.ProductInfoKd getPrdMnfSeqInfoOfBarcode(final String barcodeStr);

@ -275,7 +275,7 @@ public class BizNimsServiceBean extends AbstractServiceBean implements BizNimsSe
List<BizNimsResponse.DsuseMgtRes> dsuseMgts = getDsuseMgts(BizNimsRequest.DsuseMgtInq.builder() List<BizNimsResponse.DsuseMgtRes> dsuseMgts = getDsuseMgts(BizNimsRequest.DsuseMgtInq.builder()
.prgrsSttsCd(Constants.PRGRS_STTS_CD.COMPLETE.getCode()) .prgrsSttsCd(Constants.PRGRS_STTS_CD.COMPLETE.getCode())
.build(), .build(),
apiInfInfo.get("apiKey")); false);
////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////
// FIXME : 테스트를 위한 코드 // FIXME : 테스트를 위한 코드
@ -457,6 +457,7 @@ public class BizNimsServiceBean extends AbstractServiceBean implements BizNimsSe
* @return BizNimsRequest.DsuseMgt * @return BizNimsRequest.DsuseMgt
* </pre> * </pre>
*/ */
// FIXME: 현재 미사용
public BizNimsRequest.DsuseMgt saveDsuseMgt(BizNimsRequest.DsuseMgt reqDto) { public BizNimsRequest.DsuseMgt saveDsuseMgt(BizNimsRequest.DsuseMgt reqDto) {
ApiUtil.validate(reqDto, null, validator); ApiUtil.validate(reqDto, null, validator);
if(reqDto.getRndDtlRptCnt() != reqDto.getDsuseMgtDtls().size()) throw ApiCustomException.create("폐기물 보고수 오류[폐기물 갯수 확인]"); if(reqDto.getRndDtlRptCnt() != reqDto.getDsuseMgtDtls().size()) throw ApiCustomException.create("폐기물 보고수 오류[폐기물 갯수 확인]");
@ -479,15 +480,19 @@ public class BizNimsServiceBean extends AbstractServiceBean implements BizNimsSe
/** /**
* <pre> * <pre>
* *
* 1.
* 2. [],
* @param reqDto BizNimsRequest.DsuseMgtInq * @param reqDto BizNimsRequest.DsuseMgtInq
* @param isForDoc true: , false:
* @return List<BizNimsResponse.DsuseMgtResponse> * @return List<BizNimsResponse.DsuseMgtResponse>
* </pre> * </pre>
*/ */
@Override @Override
public List<BizNimsResponse.DsuseMgtRes> getDsuseMgts(final BizNimsRequest.DsuseMgtInq reqDto, String apiKey) { public List<BizNimsResponse.DsuseMgtRes> getDsuseMgts(final BizNimsRequest.DsuseMgtInq reqDto, final boolean isForDoc) {
List<BizNimsResponse.DsuseMgtRes> resList = bizNimsMapper.selectDsuseMgts(reqDto); List<BizNimsResponse.DsuseMgtRes> resList = bizNimsMapper.selectDsuseMgts(reqDto);
if(isEmpty(apiKey)) apiKey = getApiInfInfo(reqDto.getUserId()).get("apiKey"); String apiKey = null;
if(isForDoc) apiKey = getApiInfInfo(reqDto.getUserId()).get("apiKey");
for (BizNimsResponse.DsuseMgtRes dto : resList) { for (BizNimsResponse.DsuseMgtRes dto : resList) {
dto.setRptTyCdNm(Constants.RPT_TY_CD.getName(dto.getRptTyCd())); dto.setRptTyCdNm(Constants.RPT_TY_CD.getName(dto.getRptTyCd()));
@ -498,7 +503,7 @@ public class BizNimsServiceBean extends AbstractServiceBean implements BizNimsSe
Map<String, String> map = new HashMap<>(); Map<String, String> map = new HashMap<>();
map.put("dscdmngId", dto.getDscdmngId()); map.put("dscdmngId", dto.getDscdmngId());
List<BizNimsResponse.DsuseMgtDtlRes> dsuseRptInfoDtls = bizNimsMapper.selectDsuseMgtDtls(map); List<BizNimsResponse.DsuseMgtDtlRes> dsuseRptInfoDtls = bizNimsMapper.selectDsuseMgtDtls(map);
setDsuseMgtDtlAddProductInfo(dsuseRptInfoDtls, reqDto.getUserId(), apiKey); if(isForDoc) setDsuseMgtDtlAddProductInfo(dsuseRptInfoDtls, reqDto.getUserId(), apiKey);
dto.getDsuseMgtDtls().addAll(dsuseRptInfoDtls); dto.getDsuseMgtDtls().addAll(dsuseRptInfoDtls);
} }
@ -543,7 +548,7 @@ public class BizNimsServiceBean extends AbstractServiceBean implements BizNimsSe
.deptCd(apiInfInfo.get("deptCd")) .deptCd(apiInfInfo.get("deptCd"))
.prgrsSttsCd(null) .prgrsSttsCd(null)
.build(), .build(),
apiInfInfo.get("apiKey")) false)
.get(0); .get(0);
NimsApiRequest.DsuseRptInfoReq rptDto = NimsApiRequest.DsuseRptInfoReq.builder() NimsApiRequest.DsuseRptInfoReq rptDto = NimsApiRequest.DsuseRptInfoReq.builder()

@ -126,12 +126,12 @@ public class BizNimsController {
} }
/** /**
* [] * []
* @param dsuseMgtRsltJsonStr [] JSON String * @param dsuseMgtRsltJsonStr [] JSON String
* @param dsuseDsuseImgFiles * @param dsuseDsuseImgFiles
* @return [] return * @return [] return
*/ */
@Operation(summary = "사고 마약류 폐기 관리 폐기 신청서 접수", description = "사고 마약류 폐기 관리 폐기 신청서 접수<br><br>폐기관리 신청서 접수 데이타 생성후 생성 정보 return") @Operation(summary = "사고 마약류 폐기 결과[통보] 처리", description = "사고 마약류 폐기 결과[통보] 처리")
@PostMapping(value = "/saveDsuseMgtRslt") @PostMapping(value = "/saveDsuseMgtRslt")
public ApiBaseResponse<BizNimsRequest.DsuseMgtRslt> saveDsuseMgtRslt( public ApiBaseResponse<BizNimsRequest.DsuseMgtRslt> saveDsuseMgtRslt(
@RequestParam("dsuseMgtRsltJsonStr") String dsuseMgtRsltJsonStr, @RequestParam("dsuseMgtRsltJsonStr") String dsuseMgtRsltJsonStr,
@ -142,55 +142,55 @@ public class BizNimsController {
return ApiBaseResponse.of(bizNimsService.saveDsuseMgtRslt(rsltDto, dsuseDsuseImgFiles)); return ApiBaseResponse.of(bizNimsService.saveDsuseMgtRslt(rsltDto, dsuseDsuseImgFiles));
} }
@Operation(summary = "사고 마약류 폐기 관리 생성", description = "사고 마약류 폐기 관리 생성<br><br>폐기관리 데이타 생성후 폐기보고 정보 return") // @Operation(summary = "사고 마약류 폐기 관리 생성", description = "사고 마약류 폐기 관리 생성<br><br>폐기관리 데이타 생성후 폐기보고 정보 return")
@io.swagger.v3.oas.annotations.parameters.RequestBody(required = true, content = { // @io.swagger.v3.oas.annotations.parameters.RequestBody(required = true, content = {
@Content(mediaType = "application/json", examples = { // @Content(mediaType = "application/json", examples = {
@ExampleObject(value = """ // @ExampleObject(value = """
{ // {
"userId": "api-user", // "userId": "api-user",
"prgrsSttsCd": "01", // "prgrsSttsCd": "01",
"bsshCd": "H00008333", // "bsshCd": "H00008333",
"rndDtlRptCnt": 2, // "rndDtlRptCnt": 2,
"hdrDe": "20240301", // "hdrDe": "20240301",
"dsuseSeCd": "1", // "dsuseSeCd": "1",
"dsusePrvCd": "04", // "dsusePrvCd": "04",
"dsuseMthCd": "3", // "dsuseMthCd": "3",
"dsuseLoc": "보건소소각장", // "dsuseLoc": "보건소소각장",
"dsuseDe": "20240306", // "dsuseDe": "20240306",
"dsuseMgtDtls": [ // "dsuseMgtDtls": [
{ // {
"prductCd": "8806717024900", // "prductCd": "8806717024900",
"prductNm": "베리콜시럽", // "prductNm": "베리콜시럽",
"minDistbQy": 1, // "minDistbQy": 1,
"pceQy": 1, // "pceQy": 1,
"mnfNo": "A1111", // "mnfNo": "A1111",
"prdValidDe": "20300303", // "prdValidDe": "20300303",
"mnfSeq": "A11111111", // "mnfSeq": "A11111111",
"dsuseQy": 10 // "dsuseQy": 10
}, // },
{ // {
"prductCd": "8806718050823", // "prductCd": "8806718050823",
"prductNm": "아쿠아폴주20밀리리터(프로포폴) (20㎖)", // "prductNm": "아쿠아폴주20밀리리터(프로포폴) (20㎖)",
"minDistbQy": 1, // "minDistbQy": 1,
"pceQy": 5, // "pceQy": 5,
"mnfNo": "A1111", // "mnfNo": "A1111",
"prdValidDe": "20300303", // "prdValidDe": "20300303",
"mnfSeq": "A11111111", // "mnfSeq": "A11111111",
"dsuseQy": 30 // "dsuseQy": 30
} // }
] // ]
} // }
""") // """)
}) // })
}) // })
@PostMapping("/saveDsuseMgt") // @PostMapping("/saveDsuseMgt")
public ApiBaseResponse<BizNimsRequest.DsuseMgt> saveDsuseMgt( // public ApiBaseResponse<BizNimsRequest.DsuseMgt> saveDsuseMgt(
@RequestBody BizNimsRequest.DsuseMgt dto // @RequestBody BizNimsRequest.DsuseMgt dto
) { // ) {
return ApiBaseResponse.of(bizNimsService.saveDsuseMgt(dto)); // return ApiBaseResponse.of(bizNimsService.saveDsuseMgt(dto));
} // }
@Operation(summary = "폐기 관리 데이터 폐기보고 매핑 조회", description = "폐기 관리 데이터 폐기보고 매핑 조회<br><br>폐기 관리 데이터에 대한 폐기보고 매핑 대상 데이타 조회 return") @Operation(summary = "폐기 보고 확인", description = "폐기 보고 확인<br><br>폐기 관리 데이터에 대한 폐기보고 매핑 대상 데이타 조회 return")
@PostMapping("/getDsuseMgtMapping") @PostMapping("/getDsuseMgtMapping")
public ApiBaseResponse<List<NimsApiDto.DsuseRptInfo>> getDsuseMgtMapping( public ApiBaseResponse<List<NimsApiDto.DsuseRptInfo>> getDsuseMgtMapping(
@RequestBody BizNimsRequest.DsuseMgt dto @RequestBody BizNimsRequest.DsuseMgt dto
@ -198,12 +198,12 @@ public class BizNimsController {
return ApiBaseResponse.of(bizNimsService.getDsuseMgtMapping(dto)); return ApiBaseResponse.of(bizNimsService.getDsuseMgtMapping(dto));
} }
@Operation(summary = "사고 마약류 폐기 관리 목록 조회", description = "사고 마약류 폐기 관리 목록 조회<br><br>사고마약류 관리대장, 결과통보서, 폐기현황등에 필요한 내용 조회") @Operation(summary = "사고 마약류 폐기 관리 목록 조회", description = "사고 마약류 폐기 관리 목록 조회")
@PostMapping(value = "/getDsuseMgts") @PostMapping(value = "/getDsuseMgts")
public ApiBaseResponse<List<BizNimsResponse.DsuseMgtRes>> getDsuseMgts( public ApiBaseResponse<List<BizNimsResponse.DsuseMgtRes>> getDsuseMgts(
@RequestBody BizNimsRequest.DsuseMgtInq dto @RequestBody BizNimsRequest.DsuseMgtInq dto
) { ) {
return ApiBaseResponse.of(bizNimsService.getDsuseMgts(dto, null)); return ApiBaseResponse.of(bizNimsService.getDsuseMgts(dto, false));
} }
@ -213,7 +213,7 @@ public class BizNimsController {
@ExampleObject(value = """ @ExampleObject(value = """
{ {
"dscdmngId": "2024050001", "dscdmngId": "2024050001",
"userId": "api-user", "userId": "suji",
"prgrsSttsCd": "02" "prgrsSttsCd": "02"
} }
""") """)
@ -225,6 +225,13 @@ public class BizNimsController {
return ApiBaseResponse.of(); return ApiBaseResponse.of();
} }
@Operation(summary = "보고문서 생성을 위한 사고 마약류 폐기 관리 목록 조회", description = "보고문서 생성을 위한 마약류 폐기 관리 목록 조회<br><br>사고마약류 결과결과[통보]서, 폐기내역 및 사진 문서 작성을 위한 데이타 조회")
@PostMapping(value = "/getDsuseMgtListForRptDoc")
public ApiBaseResponse<List<BizNimsResponse.DsuseMgtRes>> getDsuseMgtListForRptDoc(
@RequestBody BizNimsRequest.DsuseMgtInq dto
) {
return ApiBaseResponse.of(bizNimsService.getDsuseMgts(dto, true));
}
@Operation(summary = "barcode string 제품 제조 정보 조회", description = "barcode string 제품 제조 정보 조회<br><br>Barcode를 통한 제품 제조 정보 조회<br><br>ex) 01088065780457311717050110A1234210000000006") @Operation(summary = "barcode string 제품 제조 정보 조회", description = "barcode string 제품 제조 정보 조회<br><br>Barcode를 통한 제품 제조 정보 조회<br><br>ex) 01088065780457311717050110A1234210000000006")
@GetMapping(value = "/getPrdMnfSeqInfoOfBarcode") @GetMapping(value = "/getPrdMnfSeqInfoOfBarcode")

@ -267,7 +267,7 @@
rgtr rgtr
) VALUES ( ) VALUES (
#{dscdmngId}, #{dscdmngId},
(SELECT dept_cd FROM tb_user WHERE user_id = #{userId}), (SELECT dept_cd FROM tb_user WHERE user_acnt = #{userId}),
#{userId}, #{userId},
#{prgrsSttsCd}, #{prgrsSttsCd},
#{bsshCd}, #{bsshCd},
@ -380,7 +380,7 @@
</foreach> </foreach>
</if> </if>
<if test="deptCd != null and deptCd != ''"> <if test="deptCd != null and deptCd != ''">
AND dept_cd != #{deptCd} AND dept_cd = #{deptCd}
</if> </if>
<if test="prgrsSttsCd != null and prgrsSttsCd != ''"> <if test="prgrsSttsCd != null and prgrsSttsCd != ''">
AND prgrs_stts_cd != #{prgrsSttsCd} AND prgrs_stts_cd != #{prgrsSttsCd}
@ -625,7 +625,7 @@
#{status}, #{status},
#{dsuseProcessDe}, #{dsuseProcessDe},
#{orgUsrRptIdNo}, #{orgUsrRptIdNo},
(SELECT dept_cd FROM tb_user WHERE user_id = #{userId}), (SELECT dept_cd FROM tb_user WHERE user_acnt = #{userId}),
IF(#{rptTyCd} = '1', 'N', 'Y'), IF(#{rptTyCd} = '1', 'N', 'Y'),
DATE_FORMAT(now(), '%Y%m%d%H%i%s'), DATE_FORMAT(now(), '%Y%m%d%H%i%s'),
#{rgtr} #{rgtr}

Loading…
Cancel
Save