diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/LogbookKinerjaDao.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/LogbookKinerjaDao.java index 794424cd..817eed2a 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/LogbookKinerjaDao.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/LogbookKinerjaDao.java @@ -37,7 +37,7 @@ public interface LogbookKinerjaDao extends PagingAndSortingRepository> findKontrakKinerja(@Param("pegawaiId") Integer idPegawai, + + "and ik.statusVerifikasi is true "; + + String pegawaiLogbook = "and lk.pegawaiId = :pegawaiId "; + + String jabatanLogbook = "and lk.jabatanId = :jabatanId "; + + String bulanLogbook = "and to_char(lk.bulan,'yyyy-MM') = :bulan "; + + String sortIndikator = "order by ik.jenisIndikator, ik.namaIndikator"; + + @Query(strKontrakKinerja + sortIndikator) + List> findKontrakKinerja(); + + @Query(strKontrakKinerja + pegawaiLogbook + sortIndikator) + List> findKontrakKinerjaByPegawai(@Param("pegawaiId") Integer idPegawai); + + @Query(strKontrakKinerja + jabatanLogbook + sortIndikator) + List> findKontrakKinerjaByJabatan(@Param("jabatanId") Integer idJabatan); + + @Query(strKontrakKinerja + bulanLogbook + sortIndikator) + List> findKontrakKinerjaByBulan(@Param("bulan") String bulan); + + @Query(strKontrakKinerja + pegawaiLogbook + jabatanLogbook + sortIndikator) + List> findKontrakKinerjaByPegawaiJabatan(@Param("pegawaiId") Integer idPegawai, + @Param("jabatanId") Integer idJabatan); + + @Query(strKontrakKinerja + pegawaiLogbook + bulanLogbook + sortIndikator) + List> findKontrakKinerjaByPegawaiBulan(@Param("pegawaiId") Integer idPegawai, + @Param("bulan") String bulan); + + @Query(strKontrakKinerja + jabatanLogbook + bulanLogbook + sortIndikator) + List> findKontrakKinerjaByJabatanBulan(@Param("jabatanId") Integer idJabatan, + @Param("bulan") String bulan); + + @Query(strKontrakKinerja + pegawaiLogbook + jabatanLogbook + bulanLogbook + sortIndikator) + List> findKontrakKinerjaByAll(@Param("pegawaiId") Integer idPegawai, @Param("jabatanId") Integer idJabatan, @Param("bulan") String bulan); @Query("select new Map(lk.noRec as noRec,ik.namaIndikator as namaIndikator) " + "from LogbookKinerja lk " + "inner join lk.indikatorKinerja ik " + "where ik.id = :indikatorId") - List> findKontrakKinerja(@Param("indikatorId") Integer idIndikator); + List> findKontrakKinerjaByIndikator(@Param("indikatorId") Integer idIndikator); @Query("select new Map(lk.noRec as noRec," + "pg.id as idPegawai,pg.namaLengkap as namaPegawai," + "jb.id as idJabatan,jb.namaJabatan as namaJabatan," diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/AbsensiPegawaiServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/AbsensiPegawaiServiceImpl.java index 904cd7fe..89dcfcc2 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/AbsensiPegawaiServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/AbsensiPegawaiServiceImpl.java @@ -292,6 +292,8 @@ public class AbsensiPegawaiServiceImpl extends BaseVoServiceImpl implements Abse } if (listIp.contains(map.get("ip_addr"))) { map.put("ip_addr", "menggunakan jaringan internet RSAB"); + } else if (CommonUtil.isNullOrEmpty(map.get("ip_addr"))) { + map.put("ip_addr", "jaringan internet tidak terdeteksi"); } else { map.put("ip_addr", "bukan menggunakan jaringan internet RSAB"); } diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/LogbookKinerjaServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/LogbookKinerjaServiceImpl.java index 131d8332..1d589dda 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/LogbookKinerjaServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/LogbookKinerjaServiceImpl.java @@ -234,10 +234,34 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb @Override public List> findKontrakKinerja(Integer idPegawai, Integer idJabatan, Long bulan) throws JpaSystemException { + List> result = new ArrayList<>(); DateFormat df = new SimpleDateFormat("yyyy-MM"); - List> result = logbookKinerjaDao.findKontrakKinerja(idPegawai, idJabatan, - df.format(new Date(bulan))); + if (CommonUtil.isNullOrEmpty(idPegawai) && CommonUtil.isNullOrEmpty(idJabatan) + && CommonUtil.isNullOrEmpty(bulan)) { + result = logbookKinerjaDao.findKontrakKinerja(); + } else if (CommonUtil.isNotNullOrEmpty(idPegawai) && CommonUtil.isNullOrEmpty(idJabatan) + && CommonUtil.isNullOrEmpty(bulan)) { + result = logbookKinerjaDao.findKontrakKinerjaByPegawai(idPegawai); + } else if (CommonUtil.isNullOrEmpty(idPegawai) && CommonUtil.isNotNullOrEmpty(idJabatan) + && CommonUtil.isNullOrEmpty(bulan)) { + result = logbookKinerjaDao.findKontrakKinerjaByJabatan(idJabatan); + } else if (CommonUtil.isNullOrEmpty(idPegawai) && CommonUtil.isNullOrEmpty(idJabatan) + && CommonUtil.isNotNullOrEmpty(bulan)) { + result = logbookKinerjaDao.findKontrakKinerjaByBulan(df.format(new Date(bulan))); + } else if (CommonUtil.isNotNullOrEmpty(idPegawai) && CommonUtil.isNotNullOrEmpty(idJabatan) + && CommonUtil.isNullOrEmpty(bulan)) { + result = logbookKinerjaDao.findKontrakKinerjaByPegawaiJabatan(idPegawai, idJabatan); + } else if (CommonUtil.isNotNullOrEmpty(idPegawai) && CommonUtil.isNullOrEmpty(idJabatan) + && CommonUtil.isNotNullOrEmpty(bulan)) { + result = logbookKinerjaDao.findKontrakKinerjaByPegawaiBulan(idPegawai, df.format(new Date(bulan))); + } else if (CommonUtil.isNullOrEmpty(idPegawai) && CommonUtil.isNotNullOrEmpty(idJabatan) + && CommonUtil.isNotNullOrEmpty(bulan)) { + result = logbookKinerjaDao.findKontrakKinerjaByJabatanBulan(idJabatan, df.format(new Date(bulan))); + } else if (CommonUtil.isNotNullOrEmpty(idPegawai) && CommonUtil.isNotNullOrEmpty(idJabatan) + && CommonUtil.isNotNullOrEmpty(bulan)) { + result = logbookKinerjaDao.findKontrakKinerjaByAll(idPegawai, idJabatan, df.format(new Date(bulan))); + } return result; } @@ -268,7 +292,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb @Override public List> findKontrakKinerja(Integer idIndikator) throws JpaSystemException { - List> result = logbookKinerjaDao.findKontrakKinerja(idIndikator); + List> result = logbookKinerjaDao.findKontrakKinerjaByIndikator(idIndikator); return result; } diff --git a/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/IkiDanRemunerasiController.java b/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/IkiDanRemunerasiController.java index 6772abdf..759de6d4 100644 --- a/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/IkiDanRemunerasiController.java +++ b/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/IkiDanRemunerasiController.java @@ -476,9 +476,9 @@ public class IkiDanRemunerasiController extends LocaleController>> getKontrakKinerja(HttpServletRequest request, - @RequestParam(value = "pegawaiId", required = true) Integer idPegawai, - @RequestParam(value = "jabatanId", required = true) Integer idJabatan, - @RequestParam(value = "bulan", required = true) Long bulan) throws ParseException { + @RequestParam(value = "pegawaiId", required = false) Integer idPegawai, + @RequestParam(value = "jabatanId", required = false) Integer idJabatan, + @RequestParam(value = "bulan", required = false) Long bulan) throws ParseException { try { List> result = logbookKinerjaService.findKontrakKinerja(idPegawai, idJabatan, bulan); mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,