Merge branch 'dev/remun/logbook-tarif' into prod/base

This commit is contained in:
Salman Manoe 2024-12-31 11:33:15 +07:00
commit b239c18f9e
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)")
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,"
+ "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<PelayananPasien, Strin
+ "when pp.kelasId = 21 then 7 " + "else 8 end," + "kls.namaKelas," + "ppp.noRec,"
+ "ppp.ObjectJenisPetugasPeId,ppp.ObjectPegawaiId,"
+ "pp.noRec,coalesce(pp.hargaJual,0),coalesce(pp.jumlah,0)," + "coalesce(pp.isPaket,false),"
+ "coalesce(pp.persenDiskonPegawai,0.0),"
+ "pp.tglPelayanan,to_char(pp.tglPelayanan,'yyyy-MM-dd')," + "pp.sayatanId,sy.urutan,"
+ "coalesce(sy.persen,0),coalesce(sy.nama,'')," + "apd.noRec,apd.pegawaiId," + "apd.ruanganId,"
+ "case when ru.kelompokRuangan = 'EKSEKUTIF' then 'Eksekutif' else 'Reguler' end,"
+ "coalesce(pp.persenDiskonPegawai,0.0)," + "pp.tglPelayanan,to_char(pp.tglPelayanan,'yyyy-MM-dd'),"
+ "pp.sayatanId,sy.urutan," + "coalesce(sy.persen,0),coalesce(sy.nama,'')," + "apd.noRec,apd.pegawaiId,"
+ "apd.ruanganId," + "case when ru.kelompokRuangan = 'EKSEKUTIF' then 'Eksekutif' else 'Reguler' end,"
+ "ru.departemenId," + "pd.noRec ";
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);
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<Integer> idsRegDJPPenunjangPK = splitDataSettingDatafixed("penunjang_pk");
List<Integer> idsRegDJPPenunjangRad = splitDataSettingDatafixed("penunjang_radiologi");
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> idsPenunjangBukanAnestesi = splitDataSettingDatafixed("pr_penunjang_nonanestesi");
List<Integer> 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);
}
}
}
}

View File

@ -415,4 +415,7 @@ public class Produk extends BaseMasterProduk {
@Column(name = "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")
@Column(name = "Status", nullable = true)
private String status;
@Caption(value = "KPTL")
private String kptl;
}