From 915c24ed46e0f7c5b21bd69d2c1b9357f5335072 Mon Sep 17 00:00:00 2001 From: Salman Manoe Date: Fri, 25 Aug 2023 15:56:49 +0700 Subject: [PATCH] Update PelayananPasienServiceImpl.java Perbaikan simpan pelayanan pasien yang tidak diedit jumlah pelayanannya --- .../impl/PelayananPasienServiceImpl.java | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java index 12f35457..862d6d9b 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java @@ -2278,18 +2278,20 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel }); } { - pelayananChecked.forEach(p -> { - Optional dtoChecked = dtoList.stream() - .filter(d -> d.getNoRec().equals(p.getNoRec())) - .filter(d -> d.getJumlah().equals(p.getJumlah())).findFirst(); - dtoChecked.ifPresent(d -> { - p.setHargaDiscount(d.getHargaDiskon()); - p.setJasa(d.getHargaJasa()); - p.setIsPaket(d.getIsPaket()); + List pelayanan = new ArrayList<>(); + dtoList.forEach(dto -> { + Optional pelayananFixedQty = pelayananChecked.stream() + .filter(p -> p.getNoRec().equals(dto.getNoRec())) + .filter(p -> p.getJumlah().equals(dto.getJumlah())).findFirst(); + pelayananFixedQty.ifPresent(p -> { + p.setHargaDiscount(dto.getHargaDiskon()); + p.setJasa(dto.getHargaJasa()); + p.setIsPaket(dto.getIsPaket()); p.setVoucherPaket(voucher); + pelayanan.add(p); }); }); - pelayananPasienDao.save(pelayananChecked); + pelayananPasienDao.save(pelayanan); } { List pelayanan = new ArrayList<>(); @@ -2319,8 +2321,8 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel } pelayanan.add(origin.get()); } - Optional duplicate = splitPelayanan.stream().filter(cp -> cp.getNoRec() == null) - .findFirst(); + Optional duplicate = splitPelayanan.stream() + .filter(cp -> cp.getNoRec() == null).findFirst(); if (duplicate.isPresent()) { duplicate.get().setJumlah(pelayananReducedQty.get().getJumlah() - dto.getJumlah()); duplicate.get().setIsPaket(false);