2021-01-07 11:34:56 +07:00

52 lines
3.0 KiB
Java

package com.jasamedika.medifirst2000.dao;
import java.util.List;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
import com.jasamedika.medifirst2000.entities.Generik;
@Repository("ObatGenerikDao")
public interface ObatGenerikDao extends PagingAndSortingRepository<Generik, String> {
@Query("select to_char(a.tglResep,'yyyy-MM-dd'), a.noResep, b.jumlah, b.hargaSatuan, b.produkId,c.noRegistrasi, d.noCm,d.namaPasien,d.tglLahir,d.jenisKelamin.jenisKelamin, a.ruanganTujuan.namaRuangan, c.tglRegistrasi, f.name from StrukResep a, PelayananPasien b, PasienDaftar c, Pasien d, MapGenerikToProduk e, Generik f where a.tglResep between date(:startDate) and date(:endDate) and a.strukOrderId = b.strukOrderId and a.pasien.pasienDaftar.noRec = c.noRec and c.pasienId = d.id and b.produkId = e.produkId and e.generikId = f.id")
List<Object[]> findListObatGenerik(@Param("startDate") String startDate,@Param("endDate") String endDate);
@Query("select to_char(strukResep.tglResep,'yyyy-MM-dd'), strukResep.noResep,ruangan.namaRuangan, "+
"pelayananPasien.jumlah,produk.namaProduk,produk.kdProduk, "+
"pasienDaftar.noRegistrasi, pasienDaftar.tglRegistrasi, "+
"pasien.namaPasien, pasien.noCm, jenisKelamin.jenisKelamin,pasien.tglLahir "+
"from PelayananPasien pelayananPasien "+
"left join pelayananPasien.strukResep strukResep "+
"left join strukResep.ruanganTujuan ruangan "+
"left join pelayananPasien.pasienDaftar antrian "+
"left join antrian.pasienDaftar pasienDaftar "+
"left join pasienDaftar.pasien pasien "+
"left join pelayananPasien.produk produk "+
"left join pelayananPasien.strukOrder strukOrder "+
"left join pasien.jenisKelamin jenisKelamin "+
"where produk.isNarkotika=true and strukResep.tglResep between date(:startDate) and date(:endDate)")
List<Object[]> findListObatNarkotika(@Param("startDate") String startDate,@Param("endDate") String endDate);
@Query("select to_char(strukResep.tglResep,'yyyy-MM-dd'), strukResep.noResep,ruangan.namaRuangan, "+
"pelayananPasien.jumlah,produk.namaProduk,produk.kdProduk, "+
"pasienDaftar.noRegistrasi, pasienDaftar.tglRegistrasi, "+
"pasien.namaPasien, pasien.noCm, jenisKelamin.jenisKelamin,pasien.tglLahir "+
"from PelayananPasien pelayananPasien "+
"left join pelayananPasien.strukResep strukResep "+
"left join strukResep.ruanganTujuan ruangan "+
"left join pelayananPasien.pasienDaftar antrian "+
"left join antrian.pasienDaftar pasienDaftar "+
"left join pasienDaftar.pasien pasien "+
"left join pelayananPasien.produk produk "+
"left join pelayananPasien.strukOrder strukOrder "+
"left join pasien.jenisKelamin jenisKelamin "+
"where produk.isPsikotropika=true and strukResep.tglResep between date(:startDate) and date(:endDate)")
List<Object[]> findListObatPsikotropika(@Param("startDate") String startDate,@Param("endDate") String endDate);
}