fix
This commit is contained in:
@@ -1,5 +1,9 @@
|
||||
package com.iconplus.smartproc.service;
|
||||
|
||||
import com.google.zxing.BarcodeFormat;
|
||||
import com.google.zxing.client.j2se.MatrixToImageWriter;
|
||||
import com.google.zxing.common.BitMatrix;
|
||||
import com.google.zxing.qrcode.QRCodeWriter;
|
||||
import com.iconplus.smartproc.exception.BusinessException;
|
||||
import com.iconplus.smartproc.model.entity.TokenManagement;
|
||||
import com.iconplus.smartproc.model.request.UsersRequest;
|
||||
@@ -11,6 +15,7 @@ import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.sql.Timestamp;
|
||||
import java.time.Instant;
|
||||
|
||||
@@ -105,4 +110,12 @@ public class CommonService {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public BufferedImage generateQRCodeImage(String barcodeText) throws Exception {
|
||||
QRCodeWriter barcodeWriter = new QRCodeWriter();
|
||||
BitMatrix bitMatrix =
|
||||
barcodeWriter.encode(barcodeText, BarcodeFormat.QR_CODE, 200, 200);
|
||||
|
||||
return MatrixToImageWriter.toBufferedImage(bitMatrix);
|
||||
}
|
||||
}
|
||||
|
@@ -52,6 +52,9 @@ public class PostDrpApprovalExecutionService implements BaseService<DrpApprovalR
|
||||
|
||||
Date dateNow = Date.valueOf(LocalDate.now());
|
||||
|
||||
drpApproval.setIsApprove(input.getIsApprove());
|
||||
drpApproval.setCatatan(input.getCatatan());
|
||||
|
||||
List<DrpApprovalHistory> drpApprovalHistoryList = new ArrayList<>();
|
||||
var listDrpApproval = drpApprovalRepository.findByDrpIdAndIsDeleteFalse(input.getDrpId());
|
||||
|
||||
@@ -64,23 +67,28 @@ public class PostDrpApprovalExecutionService implements BaseService<DrpApprovalR
|
||||
drpApprovalHistoryList.add(drpApprovalHistoryExecutor);
|
||||
|
||||
if (StringUtils.equalsIgnoreCase(drpApproval.getLevel(), "VP")) {
|
||||
drpApproval.setIsApprove(input.getIsApprove());
|
||||
drp.setVpApproveDate(dateNow);
|
||||
drp.setApproveStatus(Constants.STATUS_APPROVAL_VP);
|
||||
drpApproval.setCatatan(input.getCatatan());
|
||||
|
||||
for (DrpApproval drpAppr : listDrpApproval) {
|
||||
if (StringUtils.equalsIgnoreCase(drpAppr.getLevel(), "KOMITE")) {
|
||||
DrpApprovalHistory drpApprovalHistory = DrpApprovalHistory.builder()
|
||||
.drpApprovalId(drpApproval.getId())
|
||||
.date(dateNow)
|
||||
.status("Terkirim")
|
||||
.isDelete(false)
|
||||
.build();
|
||||
drpApprovalHistoryList.add(drpApprovalHistory);
|
||||
if (BooleanUtils.isTrue(input.getIsApprove())) {
|
||||
drp.setApproveStatus(Constants.STATUS_APPROVAL_VP);
|
||||
|
||||
for (DrpApproval drpAppr : listDrpApproval) {
|
||||
if (StringUtils.equalsIgnoreCase(drpAppr.getLevel(), "KOMITE")) {
|
||||
DrpApprovalHistory drpApprovalHistory = DrpApprovalHistory.builder()
|
||||
.drpApprovalId(drpApproval.getId())
|
||||
.date(dateNow)
|
||||
.status("Terkirim")
|
||||
.isDelete(false)
|
||||
.build();
|
||||
drpApprovalHistoryList.add(drpApprovalHistory);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
drp.setApproveStatus(Constants.STATUS_PENYUSUNAN);
|
||||
drpApproval.setIsDelete(true);
|
||||
drpApprovalRepository.deleteApprovalByDrpId(input.getDrpId());
|
||||
}
|
||||
|
||||
} else if (StringUtils.equalsIgnoreCase(drpApproval.getLevel(), "DIREKTUR")) {
|
||||
|
||||
@@ -90,10 +98,16 @@ public class PostDrpApprovalExecutionService implements BaseService<DrpApprovalR
|
||||
String.format(Constants.ERR_MSG_10013, "KOMITE"));
|
||||
}
|
||||
|
||||
drpApproval.setIsApprove(input.getIsApprove());
|
||||
if (BooleanUtils.isTrue(input.getIsApprove())) {
|
||||
drp.setApproveStatus(Constants.STATUS_APPROVAL_DIRUT);
|
||||
} else {
|
||||
drp.setApproveStatus(Constants.STATUS_PENYUSUNAN);
|
||||
drpApproval.setIsDelete(true);
|
||||
drpApprovalRepository.deleteApprovalByDrpId(input.getDrpId());
|
||||
}
|
||||
|
||||
drp.setDirekturApproveDate(dateNow);
|
||||
drp.setApproveStatus(Constants.STATUS_APPROVAL_DIRUT);
|
||||
drpApproval.setCatatan(input.getCatatan());
|
||||
|
||||
|
||||
} else {
|
||||
|
||||
@@ -107,8 +121,7 @@ public class PostDrpApprovalExecutionService implements BaseService<DrpApprovalR
|
||||
if (listKomiteApproval.size() == 1) {
|
||||
drp.setApproveStatus(Constants.STATUS_REKOMENDASI_KOMITE);
|
||||
}
|
||||
drpApproval.setIsApprove(input.getIsApprove());
|
||||
drpApproval.setCatatan(input.getCatatan());
|
||||
|
||||
drp.setKomiteApproveDate(dateNow);
|
||||
|
||||
for (DrpApproval drpAppr : listDrpApproval) {
|
||||
|
@@ -0,0 +1,44 @@
|
||||
package com.iconplus.smartproc.service.print;
|
||||
|
||||
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||
import com.iconplus.smartproc.helper.service.BaseService;
|
||||
import com.iconplus.smartproc.model.projection.DrpApprovalView;
|
||||
import com.iconplus.smartproc.model.request.PrintDrpRequest;
|
||||
import com.iconplus.smartproc.repository.DrpApprovalRepository;
|
||||
import com.iconplus.smartproc.service.CommonService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@Service
|
||||
public class DrpPrintExecutionService implements BaseService<PrintDrpRequest, EmptyResponse> {
|
||||
|
||||
private final CommonService commonService;
|
||||
private final DrpApprovalRepository drpApprovalRepository;
|
||||
public DrpPrintExecutionService(CommonService commonService,
|
||||
DrpApprovalRepository drpApprovalRepository) {
|
||||
this.commonService = commonService;
|
||||
this.drpApprovalRepository = drpApprovalRepository;
|
||||
}
|
||||
|
||||
@Override
|
||||
public EmptyResponse execute(PrintDrpRequest input) throws Exception {
|
||||
|
||||
var drpApprovalViews = drpApprovalRepository.getDrpApproval(input.getDrpId());
|
||||
|
||||
int size = drpApprovalViews.size();
|
||||
|
||||
List<BufferedImage> bufferedImageList = new ArrayList<>();
|
||||
|
||||
for (DrpApprovalView drpApprovalView : drpApprovalViews) {
|
||||
String barcodeText = drpApprovalView.getApproverUserId().toString() + " - " + drpApprovalView.getNama() + " - " + drpApprovalView.getJabatan();
|
||||
var bufferedImage = commonService.generateQRCodeImage(barcodeText);
|
||||
bufferedImageList.add(bufferedImage);
|
||||
}
|
||||
|
||||
return new EmptyResponse();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user