- perbaikan service get data kontrak kinerja dari usulan baru

- penambahan kondisi verifikasi pada service perhitungan rata-rata indikator persentase
- perbaikan service hak akses kontrak kinerja dan verifikasi catatan kegiatan harian
- perbaikan service get data rekapitulasi pendapatan ruangan periodik
- penambahan informasi target p1 dan p2
This commit is contained in:
salmanoe 2021-04-23 20:58:55 +07:00
parent cb05042a90
commit 98d51dda0f
6 changed files with 28 additions and 20 deletions

View File

@ -42,7 +42,8 @@ public interface LogbookKinerjaDao extends PagingAndSortingRepository<LogbookKin
+ "ikt.noRec as noRecMap,ikt.tanggalMulaiBerlaku as tglBerlaku,ikt.tanggalPembaharuanData as tglPembaharuanData) "
+ "from IndikatorKinerjaJabatan ikt " + "inner join ikt.indikatorKinerja ikm "
+ "inner join ikm.satuanIndikator si " + "where ikt.statusEnabled is true "
+ "and ikm.statusEnabled is true " + "and si.statusEnabled is true " + "and ikt.jabatanId = :jabatanId "
+ "and ikm.statusEnabled is true " + "and ikm.statusVerifikasi is true " + "and si.statusEnabled is true "
+ "and ikt.jabatanId = :jabatanId "
+ "and to_char(ikt.tanggalMulaiBerlaku,'yyyy-MM') <= to_char(now(),'yyyy-MM') "
+ "order by ikm.jenisIndikator, ikm.namaIndikator, "
+ "ikt.tanggalMulaiBerlaku desc, ikt.tanggalPembaharuanData desc")
@ -55,9 +56,10 @@ public interface LogbookKinerjaDao extends PagingAndSortingRepository<LogbookKin
+ "(case when lkh.statusVerifikasi is true then 'Terverifikasi' "
+ "else 'Belum Terverifikasi' end) as statusVerifikasi) " + "from LogbookKinerja lkh "
+ "inner join lkh.indikatorKinerja ikm " + "inner join ikm.satuanIndikator si "
+ "where lkh.statusEnabled is true " + "and ikm.statusEnabled is true " + "and si.statusEnabled is true "
+ "and lkh.pegawaiId = :pegawaiId " + "and lkh.jabatanId = :jabatanId "
+ "and to_char(lkh.bulan,'yyyy-MM') = :bulan " + "order by ikm.jenisIndikator, ikm.namaIndikator")
+ "where lkh.statusEnabled is true " + "and ikm.statusEnabled is true "
+ "and ikm.statusVerifikasi is true " + "and si.statusEnabled is true " + "and lkh.pegawaiId = :pegawaiId "
+ "and lkh.jabatanId = :jabatanId " + "and to_char(lkh.bulan,'yyyy-MM') = :bulan "
+ "order by ikm.jenisIndikator, ikm.namaIndikator")
List<Map<String, Object>> findKontrakKinerja(@Param("pegawaiId") Integer idPegawai,
@Param("jabatanId") Integer idJabatan, @Param("bulan") String bulan);

View File

@ -34,8 +34,9 @@ public interface LogbookKinerjaDetailDao extends PagingAndSortingRepository<Logb
@Query("select new Map(lkd.logbookIndikatorId as logbookId,avg(lkd.capaian) as avgCapaian,ikm.satuanIndikatorId as satuanId) "
+ "from LogbookKinerjaDetail lkd " + "inner join lkd.logbookKinerja lk "
+ "inner join lk.indikatorKinerja ikm " + "where lkd.statusEnabled is true "
+ "and lk.statusEnabled is true " + "and ikm.statusEnabled is true " + "and lk.noRec = :noRec "
+ "and ikm.satuanIndikatorId in (:listSatuanId) " + "group by lkd.logbookIndikatorId")
+ "and lkd.statusVerifikasi is true " + "and lk.statusEnabled is true " + "and ikm.statusEnabled is true "
+ "and lk.noRec = :noRec " + "and ikm.satuanIndikatorId in (:listSatuanId) "
+ "group by lkd.logbookIndikatorId, ikm.satuanIndikatorId")
List<Map<String, Object>> findAvgCapaianByKontrak(@Param("noRec") String noRec,
@Param("listSatuanId") List<Integer> listIdSatuan);

View File

