From 5b51ef7e56f0dc060791dc7688af33ded5e03e24 Mon Sep 17 00:00:00 2001 From: Salman Manoe Date: Tue, 7 Sep 2021 07:25:26 +0700 Subject: [PATCH] pemisahan produk diskon antara pegawai rsab dan nonpegawai yang disetujui mpp --- .../jasamedika/medifirst2000/dao/PelayananPasienDao.java | 9 ++++++--- .../service/impl/PelayananPasienServiceImpl.java | 3 ++- .../jasamedika/medifirst2000/vo/MonitoringAbsenVO.java | 9 --------- 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PelayananPasienDao.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PelayananPasienDao.java index dfc8f0f9..785b472b 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PelayananPasienDao.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/PelayananPasienDao.java @@ -159,22 +159,25 @@ public interface PelayananPasienDao extends PagingAndSortingRepository= pp.hargaJual then coalesce(pp.hargaDiscount,0) " + "when :jenisDiskon = 1 and ru.id = :ruanganId and coalesce(pp.hargaDiscount,0) < pp.hargaJual then pp.hargaJual " + + "when :jenisDiskon = 1 and pr.id in (:listProdukIdPegawai) and coalesce(pp.hargaDiscount,0) >= pp.hargaJual then coalesce(pp.hargaDiscount,0) " + + "when :jenisDiskon = 1 and pr.id in (:listProdukIdPegawai) and coalesce(pp.hargaDiscount,0) < pp.hargaJual then pp.hargaJual " + "when :jenisDiskon = 1 and lower(pr.namaProduk) like '%konsul%' and ru.departemenId in (:listDepartemenId) and coalesce(pp.hargaDiscount,0) >= pp.hargaJual then coalesce(pp.hargaDiscount,0) " + "when :jenisDiskon = 1 and lower(pr.namaProduk) like '%konsul%' and ru.departemenId in (:listDepartemenId) and coalesce(pp.hargaDiscount,0) < pp.hargaJual then pp.hargaJual " + "when :jenisDiskon = 2 and lower(pr.namaProduk) like '%konsul%' and ru.departemenId in (:listDepartemenId) and coalesce(pp.hargaDiscount,0) >= (pp.hargaJual/2) then coalesce(pp.hargaDiscount,0) " + "when :jenisDiskon = 2 and lower(pr.namaProduk) like '%konsul%' and ru.departemenId in (:listDepartemenId) and coalesce(pp.hargaDiscount,0) < (pp.hargaJual/2) then (pp.hargaJual/2) " + "when :jenisDiskon in (1,2) and pp.strukResepId is not null and coalesce(pp.hargaDiscount,0) >= (pp.hargaJual/10) then coalesce(pp.hargaDiscount,0) " + "when :jenisDiskon in (1,2) and pp.strukResepId is not null and coalesce(pp.hargaDiscount,0) < (pp.hargaJual/10) then (pp.hargaJual/10) " - + "when :jenisDiskon in (1,3,4) and pr.id in (:listProdukId) and coalesce(pp.hargaDiscount,0) >= pp.hargaJual then coalesce(pp.hargaDiscount,0) " - + "when :jenisDiskon in (1,3,4) and pr.id in (:listProdukId) and coalesce(pp.hargaDiscount,0) < pp.hargaJual then pp.hargaJual " + "when :jenisDiskon in (1,2) and coalesce(pp.hargaDiscount,0) >= (pp.hargaJual/2) then coalesce(pp.hargaDiscount,0) " + "when :jenisDiskon in (1,2) and coalesce(pp.hargaDiscount,0) < (pp.hargaJual/2) then (pp.hargaJual/2) " + + "when :jenisDiskon in (3,4) and pr.id in (:listProdukIdPasien) and coalesce(pp.hargaDiscount,0) >= pp.hargaJual then coalesce(pp.hargaDiscount,0) " + + "when :jenisDiskon in (3,4) and pr.id in (:listProdukIdPasien) and coalesce(pp.hargaDiscount,0) < pp.hargaJual then pp.hargaJual " + "else coalesce(pp.hargaDiscount,0) end) as hargaDiskon) " + "from PelayananPasien pp " + "left join pp.pasienDaftar apd " + "left join apd.pasienDaftar pd " + "left join pp.produk pr " + "left join pd.ruangan ru " + "where pp.strukFk is null " + "and pd.noRegistrasi = :noRegistrasi " + "order by pp.produkId") List> findLayananTagihan(@Param("noRegistrasi") String noRegistrasi, @Param("jenisDiskon") Integer jenisDiskon, @Param("listDepartemenId") List listIdDepartemen, - @Param("ruanganId") Integer idRuangan, @Param("listProdukId") List listIdProduk); + @Param("ruanganId") Integer idRuangan, @Param("listProdukIdPegawai") List listIdProdukPegawai, + @Param("listProdukIdPasien") List listIdProdukPasien); } 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 02c665ad..8bb73bf3 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 @@ -259,10 +259,11 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel List result = new ArrayList<>(); List listIdProdukDiskonPegawai = splitDataSettingDatafixed("listProdukDiskonPegawai"); + List listIdProdukDiskonPasien = splitDataSettingDatafixed("listProdukDiskonPasien"); List> data = pelayananPasienDao.findLayananTagihan(noRegistrasi, jenisDiskon, Arrays.asList(Master.Departemen.GRUP_RAWAT_JALAN), Master.Ruangan.KLINIK_KARYAWAN, - listIdProdukDiskonPegawai); + listIdProdukDiskonPegawai, listIdProdukDiskonPasien); List models = new ArrayList<>(); for (Map map : data) { diff --git a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/MonitoringAbsenVO.java b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/MonitoringAbsenVO.java index f20ff4ef..bafc2415 100644 --- a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/MonitoringAbsenVO.java +++ b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/MonitoringAbsenVO.java @@ -1,20 +1,11 @@ package com.jasamedika.medifirst2000.vo; -import java.util.Date; -import java.util.HashSet; -import java.util.Set; - -import javax.persistence.CascadeType; import javax.persistence.Column; -import javax.persistence.FetchType; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; -import javax.persistence.OneToMany; import javax.validation.constraints.NotNull; -import com.fasterxml.jackson.annotation.JsonManagedReference; import com.jasamedika.medifirst2000.base.vo.BaseTransactionVO; -import com.jasamedika.medifirst2000.entities.StrukVerifikasi; import com.jasamedika.medifirst2000.helper.Caption; public class MonitoringAbsenVO extends BaseTransactionVO {