From d9393504f66c20f7c3f954d27836ddcdb53b7a91 Mon Sep 17 00:00:00 2001 From: Salman Manoe Date: Tue, 26 Nov 2024 10:54:13 +0700 Subject: [PATCH 1/2] Update RemunerasiServiceImpl.java Penyesuaian aturan remunerasi khusus dr. budi rahmat --- .../service/impl/RemunerasiServiceImpl.java | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/RemunerasiServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/RemunerasiServiceImpl.java index 2e20c481..d6f663d3 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/RemunerasiServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/RemunerasiServiceImpl.java @@ -312,6 +312,8 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera double persenRemunDokterUmumHD = Double.parseDouble(GetSettingDataFixed("persenRemunDokterUmumHD")); double persenRemunLabGenetika = Double.parseDouble(GetSettingDataFixed("persenRemunLabGenetika")); double persenRemunTerapis = Double.parseDouble(GetSettingDataFixed("persenRemunTerapis")); + double persenRemunVisiteDokterKelompokBudiRahmat = Double + .parseDouble(GetSettingDataFixed("persenRemunVisiteDokterKelompokBudiRahmat")); /* * Persiapan filter logic remunerasi */ @@ -336,6 +338,8 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera List idsPenunjangBukanAnestesi = splitDataSettingDatafixed("pr_penunjang_nonanestesi"); List idsDokterBPJSffs = splitDataSettingDatafixed("dokterBPJSffs"); List idsDokterPediatrikGD = splitDataSettingDatafixed("pr_dokter_pediatrik_gd"); + List listIdPegawaiRemunKelompokBudiRahmat = splitDataSettingDatafixed( + "listIdPegawaiRemunKelompokBudiRahmat"); List idsMonitoringIntervensi = splitDataSettingDatafixed("idMonitoringIntervensi"); List idsMonitoringHemodinamikGagalOrgan = splitDataSettingDatafixed( "idMonitoringHemodinamikGagalOrgan"); @@ -390,6 +394,8 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera /* * Mapping set awal persentase jasa remunerasi dan harga jasa remunerasi */ + if (pegawaiDao.getPegawaiByKategoryPegawai(Arrays.asList(DOKTER_LUAR)).contains(idPegawai)) + persenVisite = persenRemunVisiteDokterKelompokBudiRahmat; for (Map d : listRatedPay) { if (paketBukanFixedPay.contains(Integer.parseInt(d.get("idProduk").toString()))) d.put("hargaJual", d.get("komponenTotalTarif")); @@ -944,7 +950,8 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera List> listPelayananFfs = new ArrayList<>(); List> listPelayananNonJknLuarJamKerja = new ArrayList<>(); double capaianRemun = 0.0; - if (pegawaiDao.getPegawaiByKategoryPegawai(Arrays.asList(DOKTER_LUAR)).contains(idPegawai)) { + if (pegawaiDao.getPegawaiByKategoryPegawai(Arrays.asList(DOKTER_LUAR)).contains(idPegawai) + && !listIdPegawaiRemunKelompokBudiRahmat.contains(idPegawai)) { /* * Dokter luar hanya mendapatkan ffs */ @@ -1929,6 +1936,8 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera double persenRemunDokterUmumHD = Double.parseDouble(GetSettingDataFixed("persenRemunDokterUmumHD")); double persenRemunLabGenetika = Double.parseDouble(GetSettingDataFixed("persenRemunLabGenetika")); double persenRemunTerapis = Double.parseDouble(GetSettingDataFixed("persenRemunTerapis")); + double persenRemunVisiteDokterKelompokBudiRahmat = Double + .parseDouble(GetSettingDataFixed("persenRemunVisiteDokterKelompokBudiRahmat")); /* * Persiapan filter logic remunerasi */ @@ -1938,6 +1947,8 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera List drAnastesiList = pegawaiDao.getDokterByKelompokKerja(KK_ANESTESI); List terapisRehabMedik = mapJabatanProfesiDao.findIdPegawaiByProfesiIn(Arrays.asList(TERAPI)); List idProdukLabGenetikaLuarRuangan = splitDataSettingDatafixed("idProdukLabGenetikaLuarRuangan"); + List listIdPegawaiRemunKelompokBudiRahmat = splitDataSettingDatafixed( + "listIdPegawaiRemunKelompokBudiRahmat"); /* * Set persen jasa dan harga jasa pasien bpjs di ibs, icu */ @@ -1946,6 +1957,9 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera /* * Mapping persentase jasa remunerasi */ + if (pegawaiDao.getPegawaiByKategoryPegawai(Arrays.asList(DOKTER_LUAR)).contains(idPegawai) + && listIdPegawaiRemunKelompokBudiRahmat.contains(idPegawai)) + persenVisite = persenRemunVisiteDokterKelompokBudiRahmat; for (Map d : listData) { double hargaJual = Double.parseDouble(d.get("hargaJual").toString()); if (drKsmUmumList.contains(idPegawai) && ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) { From 41e04aa4405fda7bb96f5ed8d43fabf6410bc91e Mon Sep 17 00:00:00 2001 From: Salman Manoe Date: Mon, 2 Dec 2024 13:06:53 +0700 Subject: [PATCH 2/2] Update service log detail logbook kinerja Penerapan DTO biasa dan menghapus ketergantungan pada hibernate proxy saat get data log hapus verifikasi catatan kinerja --- .../LogbookKinerjaDetailLogServiceImpl.java | 10 ++++---- .../dto/LogbookKinerjaDetailLogDto.java | 2 +- .../medifirst2000/dto/PegawaiLogDto.java | 23 +++++++++++++++++++ 3 files changed, 29 insertions(+), 6 deletions(-) create mode 100644 jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/dto/PegawaiLogDto.java diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/LogbookKinerjaDetailLogServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/LogbookKinerjaDetailLogServiceImpl.java index df05b468..2c8c6265 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/LogbookKinerjaDetailLogServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/LogbookKinerjaDetailLogServiceImpl.java @@ -5,6 +5,7 @@ import com.jasamedika.medifirst2000.dao.LogbookKinerjaDetailDao; import com.jasamedika.medifirst2000.dao.LogbookKinerjaDetailLogDao; import com.jasamedika.medifirst2000.dto.LogbookKinerjaDetailLogDto; import com.jasamedika.medifirst2000.dto.LogbookKinerjaDetailLogReqDto; +import com.jasamedika.medifirst2000.dto.PegawaiLogDto; import com.jasamedika.medifirst2000.entities.LogbookKinerjaDetail; import com.jasamedika.medifirst2000.entities.LogbookKinerjaDetailLog; import com.jasamedika.medifirst2000.entities.Pegawai; @@ -46,9 +47,6 @@ public class LogbookKinerjaDetailLogServiceImpl implements LogbookKinerjaDetailL @Autowired private BaseConverterImpl catatanKinerjaConverter; - @Autowired - private BaseConverterImpl pegawaiConverter; - @Override public void save(LogbookKinerjaDetailLogReqDto dto) { LogbookKinerjaDetailLog.LogbookKinerjaDetailLogBuilder logBuilder = LogbookKinerjaDetailLog.builder(); @@ -136,8 +134,10 @@ public class LogbookKinerjaDetailLogServiceImpl implements LogbookKinerjaDetailL dtoBuilder.catatanKinerja(catatanKinerjaVO); } { - PegawaiVO pegawaiVO = pegawaiConverter.transferModelToVO(log.getPegawai(), new PegawaiVO()); - dtoBuilder.pegawai(pegawaiVO); + PegawaiLogDto.PegawaiLogDtoBuilder builder = PegawaiLogDto.builder(); + builder.nipPns(log.getPegawai().getNipPns()); + builder.namaLengkap(log.getPegawai().getNamaLengkap()); + dtoBuilder.pegawai(builder.build()); } LogbookKinerjaDetailLogDto dto = dtoBuilder.jenisLog(log.getJenisLog()).keterangan(log.getKeterangan()) .tanggalDibuat(log.getTanggalDibuat()).build(); diff --git a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/dto/LogbookKinerjaDetailLogDto.java b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/dto/LogbookKinerjaDetailLogDto.java index 6c6a68c8..767dc0cd 100644 --- a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/dto/LogbookKinerjaDetailLogDto.java +++ b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/dto/LogbookKinerjaDetailLogDto.java @@ -37,6 +37,6 @@ public class LogbookKinerjaDetailLogDto { private Date tanggalDibuat; @Caption(value = "Pegawai") - private PegawaiVO pegawai; + private PegawaiLogDto pegawai; } diff --git a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/dto/PegawaiLogDto.java b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/dto/PegawaiLogDto.java new file mode 100644 index 00000000..3426bb82 --- /dev/null +++ b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/dto/PegawaiLogDto.java @@ -0,0 +1,23 @@ +package com.jasamedika.medifirst2000.dto; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author salmanoe + * @version 1.0.0 + * @since 02/12/2024 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class PegawaiLogDto { + + private String namaLengkap; + + private String nipPns; + +}