add put api update pengadaan

This commit is contained in:
dirgantarasiahaan 2023-05-31 16:32:20 +07:00
parent 0257931552
commit 3a29c63659
2 changed files with 36 additions and 7 deletions

View File

@ -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}")

View File

@ -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<DrpPengadaanRequest, DrpPengadaanResponse> {
@ -34,7 +36,6 @@ public class PutDrpPengadaanService implements BaseService<DrpPengadaanRequest,
Constants.ERR_TTL_10001,
String.format(Constants.ERR_MSG_10001, "DRP Pengadaan", input.getId())));
drpPengadaan.setDrpId(input.getDrpId());
drpPengadaan.setNomor(input.getNomor());
drpPengadaan.setNamaPengadaan(input.getNamaPengadaan());
drpPengadaan.setLokasiId(input.getLokasiId());
@ -56,7 +57,30 @@ public class PutDrpPengadaanService implements BaseService<DrpPengadaanRequest,
drpPengadaanRepository.save(drpPengadaan);
var drpPengadaanDokumenList = drpPengadaanDokumenRepository.findByDrpPengadaanIdAndIsDeleteFalse(drpPengadaan.getId());
return DrpPengadaanResponse.builder().build();
for (DrpPengadaanDokumen drpPengadaanDokumen : drpPengadaanDokumenList) {
drpPengadaanDokumen.setIsDelete(true);
drpPengadaanDokumenRepository.save(drpPengadaanDokumen);
}
List<DrpPengadaanDokumen> 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();
}
}