63 lines
2.9 KiB
Java
63 lines
2.9 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.EvaluasiJabatan;
|
|
import com.jasamedika.medifirst2000.entities.MasterEvaluasiJabatan;
|
|
|
|
/**
|
|
* Repository class for EvaluasiJabatan
|
|
*
|
|
* @author Generator
|
|
*/
|
|
@Repository("MasterEvaluasiJabatanDao")
|
|
public interface MasterEvaluasiJabatanDao extends PagingAndSortingRepository<MasterEvaluasiJabatan, String> {
|
|
|
|
|
|
|
|
@Query("select new map(model.id as id , model.namaJabatan as namaJabatan) from Jabatan model left join model.jenisJabatan jenisJabatan where jenisJabatan.id=3")
|
|
List<Map<String, Object>> findJabatan();
|
|
|
|
List<EvaluasiJabatan> findByTahun(Integer tahun);
|
|
|
|
@Query("select model from MasterEvaluasiJabatan model left join model.jabatan jabatan where jabatan.id=:idJabatan and model.bulan=:bulan and model.tahun=:tahun")
|
|
List<Map<String, Object>> findEvaluasiByJabatan(@Param("idJabatan")Integer idJabatan, @Param("tahun")Integer tahun, @Param("bulan")String bulan);
|
|
|
|
@Query("select model from MasterEvaluasiJabatan model left join model.jabatan jabatan where jabatan.id=:idJabatan and model.tahun=:tahun ")
|
|
List<Map<String, Object>> findEvaluasiByJabatanAndTahun(@Param("idJabatan")Integer idJabatan, @Param("tahun")Integer tahun );
|
|
|
|
@Query("select model from MasterEvaluasiJabatan model left join model.jabatan jabatan where jabatan.id=:idJabatan and model.bulan=:bulan and model.tahun=:tahun")
|
|
MasterEvaluasiJabatan findEvaluasiByJabatanTahunBulan(@Param("idJabatan")Integer idJabatan, @Param("tahun")Integer tahun, @Param("bulan")String bulan);
|
|
|
|
@Query("select model from MasterEvaluasiJabatan model where model.bulan=:bulan and model.tahun=:tahun ")
|
|
List<MasterEvaluasiJabatan> findEvaluasiTahunBulanList(@Param("tahun")Integer tahun, @Param("bulan")String bulan);
|
|
|
|
@Query("select new map(max(CASE "
|
|
+ " WHEN model.bulan='Januari' THEN 1 "
|
|
+" WHEN model.bulan='Februari' THEN 2 "
|
|
+" WHEN model.bulan='Maret' THEN 3 "
|
|
+" WHEN model.bulan='April' THEN 4 "
|
|
+" WHEN model.bulan='Mei' THEN 5 "
|
|
+" WHEN model.bulan='Juni' THEN 6 "
|
|
+" WHEN model.bulan='Juli' THEN 7 "
|
|
+" WHEN model.bulan='Agustus' THEN 8 "
|
|
+" WHEN model.bulan='September' THEN 9 "
|
|
+" WHEN model.bulan='Oktober' THEN 10 "
|
|
+" WHEN model.bulan='November' THEN 11 "
|
|
+" WHEN model.bulan='Desember' THEN 12 "
|
|
+" ELSE 0 "
|
|
+" END) as bulan,max(model.tahun) as tahun,model.jabatanId as jabatanId) "
|
|
+" from MasterEvaluasiJabatan model where model.jabatanId in "
|
|
+" (select distinct (m.jabatanId) from MasterEvaluasiJabatan m) "
|
|
+" group by model.jabatanId ")
|
|
List<Map<String, Object>> findMasterEvaluasiJabatanList();
|
|
|
|
|
|
}
|