Update service cetakan slip gaji

Penyesuaian handle data bernilai null dan penambahan field periode pada cetakan slip gaji
This commit is contained in:
Salman Manoe 2023-05-16 12:34:36 +07:00
parent 9bf3c3ae09
commit 897dd221c5
3 changed files with 31 additions and 6 deletions

View File

@ -1086,4 +1086,7 @@ public interface PegawaiDao extends PagingAndSortingRepository<Pegawai, Integer>
+ "order by pg.namaLengkap") + "order by pg.namaLengkap")
public List<Map<String, Object>> findAllDokter(); public List<Map<String, Object>> findAllDokter();
@Query("select peg.tglLahir from Pegawai peg where peg.id = :idPegawai")
Date findTglLahirById(@Param("idPegawai") Integer idPegawai);
} }

View File

@ -3445,13 +3445,18 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
public Map<String, Object> defineSlipGajiDataSource(Integer pegawaiId, Long bulan) { public Map<String, Object> defineSlipGajiDataSource(Integer pegawaiId, Long bulan) {
Locale indonesia = new Locale("in", "ID"); Locale indonesia = new Locale("in", "ID");
NumberFormat nf = NumberFormat.getCurrencyInstance(indonesia); NumberFormat nf = NumberFormat.getCurrencyInstance(indonesia);
SimpleDateFormat df = new SimpleDateFormat("MMMM yyyy", indonesia);
SimpleDateFormat tglLahir = new SimpleDateFormat("dd-MM-yyyy", indonesia);
Map<String, Object> result = new HashMap<>(); Map<String, Object> result = new HashMap<>();
SlipGajiDto dto = slipGajiService.get(pegawaiId, bulan); SlipGajiDto dto = slipGajiService.get(pegawaiId, bulan);
result.put("namaPegawai", dto.getNamaPegawai()); Date tglLahirPegawai = pegawaiDao.findTglLahirById(pegawaiId);
result.put("nip", dto.getNip()); result.put("namaPegawai", CommonUtil.isNotNullOrEmpty(dto.getNamaPegawai()) ? dto.getNamaPegawai() : "-");
result.put("jabatan", dto.getJabatan()); result.put("nip", CommonUtil.isNotNullOrEmpty(dto.getNip()) ? dto.getNip() : "-");
result.put("unitKerja", dto.getJabatan()); result.put("tglLahir", CommonUtil.isNotNullOrEmpty(tglLahirPegawai) ? df.format(tglLahirPegawai) : "-");
result.put("subUnitKerja", dto.getSubUnitKerja()); 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("gaji", "-");
result.put("remunerasiKinerja", "-"); result.put("remunerasiKinerja", "-");
result.put("remunerasiTambahan", "-"); result.put("remunerasiTambahan", "-");
@ -3473,7 +3478,9 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
BigDecimal jumlahPenerimaan = BigDecimal.ZERO; BigDecimal jumlahPenerimaan = BigDecimal.ZERO;
BigDecimal jumlahPemotongan = BigDecimal.ZERO; BigDecimal jumlahPemotongan = BigDecimal.ZERO;
BigDecimal jumlahPenerimaanBersih = BigDecimal.ZERO; BigDecimal jumlahPenerimaanBersih = BigDecimal.ZERO;
List<SlipGajiKomponenDto> komponenDto = dto.getKomponen(); List<SlipGajiKomponenDto> komponenDto = new ArrayList<>();
if (CommonUtil.isNotNullOrEmpty(dto.getKomponen()))
komponenDto = dto.getKomponen();
for (SlipGajiKomponenDto k : komponenDto) { for (SlipGajiKomponenDto k : komponenDto) {
if (Master.JenisKomponenGaji.PENERIMAAN == k.getIdJenisKomponen()) { if (Master.JenisKomponenGaji.PENERIMAAN == k.getIdJenisKomponen()) {
jumlahPenerimaan = jumlahPenerimaan.add(new BigDecimal(k.getNominal().doubleValue())); jumlahPenerimaan = jumlahPenerimaan.add(new BigDecimal(k.getNominal().doubleValue()));

View File

@ -30,6 +30,7 @@
<field name="jumlahPenerimaan" class="java.lang.String"/> <field name="jumlahPenerimaan" class="java.lang.String"/>
<field name="jumlahPemotongan" class="java.lang.String"/> <field name="jumlahPemotongan" class="java.lang.String"/>
<field name="jumlahPenerimaanBersih" class="java.lang.String"/> <field name="jumlahPenerimaanBersih" class="java.lang.String"/>
<field name="periode" class="java.lang.String"/>
<background> <background>
<band splitType="Stretch"/> <band splitType="Stretch"/>
</background> </background>
@ -810,6 +811,20 @@
<textFieldExpression><![CDATA["dicetak melalui aplikasi SMART pada " + new SimpleDateFormat("dd MMMM yyyy", new java.util.Locale("id")).format(new Date())]]></textFieldExpression> <textFieldExpression><![CDATA["dicetak melalui aplikasi SMART pada " + new SimpleDateFormat("dd MMMM yyyy", new java.util.Locale("id")).format(new Date())]]></textFieldExpression>
</textField> </textField>
</elementGroup> </elementGroup>
<textField>
<reportElement x="436" y="40" width="236" height="20" uuid="bcd9a255-8b8f-493f-9f1f-2d2263313f8a"/>
<textElement verticalAlignment="Middle">
<font size="11"/>
</textElement>
<textFieldExpression><![CDATA[": " + $F{periode}]]></textFieldExpression>
</textField>
<staticText>
<reportElement x="336" y="40" width="100" height="20" uuid="5137cbca-8972-499f-8876-cfe9489b879d"/>
<textElement verticalAlignment="Middle">
<font size="11"/>
</textElement>
<text><![CDATA[Periode]]></text>
</staticText>
</band> </band>
</summary> </summary>
</jasperReport> </jasperReport>