258 lines
12 KiB
Java
258 lines
12 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.Pegawai;
|
|
import com.jasamedika.medifirst2000.entities.PlanningRekrutmenSeleksi;
|
|
import com.jasamedika.medifirst2000.entities.StrukPlanning;
|
|
|
|
@Repository("RekrutmenDao")
|
|
public interface RekrutmenDao extends PagingAndSortingRepository<Pegawai, Integer>{
|
|
@Query("select new Map (model.id as pelamarId,"
|
|
+ "model.namaLengkap as namaPelamar,"
|
|
+ "jabatanLamar.id as posisiLamarId,"
|
|
+"jabatanLamar.namaJabatan as posisiLamar,"
|
|
+ "jenisKelamin.id as jenisKelaminId,"
|
|
+ "jenisKelamin.jenisKelamin as jenisKelamin,"
|
|
+ "jenisPegawai.id as jenisPegawaiId,"
|
|
+ "model.email as email,"
|
|
+"jenisPegawai.jenisPegawai as jenisPegawai) "
|
|
+"from Pegawai model "
|
|
+"left join model.jabatanLamar jabatanLamar "
|
|
+"left join model.jenisPegawai jenisPegawai "
|
|
+ "left join model.jenisKelamin jenisKelamin "
|
|
+"where jenisPegawai.id=12")
|
|
List<Map<String,Object>> getDaftarPelamar();
|
|
|
|
@Query("select new Map ( "
|
|
+"pegawai.id as pelamarId, "
|
|
+"to_char(strukHistori.tglAwal,'yyyy-mm-dd') as tglAwal, "
|
|
+"pegawai.namaLengkap as namaLengkap, "
|
|
+ "pegawai.email as email,"
|
|
+ "pegawai.noHandphone as noHandphone,"
|
|
+"model.institusiPendidikan as institusiPendidikan, "
|
|
+"pendidikan.id as pendidikanId, "
|
|
+"pendidikan.namaPendidikan as namaPendidikan, "
|
|
+"model.kualifikasiJurusan as kualifikasiJurusan, "
|
|
+"model.ipkNilai as ipkNilai, "
|
|
+"jabatanLamar.id as posisiLamarId, "
|
|
+"jabatanLamar.namaJabatan as posisiLamar) "
|
|
+"from PegawaiHistoriPendidikan model "
|
|
+"left join model.pegawai pegawai "
|
|
+"left join pegawai.jabatanLamar jabatanLamar "
|
|
+"left join pegawai.jenisPegawai jenisPegawai "
|
|
+"left join pegawai.jenisKelamin jenisKelamin "
|
|
+"left join model.pendidikan pendidikan "
|
|
+"left join model.strukHistori strukHistori "
|
|
+"where jenisPegawai.id=12 and pegawai.id=:pegawaiId")
|
|
List<Map<String,Object>> getHistoriPendidikanPelamar(@Param("pegawaiId")Integer pegawaiId);
|
|
|
|
@Query("select new Map (pegawai.id as pelamarId, "
|
|
+"dokumen.id as dokumenId, "
|
|
+ "dokumen.namaJudulDokumen as namaDokumen,"
|
|
+ "dokumen.pathFile as pathFile) "
|
|
+"from PegawaiRekrutmenDokumen model "
|
|
+"left join model.dokumen dokumen "
|
|
+"left join model.pegawai pegawai "
|
|
+ "where pegawai.id=:pegawaiId")
|
|
List<Map<String,Object>> getDokumenPelamar(@Param("pegawaiId")Integer pegawaiId);
|
|
|
|
@Query("select new Map (model.id as id, "
|
|
+"model.kategoryPegawai as kategoryPegawai) "
|
|
+"from KategoryPegawai model where id in (1,10)")
|
|
List<Map<String,Object>> getPNSNonPNS();
|
|
|
|
@Query("select new Map(dokumen.id as dokumenId, "
|
|
+"dokumen.namaJudulDokumen as namaJudulDokumen) "
|
|
+"from ProfileHistoriLowonganD model "
|
|
+"left join model.kategoryPegawai kategoryPegawai "
|
|
+"left join model.jabatan jabatan "
|
|
+"left join model.dokumen dokumen "
|
|
+"where kategoryPegawai.id=:kategoryPegawaiId and jabatan.id=:jabatanId ")
|
|
List<Map<String,Object>> getBerkasLowongan(@Param("kategoryPegawaiId")Integer kategoryPegawaiId,
|
|
@Param("jabatanId")Integer jabatanId);
|
|
|
|
@Query("select new Map (model.id as id, model.namaProduk as namaProduk) "
|
|
+ "from Produk model "
|
|
+ "left join model.detailJenisProduk detailJenisProduk "
|
|
+ "where detailJenisProduk.id=1333")
|
|
List<Map<String,Object>> getProdukJenisTest();
|
|
|
|
@Query("select new Map (model.id as id, model.namaLengkap as namaLengkap) from Pegawai model")
|
|
List<Map<String,Object>> getPetugasSdm();
|
|
|
|
@Query("select model from StrukPlanning model "
|
|
+"where to_char(model.tglplanning,'mm-yyyy')=:tglPlanning")
|
|
List<StrukPlanning> getStrukPlanningByTglPlanning(@Param("tglPlanning")String tglPlanning);
|
|
|
|
@Query("select new Map (model.id as id, model.jenisKelamin as jenisKelamin) from JenisKelamin model")
|
|
List<Map<String,Object>> getJenisKelamin();
|
|
|
|
@Query("select new Map (model.id as id, model.agama as agama) from Agama model")
|
|
List<Map<String,Object>> getAgama();
|
|
|
|
@Query("select new Map (model.id as id, model.statusPerkawinan as statusPerkawinan) from StatusPerkawinan model")
|
|
List<Map<String,Object>> getStatusPerkawinan();
|
|
|
|
@Query("select new Map (model.id as id, model.namaJabatan as posisiLamar) from Jabatan model")
|
|
List<Map<String,Object>> getPosisiLamar();
|
|
|
|
@Query("select new Map (model.id as id, model.namaPendidikan as namaPendidikan) from Pendidikan model")
|
|
List<Map<String,Object>> getPendidikan();
|
|
|
|
@Query("select new Map (model.id as id, model.jenisOrganisasi as jenisOrganisasi) from JenisOrganisasi model")
|
|
List<Map<String,Object>> getjenisOrganisasi();
|
|
|
|
@Query("select new Map (model.id as pelamarId,"
|
|
+ "model.namaLengkap as namaPelamar,"
|
|
+ "jabatanLamar.id as posisiLamarId,"
|
|
+"jabatanLamar.namaJabatan as posisiLamar,"
|
|
+ "jenisKelamin.id as jenisKelaminId,"
|
|
+ "jenisKelamin.jenisKelamin as jenisKelamin,"
|
|
+ "jenisPegawai.id as jenisPegawaiId,"
|
|
+ "model.email as email,"
|
|
+"jenisPegawai.jenisPegawai as jenisPegawai) "
|
|
+"from Pegawai model "
|
|
+"left join model.jabatanLamar jabatanLamar "
|
|
+"left join model.jenisPegawai jenisPegawai "
|
|
+ "left join model.jenisKelamin jenisKelamin "
|
|
+"where jenisPegawai.id=12")
|
|
List<Map<String,Object>> getDaftarPelamarJadwalSeleksi();
|
|
|
|
@Query("select new Map (noPlanning.noRec as noRecStrukPlanning) "
|
|
+"from PlanningRekrutmenSeleksi model "
|
|
+"left join model.noPlanning noPlanning "
|
|
+"where to_char(model.tglPlanning,'mm-yyyy')=:tglPlanning")
|
|
List<Map<String,Object>> getStrukPlanningByTglPlanningRekrutmentSeleksi(@Param("tglPlanning")String tglPlanning);
|
|
|
|
@Query("select new Map (noPlanning.noRec as noRecStrukPlanning,"
|
|
+ "noPlanning.noplanning as noPlanning,"
|
|
+ "to_char(noPlanning.tglplanning,'yyyy-mm-dd') as tglPlanning,"
|
|
+ "to_char(noPlanning.tglpegajuan,'yyyy-mm-dd') as tglPengajuan,"
|
|
+ "to_char(noPlanning.tglplanning,'mm-yyyy') as periodeLowongan,"
|
|
+"jenisKelamin.id as jenisKelaminId,"
|
|
+ "jenisKelamin.jenisKelamin as jenisKelamin,"
|
|
+"pegawai.id as pelamarId,"
|
|
+ "pegawai.email as email,"
|
|
+ "pegawai.noHandphone as noHandphone,"
|
|
+ "pegawai.namaLengkap as namaPelamar,"
|
|
+"produkRs.id as produkRsId,"
|
|
+ "produkRs.namaProduk as namaProdukRs) "
|
|
+"from PlanningRekrutmenSeleksiD model "
|
|
+"left join model.noPlanning noPlanning "
|
|
+"left join model.produkRs produkRs "
|
|
+"left join model.pegawai pegawai "
|
|
+ "left join pegawai.jenisKelamin jenisKelamin "
|
|
+ "where noPlanning.noRec=:noRecStrukPlanning")
|
|
List<Map<String,Object>> getJadwalSeleksiByNoRecStrukPelayanan(@Param("noRecStrukPlanning")String noRecStrukPlanning);
|
|
|
|
@Query("select new Map(model.noRec as noRecRekrutmenSeleksi, "
|
|
+"noPlanning.noRec as noRecStrukPlanning, "
|
|
+"to_char(noPlanning.tglplanning,'yyyy-mm-dd') as tglPlanning, "
|
|
+"to_char(noPlanning.tglpegajuan,'yyyy-mm-dd') as tglPengajuan, "
|
|
+"ruangan.id as ruanganId, "
|
|
+"ruangan.namaRuangan as namaRuangan, "
|
|
+ "to_char(model.tglPlanning,'mm-yyyy') as periodeLowongan, "
|
|
+"model.qtyPeserta as qtyPeserta) "
|
|
+"from PlanningRekrutmenSeleksi model "
|
|
+"left join model.noPlanning noPlanning "
|
|
+"left join model.ruangan ruangan "
|
|
+ "where noPlanning.noRec =:noRecStrukPlanning")
|
|
List<Map<String, Object>> findRekrutmenSeleksi(@Param("noRecStrukPlanning")String noRecStrukPlanning);
|
|
|
|
@Query("select new Map (model.noRec as noRecRekrutmenSeleksiD,"
|
|
+"noPlanning.noRec as noRecStrukPlanning, "
|
|
+"to_char(noPlanning.tglplanning,'yyyy-mm-dd') as tglPlanning, "
|
|
+"to_char(noPlanning.tglpegajuan,'yyyy-mm-dd') as tglPengajuan, "
|
|
+"produkRs.id as produkRsId, "
|
|
+"produkRs.namaProduk as namaProdukRs, "
|
|
+"pegawai.id as pelamarId, "
|
|
+"pegawai.namaLengkap as namaPelamar, "
|
|
+"pegawai.email as email, "
|
|
+"pegawai.noHandphone as noHandphone, "
|
|
+"jabatanLamar.id as posisiLamarId, "
|
|
+"jabatanLamar.namaJabatan as posisiLamar, "
|
|
+ "to_char(model.tglPlanning,'mm-yyyy') as periodeLowongan) "
|
|
+"from PlanningRekrutmenSeleksiD model "
|
|
+"left join model.noPlanning noPlanning "
|
|
+"left join model.produkRs produkRs "
|
|
+"left join model.pegawai pegawai "
|
|
+"left join model.jabatanLamar jabatanLamar "
|
|
+"where noPlanning.noRec =:noRecStrukPlanning and produkRs.id =:jenisTestId")
|
|
List<Map<String, Object>> findRekrutmenSeleksiD(@Param("noRecStrukPlanning")String noRecStrukPlanning,
|
|
@Param("jenisTestId")Integer jenisTestId);
|
|
|
|
@Query("select new Map (model.noRec as noRecRekrutmenSeleksiD,"
|
|
+"noPlanning.noRec as noRecStrukPlanning, "
|
|
+"to_char(noPlanning.tglplanning,'yyyy-mm-dd') as tglPlanning, "
|
|
+"to_char(noPlanning.tglpegajuan,'yyyy-mm-dd') as tglPengajuan, "
|
|
+"produkRs.id as produkRsId, "
|
|
+"produkRs.namaProduk as namaProdukRs, "
|
|
+"pegawai.id as pelamarId, "
|
|
+"pegawai.namaLengkap as namaPelamar, "
|
|
+"pegawai.email as email, "
|
|
+"pegawai.noHandphone as noHandphone, "
|
|
+"jabatanLamar.id as posisiLamarId, "
|
|
+"jabatanLamar.namaJabatan as posisiLamar, "
|
|
+ "to_char(model.tglPlanning,'mm-yyyy') as periodeLowongan) "
|
|
+"from PlanningRekrutmenSeleksiD model "
|
|
+"left join model.noPlanning noPlanning "
|
|
+"left join model.produkRs produkRs "
|
|
+"left join model.pegawai pegawai "
|
|
+"left join model.jabatanLamar jabatanLamar "
|
|
+"where to_char(model.tglPlanning,'mm-yyyy') =:periode "
|
|
+ "and pegawai.id=:pegawaiId")
|
|
List<Map<String, Object>> findRekrutmenSeleksiD2(@Param("periode")String periode,
|
|
@Param("pegawaiId")Integer pegawaiId);
|
|
|
|
@Query("select model from StrukPlanning model "
|
|
+ "left join model.kdkelompoktransaksi kelompokTransaksi "
|
|
+ "where to_char(model.tglplanning,'yyyy-mm-dd')=:newAwalTgl "
|
|
+ "and kelompokTransaksi.id =:kelompokTransaksiId")
|
|
List<StrukPlanning> findStrukPlanningByPeriodeAndKelompokTransaksi(
|
|
@Param("newAwalTgl")String newAwalTgl, @Param("kelompokTransaksiId")Integer kelompokTransaksiId);
|
|
|
|
@Query("select model from PlanningRekrutmenSeleksi model "
|
|
+ "left join model.noPlanning noPlanning "
|
|
+ "where noPlanning.noRec=:noRecStrukPlanning")
|
|
List<PlanningRekrutmenSeleksi> findRekrutmenSeleksiByNoRecStrukPlanning(
|
|
@Param("noRecStrukPlanning")String noRecStrukPlanning);
|
|
|
|
@Query("select distinct new Map(to_char(model.tglPlanning,'yyyy-mm-dd') as tglPlanning,"
|
|
+"pegawai.id as pelamarId, "
|
|
+"pegawai.namaLengkap as namaPelamar, "
|
|
+"jenisKelamin.id as jenisKelaminId, "
|
|
+"jenisKelamin.jenisKelamin as jenisKelamin, "
|
|
+"pegawai.email as email, "
|
|
+"pegawai.noHandphone as noHandphone, "
|
|
+"jabatanLamar.id as posisiLamarId, "
|
|
+"jabatanLamar.namaJabatan as posisiLamar, "
|
|
+"model.nilaiScore as nilai, "
|
|
+"model.statusLulus as statusLulus) "
|
|
+"from PlanningRekrutmenSeleksiD model "
|
|
+"left join model.produkRs produkRs "
|
|
+"left join model.noPlanning noPlanning "
|
|
+"left join model.pegawai pegawai "
|
|
+"left join pegawai.jenisKelamin jenisKelamin "
|
|
+"left join pegawai.jabatanLamar jabatanLamar "
|
|
+"where produkRs.id = :jenisTestId and "
|
|
+ "to_char(model.tglPlanning,'mm-yyyy')=:periode and model.statusLulus=1")
|
|
List<Map<String,Object>> findDaftarPemalarByJenisTestId(@Param("jenisTestId")Integer jenisTestId,
|
|
@Param("periode")String periode);
|
|
|
|
@Query("select new Map ("
|
|
+"dokumen.id as dokumenId, "
|
|
+ "dokumen.namaJudulDokumen as namaDokumen,"
|
|
+ "dokumen.pathFile as pathFile) "
|
|
+"from Dokumen dokumen "
|
|
+ "where dokumen.id=:dokumenId")
|
|
Map<String,Object> getPelamarByDokumenId(@Param("dokumenId")Integer dokumenId);
|
|
|
|
}
|