Update service pelayanan service

Penerapan proporsi persen dokter umum sebagai asisten di klinik terpadu dialisis untuk kinerja dokter remun baru
This commit is contained in:
Salman Manoe 2023-06-06 19:26:35 +07:00
parent f2ff970c0f
commit d9fd6c0fd1
2 changed files with 24 additions and 1 deletions

View File

@ -376,6 +376,7 @@ public class Master {
public static final Integer ICU_PICU = 328; public static final Integer ICU_PICU = 328;
public static final Integer KLINIK_GIGI_KARYAWAN = 702; public static final Integer KLINIK_GIGI_KARYAWAN = 702;
public static final Integer KLINIK_KARYAWAN = 70; public static final Integer KLINIK_KARYAWAN = 70;
public static final Integer KLINIK_TERPADU_DIALISIS = 535;
public static final Integer MICU = 464; public static final Integer MICU = 464;
public static final Integer NICU = 75; public static final Integer NICU = 75;

View File

@ -465,6 +465,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
Double persenTarifJasaBedah = Double.parseDouble(GetSettingDataFixed("persenTarifJasaBedah").toString()); Double persenTarifJasaBedah = Double.parseDouble(GetSettingDataFixed("persenTarifJasaBedah").toString());
Double persenTarifJasaICU = Double.parseDouble(GetSettingDataFixed("persenTarifJasaICU").toString()); Double persenTarifJasaICU = Double.parseDouble(GetSettingDataFixed("persenTarifJasaICU").toString());
Double persenRemunDokterPA = Double.parseDouble(GetSettingDataFixed("persenRemunDokterPA").toString()); Double persenRemunDokterPA = Double.parseDouble(GetSettingDataFixed("persenRemunDokterPA").toString());
Double persenRemunDokterUmumHD = Double.parseDouble(GetSettingDataFixed("persenRemunDokterUmumHD").toString());
/* /*
* Persiapan filter logic remunerasi * Persiapan filter logic remunerasi
*/ */
@ -529,6 +530,10 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
* Untuk semua klaim di ruangan klinik karyawan * Untuk semua klaim di ruangan klinik karyawan
*/ */
d.put("hargaJasa", 0.0); d.put("hargaJasa", 0.0);
} else if (drKsmUmumList.contains(idPegawai)
&& Master.Ruangan.KLINIK_TERPADU_DIALISIS.equals(d.get("idRuangan"))
&& Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) {
d.put("hargaJasa", persenRemunDokterUmumHD / 100 * Double.parseDouble(d.get("hargaJual").toString()));
} else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) } else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))
&& Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS).contains(d.get("idKelompokPasien"))) { && Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS).contains(d.get("idKelompokPasien"))) {
/* /*
@ -1430,11 +1435,13 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
Double persenTarifJasaBedah = Double.parseDouble(GetSettingDataFixed("persenTarifJasaBedah").toString()); Double persenTarifJasaBedah = Double.parseDouble(GetSettingDataFixed("persenTarifJasaBedah").toString());
Double persenTarifJasaICU = Double.parseDouble(GetSettingDataFixed("persenTarifJasaICU").toString()); Double persenTarifJasaICU = Double.parseDouble(GetSettingDataFixed("persenTarifJasaICU").toString());
Double persenRemunDokterPA = Double.parseDouble(GetSettingDataFixed("persenRemunDokterPA").toString()); Double persenRemunDokterPA = Double.parseDouble(GetSettingDataFixed("persenRemunDokterPA").toString());
Double persenRemunDokterUmumHD = Double.parseDouble(GetSettingDataFixed("persenRemunDokterUmumHD").toString());
/* /*
* Persiapan filter logic remunerasi * Persiapan filter logic remunerasi
*/ */
List<Integer> drKkPatologiAnatomiList = pegawaiDao List<Integer> drKkPatologiAnatomiList = pegawaiDao
.getDokterByKelompokKerja(Master.SubUnitKerja.KK_PATOLOGI_ANATOMI); .getDokterByKelompokKerja(Master.SubUnitKerja.KK_PATOLOGI_ANATOMI);
List<Integer> drKsmUmumList = pegawaiDao.getDokterByKelompokKerja(Master.SubUnitKerja.KK_UMUM);
/* /*
* Set persen jasa dan harga jasa pasien bpjs di ibs, icu * Set persen jasa dan harga jasa pasien bpjs di ibs, icu
*/ */
@ -1444,7 +1451,13 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
* Mapping persentase jasa remunerasi * Mapping persentase jasa remunerasi
*/ */
for (Map<String, Object> d : listData) { for (Map<String, Object> d : listData) {
if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) if (drKsmUmumList.contains(idPegawai) && Master.Ruangan.KLINIK_TERPADU_DIALISIS.equals(d.get("idRuangan"))
&& Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) {
d.put("persenJasa", persenRemunDokterUmumHD.toString() + "%");
if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0)
d.put("hargaJasa",
persenRemunDokterUmumHD / 100 * Double.parseDouble(d.get("hargaJual").toString()));
} else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))
&& Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS).contains(d.get("idKelompokPasien"))) { && Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS).contains(d.get("idKelompokPasien"))) {
if (Master.JenisPetugasPelaksana.DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { if (Master.JenisPetugasPelaksana.DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) {
double persenJasa = persenOperatorIBS / 100; double persenJasa = persenOperatorIBS / 100;
@ -1685,11 +1698,13 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
Double persenVisite = Double.parseDouble(GetSettingDataFixed("persenJasaVisiteDokter").toString()); Double persenVisite = Double.parseDouble(GetSettingDataFixed("persenJasaVisiteDokter").toString());
Double persenTindakan = Double.parseDouble(GetSettingDataFixed("persenJasaTindakanDokter").toString()); Double persenTindakan = Double.parseDouble(GetSettingDataFixed("persenJasaTindakanDokter").toString());
Double persenJasaDokterPA = Double.parseDouble(GetSettingDataFixed("persenJasaDokterPA").toString()); Double persenJasaDokterPA = Double.parseDouble(GetSettingDataFixed("persenJasaDokterPA").toString());
Double persenRemunDokterUmumHD = Double.parseDouble(GetSettingDataFixed("persenRemunDokterUmumHD").toString());
/* /*
* Persiapan filter logic remunerasi * Persiapan filter logic remunerasi
*/ */
List<Integer> drKkPatologiAnatomiList = pegawaiDao List<Integer> drKkPatologiAnatomiList = pegawaiDao
.getDokterByKelompokKerja(Master.SubUnitKerja.KK_PATOLOGI_ANATOMI); .getDokterByKelompokKerja(Master.SubUnitKerja.KK_PATOLOGI_ANATOMI);
List<Integer> drKsmUmumList = pegawaiDao.getDokterByKelompokKerja(Master.SubUnitKerja.KK_UMUM);
/* /*
* Mapping persentase jasa remunerasi * Mapping persentase jasa remunerasi
*/ */
@ -1706,6 +1721,13 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
*/ */
if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0) if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0)
d.put("hargaJasa", persenBPJS / 100 * Double.parseDouble(d.get("hargaJual").toString())); d.put("hargaJasa", persenBPJS / 100 * Double.parseDouble(d.get("hargaJual").toString()));
} else if (drKsmUmumList.contains(idPegawai)
&& Master.Ruangan.KLINIK_TERPADU_DIALISIS.equals(d.get("idRuangan"))
&& Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) {
d.put("persenJasa", persenRemunDokterUmumHD.toString() + "%");
if (Double.parseDouble(d.get("hargaJasa").toString()) != 0.0)
d.put("hargaJasa",
persenRemunDokterUmumHD / 100 * Double.parseDouble(d.get("hargaJual").toString()));
} else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen")) } else if (Master.Departemen.BEDAH_SENTRAL.equals(d.get("idDepartemen"))
&& Master.JenisPetugasPelaksana.DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) { && Master.JenisPetugasPelaksana.DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) {
d.put("persenJasa", persenOperatorIBS.toString() + "%"); d.put("persenJasa", persenOperatorIBS.toString() + "%");