Merge branch 'dev/remun/logbook-tarif' into prod/no-cron

This commit is contained in:
Salman Manoe 2024-12-31 11:33:02 +07:00
commit 8e99f3913c
4 changed files with 142 additions and 112 deletions

View File

@ -184,7 +184,8 @@ public interface PelayananPasienDao extends JpaRepository<PelayananPasien, Strin
@Query("select pp from PelayananPasien pp where pp.noRec in (:listNoRec)") @Query("select pp from PelayananPasien pp where pp.noRec in (:listNoRec)")
List<PelayananPasien> findAll(@Param("listNoRec") List<String> listNoRec); List<PelayananPasien> findAll(@Param("listNoRec") List<String> 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," + "pr.detailJenisProdukId as idDetailJenisProduk,pr.golonganProdukId as idGolonganProduk,"
+ "djp.jenisProdukId as idJenisProduk," + "pd.voucherPaketId as idVoucherDaftar," + "djp.jenisProdukId as idJenisProduk," + "pd.voucherPaketId as idVoucherDaftar,"
+ "pd.kelompokPasienId as idKelompokPasien," + "case when pd.kelompokPasienId = 2 then 1 " + "pd.kelompokPasienId as idKelompokPasien," + "case when pd.kelompokPasienId = 2 then 1 "
@ -256,10 +257,9 @@ public interface PelayananPasienDao extends JpaRepository<PelayananPasien, Strin
+ "when pp.kelasId = 21 then 7 " + "else 8 end," + "kls.namaKelas," + "ppp.noRec," + "when pp.kelasId = 21 then 7 " + "else 8 end," + "kls.namaKelas," + "ppp.noRec,"
+ "ppp.ObjectJenisPetugasPeId,ppp.ObjectPegawaiId," + "ppp.ObjectJenisPetugasPeId,ppp.ObjectPegawaiId,"
+ "pp.noRec,coalesce(pp.hargaJual,0),coalesce(pp.jumlah,0)," + "coalesce(pp.isPaket,false)," + "pp.noRec,coalesce(pp.hargaJual,0),coalesce(pp.jumlah,0)," + "coalesce(pp.isPaket,false),"
+ "coalesce(pp.persenDiskonPegawai,0.0)," + "coalesce(pp.persenDiskonPegawai,0.0)," + "pp.tglPelayanan,to_char(pp.tglPelayanan,'yyyy-MM-dd'),"
+ "pp.tglPelayanan,to_char(pp.tglPelayanan,'yyyy-MM-dd')," + "pp.sayatanId,sy.urutan," + "pp.sayatanId,sy.urutan," + "coalesce(sy.persen,0),coalesce(sy.nama,'')," + "apd.noRec,apd.pegawaiId,"
+ "coalesce(sy.persen,0),coalesce(sy.nama,'')," + "apd.noRec,apd.pegawaiId," + "apd.ruanganId," + "apd.ruanganId," + "case when ru.kelompokRuangan = 'EKSEKUTIF' then 'Eksekutif' else 'Reguler' end,"
+ "case when ru.kelompokRuangan = 'EKSEKUTIF' then 'Eksekutif' else 'Reguler' end,"
+ "ru.departemenId," + "pd.noRec "; + "ru.departemenId," + "pd.noRec ";
String ORDER_LOGBOOK_DOKTER = "order by case when pd.kelompokPasienId = 2 then 1 " String ORDER_LOGBOOK_DOKTER = "order by case when pd.kelompokPasienId = 2 then 1 "

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,22 +1021,26 @@ 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("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idProduk").toString()))) {
|| idsRegDJPPenunjangPK if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { && (idsRegDJPPenunjangPA
/* .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
* Pengecualian daftar tindakan penunjang yang || idsRegDJPPenunjangPK.contains(Integer
* bebas klaim .parseInt(next.get("idDetailJenisProduk").toString())))) {
*/ /*
listPelayananRemun.add(next); * Pengecualian daftar tindakan penunjang
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); * yang bebas klaim
} else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) */
|| (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) listPelayananRemun.add(next);
&& !Arrays.asList(NONLOGBOOK).contains( capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
Integer.parseInt(next.get("idJenisProduk").toString())))) { } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk"))
listPelayananRemun.add(next); || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); && !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")) } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk"))
|| (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) || (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
@ -1081,22 +1085,26 @@ 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("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idProduk").toString()))) {
|| idsRegDJPPenunjangPK if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { && (idsRegDJPPenunjangPA
/* .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
* Pengecualian daftar tindakan penunjang yang || idsRegDJPPenunjangPK.contains(Integer
* bebas klaim .parseInt(next.get("idDetailJenisProduk").toString())))) {
*/ /*
listPelayananRemun.add(next); * Pengecualian daftar tindakan penunjang
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); * yang bebas klaim
} else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) */
|| (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) listPelayananRemun.add(next);
&& !Arrays.asList(NONLOGBOOK).contains( capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
Integer.parseInt(next.get("idJenisProduk").toString())))) { } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk"))
listPelayananRemun.add(next); || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); && !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 * Dibatasi oleh daftar jenis tindakan tertentu
*/ */
if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA if (!drKsmUmumList.contains(idPegawai) || !idsDokterUmumExclude
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idProduk").toString()))) {
|| idsRegDJPPenunjangPK if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { && (idsRegDJPPenunjangPA
/* .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
* Pengecualian daftar tindakan penunjang yang || idsRegDJPPenunjangPK.contains(Integer
* bebas klaim .parseInt(next.get("idDetailJenisProduk").toString())))) {
*/ /*
listPelayananRemun.add(next); * Pengecualian daftar tindakan penunjang
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); * yang bebas klaim
} else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) */
|| (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) listPelayananRemun.add(next);
&& !Arrays.asList(NONLOGBOOK).contains( capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
Integer.parseInt(next.get("idJenisProduk").toString())))) { } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk"))
listPelayananRemun.add(next); || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); && !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")) } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk"))
|| (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) || (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
@ -1202,22 +1214,26 @@ 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("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idProduk").toString()))) {
|| idsRegDJPPenunjangPK if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { && (idsRegDJPPenunjangPA
/* .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
* Pengecualian daftar tindakan penunjang yang || idsRegDJPPenunjangPK.contains(Integer
* bebas klaim .parseInt(next.get("idDetailJenisProduk").toString())))) {
*/ /*
listPelayananRemun.add(next); * Pengecualian daftar tindakan penunjang
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); * yang bebas klaim
} else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) */
|| (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) listPelayananRemun.add(next);
&& !Arrays.asList(NONLOGBOOK).contains( capaianRemun += Double.parseDouble(next.get("hargaJasa").toString());
Integer.parseInt(next.get("idJenisProduk").toString())))) { } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk"))
listPelayananRemun.add(next); || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
capaianRemun += Double.parseDouble(next.get("hargaJasa").toString()); && !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 * Dibatasi oleh daftar jenis tindakan tertentu
*/ */
if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk")) && (idsRegDJPPenunjangPA if (!drKsmUmumList.contains(idPegawai) || !idsDokterUmumExclude
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idProduk").toString()))) {
|| idsRegDJPPenunjangPK if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { && (idsRegDJPPenunjangPA
/* .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
* Pengecualian daftar tindakan penunjang yang || idsRegDJPPenunjangPK.contains(Integer
* bebas klaim .parseInt(next.get("idDetailJenisProduk").toString())))) {
*/ /*
if (Boolean.parseBoolean(next.get("isJamKerja").toString())) { * Pengecualian daftar tindakan penunjang
listPelayananFfs.add(next); * yang bebas klaim
} else { */
listPelayananNonJknLuarJamKerja.add(next); if (Boolean.parseBoolean(next.get("isJamKerja").toString())) {
} listPelayananFfs.add(next);
} else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) } else {
|| (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) listPelayananNonJknLuarJamKerja.add(next);
&& !Arrays.asList(NONLOGBOOK).contains( }
Integer.parseInt(next.get("idJenisProduk").toString())))) { } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk"))
if (Boolean.parseBoolean(next.get("isJamKerja").toString())) { || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
listPelayananFfs.add(next); && !Arrays.asList(NONLOGBOOK).contains(
} else { Integer.parseInt(next.get("idJenisProduk").toString())))) {
listPelayananNonJknLuarJamKerja.add(next); if (Boolean.parseBoolean(next.get("isJamKerja").toString())) {
listPelayananFfs.add(next);
} else {
listPelayananNonJknLuarJamKerja.add(next);
}
} }
} }
} else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk")) } else if ((CommonUtil.isNullOrEmpty(next.get("idDetailJenisProduk"))
@ -1349,27 +1369,31 @@ 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("idDetailJenisProduk").toString())) .contains(Integer.parseInt(next.get("idProduk").toString()))) {
|| idsRegDJPPenunjangPK if (CommonUtil.isNotNullOrEmpty(next.get("idDetailJenisProduk"))
.contains(Integer.parseInt(next.get("idDetailJenisProduk").toString())))) { && (idsRegDJPPenunjangPA
/* .contains(Integer.parseInt(next.get("idDetailJenisProduk").toString()))
* Pengecualian daftar tindakan penunjang yang || idsRegDJPPenunjangPK.contains(Integer
* bebas klaim .parseInt(next.get("idDetailJenisProduk").toString())))) {
*/ /*
if (Boolean.parseBoolean(next.get("isJamKerja").toString())) { * Pengecualian daftar tindakan penunjang
listPelayananFfs.add(next); * yang bebas klaim
} else { */
listPelayananNonJknLuarJamKerja.add(next); if (Boolean.parseBoolean(next.get("isJamKerja").toString())) {
} listPelayananFfs.add(next);
} else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk")) } else {
|| (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk")) listPelayananNonJknLuarJamKerja.add(next);
&& !Arrays.asList(NONLOGBOOK).contains( }
Integer.parseInt(next.get("idJenisProduk").toString())))) { } else if (CommonUtil.isNullOrEmpty(next.get("idJenisProduk"))
if (Boolean.parseBoolean(next.get("isJamKerja").toString())) { || (CommonUtil.isNotNullOrEmpty(next.get("idJenisProduk"))
listPelayananFfs.add(next); && !Arrays.asList(NONLOGBOOK).contains(
} else { Integer.parseInt(next.get("idJenisProduk").toString())))) {
listPelayananNonJknLuarJamKerja.add(next); if (Boolean.parseBoolean(next.get("isJamKerja").toString())) {
listPelayananFfs.add(next);
} else {
listPelayananNonJknLuarJamKerja.add(next);
}
} }
} }
} }

View File

@ -415,4 +415,7 @@ public class Produk extends BaseMasterProduk {
@Column(name = "ispsikotropika") @Column(name = "ispsikotropika")
private Boolean isPsikotropika; private Boolean isPsikotropika;
@Column(name = "kode_kptl")
private String kptl;
} }

View File

@ -246,4 +246,7 @@ public class ProdukVO extends BaseMasterVO {
@Caption(value = "Status") @Caption(value = "Status")
@Column(name = "Status", nullable = true) @Column(name = "Status", nullable = true)
private String status; private String status;
@Caption(value = "KPTL")
private String kptl;
} }