70 lines
4.0 KiB
Java
70 lines
4.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.NilaiKelompokJabatan;
|
|
|
|
/**
|
|
* Repository class for KelompokJabatan
|
|
*
|
|
* @author Generator
|
|
*/
|
|
@Repository("KelompokJabatanDao")
|
|
public interface NilaiKelompokJabatanDao extends PagingAndSortingRepository<NilaiKelompokJabatan, Integer> {
|
|
|
|
@Query("select new Map(nj.id as id,nj.detailKelompokJabatan as detailKelompokJabatan,nj.gradeDesc as grade) "
|
|
+ "from NilaiKelompokJabatan nj where nj.id = :id and nj.statusEnabled is true")
|
|
public Map<String, Object> getDetailKelompokJabatanById(@Param("id") Integer id);
|
|
|
|
@Query("select model from NilaiKelompokJabatan model where model.id = :kelompokJabatanId")
|
|
public NilaiKelompokJabatan getNilaiKelompokJabatan(@Param("kelompokJabatanId") Integer kelompokJabatanId);
|
|
|
|
@Query("select new map (model.id as id, model.detailKelompokJabatan as detailKelompokJabatan, "
|
|
+ "model.gradeDesc as grade, model.kelompokJabatanId as kelompokJabatanId, "
|
|
+ "model.nilaiTerendah as nilaiTerendah, model.nilaiTertinggi as nilaiTertinggi) "
|
|
+ " from NilaiKelompokJabatan model where model.statusEnabled is true")
|
|
public List<Map<String, Object>> getAllByStatusEnabled();
|
|
|
|
@Query("select new Map(model.id as id, model.detailKelompokJabatan as detailKelompokJabatan) "
|
|
+ "from NilaiKelompokJabatan model "
|
|
+ "where model.id = :detailKelompokJabatanId and model.statusEnabled is true")
|
|
public Map<String, Object> getNilaiKelompokJabatanById(
|
|
@Param("detailKelompokJabatanId") Integer detailKelompokJabatanId);
|
|
|
|
@Query("select distinct new Map(ar.noRec as noRec," + "cast(nj.gradeDesc as integer) as grade,"
|
|
+ "nj.nilaiTerendah as nilaiTerendah," + "nj.nilaiTertinggi as nilaiTertinggi,"
|
|
+ "nj.gajiHonorarium as gajiHonorarium," + "nj.minInsentif as minInsentif,"
|
|
+ "nj.maxInsentif as maxInsentif," + "nj.maxTotalRemunerasi as maxTotalRemunerasi,"
|
|
+ "ar.tanggalPembaharuanData) " + "from NilaiKelompokJabatan nj, " + "AnggaranRemunerasi ar "
|
|
+ "inner join nj.grade gr " + "where ar.gradeId = nj.grade " + "and ar.gradeId = gr.id "
|
|
+ "and nj.statusEnabled is true " + "and ar.statusEnabled is true " + "and gr.statusEnabled is true "
|
|
+ "and cast(nj.gradeDesc as integer) > 0 " + "order by cast(nj.gradeDesc as integer) desc, "
|
|
+ "ar.tanggalPembaharuanData desc")
|
|
public List<Map<String, Object>> findPlafonRemunerasi();
|
|
|
|
@Query("select nj.id from NilaiKelompokJabatan nj where nj.gradeDesc = :grade")
|
|
public List<Integer> findIdsByGrade(@Param("grade") String grade);
|
|
|
|
@Query("select distinct new Map(pg.id as idPegawai,pg.namaLengkap as namaPegawai," + "uk.name as unitKerja,"
|
|
+ "j.namaJabatan as namaJabatan," + "ej.totalNilai as nilaiJabatan," + "dkj.gradeDesc as grade,"
|
|
+ "kj.id as idKelompokJabatan,kj.namaKelompokJabatan as kelompokJabatan,"
|
|
+ "dkj.id as idDetailKelompokJabatan,dkj.detailKelompokJabatan as detailKelompokJabatan) "
|
|
+ "from MapPegawaiJabatanToUnitKerja mj, EvaluasiJabatan ej " + "inner join mj.pegawai pg "
|
|
+ "inner join mj.jabatan j " + "inner join j.unitKerja uk " + "inner join ej.grade dkj "
|
|
+ "inner join dkj.kelompokJabatan kj " + "where mj.jabatanId = ej.jabatanId and j.id = ej.jabatanId "
|
|
+ "and mj.jabatanId = j.id " + "and mj.unitKerjaPegawaiId = uk.id " + "and mj.gradeId = dkj.id "
|
|
+ "and mj.statusEnabled is true " + "and ej.statusEnabled is true " + "and pg.statusEnabled is true "
|
|
+ "and j.statusEnabled is true " + "and uk.statusEnabled is true " + "and dkj.statusEnabled is true "
|
|
+ "and kj.statusEnabled is true " + "and pg.kategoryPegawaiId in (:listKategoriId) "
|
|
+ "order by pg.namaLengkap")
|
|
public List<Map<String, Object>> findPenempatanEvaluasiJabatan(
|
|
@Param("listKategoriId") List<Integer> idListKategori);
|
|
|
|
}
|