refactor
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
package com.iconplus.smartproc.service.drppengadaan;
|
||||
|
||||
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 org.apache.commons.lang3.ObjectUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class PostCreateDrpPengadaanService implements BaseService<DrpPengadaanRequest, DrpPengadaanResponse> {
|
||||
|
||||
private final DrpPengadaanRepository drpPengadaanRepository;
|
||||
private final DrpPengadaanDokumenRepository drpPengadaanDokumenRepository;
|
||||
|
||||
public PostCreateDrpPengadaanService(DrpPengadaanRepository drpPengadaanRepository,
|
||||
DrpPengadaanDokumenRepository drpPengadaanDokumenRepository) {
|
||||
this.drpPengadaanRepository = drpPengadaanRepository;
|
||||
this.drpPengadaanDokumenRepository = drpPengadaanDokumenRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DrpPengadaanResponse execute(DrpPengadaanRequest input) {
|
||||
|
||||
DrpPengadaan drpPengadaan = DrpPengadaan.builder()
|
||||
.drpId(input.getDrpId())
|
||||
.nomor(input.getNomor())
|
||||
.namaPengadaan(input.getNamaPengadaan())
|
||||
.lokasiId(input.getLokasiId())
|
||||
.jenisPengadaanId(input.getJenisPengadaanId())
|
||||
.unitInisiatorId(input.getUnitInisiatorId())
|
||||
.pagu(input.getPagu())
|
||||
.sumberDanaId(input.getSumberDanaId())
|
||||
.supplyPositioningMatrixId(input.getSupplyPositioningMatrixId())
|
||||
.metodePengadaanId(input.getMetodePengadaanId())
|
||||
.metodePenyampaianId(input.getMetodePenyampaianId())
|
||||
.jenisKontrakId(input.getJenisKontrakId())
|
||||
.strategiPengadaanId(input.getStrategiPengadaanId())
|
||||
.rencanaTanggal(input.getRencanaTanggal())
|
||||
.targetTanggal(input.getTargetTanggal())
|
||||
.hpe(input.getHpe())
|
||||
.isActive(input.getIsActive())
|
||||
.isDelete(false)
|
||||
.build();
|
||||
|
||||
List<DrpPengadaanDokumen> drpPengadaanDokumenList = new ArrayList<>();
|
||||
if (ObjectUtils.isNotEmpty(input.getDataDrpPengadaanDokumen())) {
|
||||
for (DrpPengadaanDokumenRequest drpPengadaanDokumenRequest : input.getDataDrpPengadaanDokumen()) {
|
||||
DrpPengadaanDokumen drpPengadaanDokumen = DrpPengadaanDokumen.builder()
|
||||
.drpId(input.getDrpId())
|
||||
.jenisDokumenId(drpPengadaanDokumenRequest.getJenisDokumenId())
|
||||
.filename(drpPengadaanDokumenRequest.getFilename())
|
||||
.keterangan(drpPengadaanDokumenRequest.getKeterangan())
|
||||
.isDelete(false)
|
||||
.build();
|
||||
drpPengadaanDokumenList.add(drpPengadaanDokumen);
|
||||
}
|
||||
}
|
||||
|
||||
var result = drpPengadaanRepository.save(drpPengadaan);
|
||||
drpPengadaanDokumenRepository.saveAll(drpPengadaanDokumenList);
|
||||
|
||||
return DrpPengadaanResponse.builder()
|
||||
.id(result.getId())
|
||||
.build();
|
||||
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user