refactor
This commit is contained in:
@ -0,0 +1,51 @@
|
||||
package com.iconplus.smartproc.service.approval;
|
||||
|
||||
import com.iconplus.smartproc.exception.BusinessException;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.entity.DrpApproval;
|
||||
import com.iconplus.smartproc.model.request.DrpApprovalRequest;
|
||||
import com.iconplus.smartproc.model.response.DrpApprovalResponse;
|
||||
import com.iconplus.smartproc.repository.DrpApprovalRepository;
|
||||
import com.iconplus.smartproc.repository.DrpRepository;
|
||||
import com.iconplus.smartproc.util.Constants;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
@Service
|
||||
public class PostCreateDrpApprovalService implements BaseService<DrpApprovalRequest, DrpApprovalResponse> {
|
||||
|
||||
private final DrpApprovalRepository drpApprovalRepository;
|
||||
private final DrpRepository drpRepository;
|
||||
public PostCreateDrpApprovalService(DrpApprovalRepository drpApprovalRepository,
|
||||
DrpRepository drpRepository) {
|
||||
this.drpApprovalRepository = drpApprovalRepository;
|
||||
this.drpRepository = drpRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DrpApprovalResponse execute(DrpApprovalRequest input) {
|
||||
|
||||
var drpOptional = drpRepository.findByIdAndIsDeleteFalse(input.getDrpId());
|
||||
if (drpOptional.isEmpty()) {
|
||||
throw new BusinessException(Constants.ERR_CODE_10001,
|
||||
Constants.ERR_TTL_10001,
|
||||
String.format(Constants.ERR_MSG_10001, "DRP", input.getDrpId()));
|
||||
}
|
||||
|
||||
DrpApproval drpApproval = DrpApproval.builder()
|
||||
.drpId(input.getDrpId())
|
||||
.approverKomite1Id(input.getApproverKomite1Id())
|
||||
.approverKomite2Id(input.getApproverKomite2Id())
|
||||
.approverKomite3Id(input.getApproverKomite3Id())
|
||||
.approverKomite4Id(input.getApproverKomite4Id())
|
||||
.approverDirekturId(input.getApproverDirekturId())
|
||||
.build();
|
||||
|
||||
var result = drpApprovalRepository.save(drpApproval);
|
||||
|
||||
return DrpApprovalResponse.builder()
|
||||
.id(result.getId())
|
||||
.build();
|
||||
}
|
||||
}
|
@ -0,0 +1,76 @@
|
||||
package com.iconplus.smartproc.service.drp;
|
||||
|
||||
import com.iconplus.smartproc.exception.BusinessException;
|
||||
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.request.DrpDokumenRequest;
|
||||
import com.iconplus.smartproc.model.request.DrpRequest;
|
||||
import com.iconplus.smartproc.model.response.DrpDokumenResponse;
|
||||
import com.iconplus.smartproc.repository.DrpDokumenRepository;
|
||||
import com.iconplus.smartproc.util.Constants;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
|
||||
@Service
|
||||
@Slf4j
|
||||
public class EditUploadDokumenDrpService implements BaseService<DrpDokumenRequest, DrpDokumenResponse> {
|
||||
|
||||
@Value("${config.file-upload.rkap}")
|
||||
private String pathFileUploadRkap;
|
||||
|
||||
private final DrpDokumenRepository drpDokumenRepository;
|
||||
|
||||
public EditUploadDokumenDrpService(DrpDokumenRepository drpDokumenRepository) {
|
||||
this.drpDokumenRepository = drpDokumenRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DrpDokumenResponse execute(DrpDokumenRequest input) {
|
||||
|
||||
MultipartFile file = input.getFile();
|
||||
String newFilename = file.getOriginalFilename();
|
||||
|
||||
var drpDokumenOptional = drpDokumenRepository.findByFilenameAndIsDeleteFalse(input.getFilename());
|
||||
if (drpDokumenOptional.isPresent()) {
|
||||
drpDokumenOptional.get().setDrpId(input.getDrpId());
|
||||
drpDokumenOptional.get().setJenisDokumenId(input.getJenisDokumenId());
|
||||
drpDokumenOptional.get().setFilename(newFilename);
|
||||
drpDokumenOptional.get().setKeterangan(input.getKeterangan());
|
||||
drpDokumenRepository.save(drpDokumenOptional.get());
|
||||
}
|
||||
|
||||
Path oldFile = Paths.get(pathFileUploadRkap + input.getFilename());
|
||||
try {
|
||||
Files.delete(oldFile);
|
||||
} catch (IOException e) {
|
||||
log.info("no file found");
|
||||
}
|
||||
|
||||
File path = new File(pathFileUploadRkap + newFilename);
|
||||
|
||||
try {
|
||||
FileOutputStream output = new FileOutputStream(path);
|
||||
output.write(file.getBytes());
|
||||
output.close();
|
||||
} catch (Exception ex) {
|
||||
throw new BusinessException(Constants.ERR_CODE_10012,
|
||||
Constants.ERR_TTL_10012,
|
||||
String.format(Constants.ERR_MSG_10012, pathFileUploadRkap));
|
||||
}
|
||||
|
||||
return DrpDokumenResponse.builder()
|
||||
.jenisDokumenId(input.getJenisDokumenId())
|
||||
.filename(newFilename)
|
||||
.keterangan(input.getKeterangan())
|
||||
.build();
|
||||
}
|
||||
}
|
@ -2,15 +2,11 @@ package com.iconplus.smartproc.service.drp;
|
||||
|
||||
import com.iconplus.smartproc.exception.BusinessException;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.entity.Drp;
|
||||
import com.iconplus.smartproc.model.entity.DrpDokumen;
|
||||
import com.iconplus.smartproc.model.entity.DrpPengadaanDokumen;
|
||||
import com.iconplus.smartproc.model.request.DrpDokumenRequest;
|
||||
import com.iconplus.smartproc.model.request.DrpPengadaanDokumenRequest;
|
||||
import com.iconplus.smartproc.model.request.DrpRequest;
|
||||
import com.iconplus.smartproc.model.response.DrpResponse;
|
||||
import com.iconplus.smartproc.repository.DrpDokumenRepository;
|
||||
import com.iconplus.smartproc.repository.DrpPengadaanDokumenRepository;
|
||||
import com.iconplus.smartproc.repository.DrpRepository;
|
||||
import com.iconplus.smartproc.util.Constants;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
@ -18,21 +14,17 @@ import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
@Service
|
||||
public class PostCreateDrpService implements BaseService<DrpRequest, DrpResponse> {
|
||||
|
||||
private final DrpRepository drpRepository;
|
||||
private final DrpDokumenRepository drpDokumenRepository;
|
||||
private final DrpPengadaanDokumenRepository drpPengadaanDokumenRepository;
|
||||
|
||||
public PostCreateDrpService (DrpRepository drpRepository,
|
||||
DrpDokumenRepository drpDokumenRepository,
|
||||
DrpPengadaanDokumenRepository drpPengadaanDokumenRepository) {
|
||||
DrpDokumenRepository drpDokumenRepository) {
|
||||
this.drpRepository = drpRepository;
|
||||
this.drpDokumenRepository = drpDokumenRepository;
|
||||
this.drpPengadaanDokumenRepository = drpPengadaanDokumenRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -63,22 +55,7 @@ public class PostCreateDrpService implements BaseService<DrpRequest, DrpResponse
|
||||
|
||||
}
|
||||
|
||||
List<DrpPengadaanDokumen> drpPengadaanDokumenList = new ArrayList<>();
|
||||
if (ObjectUtils.isNotEmpty(input.getDataDrpPengadaanDokumen())) {
|
||||
for (DrpPengadaanDokumenRequest drpPengadaanDokumenRequest : input.getDataDrpPengadaanDokumen()) {
|
||||
DrpPengadaanDokumen drpPengadaanDokumen = DrpPengadaanDokumen.builder()
|
||||
.drpId(drpSaved.getId())
|
||||
.jenisDokumenId(drpPengadaanDokumenRequest.getJenisDokumenId())
|
||||
.filename(drpPengadaanDokumenRequest.getFilename())
|
||||
.keterangan(drpPengadaanDokumenRequest.getKeterangan())
|
||||
.isDelete(false)
|
||||
.build();
|
||||
drpPengadaanDokumenList.add(drpPengadaanDokumen);
|
||||
}
|
||||
}
|
||||
|
||||
drpDokumenRepository.saveAll(drpDokumenList);
|
||||
drpPengadaanDokumenRepository.saveAll(drpPengadaanDokumenList);
|
||||
|
||||
return DrpResponse.builder()
|
||||
.id(drpSaved.getId())
|
||||
|
@ -1,4 +1,4 @@
|
||||
package com.iconplus.smartproc.service.drp;
|
||||
package com.iconplus.smartproc.service.drppengadaan;
|
||||
|
||||
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
@ -1,4 +1,4 @@
|
||||
package com.iconplus.smartproc.service.drp;
|
||||
package com.iconplus.smartproc.service.drppengadaan;
|
||||
|
||||
import com.iconplus.smartproc.exception.BusinessException;
|
||||
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
@ -0,0 +1,72 @@
|
||||
package com.iconplus.smartproc.service.drppengadaan;
|
||||
|
||||
import com.iconplus.smartproc.exception.BusinessException;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.request.DrpPengadaanDokumenRequest;
|
||||
import com.iconplus.smartproc.model.response.DrpPengadaanDokumenResponse;
|
||||
import com.iconplus.smartproc.repository.DrpPengadaanDokumenRepository;
|
||||
import com.iconplus.smartproc.util.Constants;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
|
||||
@Service
|
||||
@Slf4j
|
||||
public class EditUploadDrpPengadaanService implements BaseService<DrpPengadaanDokumenRequest, DrpPengadaanDokumenResponse> {
|
||||
|
||||
@Value("${config.file-upload.pendukung}")
|
||||
private String pathFileUploadPendukung;
|
||||
|
||||
private final DrpPengadaanDokumenRepository drpPengadaanDokumenRepository;
|
||||
public EditUploadDrpPengadaanService(DrpPengadaanDokumenRepository drpPengadaanDokumenRepository) {
|
||||
this.drpPengadaanDokumenRepository = drpPengadaanDokumenRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DrpPengadaanDokumenResponse execute(DrpPengadaanDokumenRequest input) {
|
||||
MultipartFile file = input.getFile();
|
||||
String newFilename = file.getOriginalFilename();
|
||||
|
||||
var drpDokumenOptional = drpPengadaanDokumenRepository.findByFilenameAndIsDeleteFalse(input.getFilename());
|
||||
if (drpDokumenOptional.isPresent()) {
|
||||
drpDokumenOptional.get().setDrpId(input.getDrpId());
|
||||
drpDokumenOptional.get().setJenisDokumenId(input.getJenisDokumenId());
|
||||
drpDokumenOptional.get().setFilename(newFilename);
|
||||
drpDokumenOptional.get().setKeterangan(input.getKeterangan());
|
||||
drpPengadaanDokumenRepository.save(drpDokumenOptional.get());
|
||||
}
|
||||
|
||||
Path oldFile = Paths.get(pathFileUploadPendukung + input.getFilename());
|
||||
try {
|
||||
Files.delete(oldFile);
|
||||
} catch (IOException e) {
|
||||
log.info("no file found");
|
||||
}
|
||||
|
||||
File path = new File(pathFileUploadPendukung + newFilename);
|
||||
|
||||
try {
|
||||
FileOutputStream output = new FileOutputStream(path);
|
||||
output.write(file.getBytes());
|
||||
output.close();
|
||||
} catch (Exception ex) {
|
||||
throw new BusinessException(Constants.ERR_CODE_10012,
|
||||
Constants.ERR_TTL_10012,
|
||||
String.format(Constants.ERR_MSG_10012, pathFileUploadPendukung));
|
||||
}
|
||||
|
||||
return DrpPengadaanDokumenResponse.builder()
|
||||
.jenisDokumenId(input.getJenisDokumenId())
|
||||
.filename(newFilename)
|
||||
.keterangan(input.getKeterangan())
|
||||
.build();
|
||||
}
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
package com.iconplus.smartproc.service.drp;
|
||||
package com.iconplus.smartproc.service.drppengadaan;
|
||||
|
||||
import com.iconplus.smartproc.helper.model.Pagination;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
@ -1,4 +1,4 @@
|
||||
package com.iconplus.smartproc.service.drp;
|
||||
package com.iconplus.smartproc.service.drppengadaan;
|
||||
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.entity.DrpPengadaan;
|
@ -1,9 +1,9 @@
|
||||
package com.iconplus.smartproc.service.drp;
|
||||
package com.iconplus.smartproc.service.drppengadaan;
|
||||
|
||||
import com.iconplus.smartproc.exception.BusinessException;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.request.DrpDokumenRequest;
|
||||
import com.iconplus.smartproc.model.response.DrpDokumenResponse;
|
||||
import com.iconplus.smartproc.model.request.DrpPengadaanDokumenRequest;
|
||||
import com.iconplus.smartproc.model.response.DrpPengadaanDokumenResponse;
|
||||
import com.iconplus.smartproc.repository.DrpPengadaanDokumenRepository;
|
||||
import com.iconplus.smartproc.util.Constants;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
@ -15,7 +15,7 @@ import java.io.FileOutputStream;
|
||||
import java.io.IOException;
|
||||
|
||||
@Service
|
||||
public class PostDrpUploadDokumenPendukungService implements BaseService<DrpDokumenRequest, DrpDokumenResponse> {
|
||||
public class PostDrpUploadDokumenPendukungService implements BaseService<DrpPengadaanDokumenRequest, DrpPengadaanDokumenResponse> {
|
||||
|
||||
@Value("${config.file-upload.pendukung}")
|
||||
private String pathFileUploadPendukung;
|
||||
@ -26,7 +26,7 @@ public class PostDrpUploadDokumenPendukungService implements BaseService<DrpDoku
|
||||
}
|
||||
|
||||
@Override
|
||||
public DrpDokumenResponse execute(DrpDokumenRequest input) throws IOException {
|
||||
public DrpPengadaanDokumenResponse execute(DrpPengadaanDokumenRequest input) throws IOException {
|
||||
|
||||
MultipartFile file = input.getFile();
|
||||
String fileName = file.getOriginalFilename();
|
||||
@ -51,7 +51,7 @@ public class PostDrpUploadDokumenPendukungService implements BaseService<DrpDoku
|
||||
}
|
||||
|
||||
|
||||
return DrpDokumenResponse.builder()
|
||||
return DrpPengadaanDokumenResponse.builder()
|
||||
.jenisDokumenId(input.getJenisDokumenId())
|
||||
.filename(fileName)
|
||||
.keterangan(input.getKeterangan())
|
Reference in New Issue
Block a user