diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/IkiDanRemunerasiDao.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/IkiDanRemunerasiDao.java index 9a469b20..20271352 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/IkiDanRemunerasiDao.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/IkiDanRemunerasiDao.java @@ -120,7 +120,7 @@ public interface IkiDanRemunerasiDao extends PagingAndSortingRepository :asuransiLainId and pd.rekananId <> :jaminanKemenkesId))) " + + "and sk.id not in (:listNonjadwalId)) and (pd.kelompokPasienId not in (:listBpjsId) and ((pd.kelompokPasienId = :asuransiLainId and pd.rekananId is null) or (pd.kelompokPasienId <> :asuransiLainId and pd.rekananId <> :jaminanKemenkesId)))) " + "or (pd.kelompokPasienId in (:listBpjsId) or (pd.kelompokPasienId = :asuransiLainId and pd.rekananId = :jaminanKemenkesId))) " + "and pg.jenisPegawaiId = :jenisPegawaiId " + "and djp.jenisProdukId not in (:listNontindakanId) " + "and pr.id <> :karcisId " + "order by su.name, pr.id") @@ -156,7 +156,7 @@ public interface IkiDanRemunerasiDao extends PagingAndSortingRepository :asuransiLainId and pd.rekananId <> :jaminanKemenkesId))) " + + "and (pd.kelompokPasienId not in (:listBpjsId) and ((pd.kelompokPasienId = :asuransiLainId and pd.rekananId is null) or (pd.kelompokPasienId <> :asuransiLainId and pd.rekananId <> :jaminanKemenkesId)))) " + "and pg.jenisPegawaiId = :jenisPegawaiId " + "and jb.kelompokJabatanId in (3,4) " + "and djp.jenisProdukId not in (:listNontindakanId) " + "and pr.id <> :karcisId " + "order by pg.namaLengkap, pr.id") @@ -186,7 +186,7 @@ public interface IkiDanRemunerasiDao extends PagingAndSortingRepository :asuransiLainId and pd.rekananId <> :jaminanKemenkesId))) " + + "and sk.id not in (:listNonjadwalId)) and (pd.kelompokPasienId not in (:listBpjsId) and ((pd.kelompokPasienId = :asuransiLainId and pd.rekananId is null) or (pd.kelompokPasienId <> :asuransiLainId and pd.rekananId <> :jaminanKemenkesId)))) " + "or (pd.kelompokPasienId in (:listBpjsId) or (pd.kelompokPasienId = :asuransiLainId and pd.rekananId = :jaminanKemenkesId))) " + "and pg.jenisPegawaiId = :jenisPegawaiId " + "and djp.jenisProdukId not in (:listNontindakanId) " + "and pr.id <> :karcisId " + "and pg.id in (:listPegawaiId) "; @@ -241,7 +241,7 @@ public interface IkiDanRemunerasiDao extends PagingAndSortingRepository :asuransiLainId and pd.rekananId <> :jaminanKemenkesId))) " + + "and (pd.kelompokPasienId not in (:listBpjsId) and ((pd.kelompokPasienId = :asuransiLainId and pd.rekananId is null) or (pd.kelompokPasienId <> :asuransiLainId and pd.rekananId <> :jaminanKemenkesId)))) " + "and pg.jenisPegawaiId = :jenisPegawaiId " + "and (djp.id in (:listDetailJenisProdukId) " + "or (djp.id not in (:listDetailJenisProdukId) " + "and pr.id in (:listProdukIgdId) " + "and pg.id in (:listDokterUmumId) " + "and ru.departemenId = :IgdId)) " @@ -279,7 +279,7 @@ public interface IkiDanRemunerasiDao extends PagingAndSortingRepository :asuransiLainId and pd.rekananId <> :jaminanKemenkesId))) " + + "and sk.id not in (:listNonjadwalId)) and (pd.kelompokPasienId not in (:listBpjsId) and ((pd.kelompokPasienId = :asuransiLainId and pd.rekananId is null) or (pd.kelompokPasienId <> :asuransiLainId and pd.rekananId <> :jaminanKemenkesId)))) " + "or (pd.kelompokPasienId in (:listBpjsId) or (pd.kelompokPasienId = :asuransiLainId and pd.rekananId = :jaminanKemenkesId))) " + "and pg.jenisPegawaiId = :jenisPegawaiId " + "and (djp.id in (:listDetailJenisProdukId) " + "or (djp.id not in (:listDetailJenisProdukId) " + "and pr.id in (:listProdukIgdId) " @@ -322,7 +322,7 @@ public interface IkiDanRemunerasiDao extends PagingAndSortingRepository :asuransiLainId and pd.rekananId <> :jaminanKemenkesId))) " + + "and (pd.kelompokPasienId not in (:listBpjsId) and ((pd.kelompokPasienId = :asuransiLainId and pd.rekananId is null) or (pd.kelompokPasienId <> :asuransiLainId and pd.rekananId <> :jaminanKemenkesId)))) " + "and pg.jenisPegawaiId = :jenisPegawaiId " + "and (djp.id in (:listDetailJenisProdukId) " + "or (djp.id not in (:listDetailJenisProdukId) " + "and pr.id in (:listProdukIgdId) " + "and pg.id in (:listDokterUmumId) " + "and ru.departemenId = :IgdId)) " diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PendapatanDao.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PendapatanDao.java index 29aa61f9..9c4b11b5 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PendapatanDao.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PendapatanDao.java @@ -170,8 +170,9 @@ public interface PendapatanDao extends PagingAndSortingRepository 0 && (CommonUtil.isNullOrEmpty(statusDiskon) @@ -1813,6 +1861,14 @@ public class PendapatanServiceImpl extends BaseVoServiceImpl implements Pendapat } else { if (!Master.KelompokPasien.BPJS .equals(Integer.parseInt(map.get("kelompokPasienId").toString())) + && ((CommonUtil.isNullOrEmpty(map.get("rekananId")) + && Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString()))) + || (!Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString())) + && CommonUtil.isNotNullOrEmpty(map.get("rekananId")) + && !Master.Rekanan.JAMINAN_KEMENKES.equals( + Integer.parseInt(map.get("rekananId").toString())))) && (dateTimePelayanan.isBefore(dateMasuk) || dateTimePelayanan.isEqual(datePulang) || dateTimePelayanan.isAfter(datePulang))) { @@ -1867,7 +1923,15 @@ public class PendapatanServiceImpl extends BaseVoServiceImpl implements Pendapat } } else { if (!Master.KelompokPasien.BPJS - .equals(Integer.parseInt(map.get("kelompokPasienId").toString()))) { + .equals(Integer.parseInt(map.get("kelompokPasienId").toString())) + && ((CommonUtil.isNullOrEmpty(map.get("rekananId")) + && Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString()))) + || (!Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString())) + && CommonUtil.isNotNullOrEmpty(map.get("rekananId")) + && !Master.Rekanan.JAMINAN_KEMENKES.equals( + Integer.parseInt(map.get("rekananId").toString()))))) { if (map.get("departemenId").equals(Master.Departemen.RAWAT_JALAN) && map.get("namaShift").toString().equals("Non Shift") && CommonUtil.isNotNullOrEmpty(jamPulangPSBB) @@ -1951,7 +2015,15 @@ public class PendapatanServiceImpl extends BaseVoServiceImpl implements Pendapat } } else if (CommonUtil.isNullOrEmpty(map.get("jamMasuk"))) { if (!Master.KelompokPasien.BPJS - .equals(Integer.parseInt(map.get("kelompokPasienId").toString()))) { + .equals(Integer.parseInt(map.get("kelompokPasienId").toString())) + && ((CommonUtil.isNullOrEmpty(map.get("rekananId")) + && Master.KelompokPasien.ASURANSI_LAIN + .equals(Integer.parseInt(map.get("kelompokPasienId").toString()))) + || (!Master.KelompokPasien.ASURANSI_LAIN + .equals(Integer.parseInt(map.get("kelompokPasienId").toString())) + && CommonUtil.isNotNullOrEmpty(map.get("rekananId")) + && !Master.Rekanan.JAMINAN_KEMENKES.equals( + Integer.parseInt(map.get("rekananId").toString()))))) { if (Arrays.asList(Master.Departemen.GRUP_RAWAT_JALAN) .contains(Integer.parseInt(map.get("departemenId").toString()))) { if (diskon > 0 @@ -2103,7 +2175,15 @@ public class PendapatanServiceImpl extends BaseVoServiceImpl implements Pendapat || dateTimePelayanan.getDayOfWeek().equals(DayOfWeek.SUNDAY)) { if (map.get("namaShift").toString().contains("Pagi Sore Malam")) { if (!Master.KelompokPasien.BPJS - .equals(Integer.parseInt(map.get("kelompokPasienId").toString()))) { + .equals(Integer.parseInt(map.get("kelompokPasienId").toString())) + && ((CommonUtil.isNullOrEmpty(map.get("rekananId")) + && Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString()))) + || (!Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString())) + && CommonUtil.isNotNullOrEmpty(map.get("rekananId")) + && !Master.Rekanan.JAMINAN_KEMENKES.equals(Integer + .parseInt(map.get("rekananId").toString()))))) { if (Arrays.asList(Master.Departemen.GRUP_RAWAT_JALAN) .contains(Integer.parseInt(map.get("departemenId").toString()))) { if (diskon > 0 && (CommonUtil.isNullOrEmpty(statusDiskon) @@ -2153,6 +2233,14 @@ public class PendapatanServiceImpl extends BaseVoServiceImpl implements Pendapat } else { if (!Master.KelompokPasien.BPJS .equals(Integer.parseInt(map.get("kelompokPasienId").toString())) + && ((CommonUtil.isNullOrEmpty(map.get("rekananId")) + && Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString()))) + || (!Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString())) + && CommonUtil.isNotNullOrEmpty(map.get("rekananId")) + && !Master.Rekanan.JAMINAN_KEMENKES.equals( + Integer.parseInt(map.get("rekananId").toString())))) && (dateTimePelayanan.isBefore(dateMasuk) || dateTimePelayanan.isEqual(datePulang) || dateTimePelayanan.isAfter(datePulang))) { @@ -2207,7 +2295,15 @@ public class PendapatanServiceImpl extends BaseVoServiceImpl implements Pendapat } } else { if (!Master.KelompokPasien.BPJS - .equals(Integer.parseInt(map.get("kelompokPasienId").toString()))) { + .equals(Integer.parseInt(map.get("kelompokPasienId").toString())) + && ((CommonUtil.isNullOrEmpty(map.get("rekananId")) + && Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString()))) + || (!Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString())) + && CommonUtil.isNotNullOrEmpty(map.get("rekananId")) + && !Master.Rekanan.JAMINAN_KEMENKES.equals( + Integer.parseInt(map.get("rekananId").toString()))))) { if (map.get("departemenId").equals(Master.Departemen.RAWAT_JALAN) && map.get("namaShift").toString().equals("Non Shift") && CommonUtil.isNotNullOrEmpty(jamPulangPSBB) @@ -2291,7 +2387,15 @@ public class PendapatanServiceImpl extends BaseVoServiceImpl implements Pendapat } } else if (CommonUtil.isNullOrEmpty(map.get("jamMasuk"))) { if (!Master.KelompokPasien.BPJS - .equals(Integer.parseInt(map.get("kelompokPasienId").toString()))) { + .equals(Integer.parseInt(map.get("kelompokPasienId").toString())) + && ((CommonUtil.isNullOrEmpty(map.get("rekananId")) + && Master.KelompokPasien.ASURANSI_LAIN + .equals(Integer.parseInt(map.get("kelompokPasienId").toString()))) + || (!Master.KelompokPasien.ASURANSI_LAIN + .equals(Integer.parseInt(map.get("kelompokPasienId").toString())) + && CommonUtil.isNotNullOrEmpty(map.get("rekananId")) + && !Master.Rekanan.JAMINAN_KEMENKES.equals( + Integer.parseInt(map.get("rekananId").toString()))))) { if (Arrays.asList(Master.Departemen.GRUP_RAWAT_JALAN) .contains(Integer.parseInt(map.get("departemenId").toString()))) { if (diskon > 0 @@ -2442,7 +2546,15 @@ public class PendapatanServiceImpl extends BaseVoServiceImpl implements Pendapat || dateTimePelayanan.getDayOfWeek().equals(DayOfWeek.SUNDAY)) { if (map.get("namaShift").toString().contains("Pagi Sore Malam")) { if (!Master.KelompokPasien.BPJS - .equals(Integer.parseInt(map.get("kelompokPasienId").toString()))) { + .equals(Integer.parseInt(map.get("kelompokPasienId").toString())) + && ((CommonUtil.isNullOrEmpty(map.get("rekananId")) + && Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString()))) + || (!Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString())) + && CommonUtil.isNotNullOrEmpty(map.get("rekananId")) + && !Master.Rekanan.JAMINAN_KEMENKES.equals(Integer + .parseInt(map.get("rekananId").toString()))))) { if (Arrays.asList(Master.Departemen.GRUP_RAWAT_JALAN) .contains(Integer.parseInt(map.get("departemenId").toString()))) { if (diskon > 0 && (CommonUtil.isNullOrEmpty(statusDiskon) @@ -2492,6 +2604,14 @@ public class PendapatanServiceImpl extends BaseVoServiceImpl implements Pendapat } else { if (!Master.KelompokPasien.BPJS .equals(Integer.parseInt(map.get("kelompokPasienId").toString())) + && ((CommonUtil.isNullOrEmpty(map.get("rekananId")) + && Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString()))) + || (!Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString())) + && CommonUtil.isNotNullOrEmpty(map.get("rekananId")) + && !Master.Rekanan.JAMINAN_KEMENKES.equals( + Integer.parseInt(map.get("rekananId").toString())))) && (dateTimePelayanan.isBefore(dateMasuk) || dateTimePelayanan.isEqual(datePulang) || dateTimePelayanan.isAfter(datePulang))) { @@ -2546,7 +2666,15 @@ public class PendapatanServiceImpl extends BaseVoServiceImpl implements Pendapat } } else { if (!Master.KelompokPasien.BPJS - .equals(Integer.parseInt(map.get("kelompokPasienId").toString()))) { + .equals(Integer.parseInt(map.get("kelompokPasienId").toString())) + && ((CommonUtil.isNullOrEmpty(map.get("rekananId")) + && Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString()))) + || (!Master.KelompokPasien.ASURANSI_LAIN.equals( + Integer.parseInt(map.get("kelompokPasienId").toString())) + && CommonUtil.isNotNullOrEmpty(map.get("rekananId")) + && !Master.Rekanan.JAMINAN_KEMENKES.equals( + Integer.parseInt(map.get("rekananId").toString()))))) { if (map.get("departemenId").equals(Master.Departemen.RAWAT_JALAN) && map.get("namaShift").toString().equals("Non Shift") && CommonUtil.isNotNullOrEmpty(jamPulangPSBB) @@ -2630,7 +2758,15 @@ public class PendapatanServiceImpl extends BaseVoServiceImpl implements Pendapat } } else if (CommonUtil.isNullOrEmpty(map.get("jamMasuk"))) { if (!Master.KelompokPasien.BPJS - .equals(Integer.parseInt(map.get("kelompokPasienId").toString()))) { + .equals(Integer.parseInt(map.get("kelompokPasienId").toString())) + && ((CommonUtil.isNullOrEmpty(map.get("rekananId")) + && Master.KelompokPasien.ASURANSI_LAIN + .equals(Integer.parseInt(map.get("kelompokPasienId").toString()))) + || (!Master.KelompokPasien.ASURANSI_LAIN + .equals(Integer.parseInt(map.get("kelompokPasienId").toString())) + && CommonUtil.isNotNullOrEmpty(map.get("rekananId")) + && !Master.Rekanan.JAMINAN_KEMENKES.equals( + Integer.parseInt(map.get("rekananId").toString()))))) { if (Arrays.asList(Master.Departemen.GRUP_RAWAT_JALAN) .contains(Integer.parseInt(map.get("departemenId").toString()))) { if (diskon > 0