Update PelayananPasienServiceImpl.java

Penyesuaian logbook dokter di superapp hanya menampilkan tanggal-tanggal capaian remun > Rp0
This commit is contained in:
Salman Manoe 2024-09-02 10:26:32 +07:00
parent 680aa18d2f
commit 24e11b5391

View File

@ -509,36 +509,38 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
.mapToDouble(tail -> Double.parseDouble(tail.get("hargaJasa").toString())
* Double.parseDouble(tail.get("jumlah").toString()))
.sum();
Map<String, Object> capaianTanggal = new HashMap<>();
capaianTanggal.put("tanggal", tanggalFormatter.format(date));
capaianTanggal.put("capaian", nf.format(jumlahHargaJasa));
{
List<Map<String, Object>> deskripsi = new ArrayList<>();
data.forEach(d -> {
Map<String, Object> detailDeskripsi = new HashMap<>();
List<Map<String, Object>> detailData = (List<Map<String, Object>>) d.get("detail");
detailData.stream().filter(tail -> tail.get("tanggal").toString().equals(tanggal)).findFirst()
.ifPresent(tail -> {
detailDeskripsi.put("layanan", d.get("namaProduk").toString());
if (CommonUtil.isNotNullOrEmpty(d.get("persenJasa"))) {
detailDeskripsi.put("tarifJasa",
nf.format(Double.parseDouble(d.get("hargaJual").toString())) + "/"
+ d.get("persenJasa").toString());
} else {
detailDeskripsi.put("tarifJasa",
nf.format(Double.parseDouble(d.get("hargaJual").toString())));
}
detailDeskripsi.put("remun",
nf.format(Double.parseDouble(d.get("hargaJasa").toString())));
detailDeskripsi.put("jumlah", tail.get("jumlah").toString());
detailDeskripsi.put("keterangan", d.get("keterangan").toString());
});
if (CommonUtil.isNotNullOrEmpty(detailDeskripsi))
deskripsi.add(detailDeskripsi);
});
capaianTanggal.put("deskripsi", deskripsi);
if (jumlahHargaJasa > 0.0) {
Map<String, Object> capaianTanggal = new HashMap<>();
capaianTanggal.put("tanggal", tanggalFormatter.format(date));
capaianTanggal.put("capaian", nf.format(jumlahHargaJasa));
{
List<Map<String, Object>> deskripsi = new ArrayList<>();
data.forEach(d -> {
Map<String, Object> detailDeskripsi = new HashMap<>();
List<Map<String, Object>> detailData = (List<Map<String, Object>>) d.get("detail");
detailData.stream().filter(tail -> tail.get("tanggal").toString().equals(tanggal)).findFirst()
.ifPresent(tail -> {
detailDeskripsi.put("layanan", d.get("namaProduk").toString());
if (CommonUtil.isNotNullOrEmpty(d.get("persenJasa"))) {
detailDeskripsi.put("tarifJasa",
nf.format(Double.parseDouble(d.get("hargaJual").toString())) + "/"
+ d.get("persenJasa").toString());
} else {
detailDeskripsi.put("tarifJasa",
nf.format(Double.parseDouble(d.get("hargaJual").toString())));
}
detailDeskripsi.put("remun",
nf.format(Double.parseDouble(d.get("hargaJasa").toString())));
detailDeskripsi.put("jumlah", tail.get("jumlah").toString());
detailDeskripsi.put("keterangan", d.get("keterangan").toString());
});
if (CommonUtil.isNotNullOrEmpty(detailDeskripsi))
deskripsi.add(detailDeskripsi);
});
capaianTanggal.put("deskripsi", deskripsi);
}
result.add(capaianTanggal);
}
result.add(capaianTanggal);
}
return result;
}
@ -2119,7 +2121,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
: byDetailTarifNonKelas.get().getHargaSatuan()));
}
}
} else if (!Arrays.asList(GRUP_RAWAT_INAP).contains(d.get("idDepartemen"))
} else if (!Arrays.asList(GRUP_RAWAT_INAP).contains(Integer.parseInt(d.get("idDepartemen").toString()))
&& DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) {
Optional<HargaNettoProdukByKelasD> byDetailTarifNonKelas = tarifDetailNonKelas.stream()
.filter(dt -> dt.getProdukId().equals(d.get("idProduk")))
@ -2129,7 +2131,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
CommonUtil.isNotNullOrEmpty(byDetailTarifNonKelas.get().getHargaNetto1())
? byDetailTarifNonKelas.get().getHargaNetto1()
: byDetailTarifNonKelas.get().getHargaSatuan()));
} else if (!Arrays.asList(GRUP_RAWAT_INAP).contains(d.get("idDepartemen"))
} else if (!Arrays.asList(GRUP_RAWAT_INAP).contains(Integer.parseInt(d.get("idDepartemen").toString()))
&& ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) {
Optional<HargaNettoProdukByKelasD> byDetailTarifNonKelas = tarifDetailNonKelas.stream()
.filter(dt -> dt.getProdukId().equals(d.get("idProduk")))