This commit is contained in:
dirgantarasiahaan
2023-06-03 18:40:21 +07:00
parent 37a06b00f1
commit dbbde49f59
15 changed files with 351 additions and 6 deletions

View File

@@ -1,12 +1,15 @@
package com.iconplus.smartproc.service.print;
import com.iconplus.smartproc.exception.BusinessException;
import com.iconplus.smartproc.helper.model.Pagination;
import com.iconplus.smartproc.helper.service.BaseService;
import com.iconplus.smartproc.model.projection.DrpView;
import com.iconplus.smartproc.model.request.PrintDrpRequest;
import com.iconplus.smartproc.model.response.GetListPrintDrpResponse;
import com.iconplus.smartproc.model.response.PrintDrpResponse;
import com.iconplus.smartproc.repository.DrpApprovalRepository;
import com.iconplus.smartproc.repository.DrpRepository;
import com.iconplus.smartproc.util.Constants;
import org.apache.commons.lang3.BooleanUtils;
import org.springframework.stereotype.Service;
@@ -17,9 +20,11 @@ import java.util.List;
public class GetListPrintDrpService implements BaseService<PrintDrpRequest, GetListPrintDrpResponse> {
private DrpRepository drpRepository;
public GetListPrintDrpService(DrpRepository drpRepository) {
private DrpApprovalRepository drpApprovalRepository;
public GetListPrintDrpService(DrpRepository drpRepository,
DrpApprovalRepository drpApprovalRepository) {
this.drpRepository = drpRepository;
this.drpApprovalRepository = drpApprovalRepository;
}
@@ -35,8 +40,16 @@ public class GetListPrintDrpService implements BaseService<PrintDrpRequest, GetL
.tahun(drpView.getTahun())
.printDate(drpView.getPrintDate())
.build();
var drpApprovalOptional = drpApprovalRepository.findByDrpIdAndLevelAndIsDeleteFalse(drpView.getId(), "DIREKTUR")
.orElseThrow(()-> new BusinessException(Constants.ERR_CODE_10001,
Constants.ERR_TTL_10001,
String.format(Constants.ERR_MSG_10001, "DRP Approvel", drpView.getId())));
if (BooleanUtils.isTrue(drpView.getIsPrint())) {
printDrpResponse.setStatus("Tercetak");
} else if (drpApprovalOptional.getIsApprove() == null) {
printDrpResponse.setStatus("Belum Dicetak");
} else {
printDrpResponse.setStatus("Belum Bisa Dicetak");
}