Update DateUtil.java
Perbaikan kondisi query hanya melibatkan timestamp datatype untuk peningkatan performance
This commit is contained in:
parent
6b00524bf3
commit
8d8b0af40c
@ -95,8 +95,9 @@ public interface IkiDanRemunerasiDao extends PagingAndSortingRepository<IkiDanRe
|
||||
|
||||
@Query(" select ikiDanRemunerasi.remunerasi " + "from IkiDanRemunerasi ikiDanRemunerasi "
|
||||
+ " left join ikiDanRemunerasi.pegawai pegawai " + "left join ikiDanRemunerasi.strukHistory strukHistori "
|
||||
+ "where to_char(strukHistori.tglHistori,'yyyy-MM') =:periode " + "and pegawai.id = :idPegawai")
|
||||
public Double findRemunerasi(@Param("periode") String periode, @Param("idPegawai") Integer idPegawai);
|
||||
+ "where strukHistori.tglHistori between :start and :end " + "and pegawai.id = :idPegawai")
|
||||
public Double findRemunerasi(@Param("start") Date start, @Param("end") Date end,
|
||||
@Param("idPegawai") Integer idPegawai);
|
||||
|
||||
// Target_pelayanan_jam_kerja
|
||||
@Query("select distinct new Map(ppp.ObjectJenisPetugasPeId as jenisPetugasId," + "pg.id as pegawaiId,"
|
||||
@ -270,8 +271,7 @@ public interface IkiDanRemunerasiDao extends PagingAndSortingRepository<IkiDanRe
|
||||
|
||||
// Detail_logbook_kinerja_jam_kerja_dokter
|
||||
@Query("select distinct new Map(jpp.id as jenisPetugasId,jpp.jenisPetugasPe as jenisPetugas,"
|
||||
+ "pr.id as produkId,pr.namaProduk as namaProduk,"
|
||||
+ "coalesce(ppp.asaId,2) as asaId,"
|
||||
+ "pr.id as produkId,pr.namaProduk as namaProduk," + "coalesce(ppp.asaId,2) as asaId,"
|
||||
+ "pp.noRec as noRec,pp.tglPelayanan as tglPelayanan,to_char(pp.tglPelayanan,'dd-MM-yyyy HH24:MI:ss') as tglPelayananFormatted,pp.jumlah as jumlah,"
|
||||
+ "coalesce(pp.hargaDiscount,0) as hargaDiskon,"
|
||||
+ "ru.departemenId as departemenId,ru.id as ruanganId,ru.namaRuangan as namaRuangan,"
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package com.jasamedika.medifirst2000.dao;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -58,12 +59,12 @@ public interface IndekKinerjaDao extends PagingAndSortingRepository<IndekKinerja
|
||||
+ " left join pelayananPasienPetugas.pelayananPasien pelayananPasien"
|
||||
+ " left join pelayananPasien.produk produk " + " left join pelayananPasien.kelas kelas "
|
||||
+ " left join produk.detailJenisProduk detail" + " left join detail.jenisProduk jenisProduk "
|
||||
+ "where dokter.id=:id and to_char(pelayananPasien.tglPelayanan,'yyyy-MM') = "
|
||||
+ " :month and jenisProduk.id not in (:listIdJenisProduk) "
|
||||
+ "where dokter.id=:id and pelayananPasien.tglPelayanan between "
|
||||
+ " :start and :end and jenisProduk.id not in (:listIdJenisProduk) "
|
||||
+ " group by pelayananPasienPetugas.kdjenispetugaspe.id, kelas.id,kelas.namaKelas, produk.id, produk.namaProduk ,pelayananPasien.hargaSatuan ,detail.id, dokter.id "
|
||||
+ " order by kelas.namaKelas, produk.namaProduk asc ")
|
||||
public List<Map<String, Object>> findIdProdukByIdUser(@Param("id") Integer id, @Param("month") String month,
|
||||
@Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
public List<Map<String, Object>> findIdProdukByIdUser(@Param("id") Integer id, @Param("start") Date start,
|
||||
@Param("end") Date end, @Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
|
||||
@Query(" select distinct new map (case when pelayananPasienPetugas.kdjenispetugaspe.id in (6,13) then pelayananPasienPetugas.kdjenispetugaspe.id else 4 end as idJenisPelaksana, produk.namaProduk as namaProduk, produk.id as idProduk, "
|
||||
+ " pelayananPasien.hargaSatuan as harga, kelas.namaKelas as namaKelas, kelas.id as idKelas, detail.id as detailId, "
|
||||
@ -73,12 +74,13 @@ public interface IndekKinerjaDao extends PagingAndSortingRepository<IndekKinerja
|
||||
+ " left join pelayananPasienPetugas.pelayananPasien pelayananPasien"
|
||||
+ " left join pelayananPasien.produk produk " + " left join pelayananPasien.kelas kelas "
|
||||
+ " left join produk.detailJenisProduk detail" + " left join detail.jenisProduk jenisProduk "
|
||||
+ "where dokter.id=:id and to_char(pelayananPasien.tglPelayanan,'yyyy-MM') = "
|
||||
+ " :month and jenisProduk.id not in (:listIdJenisProduk) and detail.id not in (:listIdDetailJenisProduk) "
|
||||
+ "where dokter.id=:id and pelayananPasien.tglPelayanan between "
|
||||
+ " :start and :end and jenisProduk.id not in (:listIdJenisProduk) and detail.id not in (:listIdDetailJenisProduk) "
|
||||
+ " group by pelayananPasienPetugas.kdjenispetugaspe.id, kelas.id,kelas.namaKelas, produk.id, produk.namaProduk ,pelayananPasien.hargaSatuan ,detail.id, dokter.id "
|
||||
+ " order by kelas.namaKelas, produk.namaProduk asc ")
|
||||
public List<Map<String, Object>> findIdProdukByIdUserWithDetailException(@Param("id") Integer id,
|
||||
@Param("month") String month, @Param("listIdJenisProduk") List<Integer> listIdJenisProduk,
|
||||
@Param("start") Date start, @Param("end") Date end,
|
||||
@Param("listIdJenisProduk") List<Integer> listIdJenisProduk,
|
||||
@Param("listIdDetailJenisProduk") List<Integer> listIdDetailJenisProduk);
|
||||
|
||||
@Query(" select produk.id " + " from PelayananPasienPetugas pelayananPasienPetugas"
|
||||
@ -86,20 +88,20 @@ public interface IndekKinerjaDao extends PagingAndSortingRepository<IndekKinerja
|
||||
+ " left join pelayananPasienPetugas.pelayananPasien pelayananPasien"
|
||||
+ " left join pelayananPasien.produk produk " + " left join pelayananPasien.kelas kelas "
|
||||
+ " left join produk.detailJenisProduk detail" + " left join detail.jenisProduk jenisProduk "
|
||||
+ "where dokter.id=:id and to_char(pelayananPasien.tglPelayanan,'yyyy-MM') = "
|
||||
+ " :month and jenisProduk.id not in (:listIdJenisProduk) ")
|
||||
public List<Integer> findIdProdukByIdUser2(@Param("id") Integer id, @Param("month") String month,
|
||||
@Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
+ "where dokter.id=:id and pelayananPasien.tglPelayanan between "
|
||||
+ " :start and :end and jenisProduk.id not in (:listIdJenisProduk) ")
|
||||
public List<Integer> findIdProdukByIdUser2(@Param("id") Integer id, @Param("start") Date start,
|
||||
@Param("end") Date end, @Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
|
||||
@Query(" select produk.id " + " from PelayananPasienPetugas pelayananPasienPetugas"
|
||||
+ " left join pelayananPasienPetugas.kdpegawai dokter"
|
||||
+ " left join pelayananPasienPetugas.pelayananPasien pelayananPasien"
|
||||
+ " left join pelayananPasien.produk produk " + " left join pelayananPasien.kelas kelas "
|
||||
+ " left join produk.detailJenisProduk detail" + " left join detail.jenisProduk jenisProduk "
|
||||
+ "where dokter.id=:id and to_char(pelayananPasien.tglPelayanan,'yyyy-MM') = "
|
||||
+ " :month and jenisProduk.id not in (:listIdJenisProduk) and detail.id not in (:listDetailJenisProduk) ")
|
||||
public List<Integer> findIdProdukByIdUser2WithException(@Param("id") Integer id, @Param("month") String month,
|
||||
@Param("listIdJenisProduk") List<Integer> listIdJenisProduk,
|
||||
+ "where dokter.id=:id and pelayananPasien.tglPelayanan between "
|
||||
+ " :start and :end and jenisProduk.id not in (:listIdJenisProduk) and detail.id not in (:listDetailJenisProduk) ")
|
||||
public List<Integer> findIdProdukByIdUser2WithException(@Param("id") Integer id, @Param("start") Date start,
|
||||
@Param("end") Date end, @Param("listIdJenisProduk") List<Integer> listIdJenisProduk,
|
||||
@Param("listDetailJenisProduk") List<Integer> listDetailJenisProduk);
|
||||
|
||||
@Query(" select distinct new map ( produk.namaProduk as namaProduk, produk.id as produkId,"
|
||||
@ -192,10 +194,10 @@ public interface IndekKinerjaDao extends PagingAndSortingRepository<IndekKinerja
|
||||
+ " left join pelayananPasienPetugas.pelayananPasien pelayananPasien"
|
||||
+ " left join pelayananPasien.produk produk " + " left join produk.detailJenisProduk detail"
|
||||
+ " left join detail.jenisProduk jenisProduk"
|
||||
+ " where dokter.id=:id and to_char(pelayananPasien.tglPelayanan,'yyyy-MM') = :periode and jenisProduk.id not in (:listIdJenisProduk)"
|
||||
+ " where dokter.id=:id and pelayananPasien.tglPelayanan between :start and :end and jenisProduk.id not in (:listIdJenisProduk)"
|
||||
+ " group by produk.namaProduk,produk.id,pelayananPasien.hargaSatuan,detail.id,jenisProduk.id ")
|
||||
public List<Map<String, Object>> findAllProdukPerPeriode(@Param("id") Integer id, @Param("periode") String periode,
|
||||
@Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
public List<Map<String, Object>> findAllProdukPerPeriode(@Param("id") Integer id, @Param("start") Date start,
|
||||
@Param("end") Date end, @Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
|
||||
@Query(" select new map (produk.namaProduk as namaProduk, produk.id as produkId,"
|
||||
+ " count(distinct pelayananPasien.noRec) as count,pelayananPasien.hargaSatuan as harga,detail.id as detailId,jenisProduk.id as idJenisProduk)"
|
||||
@ -267,10 +269,10 @@ public interface IndekKinerjaDao extends PagingAndSortingRepository<IndekKinerja
|
||||
+ " left join pelayananPasienPetugas.kdpegawai dokter"
|
||||
+ " left join pelayananPasienPetugas.pelayananPasien pelayananPasien"
|
||||
+ " left join pelayananPasien.produk produk"
|
||||
+ " where dokter.id=:id and to_char(pelayananPasien.tglPelayanan,'yyyy-MM')=:date"
|
||||
+ " where dokter.id=:id and pelayananPasien.tglPelayanan between and :start and :end"
|
||||
+ " and produk.id = :idProduk")
|
||||
public Long findTotalProdukPerPeriode(@Param("id") Integer id, @Param("idProduk") Integer idProduk,
|
||||
@Param("date") String date);
|
||||
@Param("start") Date start, @Param("end") Date end);
|
||||
|
||||
@Query(" select CAST(sum(pelayananPasien.jumlah) as long) as total"
|
||||
+ " from PelayananPasienPetugas pelayananPasienPetugas"
|
||||
@ -278,9 +280,9 @@ public interface IndekKinerjaDao extends PagingAndSortingRepository<IndekKinerja
|
||||
+ " left join pelayananPasienPetugas.pelayananPasien pelayananPasien"
|
||||
+ " left join pelayananPasien.produk produk" + " left join produk.detailJenisProduk detailjenisProduk"
|
||||
+ " left join detailjenisProduk.jenisProduk jenisProduk"
|
||||
+ " where dokter.id=:id and to_char(pelayananPasien.tglPelayanan,'yyyy-MM') =:month"
|
||||
+ " where dokter.id=:id and pelayananPasien.tglPelayanan between :start and :end"
|
||||
+ " and jenisProduk.id not in(:idJenisProduk)")
|
||||
public Long findTotalTindakanPerMonth(@Param("id") Integer id, @Param("month") String month,
|
||||
public Long findTotalTindakanPerMonth(@Param("id") Integer id, @Param("start") Date start, @Param("end") Date end,
|
||||
@Param("idJenisProduk") List<Integer> idJenisProduk);
|
||||
|
||||
@Query(" select distinct pelayananPasien.hargaSatuan" + " from PelayananPasienPetugas pelayananPasienPetugas"
|
||||
@ -295,11 +297,11 @@ public interface IndekKinerjaDao extends PagingAndSortingRepository<IndekKinerja
|
||||
+ " left join pelayananPasienPetugas.kdpegawai dokter"
|
||||
+ " left join pelayananPasienPetugas.pelayananPasien pelayananPasien"
|
||||
+ " left join pelayananPasien.produk produk"
|
||||
+ " where dokter.id=:idPegawai and to_char(pelayananPasien.tglPelayanan,'yyyy-MM') = :periode "
|
||||
+ " where dokter.id=:idPegawai and pelayananPasien.tglPelayanan between :start and :end "
|
||||
+ " and produk.id = :produkId group by produk.namaProduk,to_char(pelayananPasien.tglPelayanan,'yyyy-MM-dd'),"
|
||||
+ " produk.id order by to_char(pelayananPasien.tglPelayanan,'yyyy-MM-dd')")
|
||||
public List<Map<String, Object>> findCountTindakanPerTanggalAndProdukId(@Param("idPegawai") Integer idPegawai,
|
||||
@Param("produkId") Integer produkId, @Param("periode") String periode);
|
||||
@Param("produkId") Integer produkId, @Param("start") Date start, @Param("end") Date end);
|
||||
|
||||
@Query(" select count(produk.id) as jumlah " + " from PelayananPasienPetugas pelayananPasienPetugas"
|
||||
+ " left join pelayananPasienPetugas.kdpegawai dokter"
|
||||
@ -389,20 +391,21 @@ public interface IndekKinerjaDao extends PagingAndSortingRepository<IndekKinerja
|
||||
@Query(" select pegawaiHistoriRekap.totalNilaiIndex " + "from PegawaiHistoriRekap pegawaiHistoriRekap "
|
||||
+ "left join pegawaiHistoriRekap.pegawai pegawai "
|
||||
+ "left join pegawaiHistoriRekap.strukHistory strukHistori "
|
||||
+ "where pegawai.id = :idPegawai and to_char(strukHistori.tglAwal, 'yyyy-MM')=:periode")
|
||||
public Double findIndexKehadiran(@Param("idPegawai") Integer idPegawai, @Param("periode") String periode);
|
||||
+ "where pegawai.id = :idPegawai and strukHistori.tglAwal between :start and :end")
|
||||
public Double findIndexKehadiran(@Param("idPegawai") Integer idPegawai, @Param("start") Date start,
|
||||
@Param("end") Date end);
|
||||
|
||||
@Query(" select new Map( produk.namaProduk as namaProduk, CAST(sum(pelayananPasien.jumlah) as long) as count,jenisProduk.id as idJenisProduk, to_char(pelayananPasien.tglPelayanan,'dd-MM-yyyy') as tglPelayanan)"
|
||||
+ " from PelayananPasienPetugas pelayananPasienPetugas"
|
||||
+ " left join pelayananPasienPetugas.kdpegawai dokter"
|
||||
+ " left join pelayananPasienPetugas.pelayananPasien pelayananPasien"
|
||||
+ " left join pelayananPasien.produk produk " + " left join produk.detailJenisProduk detail"
|
||||
+ " left join detail.jenisProduk jenisProduk "
|
||||
+ "where dokter.id=:id and to_char(pelayananPasien.tglPelayanan,'yyyy-MM') "
|
||||
+ "=:startDate and jenisProduk.id not in (:listIdJenisProduk) group by produk.namaProduk,jenisProduk.id,to_char(pelayananPasien.tglPelayanan,'dd-MM-yyyy') "
|
||||
+ " left join detail.jenisProduk jenisProduk " + "where dokter.id=:id and pelayananPasien.tglPelayanan "
|
||||
+ "between :start and :end and jenisProduk.id not in (:listIdJenisProduk) group by produk.namaProduk,jenisProduk.id,to_char(pelayananPasien.tglPelayanan,'dd-MM-yyyy') "
|
||||
+ " order by to_char(pelayananPasien.tglPelayanan,'dd-MM-yyyy')")
|
||||
public List<Map<String, Object>> findTindakanByIdPegawaiAndPeriod(@Param("startDate") String startDate,
|
||||
@Param("id") Integer id, @Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
public List<Map<String, Object>> findTindakanByIdPegawaiAndPeriod(@Param("start") Date start,
|
||||
@Param("end") Date end, @Param("id") Integer id,
|
||||
@Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
|
||||
@Query(" select new map (produk.namaProduk as namaProduk, produk.id as produkId,"
|
||||
+ " count(produk.namaProduk) as count,pelayananPasien.hargaSatuan as harga,detail.id as detailId,jenisProduk.id as idJenisProduk)"
|
||||
|
||||
@ -23,16 +23,17 @@ public interface KalenderDao extends PagingAndSortingRepository<Kalender, Intege
|
||||
List<Map<String, Object>> getTanggalFromPeriodicParameter(@Param("tglAwal") String tglAwal,
|
||||
@Param("tglAkhir") String tglAkhir);
|
||||
|
||||
@Query("select new Map(k.id as id,to_char(k.tanggal,'dd') as tanggal) from Kalender k where to_char(k.tanggal,'yyyy-MM') = :bulan")
|
||||
List<Map<String, Object>> getKalenderBulanan(@Param("bulan") String bulan);
|
||||
@Query("select new Map(k.id as id,to_char(k.tanggal,'dd') as tanggal) "
|
||||
+ "from Kalender k where k.tanggal between :start and :end")
|
||||
List<Map<String, Object>> getKalenderBulanan(@Param("start") Date start, @Param("end") Date end);
|
||||
|
||||
@Query(nativeQuery = true, value = "select kal.tanggal from kalender_s kal order by kal.tanggal desc limit 1")
|
||||
Date getLastDateData();
|
||||
|
||||
@Query(nativeQuery = true, value = "select kl.* from kalender_s kl "
|
||||
+ "left join mapkalendertoharilibur_m mkl on kl.id = mkl.objecttanggalfk "
|
||||
+ "where to_char(kl.tanggal, 'yyyy-MM') = :bulan "
|
||||
+ "where kl.tanggal between :start and :end "
|
||||
+ "and kl.namahari not in ('Sabtu', 'Minggu') and mkl.id is null")
|
||||
List<Kalender> getTargetKerja(@Param("bulan") String bulan);
|
||||
List<Kalender> getTargetKerja(@Param("start") Date start, @Param("end") Date end);
|
||||
|
||||
}
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package com.jasamedika.medifirst2000.dao;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -242,9 +243,9 @@ public interface LogbookKinerjaDao extends PagingAndSortingRepository<LogbookKin
|
||||
@Param("indikatorId") Integer idIndikator);
|
||||
|
||||
@Query("select distinct lkt.pegawaiId " + "from LogbookKinerja lkt "
|
||||
+ "where lkt.indikatorKinerjaId = :indikatorId " + "and to_char(lkt.bulan,'yyyy-MM') = :bulan "
|
||||
+ "where lkt.indikatorKinerjaId = :indikatorId " + "and lkt.bulan between :start and :end "
|
||||
+ "and lkt.capaian = 0.0 " + "and lkt.statusEnabled is true " + "and lkt.statusVerifikasi is true")
|
||||
List<Integer> findPegawaiKontrakByIndikator(@Param("bulan") String bulan,
|
||||
List<Integer> findPegawaiKontrakByIndikator(@Param("start") Date start, @Param("end") Date end,
|
||||
@Param("indikatorId") Integer idIndikator);
|
||||
|
||||
@Query("select distinct new Map(jb.id as id,jb.namaJabatan as namaJabatan,"
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package com.jasamedika.medifirst2000.dao;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -31,7 +32,7 @@ public interface LogbookKinerjaDokterDao extends PagingAndSortingRepository<Logb
|
||||
+ "and lk.jabatanId = lkd.jabatanId " + "and lk.indikatorKinerjaId = ikd.indikatorKinerjaId "
|
||||
+ "and lk.statusEnabled is true " + "and lk.statusVerifikasi is true";
|
||||
|
||||
String whrBulan = " and to_char(lk.bulan,'yyyy-MM') = :bulan";
|
||||
String whrBulan = " and lk.bulan between :start and :end and lkd.bulan between :start and :end";
|
||||
|
||||
String whrPegawai = " and lk.pegawaiId = :pegawaiId";
|
||||
|
||||
@ -44,12 +45,12 @@ public interface LogbookKinerjaDokterDao extends PagingAndSortingRepository<Logb
|
||||
String whrLogbook = " and lk.noRec = :noRec";
|
||||
|
||||
@Query(strCpptToDashboard + tblKinerjaDokter + whrBulan + whrPegawai + whrJabatan + whrIndikator)
|
||||
public List<Map<String, Object>> findDetailLogbookDokter(@Param("bulan") String bulan,
|
||||
public List<Map<String, Object>> findDetailLogbookDokter(@Param("start") Date start, @Param("end") Date end,
|
||||
@Param("pegawaiId") Integer idPegawai, @Param("jabatanId") Integer idJabatan,
|
||||
@Param("indikatorId") Integer idIndikator);
|
||||
|
||||
@Query(strVerifCppt + tblKinerjaDokter + whrBulan + whrPegawai + whrIndikator + whrDetailIndikator)
|
||||
public Map<String, Object> findDetailKinerjaDokter(@Param("bulan") String bulan,
|
||||
public Map<String, Object> findDetailKinerjaDokter(@Param("start") Date start, @Param("end") Date end,
|
||||
@Param("pegawaiId") Integer idPegawai, @Param("indikatorId") Integer idIndikator,
|
||||
@Param("detailIndikatorId") Integer idDetailIndikator);
|
||||
|
||||
|
||||
@ -297,10 +297,10 @@ public interface PasienDaftarDao extends PagingAndSortingRepository<PasienDaftar
|
||||
+ "sum(coalesce(pp.hargaDiscount,0) * pp.jumlah) as totalDiskon,"
|
||||
+ "sum(coalesce(pp.jasa,0)) as biayaJasaFarmasi) " + "from PelayananPasien pp "
|
||||
+ "inner join pp.pasienDaftar apd " + "inner join apd.pasienDaftar pd " + "inner join pd.pasien ps "
|
||||
+ "where pd.diskonPegawai in (1,2,3,4,5) " + "and to_char(pd.tglRegistrasi,'yyyy-MM') = :periode "
|
||||
+ "where pd.diskonPegawai in (1,2,3,4,5) " + "and pd.tglRegistrasi between :start and :end "
|
||||
+ "group by pd.noRec, pd.strukPelayananId, ps.namaPasien, pd.noRegistrasi, pd.diskonPegawai "
|
||||
+ "order by ps.namaPasien")
|
||||
List<Map<String, Object>> findRekapDiskon(@Param("periode") String periode);
|
||||
List<Map<String, Object>> findRekapDiskon(@Param("start") Date start, @Param("end") Date end);
|
||||
|
||||
@Query("select new Map(ul.tanggal as tanggal," + "pg.id as pegawaiId," + "pg.namaLengkap as namaLengkap,"
|
||||
+ "ul.jenisLog as jenisLog," + "ul.keterangan as keterangan) " + "from UserLogging ul "
|
||||
|
||||
@ -50,8 +50,9 @@ public interface PegawaiJadwalKerjaDao extends PagingAndSortingRepository<Pegawa
|
||||
|
||||
@Query("select 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')= :date " + "and pegawai.id = :pegawaiId")
|
||||
List<Integer> getListJadwal(@Param("pegawaiId") Integer pegawaiId, @Param("date") String date);
|
||||
+ "where kalender.tanggal between :start and :end " + "and pegawai.id = :pegawaiId")
|
||||
List<Integer> getListJadwal(@Param("pegawaiId") Integer pegawaiId, @Param("start") Date start,
|
||||
@Param("end") Date end);
|
||||
|
||||
@Query("select count(kalender.tanggal) " + "from PegawaiJadwalKerja jadwalKerja "
|
||||
+ "left join jadwalKerja.pegawai pegawai " + "left join jadwalKerja.tanggal kalender "
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package com.jasamedika.medifirst2000.dao;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -60,12 +61,10 @@ public interface RevIndekKinerjaDao extends PagingAndSortingRepository<IndekKine
|
||||
+ " left join pelayananPasienPetugas.pelayananPasien pelayananPasien"
|
||||
+ " left join pelayananPasien.produk produk " + " left join produk.detailJenisProduk detail"
|
||||
+ " left join pelayananPasien.kelas kelas " + " left join detail.jenisProduk jenisProduk "
|
||||
+ " where pelayananPasienPetugas.ObjectPegawaiId=:id and to_char(pelayananPasien.tglPelayanan,'yyyy-MM') "
|
||||
+ " between :startDate and :endDate and detail.id in :listIdJenisProduk "
|
||||
+ " order by produk.namaProduk asc")
|
||||
public List<Map<String, Object>> getAllTindakanByPeriod(@Param("id") Integer id,
|
||||
@Param("startDate") String startDate, @Param("endDate") String endDate,
|
||||
@Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
+ " where pelayananPasienPetugas.ObjectPegawaiId=:id and pelayananPasien.tglPelayanan "
|
||||
+ " between :start and :end and detail.id in :listIdJenisProduk " + " order by produk.namaProduk asc")
|
||||
public List<Map<String, Object>> getAllTindakanByPeriod(@Param("id") Integer id, @Param("start") Date start,
|
||||
@Param("end") Date end, @Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
|
||||
String QueryList = "select new map(case when pelayananPasienPetugas.kdjenispetugaspe.id in (6,13) then pelayananPasienPetugas.kdjenispetugaspe.id else 4 end as idJenisPelaksana, "
|
||||
+ "detail.id as detailId,detail.detailJenisProduk as detailJenisProduk"
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package com.jasamedika.medifirst2000.dao;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -10,106 +11,81 @@ import org.springframework.stereotype.Repository;
|
||||
|
||||
import com.jasamedika.medifirst2000.entities.PegawaiHistoriEvaluasiKomponen;;
|
||||
|
||||
|
||||
@Repository("RiwayatPenilaianKompetensiPegawai")
|
||||
public interface RiwayatPenilaianKompetensiPegawaiDao extends PagingAndSortingRepository<PegawaiHistoriEvaluasiKomponen, String>{
|
||||
public interface RiwayatPenilaianKompetensiPegawaiDao
|
||||
extends PagingAndSortingRepository<PegawaiHistoriEvaluasiKomponen, String> {
|
||||
|
||||
@Query("select new map (komponenEvaluasi.reportDisplay as kompetensi, "+
|
||||
"komponenEvaluasi.nilaiStandar as nilaiStandar,komponenEvaluasi.id as idKomponenEvaluasi, "+
|
||||
"jabatan.id as idJabatan, "+
|
||||
"kelompokEvaluasi.id as idKelompokEvaluasi, "+
|
||||
"kelompokEvaluasi.kelompokEvaluasi as kelompokEvaluasi, "+
|
||||
"komponenEvaluasi.deskripsiKompetensi as deskripsiKompetensi ) "+
|
||||
"from KomponenEvaluasi komponenEvaluasi "+
|
||||
"left join komponenEvaluasi.jabatan jabatan "+
|
||||
"left join komponenEvaluasi.kelompokEvaluasi kelompokEvaluasi "+
|
||||
"left join komponenEvaluasi.departemen departemen "+
|
||||
"where jabatan.id = :idjabatan")
|
||||
List<Map<String,Object>> getPenilaianKompetensiRiwayat(@Param("idjabatan") Integer idjabatan);
|
||||
|
||||
@Query("select new map (komponenEvaluasi.komponenEvaluasi as kompetensi, "+
|
||||
"komponenEvaluasi.nilaiStandar as nilaiStandar, "+
|
||||
"jabatan.id as jabatanId, "+
|
||||
"komponenEvaluasi.id as idKomponenEvaluasi, "+
|
||||
"jabatan.namaJabatan as namaJabatan, "+
|
||||
"kelompokEvaluasi.id as idKelompokEvaluasi, "+
|
||||
"kelompokEvaluasi.kelompokEvaluasi as jenisKompetensi) "+
|
||||
"from KomponenEvaluasi komponenEvaluasi "+
|
||||
"left join komponenEvaluasi.jabatan jabatan "+
|
||||
"left join komponenEvaluasi.kelompokEvaluasi kelompokEvaluasi "+
|
||||
"where jabatan.id = :idjabatan "+
|
||||
"order by kelompokEvaluasi.id ")
|
||||
List<Map<String,Object>> getKompetensiByRuangan(@Param("idjabatan") Integer idjabatan);
|
||||
|
||||
@Query("select new map (pegawaiHistoriEvaluasiKomponen.noRec as idPegawaiHistoriEvaluasiKomponen, "+
|
||||
"pegawaiHistoriEvaluasiKomponen.nilaiHasilEvaluasi as nilaiHasilEvaluasi, "+
|
||||
"komponenEvaluasi.id as idKomponenEvaluasi, "+
|
||||
"komponenEvaluasi.nilaiStandar as nilaiStandar, "+
|
||||
"komponenEvaluasi.komponenEvaluasi as kompetensi, "+
|
||||
"pegawai.id as idpegawai, "+
|
||||
"strukHistory.noRec as noRecStrukHistory, "+
|
||||
"pegawaiHistoryEvaluasi.noRec as noRecPegawaiHistoryEvaluasi, "+
|
||||
"pegawaiHistoryEvaluasi.rekomendasi as rekomendasi, "+
|
||||
"strukHistory.tglHistori as tglHistory, "+
|
||||
"ruangan.id as idRuangan) "+
|
||||
"from PegawaiHistoriEvaluasiKomponen pegawaiHistoriEvaluasiKomponen "+
|
||||
"left join pegawaiHistoriEvaluasiKomponen.komponenEvaluasi komponenEvaluasi "+
|
||||
"left join pegawaiHistoriEvaluasiKomponen.pegawai pegawai "+
|
||||
"left join pegawaiHistoriEvaluasiKomponen.strukHistory strukHistory "+
|
||||
"left join strukHistory.ruangan ruangan "+
|
||||
"left join strukHistory.pegawaiHistoriEvaluasi pegawaiHistoryEvaluasi "+
|
||||
"where pegawai.id = :idPegawai and to_char(strukHistory.tglHistori,'yyyy-MM')=:periode "+
|
||||
"and komponenEvaluasi.id =:idKomponen")
|
||||
Map<String,Object> getKompetensiByPegawai(@Param("idPegawai") Integer idPegawai,@Param("periode") String periode,@Param("idKomponen") Integer idKomponen);
|
||||
|
||||
@Query("select new map( "+
|
||||
"kelompokEvaluasi.kelompokEvaluasi as title, "+
|
||||
"kelompokEvaluasi.id as idKelompokEvaluasi) "+
|
||||
"from KelompokEvaluasi kelompokEvaluasi "+
|
||||
"where kelompokEvaluasi.id between 1 and 4")
|
||||
List<Map<String,Object>> getKelompokEvaluasi();
|
||||
|
||||
@Query("select new map(pendidikan.namaPendidikan as namaPendidikan, "+
|
||||
" pegawai.tglMasuk as tglMasuk)"+
|
||||
" from MapPegawaiJabatanToUnitKerja mapPegawai "
|
||||
+ "left join mapPegawai.pegawai pegawai "
|
||||
+ "left join pegawai.pendidikan pendidikan "
|
||||
+ "left join mapPegawai.jabatan jabatanInternal "
|
||||
+ "where mapPegawai.isPrimary is true "
|
||||
+ "and mapPegawai.statusEnabled is true "
|
||||
@Query("select new map (komponenEvaluasi.reportDisplay as kompetensi, "
|
||||
+ "komponenEvaluasi.nilaiStandar as nilaiStandar,komponenEvaluasi.id as idKomponenEvaluasi, "
|
||||
+ "jabatan.id as idJabatan, " + "kelompokEvaluasi.id as idKelompokEvaluasi, "
|
||||
+ "kelompokEvaluasi.kelompokEvaluasi as kelompokEvaluasi, "
|
||||
+ "komponenEvaluasi.deskripsiKompetensi as deskripsiKompetensi ) "
|
||||
+ "from KomponenEvaluasi komponenEvaluasi " + "left join komponenEvaluasi.jabatan jabatan "
|
||||
+ "left join komponenEvaluasi.kelompokEvaluasi kelompokEvaluasi "
|
||||
+ "left join komponenEvaluasi.departemen departemen " + "where jabatan.id = :idjabatan")
|
||||
List<Map<String, Object>> getPenilaianKompetensiRiwayat(@Param("idjabatan") Integer idjabatan);
|
||||
|
||||
@Query("select new map (komponenEvaluasi.komponenEvaluasi as kompetensi, "
|
||||
+ "komponenEvaluasi.nilaiStandar as nilaiStandar, " + "jabatan.id as jabatanId, "
|
||||
+ "komponenEvaluasi.id as idKomponenEvaluasi, " + "jabatan.namaJabatan as namaJabatan, "
|
||||
+ "kelompokEvaluasi.id as idKelompokEvaluasi, " + "kelompokEvaluasi.kelompokEvaluasi as jenisKompetensi) "
|
||||
+ "from KomponenEvaluasi komponenEvaluasi " + "left join komponenEvaluasi.jabatan jabatan "
|
||||
+ "left join komponenEvaluasi.kelompokEvaluasi kelompokEvaluasi " + "where jabatan.id = :idjabatan "
|
||||
+ "order by kelompokEvaluasi.id ")
|
||||
List<Map<String, Object>> getKompetensiByRuangan(@Param("idjabatan") Integer idjabatan);
|
||||
|
||||
@Query("select new map (pegawaiHistoriEvaluasiKomponen.noRec as idPegawaiHistoriEvaluasiKomponen, "
|
||||
+ "pegawaiHistoriEvaluasiKomponen.nilaiHasilEvaluasi as nilaiHasilEvaluasi, "
|
||||
+ "komponenEvaluasi.id as idKomponenEvaluasi, " + "komponenEvaluasi.nilaiStandar as nilaiStandar, "
|
||||
+ "komponenEvaluasi.komponenEvaluasi as kompetensi, " + "pegawai.id as idpegawai, "
|
||||
+ "strukHistory.noRec as noRecStrukHistory, "
|
||||
+ "pegawaiHistoryEvaluasi.noRec as noRecPegawaiHistoryEvaluasi, "
|
||||
+ "pegawaiHistoryEvaluasi.rekomendasi as rekomendasi, " + "strukHistory.tglHistori as tglHistory, "
|
||||
+ "ruangan.id as idRuangan) " + "from PegawaiHistoriEvaluasiKomponen pegawaiHistoriEvaluasiKomponen "
|
||||
+ "left join pegawaiHistoriEvaluasiKomponen.komponenEvaluasi komponenEvaluasi "
|
||||
+ "left join pegawaiHistoriEvaluasiKomponen.pegawai pegawai "
|
||||
+ "left join pegawaiHistoriEvaluasiKomponen.strukHistory strukHistory "
|
||||
+ "left join strukHistory.ruangan ruangan "
|
||||
+ "left join strukHistory.pegawaiHistoriEvaluasi pegawaiHistoryEvaluasi "
|
||||
+ "where pegawai.id = :idPegawai and strukHistory.tglHistori between :start and :end "
|
||||
+ "and komponenEvaluasi.id =:idKomponen")
|
||||
Map<String, Object> getKompetensiByPegawai(@Param("idPegawai") Integer idPegawai, @Param("start") Date start,
|
||||
@Param("end") Date end, @Param("idKomponen") Integer idKomponen);
|
||||
|
||||
@Query("select new map( " + "kelompokEvaluasi.kelompokEvaluasi as title, "
|
||||
+ "kelompokEvaluasi.id as idKelompokEvaluasi) " + "from KelompokEvaluasi kelompokEvaluasi "
|
||||
+ "where kelompokEvaluasi.id between 1 and 4")
|
||||
List<Map<String, Object>> getKelompokEvaluasi();
|
||||
|
||||
@Query("select new map(pendidikan.namaPendidikan as namaPendidikan, " + " pegawai.tglMasuk as tglMasuk)"
|
||||
+ " from MapPegawaiJabatanToUnitKerja mapPegawai " + "left join mapPegawai.pegawai pegawai "
|
||||
+ "left join pegawai.pendidikan pendidikan " + "left join mapPegawai.jabatan jabatanInternal "
|
||||
+ "where mapPegawai.isPrimary is true " + "and mapPegawai.statusEnabled is true "
|
||||
+ "and jabatanInternal.id = :idJabatan")
|
||||
Map<String,Object> getPendidikan(@Param("idJabatan") Integer idJabatan);
|
||||
|
||||
@Query("select new map(pegawaiHistoriEvaluasiKomponen.nilaiHasilEvaluasi as nilaiHasilEvaluasi, "+
|
||||
"pegawaiHistoriEvaluasi.rekomendasi as rekomendasi, "+
|
||||
"to_char(strukHistori.tglHistori, 'yyyy-MM-dd') as tglHistory) "+
|
||||
"from StrukHistori strukHistori "+
|
||||
"left join strukHistori.pegawaiHistoriEvaluasi pegawaiHistoriEvaluasi "+
|
||||
"left join strukHistori.pegawaiHistoriEvaluasiKomponen pegawaiHistoriEvaluasiKomponen "+
|
||||
"left join pegawaiHistoriEvaluasiKomponen.pegawai pegawai "+
|
||||
"where pegawai.id = :idPegawai "+
|
||||
"order by to_char(strukHistori.tglHistori, 'yyyy-MM-dd') desc ")
|
||||
List<Map<String,Object>> getPenilaian(@Param("idPegawai") Integer idPegawai);
|
||||
|
||||
@Query("select new map(pegawai.namaLengkap as namaLengkap, "+
|
||||
"pegawai.nipPns as nip, "+
|
||||
"ruangan.namaRuangan as unitKerja, "+
|
||||
"jabatanInternal.namaJabatan as jabatanInternal, "+
|
||||
"to_char(strukHistori.tglHistori,'yyyy-MM-dd') as tglPenilaian, "+
|
||||
"kategoryPegawai.detailKategoryPegawai as statusKepegawaian, "+
|
||||
"pegawaiHistoriEvaluasiKomponen.nilaiHasilEvaluasi as nilaiHasilEvaluasi, "+
|
||||
"pegawaiHistoriEvaluasi.rekomendasi as rekomendasi, "+
|
||||
"pegawai.id as idPegawai) "+
|
||||
"from StrukHistori strukHistori, MapPegawaiJabatanToUnitKerja mapPegawai "
|
||||
Map<String, Object> getPendidikan(@Param("idJabatan") Integer idJabatan);
|
||||
|
||||
@Query("select new map(pegawaiHistoriEvaluasiKomponen.nilaiHasilEvaluasi as nilaiHasilEvaluasi, "
|
||||
+ "pegawaiHistoriEvaluasi.rekomendasi as rekomendasi, "
|
||||
+ "to_char(strukHistori.tglHistori, 'yyyy-MM-dd') as tglHistory) " + "from StrukHistori strukHistori "
|
||||
+ "left join strukHistori.pegawaiHistoriEvaluasi pegawaiHistoriEvaluasi "
|
||||
+ "left join strukHistori.pegawaiHistoriEvaluasiKomponen pegawaiHistoriEvaluasiKomponen "
|
||||
+ "left join pegawaiHistoriEvaluasiKomponen.pegawai pegawai "
|
||||
+ "left join pegawai.ruangan ruangan "
|
||||
+ "left join pegawaiHistoriEvaluasiKomponen.pegawai pegawai " + "where pegawai.id = :idPegawai "
|
||||
+ "order by to_char(strukHistori.tglHistori, 'yyyy-MM-dd') desc ")
|
||||
List<Map<String, Object>> getPenilaian(@Param("idPegawai") Integer idPegawai);
|
||||
|
||||
@Query("select new map(pegawai.namaLengkap as namaLengkap, " + "pegawai.nipPns as nip, "
|
||||
+ "ruangan.namaRuangan as unitKerja, " + "jabatanInternal.namaJabatan as jabatanInternal, "
|
||||
+ "to_char(strukHistori.tglHistori,'yyyy-MM-dd') as tglPenilaian, "
|
||||
+ "kategoryPegawai.detailKategoryPegawai as statusKepegawaian, "
|
||||
+ "pegawaiHistoriEvaluasiKomponen.nilaiHasilEvaluasi as nilaiHasilEvaluasi, "
|
||||
+ "pegawaiHistoriEvaluasi.rekomendasi as rekomendasi, " + "pegawai.id as idPegawai) "
|
||||
+ "from StrukHistori strukHistori, MapPegawaiJabatanToUnitKerja mapPegawai "
|
||||
+ "left join strukHistori.pegawaiHistoriEvaluasi pegawaiHistoriEvaluasi "
|
||||
+ "left join strukHistori.pegawaiHistoriEvaluasiKomponen pegawaiHistoriEvaluasiKomponen "
|
||||
+ "left join pegawaiHistoriEvaluasiKomponen.pegawai pegawai " + "left join pegawai.ruangan ruangan "
|
||||
+ "left join mapPegawai.jabatan jabatanInternal "
|
||||
+ "left join pegawai.detailKategoryPegawai kategoryPegawai "
|
||||
+ "where mapPegawai.pegawaiId = pegawai.id "
|
||||
+ "and mapPegawai.isPrimary is true "
|
||||
+ "and mapPegawai.statusEnabled is true")
|
||||
List<Map<String,Object>> getRencanaTindakLanjut();
|
||||
|
||||
+ "left join pegawai.detailKategoryPegawai kategoryPegawai " + "where mapPegawai.pegawaiId = pegawai.id "
|
||||
+ "and mapPegawai.isPrimary is true " + "and mapPegawai.statusEnabled is true")
|
||||
List<Map<String, Object>> getRencanaTindakLanjut();
|
||||
|
||||
}
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package com.jasamedika.medifirst2000.dao;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -11,35 +12,24 @@ import org.springframework.stereotype.Repository;
|
||||
import com.jasamedika.medifirst2000.entities.SettingPirSdm;
|
||||
|
||||
@Repository("SettingPirSdmDao")
|
||||
public interface SettingPirSdmDao extends PagingAndSortingRepository<SettingPirSdm, Integer>{
|
||||
|
||||
@Query("select new map (unitKerja.id as idUnitKerja, "+
|
||||
"unitKerja.name as unitKerja, "+
|
||||
"setting.id as id, "+
|
||||
"coalesce(setting.iku,0) as iku, "+
|
||||
"to_char(setting.tglAwal, 'yyyy-MM') as periode) "+
|
||||
"from SettingPirSdm setting "+
|
||||
"left join setting.unitKerja unitKerja "+
|
||||
"where to_char(setting.tglAwal, 'yyyy-MM') =:periode "+
|
||||
"and unitKerja.id =:idUnitKerja ")
|
||||
Map<String, Object> getIKUUnitKerja(@Param("idUnitKerja") Integer idUnitKerja,@Param("periode") String periode );
|
||||
|
||||
@Query("select new map ( coalesce(setting.pir,0) as pir, "+
|
||||
"setting.id as id, "+
|
||||
"to_char(setting.tglAwal, 'yyyy') as tahun) "+
|
||||
"from SettingPirSdm setting "+
|
||||
"where setting.pir is not null and to_char(setting.tglAwal, 'yyyy') =:thn ")
|
||||
List<Map<String, Object>> getPIR(@Param("thn") String thn );
|
||||
|
||||
@Query("select new map (unitKerja.id as idUnitKerja, "+
|
||||
"unitKerja.name as unitKerja, "+
|
||||
"setting.id as id, "+
|
||||
"coalesce(setting.iku,0) as iku, "+
|
||||
"to_char(setting.tglAwal, 'yyyy-MM') as periode) "+
|
||||
"from SettingPirSdm setting "+
|
||||
"left join setting.unitKerja unitKerja "+
|
||||
"where setting.iku is not null "+
|
||||
" order by to_char(setting.tglAwal, 'yyyy-MM')")
|
||||
public interface SettingPirSdmDao extends PagingAndSortingRepository<SettingPirSdm, Integer> {
|
||||
|
||||
@Query("select new map (unitKerja.id as idUnitKerja, " + "unitKerja.name as unitKerja, " + "setting.id as id, "
|
||||
+ "coalesce(setting.iku,0) as iku, " + "to_char(setting.tglAwal, 'yyyy-MM') as periode) "
|
||||
+ "from SettingPirSdm setting " + "left join setting.unitKerja unitKerja "
|
||||
+ "where setting.tglAwal between :start and :end " + "and unitKerja.id =:idUnitKerja ")
|
||||
Map<String, Object> getIKUUnitKerja(@Param("idUnitKerja") Integer idUnitKerja, @Param("start") Date start,
|
||||
@Param("end") Date end);
|
||||
|
||||
@Query("select new map ( coalesce(setting.pir,0) as pir, " + "setting.id as id, "
|
||||
+ "to_char(setting.tglAwal, 'yyyy') as tahun) " + "from SettingPirSdm setting "
|
||||
+ "where setting.pir is not null and to_char(setting.tglAwal, 'yyyy') =:thn ")
|
||||
List<Map<String, Object>> getPIR(@Param("thn") String thn);
|
||||
|
||||
@Query("select new map (unitKerja.id as idUnitKerja, " + "unitKerja.name as unitKerja, " + "setting.id as id, "
|
||||
+ "coalesce(setting.iku,0) as iku, " + "to_char(setting.tglAwal, 'yyyy-MM') as periode) "
|
||||
+ "from SettingPirSdm setting " + "left join setting.unitKerja unitKerja "
|
||||
+ "where setting.iku is not null " + " order by to_char(setting.tglAwal, 'yyyy-MM')")
|
||||
List<Map<String, Object>> getAllIKU();
|
||||
|
||||
}
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package com.jasamedika.medifirst2000.dao;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -23,15 +24,16 @@ public interface TargetSkorDokterDetailDao extends PagingAndSortingRepository<Ta
|
||||
public List<Map<String, Object>> findByHeadId(@Param("noRec") String noRec) throws JpaSystemException;
|
||||
|
||||
@Query("select tsd.skor " + "from TargetSkorDokterDetail tsd " + "inner join tsd.targetSkor ts "
|
||||
+ "where tsd.pegawaiId = :pegawaiId " + "and to_char(ts.tmt,'yyyy-MM') <= :bulan "
|
||||
+ "and to_char(ts.tmt,'yyyy') = :tahun " + "order by ts.tmt desc")
|
||||
public List<Double> findTargetByPegawai(@Param("pegawaiId") Integer idPegawai, @Param("bulan") String bulan,
|
||||
@Param("tahun") String tahun) throws JpaSystemException;
|
||||
+ "where tsd.pegawaiId = :pegawaiId " + "and ts.tmt <= :endMonth " + "ts.tmt between :start and :end "
|
||||
+ "order by ts.tmt desc")
|
||||
public List<Double> findTargetByPegawai(@Param("pegawaiId") Integer idPegawai, @Param("endMonth") Date endMonth,
|
||||
@Param("start") Date start, @Param("end") Date end) throws JpaSystemException;
|
||||
|
||||
@Query("select new Map(tsd.pegawaiId as pegawaiId,tsd.skor as skor) " + "from TargetSkorDokterDetail tsd " + "inner join tsd.targetSkor ts "
|
||||
+ "where tsd.pegawaiId in (:listIdPegawai) " + "and to_char(ts.tmt,'yyyy-MM') <= :bulan "
|
||||
+ "and to_char(ts.tmt,'yyyy') = :tahun " + "order by ts.tmt desc")
|
||||
@Query("select new Map(tsd.pegawaiId as pegawaiId,tsd.skor as skor) " + "from TargetSkorDokterDetail tsd "
|
||||
+ "inner join tsd.targetSkor ts " + "where tsd.pegawaiId in (:listIdPegawai) " + "and ts.tmt <= :endMonth "
|
||||
+ "ts.tmt between :start and :end " + "order by ts.tmt desc")
|
||||
public List<Map<String, Object>> findTargetByPegawai(@Param("listIdPegawai") List<Integer> listIdPegawai,
|
||||
@Param("bulan") String bulan, @Param("tahun") String tahun) throws JpaSystemException;
|
||||
@Param("endMonth") Date endMonth, @Param("start") Date start, @Param("end") Date end)
|
||||
throws JpaSystemException;
|
||||
|
||||
}
|
||||
|
||||
@ -37,6 +37,7 @@ import com.jasamedika.medifirst2000.entities.Ruangan;
|
||||
import com.jasamedika.medifirst2000.exception.ServiceVOException;
|
||||
import com.jasamedika.medifirst2000.service.CatatanPerkembanganPasienTerintegrasiService;
|
||||
import com.jasamedika.medifirst2000.util.CommonUtil;
|
||||
import com.jasamedika.medifirst2000.util.DateUtil;
|
||||
import com.jasamedika.medifirst2000.vo.AntrianPasienDiPeriksaVO;
|
||||
import com.jasamedika.medifirst2000.vo.CatatanPerkembanganPasienTerintegrasiVO;
|
||||
import com.jasamedika.medifirst2000.vo.PasienVO;
|
||||
@ -252,7 +253,6 @@ public class CatatanPerkembanganPasienTerintegrasiServiceImpl extends BaseVoServ
|
||||
List<Integer> listIdDokter = new ArrayList<>();
|
||||
|
||||
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
||||
DateFormat mf = new SimpleDateFormat("yyyy-MM");
|
||||
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
|
||||
DateFormat df_ina = new SimpleDateFormat("dd-MM-yyyy");
|
||||
DateFormat sf_ina = new SimpleDateFormat("HH:mm:ss");
|
||||
@ -296,8 +296,10 @@ public class CatatanPerkembanganPasienTerintegrasiServiceImpl extends BaseVoServ
|
||||
persenTepatHadir = getCapaianPresensiCppt(rawData, idDokter, daysOfMonth);
|
||||
}
|
||||
|
||||
Map<String, Object> cpptDokter = logbookKinerjaDokterDao.findDetailKinerjaDokter(
|
||||
mf.format(new Date(periode)), idDr, Master.IndikatorKinerja.KEPATUHAN_PELAYANAN_MEDIS,
|
||||
Date start = DateUtil.startMonth(periode);
|
||||
Date end = DateUtil.endMonth(periode);
|
||||
Map<String, Object> cpptDokter = logbookKinerjaDokterDao.findDetailKinerjaDokter(start, end, idDr,
|
||||
Master.IndikatorKinerja.KEPATUHAN_PELAYANAN_MEDIS,
|
||||
Master.IndikatorKinerjaDetail.KEPATUHAN_WAKTU_VISITE);
|
||||
if (CommonUtil.isNotNullOrEmpty(cpptDokter)) {
|
||||
cpptDokterVo.setLogbookId(cpptDokter.get("logbookId").toString());
|
||||
|
||||
@ -66,6 +66,7 @@ import com.jasamedika.medifirst2000.service.LogbookKinerjaService;
|
||||
import com.jasamedika.medifirst2000.service.TargetSkorDokterService;
|
||||
import com.jasamedika.medifirst2000.util.CommonUtil;
|
||||
import com.jasamedika.medifirst2000.util.CurrencyUtil;
|
||||
import com.jasamedika.medifirst2000.util.DateUtil;
|
||||
import com.jasamedika.medifirst2000.util.StringUtil;
|
||||
import com.jasamedika.medifirst2000.vo.EvaluasiJabatanVO;
|
||||
import com.jasamedika.medifirst2000.vo.IkiDanRemunerasiVO;
|
||||
@ -188,6 +189,9 @@ public class IkiDanRemunerasiServiceImpl extends BaseVoServiceImpl implements Ik
|
||||
String[] splitData = date.split("-");
|
||||
Integer paramTahun = Integer.parseInt(splitData[0]);
|
||||
|
||||
Date start = DateUtil.startMonth(date.substring(0, 7));
|
||||
Date end = DateUtil.endMonth(date.substring(0, 7));
|
||||
|
||||
Map<String, Object> ikiRemunerasi = new HashMap<>();
|
||||
|
||||
Map<String, Object> evaluasiJabatan = ikiDanRemunerasiDao.getEvaluasiJabatan(id);
|
||||
@ -238,7 +242,7 @@ public class IkiDanRemunerasiServiceImpl extends BaseVoServiceImpl implements Ik
|
||||
}
|
||||
if (CommonUtil.isNotNullOrEmpty(ikiRemunerasi.get("idUnitKerja"))) {
|
||||
Map<String, Object> iku = settingPirSdmDao
|
||||
.getIKUUnitKerja((Integer) ikiRemunerasi.get("idUnitKerja"), date.substring(0, 7));
|
||||
.getIKUUnitKerja((Integer) ikiRemunerasi.get("idUnitKerja"), start, end);
|
||||
if (CommonUtil.isNotNullOrEmpty(iku)) {
|
||||
ikur = (Double) iku.get("iku");
|
||||
}
|
||||
@ -328,9 +332,10 @@ public class IkiDanRemunerasiServiceImpl extends BaseVoServiceImpl implements Ik
|
||||
ikiDanRemunerasi.setPegawai(pegawai);
|
||||
}
|
||||
ikiDanRemunerasi.setStrukHistory(strukHistori);
|
||||
String periode = new SimpleDateFormat("yyyy-MM").format(strukHistori.getTglHistori());
|
||||
Date start = DateUtil.startMonth(strukHistori.getTglHistori());
|
||||
Date end = DateUtil.endMonth(strukHistori.getTglHistori());
|
||||
int id = pegawai.getId();
|
||||
Double temp = ikiDanRemunerasiDao.findRemunerasi(periode, id);
|
||||
Double temp = ikiDanRemunerasiDao.findRemunerasi(start, end, id);
|
||||
if (CommonUtil.isNullOrEmpty(temp)) {
|
||||
// insert into StrukPelayanan
|
||||
StrukPelayanan strukPelayanan = new StrukPelayanan();
|
||||
@ -440,6 +445,8 @@ public class IkiDanRemunerasiServiceImpl extends BaseVoServiceImpl implements Ik
|
||||
public Map<String, Object> savePirDanIku(List<SettingPirSdmVO> vos) {
|
||||
Map<String, Object> result = new HashMap<String, Object>();
|
||||
for (SettingPirSdmVO vo : vos) {
|
||||
Date start = DateUtil.startMonth(vo.getTglAwal());
|
||||
Date end = DateUtil.endMonth(vo.getTglAwal());
|
||||
SettingPirSdm settingPirSdm = settingPirSdmConverter.transferVOToModel(vo, new SettingPirSdm());
|
||||
if (CommonUtil.isNotNullOrEmpty(vo.getSuratKeputusan())) {
|
||||
settingPirSdm.setSuratKeputusan(
|
||||
@ -451,9 +458,7 @@ public class IkiDanRemunerasiServiceImpl extends BaseVoServiceImpl implements Ik
|
||||
}
|
||||
if (CommonUtil.isNotNullOrEmpty(vo.getIku())) {
|
||||
if (CommonUtil.isNotNullOrEmpty(vo.getUnitKerja())) {
|
||||
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM");
|
||||
Map<String, Object> data = settingPirSdmDao.getIKUUnitKerja(vo.getUnitKerja().getId(),
|
||||
df.format(vo.getTglAwal()));
|
||||
Map<String, Object> data = settingPirSdmDao.getIKUUnitKerja(vo.getUnitKerja().getId(), start, end);
|
||||
if (CommonUtil.isNotNullOrEmpty(data)) {
|
||||
settingPirSdm.setId((Integer) data.get("id"));
|
||||
}
|
||||
@ -483,7 +488,9 @@ public class IkiDanRemunerasiServiceImpl extends BaseVoServiceImpl implements Ik
|
||||
|
||||
@Override
|
||||
public Map<String, Object> findIKU(String periode, Integer idUnitkerja) {
|
||||
Map<String, Object> result = settingPirSdmDao.getIKUUnitKerja(idUnitkerja, periode);
|
||||
Date start = DateUtil.startMonth(periode);
|
||||
Date end = DateUtil.endMonth(periode);
|
||||
Map<String, Object> result = settingPirSdmDao.getIKUUnitKerja(idUnitkerja, start, end);
|
||||
Calendar date = Calendar.getInstance();
|
||||
int month = date.get(Calendar.MONTH);
|
||||
periode = periode.substring(5, 7);
|
||||
|
||||
@ -70,6 +70,7 @@ import com.jasamedika.medifirst2000.service.LoginUserService;
|
||||
import com.jasamedika.medifirst2000.service.MonitoringAbsenService;
|
||||
import com.jasamedika.medifirst2000.util.CommonUtil;
|
||||
import com.jasamedika.medifirst2000.util.CurrencyUtil;
|
||||
import com.jasamedika.medifirst2000.util.DateUtil;
|
||||
import com.jasamedika.medifirst2000.util.JsonUtil;
|
||||
import com.jasamedika.medifirst2000.vo.CustomIndexKerjaVO;
|
||||
import com.jasamedika.medifirst2000.vo.CustomUraianKerjaVO;
|
||||
@ -302,7 +303,9 @@ public class IndekKinerjaServiceImpl extends BaseVoServiceImpl implements IndekK
|
||||
Integer endYear = endCal.get(Calendar.YEAR);
|
||||
String endPeriod = endYear + "-" + thisMonth;
|
||||
|
||||
result = revIndekKinerjaDao.getAllTindakanByPeriod(idPegawai, startPeriod, endPeriod, listDJP);
|
||||
Date start = DateUtil.startMonth(startPeriod);
|
||||
Date end = DateUtil.endMonth(endPeriod);
|
||||
result = revIndekKinerjaDao.getAllTindakanByPeriod(idPegawai, start, end, listDJP);
|
||||
|
||||
return result;
|
||||
}
|
||||
@ -909,7 +912,9 @@ public class IndekKinerjaServiceImpl extends BaseVoServiceImpl implements IndekK
|
||||
} else {
|
||||
result.put("status", false);
|
||||
}
|
||||
Double indeksKehadiran = indekKinerjaDao.findIndexKehadiran(idPegawai, periode);
|
||||
Date start = DateUtil.startMonth(periode);
|
||||
Date end = DateUtil.endMonth(periode);
|
||||
Double indeksKehadiran = indekKinerjaDao.findIndexKehadiran(idPegawai, start, end);
|
||||
Map<String, Object> totalIKI = indekKinerjaDao.findNilaiIndeksKinerja(idPegawai, periode);
|
||||
if (CommonUtil.isNotNullOrEmpty(totalIKI)) {
|
||||
result.put("totalIki", totalIKI.get("totalIKI") != null ? totalIKI.get("totalIKI") : 0.0);
|
||||
@ -2538,17 +2543,19 @@ public class IndekKinerjaServiceImpl extends BaseVoServiceImpl implements IndekK
|
||||
Pegawai pgw = pegawaiDao.findOne(idPegawai);
|
||||
List<Integer> listDetailException = getDetailProdukAdministrasi(pgw);
|
||||
List<Map<String, Object>> tindakans = new ArrayList<>();
|
||||
|
||||
String tarifSatuHarga = settingDataFixedDao.getSettingDataFixed("tarifSatuHarga");
|
||||
Boolean isTarifSatuHarga = Boolean.parseBoolean(tarifSatuHarga);
|
||||
|
||||
List<Integer> drAnastesiList = pegawaiDao.getDokterByKelompokKerja(Master.SubUnitKerja.KK_ANESTESI);
|
||||
List<Integer> listTindakanAnastesiException = splitDataSettingDatafixed("excepTindakAnastesi");
|
||||
|
||||
Date start = DateUtil.startMonth(periode);
|
||||
Date end = DateUtil.endMonth(periode);
|
||||
|
||||
if (CommonUtil.isNullOrEmpty(listDetailException)) {
|
||||
tindakans = indekKinerjaDao.findIdProdukByIdUser(idPegawai, periode, splitIdProdukAdministrasi());
|
||||
tindakans = indekKinerjaDao.findIdProdukByIdUser(idPegawai, start, end, splitIdProdukAdministrasi());
|
||||
} else {
|
||||
tindakans = indekKinerjaDao.findIdProdukByIdUserWithDetailException(idPegawai, periode,
|
||||
tindakans = indekKinerjaDao.findIdProdukByIdUserWithDetailException(idPegawai, start, end,
|
||||
splitIdProdukAdministrasi(), listDetailException);
|
||||
}
|
||||
|
||||
|
||||
@ -6,7 +6,6 @@ import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalTime;
|
||||
import java.time.ZoneId;
|
||||
import java.time.temporal.TemporalAdjusters;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Comparator;
|
||||
@ -29,6 +28,7 @@ import com.jasamedika.medifirst2000.entities.LogbookKinerjaDetail;
|
||||
import com.jasamedika.medifirst2000.exception.ServiceVOException;
|
||||
import com.jasamedika.medifirst2000.service.LogbookKinerjaDetailService;
|
||||
import com.jasamedika.medifirst2000.util.CommonUtil;
|
||||
import com.jasamedika.medifirst2000.util.DateUtil;
|
||||
import com.jasamedika.medifirst2000.vo.LogbookKinerjaDetailVO;
|
||||
|
||||
@Service("LogbookKinerjaDetailService")
|
||||
@ -192,11 +192,8 @@ public class LogbookKinerjaDetailServiceImpl extends BaseVoServiceImpl implement
|
||||
public List<Map<String, Object>> findWorkingRecord(Integer idPegawai, Integer idJabatan, Long bulan,
|
||||
Boolean statusVerif) throws JpaSystemException {
|
||||
DateFormat df = new SimpleDateFormat("yyyy-MM");
|
||||
LocalDate month = new Date(bulan).toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
Date start = Date.from(month.with(TemporalAdjusters.firstDayOfMonth()).atStartOfDay()
|
||||
.atZone(ZoneId.systemDefault()).toInstant());
|
||||
Date end = Date.from(month.with(TemporalAdjusters.lastDayOfMonth()).atTime(LocalTime.MAX)
|
||||
.atZone(ZoneId.systemDefault()).toInstant());
|
||||
Date start = DateUtil.startMonth(bulan);
|
||||
Date end = DateUtil.endMonth(bulan);
|
||||
|
||||
String strTglLimitVerif = settingDataFixedDao.getSettingDataFixed("tglLimitVerifWorkingRecord");
|
||||
LocalDateTime tglLimitVerif = LocalDateTime
|
||||
@ -218,11 +215,8 @@ public class LogbookKinerjaDetailServiceImpl extends BaseVoServiceImpl implement
|
||||
@Override
|
||||
public List<Map<String, Object>> findWorkingRecord(Integer idPegawai, Integer idJabatan, Integer idIndikator,
|
||||
Long bulan) throws JpaSystemException {
|
||||
LocalDate month = new Date(bulan).toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
Date start = Date.from(month.with(TemporalAdjusters.firstDayOfMonth()).atStartOfDay()
|
||||
.atZone(ZoneId.systemDefault()).toInstant());
|
||||
Date end = Date.from(month.with(TemporalAdjusters.lastDayOfMonth()).atTime(LocalTime.MAX)
|
||||
.atZone(ZoneId.systemDefault()).toInstant());
|
||||
Date start = DateUtil.startMonth(bulan);
|
||||
Date end = DateUtil.endMonth(bulan);
|
||||
|
||||
List<Map<String, Object>> result = logbookKinerjaDetailDao.findWorkingRecord(idPegawai, idJabatan, idIndikator,
|
||||
start, end);
|
||||
|
||||
@ -69,6 +69,7 @@ import com.jasamedika.medifirst2000.exception.ServiceVOException;
|
||||
import com.jasamedika.medifirst2000.service.CatatanPerkembanganPasienTerintegrasiService;
|
||||
import com.jasamedika.medifirst2000.service.LogbookKinerjaService;
|
||||
import com.jasamedika.medifirst2000.util.CommonUtil;
|
||||
import com.jasamedika.medifirst2000.util.DateUtil;
|
||||
import com.jasamedika.medifirst2000.vo.IndikatorKinerjaVO;
|
||||
import com.jasamedika.medifirst2000.vo.JabatanVO;
|
||||
import com.jasamedika.medifirst2000.vo.LogbookKinerjaVO;
|
||||
@ -465,9 +466,9 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
}
|
||||
|
||||
private Integer hitungTargetHariKerja(Date bulan) {
|
||||
DateFormat df = new SimpleDateFormat("yyyy-MM");
|
||||
|
||||
List<Kalender> targetPresensi = kalenderDao.getTargetKerja(df.format(bulan));
|
||||
Date start = DateUtil.startMonth(bulan);
|
||||
Date end = DateUtil.endMonth(bulan);
|
||||
List<Kalender> targetPresensi = kalenderDao.getTargetKerja(start, end);
|
||||
Integer result = targetPresensi.size();
|
||||
|
||||
return result;
|
||||
@ -475,12 +476,11 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
|
||||
private Double hitungTargetMenitKerja(Date bulan) {
|
||||
Double result = 0.0;
|
||||
|
||||
Chronology hijri = IslamicChronology.getInstance();
|
||||
Date start = DateUtil.startMonth(bulan);
|
||||
Date end = DateUtil.endMonth(bulan);
|
||||
|
||||
DateFormat df = new SimpleDateFormat("yyyy-MM");
|
||||
|
||||
List<Kalender> targetPresensi = kalenderDao.getTargetKerja(df.format(bulan));
|
||||
List<Kalender> targetPresensi = kalenderDao.getTargetKerja(start, end);
|
||||
Integer jumlahHariKerjaHarian = 0;
|
||||
Integer jumlahHariKerjaRamadhan = 0;
|
||||
for (Kalender kalender : targetPresensi) {
|
||||
@ -505,7 +505,11 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
List<Map<String, Object>> listRes = new ArrayList<>();
|
||||
List<Integer> listIdIndikator = new ArrayList<>();
|
||||
|
||||
DateFormat yf = new SimpleDateFormat("yyyy");
|
||||
Date startMonth = DateUtil.startMonth(bulan);
|
||||
Date endMonth = DateUtil.endMonth(bulan);
|
||||
Date startYear = DateUtil.startYear(bulan);
|
||||
Date endYear = DateUtil.endMonth(bulan);
|
||||
|
||||
DateFormat mf = new SimpleDateFormat("yyyy-MM");
|
||||
|
||||
Integer targetHariKerja = hitungTargetHariKerja(new Date(bulan));
|
||||
@ -537,8 +541,8 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
* Komponen target kuantitas indikator pelayanan medis
|
||||
*/
|
||||
if (map.get("indikatorId").equals(Master.IndikatorKinerja.PELAYANAN_MEDIS_JAM_KERJA)) {
|
||||
List<Double> target = targetSkorDokterDetailDao.findTargetByPegawai(idPegawai,
|
||||
mf.format(new Date(bulan)), yf.format(new Date(bulan)));
|
||||
List<Double> target = targetSkorDokterDetailDao.findTargetByPegawai(idPegawai, endMonth, startYear,
|
||||
endYear);
|
||||
if (CommonUtil.isNotNullOrEmpty(target)) {
|
||||
map.put("target", Math.floor(target.get(0)));
|
||||
} else {
|
||||
@ -552,7 +556,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
if (map.get("indikatorId").equals(Master.IndikatorKinerja.KEPATUHAN_PELAYANAN_MEDIS)
|
||||
&& isKualitasDokterExisted) {
|
||||
List<Map<String, Object>> detailIndikator2 = logbookKinerjaDokterDao.findDetailLogbookDokter(
|
||||
mf.format(new Date(bulan)), idPegawai, idJabatan,
|
||||
startMonth, endMonth, idPegawai, idJabatan,
|
||||
Integer.valueOf(map.get("indikatorId").toString()));
|
||||
if (CommonUtil.isNotNullOrEmpty(detailIndikator2)) {
|
||||
map.put("detail", detailIndikator2);
|
||||
@ -584,7 +588,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
Iterable<LogbookKinerjaDokter> models = logbookKinerjaDokterDao.save(lkds);
|
||||
if (CommonUtil.isNotNullOrEmpty(models)) {
|
||||
List<Map<String, Object>> detailIndikator3 = logbookKinerjaDokterDao
|
||||
.findDetailLogbookDokter(mf.format(new Date(bulan)), idPegawai, idJabatan,
|
||||
.findDetailLogbookDokter(startMonth, endMonth, idPegawai, idJabatan,
|
||||
Integer.valueOf(map.get("indikatorId").toString()));
|
||||
if (CommonUtil.isNotNullOrEmpty(detailIndikator3)) {
|
||||
map.put("detail", detailIndikator3);
|
||||
@ -690,6 +694,10 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
Map<String, Object> result = new HashMap<>();
|
||||
List<Map<String, Object>> resData = new ArrayList<>();
|
||||
List<Map<String, Object>> listJenisIndikator = new ArrayList<>();
|
||||
|
||||
Date start = DateUtil.startMonth(bulan);
|
||||
Date end = DateUtil.endMonth(bulan);
|
||||
|
||||
DateFormat mf = new SimpleDateFormat("yyyy-MM");
|
||||
DateFormat yf = new SimpleDateFormat("yyyy");
|
||||
Integer idKelompokJabatan = null;
|
||||
@ -763,7 +771,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
data.add(map);
|
||||
} else if (Master.IndikatorKinerja.KEPATUHAN_PELAYANAN_MEDIS.equals(map.get("idIndikator"))) {
|
||||
List<Map<String, Object>> listDetail = logbookKinerjaDokterDao.findDetailLogbookDokter(
|
||||
mf.format(new Date(bulan)), idPegawai, idJabatan,
|
||||
start, end, idPegawai, idJabatan,
|
||||
Master.IndikatorKinerja.KEPATUHAN_PELAYANAN_MEDIS);
|
||||
|
||||
int detailSize = listDetail.size();
|
||||
@ -2963,6 +2971,9 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
Date pssbAwal = Date.from(PSBBDate.atZone(ZoneId.systemDefault()).toInstant());
|
||||
Date pssbAkhir = Date.from(PSBBEnd.atZone(ZoneId.systemDefault()).toInstant());
|
||||
|
||||
Date start = DateUtil.startMonth(mf.format(bulan));
|
||||
Date end = DateUtil.endMonth(mf.format(bulan));
|
||||
|
||||
List<Integer> listRuangEks = splitDataSettingDatafixed("IdRuanganEksekutif");
|
||||
|
||||
List<Integer> listIdNonjadwal = shiftKerjaDao.findListNonjadwal();
|
||||
@ -2972,7 +2983,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
listIdPegawai = mapPegawaiJabatanToUnitKerjaDao
|
||||
.findAllDokterKelompokStafMedik(Arrays.asList(Master.UnitKerja.KSM));
|
||||
} else if (typeId == 2) {
|
||||
listIdPegawai = logbookKinerjaDao.findPegawaiKontrakByIndikator(mf.format(bulan),
|
||||
listIdPegawai = logbookKinerjaDao.findPegawaiKontrakByIndikator(start, end,
|
||||
Master.IndikatorKinerja.PELAYANAN_MEDIS_JAM_KERJA);
|
||||
}
|
||||
|
||||
@ -3080,13 +3091,16 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
|
||||
@Override
|
||||
public void autoVerifKontrakJamKerjaDokter(Date bulan) {
|
||||
DateFormat yf = new SimpleDateFormat("yyyy");
|
||||
DateFormat mf = new SimpleDateFormat("yyyy-MM");
|
||||
|
||||
List<Integer> listIdPegawai = new ArrayList<>();
|
||||
List<Integer> listIdJabatan = new ArrayList<>();
|
||||
List<String> listJabatanIndikator = new ArrayList<>();
|
||||
List<Map<String, Object>> listMapFilter = new ArrayList<>();
|
||||
|
||||
Date endMonth = DateUtil.endMonth(bulan);
|
||||
Date startYear = DateUtil.startYear(bulan);
|
||||
Date endYear = DateUtil.endYear(bulan);
|
||||
/*
|
||||
* Get All Mapping Indikator Dokter
|
||||
*/
|
||||
@ -3120,7 +3134,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
* Get Target Jumlah Pemenuhan Medis
|
||||
*/
|
||||
List<Map<String, Object>> listTargetSkor = targetSkorDokterDetailDao.findTargetByPegawai(listIdPegawai,
|
||||
mf.format(bulan), yf.format(bulan));
|
||||
endMonth, startYear, endYear);
|
||||
/*
|
||||
* Get Bobot Jumlah Pemenuhan Medis
|
||||
*/
|
||||
|
||||
@ -776,9 +776,9 @@ public class PasienDaftarServiceImpl implements PasienDaftarService {
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> findRekapDiskon(Long periode) {
|
||||
DateFormat mf = new SimpleDateFormat("yyyy-MM");
|
||||
|
||||
List<Map<String, Object>> result = pasienDaftarDao.findRekapDiskon(mf.format(new Date(periode)));
|
||||
Date start = DateUtil.startMonth(periode);
|
||||
Date end = DateUtil.endMonth(periode);
|
||||
List<Map<String, Object>> result = pasienDaftarDao.findRekapDiskon(start, end);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
@ -57,6 +57,7 @@ import com.jasamedika.medifirst2000.entities.ShiftKerja;
|
||||
import com.jasamedika.medifirst2000.service.PegawaiJadwalKerjaService;
|
||||
import com.jasamedika.medifirst2000.service.PegawaiService;
|
||||
import com.jasamedika.medifirst2000.util.CommonUtil;
|
||||
import com.jasamedika.medifirst2000.util.DateUtil;
|
||||
import com.jasamedika.medifirst2000.vo.KalenderVO;
|
||||
import com.jasamedika.medifirst2000.vo.KelompokShiftVO;
|
||||
import com.jasamedika.medifirst2000.vo.ListTanggalCutiVO;
|
||||
@ -1017,6 +1018,8 @@ public class PegawaiJadwalKerjaServiceImpl extends BaseVoServiceImpl implements
|
||||
public String writeExcelPegawaiJadwalKerja(String bulan, Integer idUnitKerja, Integer idSubunitKerja)
|
||||
throws ParseException {
|
||||
String absoluteFilePath = "";
|
||||
Date start = DateUtil.startMonth(bulan);
|
||||
Date end = DateUtil.endMonth(bulan);
|
||||
|
||||
try {
|
||||
HSSFWorkbook workbook = new HSSFWorkbook();
|
||||
@ -1026,7 +1029,7 @@ public class PegawaiJadwalKerjaServiceImpl extends BaseVoServiceImpl implements
|
||||
|
||||
Map<String, Object> unitKerja = unitKerjaDao.getUnitKerjaById(idUnitKerja);
|
||||
Map<String, Object> subunitKerja = subunitKerjaDao.getSubunitKerjaById(idSubunitKerja);
|
||||
List<Map<String, Object>> listTanggal = kalenderDao.getKalenderBulanan(bulan);
|
||||
List<Map<String, Object>> listTanggal = kalenderDao.getKalenderBulanan(start, end);
|
||||
List<Map<String, Object>> listPegawai = mapPegawaiJabatanToUnitKerjaDao.getPegawaiByUnitKerja(idUnitKerja,
|
||||
idSubunitKerja);
|
||||
|
||||
|
||||
@ -67,6 +67,7 @@ import com.jasamedika.medifirst2000.service.PegawaiService;
|
||||
import com.jasamedika.medifirst2000.service.RekamDataPegawaiService;
|
||||
import com.jasamedika.medifirst2000.service.RiwayatJabatanService;
|
||||
import com.jasamedika.medifirst2000.util.CommonUtil;
|
||||
import com.jasamedika.medifirst2000.util.DateUtil;
|
||||
import com.jasamedika.medifirst2000.util.PasswordUtil;
|
||||
import com.jasamedika.medifirst2000.vo.AgamaVO;
|
||||
import com.jasamedika.medifirst2000.vo.DetailKategoryPegawaiVO;
|
||||
@ -264,6 +265,10 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
|
||||
pegawai.setId(vo.getId());
|
||||
pegawai.setKdProfile(Master.KODE_PROFILE);
|
||||
|
||||
Date currDate = new Date();
|
||||
Date start = DateUtil.startMonth(currDate);
|
||||
Date end = DateUtil.endMonth(currDate);
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(pegawai.getStatusEnabled())
|
||||
&& CommonUtil.isNotNullOrEmpty(vo.getStatusEnabled())) {
|
||||
if (!pegawai.getStatusEnabled().equals(vo.getStatusEnabled())) {
|
||||
@ -954,10 +959,7 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
|
||||
&& CommonUtil.isNotNullOrEmpty(vo.getShiftKerja())) {
|
||||
if (!pegawai.getShiftKerjaId().equals(vo.getShiftKerja().getId())) {
|
||||
if (vo.getShiftKerja().getId() == 1 || vo.getShiftKerja().getId() == 2) {
|
||||
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM");
|
||||
Date currDate = new Date();
|
||||
List<Integer> listJadwal = pegawaiJadwalKerjaDao.getListJadwal(vo.getId(),
|
||||
formatter.format(currDate));
|
||||
List<Integer> listJadwal = pegawaiJadwalKerjaDao.getListJadwal(vo.getId(), start, end);
|
||||
if (CommonUtil.isNotNullOrEmpty(listJadwal)) {
|
||||
for (Integer idJadwal : listJadwal) {
|
||||
pegawaiJadwalKerjaDao.delete(idJadwal);
|
||||
@ -971,10 +973,7 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
|
||||
} else if (CommonUtil.isNullOrEmpty(pegawai.getShiftKerjaId())
|
||||
&& CommonUtil.isNotNullOrEmpty(vo.getShiftKerja())) {
|
||||
if (vo.getShiftKerja().getId() == 1 || vo.getShiftKerja().getId() == 2) {
|
||||
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM");
|
||||
Date currDate = new Date();
|
||||
List<Integer> listJadwal = pegawaiJadwalKerjaDao.getListJadwal(vo.getId(),
|
||||
formatter.format(currDate));
|
||||
List<Integer> listJadwal = pegawaiJadwalKerjaDao.getListJadwal(vo.getId(), start, end);
|
||||
if (CommonUtil.isNotNullOrEmpty(listJadwal)) {
|
||||
for (Integer idJadwal : listJadwal) {
|
||||
pegawaiJadwalKerjaDao.delete(idJadwal);
|
||||
@ -2091,6 +2090,11 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
|
||||
Map<String, Object> result = new HashMap<String, Object>();
|
||||
Map<String, Object> dataPegawai = new HashMap<String, Object>();
|
||||
// BeanUtils.copyProperties(dest, orig);
|
||||
|
||||
Date currDate = new Date();
|
||||
Date start = DateUtil.startMonth(currDate);
|
||||
Date end = DateUtil.endMonth(currDate);
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(vo)) {
|
||||
try {
|
||||
dataPegawai = vo.ToMap();
|
||||
@ -2327,10 +2331,7 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
|
||||
// nonshift atau nonshift+
|
||||
if (vo.getShiftKerja().getId() == 1 || vo.getShiftKerja().getId() == 2) {
|
||||
if (!currKelShift.equals(Integer.parseInt(vo.getShiftKerja().getId().toString()))) {
|
||||
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM");
|
||||
Date currDate = new Date();
|
||||
List<Integer> listJadwal = pegawaiJadwalKerjaDao.getListJadwal(vo.getId(),
|
||||
formatter.format(currDate));
|
||||
List<Integer> listJadwal = pegawaiJadwalKerjaDao.getListJadwal(vo.getId(), start, end);
|
||||
if (CommonUtil.isNotNullOrEmpty(listJadwal)) {
|
||||
for (Integer idJadwal : listJadwal) {
|
||||
pegawaiJadwalKerjaDao.delete(idJadwal);
|
||||
|
||||
@ -17,7 +17,6 @@ import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import com.jasamedika.medifirst2000.converter.BaseConverterImpl;
|
||||
import com.jasamedika.medifirst2000.dao.PegawaiDao;
|
||||
import com.jasamedika.medifirst2000.dao.PegawaiHistoriEvaluasiDao;
|
||||
import com.jasamedika.medifirst2000.dao.RiwayatPenilaianKompetensiPegawaiDao;
|
||||
import com.jasamedika.medifirst2000.dao.RunningNumberDao;
|
||||
import com.jasamedika.medifirst2000.dao.StrukHistoriDao;
|
||||
@ -31,6 +30,7 @@ import com.jasamedika.medifirst2000.entities.RunningNumber;
|
||||
import com.jasamedika.medifirst2000.entities.StrukHistori;
|
||||
import com.jasamedika.medifirst2000.service.RiwayatPenilaianKompetensiPegawaiService;
|
||||
import com.jasamedika.medifirst2000.util.CommonUtil;
|
||||
import com.jasamedika.medifirst2000.util.DateUtil;
|
||||
import com.jasamedika.medifirst2000.util.StringUtil;
|
||||
import com.jasamedika.medifirst2000.vo.KelompokTransaksiVO;
|
||||
import com.jasamedika.medifirst2000.vo.KomponenEvaluasiVO;
|
||||
@ -100,7 +100,8 @@ public class RiwayatPenilaianKompetensiPegawaiServiceImpl implements RiwayatPeni
|
||||
Map<String, Object> result = new HashMap<String, Object>();
|
||||
List<Map<String, Object>> listData = riwayatPenilaianKompetensiPegawaiDao
|
||||
.getPenilaianKompetensiRiwayat(idJabatan);
|
||||
// validasi penilaian hanya dapat dilakukan setelah 3 bulan semenjak penilaian
|
||||
// validasi penilaian hanya dapat dilakukan setelah 3 bulan semenjak
|
||||
// penilaian
|
||||
// terakhir dilakukan
|
||||
List<Map<String, Object>> dataPenilaian = riwayatPenilaianKompetensiPegawaiDao.getPenilaian(idPegawai);
|
||||
int index = 0;
|
||||
@ -206,8 +207,17 @@ public class RiwayatPenilaianKompetensiPegawaiServiceImpl implements RiwayatPeni
|
||||
@Transactional(readOnly = true)
|
||||
public List<Map<String, Object>> getGapKompetensiPegawai(Integer idRuangan, String periode) {
|
||||
List<Map<String, Object>> result = new ArrayList<Map<String, Object>>();
|
||||
List<Map<String, Object>> listPegawai = pegawaiDao.findByRuanganKerja(idRuangan);// get id jabatan and id
|
||||
// pegawai by ruangan kerja
|
||||
List<Map<String, Object>> listPegawai = pegawaiDao.findByRuanganKerja(idRuangan);// get
|
||||
// id
|
||||
// jabatan
|
||||
// and
|
||||
// id
|
||||
// pegawai
|
||||
// by
|
||||
// ruangan
|
||||
// kerja
|
||||
Date start = DateUtil.startMonth(periode);
|
||||
Date end = DateUtil.endMonth(periode);
|
||||
Integer nos = 0;
|
||||
for (Map<String, Object> temp : listPegawai) {
|
||||
|
||||
@ -231,7 +241,7 @@ public class RiwayatPenilaianKompetensiPegawaiServiceImpl implements RiwayatPeni
|
||||
Double gap = 0.0;
|
||||
Integer idKomponenEvaluasi = (Integer) kompetensiPegawai.get("idKomponenEvaluasi");
|
||||
Map<String, Object> dataKompetensi = riwayatPenilaianKompetensiPegawaiDao
|
||||
.getKompetensiByPegawai(idPegawai, periode, idKomponenEvaluasi);
|
||||
.getKompetensiByPegawai(idPegawai, start, end, idKomponenEvaluasi);
|
||||
Double nilaiHasilEvaluasi = 0.0;
|
||||
String nilaiStandar = "0";
|
||||
if (CommonUtil.isNotNullOrEmpty(kompetensiPegawai.get("nilaiStandar"))) {
|
||||
@ -271,7 +281,8 @@ public class RiwayatPenilaianKompetensiPegawaiServiceImpl implements RiwayatPeni
|
||||
List<Map<String, Object>> result = new ArrayList<Map<String, Object>>();
|
||||
|
||||
List<Map<String, Object>> listKompetensi = riwayatPenilaianKompetensiPegawaiDao
|
||||
.getKompetensiByRuangan(idJabatan);// getkompetensi basd on jabatan
|
||||
.getKompetensiByRuangan(idJabatan);// getkompetensi basd on
|
||||
// jabatan
|
||||
List<String> listTempKompetensi = new ArrayList<String>();
|
||||
|
||||
// filtering redundant kompetensi
|
||||
@ -313,8 +324,15 @@ public class RiwayatPenilaianKompetensiPegawaiServiceImpl implements RiwayatPeni
|
||||
@Override
|
||||
@Transactional(readOnly = true)
|
||||
public Map<String, Object> getKompetensiPegawai(Integer idRuangan) {
|
||||
List<Map<String, Object>> listPegawai = pegawaiDao.findByRuanganKerja(idRuangan);// get id jabatan and id
|
||||
// pegawai by ruangan kerja
|
||||
List<Map<String, Object>> listPegawai = pegawaiDao.findByRuanganKerja(idRuangan);// get
|
||||
// id
|
||||
// jabatan
|
||||
// and
|
||||
// id
|
||||
// pegawai
|
||||
// by
|
||||
// ruangan
|
||||
// kerja
|
||||
List<Map<String, Object>> listKelompokEvaluasi = riwayatPenilaianKompetensiPegawaiDao.getKelompokEvaluasi();
|
||||
List<Map<String, Object>> listHeader = new ArrayList<Map<String, Object>>();
|
||||
Map<String, Object> MaplistHeaderFinal = new HashMap<String, Object>();
|
||||
@ -323,7 +341,8 @@ public class RiwayatPenilaianKompetensiPegawaiServiceImpl implements RiwayatPeni
|
||||
if (CommonUtil.isNotNullOrEmpty(temp.get("idJabatanInternal"))) {
|
||||
Integer idJabatan = (Integer) temp.get("idJabatanInternal");
|
||||
List<Map<String, Object>> tempListKompetensi = riwayatPenilaianKompetensiPegawaiDao
|
||||
.getKompetensiByRuangan(idJabatan);// getkompetensi basd on jabatan
|
||||
.getKompetensiByRuangan(idJabatan);// getkompetensi basd
|
||||
// on jabatan
|
||||
listKompetensi.addAll(tempListKompetensi);
|
||||
}
|
||||
|
||||
|
||||
@ -5,16 +5,24 @@ import java.text.DateFormat;
|
||||
import java.text.Format;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalTime;
|
||||
import java.time.ZoneId;
|
||||
import java.time.temporal.TemporalAdjusters;
|
||||
import java.util.Calendar;
|
||||
import java.util.Date;
|
||||
import java.util.Locale;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
/**
|
||||
* The Class DateUtil.
|
||||
*
|
||||
* @author Roberto
|
||||
*/
|
||||
public final class DateUtil implements Serializable {
|
||||
private final static Logger LOGGER = LoggerFactory.getLogger(DateUtil.class);
|
||||
|
||||
/** The Constant serialVersionUID. */
|
||||
private static final long serialVersionUID = -3865736292493750177L;
|
||||
@ -244,7 +252,6 @@ public final class DateUtil implements Serializable {
|
||||
|
||||
return year + 1;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get year information of a date.
|
||||
@ -326,48 +333,45 @@ public final class DateUtil implements Serializable {
|
||||
return cal.get(Calendar.DAY_OF_MONTH) + " " + INDONESIAN_MONTH[cal.get(Calendar.MONTH)] + " "
|
||||
+ cal.get(Calendar.YEAR);
|
||||
}
|
||||
|
||||
public static synchronized Date now(){
|
||||
|
||||
public static synchronized Date now() {
|
||||
return new Date();
|
||||
}
|
||||
|
||||
public static synchronized Date toDate(String dateString){
|
||||
|
||||
public static synchronized Date toDate(String dateString) {
|
||||
Date result = null;
|
||||
|
||||
if (dateString != null && !dateString.equals(""))
|
||||
{
|
||||
if (dateString != null && !dateString.equals("")) {
|
||||
try {
|
||||
if(dateString.indexOf(":")>0)
|
||||
result = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(dateString);
|
||||
else
|
||||
{
|
||||
if(dateString.indexOf("-")>0)
|
||||
if (dateString.indexOf(":") > 0)
|
||||
result = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(dateString);
|
||||
else {
|
||||
if (dateString.indexOf("-") > 0)
|
||||
result = new SimpleDateFormat("yyyy-MM-dd").parse(dateString);
|
||||
else
|
||||
result = new SimpleDateFormat("yyyyMMddHHmmss").parse(dateString);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
LOGGER.error(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public static synchronized Date getShortDate(){
|
||||
|
||||
public static synchronized Date getShortDate() {
|
||||
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
String datenow=simpleDateFormat.format(new Date());
|
||||
Date tglReg=null;
|
||||
try {
|
||||
tglReg=simpleDateFormat.parse(datenow);
|
||||
String datenow = simpleDateFormat.format(new Date());
|
||||
Date tglReg = null;
|
||||
try {
|
||||
tglReg = simpleDateFormat.parse(datenow);
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
LOGGER.error(e.getMessage());
|
||||
}
|
||||
return tglReg;
|
||||
return tglReg;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Parse string formatted date (MM-yyyy, e.g: 05-2016) to Java Date.
|
||||
*
|
||||
@ -379,38 +383,110 @@ public final class DateUtil implements Serializable {
|
||||
Date result = new Date();
|
||||
try {
|
||||
result = formatter.parse(monthDashYear);
|
||||
} catch(ParseException pe) {
|
||||
System.out.println("Error parsing date: " + pe.getMessage());
|
||||
} catch (ParseException pe) {
|
||||
LOGGER.error(pe.getMessage());
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get first or last date from specified date.
|
||||
*
|
||||
* @param date specified date
|
||||
* @param first true for first date, false for last date
|
||||
* @param date
|
||||
* specified date
|
||||
* @param first
|
||||
* true for first date, false for last date
|
||||
* @return resulted date
|
||||
*/
|
||||
public static Date getFirstLastDateOfMonth(Date date, boolean first) {
|
||||
Calendar cal = Calendar.getInstance();
|
||||
cal.setTime(date);
|
||||
|
||||
|
||||
if (first) {
|
||||
cal.set(Calendar.DATE, cal.getActualMinimum(Calendar.DATE));
|
||||
} else {
|
||||
cal.set(Calendar.DATE, cal.getActualMaximum(Calendar.DATE));
|
||||
}
|
||||
|
||||
|
||||
return cal.getTime();
|
||||
}
|
||||
|
||||
public static Date addDays(Date date, int days)
|
||||
{
|
||||
Calendar cal = Calendar.getInstance();
|
||||
cal.setTime(date);
|
||||
cal.add(Calendar.DATE, days); //minus number would decrement the days
|
||||
return cal.getTime();
|
||||
}
|
||||
|
||||
|
||||
public static Date addDays(Date date, int days) {
|
||||
Calendar cal = Calendar.getInstance();
|
||||
cal.setTime(date);
|
||||
cal.add(Calendar.DATE, days); // minus number would decrement the days
|
||||
return cal.getTime();
|
||||
}
|
||||
|
||||
public static Date startMonth(Date date) {
|
||||
LocalDate month = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
return Date.from(month.with(TemporalAdjusters.firstDayOfMonth()).atStartOfDay().atZone(ZoneId.systemDefault())
|
||||
.toInstant());
|
||||
}
|
||||
|
||||
public static Date startMonth(Long milis) {
|
||||
LocalDate month = new Date(milis).toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
return Date.from(month.with(TemporalAdjusters.firstDayOfMonth()).atStartOfDay().atZone(ZoneId.systemDefault())
|
||||
.toInstant());
|
||||
}
|
||||
|
||||
public static Date startMonth(String period) {
|
||||
try {
|
||||
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM");
|
||||
LocalDate month = formatter.parse(period).toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
return Date.from(month.with(TemporalAdjusters.firstDayOfMonth()).atStartOfDay()
|
||||
.atZone(ZoneId.systemDefault()).toInstant());
|
||||
} catch (ParseException e) {
|
||||
LOGGER.error(e.getMessage());
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public static Date endMonth(Date date) {
|
||||
LocalDate month = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
return Date.from(month.with(TemporalAdjusters.lastDayOfMonth()).atTime(LocalTime.MAX)
|
||||
.atZone(ZoneId.systemDefault()).toInstant());
|
||||
}
|
||||
|
||||
public static Date endMonth(Long milis) {
|
||||
LocalDate month = new Date(milis).toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
return Date.from(month.with(TemporalAdjusters.lastDayOfMonth()).atTime(LocalTime.MAX)
|
||||
.atZone(ZoneId.systemDefault()).toInstant());
|
||||
}
|
||||
|
||||
public static Date endMonth(String period) {
|
||||
try {
|
||||
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM");
|
||||
LocalDate month = formatter.parse(period).toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
return Date.from(month.with(TemporalAdjusters.lastDayOfMonth()).atTime(LocalTime.MAX)
|
||||
.atZone(ZoneId.systemDefault()).toInstant());
|
||||
} catch (ParseException e) {
|
||||
LOGGER.error(e.getMessage());
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public static Date startYear(Date date) {
|
||||
LocalDate month = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
return Date.from(month.with(TemporalAdjusters.firstDayOfYear()).atStartOfDay().atZone(ZoneId.systemDefault())
|
||||
.toInstant());
|
||||
}
|
||||
|
||||
public static Date startYear(Long milis) {
|
||||
LocalDate month = new Date(milis).toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
return Date.from(month.with(TemporalAdjusters.firstDayOfYear()).atStartOfDay().atZone(ZoneId.systemDefault())
|
||||
.toInstant());
|
||||
}
|
||||
|
||||
public static Date endYear(Date date) {
|
||||
LocalDate month = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
return Date.from(month.with(TemporalAdjusters.lastDayOfYear()).atTime(LocalTime.MAX)
|
||||
.atZone(ZoneId.systemDefault()).toInstant());
|
||||
}
|
||||
|
||||
public static Date endYear(Long milis) {
|
||||
LocalDate month = new Date(milis).toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
return Date.from(month.with(TemporalAdjusters.lastDayOfYear()).atTime(LocalTime.MAX)
|
||||
.atZone(ZoneId.systemDefault()).toInstant());
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user