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

38 lines
2.0 KiB
Java

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<StrukClosing, String> {
@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<Map<String,Object>> 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<Map<String,Object>> detailStokOpName(@Param("tglClosing") String tglClosing);
}