package com.jasamedika.medifirst2000.dao; import java.util.List; import java.util.Map; 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.StrukClosing; @Repository("StrukClosingDao") public interface StrukClosingDao extends PagingAndSortingRepository { @Query("select new Map (to_char(p.tglClosing ,'dd-MM-yyyy') as tglClosing,r.namaRuangan as namaRuangan) from StrukClosing p left join p.ruangan r " + "where date(p.tglClosing) between date(:tanggalAwal) and date(:tanggalAhir) and r.id=:ruanganId group by to_char(p.tglClosing ,'dd-MM-yyyy'),r.namaRuangan") List> gridStokOpName(@Param("tanggalAwal") String tanggalAwal, @Param("tanggalAhir") String tanggalAhir, @Param("ruanganId") Integer ruanganId); @Query("select new map( stokProdukDetailOpname.qtyProdukReal as qtyProdukReal, " + " stokProdukDetailOpname.qtyProdukSystem as qtyProdukSystem," + " produk.namaProduk as namaProduk, " + " ruangan.namaRuangan as namaRuangan, " + " satuan.satuanStandar as satuan," + " coalesce(asalProduk.asalProduk,'-') as asalProduk) from StokProdukDetailOpname stokProdukDetailOpname " + " left join stokProdukDetailOpname.strukClosing strukClosing" + " left join stokProdukDetailOpname.produk produk " + " left join strukClosing.ruangan ruangan " + " left join stokProdukDetailOpname.asalProduk asalProduk " + " left join produk.detailJenisProduk detailJenisProduk " + " left join produk.satuanStandar satuan " + " left join detailJenisProduk.jenisProduk jenisProduk " + " left join jenisProduk.kelompokProduk kelompokProduk where produk.id is not null and to_char(strukClosing.tglClosing ,'dd-MM-yyyy')=:tglClosing ") List> detailStokOpName(@Param("tglClosing") String tglClosing); }