add api drp list rekomendasi

This commit is contained in:
dirgantarasiahaan
2023-06-02 18:21:29 +07:00
parent d2015e6695
commit f1f071b512
17 changed files with 376 additions and 12 deletions

View File

@@ -0,0 +1,57 @@
package com.iconplus.smartproc.service.print;
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.DrpRepository;
import org.apache.commons.lang3.BooleanUtils;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
@Service
public class GetListPrintDrpService implements BaseService<PrintDrpRequest, GetListPrintDrpResponse> {
private DrpRepository drpRepository;
public GetListPrintDrpService(DrpRepository drpRepository) {
this.drpRepository = drpRepository;
}
@Override
public GetListPrintDrpResponse execute(PrintDrpRequest input) {
List<PrintDrpResponse> printDrpResponseList = new ArrayList<>();
var drpViews = drpRepository.getListPrintDrp(input.getPageable());
for (DrpView drpView : drpViews) {
PrintDrpResponse printDrpResponse = PrintDrpResponse.builder()
.id(drpView.getId())
.printDate(drpView.getPrintDate())
.build();
if (BooleanUtils.isTrue(drpView.getIsPrint())) {
printDrpResponse.setStatus("Tercetak");
} else {
printDrpResponse.setStatus("Belum Bisa Dicetak");
}
printDrpResponseList.add(printDrpResponse);
}
return GetListPrintDrpResponse.builder()
.data(printDrpResponseList)
.pagination(Pagination.builder()
.pageSize(input.getPageable().getPageSize())
.currentPage(input.getPageable().getPageNumber())
.totalPages(drpViews.getTotalPages())
.totalRecords(drpViews.getTotalElements())
.isFirstPage(drpViews.isFirst())
.isLastPage(drpViews.isLast())
.build())
.build();
}
}