From 6c015317fa3c82c81d6946d77801f5c62ba9e1e0 Mon Sep 17 00:00:00 2001 From: Salman Manoe Date: Tue, 31 Dec 2024 09:52:11 +0700 Subject: [PATCH 1/2] Update service remunerasi Penyesuaian tampilan KPTL pada penamaan nama produk di logbook dokter --- .../medifirst2000/dao/PelayananPasienDao.java | 10 +++++----- .../com/jasamedika/medifirst2000/entities/Produk.java | 3 +++ .../java/com/jasamedika/medifirst2000/vo/ProdukVO.java | 3 +++ 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PelayananPasienDao.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PelayananPasienDao.java index 751e80ca..1e99a21c 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PelayananPasienDao.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PelayananPasienDao.java @@ -184,7 +184,8 @@ public interface PelayananPasienDao extends JpaRepository findAll(@Param("listNoRec") List listNoRec); - String LOGBOOK_DOKTER = "select new Map(pr.id as idProduk,pr.namaProduk as namaProduk," + String LOGBOOK_DOKTER = "select new Map(pr.id as idProduk," + + "concat(case when pr.kptl is not null then concat(pr.kptl,' - ') else '' end) || pr.namaProduk as namaProduk," + "pr.detailJenisProdukId as idDetailJenisProduk,pr.golonganProdukId as idGolonganProduk," + "djp.jenisProdukId as idJenisProduk," + "pd.voucherPaketId as idVoucherDaftar," + "pd.kelompokPasienId as idKelompokPasien," + "case when pd.kelompokPasienId = 2 then 1 " @@ -256,10 +257,9 @@ public interface PelayananPasienDao extends JpaRepository Date: Tue, 31 Dec 2024 09:52:59 +0700 Subject: [PATCH 2/2] Update service remunerasi Penyesuaian rule baru produk tidak boleh diklaim kk dokter umum --- .../service/impl/RemunerasiServiceImpl.java | 238 ++++++++++-------- 1 file changed, 131 insertions(+), 107 deletions(-) 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 64096b59..f6dc1157 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 @@ -271,7 +271,6 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera date = df.parse(bulan); dateLine = df.parse(GetSettingDataFixed("berlakuTargetJasaRemunDokter")); } catch (ParseException e) { - System.out.println(e.getMessage()); return null; } /* @@ -334,6 +333,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera List idsRegDJPPenunjangPK = splitDataSettingDatafixed("penunjang_pk"); List idsRegDJPPenunjangRad = splitDataSettingDatafixed("penunjang_radiologi"); List idsDokterUmumIGD = splitDataSettingDatafixed("pr_dokter_umum_igd"); + List idsDokterUmumExclude = splitDataSettingDatafixed("pr_dokter_umum_exclude"); List idsDokterPerinatologi = splitDataSettingDatafixed("pr_dokter_perinatologi"); List idsPenunjangBukanAnestesi = splitDataSettingDatafixed("pr_penunjang_nonanestesi"); List idsDokterBPJSffs = splitDataSettingDatafixed("dokterBPJSffs"); @@ -1021,22 +1021,26 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera /* * Dibatasi oleh daftar jenis tindakan tertentu */ - if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA - .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) - || idsRegDJPPenunjangPK - .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { - /* - * Pengecualian daftar tindakan penunjang yang - * bebas klaim - */ - listPelayananRemun.add(next); - capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); - } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) - || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) - && !Arrays.asList(NONLOGBOOK).contains( - Integer.parseInt(next.get("idJenisProduk").toString())))) { - listPelayananRemun.add(next); - capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); + 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())) + || idsRegDJPPenunjangPK.contains(Integer + .parseInt(next.get("idDetailJenisProduk").toString())))) { + /* + * Pengecualian daftar tindakan penunjang + * yang bebas klaim + */ + listPelayananRemun.add(next); + capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); + } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) + || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) + && !Arrays.asList(NONLOGBOOK).contains( + Integer.parseInt(next.get("idJenisProduk").toString())))) { + listPelayananRemun.add(next); + capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); + } } } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk")) || (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) @@ -1081,22 +1085,26 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera /* * Diluar pembatasan jenis produk */ - if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA - .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) - || idsRegDJPPenunjangPK - .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { - /* - * Pengecualian daftar tindakan penunjang yang - * bebas klaim - */ - listPelayananRemun.add(next); - capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); - } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) - || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) - && !Arrays.asList(NONLOGBOOK).contains( - Integer.parseInt(next.get("idJenisProduk").toString())))) { - listPelayananRemun.add(next); - capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); + 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())) + || idsRegDJPPenunjangPK.contains(Integer + .parseInt(next.get("idDetailJenisProduk").toString())))) { + /* + * Pengecualian daftar tindakan penunjang + * yang bebas klaim + */ + listPelayananRemun.add(next); + capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); + } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) + || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) + && !Arrays.asList(NONLOGBOOK).contains( + Integer.parseInt(next.get("idJenisProduk").toString())))) { + listPelayananRemun.add(next); + capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); + } } } } @@ -1142,22 +1150,26 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera /* * Dibatasi oleh daftar jenis tindakan tertentu */ - if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA - .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) - || idsRegDJPPenunjangPK - .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { - /* - * Pengecualian daftar tindakan penunjang yang - * bebas klaim - */ - listPelayananRemun.add(next); - capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); - } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) - || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) - && !Arrays.asList(NONLOGBOOK).contains( - Integer.parseInt(next.get("idJenisProduk").toString())))) { - listPelayananRemun.add(next); - capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); + 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())) + || idsRegDJPPenunjangPK.contains(Integer + .parseInt(next.get("idDetailJenisProduk").toString())))) { + /* + * Pengecualian daftar tindakan penunjang + * yang bebas klaim + */ + listPelayananRemun.add(next); + capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); + } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) + || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) + && !Arrays.asList(NONLOGBOOK).contains( + Integer.parseInt(next.get("idJenisProduk").toString())))) { + listPelayananRemun.add(next); + capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); + } } } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk")) || (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) @@ -1202,22 +1214,26 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera /* * Diluar pembatasan jenis produk */ - if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA - .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) - || idsRegDJPPenunjangPK - .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { - /* - * Pengecualian daftar tindakan penunjang yang - * bebas klaim - */ - listPelayananRemun.add(next); - capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); - } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) - || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) - && !Arrays.asList(NONLOGBOOK).contains( - Integer.parseInt(next.get("idJenisProduk").toString())))) { - listPelayananRemun.add(next); - capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); + 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())) + || idsRegDJPPenunjangPK.contains(Integer + .parseInt(next.get("idDetailJenisProduk").toString())))) { + /* + * Pengecualian daftar tindakan penunjang + * yang bebas klaim + */ + listPelayananRemun.add(next); + capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); + } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) + || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) + && !Arrays.asList(NONLOGBOOK).contains( + Integer.parseInt(next.get("idJenisProduk").toString())))) { + listPelayananRemun.add(next); + capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); + } } } } @@ -1271,27 +1287,31 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera /* * Dibatasi oleh daftar jenis tindakan tertentu */ - if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA - .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) - || idsRegDJPPenunjangPK - .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { - /* - * Pengecualian daftar tindakan penunjang yang - * bebas klaim - */ - if (Boolean.parseBoolean(next.get("isJamKerja").toString())) { - listPelayananFfs.add(next); - } else { - listPelayananNonJknLuarJamKerja.add(next); - } - } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) - || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) - && !Arrays.asList(NONLOGBOOK).contains( - Integer.parseInt(next.get("idJenisProduk").toString())))) { - if (Boolean.parseBoolean(next.get("isJamKerja").toString())) { - listPelayananFfs.add(next); - } else { - listPelayananNonJknLuarJamKerja.add(next); + 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())) + || idsRegDJPPenunjangPK.contains(Integer + .parseInt(next.get("idDetailJenisProduk").toString())))) { + /* + * Pengecualian daftar tindakan penunjang + * yang bebas klaim + */ + if (Boolean.parseBoolean(next.get("isJamKerja").toString())) { + listPelayananFfs.add(next); + } else { + listPelayananNonJknLuarJamKerja.add(next); + } + } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) + || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) + && !Arrays.asList(NONLOGBOOK).contains( + Integer.parseInt(next.get("idJenisProduk").toString())))) { + if (Boolean.parseBoolean(next.get("isJamKerja").toString())) { + listPelayananFfs.add(next); + } else { + listPelayananNonJknLuarJamKerja.add(next); + } } } } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk")) @@ -1349,27 +1369,31 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera /* * Diluar pembatasan jenis produk */ - if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA - .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) - || idsRegDJPPenunjangPK - .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { - /* - * Pengecualian daftar tindakan penunjang yang - * bebas klaim - */ - if (Boolean.parseBoolean(next.get("isJamKerja").toString())) { - listPelayananFfs.add(next); - } else { - listPelayananNonJknLuarJamKerja.add(next); - } - } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) - || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) - && !Arrays.asList(NONLOGBOOK).contains( - Integer.parseInt(next.get("idJenisProduk").toString())))) { - if (Boolean.parseBoolean(next.get("isJamKerja").toString())) { - listPelayananFfs.add(next); - } else { - listPelayananNonJknLuarJamKerja.add(next); + 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())) + || idsRegDJPPenunjangPK.contains(Integer + .parseInt(next.get("idDetailJenisProduk").toString())))) { + /* + * Pengecualian daftar tindakan penunjang + * yang bebas klaim + */ + if (Boolean.parseBoolean(next.get("isJamKerja").toString())) { + listPelayananFfs.add(next); + } else { + listPelayananNonJknLuarJamKerja.add(next); + } + } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) + || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) + && !Arrays.asList(NONLOGBOOK).contains( + Integer.parseInt(next.get("idJenisProduk").toString())))) { + if (Boolean.parseBoolean(next.get("isJamKerja").toString())) { + listPelayananFfs.add(next); + } else { + listPelayananNonJknLuarJamKerja.add(next); + } } } }