- pembuatan service duplikat master indikator kinerja - pembuatan service duplikat kontrak kinerja - penambahan list generic untuk criteria in() - pembuatan service pengajuan kontrak kinerja - pembuatan service daftar kontrak kinerja - penerapan blu, pns, cpns sebagai pegawai purna waktu - pembuatan service detail dashboard sebagai tampilan awal entri working record
70 lines
4.5 KiB
Java
70 lines
4.5 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.LogbookKinerja;
|
|
|
|
@Repository("logbookKinerjaDao")
|
|
public interface LogbookKinerjaDao extends PagingAndSortingRepository<LogbookKinerja, String> {
|
|
|
|
@Query("select new Map(lk.noRec as noRec," + "pg.id as pegawaiId,pg.namaLengkap as namaPegawai,"
|
|
+ "jb.id as jabatanId,jb.namaJabatan as namaJabatan,"
|
|
+ "ik.id as indikatorId,ik.namaIndikator as namaIndikator,"
|
|
+ "si.id as satuanIndikatorId,si.satuanIndikator as satuanIndikator,"
|
|
+ "ik.jenisIndikator as jenisIndikatorId," + "(case when ik.jenisIndikator = 1 then 'Kuantitas' "
|
|
+ "when ik.jenisIndikator = 2 then 'Kualitas' "
|
|
+ "when ik.jenisIndikator = 3 then 'Perilaku' end) as jenisIndikator," + "lk.target as target,"
|
|
+ "lk.bobot as bobot," + "lk.bulan as bulan) " + "from LogbookKinerja lk "
|
|
+ "inner join lk.indikatorKinerja ik " + "inner join lk.pegawai pg " + "inner join lk.jabatan jb "
|
|
+ "inner join ik.satuanIndikator si " + "where lk.statusEnabled is true " + "and ik.statusEnabled is true "
|
|
+ "and pg.statusEnabled is true " + "and lk.statusVerifikasi is false "
|
|
+ "and ik.statusVerifikasi is false " + "and pg.id = :pegawaiId " + "and jb.id = :jabatanId")
|
|
List<Map<String, Object>> findPengajuanIndikatorByPegawaiJabatan(@Param("pegawaiId") Integer pegawaiId,
|
|
@Param("jabatanId") Integer jabatanId);
|
|
|
|
@Query("select new Map(lk.noRec as noRec,ik.namaIndikator as namaIndikator) " + "from LogbookKinerja lk "
|
|
+ "inner join lk.indikatorKinerja ik " + "where lk.statusEnabled is true and ik.statusEnabled is true "
|
|
+ "and lk.statusVerifikasi is true and ik.statusVerifikasi is true " + "and lk.pegawaiId = :pegawaiId "
|
|
+ "and lk.jabatanId = :jabatanId " + "and to_char(lk.bulan,'yyyy-MM') = :bulan "
|
|
+ "and ik.id = :indikatorId")
|
|
List<Map<String, Object>> findDupKontrakKinerja(@Param("pegawaiId") Integer idPegawai,
|
|
@Param("jabatanId") Integer idJabatan, @Param("bulan") String bulan,
|
|
@Param("indikatorId") Integer idIndikator);
|
|
|
|
@Query("select new Map(lk.noRec as noRec," + "pg.id as idPegawai,pg.namaLengkap as namaPegawai,"
|
|
+ "jb.id as idJabatan,jb.namaJabatan as namaJabatan,"
|
|
+ "ik.id as idIndikator,ik.namaIndikator as namaIndikator," + "ik.jenisIndikator as idJenisIndikator,"
|
|
+ "(case when ik.jenisIndikator = 1 then 'Kuantitas' " + "when ik.jenisIndikator = 2 then 'Kualitas' "
|
|
+ "when ik.jenisIndikator = 3 then 'Perilaku' end) as jenisIndikator," + "lk.target as target,"
|
|
+ "lk.bobot as bobot," + "lk.bulan as bulan," + "lk.statusVerifikasi as isStatusVerifikasi,"
|
|
+ "(case when lk.statusVerifikasi is false then 'Belum Terverifikasi' "
|
|
+ "when lk.statusVerifikasi is true then 'Terverifikasi' end) as statusVerifikasi) "
|
|
+ "from LogbookKinerja lk " + "inner join lk.indikatorKinerja ik " + "inner join lk.pegawai pg "
|
|
+ "inner join lk.jabatan jb " + "where lk.statusEnabled is true and ik.statusEnabled is true "
|
|
+ "and ik.statusVerifikasi is true " + "and lk.pegawaiId = :pegawaiId " + "and lk.jabatanId = :jabatanId "
|
|
+ "and to_char(lk.bulan,'yyyy-MM') = :bulan " + "order by ik.jenisIndikator, ik.namaIndikator")
|
|
List<Map<String, Object>> findKontrakKinerja(@Param("pegawaiId") Integer idPegawai,
|
|
@Param("jabatanId") Integer idJabatan, @Param("bulan") String bulan);
|
|
|
|
@Query("select new Map(lk.noRec as noRec," + "pg.id as idPegawai,pg.namaLengkap as namaPegawai,"
|
|
+ "jb.id as idJabatan,jb.namaJabatan as namaJabatan,"
|
|
+ "ik.id as idIndikator,ik.namaIndikator as namaIndikator,"
|
|
+ "ik.jenisIndikator as idJenisIndikator,(case when ik.jenisIndikator = 1 then 'Kuantitas' "
|
|
+ "when ik.jenisIndikator = 2 then 'Kualitas' "
|
|
+ "when ik.jenisIndikator = 3 then 'Perilaku' end) as jenisIndikator,"
|
|
+ "lk.capaian/lk.target*100 as persenCapaian) " + "from LogbookKinerja lk "
|
|
+ "inner join lk.indikatorKinerja ik " + "inner join lk.pegawai pg " + "inner join lk.jabatan jb "
|
|
+ "where lk.statusEnabled is true and ik.statusEnabled is true "
|
|
+ "and lk.statusVerifikasi is true and ik.statusVerifikasi is true " + "and lk.pegawaiId = :pegawaiId "
|
|
+ "and lk.jabatanId = :jabatanId " + "and to_char(lk.bulan,'yyyy-MM') = :bulan")
|
|
List<Map<String, Object>> findLogbookKinerja(@Param("pegawaiId") Integer idPegawai,
|
|
@Param("jabatanId") Integer idJabatan, @Param("bulan") String bulan);
|
|
|
|
}
|