Update PelayananPasienServiceImpl.java
Perbaikan split jumlah pelayanan dan simpan ke database
This commit is contained in:
parent
20b38c760f
commit
691ce8418f
@ -2221,6 +2221,23 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
|||||||
throw new ServiceVOException("Tidak memiliki akses diskon total");
|
throw new ServiceVOException("Tidak memiliki akses diskon total");
|
||||||
}
|
}
|
||||||
if (CommonUtil.isNotNullOrEmpty(kodeVoucher)) {
|
if (CommonUtil.isNotNullOrEmpty(kodeVoucher)) {
|
||||||
|
diskonPaket(kodeVoucher, dtoList);
|
||||||
|
} else {
|
||||||
|
List<String> listNoRec = dtoList.stream().map(TagihanPendaftaranDto::getNoRec).collect(Collectors.toList());
|
||||||
|
List<PelayananPasien> listPelayanan = pelayananPasienDao.findAll(listNoRec);
|
||||||
|
listPelayanan.forEach(p -> {
|
||||||
|
Optional<TagihanPendaftaranDto> dto = dtoList.stream().filter(d -> d.getNoRec().equals(p.getNoRec()))
|
||||||
|
.findFirst();
|
||||||
|
dto.ifPresent(tagihanPendaftaranDto -> {
|
||||||
|
p.setHargaDiscount(tagihanPendaftaranDto.getHargaDiskon());
|
||||||
|
p.setJasa(tagihanPendaftaranDto.getHargaJasa());
|
||||||
|
});
|
||||||
|
});
|
||||||
|
pelayananPasienDao.save(listPelayanan);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void diskonPaket(String kodeVoucher, List<TagihanPendaftaranDto> dtoList) {
|
||||||
VoucherPaket voucher = getVoucher(kodeVoucher, false);
|
VoucherPaket voucher = getVoucher(kodeVoucher, false);
|
||||||
List<String> norecPelayananChecked = dtoList.stream().filter(TagihanPendaftaranDto::getIsPaket)
|
List<String> norecPelayananChecked = dtoList.stream().filter(TagihanPendaftaranDto::getIsPaket)
|
||||||
.map(TagihanPendaftaranDto::getNoRec).collect(Collectors.toList());
|
.map(TagihanPendaftaranDto::getNoRec).collect(Collectors.toList());
|
||||||
@ -2322,7 +2339,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
|||||||
splitDetailPelayanan = copyPelayananDetailSplitQty(detailOrigin);
|
splitDetailPelayanan = copyPelayananDetailSplitQty(detailOrigin);
|
||||||
List<PelayananPasienDetail> originDetail = splitDetailPelayanan.stream()
|
List<PelayananPasienDetail> originDetail = splitDetailPelayanan.stream()
|
||||||
.filter(d -> d.getNoRec() != null).collect(Collectors.toList());
|
.filter(d -> d.getNoRec() != null).collect(Collectors.toList());
|
||||||
detailOrigin.addAll(originDetail);
|
detailPelayanan.addAll(originDetail);
|
||||||
}
|
}
|
||||||
pelayanan.add(origin.get());
|
pelayanan.add(origin.get());
|
||||||
}
|
}
|
||||||
@ -2347,19 +2364,6 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
|||||||
pelayananPasienDetailDao.save(detailPelayanan);
|
pelayananPasienDetailDao.save(detailPelayanan);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
List<String> listNoRec = dtoList.stream().map(TagihanPendaftaranDto::getNoRec).collect(Collectors.toList());
|
|
||||||
List<PelayananPasien> listPelayanan = pelayananPasienDao.findAll(listNoRec);
|
|
||||||
listPelayanan.forEach(p -> {
|
|
||||||
Optional<TagihanPendaftaranDto> dto = dtoList.stream().filter(d -> d.getNoRec().equals(p.getNoRec()))
|
|
||||||
.findFirst();
|
|
||||||
dto.ifPresent(tagihanPendaftaranDto -> {
|
|
||||||
p.setHargaDiscount(tagihanPendaftaranDto.getHargaDiskon());
|
|
||||||
p.setJasa(tagihanPendaftaranDto.getHargaJasa());
|
|
||||||
});
|
|
||||||
});
|
|
||||||
pelayananPasienDao.save(listPelayanan);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user