Merge branch 'dev/pegawai/cuti' into dev/no-cron
This commit is contained in:
commit
bb20d132e9
@ -58,6 +58,10 @@ public final class Master {
|
||||
public static final Integer VISIT = 29;
|
||||
}
|
||||
|
||||
public static final class HariLibur {
|
||||
public static final Integer LIBUR_CB = 8;
|
||||
}
|
||||
|
||||
public static final class IndikatorKinerja {
|
||||
public static final Integer KEPATUHAN_PELAYANAN_MEDIS = 674;
|
||||
public static final Integer KETEPATAN_KEHADIRAN = 357;
|
||||
|
||||
@ -1,41 +1,41 @@
|
||||
package com.jasamedika.medifirst2000.dao;
|
||||
|
||||
import com.jasamedika.medifirst2000.entities.JatahCutiDanIzin;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
import org.springframework.data.repository.query.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Date;
|
||||
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.JatahCutiDanIzin;
|
||||
|
||||
@Repository("JatahCutiDanIzinDao")
|
||||
public interface JatahCutiDanIzinDao extends PagingAndSortingRepository<JatahCutiDanIzin, String> {
|
||||
public interface JatahCutiDanIzinDao extends JpaRepository<JatahCutiDanIzin, String> {
|
||||
|
||||
@Query("select jatahCuti " + "from JatahCutiDanIzin jatahCuti " + "left join jatahCuti.pegawai pegawai "
|
||||
+ "left join jatahCuti.komponenIndex komponenIndex "
|
||||
+ "where jatahCuti.tahun = :tahun and pegawai.id = :idPegawai " + "and komponenIndex.id = :komponenIndexId")
|
||||
public JatahCutiDanIzin getJatahCuti(@Param("tahun") String tahun, @Param("idPegawai") Integer idPegawai,
|
||||
JatahCutiDanIzin getJatahCuti(@Param("tahun") String tahun, @Param("idPegawai") Integer idPegawai,
|
||||
@Param("komponenIndexId") Integer komponenIndexId);
|
||||
|
||||
@Query("select jatahCuti " + "from JatahCutiDanIzin jatahCuti " + "left join jatahCuti.pegawai pegawai "
|
||||
+ "left join jatahCuti.komponenIndex komponenIndex "
|
||||
+ "where jatahCuti.tahun = :tahun and pegawai.id = :idPegawai "
|
||||
+ "and komponenIndex.id in (:komponenIndexId)")
|
||||
public JatahCutiDanIzin getJatahCuti(@Param("tahun") String tahun, @Param("idPegawai") Integer idPegawai,
|
||||
JatahCutiDanIzin getJatahCuti(@Param("tahun") String tahun, @Param("idPegawai") Integer idPegawai,
|
||||
@Param("komponenIndexId") List<Integer> komponenIndexId);
|
||||
|
||||
@Query("select coalesce(jatahCuti.value,0) " + "from JatahCutiDanIzin jatahCuti "
|
||||
+ "left join jatahCuti.pegawai pegawai " + "left join jatahCuti.komponenIndex komponenIndex "
|
||||
+ "where jatahCuti.tahun = :tahun and pegawai.id = :idPegawai " + "and komponenIndex.id = :komponenIndexId")
|
||||
public Integer getDataCuti(@Param("tahun") String tahun, @Param("idPegawai") Integer idPegawai,
|
||||
Integer getDataCuti(@Param("tahun") String tahun, @Param("idPegawai") Integer idPegawai,
|
||||
@Param("komponenIndexId") Integer komponenIndexId);
|
||||
|
||||
@Query("select jatahCuti.isTangguhkan " + "from JatahCutiDanIzin jatahCuti "
|
||||
+ "left join jatahCuti.pegawai pegawai " + "left join jatahCuti.komponenIndex komponenIndex "
|
||||
+ "where jatahCuti.tahun = :tahun and pegawai.id = :idPegawai " + "and komponenIndex.id = :komponenIndexId")
|
||||
public Boolean getPenangguhanSisaCuti(@Param("tahun") String tahun, @Param("idPegawai") Integer idPegawai,
|
||||
Boolean getPenangguhanSisaCuti(@Param("tahun") String tahun, @Param("idPegawai") Integer idPegawai,
|
||||
@Param("komponenIndexId") Integer komponenIndexId);
|
||||
|
||||
@Query("select new map(" + "jatahCuti.value as value, " + "jatahCuti.sisaCuti as sisaCuti, "
|
||||
@ -49,22 +49,7 @@ public interface JatahCutiDanIzinDao extends PagingAndSortingRepository<JatahCut
|
||||
+ "left join mapPegawai.unitKerjaPegawai unitKerja " + "where mapPegawai.pegawaiId = pegawai.id "
|
||||
+ "and mapPegawai.isPrimary is true " + "and mapPegawai.statusEnabled is true "
|
||||
+ "and komponenIndex.id = :komponenIndexId " + "order by pegawai.id, jatahCuti.tahun")
|
||||
public List<Map<String, Object>> getAllJatahCuti(@Param("komponenIndexId") Integer komponenIndexId);
|
||||
|
||||
@Query("select new map(" + "jatahCuti.noRec as noRec, " + "jatahCuti.komponenIndexId as komponenIndexId, "
|
||||
+ "jatahCuti.tahun as tahun, " + "jatahCuti.value as value, " + "jatahCuti.sisaCuti as sisaCuti, "
|
||||
+ "jatahCuti.cutiTerpakai as cutiTerpakai, " + "jatahCuti.isTangguhkan as isTangguhkan, "
|
||||
+ "pegawai.id as idPegawai, " + "pegawai.namaLengkap as namaPegawai, " + "pegawai.nipPns as nipPegawai, "
|
||||
+ "unitKerja.name as unitKerja," + "subUnitKerja.name as subUnitKerja) "
|
||||
+ "from JatahCutiDanIzin jatahCuti, MapPegawaiJabatanToUnitKerja mapPegawai "
|
||||
+ "left join jatahCuti.pegawai pegawai " + "left join jatahCuti.komponenIndex komponenIndex "
|
||||
+ "left join mapPegawai.subUnitKerjaPegawai subUnitKerja "
|
||||
+ "left join mapPegawai.unitKerjaPegawai unitKerja " + "where mapPegawai.pegawaiId = pegawai.id "
|
||||
+ "and mapPegawai.isPrimary is true " + "and mapPegawai.statusEnabled is true "
|
||||
+ "and pegawai.id = :pegawaiId " + "and komponenIndex.id = :komponenIndexId "
|
||||
+ "order by pegawai.id, jatahCuti.tahun")
|
||||
public List<Map<String, Object>> getAllJatahCuti(@Param("komponenIndexId") Integer komponenIndexId,
|
||||
@Param("pegawaiId") Integer pegawaiId);
|
||||
List<Map<String, Object>> getAllJatahCuti(@Param("komponenIndexId") Integer komponenIndexId);
|
||||
|
||||
@Query("select new map(" + "jatahCuti.noRec as noRec, " + "jatahCuti.komponenIndexId as komponenIndexId, "
|
||||
+ "komponenIndex.komponenIndex as komponenIndex, " + "jatahCuti.tahun as tahun, "
|
||||
@ -80,18 +65,18 @@ public interface JatahCutiDanIzinDao extends PagingAndSortingRepository<JatahCut
|
||||
+ "and cast(jatahCuti.tahun as int) >= cast(to_char(current_date,'yyyy') as int)-2 "
|
||||
+ "and pegawai.id = :pegawaiId " + "and komponenIndex.id in (:komponenIndexId) "
|
||||
+ "order by jatahCuti.tahun, komponenIndex.komponenIndex")
|
||||
public List<Map<String, Object>> getAllJatahCuti(@Param("komponenIndexId") List<Integer> komponenIndexId,
|
||||
List<Map<String, Object>> getAllJatahCuti(@Param("komponenIndexId") List<Integer> komponenIndexId,
|
||||
@Param("pegawaiId") Integer pegawaiId);
|
||||
|
||||
@Query("select l.tgl " + "from PlanningPegawaiStatus p " + "left join p.listTanggal l "
|
||||
+ "where p.statusEnabled is true and l.statusEnabled is true "
|
||||
+ "and p.approvalStatus = 1 and l.approvalStatus is true " + "and p.statusPegawaiPlanId = :idStatusPlan "
|
||||
+ "and p.pegawaiId = :idPegawai " + "and to_char(l.tgl, 'yyyy-MM-dd') = :tglCuti " + "order by l.tgl")
|
||||
public List<Date> getCutiTahunanDiTglCutiBersama(@Param("idStatusPlan") Integer idStatusPlan,
|
||||
List<Date> getCutiTahunanDiTglCutiBersama(@Param("idStatusPlan") Integer idStatusPlan,
|
||||
@Param("idPegawai") Integer idPegawai, @Param("tglCuti") String tglCuti);
|
||||
|
||||
@Query("select sum(jc.cutiTerpakai) from JatahCutiDanIzin jc "
|
||||
+ "where jc.pegawaiId = :pegawaiId and jc.tahun < :tahun")
|
||||
public Integer getHistoriCutiTerpakai(@Param("pegawaiId") Integer idPegawai, @Param("tahun") String tahun);
|
||||
Integer getHistoriCutiTerpakai(@Param("pegawaiId") Integer idPegawai, @Param("tahun") String tahun);
|
||||
|
||||
}
|
||||
|
||||
@ -1,6 +1,5 @@
|
||||
package com.jasamedika.medifirst2000.dao;
|
||||
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -14,52 +13,52 @@ import org.springframework.stereotype.Repository;
|
||||
import com.jasamedika.medifirst2000.entities.ListTanggalCuti;
|
||||
|
||||
@Repository("ListTanggalCutiDao")
|
||||
public interface ListTanggalCutiDao extends PagingAndSortingRepository<ListTanggalCuti, String>{
|
||||
public interface ListTanggalCutiDao extends PagingAndSortingRepository<ListTanggalCuti, String> {
|
||||
|
||||
@Modifying
|
||||
@Query("update ListTanggalCuti m set m.statusEnabled=false where m.planningPegawaiStatusId =:id")
|
||||
void deleteDatas(@Param("id") String id);
|
||||
|
||||
@Query("select distinct new Map(to_char(listTglCuti.tgl, 'yyyy') as tahun, "+
|
||||
"to_char(listTglCuti.tgl, 'MM') as bulan) "+
|
||||
"from ListTanggalCuti listTglCuti "+
|
||||
"where listTglCuti.statusEnabled is true "+
|
||||
"and listTglCuti.noRec in (:listNorec)")
|
||||
|
||||
@Query("select distinct new Map(to_char(listTglCuti.tgl, 'yyyy') as tahun, "
|
||||
+ "to_char(listTglCuti.tgl, 'MM') as bulan) " + "from ListTanggalCuti listTglCuti "
|
||||
+ "where listTglCuti.statusEnabled is true " + "and listTglCuti.noRec in (:listNorec)")
|
||||
List<Map<String, Object>> getListTglCutiByNorec(@Param("listNorec") List<String> listNorec);
|
||||
|
||||
@Query("select distinct new Map(to_char(kalender.tanggal, 'yyyy') as tahun,"+
|
||||
"to_char(kalender.tanggal, 'MM') as bulan) "+
|
||||
"from Kalender kalender "+
|
||||
"where kalender.statusEnabled is true "+
|
||||
"and kalender.id between :idKalAwal and :idKalAkhir "+
|
||||
"order by to_char(kalender.tanggal, 'yyyy'), to_char(kalender.tanggal, 'MM')")
|
||||
List<Map<String, Object>> getListTglCutiByNorec(@Param("idKalAwal") Integer idKalAwal, @Param("idKalAkhir") Integer idKalAkhir);
|
||||
|
||||
@Query("select to_char(listTglCuti.tgl, 'yyyy-MM-dd') "+
|
||||
"from ListTanggalCuti listTglCuti "+
|
||||
"where listTglCuti.statusEnabled is true "+
|
||||
"and listTglCuti.noRec in (:listNorec)")
|
||||
|
||||
@Query("select distinct new Map(to_char(kalender.tanggal, 'yyyy') as tahun,"
|
||||
+ "to_char(kalender.tanggal, 'MM') as bulan) " + "from Kalender kalender "
|
||||
+ "where kalender.statusEnabled is true " + "and kalender.id between :idKalAwal and :idKalAkhir "
|
||||
+ "order by to_char(kalender.tanggal, 'yyyy'), to_char(kalender.tanggal, 'MM')")
|
||||
List<Map<String, Object>> getListTglCutiByNorec(@Param("idKalAwal") Integer idKalAwal,
|
||||
@Param("idKalAkhir") Integer idKalAkhir);
|
||||
|
||||
@Query("select to_char(listTglCuti.tgl, 'yyyy-MM-dd') " + "from ListTanggalCuti listTglCuti "
|
||||
+ "where listTglCuti.statusEnabled is true " + "and listTglCuti.noRec in (:listNorec)")
|
||||
List<String> getListTglCutiByNorecDetail(@Param("listNorec") List<String> listNorec);
|
||||
|
||||
@Query("select kalender.id from Kalender kalender where kalender.statusEnabled is true and to_char(kalender.tanggal, 'yyyy-MM-dd') = :tglCuti")
|
||||
|
||||
@Query("select kalender.id " + "from Kalender kalender " + "where kalender.statusEnabled is true "
|
||||
+ "and to_char(kalender.tanggal, 'yyyy-MM-dd') = :tglCuti")
|
||||
Integer getIdKalenderByTglCuti(@Param("tglCuti") String tglCuti);
|
||||
|
||||
@Query("select mapStatus.shiftKerjaId "+
|
||||
"from MapStatusPegawaiToShiftKerja mapStatus "+
|
||||
"where mapStatus.statusEnabled is true "+
|
||||
"and mapStatus.statusPegawaiId = :idStatusExec "+
|
||||
"and mapStatus.kelompokShiftId = :idKelShift")
|
||||
|
||||
@Query("select mapStatus.shiftKerjaId " + "from MapStatusPegawaiToShiftKerja mapStatus "
|
||||
+ "where mapStatus.statusEnabled is true " + "and mapStatus.statusPegawaiId = :idStatusExec "
|
||||
+ "and mapStatus.kelompokShiftId = :idKelShift")
|
||||
Integer getMappingShiftKerja(@Param("idStatusExec") Integer idStatusExec, @Param("idKelShift") Integer idKelShift);
|
||||
|
||||
@Query("select pegawai.shiftKerjaId from Pegawai pegawai where pegawai.statusEnabled is true and pegawai.id = :idPegawai")
|
||||
|
||||
@Query("select pegawai.shiftKerjaId " + "from Pegawai pegawai " + "where pegawai.statusEnabled is true "
|
||||
+ "and pegawai.id = :idPegawai")
|
||||
Integer getKelShift(@Param("idPegawai") Integer idPegawai);
|
||||
|
||||
@Query("select listTgl.tgl "
|
||||
+ "from ListTanggalCuti listTgl "
|
||||
+ "left join listTgl.planningPegawaiStatus planning "
|
||||
+ "where planning.noRec = :noRec "
|
||||
+ "and planning.statusEnabled is true "
|
||||
|
||||
@Query("select listTgl.tgl " + "from ListTanggalCuti listTgl " + "left join listTgl.planningPegawaiStatus planning "
|
||||
+ "where planning.noRec = :noRec " + "and planning.statusEnabled is true "
|
||||
+ "and planning.approvalStatus <> 3")
|
||||
List<Date> getTglCuti(@Param("noRec") String noRec);
|
||||
|
||||
|
||||
@Query("select tc from ListTanggalCuti tc " + "inner join tc.planningPegawaiStatus ps "
|
||||
+ "where tc.statusEnabled is true " + "and ps.statusEnabled is true " + "and ps.noSkId is null "
|
||||
+ "and ps.approvalStatus not in (1, 3) " + "and ps.pegawaiId = :idPegawai "
|
||||
+ "and ps.statusPegawaiPlanId = :idJenisPermohonan " + "and tc.tgl between :tglAwal and :tglAkhir")
|
||||
List<ListTanggalCuti> notApprovedByPermohonan(@Param("idPegawai") Integer idPegawai,
|
||||
@Param("idJenisPermohonan") Integer idJenisPermohonan, @Param("tglAwal") Date tglAwal,
|
||||
@Param("tglAkhir") Date tglAkhir);
|
||||
|
||||
}
|
||||
|
||||
@ -1,43 +1,58 @@
|
||||
package com.jasamedika.medifirst2000.dao;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import com.jasamedika.medifirst2000.dto.PresensiHariLibur;
|
||||
import com.jasamedika.medifirst2000.entities.Kalender;
|
||||
import com.jasamedika.medifirst2000.entities.MapKalenderToHariLibur;
|
||||
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.Kalender;
|
||||
import com.jasamedika.medifirst2000.entities.MapKalenderToHariLibur;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Repository
|
||||
public interface MapKalenderToHariLiburDao extends PagingAndSortingRepository<MapKalenderToHariLibur, Integer> {
|
||||
|
||||
@Query("select new map (model.id as id, model.namaExternal as name, model.tanggal.tanggal as tanggal) from MapKalenderToHariLibur model where model.statusEnabled is true")
|
||||
public List<Map<String, Object>> getAllByStatusEnabled();
|
||||
|
||||
@Query("select model from Kalender model where model.statusEnabled is true and to_char(tanggal,'yyyy-MM-dd') = :tanggal")
|
||||
public Kalender getKalender(@Param("tanggal") String tgl);
|
||||
|
||||
@Query("select to_char(kalender.tanggal,'yyyy-MM-dd') "+
|
||||
"from MapKalenderToHariLibur mapLibur "+
|
||||
"inner join mapLibur.tanggal kalender "+
|
||||
"inner join mapLibur.hariLibur hariLibur "+
|
||||
"where hariLibur.id in (8,17) "+
|
||||
"and to_char(kalender.tanggal,'yyyy')=:tahun "+
|
||||
"and mapLibur.statusEnabled is true")
|
||||
public List<String> getTglCutiBersama(@Param("tahun") String tahun);
|
||||
|
||||
|
||||
@Query("select new map (model.id as id, model.namaExternal as name, model.tanggal.tanggal as tanggal) "
|
||||
+ "from MapKalenderToHariLibur model where model.statusEnabled is true")
|
||||
List<Map<String, Object>> getAllByStatusEnabled();
|
||||
|
||||
@Query("select model from Kalender model "
|
||||
+ "where model.statusEnabled is true and to_char(tanggal,'yyyy-MM-dd') = :tanggal")
|
||||
Kalender getKalender(@Param("tanggal") String tgl);
|
||||
|
||||
@Query("select to_char(kalender.tanggal,'yyyy-MM-dd') " + "from MapKalenderToHariLibur mapLibur "
|
||||
+ "inner join mapLibur.tanggal kalender " + "inner join mapLibur.hariLibur hariLibur "
|
||||
+ "where hariLibur.id in (8,17) " + "and to_char(kalender.tanggal,'yyyy')=:tahun "
|
||||
+ "and mapLibur.statusEnabled is true")
|
||||
List<String> getTglCutiBersama(@Param("tahun") String tahun);
|
||||
|
||||
@Query("select new Map(model.statusEnabled as statusEnabled,model.namaExternal as namaExternal,"
|
||||
+ "to_char(kalender.tanggal,'dd-MM-yyyy') as tanggal,to_char(kalender.tanggal,'yyyy-MM-dd') as tanggalId,"
|
||||
+ "model.reportDisplay as reportDisplay,model.id as id,model.kodeExternal as kodeExternal,"
|
||||
+ "hariLibur.id as hariLiburId,hariLibur.namaHariLibur as hariLiburName,"
|
||||
+ "model.noRec as noRec) "
|
||||
+ "from MapKalenderToHariLibur model "
|
||||
+ "inner join model.tanggal kalender "
|
||||
+ "inner join model.hariLibur hariLibur "
|
||||
+ "where model.statusEnabled is true "
|
||||
+ "hariLibur.id as hariLiburId,hariLibur.namaHariLibur as hariLiburName," + "model.noRec as noRec) "
|
||||
+ "from MapKalenderToHariLibur model " + "inner join model.tanggal kalender "
|
||||
+ "inner join model.hariLibur hariLibur " + "where model.statusEnabled is true "
|
||||
+ "and to_char(kalender.tanggal,'yyyy')>=:tahun")
|
||||
public List<Map<String, Object>> getMappingHariLibur(@Param("tahun") String tahun);
|
||||
List<Map<String, Object>> getMappingHariLibur(@Param("tahun") String tahun);
|
||||
|
||||
@Query("select distinct new com.jasamedika.medifirst2000.dto.PresensiHariLibur("
|
||||
+ "pg.id as idPegawai, pg.namaLengkap as namaLengkap, " + "kld.tanggal as tanggal, "
|
||||
+ "mkl.isCutiBersamaDitangguhkan as isCBDitangguhkan) "
|
||||
+ "from Pegawai pg, Habsen hab, MapKalenderToHariLibur mkl " + "inner join mkl.tanggal kld "
|
||||
+ "where pg.id = :idPegawai " + "and pg.idFinger = hab.empl_code "
|
||||
+ "and cast(hab.tr_date as date) = kld.tanggal " + "and mkl.hariLiburId = :idHariLibur "
|
||||
+ "and kld.tanggal between :tglAwal and :tglAkhir")
|
||||
List<PresensiHariLibur> getPresensiByTahun(@Param("idPegawai") Integer idPegawai,
|
||||
@Param("idHariLibur") Integer idHariLibur, @Param("tglAwal") Date tglAwal,
|
||||
@Param("tglAkhir") Date tglAkhir);
|
||||
|
||||
@Query("select mkl from MapKalenderToHariLibur mkl " + "inner join mkl.tanggal kld "
|
||||
+ "where mkl.statusEnabled is true " + "and kld.tanggal between :tglAwal and :tglAkhir "
|
||||
+ "and mkl.hariLiburId = :idHariLibur")
|
||||
List<MapKalenderToHariLibur> getByTahun(@Param("idHariLibur") Integer idHariLibur, @Param("tglAwal") Date tglAwal,
|
||||
@Param("tglAkhir") Date tglAkhir);
|
||||
|
||||
}
|
||||
|
||||
@ -1,673 +1,322 @@
|
||||
package com.jasamedika.medifirst2000.dao;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
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.PlanningPegawaiStatus;
|
||||
|
||||
@Repository("PlanningPegawaiStatusDao")
|
||||
public interface PlanningPegawaiStatusDao extends PagingAndSortingRepository<PlanningPegawaiStatus, String>{
|
||||
|
||||
@Query("select a.noPlanning "
|
||||
+ "from PlanningPegawaiStatus a "
|
||||
+ "where a.noPlanning LIKE %:kode% "
|
||||
public interface PlanningPegawaiStatusDao extends JpaRepository<PlanningPegawaiStatus, String> {
|
||||
|
||||
@Query("select a.noPlanning " + "from PlanningPegawaiStatus a " + "where a.noPlanning LIKE %:kode% "
|
||||
+ "order by a.noPlanning asc")
|
||||
List<String> noPlanning(@Param("kode") String kode);
|
||||
|
||||
@Query("select count(a.noPlanning) "
|
||||
+ "from PlanningPegawaiStatus a "
|
||||
+ "where a.noPlanning LIKE %:kode% ")
|
||||
Long countNoPlanning(@Param("kode") String kode) ;
|
||||
|
||||
@Query("select NEW Map ("
|
||||
+ "a.id as id, "
|
||||
+ "a.namaLengkap as namaLengkap,"
|
||||
+ "c.id as kategoriPegawaiId) "
|
||||
+ "from MapPegawaiJabatanToUnitKerja m "
|
||||
+ "left join m.pegawai a "
|
||||
+ "left join m.subUnitKerjaPegawai b "
|
||||
+ "left join m.unitKerjaPegawai e "
|
||||
+ "left join a.kategoryPegawai c "
|
||||
+ "left join a.statusPegawai d "
|
||||
+ "where m.isPrimary is true "
|
||||
+ "and m.statusEnabled is true "
|
||||
+ "and e.id=:id "
|
||||
+ "and c.id!=11 "
|
||||
@Query("select NEW Map (" + "a.id as id, " + "a.namaLengkap as namaLengkap," + "c.id as kategoriPegawaiId) "
|
||||
+ "from MapPegawaiJabatanToUnitKerja m " + "left join m.pegawai a " + "left join m.subUnitKerjaPegawai b "
|
||||
+ "left join m.unitKerjaPegawai e " + "left join a.kategoryPegawai c " + "left join a.statusPegawai d "
|
||||
+ "where m.isPrimary is true " + "and m.statusEnabled is true " + "and e.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.statusPegawai as statusPegawai) "
|
||||
+ "from StatusPegawai a "
|
||||
+ "where a.id=1 or "
|
||||
+ "a.id=24 or "
|
||||
+ "a.id=25 or "
|
||||
+ "a.id=26 or "
|
||||
+ "a.id=27 or "
|
||||
+ "a.id=28 or "
|
||||
List<Map<String, Object>> getListPegawai(@Param("id") Integer id);
|
||||
|
||||
@Query("select NEW Map (" + "a.id as id," + "a.statusPegawai as statusPegawai) " + "from StatusPegawai a "
|
||||
+ "where a.id=1 or " + "a.id=24 or " + "a.id=25 or " + "a.id=26 or " + "a.id=27 or " + "a.id=28 or "
|
||||
+ "a.id=29")
|
||||
List<Map<String, Object>> getListStatusPegawai();
|
||||
|
||||
@Query("select NEW Map ("
|
||||
+ "a.nipPns as nip,"
|
||||
+ "a.id as idPegawai,"
|
||||
+ "b.id as jabatanId,"
|
||||
+ "b.namaJabatan as jabatan,"
|
||||
+ "d.id as unitKerjaId,"
|
||||
+ "d.name as unitKerja,"
|
||||
+ "c.id as subUnitKerjaId,"
|
||||
+ "c.name as subUnitKerja,"
|
||||
+ "a.tglMasuk as tglMasuk,"
|
||||
+ "a.alamat as alamat,"
|
||||
+ "a.noHandphone as noHandphone,"
|
||||
+ "kategori.id as kategoriPegawaiId ) "
|
||||
+ "from MapPegawaiJabatanToUnitKerja m "
|
||||
+ "left join m.pegawai a "
|
||||
+ "left join m.jabatan b "
|
||||
+ "left join a.kategoryPegawai kategori "
|
||||
+ "left join m.subUnitKerjaPegawai c "
|
||||
+ "left join m.unitKerjaPegawai d "
|
||||
+ "where m.isPrimary is true "
|
||||
+ "and m.statusEnabled is true "
|
||||
|
||||
@Query("select NEW Map (" + "a.nipPns as nip," + "a.id as idPegawai," + "b.id as jabatanId,"
|
||||
+ "b.namaJabatan as jabatan," + "d.id as unitKerjaId," + "d.name as unitKerja," + "c.id as subUnitKerjaId,"
|
||||
+ "c.name as subUnitKerja," + "a.tglMasuk as tglMasuk," + "a.alamat as alamat,"
|
||||
+ "a.noHandphone as noHandphone," + "kategori.id as kategoriPegawaiId ) "
|
||||
+ "from MapPegawaiJabatanToUnitKerja m " + "left join m.pegawai a " + "left join m.jabatan b "
|
||||
+ "left join a.kategoryPegawai kategori " + "left join m.subUnitKerjaPegawai c "
|
||||
+ "left join m.unitKerjaPegawai d " + "where m.isPrimary is true " + "and m.statusEnabled is true "
|
||||
+ "and a.id=:id")
|
||||
Map<String, Object> getDataPermohonanStatus(
|
||||
@Param("id") Integer id);
|
||||
|
||||
@Query("select NEW Map(a.nipPns as nip,a.id as idPegawai,a.tglMasuk as tglMasuk,a.alamat as alamat,a.noHandphone as noHandphone,b.id as kategoriPegawaiId) "
|
||||
Map<String, Object> getDataPermohonanStatus(@Param("id") Integer id);
|
||||
|
||||
@Query("select NEW Map(a.nipPns as nip," + "a.id as idPegawai" + ",a.tglMasuk as tglMasuk" + ",a.alamat as alamat,"
|
||||
+ "a.noHandphone as noHandphone," + "b.id as kategoriPegawaiId) "
|
||||
+ "from Pegawai a left join a.kategoryPegawai b where a.id=:id")
|
||||
Map<String, Object> getDataMapPermohonanStatus(@Param("id") Integer id);
|
||||
|
||||
//--------------------------CUTI TAHUNAN----------------------
|
||||
@Query("select Count(a.id) "
|
||||
+ "from MapKalenderToHariLibur a "
|
||||
+ "left join a.hariLibur b "
|
||||
+ "left join a.tanggal c "
|
||||
+ "where b.id=:id and year(c.tanggal)=:thisYear")
|
||||
Long getCutiBersama(
|
||||
@Param("id") Integer id,
|
||||
@Param("thisYear") Integer thisYear);
|
||||
|
||||
//--------------------------CUTI MELAHIRKAN----------------------//
|
||||
|
||||
@Query("select NEW Map ("
|
||||
+ "a.id as id,"
|
||||
+ "a.kuotaTotalHari as kuotaTotalHari,"
|
||||
+ "a.kuotaMinHariTake as kuotaMinHariTake,"
|
||||
+ "a.qtyMaxTake as qtyMaxTake,"
|
||||
+ "a.isAkumulasi as isAkumulasi) "
|
||||
+ "from PegawaiSKCuti a "
|
||||
+ "left join a.statusPegawai b "
|
||||
@Query("select NEW Map (" + "a.id as id," + "a.kuotaTotalHari as kuotaTotalHari,"
|
||||
+ "a.kuotaMinHariTake as kuotaMinHariTake," + "a.qtyMaxTake as qtyMaxTake,"
|
||||
+ "a.isAkumulasi as isAkumulasi) " + "from PegawaiSKCuti a " + "left join a.statusPegawai b "
|
||||
+ "where b.id=:statusPegawaiId")
|
||||
Map<String, Object> getJatahCutiMelahirkan(
|
||||
@Param("statusPegawaiId") Integer statusPegawaiId);
|
||||
|
||||
//---------------------APPROVAL---------------------------------
|
||||
|
||||
@Query("select NEW Map ("
|
||||
+ "a.noRec as noRec,"
|
||||
+ "a.noPlanning as noPlanning,"
|
||||
+ "a.approvalStatus as approvalStatus,"
|
||||
+ "a.deskripsiStatusPegawaiPlan as deskripsiStatusPegawaiPlan,"
|
||||
+ "a.keteranganLainyaPlan as keteranganLainyaPlan,"
|
||||
+ "a.tglPengajuan as tglPengajuan,"
|
||||
+ "b.id as pegwaiId,"
|
||||
+ "b.namaLengkap as namaPegawai,"
|
||||
+ "c.id as statusPegawaiId,"
|
||||
+ "c.statusPegawai as statusPegawai,"
|
||||
+ "d.id as unitKerjaId,"
|
||||
+ "d.name as unitKerja,"
|
||||
+ "d.id as unitKerjaId,"
|
||||
+ "f.namaJabatan as namaJabatan) "
|
||||
+ "from PlanningPegawaiStatus a, MapPegawaiJabatanToUnitKerja m "
|
||||
+ "left join a.pegawai b "
|
||||
+ "left join a.statusPegawaiPlan c "
|
||||
+ "left join m.subUnitKerjaPegawai g "
|
||||
+ "left join m.unitKerjaPegawai d "
|
||||
+ "left join a.noSk e "
|
||||
+ "left join m.jabatan f "
|
||||
+ "where m.pegawaiId = b.id "
|
||||
+ "and m.isPrimary is true "
|
||||
+ "and m.statusEnabled is true "
|
||||
+ "and e.noRec is null "
|
||||
+ "and a.statusEnabled is true "
|
||||
+ "and d.id=:id "
|
||||
Map<String, Object> getJatahCutiMelahirkan(@Param("statusPegawaiId") Integer statusPegawaiId);
|
||||
|
||||
@Query("select NEW Map (" + "a.noRec as noRec," + "a.noPlanning as noPlanning,"
|
||||
+ "a.approvalStatus as approvalStatus," + "a.deskripsiStatusPegawaiPlan as deskripsiStatusPegawaiPlan,"
|
||||
+ "a.keteranganLainyaPlan as keteranganLainyaPlan," + "a.tglPengajuan as tglPengajuan,"
|
||||
+ "b.id as pegwaiId," + "b.namaLengkap as namaPegawai," + "c.id as statusPegawaiId,"
|
||||
+ "c.statusPegawai as statusPegawai," + "d.id as unitKerjaId," + "d.name as unitKerja,"
|
||||
+ "d.id as unitKerjaId," + "f.namaJabatan as namaJabatan) "
|
||||
+ "from PlanningPegawaiStatus a, MapPegawaiJabatanToUnitKerja m " + "left join a.pegawai b "
|
||||
+ "left join a.statusPegawaiPlan c " + "left join m.subUnitKerjaPegawai g "
|
||||
+ "left join m.unitKerjaPegawai d " + "left join a.noSk e " + "left join m.jabatan f "
|
||||
+ "where m.pegawaiId = b.id " + "and m.isPrimary is true " + "and m.statusEnabled is true "
|
||||
+ "and e.noRec is null " + "and a.statusEnabled is true " + "and d.id=:id "
|
||||
+ "and (c.id=1 or c.id=24 or c.id=25 or c.id=26 or c.id=27 or c.id=28 or c.id=29)")
|
||||
List<Map<String, Object>> getListPermohonanStatus(
|
||||
@Param("id") Integer id);
|
||||
|
||||
@Query("select NEW Map ("
|
||||
+ "a.noRec as noRec,"
|
||||
+ "a.noPlanning as noPlanning,"
|
||||
+ "a.approvalStatus as approvalStatus,"
|
||||
List<Map<String, Object>> getListPermohonanStatus(@Param("id") Integer id);
|
||||
|
||||
String planningStatusPegawai = "select NEW Map (" + "a.noRec as noRec," + "a.noPlanning as noPlanning,"
|
||||
+ "a.deskripsiStatusPegawaiPlan as deskripsiStatusPegawaiPlan,"
|
||||
+ "a.keteranganLainyaPlan as keteranganLainyaPlan,"
|
||||
+ "a.tglPengajuan as tglPengajuan,"
|
||||
+ "b.id as pegwaiId,"
|
||||
+ "b.namaLengkap as namaPegawai,"
|
||||
+ "c.id as statusPegawaiId,"
|
||||
+ "c.statusPegawai as statusPegawai,"
|
||||
+ "d.id as unitKerjaId,"
|
||||
+ "d.name as unitKerja,"
|
||||
+ "f.namaJabatan as namaJabatan) "
|
||||
+ "from PlanningPegawaiStatus a, MapPegawaiJabatanToUnitKerja m "
|
||||
+ "left join a.pegawai b "
|
||||
+ "left join a.statusPegawaiPlan c "
|
||||
+ "left join m.subUnitKerjaPegawai g "
|
||||
+ "left join m.unitKerjaPegawai d "
|
||||
+ "left join a.noSk e "
|
||||
+ "left join m.jabatan f "
|
||||
+ "where m.pegawaiId = b.id "
|
||||
+ "and m.isPrimary is true "
|
||||
+ "and m.statusEnabled is true "
|
||||
+ "and e.noRec is null "
|
||||
+ "and a.statusEnabled is true "
|
||||
+ "and b.id=:id ")
|
||||
List<Map<String, Object>> getListPermohonanStatusByPegawai2(
|
||||
@Param("id") Integer id);
|
||||
|
||||
String planningStatusPegawai = "select NEW Map ("
|
||||
+ "a.noRec as noRec,"
|
||||
+ "a.noPlanning as noPlanning,"
|
||||
+ "a.deskripsiStatusPegawaiPlan as deskripsiStatusPegawaiPlan,"
|
||||
+ "a.keteranganLainyaPlan as keteranganLainyaPlan,"
|
||||
+ "a.tglPengajuan as tglPengajuan,"
|
||||
+ "b.id as pegwaiId,"
|
||||
+ "a.approvalStatus as approvalStatus, "
|
||||
+ "b.namaLengkap as namaPegawai,"
|
||||
+ "c.id as statusPegawaiId,"
|
||||
+ "c.statusPegawai as statusPegawai,"
|
||||
+ "d.id as unitKerjaId,"
|
||||
+ "d.name as unitKerja,"
|
||||
+ "g.id as subUnitKerjaId,"
|
||||
+ "g.name as subUnitKerja,"
|
||||
+ "f.namaJabatan as namaJabatan) "
|
||||
+ "from PlanningPegawaiStatus a, MapPegawaiJabatanToUnitKerja m "
|
||||
+ "left join a.pegawai b "
|
||||
+ "left join a.statusPegawaiPlan c "
|
||||
+ "left join m.subUnitKerjaPegawai g "
|
||||
+ "left join m.unitKerjaPegawai d "
|
||||
+ "left join a.noSk e "
|
||||
+ "left join m.jabatan f "
|
||||
+ "where m.pegawaiId = b.id "
|
||||
+ "and m.isPrimary is true "
|
||||
+ "and m.statusEnabled is true "
|
||||
+ "and e.noRec is null "
|
||||
+ "and a.statusEnabled is true "
|
||||
+ "and a.approvalStatus =1 "
|
||||
+ "and b.id=:id ";
|
||||
|
||||
@Query( planningStatusPegawai
|
||||
+ "and "
|
||||
+ "(c.id=1 or "
|
||||
+ "c.id=24 or "
|
||||
+ "c.id=25 or "
|
||||
+ "c.id=26 or "
|
||||
+ "c.id=27 or "
|
||||
+ "c.id=28 or "
|
||||
+ "c.id=29)")
|
||||
List<Map<String, Object>> getListPermohonanStatusByPegawai(
|
||||
@Param("id") Integer id);
|
||||
|
||||
@Query(planningStatusPegawai
|
||||
+ "and "
|
||||
+ "c.statusPegawai=:statusPegawai and "
|
||||
+ "a.keteranganLainyaPlan as keteranganLainyaPlan," + "a.tglPengajuan as tglPengajuan,"
|
||||
+ "b.id as pegwaiId," + "a.approvalStatus as approvalStatus, " + "b.namaLengkap as namaPegawai,"
|
||||
+ "c.id as statusPegawaiId," + "c.statusPegawai as statusPegawai," + "d.id as unitKerjaId,"
|
||||
+ "d.name as unitKerja," + "g.id as subUnitKerjaId," + "g.name as subUnitKerja,"
|
||||
+ "f.namaJabatan as namaJabatan) " + "from PlanningPegawaiStatus a, MapPegawaiJabatanToUnitKerja m "
|
||||
+ "left join a.pegawai b " + "left join a.statusPegawaiPlan c " + "left join m.subUnitKerjaPegawai g "
|
||||
+ "left join m.unitKerjaPegawai d " + "left join a.noSk e " + "left join m.jabatan f "
|
||||
+ "where m.pegawaiId = b.id " + "and m.isPrimary is true " + "and m.statusEnabled is true "
|
||||
+ "and e.noRec is null " + "and a.statusEnabled is true " + "and a.approvalStatus =1 " + "and b.id=:id ";
|
||||
|
||||
@Query(planningStatusPegawai + "and " + "(c.id=1 or " + "c.id=24 or " + "c.id=25 or " + "c.id=26 or "
|
||||
+ "c.id=27 or " + "c.id=28 or " + "c.id=29)")
|
||||
List<Map<String, Object>> getListPermohonanStatusByPegawai(@Param("id") Integer id);
|
||||
|
||||
@Query(planningStatusPegawai + "and " + "c.statusPegawai=:statusPegawai and "
|
||||
+ "to_char(a.tglKeputusan,'yyyy')=to_char(current_timestamp,'yyyy') ")
|
||||
List<Map<String, Object>> getListPermohonanStatusByPegawai(@Param("id") Integer id, @Param("statusPegawai") String statusPegawai);
|
||||
|
||||
@Query(planningStatusPegawai
|
||||
+ "and "
|
||||
+ "c.statusPegawai=:statusPegawai")
|
||||
List<Map<String, Object>> getListPermohonanStatusByPegawaiAll(@Param("id") Integer id, @Param("statusPegawai") String statusPegawai);
|
||||
|
||||
@Query("select NEW Map ("
|
||||
+ "a.noRec as noRec,"
|
||||
+ "a.noPlanning as noPlanning,"
|
||||
List<Map<String, Object>> getListPermohonanStatusByPegawai(@Param("id") Integer id,
|
||||
@Param("statusPegawai") String statusPegawai);
|
||||
|
||||
@Query(planningStatusPegawai + "and " + "c.statusPegawai=:statusPegawai")
|
||||
List<Map<String, Object>> getListPermohonanStatusByPegawaiAll(@Param("id") Integer id,
|
||||
@Param("statusPegawai") String statusPegawai);
|
||||
|
||||
@Query("select NEW Map (" + "a.noRec as noRec," + "a.noPlanning as noPlanning,"
|
||||
+ "a.deskripsiStatusPegawaiPlan as deskripsiStatusPegawaiPlan,"
|
||||
+ "a.keteranganLainyaPlan as keteranganLainyaPlan,"
|
||||
+ "a.tglPengajuan as tglPengajuan,"
|
||||
+ "b.id as pegwaiId,"
|
||||
+ "a.approvalStatus as approvalStatus, "
|
||||
+ "b.namaLengkap as namaPegawai,"
|
||||
+ "c.id as statusPegawaiId,"
|
||||
+ "c.statusPegawai as statusPegawai,"
|
||||
+ "d.id as unitKerjaId,"
|
||||
+ "d.name as unitKerja,"
|
||||
+ "g.id as subUnitKerjaId,"
|
||||
+ "g.name as subUnitKerja,"
|
||||
+ "f.namaJabatan as namaJabatan) "
|
||||
+ "from PlanningPegawaiStatus a, MapPegawaiJabatanToUnitKerja m "
|
||||
+ "left join a.pegawai b "
|
||||
+ "left join a.statusPegawaiPlan c "
|
||||
+ "left join a.noSk e "
|
||||
+ "left join m.jabatan f "
|
||||
+ "left join m.subUnitKerjaPegawai g "
|
||||
+ "left join m.unitKerjaPegawai d "
|
||||
+ "where m.pegawaiId = b.id "
|
||||
+ "and m.isPrimary is true "
|
||||
+ "and m.statusEnabled is true "
|
||||
+ "and e.noRec is null "
|
||||
+ "and a.statusEnabled is true "
|
||||
+ "and a.approvalStatus =1 "
|
||||
+ "a.keteranganLainyaPlan as keteranganLainyaPlan," + "a.tglPengajuan as tglPengajuan,"
|
||||
+ "b.id as pegwaiId," + "a.approvalStatus as approvalStatus, " + "b.namaLengkap as namaPegawai,"
|
||||
+ "c.id as statusPegawaiId," + "c.statusPegawai as statusPegawai," + "d.id as unitKerjaId,"
|
||||
+ "d.name as unitKerja," + "g.id as subUnitKerjaId," + "g.name as subUnitKerja,"
|
||||
+ "f.namaJabatan as namaJabatan) " + "from PlanningPegawaiStatus a, MapPegawaiJabatanToUnitKerja m "
|
||||
+ "left join a.pegawai b " + "left join a.statusPegawaiPlan c " + "left join a.noSk e "
|
||||
+ "left join m.jabatan f " + "left join m.subUnitKerjaPegawai g " + "left join m.unitKerjaPegawai d "
|
||||
+ "where m.pegawaiId = b.id " + "and m.isPrimary is true " + "and m.statusEnabled is true "
|
||||
+ "and e.noRec is null " + "and a.statusEnabled is true " + "and a.approvalStatus =1 "
|
||||
+ "and (c.id=1 or c.id=24 or c.id=25 or c.id=26 or c.id=27 or c.id=28 or c.id=29)")
|
||||
List<Map<String, Object>> getListPermohonanStatusAll();
|
||||
|
||||
@Query("select NEW Map ("
|
||||
+ "a.noRec as noRec,"
|
||||
+ "a.noPlanning as noPlanning,"
|
||||
|
||||
@Query("select NEW Map (" + "a.noRec as noRec," + "a.noPlanning as noPlanning,"
|
||||
+ "a.deskripsiStatusPegawaiPlan as deskripsiStatusPegawaiPlan,"
|
||||
+ "a.keteranganLainyaPlan as keteranganLainyaPlan,"
|
||||
+ "a.deskripsiStatusPegawaiExec as deskripsiStatusPegawaiExec,"
|
||||
+ "a.keteranganLainyaExec as keteranganLainyaExec,"
|
||||
+ "a.tglPengajuan as tglPengajuan,"
|
||||
+ "a.tglKeputusan as tglKeputusan,"
|
||||
+ "a.approvalStatus as approvalStatus,"
|
||||
+ "b.id as pegwaiId,"
|
||||
+ "b.namaLengkap as namaPegawai,"
|
||||
+ "b.nipPns as nip,"
|
||||
+ "c.id as statusPegawaiId,"
|
||||
+ "c.statusPegawai as statusPegawai,"
|
||||
+ "d.id as unitKerjaId,"
|
||||
+ "d.name as unitKerja,"
|
||||
+ "f.namaJabatan as namaJabatan) "
|
||||
+ "from PlanningPegawaiStatus a, MapPegawaiJabatanToUnitKerja m "
|
||||
+ "left join a.pegawai b "
|
||||
+ "left join a.statusPegawaiPlan c "
|
||||
+ "left join m.subUnitKerjaPegawai g "
|
||||
+ "left join m.unitKerjaPegawai d "
|
||||
+ "left join a.noSk e "
|
||||
+ "left join m.jabatan f "
|
||||
+ "where m.pegawaiId = b.id "
|
||||
+ "and m.isPrimary is true "
|
||||
+ "and m.statusEnabled is true "
|
||||
+ "and e.noRec is null "
|
||||
+ "and (c.id=1 or c.id=24 or c.id=25 or c.id=26 or c.id=27 or c.id=28 or c.id=29)")
|
||||
+ "a.keteranganLainyaExec as keteranganLainyaExec," + "a.tglPengajuan as tglPengajuan,"
|
||||
+ "a.tglKeputusan as tglKeputusan," + "a.approvalStatus as approvalStatus," + "b.id as pegwaiId,"
|
||||
+ "b.namaLengkap as namaPegawai," + "b.nipPns as nip," + "c.id as statusPegawaiId,"
|
||||
+ "c.statusPegawai as statusPegawai," + "d.id as unitKerjaId," + "d.name as unitKerja,"
|
||||
+ "f.namaJabatan as namaJabatan) " + "from PlanningPegawaiStatus a, MapPegawaiJabatanToUnitKerja m "
|
||||
+ "left join a.pegawai b " + "left join a.statusPegawaiPlan c " + "left join m.subUnitKerjaPegawai g "
|
||||
+ "left join m.unitKerjaPegawai d " + "left join a.noSk e " + "left join m.jabatan f "
|
||||
+ "where m.pegawaiId = b.id " + "and m.isPrimary is true " + "and m.statusEnabled is true "
|
||||
+ "and e.noRec is null " + "and (c.id=1 or c.id=24 or c.id=25 or c.id=26 or c.id=27 or c.id=28 or c.id=29)")
|
||||
List<Map<String, Object>> getApprovalStatus();
|
||||
|
||||
@Query("select NEW Map ("
|
||||
+ "b.id as id) "
|
||||
+ "from Pegawai a "
|
||||
+ "left join a.shiftKerja b "
|
||||
+ "where a.id=:id")
|
||||
Map<String, Object> getKelompokShift(
|
||||
@Param("id") Integer id);
|
||||
|
||||
@Query("select NEW Map ("
|
||||
+ "a.id as id,"
|
||||
+ "a.factorRate as factorRate,"
|
||||
+ "a.operatorFactorRate as operatorFactorRate,"
|
||||
+ "a.komponenIndex as komponenIndex) "
|
||||
+ "from KomponenIndex a "
|
||||
+ "where a.id=:id")
|
||||
Map<String, Object> getKomponenIndex(
|
||||
@Param("id") Integer id);
|
||||
|
||||
|
||||
@Query("select pegawai.id "+
|
||||
"from PegawaiSisaCuti psc "+
|
||||
"left join psc.pegawai pegawai "+
|
||||
"where psc.sisaCuti=:sisaCuti")
|
||||
List<Integer> getIdPegawai(
|
||||
@Param("sisaCuti") Integer sisaCuti);
|
||||
|
||||
@Query("select count(jadwalKerja.id) "+
|
||||
"from PegawaiJadwalKerja jadwalKerja "+
|
||||
"left join jadwalKerja.pegawai pegawai "+
|
||||
"left join jadwalKerja.tanggal kalender "+
|
||||
"left join jadwalKerja.shift shift "+
|
||||
"where to_char(kalender.tanggal,'yyyy-MM-dd') between :startDate and :endDate "+
|
||||
"and shift.id not in (:listKomponenIndexId) "+
|
||||
"and pegawai.id = :pegawaiId")
|
||||
Integer getDayHadir(@Param("pegawaiId") Integer pegawaiId,@Param("listKomponenIndexId") List<Integer> listKomponenIndexId,@Param("startDate") String startDate,@Param("endDate") String endDate);
|
||||
|
||||
@Query("select new map (list.noRec as noRec, list.tgl as tgl) from ListTanggalCuti list where list.planningPegawaiStatusId = :noRec and list.statusEnabled is true order by list.tgl asc")
|
||||
List<Map<String,Object>> getListTanggalCuti(@Param("noRec") String noRec);
|
||||
|
||||
@Query("select new map (list.noRec as noRec, list.tgl as tgl) from ListTanggalCuti list where list.approvalStatus is true and list.planningPegawaiStatusId = :noRec and list.statusEnabled is true order by list.tgl")
|
||||
List<Map<String,Object>> getListTanggalCutiApproved(@Param("noRec") String noRec);
|
||||
|
||||
@Query("select list.tgl as tgl "
|
||||
+ "from ListTanggalCuti list "
|
||||
+ "where list.planningPegawaiStatusId in (:listNorec) "
|
||||
+ "and list.statusEnabled is true "
|
||||
+ "and list.tgl in (:listTgl) "
|
||||
+ "and list.approvalStatus is true "
|
||||
+ "and list.planningPegawaiStatus.approvalStatus = 1")
|
||||
List<Date> getListAllTanggalCutiApproved(@Param("listNorec") List<String> listNorec, @Param("listTgl") List<Date> listTgl);
|
||||
|
||||
@Query("select list.tgl as tgl "
|
||||
+ "from ListTanggalCuti list "
|
||||
+ "where list.planningPegawaiStatusId in (:listNorec) "
|
||||
+ "and list.statusEnabled is true "
|
||||
+ "and list.tgl in (:listTgl) "
|
||||
+ "and list.planningPegawaiStatus.approvalStatus = 0")
|
||||
List<Date> getListAllTanggalCutiNotYetApprove(@Param("listNorec") List<String> listNorec, @Param("listTgl") List<Date> listTgl);
|
||||
|
||||
@Query("select distinct new Map (tglCuti.tgl as tglCuti) "+
|
||||
"from MapPegawaiJabatanToUnitKerja mapPegawaiPelimpah, "+
|
||||
"PlanningPegawaiStatus planningCuti "+
|
||||
"left join mapPegawaiPelimpah.pegawai pegawaiPelimpah "+
|
||||
"left join planningCuti.listTanggal tglCuti "+
|
||||
"where mapPegawaiPelimpah.pegawaiId = planningCuti.pegawaiId "+
|
||||
"and planningCuti.pegawaiId = pegawaiPelimpah.id "+
|
||||
"and planningCuti.noRec = :noRecPlanning "+
|
||||
"and pegawaiPelimpah.id = :idPegawaiPelimpah "+
|
||||
"and mapPegawaiPelimpah.statusEnabled is true "+
|
||||
"and planningCuti.statusEnabled is true "+
|
||||
"and pegawaiPelimpah.statusEnabled is true "+
|
||||
"and tglCuti.statusEnabled is true "+
|
||||
"order by tglCuti.tgl asc")
|
||||
public List<Map<String, Object>> getListTglCutiPelimpah(@Param("noRecPlanning") String noRecPlanning, @Param("idPegawaiPelimpah") Integer idPegawaiPelimpah);
|
||||
|
||||
// @Query("select new Map (pegawaiPelimpah.namaLengkap as namaPegawai, "+
|
||||
// "pegawaiPelimpah.nipPns as nipPegawai, "+
|
||||
// "jabatanPelimpah.namaJabatan as jabatanPegawai, "+
|
||||
// "atasanLangsung.namaLengkap as namaAtasanLangsung, "+
|
||||
// "atasanLangsung.nipPns as nipAtasanLangsung) "+
|
||||
// "from MapPegawaiJabatanToUnitKerja mapPegawaiPelimpah, "+
|
||||
// "MappingPegawaiToAtasan mapAtasan "+
|
||||
// "left join mapPegawaiPelimpah.pegawai pegawaiPelimpah "+
|
||||
// "left join mapPegawaiPelimpah.jabatan jabatanPelimpah "+
|
||||
// "left join mapAtasan.atasanLangsung atasanLangsung "+
|
||||
// "where mapAtasan.pegawai = pegawaiPelimpah "+
|
||||
// "and mapPegawaiPelimpah.pegawai = mapAtasan.pegawai "+
|
||||
// "and pegawaiPelimpah.id = :idPegawaiPelimpah "+
|
||||
// "and mapPegawaiPelimpah.jabatanId = :idJabatanPelimpah "+
|
||||
// "and mapPegawaiPelimpah.statusEnabled is true "+
|
||||
// "and mapAtasan.statusEnabled is true "+
|
||||
// "and pegawaiPelimpah.statusEnabled is true "+
|
||||
// "and jabatanPelimpah.statusEnabled is true "+
|
||||
// "and atasanLangsung.statusEnabled is true")
|
||||
@Query("select new Map (pegawaiPelimpah.namaLengkap as namaPegawai, "+
|
||||
"pegawaiPelimpah.nipPns as nipPegawai, "+
|
||||
"jabatanPelimpah.namaJabatan as jabatanPegawai, "+
|
||||
"atasanLangsung.namaLengkap as namaAtasanLangsung, "+
|
||||
"atasanLangsung.nipPns as nipAtasanLangsung) "+
|
||||
"from MapPegawaiJabatanToUnitKerja mapPegawaiPelimpah "+
|
||||
"left join mapPegawaiPelimpah.pegawai pegawaiPelimpah "+
|
||||
"left join mapPegawaiPelimpah.jabatan jabatanPelimpah "+
|
||||
"left join mapPegawaiPelimpah.atasanLangsung atasanLangsung "+
|
||||
"where pegawaiPelimpah.id = :idPegawaiPelimpah "+
|
||||
"and mapPegawaiPelimpah.jabatanId = :idJabatanPelimpah "+
|
||||
"and mapPegawaiPelimpah.statusEnabled is true "+
|
||||
"and pegawaiPelimpah.statusEnabled is true "+
|
||||
"and jabatanPelimpah.statusEnabled is true "+
|
||||
"and atasanLangsung.statusEnabled is true")
|
||||
public Map<String, Object> getDataPelimpah(@Param("idPegawaiPelimpah") Integer idPegawaiPelimpah, @Param("idJabatanPelimpah") Integer idJabatanPelimpah);
|
||||
|
||||
@Query("select new Map(pegawaiDilimpah.namaLengkap as namaPegawai, "+
|
||||
"pegawaiDilimpah.nipPns as nipPegawai, "+
|
||||
"coalesce(pangkatPegawaiDilimpah.namaPangkat, '-') as pangkatPegawai, "+
|
||||
"coalesce(golonganPegawaiDilimpah.name, '-') as golonganPegawai, "+
|
||||
"jabatanPegawaiDilimpah.namaJabatan as jabatanPegawai) "+
|
||||
"from MapPegawaiJabatanToUnitKerja mapPegawaiDilimpah "+
|
||||
"left join mapPegawaiDilimpah.pegawai pegawaiDilimpah "+
|
||||
"left join mapPegawaiDilimpah.jabatan jabatanPegawaiDilimpah "+
|
||||
"left join pegawaiDilimpah.pangkat pangkatPegawaiDilimpah "+
|
||||
"left join pegawaiDilimpah.Golongan golonganPegawaiDilimpah "+
|
||||
"where pegawaiDilimpah.id = :idPegawaiDilimpah "+
|
||||
"and mapPegawaiDilimpah.statusEnabled is true "+
|
||||
"and pegawaiDilimpah.statusEnabled is true "+
|
||||
"and jabatanPegawaiDilimpah.statusEnabled is true "+
|
||||
// "and pangkatPegawaiDilimpah.statusEnabled is true "+
|
||||
// "and golonganPegawaiDilimpah.statusEnabled is true "+
|
||||
"and mapPegawaiDilimpah.isPrimary is true")
|
||||
public Map<String, Object> getDataDilimpah(@Param("idPegawaiDilimpah") Integer idPegawaiDilimpah);
|
||||
|
||||
@Query("select count(l.tgl) from PlanningPegawaiStatus p "
|
||||
+ "left join p.listTanggal l "
|
||||
+ "where p.statusEnabled is true "
|
||||
+ "and l.statusEnabled is true "
|
||||
|
||||
@Query("select NEW Map (" + "b.id as id) " + "from Pegawai a " + "left join a.shiftKerja b " + "where a.id=:id")
|
||||
Map<String, Object> getKelompokShift(@Param("id") Integer id);
|
||||
|
||||
@Query("select NEW Map (" + "a.id as id," + "a.factorRate as factorRate,"
|
||||
+ "a.operatorFactorRate as operatorFactorRate," + "a.komponenIndex as komponenIndex) "
|
||||
+ "from KomponenIndex a " + "where a.id=:id")
|
||||
Map<String, Object> getKomponenIndex(@Param("id") Integer id);
|
||||
|
||||
@Query("select new map (list.noRec as noRec, list.tgl as tgl) " + "from ListTanggalCuti list "
|
||||
+ "where list.planningPegawaiStatusId = :noRec " + "and list.statusEnabled is true "
|
||||
+ "order by list.tgl asc")
|
||||
List<Map<String, Object>> getListTanggalCuti(@Param("noRec") String noRec);
|
||||
|
||||
@Query("select new map (list.noRec as noRec, list.tgl as tgl) " + "from ListTanggalCuti list "
|
||||
+ "where list.approvalStatus is true " + "and list.planningPegawaiStatusId = :noRec"
|
||||
+ " and list.statusEnabled is true " + "order by list.tgl")
|
||||
List<Map<String, Object>> getListTanggalCutiApproved(@Param("noRec") String noRec);
|
||||
|
||||
@Query("select distinct new Map (tglCuti.tgl as tglCuti) "
|
||||
+ "from MapPegawaiJabatanToUnitKerja mapPegawaiPelimpah, " + "PlanningPegawaiStatus planningCuti "
|
||||
+ "left join mapPegawaiPelimpah.pegawai pegawaiPelimpah " + "left join planningCuti.listTanggal tglCuti "
|
||||
+ "where mapPegawaiPelimpah.pegawaiId = planningCuti.pegawaiId "
|
||||
+ "and planningCuti.pegawaiId = pegawaiPelimpah.id " + "and planningCuti.noRec = :noRecPlanning "
|
||||
+ "and pegawaiPelimpah.id = :idPegawaiPelimpah " + "and mapPegawaiPelimpah.statusEnabled is true "
|
||||
+ "and planningCuti.statusEnabled is true " + "and pegawaiPelimpah.statusEnabled is true "
|
||||
+ "and tglCuti.statusEnabled is true " + "order by tglCuti.tgl asc")
|
||||
List<Map<String, Object>> getListTglCutiPelimpah(@Param("noRecPlanning") String noRecPlanning,
|
||||
@Param("idPegawaiPelimpah") Integer idPegawaiPelimpah);
|
||||
|
||||
@Query("select new Map (pegawaiPelimpah.namaLengkap as namaPegawai, " + "pegawaiPelimpah.nipPns as nipPegawai, "
|
||||
+ "jabatanPelimpah.namaJabatan as jabatanPegawai, " + "atasanLangsung.namaLengkap as namaAtasanLangsung, "
|
||||
+ "atasanLangsung.nipPns as nipAtasanLangsung) " + "from MapPegawaiJabatanToUnitKerja mapPegawaiPelimpah "
|
||||
+ "left join mapPegawaiPelimpah.pegawai pegawaiPelimpah "
|
||||
+ "left join mapPegawaiPelimpah.jabatan jabatanPelimpah "
|
||||
+ "left join mapPegawaiPelimpah.atasanLangsung atasanLangsung "
|
||||
+ "where pegawaiPelimpah.id = :idPegawaiPelimpah "
|
||||
+ "and mapPegawaiPelimpah.jabatanId = :idJabatanPelimpah " + "and mapPegawaiPelimpah.statusEnabled is true "
|
||||
+ "and pegawaiPelimpah.statusEnabled is true " + "and jabatanPelimpah.statusEnabled is true "
|
||||
+ "and atasanLangsung.statusEnabled is true")
|
||||
Map<String, Object> getDataPelimpah(@Param("idPegawaiPelimpah") Integer idPegawaiPelimpah,
|
||||
@Param("idJabatanPelimpah") Integer idJabatanPelimpah);
|
||||
|
||||
@Query("select new Map(pegawaiDilimpah.namaLengkap as namaPegawai, " + "pegawaiDilimpah.nipPns as nipPegawai, "
|
||||
+ "coalesce(pangkatPegawaiDilimpah.namaPangkat, '-') as pangkatPegawai, "
|
||||
+ "coalesce(golonganPegawaiDilimpah.name, '-') as golonganPegawai, "
|
||||
+ "jabatanPegawaiDilimpah.namaJabatan as jabatanPegawai) "
|
||||
+ "from MapPegawaiJabatanToUnitKerja mapPegawaiDilimpah "
|
||||
+ "left join mapPegawaiDilimpah.pegawai pegawaiDilimpah "
|
||||
+ "left join mapPegawaiDilimpah.jabatan jabatanPegawaiDilimpah "
|
||||
+ "left join pegawaiDilimpah.pangkat pangkatPegawaiDilimpah "
|
||||
+ "left join pegawaiDilimpah.Golongan golonganPegawaiDilimpah "
|
||||
+ "where pegawaiDilimpah.id = :idPegawaiDilimpah " + "and mapPegawaiDilimpah.statusEnabled is true "
|
||||
+ "and pegawaiDilimpah.statusEnabled is true " + "and jabatanPegawaiDilimpah.statusEnabled is true "
|
||||
+ "and mapPegawaiDilimpah.isPrimary is true")
|
||||
Map<String, Object> getDataDilimpah(@Param("idPegawaiDilimpah") Integer idPegawaiDilimpah);
|
||||
|
||||
@Query("select count(l.tgl) from PlanningPegawaiStatus p " + "left join p.listTanggal l "
|
||||
+ "where p.statusEnabled is true " + "and l.statusEnabled is true "
|
||||
+ "and p.approvalStatus = 0 and l.approvalStatus is null "
|
||||
+ "and p.pegawaiId = :idPegawai and p.statusPegawaiPlanId = :idPlan")
|
||||
// + "and to_char(l.tgl,'yyyy') = to_char(current_date,'yyyy')")
|
||||
public Integer getJumlahPengajuanDiprosesByPegawai(@Param("idPegawai") Integer idPegawai, @Param("idPlan") Integer idPlan);
|
||||
|
||||
@Query("select count(l.tgl) from PlanningPegawaiStatus p "
|
||||
+ "left join p.listTanggal l "
|
||||
+ "where p.statusEnabled is true "
|
||||
+ "and l.statusEnabled is true "
|
||||
Integer getJumlahPengajuanDiprosesByPegawai(@Param("idPegawai") Integer idPegawai, @Param("idPlan") Integer idPlan);
|
||||
|
||||
@Query("select count(l.tgl) from PlanningPegawaiStatus p " + "left join p.listTanggal l "
|
||||
+ "where p.statusEnabled is true " + "and l.statusEnabled is true "
|
||||
+ "and p.approvalStatus = 0 and l.approvalStatus is null "
|
||||
+ "and p.pegawaiId = :idPegawai and p.statusPegawaiPlanId = :idPlan "
|
||||
+ "and to_char(l.tgl,'yyyy') = to_char(current_date,'yyyy')")
|
||||
public Integer getJumlahPengajuanDiprosesTahunIniByPegawai(@Param("idPegawai") Integer idPegawai, @Param("idPlan") Integer idPlan);
|
||||
|
||||
@Query("select count(l.tgl) from PlanningPegawaiStatus p "
|
||||
+ "left join p.listTanggal l "
|
||||
+ "where p.statusEnabled is true "
|
||||
+ "and l.statusEnabled is true "
|
||||
Integer getJumlahPengajuanDiprosesTahunIniByPegawai(@Param("idPegawai") Integer idPegawai,
|
||||
@Param("idPlan") Integer idPlan);
|
||||
|
||||
@Query("select count(l.tgl) from PlanningPegawaiStatus p " + "left join p.listTanggal l "
|
||||
+ "where p.statusEnabled is true " + "and l.statusEnabled is true "
|
||||
+ "and p.approvalStatus = 0 and l.approvalStatus is null "
|
||||
+ "and p.pegawaiId = :idPegawai and p.statusPegawaiPlanId = :idPlan "
|
||||
+ "and to_char(l.tgl,'yyyy') > to_char(current_date,'yyyy')")
|
||||
public Integer getJumlahPengajuanDiprosesTahunDepanByPegawai(@Param("idPegawai") Integer idPegawai, @Param("idPlan") Integer idPlan);
|
||||
|
||||
@Query("select count(l.tgl) from PlanningPegawaiStatus p "
|
||||
+ "left join p.listTanggal l "
|
||||
+ "where p.statusEnabled is true "
|
||||
+ "and l.statusEnabled is true "
|
||||
+ "and p.approvalStatus = 0 and l.approvalStatus is null "
|
||||
+ "and p.pegawaiId = :idPegawai "
|
||||
+ "and p.noPlanning <> :noPlanning "
|
||||
+ "and p.statusPegawaiPlanId = :idPlan")
|
||||
// + "and to_char(l.tgl,'yyyy') = to_char(current_date,'yyyy')")
|
||||
public Integer getJumlahPengajuanDiprosesByPegawai(@Param("idPegawai") Integer idPegawai, @Param("idPlan") Integer idPlan, @Param("noPlanning") String noPlanning);
|
||||
|
||||
@Query("select count(l.tgl) from PlanningPegawaiStatus p "
|
||||
+ "left join p.listTanggal l "
|
||||
+ "where p.statusEnabled is true "
|
||||
+ "and l.statusEnabled is true "
|
||||
+ "and p.approvalStatus = 0 and l.approvalStatus is null "
|
||||
+ "and p.pegawaiId = :idPegawai "
|
||||
+ "and p.noPlanning <> :noPlanning "
|
||||
+ "and p.statusPegawaiPlanId = :idPlan "
|
||||
Integer getJumlahPengajuanDiprosesTahunDepanByPegawai(@Param("idPegawai") Integer idPegawai,
|
||||
@Param("idPlan") Integer idPlan);
|
||||
|
||||
@Query("select count(l.tgl) from PlanningPegawaiStatus p " + "left join p.listTanggal l "
|
||||
+ "where p.statusEnabled is true " + "and l.statusEnabled is true "
|
||||
+ "and p.approvalStatus = 0 and l.approvalStatus is null " + "and p.pegawaiId = :idPegawai "
|
||||
+ "and p.noPlanning <> :noPlanning " + "and p.statusPegawaiPlanId = :idPlan")
|
||||
Integer getJumlahPengajuanDiprosesByPegawai(@Param("idPegawai") Integer idPegawai, @Param("idPlan") Integer idPlan,
|
||||
@Param("noPlanning") String noPlanning);
|
||||
|
||||
@Query("select count(l.tgl) from PlanningPegawaiStatus p " + "left join p.listTanggal l "
|
||||
+ "where p.statusEnabled is true " + "and l.statusEnabled is true "
|
||||
+ "and p.approvalStatus = 0 and l.approvalStatus is null " + "and p.pegawaiId = :idPegawai "
|
||||
+ "and p.noPlanning <> :noPlanning " + "and p.statusPegawaiPlanId = :idPlan "
|
||||
+ "and to_char(l.tgl,'yyyy') = to_char(current_date,'yyyy')")
|
||||
public Integer getJumlahPengajuanDiprosesTahunIniByPegawai(@Param("idPegawai") Integer idPegawai, @Param("idPlan") Integer idPlan, @Param("noPlanning") String noPlanning);
|
||||
|
||||
@Query("select count(l.tgl) from PlanningPegawaiStatus p "
|
||||
+ "left join p.listTanggal l "
|
||||
+ "where p.statusEnabled is true "
|
||||
+ "and l.statusEnabled is true "
|
||||
+ "and p.approvalStatus = 0 and l.approvalStatus is null "
|
||||
+ "and p.pegawaiId = :idPegawai "
|
||||
+ "and p.noPlanning <> :noPlanning "
|
||||
+ "and p.statusPegawaiPlanId = :idPlan "
|
||||
Integer getJumlahPengajuanDiprosesTahunIniByPegawai(@Param("idPegawai") Integer idPegawai,
|
||||
@Param("idPlan") Integer idPlan, @Param("noPlanning") String noPlanning);
|
||||
|
||||
@Query("select count(l.tgl) from PlanningPegawaiStatus p " + "left join p.listTanggal l "
|
||||
+ "where p.statusEnabled is true " + "and l.statusEnabled is true "
|
||||
+ "and p.approvalStatus = 0 and l.approvalStatus is null " + "and p.pegawaiId = :idPegawai "
|
||||
+ "and p.noPlanning <> :noPlanning " + "and p.statusPegawaiPlanId = :idPlan "
|
||||
+ "and to_char(l.tgl,'yyyy') > to_char(current_date,'yyyy')")
|
||||
public Integer getJumlahPengajuanDiprosesTahunDepanByPegawai(@Param("idPegawai") Integer idPegawai, @Param("idPlan") Integer idPlan, @Param("noPlanning") String noPlanning);
|
||||
|
||||
@Query("select NEW Map (a.noRec as noRec, "
|
||||
+ "a.statusEnabled as statusEnabled, "
|
||||
+ "a.noPlanning as noPlanning, "
|
||||
Integer getJumlahPengajuanDiprosesTahunDepanByPegawai(@Param("idPegawai") Integer idPegawai,
|
||||
@Param("idPlan") Integer idPlan, @Param("noPlanning") String noPlanning);
|
||||
|
||||
@Query("select NEW Map (a.noRec as noRec, " + "a.statusEnabled as statusEnabled, " + "a.noPlanning as noPlanning, "
|
||||
+ "a.deskripsiStatusPegawaiPlan as deskripsiStatusPegawaiPlan, "
|
||||
+ "a.keteranganLainyaPlan as keteranganLainyaPlan, "
|
||||
+ "a.deskripsiStatusPegawaiExec as deskripsiStatusPegawaiExec, "
|
||||
+ "a.keteranganLainyaExec as keteranganLainyaExec, "
|
||||
+ "a.tglPengajuan as tglPengajuan, "
|
||||
+ "a.tglKeputusan as tglKeputusan, "
|
||||
+ "a.approvalStatus as approvalStatus, "
|
||||
+ "a.alamatCuti as alamatCuti, "
|
||||
+ "a.nomorTelepon as nomorTelepon, "
|
||||
+ "a.isCutiLuarNegeri as isCutiLuarNegeri, "
|
||||
+ "a.isCutiLuarKota as isCutiLuarKota, "
|
||||
+ "a.noSuratTugas as noSuratTugas, "
|
||||
+ "a.noNotaDinas as noNotaDinas, "
|
||||
+ "a.tglNotaDinas as tglNotaDinas, "
|
||||
+ "a.alamatTugas as alamatTugas, "
|
||||
+ "a.jenisPerawatan as sakit, "
|
||||
+ "a.jabatanIdPemberiNotaDinas as jabatanIdPemberiNotaDinas, "
|
||||
+ "listTgl.noRec as norecTgl, "
|
||||
+ "listTgl.tgl as tgl, "
|
||||
+ "listTgl.approvalStatus as approvalStatusTgl, "
|
||||
+ "fp.namaJabatan as jabatanPemberiNotaDinas, "
|
||||
+ "subUnitKerja.id as idUnitKerja, "
|
||||
+ "subUnitKerja.name as unitKerja, "
|
||||
+ "b.id as pegwaiId, "
|
||||
+ "b.namaLengkap as namaPegawai, "
|
||||
+ "b.nipPns as nip, "
|
||||
+ "b.eselonId as eselonId, "
|
||||
+ "c.id as statusPegawaiId, "
|
||||
+ "c.statusPegawai as statusPegawai, "
|
||||
+ "f.namaJabatan as namaJabatan) "
|
||||
+ "from PlanningPegawaiStatus a, "
|
||||
+ "MapPegawaiJabatanToUnitKerja mp "
|
||||
+ "left join a.pegawai b "
|
||||
+ "left join a.statusPegawaiPlan c "
|
||||
+ "left join a.noSk e "
|
||||
+ "left join a.listTanggal listTgl "
|
||||
+ "left join a.jabatanPemberiNotaDinas fp "
|
||||
+ "left join mp.jabatan f "
|
||||
+ "left join mp.subUnitKerjaPegawai subUnitKerja "
|
||||
+ "where mp.pegawaiId = b.id "
|
||||
+ "and a.pegawaiId = mp.pegawaiId "
|
||||
+ "and a.statusEnabled is true "
|
||||
+ "and listTgl.statusEnabled is true "
|
||||
+ "and mp.statusEnabled is true "
|
||||
+ "and mp.isPrimary is true "
|
||||
+ "a.keteranganLainyaExec as keteranganLainyaExec, " + "a.tglPengajuan as tglPengajuan, "
|
||||
+ "a.tglKeputusan as tglKeputusan, " + "a.approvalStatus as approvalStatus, "
|
||||
+ "a.alamatCuti as alamatCuti, " + "a.nomorTelepon as nomorTelepon, "
|
||||
+ "a.isCutiLuarNegeri as isCutiLuarNegeri, " + "a.isCutiLuarKota as isCutiLuarKota, "
|
||||
+ "a.noSuratTugas as noSuratTugas, " + "a.noNotaDinas as noNotaDinas, " + "a.tglNotaDinas as tglNotaDinas, "
|
||||
+ "a.alamatTugas as alamatTugas, " + "a.jenisPerawatan as sakit, "
|
||||
+ "a.jabatanIdPemberiNotaDinas as jabatanIdPemberiNotaDinas, " + "listTgl.noRec as norecTgl, "
|
||||
+ "listTgl.tgl as tgl, " + "listTgl.approvalStatus as approvalStatusTgl, "
|
||||
+ "fp.namaJabatan as jabatanPemberiNotaDinas, " + "subUnitKerja.id as idUnitKerja, "
|
||||
+ "subUnitKerja.name as unitKerja, " + "b.id as pegwaiId, " + "b.namaLengkap as namaPegawai, "
|
||||
+ "b.nipPns as nip, " + "b.eselonId as eselonId, " + "c.id as statusPegawaiId, "
|
||||
+ "c.statusPegawai as statusPegawai, " + "f.namaJabatan as namaJabatan) " + "from PlanningPegawaiStatus a, "
|
||||
+ "MapPegawaiJabatanToUnitKerja mp " + "left join a.pegawai b " + "left join a.statusPegawaiPlan c "
|
||||
+ "left join a.noSk e " + "left join a.listTanggal listTgl " + "left join a.jabatanPemberiNotaDinas fp "
|
||||
+ "left join mp.jabatan f " + "left join mp.subUnitKerjaPegawai subUnitKerja "
|
||||
+ "where mp.pegawaiId = b.id " + "and a.pegawaiId = mp.pegawaiId " + "and a.statusEnabled is true "
|
||||
+ "and listTgl.statusEnabled is true " + "and mp.statusEnabled is true " + "and mp.isPrimary is true "
|
||||
+ "and e.noRec is null "
|
||||
+ "and ((to_char(listTgl.tgl, 'yyyy') = :currentYear and a.approvalStatus <> :approvalStatusId1) "
|
||||
+ "or (to_char(listTgl.tgl, 'yyyy') <> :currentYear and a.approvalStatus = :approvalStatusId2)) "
|
||||
+ "and c.id in (:ketidakhadiranId) "
|
||||
+ "and b.id = :idPegawai "
|
||||
+ "and c.id in (:ketidakhadiranId) " + "and b.id = :idPegawai "
|
||||
+ "order by a.tglPengajuan desc, listTgl.tgl asc")
|
||||
public List<Map<String, Object>> getApprovalStatus(@Param("idPegawai") Integer idPegawai, @Param("currentYear") String currentYear,
|
||||
@Param("approvalStatusId1") Integer approvalStatusId1, @Param("approvalStatusId2") Integer approvalStatusId2,
|
||||
List<Map<String, Object>> getApprovalStatus(@Param("idPegawai") Integer idPegawai,
|
||||
@Param("currentYear") String currentYear, @Param("approvalStatusId1") Integer approvalStatusId1,
|
||||
@Param("approvalStatusId2") Integer approvalStatusId2,
|
||||
@Param("ketidakhadiranId") List<Integer> ketidakhadiranId);
|
||||
|
||||
@Query("select NEW Map (a.noRec as noRec, "
|
||||
+ "a.statusEnabled as statusEnabled, "
|
||||
+ "a.noPlanning as noPlanning, "
|
||||
|
||||
@Query("select NEW Map (a.noRec as noRec, " + "a.statusEnabled as statusEnabled, " + "a.noPlanning as noPlanning, "
|
||||
+ "a.deskripsiStatusPegawaiPlan as deskripsiStatusPegawaiPlan, "
|
||||
+ "a.keteranganLainyaPlan as keteranganLainyaPlan, "
|
||||
+ "a.deskripsiStatusPegawaiExec as deskripsiStatusPegawaiExec, "
|
||||
+ "a.keteranganLainyaExec as keteranganLainyaExec, "
|
||||
+ "a.tglPengajuan as tglPengajuan, "
|
||||
+ "a.tglKeputusan as tglKeputusan, "
|
||||
+ "a.approvalStatus as approvalStatus, "
|
||||
+ "a.alamatCuti as alamatCuti, "
|
||||
+ "a.nomorTelepon as nomorTelepon, "
|
||||
+ "a.isCutiLuarNegeri as isCutiLuarNegeri, "
|
||||
+ "a.isCutiLuarKota as isCutiLuarKota, "
|
||||
+ "a.noSuratTugas as noSuratTugas, "
|
||||
+ "a.noNotaDinas as noNotaDinas, "
|
||||
+ "a.tglNotaDinas as tglNotaDinas, "
|
||||
+ "a.alamatTugas as alamatTugas, "
|
||||
+ "a.jabatanIdPemberiNotaDinas as jabatanIdPemberiNotaDinas, "
|
||||
+ "listTgl.noRec as norecTgl, "
|
||||
+ "listTgl.tgl as tgl, "
|
||||
+ "listTgl.approvalStatus as approvalStatusTgl, "
|
||||
+ "fp.namaJabatan as jabatanPemberiNotaDinas, "
|
||||
+ "subUnitKerja.id as idUnitKerja, "
|
||||
+ "subUnitKerja.name as unitKerja, "
|
||||
+ "b.id as pegwaiId, "
|
||||
+ "b.namaLengkap as namaPegawai, "
|
||||
+ "b.nipPns as nip, "
|
||||
+ "b.eselonId as eselonId, "
|
||||
+ "c.id as statusPegawaiId, "
|
||||
+ "c.statusPegawai as statusPegawai, "
|
||||
+ "f.namaJabatan as namaJabatan) "
|
||||
+ "from PlanningPegawaiStatus a, "
|
||||
+ "MapPegawaiJabatanToUnitKerja mp "
|
||||
+ "left join a.pegawai b "
|
||||
+ "left join a.statusPegawaiPlan c "
|
||||
+ "left join a.noSk e "
|
||||
+ "left join a.listTanggal listTgl "
|
||||
+ "left join a.jabatanPemberiNotaDinas fp "
|
||||
+ "left join mp.jabatan f "
|
||||
+ "left join mp.subUnitKerjaPegawai subUnitKerja "
|
||||
+ "where mp.pegawaiId = b.id "
|
||||
+ "and a.pegawaiId = mp.pegawaiId "
|
||||
+ "and a.statusEnabled is true "
|
||||
+ "and listTgl.statusEnabled is true "
|
||||
+ "and mp.statusEnabled is true "
|
||||
+ "and mp.isPrimary is true "
|
||||
+ "a.keteranganLainyaExec as keteranganLainyaExec, " + "a.tglPengajuan as tglPengajuan, "
|
||||
+ "a.tglKeputusan as tglKeputusan, " + "a.approvalStatus as approvalStatus, "
|
||||
+ "a.alamatCuti as alamatCuti, " + "a.nomorTelepon as nomorTelepon, "
|
||||
+ "a.isCutiLuarNegeri as isCutiLuarNegeri, " + "a.isCutiLuarKota as isCutiLuarKota, "
|
||||
+ "a.noSuratTugas as noSuratTugas, " + "a.noNotaDinas as noNotaDinas, " + "a.tglNotaDinas as tglNotaDinas, "
|
||||
+ "a.alamatTugas as alamatTugas, " + "a.jabatanIdPemberiNotaDinas as jabatanIdPemberiNotaDinas, "
|
||||
+ "listTgl.noRec as norecTgl, " + "listTgl.tgl as tgl, " + "listTgl.approvalStatus as approvalStatusTgl, "
|
||||
+ "fp.namaJabatan as jabatanPemberiNotaDinas, " + "subUnitKerja.id as idUnitKerja, "
|
||||
+ "subUnitKerja.name as unitKerja, " + "b.id as pegwaiId, " + "b.namaLengkap as namaPegawai, "
|
||||
+ "b.nipPns as nip, " + "b.eselonId as eselonId, " + "c.id as statusPegawaiId, "
|
||||
+ "c.statusPegawai as statusPegawai, " + "f.namaJabatan as namaJabatan) " + "from PlanningPegawaiStatus a, "
|
||||
+ "MapPegawaiJabatanToUnitKerja mp " + "left join a.pegawai b " + "left join a.statusPegawaiPlan c "
|
||||
+ "left join a.noSk e " + "left join a.listTanggal listTgl " + "left join a.jabatanPemberiNotaDinas fp "
|
||||
+ "left join mp.jabatan f " + "left join mp.subUnitKerjaPegawai subUnitKerja "
|
||||
+ "where mp.pegawaiId = b.id " + "and a.pegawaiId = mp.pegawaiId " + "and a.statusEnabled is true "
|
||||
+ "and listTgl.statusEnabled is true " + "and mp.statusEnabled is true " + "and mp.isPrimary is true "
|
||||
+ "and ((to_char(listTgl.tgl, 'yyyy') = :currentYear and a.approvalStatus <> :approvalStatusId1) "
|
||||
+ "or (to_char(listTgl.tgl, 'yyyy') <> :currentYear and a.approvalStatus = :approvalStatusId2)) "
|
||||
+ "and e.noRec is null "
|
||||
+ "and c.id in (:ketidakhadiranId) "
|
||||
+ "and e.noRec is null " + "and c.id in (:ketidakhadiranId) "
|
||||
+ "order by a.tglPengajuan desc, listTgl.tgl asc")
|
||||
public List<Map<String, Object>> getApprovalStatus(@Param("currentYear") String currentYear, @Param("approvalStatusId1") Integer approvalStatusId1,
|
||||
@Param("approvalStatusId2") Integer approvalStatusId2, @Param("ketidakhadiranId") List<Integer> ketidakhadiranId);
|
||||
|
||||
@Query("select NEW Map (a.noRec as noRec, "
|
||||
+ "a.noPlanning as noPlanning, "
|
||||
List<Map<String, Object>> getApprovalStatus(@Param("currentYear") String currentYear,
|
||||
@Param("approvalStatusId1") Integer approvalStatusId1,
|
||||
@Param("approvalStatusId2") Integer approvalStatusId2,
|
||||
@Param("ketidakhadiranId") List<Integer> ketidakhadiranId);
|
||||
|
||||
@Query("select NEW Map (a.noRec as noRec, " + "a.noPlanning as noPlanning, "
|
||||
+ "a.deskripsiStatusPegawaiPlan as deskripsiStatusPegawaiPlan, "
|
||||
+ "a.keteranganLainyaPlan as keteranganLainyaPlan, "
|
||||
+ "a.deskripsiStatusPegawaiExec as deskripsiStatusPegawaiExec, "
|
||||
+ "a.keteranganLainyaExec as keteranganLainyaExec, "
|
||||
+ "a.tglPengajuan as tglPengajuan, "
|
||||
+ "a.tglKeputusan as tglKeputusan, "
|
||||
+ "a.approvalStatus as approvalStatus, "
|
||||
+ "a.alamatCuti as alamatCuti, "
|
||||
+ "a.nomorTelepon as nomorTelepon, "
|
||||
+ "a.isCutiLuarNegeri as isCutiLuarNegeri, "
|
||||
+ "a.isCutiLuarKota as isCutiLuarKota, "
|
||||
+ "a.noSuratTugas as noSuratTugas, "
|
||||
+ "a.noNotaDinas as noNotaDinas, "
|
||||
+ "a.tglNotaDinas as tglNotaDinas, "
|
||||
+ "a.alamatTugas as alamatTugas, "
|
||||
+ "a.jenisPerawatan as sakit, "
|
||||
+ "a.jabatanIdPemberiNotaDinas as jabatanIdPemberiNotaDinas, "
|
||||
+ "listTgl.noRec as norecTgl, "
|
||||
+ "listTgl.tgl as tgl, "
|
||||
+ "listTgl.approvalStatus as approvalStatusTgl, "
|
||||
+ "fp.namaJabatan as jabatanPemberiNotaDinas, "
|
||||
+ "subUnitKerja.id as idUnitKerja, "
|
||||
+ "subUnitKerja.name as unitKerja, "
|
||||
+ "b.id as pegwaiId, "
|
||||
+ "b.namaLengkap as namaPegawai, "
|
||||
+ "b.nipPns as nip, "
|
||||
+ "c.id as statusPegawaiId, "
|
||||
+ "c.statusPegawai as statusPegawai, "
|
||||
+ "f.namaJabatan as namaJabatan) "
|
||||
+ "from PlanningPegawaiStatus a, "
|
||||
+ "MapPegawaiJabatanToUnitKerja mp "
|
||||
+ "left join a.pegawai b "
|
||||
+ "left join a.statusPegawaiPlan c "
|
||||
+ "left join a.noSk e "
|
||||
+ "left join a.jabatanPemberiNotaDinas fp "
|
||||
+ "left join a.listTanggal listTgl "
|
||||
+ "left join mp.jabatan f "
|
||||
+ "left join mp.subUnitKerjaPegawai subUnitKerja "
|
||||
+ "where mp.pegawaiId = b.id "
|
||||
+ "and a.pegawaiId = mp.pegawaiId "
|
||||
+ "and a.statusEnabled = true "
|
||||
+ "and listTgl.statusEnabled = true "
|
||||
+ "and mp.statusEnabled is true "
|
||||
+ "and mp.isPrimary is true "
|
||||
+ "and a.approvalStatus = :approvalStatusId "
|
||||
+ "and e.noRec is null "
|
||||
+ "and c.id in (:ketidakhadiranId) "
|
||||
+ "a.keteranganLainyaExec as keteranganLainyaExec, " + "a.tglPengajuan as tglPengajuan, "
|
||||
+ "a.tglKeputusan as tglKeputusan, " + "a.approvalStatus as approvalStatus, "
|
||||
+ "a.alamatCuti as alamatCuti, " + "a.nomorTelepon as nomorTelepon, "
|
||||
+ "a.isCutiLuarNegeri as isCutiLuarNegeri, " + "a.isCutiLuarKota as isCutiLuarKota, "
|
||||
+ "a.noSuratTugas as noSuratTugas, " + "a.noNotaDinas as noNotaDinas, " + "a.tglNotaDinas as tglNotaDinas, "
|
||||
+ "a.alamatTugas as alamatTugas, " + "a.jenisPerawatan as sakit, "
|
||||
+ "a.jabatanIdPemberiNotaDinas as jabatanIdPemberiNotaDinas, " + "listTgl.noRec as norecTgl, "
|
||||
+ "listTgl.tgl as tgl, " + "listTgl.approvalStatus as approvalStatusTgl, "
|
||||
+ "fp.namaJabatan as jabatanPemberiNotaDinas, " + "subUnitKerja.id as idUnitKerja, "
|
||||
+ "subUnitKerja.name as unitKerja, " + "b.id as pegwaiId, " + "b.namaLengkap as namaPegawai, "
|
||||
+ "b.nipPns as nip, " + "c.id as statusPegawaiId, " + "c.statusPegawai as statusPegawai, "
|
||||
+ "f.namaJabatan as namaJabatan) " + "from PlanningPegawaiStatus a, " + "MapPegawaiJabatanToUnitKerja mp "
|
||||
+ "left join a.pegawai b " + "left join a.statusPegawaiPlan c " + "left join a.noSk e "
|
||||
+ "left join a.jabatanPemberiNotaDinas fp " + "left join a.listTanggal listTgl " + "left join mp.jabatan f "
|
||||
+ "left join mp.subUnitKerjaPegawai subUnitKerja " + "where mp.pegawaiId = b.id "
|
||||
+ "and a.pegawaiId = mp.pegawaiId " + "and a.statusEnabled = true " + "and listTgl.statusEnabled = true "
|
||||
+ "and mp.statusEnabled is true " + "and mp.isPrimary is true "
|
||||
+ "and a.approvalStatus = :approvalStatusId " + "and e.noRec is null " + "and c.id in (:ketidakhadiranId) "
|
||||
+ "order by a.tglPengajuan desc, listTgl.tgl asc")
|
||||
public List<Map<String, Object>> getApprovalStatusSdm(@Param("approvalStatusId") Integer approvalStatusId,
|
||||
List<Map<String, Object>> getApprovalStatusSdm(@Param("approvalStatusId") Integer approvalStatusId,
|
||||
@Param("ketidakhadiranId") List<Integer> ketidakhadiranId);
|
||||
|
||||
@Query("select new Map(pegawai.namaLengkap as namaLengkap, "
|
||||
+ "coalesce(pegawai.nipPns, pegawai.nip) as nip, "
|
||||
|
||||
@Query("select new Map(pegawai.namaLengkap as namaLengkap, " + "coalesce(pegawai.nipPns, pegawai.nip) as nip, "
|
||||
+ "pangkat.namaPangkat || ' / ' || golongan.golonganPegawai as pangkatGol, "
|
||||
+ "jabatan.namaJabatan as namaJabatan, "
|
||||
+ "transaksiCuti.statusPegawaiPlanId as idPlanning, "
|
||||
+ "statusPegawai.statusPegawai as statusPegawai, "
|
||||
+ "tglCuti.tgl as tglCuti) "
|
||||
+ "jabatan.namaJabatan as namaJabatan, " + "transaksiCuti.statusPegawaiPlanId as idPlanning, "
|
||||
+ "statusPegawai.statusPegawai as statusPegawai, " + "tglCuti.tgl as tglCuti) "
|
||||
+ "from MapPegawaiJabatanToUnitKerja mappingJabatan, PlanningPegawaiStatus transaksiCuti "
|
||||
+ "left join mappingJabatan.pegawai pegawai "
|
||||
+ "left join mappingJabatan.jabatan jabatan "
|
||||
+ "left join mappingJabatan.pegawai pegawai " + "left join mappingJabatan.jabatan jabatan "
|
||||
+ "left join transaksiCuti.listTanggal tglCuti "
|
||||
+ "left join transaksiCuti.statusPegawaiPlan statusPegawai "
|
||||
+ "left join pegawai.pangkat pangkat "
|
||||
+ "left join pangkat.kdGolonganPegawai golongan "
|
||||
+ "where transaksiCuti.pegawaiId = pegawai.id "
|
||||
+ "and mappingJabatan.pegawaiId = transaksiCuti.pegawaiId "
|
||||
+ "and mappingJabatan.statusEnabled is true "
|
||||
+ "and pegawai.statusEnabled is true "
|
||||
+ "and mappingJabatan.isPrimary is true "
|
||||
+ "and tglCuti.statusEnabled is true "
|
||||
+ "and transaksiCuti.noRec = :norec")
|
||||
public List<Map<String, Object>> getCetakCutiLuarNegeri(@Param("norec") String norec);
|
||||
|
||||
+ "left join transaksiCuti.statusPegawaiPlan statusPegawai " + "left join pegawai.pangkat pangkat "
|
||||
+ "left join pangkat.kdGolonganPegawai golongan " + "where transaksiCuti.pegawaiId = pegawai.id "
|
||||
+ "and mappingJabatan.pegawaiId = transaksiCuti.pegawaiId " + "and mappingJabatan.statusEnabled is true "
|
||||
+ "and pegawai.statusEnabled is true " + "and mappingJabatan.isPrimary is true "
|
||||
+ "and tglCuti.statusEnabled is true " + "and transaksiCuti.noRec = :norec")
|
||||
List<Map<String, Object>> getCetakCutiLuarNegeri(@Param("norec") String norec);
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,14 @@
|
||||
package com.jasamedika.medifirst2000.service;
|
||||
|
||||
import com.jasamedika.medifirst2000.dto.DataCutiDto;
|
||||
|
||||
/**
|
||||
* @author Salman
|
||||
* @version 1.0.0
|
||||
* @since 09/01/2025
|
||||
*/
|
||||
public interface JatahCutiDanIzinService {
|
||||
|
||||
DataCutiDto getDataCuti(Integer pegawaiId, String year, Integer statusPegawaiId);
|
||||
|
||||
}
|
||||
@ -1,5 +1,6 @@
|
||||
package com.jasamedika.medifirst2000.service;
|
||||
|
||||
import com.jasamedika.medifirst2000.dto.DataCutiDto;
|
||||
import com.jasamedika.medifirst2000.entities.PegawaiHistoriRekapIndex;
|
||||
import com.jasamedika.medifirst2000.vo.JatahCutiDanIzinVO;
|
||||
import com.jasamedika.medifirst2000.vo.KelompokShiftKerjaCustomVO;
|
||||
@ -27,7 +28,7 @@ public interface PermohonanStatusPegawaiService {
|
||||
|
||||
Map<String, Object> savePlanningPegawaiStatus(PlanningPegawaiStatusVO vo);
|
||||
|
||||
Map<String, Object> perbaruiDataCuti(Integer idPegawai, Integer idStatusPegawai);
|
||||
DataCutiDto perbaruiDataCuti(Integer idPegawai, Integer idStatusPegawai);
|
||||
|
||||
boolean validateTanggalPermohonanRev(Integer statusPegawaiPlanId, Set<ListTanggalCutiVO> listTanggalCutiVO,
|
||||
Integer idPegawai);
|
||||
@ -89,8 +90,6 @@ public interface PermohonanStatusPegawaiService {
|
||||
|
||||
JatahCutiDanIzinVO setJatahCutiDanIzinVo(Integer idPegawai, Integer idStatusPegawai);
|
||||
|
||||
Integer difCutiTerpakai(Integer cutiTerpakai, Integer dataCuti);
|
||||
|
||||
Integer countJumlahPengajuanDiprosesByPegawai(Integer idPegawai, Integer idPlan);
|
||||
|
||||
Integer countJumlahPengajuanDiprosesByPegawai(Integer idPegawai, Integer idPlan, String noPlanning);
|
||||
|
||||
@ -1564,7 +1564,7 @@ public class IndekKinerjaServiceImpl extends BaseVoServiceImpl implements IndekK
|
||||
if (CommonUtil.isNotNullOrEmpty(vo.getTanggal())) {
|
||||
Kalender kalender = mapKalenderToHariLiburDao
|
||||
.getKalender(new SimpleDateFormat("yyyy-MM-dd").format(vo.getTanggal().getTanggal()));
|
||||
mapKalenderToHariLibur.setTgl(kalender);
|
||||
mapKalenderToHariLibur.setTanggal(kalender);
|
||||
}
|
||||
if (CommonUtil.isNotNullOrEmpty(mapKalenderToHariLibur)) {
|
||||
MapKalenderToHariLibur model = mapKalenderToHariLiburDao.save(mapKalenderToHariLibur);
|
||||
|
||||
@ -0,0 +1,589 @@
|
||||
package com.jasamedika.medifirst2000.service.impl;
|
||||
|
||||
import com.jasamedika.medifirst2000.constants.Master;
|
||||
import com.jasamedika.medifirst2000.dao.*;
|
||||
import com.jasamedika.medifirst2000.dto.DataCutiDto;
|
||||
import com.jasamedika.medifirst2000.dto.JatahCutiRequest;
|
||||
import com.jasamedika.medifirst2000.dto.PresensiHariLibur;
|
||||
import com.jasamedika.medifirst2000.entities.ListTanggalCuti;
|
||||
import com.jasamedika.medifirst2000.entities.MapKalenderToHariLibur;
|
||||
import com.jasamedika.medifirst2000.service.JatahCutiDanIzinService;
|
||||
import com.jasamedika.medifirst2000.util.CommonUtil;
|
||||
import com.jasamedika.medifirst2000.util.DateUtil;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.jasamedika.medifirst2000.constants.Master.HariLibur.LIBUR_CB;
|
||||
import static com.jasamedika.medifirst2000.constants.Master.StatusPegawai.CUTI_TAHUNAN;
|
||||
|
||||
/**
|
||||
* @author Salman
|
||||
* @version 1.0.0
|
||||
* @since 09/01/2025
|
||||
*/
|
||||
@Service
|
||||
public class JatahCutiDanIzinServiceImpl implements JatahCutiDanIzinService {
|
||||
|
||||
@Autowired
|
||||
private PlanningPegawaiStatusDao planningPegawaiStatusDao;
|
||||
|
||||
@Autowired
|
||||
private JatahCutiDanIzinDao jatahCutiDanIzinDao;
|
||||
|
||||
@Autowired
|
||||
private PegawaiDao pegawaiDao;
|
||||
|
||||
@Autowired
|
||||
private PegawaiHistoriRekapIndexDao pegawaiHistoriRekapIndexDao;
|
||||
|
||||
@Autowired
|
||||
private PegawaiJadwalKerjaDao pegawaiJadwalKerjaDao;
|
||||
|
||||
@Autowired
|
||||
private MapKalenderToHariLiburDao mapKalenderToHariLiburDao;
|
||||
|
||||
@Autowired
|
||||
private HabsenDao habsenDao;
|
||||
|
||||
@Autowired
|
||||
private ListTanggalCutiDao tanggalCutiDao;
|
||||
|
||||
@Override
|
||||
public DataCutiDto getDataCuti(Integer pegawaiId, String year, Integer statusPegawaiId) {
|
||||
DataCutiDto dto = calculateCutiIzin(pegawaiId, year, statusPegawaiId);
|
||||
JatahCutiRequest jatahCutiRequest = transform(pegawaiId, year, statusPegawaiId);
|
||||
return tangguhkanCutiBersama(dto, jatahCutiRequest);
|
||||
}
|
||||
|
||||
private DataCutiDto calculateCutiIzin(Integer pegawaiId, String year, Integer statusPegawaiId) {
|
||||
DataCutiDto.DataCutiDtoBuilder cutiIzinBuilder = DataCutiDto.builder();
|
||||
List<Integer> listKomponenIndex = new ArrayList<>();
|
||||
int sisaCuti;
|
||||
Integer sisaCutiB2 = 0;
|
||||
Integer sisaCutiB1 = 0;
|
||||
int sisaCutiB;
|
||||
int sisaCutiN2;
|
||||
int sisaCutiN1;
|
||||
int sisaCutiN;
|
||||
Integer jatahCuti = 0;
|
||||
int sisaJatahRawatJalan = 0;
|
||||
int sisaJatahRawatInap = 0;
|
||||
int sisaIzin;
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
SimpleDateFormat formatter = new SimpleDateFormat("yyyy");
|
||||
if (CommonUtil.isNullOrEmpty(year))
|
||||
year = formatter.format(DateUtil.now());
|
||||
int yearn1 = Integer.parseInt(year) - 1;
|
||||
int yearn2 = Integer.parseInt(year) - 2;
|
||||
int yearn3 = Integer.parseInt(year) + 1;
|
||||
String yearN1 = Integer.toString(yearn1);
|
||||
String yearN2 = Integer.toString(yearn2);
|
||||
String yearN3 = Integer.toString(yearn3);
|
||||
if (statusPegawaiId == 5 || statusPegawaiId == 1 || statusPegawaiId == 21) {
|
||||
String komponen = Master.KomponenIndex.CUTI_NONSHIFT.toString();
|
||||
String komponenIndeksCutiShift = Master.KomponenIndex.CUTI_SHIFT.toString();
|
||||
String komponenIndeksCutiBersama = Master.KomponenIndex.CUTI_BERSAMA.toString();
|
||||
listKomponenIndex.add(Integer.valueOf(komponen));
|
||||
listKomponenIndex.add(Integer.valueOf(komponenIndeksCutiShift));
|
||||
// Initiate cuti bersama
|
||||
Integer cutiTerpakaiB2;
|
||||
Integer cutiTerpakaiB1;
|
||||
Integer cutiTerpakaiB;
|
||||
// Menghitung cuti terpakai tahun n-2
|
||||
Integer cutiTerpakaiN2 = pegawaiHistoriRekapIndexDao.getCutiTerpakai(yearN2, pegawaiId, listKomponenIndex);
|
||||
if (CommonUtil.isNullOrEmpty(cutiTerpakaiN2))
|
||||
cutiTerpakaiN2 = 0;
|
||||
// Menghitung cuti terpakai tahun n-1
|
||||
Integer cutiTerpakaiN1 = pegawaiHistoriRekapIndexDao.getCutiTerpakai(yearN1, pegawaiId, listKomponenIndex);
|
||||
if (CommonUtil.isNullOrEmpty(cutiTerpakaiN1))
|
||||
cutiTerpakaiN1 = 0;
|
||||
// Menghitung cuti terpakai tahun n
|
||||
Integer cutiTerpakaiN = pegawaiHistoriRekapIndexDao.getCutiTerpakai(year, pegawaiId, listKomponenIndex);
|
||||
if (CommonUtil.isNullOrEmpty(cutiTerpakaiN))
|
||||
cutiTerpakaiN = 0;
|
||||
// Menghitung cuti terpakai by histori pengajuan
|
||||
Integer jumlahTglByPengajuan = pegawaiHistoriRekapIndexDao.getHistoriCutiTerpakaiByTahunPengajuan(year,
|
||||
pegawaiId, listKomponenIndex);
|
||||
if (CommonUtil.isNullOrEmpty(jumlahTglByPengajuan))
|
||||
jumlahTglByPengajuan = 0;
|
||||
Integer rekapHistoriCutiTerpakai = pegawaiHistoriRekapIndexDao.getHistoriCutiTerpakai(yearN2, pegawaiId,
|
||||
listKomponenIndex);
|
||||
if (CommonUtil.isNullOrEmpty(rekapHistoriCutiTerpakai))
|
||||
rekapHistoriCutiTerpakai = 0;
|
||||
Integer dataHistoriCutiTerpakai = jatahCutiDanIzinDao.getHistoriCutiTerpakai(pegawaiId, yearN2);
|
||||
if (CommonUtil.isNullOrEmpty(dataHistoriCutiTerpakai))
|
||||
dataHistoriCutiTerpakai = 0;
|
||||
Integer diffHistori = dataHistoriCutiTerpakai - rekapHistoriCutiTerpakai;
|
||||
if (rekapHistoriCutiTerpakai < dataHistoriCutiTerpakai) {
|
||||
if (cutiTerpakaiN2 > diffHistori) {
|
||||
cutiTerpakaiN2 -= diffHistori;
|
||||
} else {
|
||||
diffHistori -= cutiTerpakaiN2;
|
||||
cutiTerpakaiN2 = 0;
|
||||
if (cutiTerpakaiN1 > diffHistori) {
|
||||
cutiTerpakaiN1 -= diffHistori;
|
||||
} else {
|
||||
diffHistori -= cutiTerpakaiN1;
|
||||
cutiTerpakaiN1 = 0;
|
||||
if (cutiTerpakaiN > diffHistori) {
|
||||
cutiTerpakaiN -= diffHistori;
|
||||
} else {
|
||||
cutiTerpakaiN = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// Mendapatkan seluruh data jatah cuti untuk pegawai tertentu
|
||||
Integer dataCutiB2 = jatahCutiDanIzinDao.getDataCuti(yearN2, pegawaiId,
|
||||
Integer.valueOf(komponenIndeksCutiBersama)); // dataCutiBersama_di_n-2
|
||||
Integer dataCutiB1 = jatahCutiDanIzinDao.getDataCuti(yearN1, pegawaiId,
|
||||
Integer.valueOf(komponenIndeksCutiBersama)); // dataCutiBersama_di_n-1
|
||||
Integer dataCutiB = jatahCutiDanIzinDao.getDataCuti(year, pegawaiId,
|
||||
Integer.valueOf(komponenIndeksCutiBersama)); // dataCutiBersama_di_n
|
||||
Integer dataCutiN2 = jatahCutiDanIzinDao.getDataCuti(yearN2, pegawaiId, Integer.valueOf(komponen)); // dataCutiTahunan_tahun_n-2
|
||||
Integer dataCutiN1 = jatahCutiDanIzinDao.getDataCuti(yearN1, pegawaiId, Integer.valueOf(komponen)); // dataCutiTahunan_tahun_n-1
|
||||
Integer dataCutiN = jatahCutiDanIzinDao.getDataCuti(year, pegawaiId, Integer.valueOf(komponen)); // dataCutiTahunan_tahun_n
|
||||
Integer dataCutiN3 = jatahCutiDanIzinDao.getDataCuti(yearN3, pegawaiId, Integer.valueOf(komponen)); // dataCutiTahunan_tahun_n+1
|
||||
// Validasi existing data
|
||||
if (CommonUtil.isNullOrEmpty(dataCutiB2))
|
||||
dataCutiB2 = 0;
|
||||
if (CommonUtil.isNullOrEmpty(dataCutiB1))
|
||||
dataCutiB1 = 0;
|
||||
if (CommonUtil.isNullOrEmpty(dataCutiB))
|
||||
dataCutiB = 0;
|
||||
if (CommonUtil.isNullOrEmpty(dataCutiN2))
|
||||
dataCutiN2 = 0;
|
||||
if (CommonUtil.isNullOrEmpty(dataCutiN1))
|
||||
dataCutiN1 = 0;
|
||||
if (CommonUtil.isNullOrEmpty(dataCutiN))
|
||||
dataCutiN = 0;
|
||||
if (CommonUtil.isNullOrEmpty(dataCutiN3))
|
||||
dataCutiN3 = 12;
|
||||
// mapping jatah cuti
|
||||
cutiIzinBuilder.dataCutiB2(dataCutiB2);
|
||||
cutiIzinBuilder.dataCutiB1(dataCutiB1);
|
||||
cutiIzinBuilder.dataCutiB(dataCutiB);
|
||||
cutiIzinBuilder.dataCutiN2(dataCutiN2);
|
||||
cutiIzinBuilder.dataCutiN1(dataCutiN1);
|
||||
cutiIzinBuilder.dataCutiN(dataCutiN);
|
||||
cutiIzinBuilder.dataCutiN3(dataCutiN3);
|
||||
|
||||
// Hitung Absen di tanggal cuti bersama
|
||||
List<String> listTglCutiBersama = mapKalenderToHariLiburDao.getTglCutiBersama(year);
|
||||
int countDataHabsen = 0;
|
||||
for (String tglStr : listTglCutiBersama) {
|
||||
List<Date> dataHabsen = new ArrayList<>();
|
||||
// cek shift malam
|
||||
String tglPrev = sdf.format(java.sql.Date.valueOf(LocalDate.parse(tglStr).minusDays(1)));
|
||||
List<Map<String, Object>> listMap = pegawaiJadwalKerjaDao.getNamaShiftKerjaPegawaiByTanggal(tglPrev,
|
||||
tglStr, pegawaiId);
|
||||
if (listMap.size() == 2) {
|
||||
if (!listMap.get(0).get("namaShift").toString().toLowerCase().contains("malam")
|
||||
&& listMap.get(1).get("namaShift").toString().toLowerCase().contains("malam")) {
|
||||
dataHabsen = habsenDao.countAbsenTglCutiBersama(tglStr, pegawaiDao.getidFinger(pegawaiId));
|
||||
} else if (listMap.get(0).get("namaShift").toString().toLowerCase().contains("malam")
|
||||
&& listMap.get(1).get("namaShift").toString().toLowerCase().contains("malam")) {
|
||||
dataHabsen = habsenDao.countAbsenTglCutiBersama(tglStr, pegawaiDao.getidFinger(pegawaiId));
|
||||
} else if (!listMap.get(0).get("namaShift").toString().toLowerCase().contains("malam")
|
||||
&& !listMap.get(1).get("namaShift").toString().toLowerCase().contains("malam")) {
|
||||
dataHabsen = habsenDao.countAbsenTglCutiBersama(tglStr, pegawaiDao.getidFinger(pegawaiId));
|
||||
}
|
||||
}
|
||||
if (CommonUtil.isNotNullOrEmpty(dataHabsen)) {
|
||||
if (listMap.size() == 2) {
|
||||
if (Arrays.asList(Master.ShiftKerja.TUJUH_BELAS_JAM_SHIFT)
|
||||
.contains(Integer.parseInt(listMap.get(1).get("idShift").toString()))) {
|
||||
if (Integer.parseInt(year) < 2023) {
|
||||
countDataHabsen += 2;
|
||||
} else {
|
||||
countDataHabsen += 1;
|
||||
}
|
||||
} else {
|
||||
countDataHabsen += 1;
|
||||
}
|
||||
} else {
|
||||
countDataHabsen += 1;
|
||||
}
|
||||
} else {
|
||||
// cuti tahunan di tanggal cuti bersama
|
||||
List<Date> tglCutiTahunanDiTglCutiBersama = jatahCutiDanIzinDao
|
||||
.getCutiTahunanDiTglCutiBersama(CUTI_TAHUNAN, pegawaiId, tglStr);
|
||||
if (CommonUtil.isNotNullOrEmpty(tglCutiTahunanDiTglCutiBersama)) {
|
||||
if (listMap.size() == 2) {
|
||||
if (Arrays.asList(Master.ShiftKerja.TUJUH_BELAS_JAM_SHIFT)
|
||||
.contains(Integer.parseInt(listMap.get(1).get("idShift").toString()))) {
|
||||
if (Integer.parseInt(year) < 2023) {
|
||||
countDataHabsen += 2;
|
||||
} else {
|
||||
countDataHabsen += 1;
|
||||
}
|
||||
} else {
|
||||
countDataHabsen += 1;
|
||||
}
|
||||
} else {
|
||||
countDataHabsen += 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
dataCutiB = countDataHabsen;
|
||||
cutiIzinBuilder.dataCutiB(dataCutiB);
|
||||
// kondisikan cuti bersama yg sudah berlalu
|
||||
if (cutiTerpakaiN2 > dataCutiB2) {
|
||||
cutiTerpakaiB2 = dataCutiB2;
|
||||
} else {
|
||||
cutiTerpakaiB2 = cutiTerpakaiN2;
|
||||
}
|
||||
if (cutiTerpakaiN1 > dataCutiB1) {
|
||||
cutiTerpakaiB1 = dataCutiB1;
|
||||
} else {
|
||||
cutiTerpakaiB1 = cutiTerpakaiN1;
|
||||
}
|
||||
// Mendapatkan kondisi penangguhan saat ini
|
||||
cutiIzinBuilder.isTangguhkanB2(false);
|
||||
cutiIzinBuilder.isTangguhkanB1(false);
|
||||
cutiIzinBuilder.isTangguhkanB(false);
|
||||
Boolean jCutiN2 = jatahCutiDanIzinDao.getPenangguhanSisaCuti(yearN2, pegawaiId, Integer.valueOf(komponen));
|
||||
if (CommonUtil.isNotNullOrEmpty(jCutiN2)) {
|
||||
cutiIzinBuilder.isTangguhkanN2(jCutiN2);
|
||||
} else {
|
||||
jCutiN2 = false;
|
||||
cutiIzinBuilder.isTangguhkanN2(false);
|
||||
}
|
||||
Boolean jCutiN1 = jatahCutiDanIzinDao.getPenangguhanSisaCuti(yearN1, pegawaiId, Integer.valueOf(komponen));
|
||||
if (CommonUtil.isNotNullOrEmpty(jCutiN1)) {
|
||||
cutiIzinBuilder.isTangguhkanN1(jCutiN1);
|
||||
} else {
|
||||
jCutiN1 = false;
|
||||
cutiIzinBuilder.isTangguhkanN1(false);
|
||||
}
|
||||
Boolean jCutiN = jatahCutiDanIzinDao.getPenangguhanSisaCuti(year, pegawaiId, Integer.valueOf(komponen));
|
||||
if (CommonUtil.isNotNullOrEmpty(jCutiN)) {
|
||||
cutiIzinBuilder.isTangguhkanN(jCutiN);
|
||||
} else {
|
||||
cutiIzinBuilder.isTangguhkanN(false);
|
||||
}
|
||||
if (dataCutiB >= cutiTerpakaiN) {
|
||||
sisaCutiB = dataCutiB - cutiTerpakaiN;
|
||||
cutiTerpakaiB = cutiTerpakaiN;
|
||||
} else {
|
||||
sisaCutiB = 0;
|
||||
cutiTerpakaiB = dataCutiB;
|
||||
}
|
||||
cutiIzinBuilder.sisaCutiB2(sisaCutiB2);
|
||||
cutiIzinBuilder.sisaCutiB1(sisaCutiB1);
|
||||
cutiIzinBuilder.sisaCutiB(sisaCutiB);
|
||||
cutiIzinBuilder.cutiTerpakaiB2(cutiTerpakaiB2);
|
||||
cutiIzinBuilder.cutiTerpakaiB1(cutiTerpakaiB1);
|
||||
cutiIzinBuilder.cutiTerpakaiB(cutiTerpakaiB);
|
||||
// menghitung jatah cuti yang terpakai
|
||||
Integer jatahCutiTerpakaiN2 = 0, jatahCutiTerpakaiN1 = 0, jatahCutiTerpakaiN = 0;
|
||||
int allCutiTerpakai = difCutiTerpakai(cutiTerpakaiN2, dataCutiB2)
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) + difCutiTerpakai(cutiTerpakaiN, dataCutiB);
|
||||
if (dataCutiN2 > 0) {
|
||||
if (allCutiTerpakai >= dataCutiN2) {
|
||||
if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2)
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) < 12) {
|
||||
jatahCutiTerpakaiN2 = difCutiTerpakai(cutiTerpakaiN2, dataCutiB2)
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1);
|
||||
} else {
|
||||
jatahCutiTerpakaiN2 = dataCutiN2;
|
||||
}
|
||||
} else {
|
||||
if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2)
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) < 12) {
|
||||
jatahCutiTerpakaiN2 = difCutiTerpakai(cutiTerpakaiN2, dataCutiB2)
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1);
|
||||
} else {
|
||||
jatahCutiTerpakaiN2 = allCutiTerpakai;
|
||||
}
|
||||
}
|
||||
if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2) + difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) < 12) {
|
||||
if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2) > 0) {
|
||||
sisaCutiN2 = 0; // hangus
|
||||
} else {
|
||||
if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2)
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) < 6) {
|
||||
if (jatahCutiTerpakaiN2 == 0 && !jCutiN1) {
|
||||
sisaCutiN2 = 6;
|
||||
} else if (jatahCutiTerpakaiN2 == 0) {
|
||||
sisaCutiN2 = 0;
|
||||
} else if (!jCutiN2 && !jCutiN1) {
|
||||
sisaCutiN2 = 6 - jatahCutiTerpakaiN2;
|
||||
} else {
|
||||
sisaCutiN2 = 0;
|
||||
}
|
||||
} else {
|
||||
sisaCutiN2 = dataCutiN2 - jatahCutiTerpakaiN2;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (dataCutiN2 - jatahCutiTerpakaiN2 >= 6 && !jCutiN2) {
|
||||
sisaCutiN2 = 6 - jatahCutiTerpakaiN2;
|
||||
} else {
|
||||
sisaCutiN2 = dataCutiN2 - jatahCutiTerpakaiN2;
|
||||
}
|
||||
}
|
||||
if (sisaCutiN2 > 0 && difCutiTerpakai(cutiTerpakaiN, dataCutiB) > 0) {
|
||||
if (sisaCutiN2 > difCutiTerpakai(cutiTerpakaiN, dataCutiB)) {
|
||||
jatahCutiTerpakaiN2 += difCutiTerpakai(cutiTerpakaiN, dataCutiB);
|
||||
} else {
|
||||
jatahCutiTerpakaiN2 += sisaCutiN2;
|
||||
}
|
||||
}
|
||||
allCutiTerpakai = allCutiTerpakai - jatahCutiTerpakaiN2;
|
||||
if (allCutiTerpakai > 0) {
|
||||
if (allCutiTerpakai >= dataCutiN1) {
|
||||
jatahCutiTerpakaiN1 = dataCutiN1;
|
||||
allCutiTerpakai = allCutiTerpakai - jatahCutiTerpakaiN1;
|
||||
if ((allCutiTerpakai > 0) && (allCutiTerpakai <= dataCutiN)) {
|
||||
jatahCutiTerpakaiN = allCutiTerpakai;
|
||||
} else {
|
||||
jatahCutiTerpakaiN = 0;
|
||||
}
|
||||
} else {
|
||||
jatahCutiTerpakaiN1 = allCutiTerpakai;
|
||||
}
|
||||
}
|
||||
} else if (dataCutiN1 > 0) {
|
||||
if (allCutiTerpakai >= dataCutiN1) {
|
||||
jatahCutiTerpakaiN1 = dataCutiN1;
|
||||
allCutiTerpakai = allCutiTerpakai - jatahCutiTerpakaiN1;
|
||||
if ((allCutiTerpakai > 0) && (allCutiTerpakai <= dataCutiN)) {
|
||||
jatahCutiTerpakaiN = allCutiTerpakai;
|
||||
} else {
|
||||
jatahCutiTerpakaiN = 0;
|
||||
}
|
||||
} else {
|
||||
jatahCutiTerpakaiN1 = allCutiTerpakai;
|
||||
}
|
||||
} else if (dataCutiN > 0) {
|
||||
if (allCutiTerpakai <= dataCutiN) {
|
||||
jatahCutiTerpakaiN = allCutiTerpakai;
|
||||
} else {
|
||||
jatahCutiTerpakaiN = 0;
|
||||
}
|
||||
}
|
||||
// Menghitung cuti terpakai tahun n+1
|
||||
Integer cutiTerpakaiN3 = pegawaiHistoriRekapIndexDao.getCutiTerpakai(yearN3, pegawaiId, listKomponenIndex);
|
||||
if (CommonUtil.isNullOrEmpty(cutiTerpakaiN3))
|
||||
cutiTerpakaiN3 = 0;
|
||||
if (cutiTerpakaiN3 > 0) {
|
||||
// menghitung sisa cuti n-1 terlebih dahulu
|
||||
if (dataCutiN1 - jatahCutiTerpakaiN1 >= 6 && !jCutiN1) {
|
||||
sisaCutiN1 = 6 - jatahCutiTerpakaiN1;
|
||||
} else {
|
||||
sisaCutiN1 = dataCutiN1 - jatahCutiTerpakaiN1;
|
||||
}
|
||||
// juga menghitung sisa cuti n terlebih dahulu
|
||||
sisaCutiN = dataCutiN - jatahCutiTerpakaiN;
|
||||
// menghitung jatah cuti terpakai karena pengajuan lintas tahun
|
||||
if (difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) == 0 && !jCutiN1) {
|
||||
if (sisaCutiN1 > 0) {
|
||||
if (cutiTerpakaiN3 > sisaCutiN1) {
|
||||
jatahCutiTerpakaiN1 += sisaCutiN1;
|
||||
cutiTerpakaiN3 -= sisaCutiN1;
|
||||
if (sisaCutiN > 0) {
|
||||
if (cutiTerpakaiN3 > sisaCutiN) {
|
||||
jatahCutiTerpakaiN += sisaCutiN;
|
||||
} else {
|
||||
jatahCutiTerpakaiN += cutiTerpakaiN3;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
jatahCutiTerpakaiN1 += cutiTerpakaiN3;
|
||||
}
|
||||
} else if (sisaCutiN > 0) {
|
||||
if (cutiTerpakaiN3 > sisaCutiN) {
|
||||
jatahCutiTerpakaiN += sisaCutiN;
|
||||
} else {
|
||||
jatahCutiTerpakaiN += cutiTerpakaiN3;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (sisaCutiN > 0) {
|
||||
if (cutiTerpakaiN3 > sisaCutiN) {
|
||||
jatahCutiTerpakaiN += sisaCutiN;
|
||||
} else {
|
||||
jatahCutiTerpakaiN += cutiTerpakaiN3;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// put all data jatah cuti terpakai
|
||||
cutiIzinBuilder.cutiTerpakaiN2(jatahCutiTerpakaiN2);
|
||||
cutiIzinBuilder.cutiTerpakaiN1(jatahCutiTerpakaiN1);
|
||||
cutiIzinBuilder.cutiTerpakaiN(jatahCutiTerpakaiN);
|
||||
// menghitung sisa cuti
|
||||
if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2) + difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) < 12) {
|
||||
if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2) > 0) {
|
||||
sisaCutiN2 = 0; // hangus
|
||||
} else {
|
||||
if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2) + difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) < 6
|
||||
&& dataCutiN2 > 0) {
|
||||
if (jatahCutiTerpakaiN2 == 0 && !jCutiN1) {
|
||||
sisaCutiN2 = 6;
|
||||
} else if (jatahCutiTerpakaiN2 == 0) {
|
||||
sisaCutiN2 = 0;
|
||||
} else if (!jCutiN2 && !jCutiN1) {
|
||||
sisaCutiN2 = 6 - jatahCutiTerpakaiN2;
|
||||
} else {
|
||||
sisaCutiN2 = 0;
|
||||
}
|
||||
} else if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2)
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) < 6 && dataCutiN2 <= 0) {
|
||||
sisaCutiN2 = 0;
|
||||
} else if (difCutiTerpakai(cutiTerpakaiN2, dataCutiB2)
|
||||
+ difCutiTerpakai(cutiTerpakaiN1, dataCutiB1) > 6 && jCutiN1) {
|
||||
sisaCutiN2 = 0;
|
||||
} else {
|
||||
sisaCutiN2 = dataCutiN2 - jatahCutiTerpakaiN2;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (dataCutiN2 - jatahCutiTerpakaiN2 >= 6 && !jCutiN2) {
|
||||
sisaCutiN2 = 6 - jatahCutiTerpakaiN2;
|
||||
} else {
|
||||
sisaCutiN2 = dataCutiN2 - jatahCutiTerpakaiN2;
|
||||
}
|
||||
}
|
||||
if (dataCutiN1 - jatahCutiTerpakaiN1 >= 6 && !jCutiN1) {
|
||||
jumlahTglByPengajuan -= (dataHistoriCutiTerpakai + jatahCutiTerpakaiN2 + cutiTerpakaiB + cutiTerpakaiB1
|
||||
+ cutiTerpakaiB2);
|
||||
if (jumlahTglByPengajuan < 0)
|
||||
jumlahTglByPengajuan = 0;
|
||||
if (jumlahTglByPengajuan > jatahCutiTerpakaiN1) {
|
||||
sisaCutiN1 = 6;
|
||||
} else {
|
||||
sisaCutiN1 = 6 - (jatahCutiTerpakaiN1 - jumlahTglByPengajuan);
|
||||
}
|
||||
} else {
|
||||
sisaCutiN1 = dataCutiN1 - jatahCutiTerpakaiN1;
|
||||
}
|
||||
sisaCutiN = dataCutiN - jatahCutiTerpakaiN;
|
||||
// put all data sisa cuti
|
||||
cutiIzinBuilder.sisaCutiN2(sisaCutiN2);
|
||||
cutiIzinBuilder.sisaCutiN1(sisaCutiN1);
|
||||
cutiIzinBuilder.sisaCutiN(sisaCutiN);
|
||||
}
|
||||
if (statusPegawaiId == 24) {
|
||||
if (CommonUtil.isNotNullOrEmpty(jatahCuti))
|
||||
cutiIzinBuilder.jatahCuti("-");
|
||||
cutiIzinBuilder.sisaCuti("-");
|
||||
}
|
||||
if (statusPegawaiId == 25) {
|
||||
Map<String, Object> data = planningPegawaiStatusDao.getJatahCutiMelahirkan(statusPegawaiId);
|
||||
if (CommonUtil.isNotNullOrEmpty(jatahCuti))
|
||||
cutiIzinBuilder.jatahCuti(data.get("kuotaTotalHari").toString());
|
||||
cutiIzinBuilder.sisaCuti("-");
|
||||
}
|
||||
if (statusPegawaiId == 26) {
|
||||
if (CommonUtil.isNotNullOrEmpty(jatahCuti))
|
||||
cutiIzinBuilder.jatahCuti("-");
|
||||
cutiIzinBuilder.sisaCuti("-");
|
||||
}
|
||||
// Izin
|
||||
if (statusPegawaiId == 27) {
|
||||
Integer komponenIzin = 17; // komponenIndex untuk izin
|
||||
Integer jatahIzin = 2; // sesuai kesepakatan
|
||||
Integer jumlahIzinTerpakai = pegawaiHistoriRekapIndexDao.getIzinTerpakai(pegawaiId, komponenIzin);
|
||||
if (CommonUtil.isNotNullOrEmpty(jumlahIzinTerpakai)) {
|
||||
sisaIzin = jatahIzin - jumlahIzinTerpakai;
|
||||
} else {
|
||||
sisaIzin = jatahIzin;
|
||||
}
|
||||
cutiIzinBuilder.jatahIzin(jatahIzin);
|
||||
cutiIzinBuilder.sisaIzin(sisaIzin);
|
||||
}
|
||||
if (statusPegawaiId == 28) {
|
||||
if (CommonUtil.isNotNullOrEmpty(jatahCuti))
|
||||
cutiIzinBuilder.jatahCuti("-");
|
||||
cutiIzinBuilder.sisaCuti("-");
|
||||
}
|
||||
if (statusPegawaiId == 17) {
|
||||
Integer cutiTerpakai = pegawaiHistoriRekapIndexDao.getNilaiIndexPegawaiHistoriRekapIndex(pegawaiId, 17);
|
||||
Integer dataCuti = jatahCutiDanIzinDao.getDataCuti(year, pegawaiId, 17);
|
||||
if (CommonUtil.isNotNullOrEmpty(dataCuti)) {
|
||||
if (CommonUtil.isNullOrEmpty(cutiTerpakai))
|
||||
cutiTerpakai = 0;
|
||||
sisaCuti = dataCuti - cutiTerpakai;
|
||||
if (sisaCuti < 0)
|
||||
sisaCuti = 0;
|
||||
} else {
|
||||
sisaCuti = 0;
|
||||
dataCuti = 0;
|
||||
}
|
||||
cutiIzinBuilder.sisaCuti(String.valueOf(sisaCuti));
|
||||
cutiIzinBuilder.jatahCuti(String.valueOf(dataCuti));
|
||||
}
|
||||
// sakit
|
||||
if (statusPegawaiId == 29 || statusPegawaiId == 6) {
|
||||
Integer komponenSakit = 7;
|
||||
Integer komponenSakitShift = 8;
|
||||
Integer jumlahRawatJalan = pegawaiHistoriRekapIndexDao.getSakitTerpakai(pegawaiId, komponenSakit, 1);
|
||||
if (CommonUtil.isNullOrEmpty(jumlahRawatJalan))
|
||||
jumlahRawatJalan = pegawaiHistoriRekapIndexDao.getSakitTerpakai(pegawaiId, komponenSakitShift, 1);
|
||||
Integer jumlahRawatInap = pegawaiHistoriRekapIndexDao.getSakitTerpakai(pegawaiId, komponenSakit, 2);
|
||||
if (CommonUtil.isNullOrEmpty(jumlahRawatInap))
|
||||
jumlahRawatInap = pegawaiHistoriRekapIndexDao.getSakitTerpakai(pegawaiId, komponenSakitShift, 2);
|
||||
if ((CommonUtil.isNotNullOrEmpty(jumlahRawatJalan)) || (CommonUtil.isNotNullOrEmpty(jumlahRawatInap))) {
|
||||
sisaJatahRawatJalan = 3 - jumlahRawatJalan;
|
||||
sisaJatahRawatInap = 5 - jumlahRawatInap;
|
||||
}
|
||||
cutiIzinBuilder.sisaJatahRawatJalan(sisaJatahRawatJalan);
|
||||
cutiIzinBuilder.sisaJatahRawatInap(sisaJatahRawatInap);
|
||||
}
|
||||
return cutiIzinBuilder.build();
|
||||
}
|
||||
|
||||
private Integer difCutiTerpakai(Integer cutiTerpakai, Integer dataCuti) {
|
||||
int difCutiTerpakai = 0;
|
||||
if (cutiTerpakai > dataCuti)
|
||||
difCutiTerpakai = cutiTerpakai - dataCuti;
|
||||
return difCutiTerpakai;
|
||||
}
|
||||
|
||||
private JatahCutiRequest transform(Integer pegawaiId, String year, Integer statusPegawaiId) {
|
||||
return JatahCutiRequest.builder().pegawaiId(pegawaiId).year(year).statusPegawaiId(statusPegawaiId).build();
|
||||
}
|
||||
|
||||
private DataCutiDto tangguhkanCutiBersama(DataCutiDto dto, JatahCutiRequest request) {
|
||||
Date tahunLalu = DateUtil.getInstanceCalendar(-1);
|
||||
Date awalTahunLalu = DateUtil.startYear(tahunLalu);
|
||||
Date akhirTahunLalu = DateUtil.endYear(tahunLalu);
|
||||
List<MapKalenderToHariLibur> listKalenderCutiBersama = mapKalenderToHariLiburDao.getByTahun(LIBUR_CB,
|
||||
awalTahunLalu, akhirTahunLalu);
|
||||
List<MapKalenderToHariLibur> listKalenderCutiBersamaBisaDitangguhkan = listKalenderCutiBersama.stream()
|
||||
.filter(MapKalenderToHariLibur::getIsCutiBersamaDitangguhkan).collect(Collectors.toList());
|
||||
List<ListTanggalCuti> listCutiTahunLaluBelumDisetujui = tanggalCutiDao
|
||||
.notApprovedByPermohonan(request.getPegawaiId(), CUTI_TAHUNAN, awalTahunLalu, akhirTahunLalu);
|
||||
List<PresensiHariLibur> listPresensiTahunLalu = mapKalenderToHariLiburDao
|
||||
.getPresensiByTahun(request.getPegawaiId(), LIBUR_CB, awalTahunLalu, akhirTahunLalu);
|
||||
int presensiCutiBersama = countValidPresensi(listPresensiTahunLalu, listKalenderCutiBersama);
|
||||
int jatahDitangguhkan = countValidPresensi(listPresensiTahunLalu, listKalenderCutiBersamaBisaDitangguhkan);
|
||||
if (presensiCutiBersama - dto.getCutiTerpakaiB1()
|
||||
+ listCutiTahunLaluBelumDisetujui.size() > jatahDitangguhkan) {
|
||||
dto.setDataCutiB(dto.getDataCutiB() + jatahDitangguhkan);
|
||||
dto.setSisaCutiB(dto.getDataCutiB() - dto.getCutiTerpakaiB());
|
||||
}
|
||||
return dto;
|
||||
}
|
||||
|
||||
private int countValidPresensi(List<PresensiHariLibur> listPresensiDiCutiBersama,
|
||||
List<MapKalenderToHariLibur> listKalenderCutiBersama) {
|
||||
int result = 0;
|
||||
for (PresensiHariLibur presensiDiCutiBersama : listPresensiDiCutiBersama) {
|
||||
Optional<MapKalenderToHariLibur> any = listKalenderCutiBersama.stream()
|
||||
.filter(k -> presensiDiCutiBersama.getTanggal().equals(k.getTanggal().getTanggal())).findAny();
|
||||
if (any.isPresent())
|
||||
result++;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
@ -4,8 +4,10 @@ import com.jasamedika.medifirst2000.constants.Master;
|
||||
import com.jasamedika.medifirst2000.converter.BaseConverterImpl;
|
||||
import com.jasamedika.medifirst2000.dao.*;
|
||||
import com.jasamedika.medifirst2000.dao.custom.PlanningPegawaiStatusDaoCustom;
|
||||
import com.jasamedika.medifirst2000.dto.DataCutiDto;
|
||||
import com.jasamedika.medifirst2000.entities.*;
|
||||
import com.jasamedika.medifirst2000.exception.ServiceVOException;
|
||||
import com.jasamedika.medifirst2000.service.JatahCutiDanIzinService;
|
||||
import com.jasamedika.medifirst2000.service.LoginUserService;
|
||||
import com.jasamedika.medifirst2000.service.MonitoringAbsenService;
|
||||
import com.jasamedika.medifirst2000.service.PermohonanStatusPegawaiService;
|
||||
@ -25,6 +27,9 @@ import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.*;
|
||||
|
||||
import static java.util.Calendar.DAY_OF_MONTH;
|
||||
import static java.util.Calendar.MONTH;
|
||||
|
||||
@Service("PegawaiCutiService")
|
||||
public class PermohonanStatusPegawaiImpl implements PermohonanStatusPegawaiService {
|
||||
|
||||
@ -34,6 +39,9 @@ public class PermohonanStatusPegawaiImpl implements PermohonanStatusPegawaiServi
|
||||
@Autowired
|
||||
private MonitoringAbsenService monitoringAbsenService;
|
||||
|
||||
@Autowired
|
||||
private JatahCutiDanIzinService jatahCutiDanIzinService;
|
||||
|
||||
@Autowired
|
||||
private PlanningPegawaiStatusDao planningPegawaiStatusDao;
|
||||
|
||||
@ -187,7 +195,6 @@ public class PermohonanStatusPegawaiImpl implements PermohonanStatusPegawaiServi
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer difCutiTerpakai(Integer cutiTerpakai, Integer dataCuti) {
|
||||
int difCutiTerpakai = 0;
|
||||
if (cutiTerpakai > dataCuti)
|
||||
@ -1820,80 +1827,24 @@ public class PermohonanStatusPegawaiImpl implements PermohonanStatusPegawaiServi
|
||||
Map<String, Object> result = new HashMap<>();
|
||||
if (CommonUtil.isNotNullOrEmpty(vo)) {
|
||||
for (FactoRateKelompokShiftVO vos : vo.getFactorRateKelompokShift()) {
|
||||
Date monthDayNow = new Date();
|
||||
Calendar cal = Calendar.getInstance();
|
||||
cal.setTime(monthDayNow);
|
||||
String monthPeriodInput = String.valueOf(cal.get(Calendar.MONTH) + 1);
|
||||
if (monthPeriodInput.length() == 1) {
|
||||
monthPeriodInput = "0" + monthPeriodInput;
|
||||
}
|
||||
String dayPeriodInput = String.valueOf(cal.get(Calendar.DAY_OF_MONTH));
|
||||
if (dayPeriodInput.length() == 1) {
|
||||
dayPeriodInput = "0" + dayPeriodInput;
|
||||
}
|
||||
String periodeInput = Integer.parseInt(vos.getPeriode()) - 1 + "-" + monthPeriodInput + "-"
|
||||
+ dayPeriodInput;
|
||||
String periodeInput = getString(vos);
|
||||
List<Pegawai> listpegawai = pegawaiDao.findPegawaiStatusAktif(vos.getKelompokShift().getId(),
|
||||
periodeInput);
|
||||
for (Pegawai pegawai : listpegawai) {
|
||||
int todaysYear = Calendar.getInstance().get(Calendar.YEAR);
|
||||
int todaysYear1 = Integer
|
||||
.parseInt(settingDataFixedDao.getSettingDataFixed("tahunPenangguhanException"));
|
||||
// storing data cuti
|
||||
Map<String, Object> dataCuti = getDataCuti(pegawai.getId(), String.valueOf(todaysYear),
|
||||
vos.getKomponenIndex().getId()); // menghitung data
|
||||
// cuti selalu
|
||||
// based on
|
||||
// tahun
|
||||
// berjalan
|
||||
List<Map<String, Object>> listDataCuti = new ArrayList<>();
|
||||
Map<String, Object> mapDataCutiB2 = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiB1 = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiB = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiN = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiN1 = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiN2 = new HashMap<>();
|
||||
mapDataCutiB2.put("sisaCuti", dataCuti.get("sisaCutiB2"));
|
||||
mapDataCutiB2.put("cutiTerpakai", dataCuti.get("cutiTerpakaiB2"));
|
||||
mapDataCutiB2.put("isTangguhkan", dataCuti.get("isTangguhkanB2"));
|
||||
mapDataCutiB2.put("tahun", todaysYear - 2);
|
||||
mapDataCutiB2.put("komponenIndex", 21);
|
||||
mapDataCutiB1.put("sisaCuti", dataCuti.get("sisaCutiB1"));
|
||||
mapDataCutiB1.put("cutiTerpakai", dataCuti.get("cutiTerpakaiB1"));
|
||||
mapDataCutiB1.put("isTangguhkan", dataCuti.get("isTangguhkanB1"));
|
||||
mapDataCutiB1.put("tahun", todaysYear - 1);
|
||||
mapDataCutiB1.put("komponenIndex", 21);
|
||||
mapDataCutiB.put("sisaCuti", dataCuti.get("sisaCutiB"));
|
||||
mapDataCutiB.put("cutiTerpakai", dataCuti.get("cutiTerpakaiB"));
|
||||
mapDataCutiB.put("isTangguhkan", dataCuti.get("isTangguhkanB"));
|
||||
mapDataCutiB.put("tahun", todaysYear);
|
||||
mapDataCutiB.put("komponenIndex", 21);
|
||||
mapDataCutiN.put("sisaCuti", dataCuti.get("sisaCutiN"));
|
||||
mapDataCutiN.put("cutiTerpakai", dataCuti.get("cutiTerpakaiN"));
|
||||
mapDataCutiN.put("isTangguhkan", dataCuti.get("isTangguhkanN"));
|
||||
mapDataCutiN.put("tahun", todaysYear);
|
||||
mapDataCutiN.put("komponenIndex", 5);
|
||||
mapDataCutiN1.put("sisaCuti", dataCuti.get("sisaCutiN1"));
|
||||
mapDataCutiN1.put("cutiTerpakai", dataCuti.get("cutiTerpakaiN1"));
|
||||
mapDataCutiN1.put("isTangguhkan", dataCuti.get("isTangguhkanN1"));
|
||||
mapDataCutiN1.put("tahun", todaysYear - 1);
|
||||
mapDataCutiN1.put("komponenIndex", 5);
|
||||
mapDataCutiN2.put("sisaCuti", dataCuti.get("sisaCutiN2"));
|
||||
mapDataCutiN2.put("cutiTerpakai", dataCuti.get("cutiTerpakaiN2"));
|
||||
mapDataCutiN2.put("isTangguhkan", dataCuti.get("isTangguhkanN2"));
|
||||
mapDataCutiN2.put("tahun", todaysYear - 2);
|
||||
mapDataCutiN2.put("komponenIndex", 5);
|
||||
listDataCuti.add(mapDataCutiB2);
|
||||
listDataCuti.add(mapDataCutiB1);
|
||||
listDataCuti.add(mapDataCutiB);
|
||||
listDataCuti.add(mapDataCutiN);
|
||||
listDataCuti.add(mapDataCutiN1);
|
||||
listDataCuti.add(mapDataCutiN2);
|
||||
/*
|
||||
* storing data cuti, menghitung data cuti selalu based on
|
||||
* tahun berjalan
|
||||
*/
|
||||
DataCutiDto cutiIzin = jatahCutiDanIzinService.getDataCuti(pegawai.getId(),
|
||||
String.valueOf(todaysYear), vos.getKomponenIndex().getId());
|
||||
List<Map<String, Object>> listDataCuti = getMaps(cutiIzin, todaysYear);
|
||||
KomponenIndexVO kompIndexVoB = new KomponenIndexVO();
|
||||
kompIndexVoB.setId(21);
|
||||
KomponenIndexVO kompIndexVoT = new KomponenIndexVO();
|
||||
kompIndexVoT.setId(5);
|
||||
|
||||
for (Map<String, Object> mapDataCuti : listDataCuti) {
|
||||
JatahCutiDanIzin jatahCutiDanIzin = new JatahCutiDanIzin();
|
||||
jatahCutiDanIzin.setPegawai(pegawai);
|
||||
@ -2009,6 +1960,66 @@ public class PermohonanStatusPegawaiImpl implements PermohonanStatusPegawaiServi
|
||||
return result;
|
||||
}
|
||||
|
||||
private static List<Map<String, Object>> getMaps(DataCutiDto cutiIzin, int todaysYear) {
|
||||
List<Map<String, Object>> listDataCuti = new ArrayList<>();
|
||||
Map<String, Object> mapDataCutiB2 = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiB1 = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiB = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiN = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiN1 = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiN2 = new HashMap<>();
|
||||
mapDataCutiB2.put("sisaCuti", cutiIzin.getSisaCutiB2());
|
||||
mapDataCutiB2.put("cutiTerpakai", cutiIzin.getCutiTerpakaiB2());
|
||||
mapDataCutiB2.put("isTangguhkan", cutiIzin.getIsTangguhkanB2());
|
||||
mapDataCutiB2.put("tahun", todaysYear - 2);
|
||||
mapDataCutiB2.put("komponenIndex", 21);
|
||||
mapDataCutiB1.put("sisaCuti", cutiIzin.getSisaCutiB1());
|
||||
mapDataCutiB1.put("cutiTerpakai", cutiIzin.getCutiTerpakaiB1());
|
||||
mapDataCutiB1.put("isTangguhkan", cutiIzin.getIsTangguhkanB1());
|
||||
mapDataCutiB1.put("tahun", todaysYear - 1);
|
||||
mapDataCutiB1.put("komponenIndex", 21);
|
||||
mapDataCutiB.put("sisaCuti", cutiIzin.getSisaCutiB());
|
||||
mapDataCutiB.put("cutiTerpakai", cutiIzin.getCutiTerpakaiB());
|
||||
mapDataCutiB.put("isTangguhkan", cutiIzin.getIsTangguhkanB());
|
||||
mapDataCutiB.put("tahun", todaysYear);
|
||||
mapDataCutiB.put("komponenIndex", 21);
|
||||
mapDataCutiN.put("sisaCuti", cutiIzin.getSisaCutiN());
|
||||
mapDataCutiN.put("cutiTerpakai", cutiIzin.getCutiTerpakaiN());
|
||||
mapDataCutiN.put("isTangguhkan", cutiIzin.getIsTangguhkanN());
|
||||
mapDataCutiN.put("tahun", todaysYear);
|
||||
mapDataCutiN.put("komponenIndex", 5);
|
||||
mapDataCutiN1.put("sisaCuti", cutiIzin.getSisaCutiN1());
|
||||
mapDataCutiN1.put("cutiTerpakai", cutiIzin.getCutiTerpakaiN1());
|
||||
mapDataCutiN1.put("isTangguhkan", cutiIzin.getIsTangguhkanN1());
|
||||
mapDataCutiN1.put("tahun", todaysYear - 1);
|
||||
mapDataCutiN1.put("komponenIndex", 5);
|
||||
mapDataCutiN2.put("sisaCuti", cutiIzin.getSisaCutiN2());
|
||||
mapDataCutiN2.put("cutiTerpakai", cutiIzin.getCutiTerpakaiN2());
|
||||
mapDataCutiN2.put("isTangguhkan", cutiIzin.getIsTangguhkanN2());
|
||||
mapDataCutiN2.put("tahun", todaysYear - 2);
|
||||
mapDataCutiN2.put("komponenIndex", 5);
|
||||
listDataCuti.add(mapDataCutiB2);
|
||||
listDataCuti.add(mapDataCutiB1);
|
||||
listDataCuti.add(mapDataCutiB);
|
||||
listDataCuti.add(mapDataCutiN);
|
||||
listDataCuti.add(mapDataCutiN1);
|
||||
listDataCuti.add(mapDataCutiN2);
|
||||
return listDataCuti;
|
||||
}
|
||||
|
||||
private static String getString(FactoRateKelompokShiftVO vos) {
|
||||
Date monthDayNow = new Date();
|
||||
Calendar cal = Calendar.getInstance();
|
||||
cal.setTime(monthDayNow);
|
||||
String monthPeriodInput = String.valueOf(cal.get(MONTH) + 1);
|
||||
if (monthPeriodInput.length() == 1)
|
||||
monthPeriodInput = "0" + monthPeriodInput;
|
||||
String dayPeriodInput = String.valueOf(cal.get(DAY_OF_MONTH));
|
||||
if (dayPeriodInput.length() == 1)
|
||||
dayPeriodInput = "0" + dayPeriodInput;
|
||||
return Integer.parseInt(vos.getPeriode()) - 1 + "-" + monthPeriodInput + "-" + dayPeriodInput;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> setJatahCutiPegawai(JatahCutiDanIzinVO vo) {
|
||||
Map<String, Object> result = new HashMap<>();
|
||||
@ -2016,53 +2027,13 @@ public class PermohonanStatusPegawaiImpl implements PermohonanStatusPegawaiServi
|
||||
int todaysYear = Calendar.getInstance().get(Calendar.YEAR);
|
||||
int todaysYear1 = todaysYear - 1;
|
||||
|
||||
// storing_data_cuti
|
||||
Map<String, Object> dataCuti = getDataCuti(vo.getPegawai().getId(), String.valueOf(todaysYear),
|
||||
vo.getKomponenIndex().getId()); // menghitung_data_cuti_selalu_based_on_tahun_berjalan
|
||||
|
||||
List<Map<String, Object>> listDataCuti = new ArrayList<>();
|
||||
Map<String, Object> mapDataCutiB2 = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiB1 = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiB = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiN = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiN1 = new HashMap<>();
|
||||
Map<String, Object> mapDataCutiN2 = new HashMap<>();
|
||||
mapDataCutiB2.put("sisaCuti", dataCuti.get("sisaCutiB2"));
|
||||
mapDataCutiB2.put("cutiTerpakai", dataCuti.get("cutiTerpakaiB2"));
|
||||
mapDataCutiB2.put("isTangguhkan", dataCuti.get("isTangguhkanB2"));
|
||||
mapDataCutiB2.put("tahun", todaysYear - 2);
|
||||
mapDataCutiB2.put("komponenIndex", 21);
|
||||
mapDataCutiB1.put("sisaCuti", dataCuti.get("sisaCutiB1"));
|
||||
mapDataCutiB1.put("cutiTerpakai", dataCuti.get("cutiTerpakaiB1"));
|
||||
mapDataCutiB1.put("isTangguhkan", dataCuti.get("isTangguhkanB1"));
|
||||
mapDataCutiB1.put("tahun", todaysYear - 1);
|
||||
mapDataCutiB1.put("komponenIndex", 21);
|
||||
mapDataCutiB.put("sisaCuti", dataCuti.get("sisaCutiB"));
|
||||
mapDataCutiB.put("cutiTerpakai", dataCuti.get("cutiTerpakaiB"));
|
||||
mapDataCutiB.put("isTangguhkan", dataCuti.get("isTangguhkanB"));
|
||||
mapDataCutiB.put("tahun", todaysYear);
|
||||
mapDataCutiB.put("komponenIndex", 21);
|
||||
mapDataCutiN.put("sisaCuti", dataCuti.get("sisaCutiN"));
|
||||
mapDataCutiN.put("cutiTerpakai", dataCuti.get("cutiTerpakaiN"));
|
||||
mapDataCutiN.put("isTangguhkan", dataCuti.get("isTangguhkanN"));
|
||||
mapDataCutiN.put("tahun", todaysYear);
|
||||
mapDataCutiN.put("komponenIndex", 5);
|
||||
mapDataCutiN1.put("sisaCuti", dataCuti.get("sisaCutiN1"));
|
||||
mapDataCutiN1.put("cutiTerpakai", dataCuti.get("cutiTerpakaiN1"));
|
||||
mapDataCutiN1.put("isTangguhkan", dataCuti.get("isTangguhkanN1"));
|
||||
mapDataCutiN1.put("tahun", todaysYear - 1);
|
||||
mapDataCutiN1.put("komponenIndex", 5);
|
||||
mapDataCutiN2.put("sisaCuti", dataCuti.get("sisaCutiN2"));
|
||||
mapDataCutiN2.put("cutiTerpakai", dataCuti.get("cutiTerpakaiN2"));
|
||||
mapDataCutiN2.put("isTangguhkan", dataCuti.get("isTangguhkanN2"));
|
||||
mapDataCutiN2.put("tahun", todaysYear - 2);
|
||||
mapDataCutiN2.put("komponenIndex", 5);
|
||||
listDataCuti.add(mapDataCutiB2);
|
||||
listDataCuti.add(mapDataCutiB1);
|
||||
listDataCuti.add(mapDataCutiB);
|
||||
listDataCuti.add(mapDataCutiN);
|
||||
listDataCuti.add(mapDataCutiN1);
|
||||
listDataCuti.add(mapDataCutiN2);
|
||||
/*
|
||||
* storing_data_cuti
|
||||
* menghitung_data_cuti_selalu_based_on_tahun_berjalan
|
||||
*/
|
||||
DataCutiDto cutiIzin = jatahCutiDanIzinService.getDataCuti(vo.getPegawai().getId(),
|
||||
String.valueOf(todaysYear), vo.getKomponenIndex().getId());
|
||||
List<Map<String, Object>> listDataCuti = getMaps(cutiIzin, todaysYear);
|
||||
KomponenIndexVO kompIndexVoB = new KomponenIndexVO();
|
||||
kompIndexVoB.setId(21);
|
||||
KomponenIndexVO kompIndexVoT = new KomponenIndexVO();
|
||||
@ -2227,7 +2198,7 @@ public class PermohonanStatusPegawaiImpl implements PermohonanStatusPegawaiServi
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> perbaruiDataCuti(Integer idPegawai, Integer idStatusPegawai) {
|
||||
public DataCutiDto perbaruiDataCuti(Integer idPegawai, Integer idStatusPegawai) {
|
||||
PegawaiVO pegawaiVo = new PegawaiVO();
|
||||
pegawaiVo.setId(idPegawai);
|
||||
|
||||
@ -2243,14 +2214,14 @@ public class PermohonanStatusPegawaiImpl implements PermohonanStatusPegawaiServi
|
||||
int yearn2 = Integer.parseInt(year) - 2;
|
||||
String yearN2 = Integer.toString(yearn2);
|
||||
|
||||
Map<String, Object> dataCuti = this.getDataCuti(idPegawai, year, idStatusPegawai);
|
||||
DataCutiDto cutiIzin = jatahCutiDanIzinService.getDataCuti(idPegawai, year, idStatusPegawai);
|
||||
|
||||
JatahCutiDanIzinVO voTahunIni = new JatahCutiDanIzinVO();
|
||||
voTahunIni.setStatusEnabled(Master.STATUS_ENABLE_TRUE);
|
||||
voTahunIni.setTahun(year);
|
||||
voTahunIni.setKdProfile(Master.KODE_PROFILE);
|
||||
voTahunIni.setPegawai(pegawaiVo);
|
||||
voTahunIni.setValue(Integer.valueOf(dataCuti.get("dataCutiB").toString()));
|
||||
voTahunIni.setValue(Integer.valueOf(cutiIzin.getDataCutiB().toString()));
|
||||
voTahunIni.setKomponenIndex(komponenIndexVo);
|
||||
voTahunIni.setIsTangguhkan(false);
|
||||
this.setJatahCutiPegawaiRecursive(voTahunIni);
|
||||
@ -2260,7 +2231,7 @@ public class PermohonanStatusPegawaiImpl implements PermohonanStatusPegawaiServi
|
||||
voTahunLalu.setTahun(yearN1);
|
||||
voTahunLalu.setKdProfile(Master.KODE_PROFILE);
|
||||
voTahunLalu.setPegawai(pegawaiVo);
|
||||
voTahunLalu.setValue(Integer.valueOf(dataCuti.get("dataCutiB1").toString()));
|
||||
voTahunLalu.setValue(Integer.valueOf(cutiIzin.getDataCutiB1().toString()));
|
||||
voTahunLalu.setKomponenIndex(komponenIndexVo);
|
||||
voTahunLalu.setIsTangguhkan(false);
|
||||
this.setJatahCutiPegawaiRecursive(voTahunLalu);
|
||||
@ -2270,12 +2241,12 @@ public class PermohonanStatusPegawaiImpl implements PermohonanStatusPegawaiServi
|
||||
voDuaTahunLalu.setTahun(yearN2);
|
||||
voDuaTahunLalu.setKdProfile(Master.KODE_PROFILE);
|
||||
voDuaTahunLalu.setPegawai(pegawaiVo);
|
||||
voDuaTahunLalu.setValue(Integer.valueOf(dataCuti.get("dataCutiB2").toString()));
|
||||
voDuaTahunLalu.setValue(Integer.valueOf(cutiIzin.getDataCutiB2().toString()));
|
||||
voDuaTahunLalu.setKomponenIndex(komponenIndexVo);
|
||||
voDuaTahunLalu.setIsTangguhkan(false);
|
||||
this.setJatahCutiPegawaiRecursive(voDuaTahunLalu);
|
||||
|
||||
return new HashMap<>(dataCuti);
|
||||
return cutiIzin;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -76,9 +76,6 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
|
||||
@Autowired
|
||||
private MonitoringAbsenService monitoringAbsenService;
|
||||
|
||||
@Autowired
|
||||
private PermohonanStatusPegawaiService permohonanStatusPegawaiService;
|
||||
|
||||
@Autowired
|
||||
private SlipGajiService slipGajiService;
|
||||
|
||||
@ -115,6 +112,9 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
|
||||
@Autowired
|
||||
private SlipGajiDao slipGajiDao;
|
||||
|
||||
@Autowired
|
||||
private JatahCutiDanIzinService jatahCutiDanIzinService;
|
||||
|
||||
private static final String[] INDONESIAN_WEEK = new String[] { "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu",
|
||||
"Minggu" };
|
||||
|
||||
@ -1861,12 +1861,10 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
|
||||
result.put("noHandphone", planningPegawaiStatus.getNomorTelepon());
|
||||
result.put("unitKerja", pegawai.get("unitKerja"));
|
||||
result.put("tahun", pegawai.get("tahun"));
|
||||
Map<String, Object> cutiTahunan = permohonanStatusPegawaiService
|
||||
.getDataCuti(planningPegawaiStatus.getPegawai().getId(), null, 1);
|
||||
if (CommonUtil.isNotNullOrEmpty(cutiTahunan)) {
|
||||
result.put("cutiTerpakai", cutiTahunan.get("cutiTerpakai"));
|
||||
result.put("sisaCuti", cutiTahunan.get("sisaCuti"));
|
||||
}
|
||||
DataCutiDto cutiIzin = jatahCutiDanIzinService.getDataCuti(planningPegawaiStatus.getPegawai().getId(),
|
||||
null, 1);
|
||||
result.put("cutiTerpakai", cutiIzin.getCutiTerpakaiN());
|
||||
result.put("sisaCuti", cutiIzin.getSisaCuti());
|
||||
}
|
||||
}
|
||||
return result;
|
||||
@ -2094,18 +2092,16 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
|
||||
result.put("noHandphone", planningPegawaiStatus.getNomorTelepon());
|
||||
result.put("unitKerja", unitKerja.getName());
|
||||
result.put("tahun", pegawai.get("tahun"));
|
||||
Map<String, Object> cutiTahunan = permohonanStatusPegawaiService
|
||||
.getDataCuti(planningPegawaiStatus.getPegawai().getId(), null, 1);
|
||||
if (CommonUtil.isNotNullOrEmpty(cutiTahunan)) {
|
||||
result.put("cutiTerpakai", cutiTahunan.get("cutiTerpakaiN"));
|
||||
result.put("sisaCuti", cutiTahunan.get("sisaCutiN"));
|
||||
result.put("cutiTerpakaiN1", cutiTahunan.get("cutiTerpakaiN1"));
|
||||
result.put("sisaCutiN1", cutiTahunan.get("sisaCutiN1"));
|
||||
result.put("cutiTerpakaiN2", cutiTahunan.get("cutiTerpakaiN2"));
|
||||
result.put("sisaCutiN2", cutiTahunan.get("sisaCutiN2"));
|
||||
result.put("cutiTerpakaiB", cutiTahunan.get("cutiTerpakaiB"));
|
||||
result.put("sisaCutiB", cutiTahunan.get("sisaCutiB"));
|
||||
}
|
||||
DataCutiDto cutiIzin = jatahCutiDanIzinService.getDataCuti(planningPegawaiStatus.getPegawai().getId(),
|
||||
null, 1);
|
||||
result.put("cutiTerpakai", cutiIzin.getCutiTerpakaiN());
|
||||
result.put("sisaCuti", cutiIzin.getSisaCutiN());
|
||||
result.put("cutiTerpakaiN1", cutiIzin.getCutiTerpakaiN1());
|
||||
result.put("sisaCutiN1", cutiIzin.getSisaCutiN1());
|
||||
result.put("cutiTerpakaiN2", cutiIzin.getCutiTerpakaiN2());
|
||||
result.put("sisaCutiN2", cutiIzin.getSisaCutiN2());
|
||||
result.put("cutiTerpakaiB", cutiIzin.getCutiTerpakaiB());
|
||||
result.put("sisaCutiB", cutiIzin.getSisaCutiB());
|
||||
}
|
||||
}
|
||||
return result;
|
||||
@ -2292,18 +2288,16 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
|
||||
result.put("noHandphone", planningPegawaiStatus.getNomorTelepon());
|
||||
result.put("unitKerja", pegawai.get("unitKerja"));
|
||||
result.put("tahun", pegawai.get("tahun"));
|
||||
Map<String, Object> cutiTahunan = permohonanStatusPegawaiService
|
||||
.getDataCuti(planningPegawaiStatus.getPegawai().getId(), null, 1);
|
||||
if (CommonUtil.isNotNullOrEmpty(cutiTahunan)) {
|
||||
result.put("cutiTerpakai", cutiTahunan.get("cutiTerpakaiN"));
|
||||
result.put("sisaCuti", cutiTahunan.get("sisaCutiN"));
|
||||
result.put("cutiTerpakaiN1", cutiTahunan.get("cutiTerpakaiN1"));
|
||||
result.put("sisaCutiN1", cutiTahunan.get("sisaCutiN1"));
|
||||
result.put("cutiTerpakaiN2", cutiTahunan.get("cutiTerpakaiN2"));
|
||||
result.put("sisaCutiN2", cutiTahunan.get("sisaCutiN2"));
|
||||
result.put("cutiTerpakaiB", cutiTahunan.get("cutiTerpakaiB"));
|
||||
result.put("sisaCutiB", cutiTahunan.get("sisaCutiB"));
|
||||
}
|
||||
DataCutiDto cutiIzin = jatahCutiDanIzinService.getDataCuti(planningPegawaiStatus.getPegawai().getId(),
|
||||
null, 1);
|
||||
result.put("cutiTerpakai", cutiIzin.getCutiTerpakaiN());
|
||||
result.put("sisaCuti", cutiIzin.getSisaCutiN());
|
||||
result.put("cutiTerpakaiN1", cutiIzin.getCutiTerpakaiN1());
|
||||
result.put("sisaCutiN1", cutiIzin.getSisaCutiN1());
|
||||
result.put("cutiTerpakaiN2", cutiIzin.getCutiTerpakaiN2());
|
||||
result.put("sisaCutiN2", cutiIzin.getSisaCutiN2());
|
||||
result.put("cutiTerpakaiB", cutiIzin.getCutiTerpakaiB());
|
||||
result.put("sisaCutiB", cutiIzin.getSisaCutiB());
|
||||
}
|
||||
}
|
||||
return result;
|
||||
@ -2404,12 +2398,10 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
|
||||
result.put("noHandphone", planningPegawaiStatus.getNomorTelepon());
|
||||
result.put("unitKerja", unitKerja.getName());
|
||||
result.put("tahun", pegawai.get("tahun"));
|
||||
Map<String, Object> cutiTahunan = permohonanStatusPegawaiService
|
||||
.getDataCuti(planningPegawaiStatus.getPegawai().getId(), null, 1);
|
||||
if (CommonUtil.isNotNullOrEmpty(cutiTahunan)) {
|
||||
result.put("cutiTerpakai", cutiTahunan.get("cutiTerpakai"));
|
||||
result.put("sisaCuti", cutiTahunan.get("sisaCuti"));
|
||||
}
|
||||
DataCutiDto cutiIzin = jatahCutiDanIzinService.getDataCuti(planningPegawaiStatus.getPegawai().getId(),
|
||||
null, 1);
|
||||
result.put("cutiTerpakai", cutiIzin.getCutiTerpakaiN());
|
||||
result.put("sisaCuti", cutiIzin.getSisaCuti());
|
||||
}
|
||||
}
|
||||
return result;
|
||||
@ -2569,12 +2561,10 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
|
||||
result.put("noHandphone", planningPegawaiStatus.getNomorTelepon());
|
||||
result.put("unitKerja", unitKerja.getName());
|
||||
result.put("tahun", pegawai.get("tahun"));
|
||||
Map<String, Object> cutiTahunan = permohonanStatusPegawaiService
|
||||
.getDataCuti(planningPegawaiStatus.getPegawai().getId(), null, 1);
|
||||
if (CommonUtil.isNotNullOrEmpty(cutiTahunan)) {
|
||||
result.put("cutiTerpakai", cutiTahunan.get("cutiTerpakai"));
|
||||
result.put("sisaCuti", cutiTahunan.get("sisaCuti"));
|
||||
}
|
||||
DataCutiDto cutiIzin = jatahCutiDanIzinService.getDataCuti(planningPegawaiStatus.getPegawai().getId(),
|
||||
null, 1);
|
||||
result.put("cutiTerpakai", cutiIzin.getCutiTerpakaiN());
|
||||
result.put("sisaCuti", cutiIzin.getSisaCuti());
|
||||
}
|
||||
}
|
||||
return result;
|
||||
|
||||
@ -237,6 +237,12 @@ public final class DateUtil implements Serializable {
|
||||
return now.get(Calendar.YEAR);
|
||||
}
|
||||
|
||||
public static Date getInstanceCalendar(int addYear) {
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
calendar.add(Calendar.YEAR, addYear);
|
||||
return calendar.getTime();
|
||||
}
|
||||
|
||||
public static final synchronized Integer getYearFromDate(Date date) {
|
||||
Calendar cal = Calendar.getInstance();
|
||||
cal.setTime(date);
|
||||
|
||||
@ -0,0 +1,78 @@
|
||||
package com.jasamedika.medifirst2000.dto;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
/**
|
||||
* @author Salman
|
||||
* @version 1.0.0
|
||||
* @since 09/01/2025
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class DataCutiDto {
|
||||
|
||||
private String sisaCuti;
|
||||
|
||||
private Integer sisaIzin;
|
||||
|
||||
private Integer sisaJatahRawatJalan;
|
||||
|
||||
private Integer sisaJatahRawatInap;
|
||||
|
||||
private Integer sisaCutiB;
|
||||
|
||||
private Integer sisaCutiB1;
|
||||
|
||||
private Integer sisaCutiB2;
|
||||
|
||||
private Integer sisaCutiN;
|
||||
|
||||
private Integer sisaCutiN1;
|
||||
|
||||
private Integer sisaCutiN2;
|
||||
|
||||
private Integer cutiTerpakaiB;
|
||||
|
||||
private Integer cutiTerpakaiB1;
|
||||
|
||||
private Integer cutiTerpakaiB2;
|
||||
|
||||
private Integer cutiTerpakaiN;
|
||||
|
||||
private Integer cutiTerpakaiN1;
|
||||
|
||||
private Integer cutiTerpakaiN2;
|
||||
|
||||
private Boolean isTangguhkanB;
|
||||
|
||||
private Boolean isTangguhkanB1;
|
||||
|
||||
private Boolean isTangguhkanB2;
|
||||
|
||||
private Boolean isTangguhkanN;
|
||||
|
||||
private Boolean isTangguhkanN1;
|
||||
|
||||
private Boolean isTangguhkanN2;
|
||||
|
||||
private Integer dataCutiB;
|
||||
|
||||
private Integer dataCutiB1;
|
||||
|
||||
private Integer dataCutiB2;
|
||||
|
||||
private Integer dataCutiN;
|
||||
|
||||
private Integer dataCutiN1;
|
||||
|
||||
private Integer dataCutiN2;
|
||||
|
||||
private Integer dataCutiN3;
|
||||
|
||||
private String jatahCuti;
|
||||
|
||||
private Integer jatahIzin;
|
||||
|
||||
}
|
||||
@ -0,0 +1,25 @@
|
||||
package com.jasamedika.medifirst2000.dto;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @author Salman
|
||||
* @version 1.0.0
|
||||
* @since 10/01/2025
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class JatahCutiRequest {
|
||||
|
||||
Integer pegawaiId;
|
||||
|
||||
String year;
|
||||
|
||||
Integer statusPegawaiId;
|
||||
|
||||
}
|
||||
@ -0,0 +1,29 @@
|
||||
package com.jasamedika.medifirst2000.dto;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author Salman
|
||||
* @version 1.0.0
|
||||
* @since 10/01/2025
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class PresensiHariLibur {
|
||||
|
||||
private Integer idPegawai;
|
||||
|
||||
private String namaLengkap;
|
||||
|
||||
private Date tanggal;
|
||||
|
||||
private Boolean isCutiBersamaDitangguhkan;
|
||||
|
||||
}
|
||||
@ -1,128 +1,55 @@
|
||||
package com.jasamedika.medifirst2000.entities;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.Table;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
import com.jasamedika.medifirst2000.base.BaseTransaction;
|
||||
import com.jasamedika.medifirst2000.helper.Caption;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@Entity // @Audited
|
||||
import javax.persistence.*;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@Entity
|
||||
@Table(name = "JatahCutiDanIzin_T")
|
||||
public class JatahCutiDanIzin extends BaseTransaction {
|
||||
|
||||
|
||||
@ManyToOne
|
||||
@JoinColumn(name = "PegawaiFK")
|
||||
@NotNull(message="Pegawai Harus Diisi")
|
||||
@Caption(value="Pegawai")
|
||||
@NotNull(message = "Pegawai Harus Diisi")
|
||||
@Caption(value = "Pegawai")
|
||||
private Pegawai pegawai;
|
||||
|
||||
@Column(name = "PegawaiFK", insertable=false,updatable=false,nullable = false)
|
||||
@Column(name = "PegawaiFK", insertable = false, updatable = false, nullable = false)
|
||||
private Integer pegawaiId;
|
||||
|
||||
|
||||
@Column(name = "tahun")
|
||||
@Caption(value = "tahun")
|
||||
private String tahun;
|
||||
|
||||
|
||||
@ManyToOne
|
||||
@JoinColumn(name = "KomponenIndexFK")
|
||||
@NotNull(message="KomponenIndex Harus Diisi")
|
||||
@Caption(value="KomponenIndex")
|
||||
@NotNull(message = "KomponenIndex Harus Diisi")
|
||||
@Caption(value = "KomponenIndex")
|
||||
private KomponenIndex komponenIndex;
|
||||
|
||||
@Column(name = "KomponenIndexFK", insertable=false,updatable=false,nullable = false)
|
||||
@Column(name = "KomponenIndexFK", insertable = false, updatable = false, nullable = false)
|
||||
private Integer komponenIndexId;
|
||||
|
||||
|
||||
@Column(name = "value")
|
||||
@Caption(value = "value")
|
||||
private Integer value;
|
||||
|
||||
|
||||
@Column(name = "CutiTerpakai")
|
||||
@Caption(value = "CutiTerpakai")
|
||||
private Integer cutiTerpakai;
|
||||
|
||||
|
||||
@Column(name = "SisaCuti")
|
||||
@Caption(value = "SisaCuti")
|
||||
private Integer sisaCuti;
|
||||
|
||||
|
||||
@Column(name = "isTangguhkanSisaCuti")
|
||||
@Caption(value = "Tangguhkan Sisa Cuti")
|
||||
private Boolean isTangguhkan;
|
||||
|
||||
public Pegawai getPegawai() {
|
||||
return pegawai;
|
||||
}
|
||||
|
||||
public void setPegawai(Pegawai pegawai) {
|
||||
this.pegawai = pegawai;
|
||||
}
|
||||
|
||||
public Integer getPegawaiId() {
|
||||
return pegawaiId;
|
||||
}
|
||||
|
||||
public void setPegawaiId(Integer pegawaiId) {
|
||||
this.pegawaiId = pegawaiId;
|
||||
}
|
||||
|
||||
public String getTahun() {
|
||||
return tahun;
|
||||
}
|
||||
|
||||
public void setTahun(String tahun) {
|
||||
this.tahun = tahun;
|
||||
}
|
||||
|
||||
public KomponenIndex getKomponenIndex() {
|
||||
return komponenIndex;
|
||||
}
|
||||
|
||||
public void setKomponenIndex(KomponenIndex komponenIndex) {
|
||||
this.komponenIndex = komponenIndex;
|
||||
}
|
||||
|
||||
public Integer getKomponenIndexId() {
|
||||
return komponenIndexId;
|
||||
}
|
||||
|
||||
public void setKomponenIndexId(Integer komponenIndexId) {
|
||||
this.komponenIndexId = komponenIndexId;
|
||||
}
|
||||
|
||||
public Integer getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(Integer value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public Integer getCutiTerpakai() {
|
||||
return cutiTerpakai;
|
||||
}
|
||||
|
||||
public void setCutiTerpakai(Integer cutiTerpakai) {
|
||||
this.cutiTerpakai = cutiTerpakai;
|
||||
}
|
||||
|
||||
public Integer getSisaCuti() {
|
||||
return sisaCuti;
|
||||
}
|
||||
|
||||
public void setSisaCuti(Integer sisaCuti) {
|
||||
this.sisaCuti = sisaCuti;
|
||||
}
|
||||
|
||||
public Boolean getIsTangguhkan() {
|
||||
return isTangguhkan;
|
||||
}
|
||||
|
||||
public void setIsTangguhkan(Boolean isTangguhkan) {
|
||||
this.isTangguhkan = isTangguhkan;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -12,59 +12,30 @@ import javax.persistence.Table;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
|
||||
import com.jasamedika.medifirst2000.base.BaseTransaction;
|
||||
import com.jasamedika.medifirst2000.helper.Caption;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@Entity
|
||||
@Table(name="ListTanggalCuti_T")
|
||||
@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
|
||||
public class ListTanggalCuti extends BaseTransaction{
|
||||
|
||||
@Caption(value="tgl")
|
||||
@Column(name="tgl", nullable=true)
|
||||
@Table(name = "ListTanggalCuti_T")
|
||||
@JsonIgnoreProperties({ "hibernateLazyInitializer", "handler" })
|
||||
public class ListTanggalCuti extends BaseTransaction {
|
||||
|
||||
@Caption(value = "tgl")
|
||||
@Column(name = "tgl")
|
||||
private Date tgl;
|
||||
|
||||
@Caption(value="Approval Status")
|
||||
@Column(name="ApprovalStatus", nullable=true)
|
||||
|
||||
@Caption(value = "Approval Status")
|
||||
@Column(name = "ApprovalStatus")
|
||||
private Boolean approvalStatus;
|
||||
|
||||
@ManyToOne(fetch=FetchType.LAZY)
|
||||
@JoinColumn(name="ObjectPlanningPegawaiStatusFK")
|
||||
@Caption(value="Object Planning Pegawai Status")
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "ObjectPlanningPegawaiStatusFK")
|
||||
@Caption(value = "Object Planning Pegawai Status")
|
||||
private PlanningPegawaiStatus planningPegawaiStatus;
|
||||
|
||||
@Column(name="ObjectPlanningPegawaiStatusFK", insertable=false, updatable=false, nullable = true)
|
||||
|
||||
@Column(name = "ObjectPlanningPegawaiStatusFK", insertable = false, updatable = false)
|
||||
private String planningPegawaiStatusId;
|
||||
|
||||
public Date getTgl() {
|
||||
return tgl;
|
||||
}
|
||||
|
||||
public void setTgl(Date tgl) {
|
||||
this.tgl = tgl;
|
||||
}
|
||||
|
||||
public Boolean getApprovalStatus() {
|
||||
return approvalStatus;
|
||||
}
|
||||
|
||||
public void setApprovalStatus(Boolean approvalStatus) {
|
||||
this.approvalStatus = approvalStatus;
|
||||
}
|
||||
|
||||
public PlanningPegawaiStatus getPlanningPegawaiStatus() {
|
||||
return planningPegawaiStatus;
|
||||
}
|
||||
|
||||
public void setPlanningPegawaiStatus(PlanningPegawaiStatus planningPegawaiStatus) {
|
||||
this.planningPegawaiStatus = planningPegawaiStatus;
|
||||
}
|
||||
|
||||
public String getPlanningPegawaiStatusId() {
|
||||
return planningPegawaiStatusId;
|
||||
}
|
||||
|
||||
public void setPlanningPegawaiStatusId(String planningPegawaiStatusId) {
|
||||
this.planningPegawaiStatusId = planningPegawaiStatusId;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -1,73 +1,52 @@
|
||||
package com.jasamedika.medifirst2000.entities;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.GenerationType;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.Table;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
import com.jasamedika.medifirst2000.base.BaseMaster;
|
||||
import com.jasamedika.medifirst2000.helper.Caption;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import javax.persistence.*;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
import static javax.persistence.GenerationType.SEQUENCE;
|
||||
|
||||
/**
|
||||
* class MapKalenderToHariLibur
|
||||
*
|
||||
* @author Generator
|
||||
*/
|
||||
@Entity // @Audited
|
||||
@Getter
|
||||
@Setter
|
||||
@Entity
|
||||
@Table(name = "MapKalenderToHariLibur_M")
|
||||
public class MapKalenderToHariLibur extends BaseMaster {
|
||||
|
||||
private static final long serialVersionUID = -1571116407894714011L;
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy = SEQUENCE, generator = "public.mapkalendertoharilibur_m_id_seq")
|
||||
@SequenceGenerator(name = "public.mapkalendertoharilibur_m_id_seq", sequenceName = "public.mapkalendertoharilibur_m_id_seq", allocationSize = 1)
|
||||
@Column(name = "id")
|
||||
protected Integer id;
|
||||
|
||||
@ManyToOne
|
||||
@JoinColumn(name = "ObjectHariLiburFk")
|
||||
@NotNull(message = "Kd Hari Libur tidak boleh kosong")
|
||||
|
||||
@Caption(value = "Object Hari Libur")
|
||||
private HariLibur hariLibur;
|
||||
|
||||
public void setHariLibur(HariLibur hariLibur) {
|
||||
this.hariLibur = hariLibur;
|
||||
}
|
||||
|
||||
public HariLibur getHariLibur() {
|
||||
return this.hariLibur;
|
||||
}
|
||||
|
||||
@Column(name = "ObjectHariLiburFk", insertable = false, updatable = false)
|
||||
private Integer hariLiburId;
|
||||
|
||||
@ManyToOne
|
||||
@JoinColumn(name = "ObjectTanggalFk")
|
||||
|
||||
@JoinColumn(name = "ObjectTanggalFk")
|
||||
@Caption(value = "Object Tanggal")
|
||||
private Kalender tanggal;
|
||||
|
||||
public void setTgl(Kalender tanggal) {
|
||||
this.tanggal = tanggal;
|
||||
}
|
||||
|
||||
public Kalender getTgl() {
|
||||
return this.tanggal;
|
||||
}
|
||||
|
||||
@Column(name = "ObjectTanggalFk", insertable = false, updatable = false, nullable = false)
|
||||
private Integer tanggalId;
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "public.mapkalendertoharilibur_m_id_seq")
|
||||
@javax.persistence.SequenceGenerator(name = "public.mapkalendertoharilibur_m_id_seq", sequenceName = "public.mapkalendertoharilibur_m_id_seq", allocationSize = 1)
|
||||
@Column(name = "id")
|
||||
protected Integer id;
|
||||
@Column(name = "is_cuti_bersama_ditangguhkan")
|
||||
private Boolean isCutiBersamaDitangguhkan;
|
||||
|
||||
public Integer getId() {
|
||||
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
}
|
||||
@ -17,403 +17,142 @@ import com.fasterxml.jackson.annotation.JsonBackReference;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
|
||||
import com.jasamedika.medifirst2000.base.BaseTransaction;
|
||||
import com.jasamedika.medifirst2000.helper.Caption;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@Entity
|
||||
@Table(name="PlanningPegawaiStatus_T")
|
||||
@Table(name = "PlanningPegawaiStatus_T")
|
||||
@JsonIgnoreProperties({ "hibernateLazyInitializer", "handler" })
|
||||
public class PlanningPegawaiStatus extends BaseTransaction{
|
||||
public class PlanningPegawaiStatus extends BaseTransaction {
|
||||
|
||||
@Caption(value="No Planning")
|
||||
@Column(name="NoPlanning", length=15, nullable=true)
|
||||
@Caption(value = "No Planning")
|
||||
@Column(name = "NoPlanning", length = 15)
|
||||
private String noPlanning;
|
||||
|
||||
@ManyToOne(fetch=FetchType.LAZY)
|
||||
@Caption(value="Object Pegawai")
|
||||
@JoinColumn(name="ObjectPegawaiFk")
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@Caption(value = "Object Pegawai")
|
||||
@JoinColumn(name = "ObjectPegawaiFk")
|
||||
private Pegawai pegawai;
|
||||
|
||||
@Column(name="ObjectPegawaiFk", nullable=true, insertable=false, updatable=false)
|
||||
|
||||
@Column(name = "ObjectPegawaiFk", insertable = false, updatable = false)
|
||||
private Integer pegawaiId;
|
||||
|
||||
@ManyToOne(fetch=FetchType.LAZY)
|
||||
@Caption(value="Object Status Pegawai Plan")
|
||||
@JoinColumn(name="ObjectStatusPegawaiPlanFk")
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@Caption(value = "Object Status Pegawai Plan")
|
||||
@JoinColumn(name = "ObjectStatusPegawaiPlanFk")
|
||||
private StatusPegawai statusPegawaiPlan;
|
||||
|
||||
@Column(name="ObjectStatusPegawaiPlanFk", nullable=true, insertable=false, updatable=false)
|
||||
|
||||
@Column(name = "ObjectStatusPegawaiPlanFk", insertable = false, updatable = false)
|
||||
private Integer statusPegawaiPlanId;
|
||||
|
||||
|
||||
@JsonBackReference
|
||||
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "planningPegawaiStatus", orphanRemoval = true)
|
||||
private Set<ListTanggalCuti> listTanggal = new HashSet<>();
|
||||
|
||||
@ManyToOne(fetch=FetchType.LAZY)
|
||||
@Caption(value="Object Departemen")
|
||||
@JoinColumn(name="ObjectDepartemenFk")
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@Caption(value = "Object Departemen")
|
||||
@JoinColumn(name = "ObjectDepartemenFk")
|
||||
private Departemen departemen;
|
||||
|
||||
@Column(name="ObjectDepartemenFk", nullable=true, insertable=false, updatable=false)
|
||||
|
||||
@Column(name = "ObjectDepartemenFk", insertable = false, updatable = false)
|
||||
private Integer departemenId;
|
||||
|
||||
@Caption(value="Deskripsi Status Pegawai Plan")
|
||||
@Column(name="DeskripsiStatusPegawaiPlan", length=1000, nullable=true)
|
||||
|
||||
@Caption(value = "Deskripsi Status Pegawai Plan")
|
||||
@Column(name = "DeskripsiStatusPegawaiPlan", length = 1000)
|
||||
private String deskripsiStatusPegawaiPlan;
|
||||
|
||||
@Caption(value="Keterangan Lainya Plan")
|
||||
@Column(name="KeteranganLainyaPlan", length=1000, nullable=true)
|
||||
|
||||
@Caption(value = "Keterangan Lainya Plan")
|
||||
@Column(name = "KeteranganLainyaPlan", length = 1000)
|
||||
private String keteranganLainyaPlan;
|
||||
|
||||
@ManyToOne(fetch=FetchType.LAZY)
|
||||
@Caption(value="Object No SK")
|
||||
@JoinColumn(name="ObjectNoSkFk")
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@Caption(value = "Object No SK")
|
||||
@JoinColumn(name = "ObjectNoSkFk")
|
||||
private SuratKeputusan noSk;
|
||||
|
||||
@Column(name="ObjectNoSkFk", nullable=true, insertable=false, updatable=false)
|
||||
|
||||
@Column(name = "ObjectNoSkFk", insertable = false, updatable = false)
|
||||
private Integer noSkId;
|
||||
|
||||
@ManyToOne(fetch=FetchType.LAZY)
|
||||
@Caption(value="Object Status Pegawai Exec")
|
||||
@JoinColumn(name="ObjectStatusPegawaiExecFk")
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@Caption(value = "Object Status Pegawai Exec")
|
||||
@JoinColumn(name = "ObjectStatusPegawaiExecFk")
|
||||
private StatusPegawai statusPegawaiExec;
|
||||
|
||||
@Column(name="ObjectStatusPegawaiExecFk", nullable=true, insertable=false, updatable=false)
|
||||
private Integer statusPegawaiExecId;
|
||||
|
||||
@Caption(value="Deskripsi Status Pegawai Exec")
|
||||
@Column(name="DeskripsiStatusPegawaiExec", length=1000, nullable=true)
|
||||
|
||||
@Column(name = "ObjectStatusPegawaiExecFk", insertable = false, updatable = false)
|
||||
private Integer statusPegawaiExecId;
|
||||
|
||||
@Caption(value = "Deskripsi Status Pegawai Exec")
|
||||
@Column(name = "DeskripsiStatusPegawaiExec", length = 1000)
|
||||
private String deskripsiStatusPegawaiExec;
|
||||
|
||||
@Caption(value="Keterangan Lainya Exec")
|
||||
@Column(name="KeteranganLainyaExec", length=1000, nullable=true)
|
||||
|
||||
@Caption(value = "Keterangan Lainya Exec")
|
||||
@Column(name = "KeteranganLainyaExec", length = 1000)
|
||||
private String keteranganLainyaExec;
|
||||
|
||||
@Caption(value="Tgl Pengajuan")
|
||||
@Column(name="TglPengajuan", nullable=true)
|
||||
@Caption(value = "Tgl Pengajuan")
|
||||
@Column(name = "TglPengajuan")
|
||||
private Date tglPengajuan;
|
||||
|
||||
@Caption(value="Tgl Keputusan")
|
||||
@Column(name="TglKeputusan", nullable=true)
|
||||
|
||||
@Caption(value = "Tgl Keputusan")
|
||||
@Column(name = "TglKeputusan")
|
||||
private Date tglKeputusan;
|
||||
|
||||
@Caption(value="Approval Status")
|
||||
@Column(name="ApprovalStatus", nullable=true)
|
||||
|
||||
@Caption(value = "Approval Status")
|
||||
@Column(name = "ApprovalStatus")
|
||||
private Integer approvalStatus;
|
||||
|
||||
@Caption(value="jumlahHari")
|
||||
@Column(name="jumlahHari", nullable=true)
|
||||
|
||||
@Caption(value = "jumlahHari")
|
||||
@Column(name = "jumlahHari")
|
||||
private Integer jumlahHari;
|
||||
|
||||
@Caption(value="keterangan")
|
||||
@Column(name="keterangan", nullable=true)
|
||||
|
||||
@Caption(value = "keterangan")
|
||||
@Column(name = "keterangan")
|
||||
private String keterangan;
|
||||
|
||||
@Caption(value="Jenis Perawatan")
|
||||
@Column(name="jenisPerawatan", nullable=true)
|
||||
private Integer jenisPerawatan; //Add field untuk permohonan perubahan kehadiran karena sakit
|
||||
|
||||
@Caption(value="Alamat Selama Cuti")
|
||||
@Column(name="alamatCuti", nullable=true)
|
||||
private String alamatCuti; //Add field untuk input alamat selama cuti di menu pengajuan Cuti
|
||||
|
||||
@Caption(value="Nomor Telepon")
|
||||
@Column(name="nomorTelepon", nullable=true)
|
||||
|
||||
@Caption(value = "Jenis Perawatan")
|
||||
@Column(name = "jenisPerawatan")
|
||||
private Integer jenisPerawatan;
|
||||
|
||||
@Caption(value = "Alamat Selama Cuti")
|
||||
@Column(name = "alamatCuti")
|
||||
private String alamatCuti;
|
||||
|
||||
@Caption(value = "Nomor Telepon")
|
||||
@Column(name = "nomorTelepon")
|
||||
private String nomorTelepon;
|
||||
|
||||
@Caption(value="Nomor Surat Tugas")
|
||||
@Column(name="noSuratTugas", nullable=true)
|
||||
|
||||
@Caption(value = "Nomor Surat Tugas")
|
||||
@Column(name = "noSuratTugas")
|
||||
private String noSuratTugas;
|
||||
|
||||
@Caption(value="Nomor Nota Dinas")
|
||||
@Column(name="noNotaDinas", nullable=true)
|
||||
|
||||
@Caption(value = "Nomor Nota Dinas")
|
||||
@Column(name = "noNotaDinas")
|
||||
private String noNotaDinas;
|
||||
|
||||
@Caption(value="Tgl Nota Dinas")
|
||||
@Column(name="TglNotaDinas", nullable=true)
|
||||
|
||||
@Caption(value = "Tgl Nota Dinas")
|
||||
@Column(name = "TglNotaDinas")
|
||||
private Date tglNotaDinas;
|
||||
|
||||
@Caption(value="Alamat Tugas Dinas")
|
||||
@Column(name="alamatTugas", nullable=true)
|
||||
private String alamatTugas;
|
||||
|
||||
@ManyToOne(optional=true,fetch=FetchType.LAZY)
|
||||
@Caption(value="Object Jabatan Pemberi Nota Dinas")
|
||||
@JoinColumn(name="ObjectJabatanPemberiNotaDinasFk", nullable=true)
|
||||
|
||||
@Caption(value = "Alamat Tugas Dinas")
|
||||
@Column(name = "alamatTugas")
|
||||
private String alamatTugas;
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@Caption(value = "Object Jabatan Pemberi Nota Dinas")
|
||||
@JoinColumn(name = "ObjectJabatanPemberiNotaDinasFk")
|
||||
private Jabatan jabatanPemberiNotaDinas;
|
||||
|
||||
@Column(name="ObjectJabatanPemberiNotaDinasFk", nullable=true, insertable=false, updatable=false)
|
||||
|
||||
@Column(name = "ObjectJabatanPemberiNotaDinasFk", insertable = false, updatable = false)
|
||||
private Integer jabatanIdPemberiNotaDinas;
|
||||
|
||||
@Caption(value="is Cuti Luar Negeri")
|
||||
@Column(name="isCutiLuarNegeri", nullable=true)
|
||||
|
||||
@Caption(value = "is Cuti Luar Negeri")
|
||||
@Column(name = "isCutiLuarNegeri")
|
||||
private Boolean isCutiLuarNegeri;
|
||||
|
||||
@Caption(value="is Cuti Luar Kota")
|
||||
@Column(name="isCutiLuarKota", nullable=true)
|
||||
|
||||
@Caption(value = "is Cuti Luar Kota")
|
||||
@Column(name = "isCutiLuarKota")
|
||||
private Boolean isCutiLuarKota;
|
||||
|
||||
public String getNoPlanning() {
|
||||
return noPlanning;
|
||||
}
|
||||
|
||||
public void setNoPlanning(String noPlanning) {
|
||||
this.noPlanning = noPlanning;
|
||||
}
|
||||
|
||||
public Pegawai getPegawai() {
|
||||
return pegawai;
|
||||
}
|
||||
|
||||
public void setPegawai(Pegawai pegawai) {
|
||||
this.pegawai = pegawai;
|
||||
}
|
||||
|
||||
public Integer getPegawaiId() {
|
||||
return pegawaiId;
|
||||
}
|
||||
|
||||
public void setPegawaiId(Integer pegawaiId) {
|
||||
this.pegawaiId = pegawaiId;
|
||||
}
|
||||
|
||||
public StatusPegawai getStatusPegawaiPlan() {
|
||||
return statusPegawaiPlan;
|
||||
}
|
||||
|
||||
public void setStatusPegawaiPlan(StatusPegawai statusPegawaiPlan) {
|
||||
this.statusPegawaiPlan = statusPegawaiPlan;
|
||||
}
|
||||
|
||||
public Integer getStatusPegawaiPlanId() {
|
||||
return statusPegawaiPlanId;
|
||||
}
|
||||
|
||||
public void setStatusPegawaiPlanId(Integer statusPegawaiPlanId) {
|
||||
this.statusPegawaiPlanId = statusPegawaiPlanId;
|
||||
}
|
||||
|
||||
public Departemen getDepartemen() {
|
||||
return departemen;
|
||||
}
|
||||
|
||||
public void setDepartemen(Departemen departemen) {
|
||||
this.departemen = departemen;
|
||||
}
|
||||
|
||||
public Integer getDepartemenId() {
|
||||
return departemenId;
|
||||
}
|
||||
|
||||
public void setDepartemenId(Integer departemenId) {
|
||||
this.departemenId = departemenId;
|
||||
}
|
||||
|
||||
public String getDeskripsiStatusPegawaiPlan() {
|
||||
return deskripsiStatusPegawaiPlan;
|
||||
}
|
||||
|
||||
public void setDeskripsiStatusPegawaiPlan(String deskripsiStatusPegawaiPlan) {
|
||||
this.deskripsiStatusPegawaiPlan = deskripsiStatusPegawaiPlan;
|
||||
}
|
||||
|
||||
public String getKeteranganLainyaPlan() {
|
||||
return keteranganLainyaPlan;
|
||||
}
|
||||
|
||||
public void setKeteranganLainyaPlan(String keteranganLainyaPlan) {
|
||||
this.keteranganLainyaPlan = keteranganLainyaPlan;
|
||||
}
|
||||
|
||||
public SuratKeputusan getNoSk() {
|
||||
return noSk;
|
||||
}
|
||||
|
||||
public void setNoSk(SuratKeputusan noSk) {
|
||||
this.noSk = noSk;
|
||||
}
|
||||
|
||||
public Integer getNoSkId() {
|
||||
return noSkId;
|
||||
}
|
||||
|
||||
public void setNoSkId(Integer noSkId) {
|
||||
this.noSkId = noSkId;
|
||||
}
|
||||
|
||||
public StatusPegawai getStatusPegawaiExec() {
|
||||
return statusPegawaiExec;
|
||||
}
|
||||
|
||||
public void setStatusPegawaiExec(StatusPegawai statusPegawaiExec) {
|
||||
this.statusPegawaiExec = statusPegawaiExec;
|
||||
}
|
||||
|
||||
public Integer getStatusPegawaiExecId() {
|
||||
return statusPegawaiExecId;
|
||||
}
|
||||
|
||||
public void setStatusPegawaiExecId(Integer statusPegawaiExecId) {
|
||||
this.statusPegawaiExecId = statusPegawaiExecId;
|
||||
}
|
||||
public String getDeskripsiStatusPegawaiExec() {
|
||||
return deskripsiStatusPegawaiExec;
|
||||
}
|
||||
|
||||
public void setDeskripsiStatusPegawaiExec(String deskripsiStatusPegawaiExec) {
|
||||
this.deskripsiStatusPegawaiExec = deskripsiStatusPegawaiExec;
|
||||
}
|
||||
|
||||
public String getKeteranganLainyaExec() {
|
||||
return keteranganLainyaExec;
|
||||
}
|
||||
|
||||
public void setKeteranganLainyaExec(String keteranganLainyaExec) {
|
||||
this.keteranganLainyaExec = keteranganLainyaExec;
|
||||
}
|
||||
|
||||
public Date getTglPengajuan() {
|
||||
return tglPengajuan;
|
||||
}
|
||||
|
||||
public void setTglPengajuan(Date tglPengajuan) {
|
||||
this.tglPengajuan = tglPengajuan;
|
||||
}
|
||||
|
||||
public Date getTglKeputusan() {
|
||||
return tglKeputusan;
|
||||
}
|
||||
|
||||
public void setTglKeputusan(Date tglKeputusan) {
|
||||
this.tglKeputusan = tglKeputusan;
|
||||
}
|
||||
|
||||
public Integer getApprovalStatus() {
|
||||
return approvalStatus;
|
||||
}
|
||||
|
||||
public void setApprovalStatus(Integer approvalStatus) {
|
||||
this.approvalStatus = approvalStatus;
|
||||
}
|
||||
|
||||
public Integer getJumlahHari() {
|
||||
return jumlahHari;
|
||||
}
|
||||
|
||||
public void setJumlahHari(Integer jumlahHari) {
|
||||
this.jumlahHari = jumlahHari;
|
||||
}
|
||||
|
||||
public Set<ListTanggalCuti> getListTanggal() {
|
||||
return listTanggal;
|
||||
}
|
||||
|
||||
public void setListTanggal(Set<ListTanggalCuti> listTanggal) {
|
||||
this.listTanggal = listTanggal;
|
||||
}
|
||||
|
||||
public String getKeterangan() {
|
||||
return keterangan;
|
||||
}
|
||||
|
||||
public void setKeterangan(String keterangan) {
|
||||
this.keterangan = keterangan;
|
||||
}
|
||||
|
||||
public Integer getJenisPerawatan() {
|
||||
return jenisPerawatan;
|
||||
}
|
||||
|
||||
public void setJenisPerawatan(Integer jenisPerawatan) {
|
||||
this.jenisPerawatan = jenisPerawatan;
|
||||
}
|
||||
|
||||
public String getAlamatCuti() {
|
||||
return alamatCuti;
|
||||
}
|
||||
|
||||
public void setAlamatCuti(String alamatCuti) {
|
||||
this.alamatCuti = alamatCuti;
|
||||
}
|
||||
|
||||
public String getNomorTelepon() {
|
||||
return nomorTelepon;
|
||||
}
|
||||
|
||||
public void setNomorTelepon(String nomorTelepon) {
|
||||
this.nomorTelepon = nomorTelepon;
|
||||
}
|
||||
|
||||
public String getNoSuratTugas() {
|
||||
return noSuratTugas;
|
||||
}
|
||||
|
||||
public void setNoSuratTugas(String noSuratTugas) {
|
||||
this.noSuratTugas = noSuratTugas;
|
||||
}
|
||||
|
||||
public String getNoNotaDinas() {
|
||||
return noNotaDinas;
|
||||
}
|
||||
|
||||
public void setNoNotaDinas(String noNotaDinas) {
|
||||
this.noNotaDinas = noNotaDinas;
|
||||
}
|
||||
|
||||
public Date getTglNotaDinas() {
|
||||
return tglNotaDinas;
|
||||
}
|
||||
|
||||
public void setTglNotaDinas(Date tglNotaDinas) {
|
||||
this.tglNotaDinas = tglNotaDinas;
|
||||
}
|
||||
|
||||
public String getAlamatTugas() {
|
||||
return alamatTugas;
|
||||
}
|
||||
|
||||
public void setAlamatTugas(String alamatTugas) {
|
||||
this.alamatTugas = alamatTugas;
|
||||
}
|
||||
|
||||
public Jabatan getJabatanPemberiNotaDinas() {
|
||||
return jabatanPemberiNotaDinas;
|
||||
}
|
||||
|
||||
public void setJabatanPemberiNotaDinas(Jabatan jabatanPemberiNotaDinas) {
|
||||
this.jabatanPemberiNotaDinas = jabatanPemberiNotaDinas;
|
||||
}
|
||||
|
||||
public Integer getJabatanIdPemberiNotaDinas() {
|
||||
return jabatanIdPemberiNotaDinas;
|
||||
}
|
||||
|
||||
public void setJabatanIdPemberiNotaDinas(Integer jabatanIdPemberiNotaDinas) {
|
||||
this.jabatanIdPemberiNotaDinas = jabatanIdPemberiNotaDinas;
|
||||
}
|
||||
|
||||
public Boolean getIsCutiLuarNegeri() {
|
||||
return isCutiLuarNegeri;
|
||||
}
|
||||
|
||||
public void setIsCutiLuarNegeri(Boolean isCutiLuarNegeri) {
|
||||
this.isCutiLuarNegeri = isCutiLuarNegeri;
|
||||
}
|
||||
|
||||
public void addListTanggal(ListTanggalCuti listTgl) {
|
||||
listTanggal.add(listTgl);
|
||||
listTgl.setPlanningPegawaiStatus(this);
|
||||
}
|
||||
|
||||
public void removeListTanggal(ListTanggalCuti listTgl) {
|
||||
listTanggal.remove(listTgl);
|
||||
listTgl.setPlanningPegawaiStatus(null);
|
||||
}
|
||||
|
||||
public Boolean getIsCutiLuarKota() {
|
||||
return isCutiLuarKota;
|
||||
}
|
||||
|
||||
public void setIsCutiLuarKota(Boolean isCutiLuarKota) {
|
||||
this.isCutiLuarKota = isCutiLuarKota;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -1,98 +1,29 @@
|
||||
package com.jasamedika.medifirst2000.vo;
|
||||
|
||||
|
||||
import com.jasamedika.medifirst2000.base.vo.BaseTransactionVO;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
public class JatahCutiDanIzinVO extends BaseTransactionVO {
|
||||
|
||||
|
||||
private PegawaiVO pegawai;
|
||||
|
||||
private Integer pegawaiId;
|
||||
|
||||
|
||||
private String tahun;
|
||||
|
||||
|
||||
private KomponenIndexVO komponenIndex;
|
||||
|
||||
private Integer komponenIndexId;
|
||||
|
||||
|
||||
private Integer value;
|
||||
|
||||
|
||||
private Integer cutiTerpakai;
|
||||
|
||||
|
||||
private Integer sisaCuti;
|
||||
|
||||
|
||||
private Boolean isTangguhkan;
|
||||
|
||||
public PegawaiVO getPegawai() {
|
||||
return pegawai;
|
||||
}
|
||||
|
||||
public void setPegawai(PegawaiVO pegawai) {
|
||||
this.pegawai = pegawai;
|
||||
}
|
||||
|
||||
public Integer getPegawaiId() {
|
||||
return pegawaiId;
|
||||
}
|
||||
|
||||
public void setPegawaiId(Integer pegawaiId) {
|
||||
this.pegawaiId = pegawaiId;
|
||||
}
|
||||
|
||||
public String getTahun() {
|
||||
return tahun;
|
||||
}
|
||||
|
||||
public void setTahun(String tahun) {
|
||||
this.tahun = tahun;
|
||||
}
|
||||
|
||||
public KomponenIndexVO getKomponenIndex() {
|
||||
return komponenIndex;
|
||||
}
|
||||
|
||||
public void setKomponenIndex(KomponenIndexVO komponenIndex) {
|
||||
this.komponenIndex = komponenIndex;
|
||||
}
|
||||
|
||||
public Integer getKomponenIndexId() {
|
||||
return komponenIndexId;
|
||||
}
|
||||
|
||||
public void setKomponenIndexId(Integer komponenIndexId) {
|
||||
this.komponenIndexId = komponenIndexId;
|
||||
}
|
||||
|
||||
public Integer getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(Integer value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public Integer getCutiTerpakai() {
|
||||
return cutiTerpakai;
|
||||
}
|
||||
|
||||
public void setCutiTerpakai(Integer cutiTerpakai) {
|
||||
this.cutiTerpakai = cutiTerpakai;
|
||||
}
|
||||
|
||||
public Integer getSisaCuti() {
|
||||
return sisaCuti;
|
||||
}
|
||||
|
||||
public void setSisaCuti(Integer sisaCuti) {
|
||||
this.sisaCuti = sisaCuti;
|
||||
}
|
||||
|
||||
public Boolean getIsTangguhkan() {
|
||||
return isTangguhkan;
|
||||
}
|
||||
|
||||
public void setIsTangguhkan(Boolean isTangguhkan) {
|
||||
this.isTangguhkan = isTangguhkan;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -2,49 +2,20 @@ package com.jasamedika.medifirst2000.vo;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
import com.jasamedika.medifirst2000.base.vo.BaseTransactionVO;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
public class ListTanggalCutiVO extends BaseTransactionVO {
|
||||
|
||||
|
||||
private Date tgl;
|
||||
|
||||
|
||||
private Boolean approvalStatus;
|
||||
|
||||
|
||||
private PlanningPegawaiStatusVO planningPegawaiStatus;
|
||||
|
||||
private Integer planningPegawaiStatusId;
|
||||
|
||||
public Date getTgl() {
|
||||
return tgl;
|
||||
}
|
||||
|
||||
public void setTgl(Date tgl) {
|
||||
this.tgl = tgl;
|
||||
}
|
||||
|
||||
public Boolean getApprovalStatus() {
|
||||
return approvalStatus;
|
||||
}
|
||||
|
||||
public void setApprovalStatus(Boolean approvalStatus) {
|
||||
this.approvalStatus = approvalStatus;
|
||||
}
|
||||
|
||||
public PlanningPegawaiStatusVO getPlanningPegawaiStatus() {
|
||||
return planningPegawaiStatus;
|
||||
}
|
||||
|
||||
public void setPlanningPegawaiStatus(PlanningPegawaiStatusVO planningPegawaiStatus) {
|
||||
this.planningPegawaiStatus = planningPegawaiStatus;
|
||||
}
|
||||
|
||||
public Integer getPlanningPegawaiStatusId() {
|
||||
return planningPegawaiStatusId;
|
||||
}
|
||||
|
||||
public void setPlanningPegawaiStatusId(Integer planningPegawaiStatusId) {
|
||||
this.planningPegawaiStatusId = planningPegawaiStatusId;
|
||||
}
|
||||
private String planningPegawaiStatusId;
|
||||
|
||||
}
|
||||
|
||||
@ -1,56 +1,26 @@
|
||||
package com.jasamedika.medifirst2000.vo;
|
||||
|
||||
import java.io.Serializable;
|
||||
import javax.persistence.*;
|
||||
import java.util.Date;
|
||||
import org.hibernate.validator.constraints.NotEmpty;
|
||||
|
||||
import com.jasamedika.medifirst2000.base.vo.BaseMasterVO;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
import org.hibernate.validator.internal.util.logging.Messages;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonManagedReference;
|
||||
import com.jasamedika.medifirst2000.base.vo.BaseMasterVO;
|
||||
import com.jasamedika.medifirst2000.helper.Caption;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* class MapKalenderToHariLibur
|
||||
* class MapKalenderToHariLibur
|
||||
*
|
||||
* @author Generator
|
||||
*/
|
||||
//@Entity
|
||||
//@Table(name = "MapKalenderToHariLibur_M")
|
||||
@Getter
|
||||
@Setter
|
||||
public class MapKalenderToHariLiburVO extends BaseMasterVO {
|
||||
|
||||
private HariVO hariLibur;
|
||||
|
||||
public void setHariLibur(HariVO hariLibur) {
|
||||
this.hariLibur = hariLibur;
|
||||
}
|
||||
private HariLiburVO hariLibur;
|
||||
|
||||
@Column(name = "KdHariLibur", nullable = false )
|
||||
public HariVO getHariLibur(){
|
||||
return this.hariLibur;
|
||||
}
|
||||
|
||||
@Column(name = "ObjectHariLiburFk", insertable=false,updatable=false)
|
||||
private Integer hariLiburId;
|
||||
|
||||
|
||||
private KalenderVO tanggal;
|
||||
private KalenderVO tanggal;
|
||||
|
||||
public KalenderVO getTanggal() {
|
||||
return tanggal;
|
||||
}
|
||||
|
||||
public void setTanggal(KalenderVO tanggal) {
|
||||
this.tanggal = tanggal;
|
||||
}
|
||||
|
||||
@Column(name = "ObjectTanggalFk", insertable=false,updatable=false)
|
||||
private Integer tanggalId;
|
||||
|
||||
private Boolean isCutiBersamaDitangguhkan;
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -4,374 +4,107 @@ import java.util.Date;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
import javax.persistence.CascadeType;
|
||||
import javax.persistence.FetchType;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.OneToMany;
|
||||
|
||||
import com.jasamedika.medifirst2000.base.vo.BaseTransactionVO;
|
||||
import com.jasamedika.medifirst2000.helper.Caption;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
public class PlanningPegawaiStatusVO extends BaseTransactionVO{
|
||||
|
||||
@Caption(value="No Planning")
|
||||
@Getter
|
||||
@Setter
|
||||
public class PlanningPegawaiStatusVO extends BaseTransactionVO {
|
||||
|
||||
@Caption(value = "No Planning")
|
||||
private String noPlanning;
|
||||
|
||||
@ManyToOne(fetch=FetchType.LAZY)
|
||||
@Caption(value="Object Pegawai")
|
||||
|
||||
@Caption(value = "Object Pegawai")
|
||||
private PegawaiVO pegawai;
|
||||
|
||||
@ManyToOne(fetch=FetchType.LAZY)
|
||||
@Caption(value="Object Status Pegawai Plan")
|
||||
|
||||
@Caption(value = "Object Status Pegawai Plan")
|
||||
private StatusPegawaiVO statusPegawaiPlan;
|
||||
|
||||
@OneToMany(cascade=CascadeType.ALL,fetch = FetchType.LAZY, mappedBy = "planningPegawaiStatus")
|
||||
private Set<ListTanggalCutiVO> listTanggal = new HashSet<ListTanggalCutiVO>();
|
||||
|
||||
@ManyToOne(fetch=FetchType.LAZY)
|
||||
@Caption(value="Object Departemen")
|
||||
|
||||
private Set<ListTanggalCutiVO> listTanggal = new HashSet<>();
|
||||
|
||||
@Caption(value = "Object Departemen")
|
||||
private DepartemenVO departemen;
|
||||
|
||||
@Caption(value="Deskripsi Status Pegawai Plan")
|
||||
|
||||
@Caption(value = "Deskripsi Status Pegawai Plan")
|
||||
private String deskripsiStatusPegawaiPlan;
|
||||
|
||||
@Caption(value="Keterangan Lainya Plan")
|
||||
|
||||
@Caption(value = "Keterangan Lainya Plan")
|
||||
private String keteranganLainyaPlan;
|
||||
|
||||
|
||||
private Integer jumlahHari;
|
||||
|
||||
@ManyToOne(fetch=FetchType.LAZY)
|
||||
@Caption(value="Object No SK")
|
||||
|
||||
@Caption(value = "Object No SK")
|
||||
private SuratKeputusanVO noSk;
|
||||
|
||||
@ManyToOne(fetch=FetchType.LAZY)
|
||||
@Caption(value="Object Status Pegawai Exec")
|
||||
|
||||
@Caption(value = "Object Status Pegawai Exec")
|
||||
private StatusPegawaiVO statusPegawaiExec;
|
||||
|
||||
@Caption(value="Deskripsi Status Pegawai Exec")
|
||||
|
||||
@Caption(value = "Deskripsi Status Pegawai Exec")
|
||||
private String deskripsiStatusPegawaiExec;
|
||||
|
||||
@Caption(value="Keterangan Lainya Exec")
|
||||
|
||||
@Caption(value = "Keterangan Lainya Exec")
|
||||
private String keteranganLainyaExec;
|
||||
|
||||
@Caption(value="Tgl Pengajuan")
|
||||
|
||||
@Caption(value = "Tgl Pengajuan")
|
||||
private Date tglPengajuan;
|
||||
|
||||
@Caption(value="Approval Status")
|
||||
|
||||
@Caption(value = "Approval Status")
|
||||
private Integer approvalStatus;
|
||||
|
||||
@Caption(value="Jenis Perawatan")
|
||||
private Integer jenisPerawatan; //Add field untuk permohonan perubahan kehadiran karena sakit
|
||||
|
||||
@Caption(value="Alamat Selama Cuti")
|
||||
private String alamatCuti; //Add field untuk input di menu pengajuan cuti
|
||||
|
||||
@Caption(value="Nomor Telepon")
|
||||
|
||||
@Caption(value = "Jenis Perawatan")
|
||||
private Integer jenisPerawatan;
|
||||
|
||||
@Caption(value = "Alamat Selama Cuti")
|
||||
private String alamatCuti;
|
||||
|
||||
@Caption(value = "Nomor Telepon")
|
||||
private String nomorTelepon;
|
||||
|
||||
@Caption(value="Nomor Surat Tugas")
|
||||
|
||||
@Caption(value = "Nomor Surat Tugas")
|
||||
private String noSuratTugas;
|
||||
|
||||
@Caption(value="Nomor Nota Dinas")
|
||||
|
||||
@Caption(value = "Nomor Nota Dinas")
|
||||
private String noNotaDinas;
|
||||
|
||||
@Caption(value="Tgl Nota Dinas")
|
||||
|
||||
@Caption(value = "Tgl Nota Dinas")
|
||||
private Date tglNotaDinas;
|
||||
|
||||
@Caption(value="Alamat Tugas Dinas")
|
||||
private String alamatTugas;
|
||||
|
||||
@ManyToOne(fetch=FetchType.LAZY)
|
||||
@Caption(value="Object Jabatan Pemberi Nota Dinas")
|
||||
|
||||
@Caption(value = "Alamat Tugas Dinas")
|
||||
private String alamatTugas;
|
||||
|
||||
@Caption(value = "Object Jabatan Pemberi Nota Dinas")
|
||||
private JabatanVO jabatanPemberiNotaDinas;
|
||||
|
||||
@Caption(value="is Cuti Luar Negeri")
|
||||
|
||||
@Caption(value = "is Cuti Luar Negeri")
|
||||
private Boolean isCutiLuarNegeri;
|
||||
|
||||
@Caption(value="is Cuti Luar Kota")
|
||||
|
||||
@Caption(value = "is Cuti Luar Kota")
|
||||
private Boolean isCutiLuarKota;
|
||||
|
||||
//---------------------------------------- SURAT KEPUTUSAN ------------------------------------------
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
|
||||
@Caption(value = "Object Keputusan")
|
||||
private JenisKeputusanVO jenisKeputusan;
|
||||
|
||||
@Caption(value="Tgl SK/SPMT")
|
||||
|
||||
@Caption(value = "Tgl SK/SPMT")
|
||||
private Date tglSkSpmt;
|
||||
|
||||
@Caption(value="No SK Temp")
|
||||
|
||||
@Caption(value = "No SK Temp")
|
||||
private String noSkTemp;
|
||||
|
||||
@Caption(value="Uraian")
|
||||
|
||||
@Caption(value = "Uraian")
|
||||
private String uraian;
|
||||
|
||||
@Caption(value="SK Dari")
|
||||
|
||||
@Caption(value = "SK Dari")
|
||||
private String skDari;
|
||||
|
||||
@Caption(value="Tgl TMT/SPMT")
|
||||
|
||||
@Caption(value = "Tgl TMT/SPMT")
|
||||
private Date tglTmtSpmt;
|
||||
|
||||
@Caption(value="Tgl Berlaku Akhir")
|
||||
|
||||
@Caption(value = "Tgl Berlaku Akhir")
|
||||
private Date tglBerlakuAkhir;
|
||||
|
||||
@Caption(value="Tgl Keputusan")
|
||||
|
||||
@Caption(value = "Tgl Keputusan")
|
||||
private Date tglKeputusan;
|
||||
|
||||
public Integer getJumlahHari() {
|
||||
return jumlahHari;
|
||||
}
|
||||
|
||||
public void setJumlahHari(Integer jumlahHari) {
|
||||
this.jumlahHari = jumlahHari;
|
||||
}
|
||||
|
||||
public String getNoPlanning() {
|
||||
return noPlanning;
|
||||
}
|
||||
|
||||
public void setNoPlanning(String noPlanning) {
|
||||
this.noPlanning = noPlanning;
|
||||
}
|
||||
|
||||
public PegawaiVO getPegawai() {
|
||||
return pegawai;
|
||||
}
|
||||
|
||||
public void setPegawai(PegawaiVO pegawai) {
|
||||
this.pegawai = pegawai;
|
||||
}
|
||||
|
||||
public StatusPegawaiVO getStatusPegawaiPlan() {
|
||||
return statusPegawaiPlan;
|
||||
}
|
||||
|
||||
public void setStatusPegawaiPlan(StatusPegawaiVO statusPegawaiPlan) {
|
||||
this.statusPegawaiPlan = statusPegawaiPlan;
|
||||
}
|
||||
|
||||
public DepartemenVO getDepartemen() {
|
||||
return departemen;
|
||||
}
|
||||
|
||||
public void setDepartemen(DepartemenVO departemen) {
|
||||
this.departemen = departemen;
|
||||
}
|
||||
|
||||
public String getDeskripsiStatusPegawaiPlan() {
|
||||
return deskripsiStatusPegawaiPlan;
|
||||
}
|
||||
|
||||
public void setDeskripsiStatusPegawaiPlan(String deskripsiStatusPegawaiPlan) {
|
||||
this.deskripsiStatusPegawaiPlan = deskripsiStatusPegawaiPlan;
|
||||
}
|
||||
|
||||
public String getKeteranganLainyaPlan() {
|
||||
return keteranganLainyaPlan;
|
||||
}
|
||||
|
||||
public void setKeteranganLainyaPlan(String keteranganLainyaPlan) {
|
||||
this.keteranganLainyaPlan = keteranganLainyaPlan;
|
||||
}
|
||||
|
||||
public SuratKeputusanVO getNoSk() {
|
||||
return noSk;
|
||||
}
|
||||
|
||||
public void setNoSk(SuratKeputusanVO noSk) {
|
||||
this.noSk = noSk;
|
||||
}
|
||||
|
||||
public StatusPegawaiVO getStatusPegawaiExec() {
|
||||
return statusPegawaiExec;
|
||||
}
|
||||
|
||||
public void setStatusPegawaiExec(StatusPegawaiVO statusPegawaiExec) {
|
||||
this.statusPegawaiExec = statusPegawaiExec;
|
||||
}
|
||||
|
||||
public String getDeskripsiStatusPegawaiExec() {
|
||||
return deskripsiStatusPegawaiExec;
|
||||
}
|
||||
|
||||
public void setDeskripsiStatusPegawaiExec(String deskripsiStatusPegawaiExec) {
|
||||
this.deskripsiStatusPegawaiExec = deskripsiStatusPegawaiExec;
|
||||
}
|
||||
|
||||
public String getKeteranganLainyaExec() {
|
||||
return keteranganLainyaExec;
|
||||
}
|
||||
|
||||
public void setKeteranganLainyaExec(String keteranganLainyaExec) {
|
||||
this.keteranganLainyaExec = keteranganLainyaExec;
|
||||
}
|
||||
|
||||
public JenisKeputusanVO getJenisKeputusan() {
|
||||
return jenisKeputusan;
|
||||
}
|
||||
|
||||
public void setJenisKeputusan(JenisKeputusanVO jenisKeputusan) {
|
||||
this.jenisKeputusan = jenisKeputusan;
|
||||
}
|
||||
|
||||
public Date getTglSkSpmt() {
|
||||
return tglSkSpmt;
|
||||
}
|
||||
|
||||
public void setTglSkSpmt(Date tglSkSpmt) {
|
||||
this.tglSkSpmt = tglSkSpmt;
|
||||
}
|
||||
|
||||
public String getNoSkTemp() {
|
||||
return noSkTemp;
|
||||
}
|
||||
|
||||
public void setNoSkTemp(String noSkTemp) {
|
||||
this.noSkTemp = noSkTemp;
|
||||
}
|
||||
|
||||
public String getUraian() {
|
||||
return uraian;
|
||||
}
|
||||
|
||||
public void setUraian(String uraian) {
|
||||
this.uraian = uraian;
|
||||
}
|
||||
|
||||
public String getSkDari() {
|
||||
return skDari;
|
||||
}
|
||||
|
||||
public void setSkDari(String skDari) {
|
||||
this.skDari = skDari;
|
||||
}
|
||||
|
||||
public Date getTglTmtSpmt() {
|
||||
return tglTmtSpmt;
|
||||
}
|
||||
|
||||
public void setTglTmtSpmt(Date tglTmtSpmt) {
|
||||
this.tglTmtSpmt = tglTmtSpmt;
|
||||
}
|
||||
|
||||
public Date getTglBerlakuAkhir() {
|
||||
return tglBerlakuAkhir;
|
||||
}
|
||||
|
||||
public void setTglBerlakuAkhir(Date tglBerlakuAkhir) {
|
||||
this.tglBerlakuAkhir = tglBerlakuAkhir;
|
||||
}
|
||||
|
||||
public Date getTglKeputusan() {
|
||||
return tglKeputusan;
|
||||
}
|
||||
|
||||
public void setTglKeputusan(Date tglKeputusan) {
|
||||
this.tglKeputusan = tglKeputusan;
|
||||
}
|
||||
|
||||
public Date getTglPengajuan() {
|
||||
return tglPengajuan;
|
||||
}
|
||||
|
||||
public void setTglPengajuan(Date tglPengajuan) {
|
||||
this.tglPengajuan = tglPengajuan;
|
||||
}
|
||||
|
||||
public Integer getApprovalStatus() {
|
||||
return approvalStatus;
|
||||
}
|
||||
|
||||
public void setApprovalStatus(Integer approvalStatus) {
|
||||
this.approvalStatus = approvalStatus;
|
||||
}
|
||||
|
||||
public Set<ListTanggalCutiVO> getListTanggal() {
|
||||
return listTanggal;
|
||||
}
|
||||
|
||||
public void setListTanggal(Set<ListTanggalCutiVO> listTanggal) {
|
||||
this.listTanggal = listTanggal;
|
||||
}
|
||||
|
||||
public Integer getJenisPerawatan() {
|
||||
return jenisPerawatan;
|
||||
}
|
||||
|
||||
public void setJenisPerawatan(Integer jenisPerawatan) {
|
||||
this.jenisPerawatan = jenisPerawatan;
|
||||
}
|
||||
|
||||
public String getAlamatCuti() {
|
||||
return alamatCuti;
|
||||
}
|
||||
|
||||
public void setAlamatCuti(String alamatCuti) {
|
||||
this.alamatCuti = alamatCuti;
|
||||
}
|
||||
|
||||
public String getNomorTelepon() {
|
||||
return nomorTelepon;
|
||||
}
|
||||
|
||||
public void setNomorTelepon(String nomorTelepon) {
|
||||
this.nomorTelepon = nomorTelepon;
|
||||
}
|
||||
|
||||
public String getNoSuratTugas() {
|
||||
return noSuratTugas;
|
||||
}
|
||||
|
||||
public void setNoSuratTugas(String noSuratTugas) {
|
||||
this.noSuratTugas = noSuratTugas;
|
||||
}
|
||||
|
||||
public String getNoNotaDinas() {
|
||||
return noNotaDinas;
|
||||
}
|
||||
|
||||
public void setNoNotaDinas(String noNotaDinas) {
|
||||
this.noNotaDinas = noNotaDinas;
|
||||
}
|
||||
|
||||
public Date getTglNotaDinas() {
|
||||
return tglNotaDinas;
|
||||
}
|
||||
|
||||
public void setTglNotaDinas(Date tglNotaDinas) {
|
||||
this.tglNotaDinas = tglNotaDinas;
|
||||
}
|
||||
|
||||
public String getAlamatTugas() {
|
||||
return alamatTugas;
|
||||
}
|
||||
|
||||
public void setAlamatTugas(String alamatTugas) {
|
||||
this.alamatTugas = alamatTugas;
|
||||
}
|
||||
|
||||
public JabatanVO getJabatanPemberiNotaDinas() {
|
||||
return jabatanPemberiNotaDinas;
|
||||
}
|
||||
|
||||
public void setJabatanPemberiNotaDinas(JabatanVO jabatanPemberiNotaDinas) {
|
||||
this.jabatanPemberiNotaDinas = jabatanPemberiNotaDinas;
|
||||
}
|
||||
|
||||
public Boolean getIsCutiLuarNegeri() {
|
||||
return isCutiLuarNegeri;
|
||||
}
|
||||
|
||||
public void setIsCutiLuarNegeri(Boolean isCutiLuarNegeri) {
|
||||
this.isCutiLuarNegeri = isCutiLuarNegeri;
|
||||
}
|
||||
|
||||
public Boolean getIsCutiLuarKota() {
|
||||
return isCutiLuarKota;
|
||||
}
|
||||
|
||||
public void setIsCutiLuarKota(Boolean isCutiLuarKota) {
|
||||
this.isCutiLuarKota = isCutiLuarKota;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -7,6 +7,7 @@ import com.jasamedika.medifirst2000.controller.base.LocaleController;
|
||||
import com.jasamedika.medifirst2000.core.web.WebConstants;
|
||||
import com.jasamedika.medifirst2000.dao.JenisGajiDao;
|
||||
import com.jasamedika.medifirst2000.dao.MapUraianTugasToRincianKegiatanDao;
|
||||
import com.jasamedika.medifirst2000.dto.DataCutiDto;
|
||||
import com.jasamedika.medifirst2000.entities.JenisGaji;
|
||||
import com.jasamedika.medifirst2000.entities.MapUraianTugasToRincianKegiatan;
|
||||
import com.jasamedika.medifirst2000.entities.Pegawai;
|
||||
@ -327,6 +328,9 @@ public class SdmController extends LocaleController<AkunVO> {
|
||||
@Autowired
|
||||
private LogAccService logAccService;
|
||||
|
||||
@Autowired
|
||||
private JatahCutiDanIzinService jatahCutiDanIzinService;
|
||||
|
||||
@RequestMapping(value = "/save-custom-uraian-kerja", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
|
||||
public ResponseEntity<Map<String, Object>> saveBerkasLamaran(@Valid @RequestBody CustomIndexKerjaVO vo,
|
||||
HttpServletRequest request) {
|
||||
@ -3189,20 +3193,16 @@ public class SdmController extends LocaleController<AkunVO> {
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/get-data-cuti", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
public ResponseEntity<Map<String, Object>> getDataCuti(@RequestParam(value = "pegawaiId") Integer pegawaiId,
|
||||
public ResponseEntity<DataCutiDto> getDataCuti(@RequestParam(value = "pegawaiId") Integer pegawaiId,
|
||||
@RequestParam(value = "year", required = false) String year,
|
||||
@RequestParam(value = "statusPegawaiId") Integer statusPegawaiId,
|
||||
@RequestParam(value = "kategoriPegawaiId", required = false) Integer kategoriPegawaiId,
|
||||
HttpServletRequest request) {
|
||||
try {
|
||||
Map<String, Object> result = servicePermohonanStatus.getDataCuti(pegawaiId, year, statusPegawaiId);
|
||||
if (null != result) {
|
||||
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
|
||||
getMessage(MessageResource.LABEL_SUCCESS, request));
|
||||
return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage);
|
||||
} else {
|
||||
return RestUtil.getJsonResponse(null, HttpStatus.NOT_FOUND, mapHeaderMessage);
|
||||
}
|
||||
DataCutiDto dto = jatahCutiDanIzinService.getDataCuti(pegawaiId, year, statusPegawaiId);
|
||||
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
|
||||
getMessage(MessageResource.LABEL_SUCCESS, request));
|
||||
return RestUtil.getJsonResponse(dto, HttpStatus.OK, mapHeaderMessage);
|
||||
} catch (ServiceVOException e) {
|
||||
LOGGER.error("Got ServiceVOException {} when getDataCuti", e.getMessage());
|
||||
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, e.getMessage());
|
||||
@ -3215,19 +3215,15 @@ public class SdmController extends LocaleController<AkunVO> {
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/perbarui-data-cuti", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
public ResponseEntity<Map<String, Object>> perbaruiDataCuti(HttpServletRequest request,
|
||||
public ResponseEntity<DataCutiDto> perbaruiDataCuti(HttpServletRequest request,
|
||||
@RequestParam(value = "pegawaiId") Integer idPegawai,
|
||||
@RequestParam(value = "year", required = false) String year,
|
||||
@RequestParam(value = "statusPegawaiId") Integer idStatusPegawai) {
|
||||
try {
|
||||
Map<String, Object> result = servicePermohonanStatus.perbaruiDataCuti(idPegawai, idStatusPegawai);
|
||||
if (null != result) {
|
||||
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
|
||||
getMessage(MessageResource.LABEL_UPDATE_DATA_CUTI, request));
|
||||
return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage);
|
||||
} else {
|
||||
return RestUtil.getJsonResponse(null, HttpStatus.NOT_FOUND, mapHeaderMessage);
|
||||
}
|
||||
DataCutiDto dto = servicePermohonanStatus.perbaruiDataCuti(idPegawai, idStatusPegawai);
|
||||
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
|
||||
getMessage(MessageResource.LABEL_UPDATE_DATA_CUTI, request));
|
||||
return RestUtil.getJsonResponse(dto, HttpStatus.OK, mapHeaderMessage);
|
||||
} catch (ServiceVOException e) {
|
||||
LOGGER.error("Got ServiceVOException {} when perbaruiDataCuti", e.getMessage());
|
||||
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, e.getMessage());
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user