@ -217,9 +217,10 @@ public interface MapPegawaiJabatanToUnitKerjaDao extends CrudRepository<MapPegaw
List<Map<String, Object>> getJabatanInternalStrukturalByPegawai(@Param("idPegawai") Integer idPegawai);
@Query("select distinct new Map(jb.id as id,jb.namaJabatan as namaJabatan,jb.levelJabatan as levelJabatan,"
+ "mj.unitKerjaPegawaiId as idUnitKerja," + "mj.atasanLangsungId as atasanId) "
+ "from MapPegawaiJabatanToUnitKerja mj " + "left join mj.jabatan jb " + "where mj.statusEnabled is true "
+ "and jb.statusEnabled is true " + "and mj.pegawaiId = :idPegawai")
+ "mj.unitKerjaPegawaiId as idUnitKerja," + "mj.atasanLangsungId as atasanId,"
+ "mj.pejabatPenilaiId as penilaiId) " + "from MapPegawaiJabatanToUnitKerja mj "
+ "left join mj.jabatan jb " + "where mj.statusEnabled is true " + "and jb.statusEnabled is true "
+ "and mj.pegawaiId = :idPegawai")
List<Map<String, Object>> findJabLvlUkAtasan(@Param("idPegawai") Integer idPegawai);
@Query("select new Map(jabatan.id as idJabatan,jabatan.namaJabatan as namaJabatan,"

View File

@ -145,11 +145,11 @@ public interface PelayananPasienDao extends PagingAndSortingRepository<Pelayanan
+ "dp.id as idDepartemen, dp.namaDepartemen as namaDepartemen,"
+ "ru.id as idRuangan,ru.namaRuangan as namaRuangan,"
+ "jp.id as idJenisProduk,pp.jumlah as jumlahTindakan,pp.hargaJual as hargaJual,pp.hargaDiscount as hargaDiskon) "
+ "from PelayananPasienPetugas ppp, MapRuanganToProduk mrtp " + "left join ppp.pelayananPasien pp "
+ "left join pp.produk pr " + "left join pp.pasienDaftar apd " + "left join pr.detailJenisProduk djp "
+ "left join apd.ruangan ru " + "left join ru.departemen dp " + "left join djp.jenisProduk jp "
+ "where mrtp.produkId = pr.id " + "and mrtp.ruanganId = apd.ruanganId " + "and mrtp.statusEnabled is true "
+ "and pp.tglPelayanan between :tglAwal and :tglAkhir "
+ "from PelayananPasien pp, MapRuanganToProduk mrtp " + "left join pp.produk pr "
+ "left join pp.pasienDaftar apd " + "left join pr.detailJenisProduk djp " + "left join apd.ruangan ru "
+ "left join ru.departemen dp " + "left join djp.jenisProduk jp " + "where mrtp.produkId = pr.id "
+ "and mrtp.ruanganId = apd.ruanganId " + "and mrtp.statusEnabled is true "
+ "and pp.tglPelayanan between :tglAwal " + "and :tglAkhir "
+ "and djp.jenisProdukId not in (:listNontindakanId) " + "order by dp.id, ru.id")
List<Map<String, Object>> findDataLayananAllRuangan(@Param("tglAwal") Date tglAwal,
@Param("tglAkhir") Date tglAkhir, @Param("listNontindakanId") List<Integer> listNontindakanId);

View File

@ -391,9 +391,6 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
}
result.put("listJenisIndikator", listJenisIndikator);
result.put("rupiahCapaian", totAllPersen / 100.0 * nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir);
result.put("rupiahCapaianFormat",
kursINA.format(totAllPersen / 100.0 * nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir).toString());
result.put("rupiahCapaianP1", totAllPersen / 100.0 * nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir
* Master.Remunerasi.PERSEN_P1);
result.put("rupiahCapaianP1Format", kursINA.format(
@ -406,8 +403,12 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
totAllPersen / 100.0 * nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir * Master.Remunerasi.PERSEN_P2)
.toString());
result.put("plafonP2", kursINA.format(Double.valueOf(anggaran.get("plafonInsentif").toString())).toString());
result.put("rupiahTarget", nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir);
result.put("rupiahTargetFormat", kursINA.format(nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir).toString());
result.put("rupiahTargetP1", nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir * Master.Remunerasi.PERSEN_P1);
result.put("rupiahTargetFormatP1", kursINA
.format(nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir * Master.Remunerasi.PERSEN_P1).toString());
result.put("rupiahTargetP2", nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir * Master.Remunerasi.PERSEN_P2);
result.put("rupiahTargetFormatP2", kursINA
.format(nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir * Master.Remunerasi.PERSEN_P2).toString());
result.put("persenCapaian", totAllPersen);
result.put("persenCapaianDibulatkan",
new BigDecimal(Double.valueOf(totAllPersen)).setScale(2, RoundingMode.HALF_UP));

View File

@ -1807,7 +1807,10 @@ public class PegawaiServiceImpl extends BaseVoServiceImpl implements PegawaiServ
public List<Map<String, Object>> findJabatanKontrakVerifKinerja(Integer idPegawai, Integer idPegawaiLogin) {
List<Map<String, Object>> result = mapPegawaiJabatanToUnitKerjaDao.findJabLvlUkAtasan(idPegawai);
for (Map<String, Object> map : result) {
if (map.get("atasanId").equals(idPegawaiLogin)) {
if ((CommonUtil.isNotNullOrEmpty(map.get("atasanId")) && map.get("atasanId").equals(idPegawaiLogin))
|| (CommonUtil.isNotNullOrEmpty(map.get("penilaiId"))
&& map.get("penilaiId").equals(idPegawaiLogin))
|| idPegawai.equals(idPegawaiLogin)) {
map.put("isCariAkses", true);
} else {
map.put("isCariAkses", false);