Update service remunerasi

Penyesuaian rule baru produk tidak boleh diklaim kk dokter umum
This commit is contained in:
Salman Manoe 2024-12-31 09:52:59 +07:00
parent 6c015317fa
commit 4cf78e5031

View File

@ -271,7 +271,6 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
date = df.parse(bulan); date = df.parse(bulan);
dateLine = df.parse(GetSettingDataFixed("berlakuTargetJasaRemunDokter")); dateLine = df.parse(GetSettingDataFixed("berlakuTargetJasaRemunDokter"));
} catch (ParseException e) { } catch (ParseException e) {
System.out.println(e.getMessage());
return null; return null;
} }
/* /*
@ -334,6 +333,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
List<Integer> idsRegDJPPenunjangPK = splitDataSettingDatafixed("penunjang_pk"); List<Integer> idsRegDJPPenunjangPK = splitDataSettingDatafixed("penunjang_pk");
List<Integer> idsRegDJPPenunjangRad = splitDataSettingDatafixed("penunjang_radiologi"); List<Integer> idsRegDJPPenunjangRad = splitDataSettingDatafixed("penunjang_radiologi");
List<Integer> idsDokterUmumIGD = splitDataSettingDatafixed("pr_dokter_umum_igd"); List<Integer> idsDokterUmumIGD = splitDataSettingDatafixed("pr_dokter_umum_igd");
List<Integer> idsDokterUmumExclude = splitDataSettingDatafixed("pr_dokter_umum_exclude");
List<Integer> idsDokterPerinatologi = splitDataSettingDatafixed("pr_dokter_perinatologi"); List<Integer> idsDokterPerinatologi = splitDataSettingDatafixed("pr_dokter_perinatologi");
List<Integer> idsPenunjangBukanAnestesi = splitDataSettingDatafixed("pr_penunjang_nonanestesi"); List<Integer> idsPenunjangBukanAnestesi = splitDataSettingDatafixed("pr_penunjang_nonanestesi");
List<Integer> idsDokterBPJSffs = splitDataSettingDatafixed("dokterBPJSffs"); List<Integer> idsDokterBPJSffs = splitDataSettingDatafixed("dokterBPJSffs");
@ -1021,13 +1021,16 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
/* /*
* Dibatasi oleh daftar jenis tindakan tertentu * Dibatasi oleh daftar jenis tindakan tertentu
*/ */
if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA if (!drKsmUmumList.contains(idPegawai) || !idsDokterUmumExclude
.contains(Integer.parseInt(next.get("idProduk").toString()))) {
if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& (idsRegDJPPenunjangPA
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
|| idsRegDJPPenunjangPK || idsRegDJPPenunjangPK.contains(Integer
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { .parseInt(next.get("idDetailJenisProduk").toString())))) {
/* /*
* Pengecualian daftar tindakan penunjang yang * Pengecualian daftar tindakan penunjang
* bebas klaim * yang bebas klaim
*/ */
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
@ -1038,6 +1041,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} }
}
} else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk")) } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk"))
|| (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) || (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& !listDetailJenisProduk.contains( && !listDetailJenisProduk.contains(
@ -1081,13 +1085,16 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
/* /*
* Diluar pembatasan jenis produk * Diluar pembatasan jenis produk
*/ */
if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA if (!drKsmUmumList.contains(idPegawai) || !idsDokterUmumExclude
.contains(Integer.parseInt(next.get("idProduk").toString()))) {
if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& (idsRegDJPPenunjangPA
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
|| idsRegDJPPenunjangPK || idsRegDJPPenunjangPK.contains(Integer
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { .parseInt(next.get("idDetailJenisProduk").toString())))) {
/* /*
* Pengecualian daftar tindakan penunjang yang * Pengecualian daftar tindakan penunjang
* bebas klaim * yang bebas klaim
*/ */
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
@ -1100,6 +1107,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
} }
} }
} }
}
} else if (capaianRemun < targetRemun && (date.equals(dateLine) || date.after(dateLine))) { } else if (capaianRemun < targetRemun && (date.equals(dateLine) || date.after(dateLine))) {
/* /*
* Alokasi bagian remunerasi berdasarkan target rupiah * Alokasi bagian remunerasi berdasarkan target rupiah
@ -1142,13 +1150,16 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
/* /*
* Dibatasi oleh daftar jenis tindakan tertentu * Dibatasi oleh daftar jenis tindakan tertentu
*/ */
if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA if (!drKsmUmumList.contains(idPegawai) || !idsDokterUmumExclude
.contains(Integer.parseInt(next.get("idProduk").toString()))) {
if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& (idsRegDJPPenunjangPA
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
|| idsRegDJPPenunjangPK || idsRegDJPPenunjangPK.contains(Integer
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { .parseInt(next.get("idDetailJenisProduk").toString())))) {
/* /*
* Pengecualian daftar tindakan penunjang yang * Pengecualian daftar tindakan penunjang
* bebas klaim * yang bebas klaim
*/ */
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
@ -1159,6 +1170,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
} }
}
} else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk")) } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk"))
|| (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) || (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& !listDetailJenisProduk.contains( && !listDetailJenisProduk.contains(
@ -1202,13 +1214,16 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
/* /*
* Diluar pembatasan jenis produk * Diluar pembatasan jenis produk
*/ */
if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA if (!drKsmUmumList.contains(idPegawai) || !idsDokterUmumExclude
.contains(Integer.parseInt(next.get("idProduk").toString()))) {
if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& (idsRegDJPPenunjangPA
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
|| idsRegDJPPenunjangPK || idsRegDJPPenunjangPK.contains(Integer
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { .parseInt(next.get("idDetailJenisProduk").toString())))) {
/* /*
* Pengecualian daftar tindakan penunjang yang * Pengecualian daftar tindakan penunjang
* bebas klaim * yang bebas klaim
*/ */
listPelayananRemun.add(next); listPelayananRemun.add(next);
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
@ -1221,6 +1236,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
} }
} }
} }
}
} else { } else {
/* /*
* Alokasi untuk bagian ffs * Alokasi untuk bagian ffs
@ -1271,13 +1287,16 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
/* /*
* Dibatasi oleh daftar jenis tindakan tertentu * Dibatasi oleh daftar jenis tindakan tertentu
*/ */
if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA if (!drKsmUmumList.contains(idPegawai) || !idsDokterUmumExclude
.contains(Integer.parseInt(next.get("idProduk").toString()))) {
if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& (idsRegDJPPenunjangPA
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
|| idsRegDJPPenunjangPK || idsRegDJPPenunjangPK.contains(Integer
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { .parseInt(next.get("idDetailJenisProduk").toString())))) {
/* /*
* Pengecualian daftar tindakan penunjang yang * Pengecualian daftar tindakan penunjang
* bebas klaim * yang bebas klaim
*/ */
if (Boolean.parseBoolean(next.get("isJamKerja").toString())) { if (Boolean.parseBoolean(next.get("isJamKerja").toString())) {
listPelayananFfs.add(next); listPelayananFfs.add(next);
@ -1294,6 +1313,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
listPelayananNonJknLuarJamKerja.add(next); listPelayananNonJknLuarJamKerja.add(next);
} }
} }
}
} else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk")) } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk"))
|| (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) || (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& !listDetailJenisProduk.contains( && !listDetailJenisProduk.contains(
@ -1349,13 +1369,16 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
/* /*
* Diluar pembatasan jenis produk * Diluar pembatasan jenis produk
*/ */
if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA if (!drKsmUmumList.contains(idPegawai) || !idsDokterUmumExclude
.contains(Integer.parseInt(next.get("idProduk").toString()))) {
if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
&& (idsRegDJPPenunjangPA
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
|| idsRegDJPPenunjangPK || idsRegDJPPenunjangPK.contains(Integer
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { .parseInt(next.get("idDetailJenisProduk").toString())))) {
/* /*
* Pengecualian daftar tindakan penunjang yang * Pengecualian daftar tindakan penunjang
* bebas klaim * yang bebas klaim
*/ */
if (Boolean.parseBoolean(next.get("isJamKerja").toString())) { if (Boolean.parseBoolean(next.get("isJamKerja").toString())) {
listPelayananFfs.add(next); listPelayananFfs.add(next);
@ -1376,6 +1399,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
} }
} }
} }
}
{ {
/* /*
* Sorting data remun jkn diurutkan * Sorting data remun jkn diurutkan