From 897dd221c541df4725050004d6e93511f567c251 Mon Sep 17 00:00:00 2001 From: Salman Manoe Date: Tue, 16 May 2023 12:34:36 +0700 Subject: [PATCH] Update service cetakan slip gaji Penyesuaian handle data bernilai null dan penambahan field periode pada cetakan slip gaji --- .../medifirst2000/dao/PegawaiDao.java | 3 +++ .../service/impl/ReportServiceImpl.java | 19 +++++++++++++------ .../WEB-INF/templates/jrxml/slipGaji.jrxml | 15 +++++++++++++++ 3 files changed, 31 insertions(+), 6 deletions(-) diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PegawaiDao.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PegawaiDao.java index 7d8626e6..adca5a04 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PegawaiDao.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PegawaiDao.java @@ -1086,4 +1086,7 @@ public interface PegawaiDao extends PagingAndSortingRepository + "order by pg.namaLengkap") public List> findAllDokter(); + @Query("select peg.tglLahir from Pegawai peg where peg.id = :idPegawai") + Date findTglLahirById(@Param("idPegawai") Integer idPegawai); + } diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ReportServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ReportServiceImpl.java index 2da2856d..a9b6e440 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ReportServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ReportServiceImpl.java @@ -3445,13 +3445,18 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic public Map defineSlipGajiDataSource(Integer pegawaiId, Long bulan) { Locale indonesia = new Locale("in", "ID"); NumberFormat nf = NumberFormat.getCurrencyInstance(indonesia); + SimpleDateFormat df = new SimpleDateFormat("MMMM yyyy", indonesia); + SimpleDateFormat tglLahir = new SimpleDateFormat("dd-MM-yyyy", indonesia); Map result = new HashMap<>(); SlipGajiDto dto = slipGajiService.get(pegawaiId, bulan); - result.put("namaPegawai", dto.getNamaPegawai()); - result.put("nip", dto.getNip()); - result.put("jabatan", dto.getJabatan()); - result.put("unitKerja", dto.getJabatan()); - result.put("subUnitKerja", dto.getSubUnitKerja()); + Date tglLahirPegawai = pegawaiDao.findTglLahirById(pegawaiId); + result.put("namaPegawai", CommonUtil.isNotNullOrEmpty(dto.getNamaPegawai()) ? dto.getNamaPegawai() : "-"); + result.put("nip", CommonUtil.isNotNullOrEmpty(dto.getNip()) ? dto.getNip() : "-"); + result.put("tglLahir", CommonUtil.isNotNullOrEmpty(tglLahirPegawai) ? df.format(tglLahirPegawai) : "-"); + result.put("jabatan", CommonUtil.isNotNullOrEmpty(dto.getJabatan()) ? dto.getJabatan() : "-"); + result.put("periode", df.format(new Date(bulan))); + result.put("unitKerja", CommonUtil.isNotNullOrEmpty(dto.getJabatan()) ? dto.getJabatan() : "-"); + result.put("subUnitKerja", CommonUtil.isNotNullOrEmpty(dto.getSubUnitKerja()) ? dto.getSubUnitKerja() : "-"); result.put("gaji", "-"); result.put("remunerasiKinerja", "-"); result.put("remunerasiTambahan", "-"); @@ -3473,7 +3478,9 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic BigDecimal jumlahPenerimaan = BigDecimal.ZERO; BigDecimal jumlahPemotongan = BigDecimal.ZERO; BigDecimal jumlahPenerimaanBersih = BigDecimal.ZERO; - List komponenDto = dto.getKomponen(); + List komponenDto = new ArrayList<>(); + if (CommonUtil.isNotNullOrEmpty(dto.getKomponen())) + komponenDto = dto.getKomponen(); for (SlipGajiKomponenDto k : komponenDto) { if (Master.JenisKomponenGaji.PENERIMAAN == k.getIdJenisKomponen()) { jumlahPenerimaan = jumlahPenerimaan.add(new BigDecimal(k.getNominal().doubleValue())); diff --git a/jasamedika-reporting/src/main/webapp/WEB-INF/templates/jrxml/slipGaji.jrxml b/jasamedika-reporting/src/main/webapp/WEB-INF/templates/jrxml/slipGaji.jrxml index 3b01feae..e8c4225a 100644 --- a/jasamedika-reporting/src/main/webapp/WEB-INF/templates/jrxml/slipGaji.jrxml +++ b/jasamedika-reporting/src/main/webapp/WEB-INF/templates/jrxml/slipGaji.jrxml @@ -30,6 +30,7 @@ + @@ -810,6 +811,20 @@ + + + + + + + + + + + + + +