From 3a29c636599004e8d904757fcb4e1099b13987dd Mon Sep 17 00:00:00 2001 From: dirgantarasiahaan Date: Wed, 31 May 2023 16:32:20 +0700 Subject: [PATCH] add put api update pengadaan --- .../controller/DrpPengadaanController.java | 11 +++++-- .../drppengadaan/PutDrpPengadaanService.java | 32 ++++++++++++++++--- 2 files changed, 36 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/iconplus/smartproc/controller/DrpPengadaanController.java b/src/main/java/com/iconplus/smartproc/controller/DrpPengadaanController.java index 33d8864..2fe2b01 100644 --- a/src/main/java/com/iconplus/smartproc/controller/DrpPengadaanController.java +++ b/src/main/java/com/iconplus/smartproc/controller/DrpPengadaanController.java @@ -24,6 +24,7 @@ public class DrpPengadaanController { private final DeleteDokumenPendukungService deleteDokumenPendukungService; private final EditUploadDrpPengadaanService editUploadDrpPengadaanService; private final GetDrpPengadaanService getDrpPengadaanService; + private final PutDrpPengadaanService putDrpPengadaanService; public DrpPengadaanController(PostCreateDrpPengadaanService postCreateDrpPengadaanService, GetListDrpPengadaanService getListDrpPengadaanService, @@ -31,7 +32,8 @@ public class DrpPengadaanController { DeleteDrpPengadaanService deleteDrpPengadaanService, DeleteDokumenPendukungService deleteDokumenPendukungService, EditUploadDrpPengadaanService editUploadDrpPengadaanService, - GetDrpPengadaanService getDrpPengadaanService) { + GetDrpPengadaanService getDrpPengadaanService, + PutDrpPengadaanService putDrpPengadaanService) { this.postCreateDrpPengadaanService = postCreateDrpPengadaanService; this.getListDrpPengadaanService = getListDrpPengadaanService; this.postDrpUploadDokumenPendukungService = postDrpUploadDokumenPendukungService; @@ -39,6 +41,7 @@ public class DrpPengadaanController { this.deleteDokumenPendukungService = deleteDokumenPendukungService; this.editUploadDrpPengadaanService = editUploadDrpPengadaanService; this.getDrpPengadaanService = getDrpPengadaanService; + this.putDrpPengadaanService = putDrpPengadaanService; } @GetMapping @@ -65,8 +68,10 @@ public class DrpPengadaanController { } @PutMapping("/{id}") - public DrpPengadaanResponse updateDrpPengadaan(@PathVariable Long id) { - return null; + public DrpPengadaanResponse updateDrpPengadaan(@PathVariable Long id, + @RequestBody DrpPengadaanRequest drpPengadaanRequest) throws IOException { + drpPengadaanRequest.setId(id); + return putDrpPengadaanService.execute(drpPengadaanRequest); } @DeleteMapping("/{id}") diff --git a/src/main/java/com/iconplus/smartproc/service/drppengadaan/PutDrpPengadaanService.java b/src/main/java/com/iconplus/smartproc/service/drppengadaan/PutDrpPengadaanService.java index b2a184f..1bdb74f 100644 --- a/src/main/java/com/iconplus/smartproc/service/drppengadaan/PutDrpPengadaanService.java +++ b/src/main/java/com/iconplus/smartproc/service/drppengadaan/PutDrpPengadaanService.java @@ -2,17 +2,19 @@ package com.iconplus.smartproc.service.drppengadaan; import com.iconplus.smartproc.exception.BusinessException; import com.iconplus.smartproc.helper.service.BaseService; -import com.iconplus.smartproc.model.entity.DrpPengadaan; import com.iconplus.smartproc.model.entity.DrpPengadaanDokumen; +import com.iconplus.smartproc.model.request.DrpPengadaanDokumenRequest; import com.iconplus.smartproc.model.request.DrpPengadaanRequest; import com.iconplus.smartproc.model.response.DrpPengadaanResponse; import com.iconplus.smartproc.repository.DrpPengadaanDokumenRepository; import com.iconplus.smartproc.repository.DrpPengadaanRepository; import com.iconplus.smartproc.util.Constants; -import org.apache.tomcat.util.bcel.Const; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.stereotype.Service; import java.io.IOException; +import java.util.ArrayList; +import java.util.List; @Service public class PutDrpPengadaanService implements BaseService { @@ -34,7 +36,6 @@ public class PutDrpPengadaanService implements BaseService drpPengadaanDokumenArrayList = new ArrayList<>(); + if (ObjectUtils.isNotEmpty(input.getDataDrpPengadaanDokumen())) { + for (DrpPengadaanDokumenRequest drpPengadaanDokumenRequest : input.getDataDrpPengadaanDokumen()) { + DrpPengadaanDokumen drpPengadaanDokumen = DrpPengadaanDokumen.builder() + .drpPengadaanId(drpPengadaan.getId()) + .drpId(drpPengadaan.getDrpId()) + .jenisDokumenId(drpPengadaanDokumenRequest.getJenisDokumenId()) + .filename(drpPengadaanDokumenRequest.getFilename()) + .keterangan(drpPengadaanDokumenRequest.getKeterangan()) + .isDelete(false) + .build(); + drpPengadaanDokumenArrayList.add(drpPengadaanDokumen); + } + drpPengadaanDokumenRepository.saveAll(drpPengadaanDokumenArrayList); + } + + return DrpPengadaanResponse.builder() + .id(drpPengadaan.getId()) + .build(); } }