Salman Manoe 8aec55c690 Update service kepegawaian
Penerapan golongan pppk untuk endpoints view terdampak
2025-02-24 09:05:40 +07:00

136 lines
8.3 KiB
Java

package com.jasamedika.medifirst2000.dao;
import com.jasamedika.medifirst2000.entities.PlanningPegawaiMuSaRe;
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 java.util.Date;
import java.util.List;
import java.util.Map;
@Repository("PlanningPegawaiMuSaReDao")
public interface PlanningPegawaiMuSaReDao extends PagingAndSortingRepository<PlanningPegawaiMuSaRe, String> {
@Query("select " + "a.noPlanning " + "from PlanningPegawaiMuSaRe a " + "where a.noPlanning LIKE %:kode% ")
List<String> noUsulan(@Param("kode") String kode);
@Query("select count(a.noPlanning) " + "from PlanningPegawaiMuSaRe a " + "where a.noPlanning LIKE %:kode% ")
Long countNoUsulan(@Param("kode") String kode);
@Query("select count(a.noplanning) " + "from StrukPlanning a ")
Long countNoStruk();
@Query("select NEW Map (" + "a.id as id, " + "a.namaLengkap as namaLengkap) " + "from Pegawai a "
+ "left join a.ruangan b " + "left join a.kategoryPegawai c " + "left join a.statusPegawai d "
+ "where b.id=:id and c.id!=11 and d.id=2")
List<Map<String, Object>> getListPegawai(@Param("id") Integer id);
@Query("select NEW Map (" + "a.id as id, " + "a.namaLengkap as namaLengkap) " + "from Pegawai a "
+ "left join a.ruangan b ")
List<Map<String, Object>> getListPegawai();
@Query("select NEW Map (" + "a.namaLengkap as namaLengkap) " + "from Pegawai a where a.id=:id")
Map<String, Object> getPegawai(@Param("id") Integer id);
@Query("select NEW Map (" + "a.id as id, " + "a.namaJabatan as namaJabatan) " + "from Jabatan a "
+ "left join a.jenisJabatan b " + "where b.id=:id")
List<Map<String, Object>> getListJabatanByJenis(@Param("id") Integer id);
@Query("select NEW Map (" + "a.id as id, " + "a.namaRuangan as namaRuangan) " + "from Ruangan a")
List<Map<String, Object>> getListRuanganMutasi();
@Query("select NEW Map (" + "a.id as id, " + "a.eselon as eselon) " + "from Eselon a")
List<Map<String, Object>> getListEselon();
@Query("select NEW Map (" + "a.id as id, " + "a.golonganPegawai as namaPangkat) " + "from GolonganPegawai a")
List<Map<String, Object>> getListGolongan();
@Query("select NEW Map (" + "b.id as jabatanFungsionalId, " + "b.namaJabatan as jabatanFungsional, "
+ "c.id as jabatanInternalId, " + "c.namaJabatan as jabatanInternal, " + "d.id as ruanganId, "
+ "d.namaRuangan as namaRuangan, " + "e.id as eselonId, " + "e.eselon as eselon, " + "f.id as pangkatId, "
+ "f.golonganPegawai as namaPangkat, " + "g.id as golonganPPPKId, " + "g.namaGolongan as golonganPPPK) "
+ "from MapPegawaiJabatanToUnitKerja m " + "left join m.pegawai a " + "left join a.jabatanFungsional b "
+ "left join m.jabatan c " + "left join a.ruangan d " + "left join a.eselon e "
+ "left join a.golonganPegawai f " + "left join a.golonganPPPK g " + "where m.isPrimary is true "
+ "and m.statusEnabled is true " + "and a.id=:id")
Map<String, Object> getDataMuSaReByPegawai(@Param("id") Integer id);
@Query("select NEW Map (" + "a.id as id, " + "a.jenisHukuman as jenisHukuman) " + "from JenisHukuman a")
List<Map<String, Object>> getJenisHukuman();
@Query("select NEW Map (" + "a.id as id, " + "a.name as suratKeputusan) " + "from JenisSuratKeputusan a ")
List<Map<String, Object>> listJenisSuratKeputusan();
@Query("select NEW Map (" + "a.id as id, " + "a.statusPegawai as statusPegawai) " + "from StatusPegawai a")
List<Map<String, Object>> getListStatusPegawai();
@Query("select NEW Map (" + "a.id as kedudukan," + "a.name as namaKedudukan) " + "from Kedudukan a")
List<Map<String, Object>> getListKedudukan();
@Query("select NEW Map (" + "a.id as id, " + "a.name as name) " + "from StatusKawin a")
List<Map<String, Object>> getListStatusKawin();
// ------------------------------------------------------------------------------------
@Query("select NEW Map (" + "a.pensiun as pensiun, " + "b.namaJabatan as jabatanFungsional, "
+ "b.id as jabatanFungsionalId, " + "c.namaJabatan as jabatanInternal, " + "c.id as jabatanInternalId, "
+ "d.namaJabatan as jabatanStruktural, " + "d.id as jabatanStrukturalId, "
+ "e.namaRuangan as namaRuangan, " + "e.id as namaRuanganId, " + "f.eselon as eselon, "
+ "f.id as eselonId, " + "g.golonganPegawai as namaGolongan, " + "g.id as golonganId, "
+ "gp.namaGolongan as golonganPPPK, " + "gp.id as golonganPPPKId, " + "h.statusPegawai as statusPegawai, "
+ "h.id as statusPegawaiId, " + "i.statusPerkawinan as statusKawin, " + "i.id as statusKawinId, "
+ "j.name as kedudukan, " + "j.id as kedudukanId) " + "from MapPegawaiJabatanToUnitKerja m "
+ "left join m.pegawai a " + "left join a.jabatanFungsional b " + "left join m.jabatan c "
+ "left join a.jabatanStruktural d " + "left join a.ruangan e " + "left join a.eselon f "
+ "left join a.golonganPegawai g " + "left join a.golonganPPPK gp " + "left join a.statusPegawai h "
+ "left join a.statusKawin i " + "left join a.kedudukan j " + "where m.isPrimary is true "
+ "and m.statusEnabled is true " + "and a.id=:id")
Map<String, Object> getDataPegawaiMuSaRe(@Param("id") Integer id);
@Query("select NEW Map (" + "b.id as id, " + "b.reportDisplay as grade) " + "from EvaluasiJabatan a "
+ "left join a.grade b " + "left join a.pegawai c " + "where c.id=:id and a.tahun=:tahun")
Map<String, Object> getGradeByPegawai(@Param("id") Integer id, @Param("tahun") Integer tahun);
@Query("select NEW Map (" + "a.id as id, " + "a.jenisKeputusan as jenisKeputusan) " + "from JenisKeputusan a "
+ "where a.statusEnabled is true " + "order by a.id")
List<Map<String, Object>> getListJenisKeputusan();
@Query("select NEW Map (" + "a.noRec as noRec," + "a.statusMusare as statusMusare," + "b.id as pegawaiId,"
+ "c.id as ruanganId," + "d.id as jabatanStrukturalId," + "e.id as jabatanFungsionalId,"
+ "f.id as jabatanInternalId," + "g.id as eselonId," + "h.id as pangkatId) "
+ "from PlanningPegawaiMuSaRe a " + "left join a.pegawai b " + "left join a.ruanganExec c "
+ "left join a.jabatanStrukturalExec d " + "left join a.jabatanFungsionalExec e "
+ "left join a.jabatanInternalExec f " + "left join a.eselonExec g " + "left join a.pangkatExec h "
+ "where a.approvalStatus=1 and " + "date(a.tglPlanning)=date(:date) " + "and a.statusEnabled is null")
List<Map<String, Object>> getDataPlanningByDate(@Param("date") Date date);
@Query("select NEW Map (" + "a.nipPns as nip," + "a.namaLengkap as namaPegawai," + "b.namaJabatan as jabatan) "
+ "from MapPegawaiJabatanToUnitKerja m " + "left join m.pegawai a " + "left join m.jabatan b "
+ "where m.isPrimary is true " + "and m.statusEnabled is true " + "and a.id=:id")
Map<String, Object> getHeaderHistory(@Param("id") Integer id);
@Query("select NEW Map (" + "a.noRec as noRec," + "c.jenisHukuman as jenisHukuman," + "d.noSK as noSK,"
+ "d.tglTTSK as tglSk," + "d.tglBerlakuAwal as tglMulai," + "d.tglBerlakuAkhir as tglSelesai,"
+ "a.deskripsiMutasiSanksiResignExec as keterangan) " + "from PlanningPegawaiMuSaRe a "
+ "left join a.pegawai b " + "left join a.jenisHukumanExec c " + "left join a.noSk d "
+ "where b.id=:id and " + "a.statusMusare=2 and " + "a.approvalStatus=1")
List<Map<String, Object>> getHistoryExecSanksi(@Param("id") Integer id);
@Query("select NEW Map (" + "a.noRec as noRec," + "c.noSK as noSK," + "c.tglTTSK as tglSk,"
+ "c.tglBerlakuAwal as tglMulai," + "a.deskripsiMutasiSanksiResignExec as keterangan,"
+ "d.name as pangkatGolongan) " + "from PlanningPegawaiMuSaRe a " + "left join a.pegawai b "
+ "left join a.noSk c " + "left join a.pangkatExec d " + "where b.id=:id and " + "a.statusMusare=1 and "
+ "a.approvalStatus=1")
List<Map<String, Object>> getHistoryExecPangkat(@Param("id") Integer id);
@Query("select NEW Map (" + "a.noRec as noRec," + "c.noSK as noSK," + "c.tglTTSK as tglSk,"
+ "c.tglBerlakuAwal as tglMulaiBerlaku," + "a.deskripsiMutasiSanksiResignExec as keterangan,"
+ "d.namaRuangan as satuanKerja," + "e.namaJabatan as jabatan," + "f.eselon as eselon) "
+ "from PlanningPegawaiMuSaRe a " + "left join a.pegawai b " + "left join a.noSk c "
+ "left join a.ruanganExec d " + "left join a.jabatanInternalExec e " + "left join a.eselonExec f "
+ "where b.id=:id and " + "a.statusMusare=1 and " + "a.approvalStatus=1")
List<Map<String, Object>> getHistoryExecJabatan(@Param("id") Integer id);
}