- membuat service validasi tidak boleh hapus kontrak kinerja dengan kriteria working record

- membuat service validasi tidak boleh hapus mapping indikator-jabatan dengan kriteria kontrak kinerja individu
- membuat service validasi tidak boleh hapus master indikator dengan kriteria mapping indikator-jabatan
This commit is contained in:
salmanoe 2021-04-28 18:52:36 +07:00
parent ad6de66647
commit a5cdae75d6
8 changed files with 92 additions and 12 deletions

View File

@ -68,4 +68,10 @@ public interface IndikatorKinerjaJabatanDao extends PagingAndSortingRepository<I
List<Map<String, Object>> findIndikatorByUnit(@Param("jenisIndikator") Integer jenisIndikator,
@Param("unitKerjaId") Integer idUnitKerja);
@Query("select new Map(ikt.noRec as noRec,ikt.jabatanId as jabatanId) " + "from IndikatorKinerjaJabatan ikt "
+ "where ikt.indikatorKinerjaId = :indikatorId "
+ "and to_char(ikt.tanggalMulaiBerlaku,'yyyy-MM') >= to_char(now(),'yyyy-MM') "
+ "and ikt.statusEnabled is true")
List<Map<String, Object>> findUsedMappingByIndikator(@Param("indikatorId") Integer idIndikator);
}

View File

@ -109,4 +109,11 @@ public interface LogbookKinerjaDao extends PagingAndSortingRepository<LogbookKin
List<Map<String, Object>> findAksesPegawaiByPenilai(@Param("pegawaiId") Integer idPegawai,
@Param("listKategoryPegawaiId") List<Integer> listIdKategoriPegawai);
@Query("select new Map(lk.noRec as noRec,lk.pegawaiId as pegawaiId) "
+ "from LogbookKinerja lk where lk.indikatorKinerjaId = :indikatorId " + "and lk.jabatanId = :jabatanId "
+ "and lk.statusEnabled is true " + "and to_char(lk.bulan,'yyyy-MM') >= to_char(now(),'yyyy-MM') "
+ "and lk.statusVerifikasi is false")
List<Map<String, Object>> findUsedKontrakByMapping(@Param("indikatorId") Integer idIndikator,
@Param("jabatanId") Integer idJabatan);
}

View File

@ -41,8 +41,9 @@ public interface LogbookKinerjaDetailDao extends PagingAndSortingRepository<Logb
@Param("listSatuanId") List<Integer> listIdSatuan);
@Query("select new Map(lkd.noRec as noRec,lkd.namaKegiatan as namaKegiatan) " + "from LogbookKinerjaDetail lkd "
+ "where lkd.logbookKinerjaId = :logbookNoRec " + "and lkd.statusEnabled is true "
+ "and lkd.statusVerifikasi is true")
+ "where lkd.logbookKinerjaId = :logbookNoRec "
+ "and to_char(lkd.tanggalKegiatan,'yyyy-MM') >= to_char(now(),'yyyy-MM') "
+ "and lkd.statusEnabled is true")
List<Map<String, Object>> findUsedWorkingRecordByKontrak(@Param("logbookNoRec") String logbookNoRec);
}

View File

@ -25,4 +25,6 @@ public interface IndikatorKinerjaJabatanService
public List<Map<String, Object>> findIndikatorByUnit(Integer jenisIndikator, Integer idUnitKerja,
Integer levelJabatan) throws JpaSystemException;
public List<Map<String, Object>> findUsedMappingByIndikator(Integer idIndikator) throws JpaSystemException;
}

View File

@ -11,22 +11,29 @@ import com.jasamedika.medifirst2000.vo.LogbookKinerjaVO;
public interface LogbookKinerjaService extends BaseVoService<LogbookKinerja, LogbookKinerjaVO, String> {
LogbookKinerjaVO addPengajuanKontrakKinerja(LogbookKinerjaVO vo) throws JpaSystemException, ServiceVOException;
public LogbookKinerjaVO addPengajuanKontrakKinerja(LogbookKinerjaVO vo)
throws JpaSystemException, ServiceVOException;
LogbookKinerjaVO updatePengajuanKontrakKinerja(LogbookKinerjaVO vo) throws JpaSystemException, ServiceVOException;
public LogbookKinerjaVO updatePengajuanKontrakKinerja(LogbookKinerjaVO vo)
throws JpaSystemException, ServiceVOException;
List<Map<String, Object>> findPengajuanKontrakKinerja(Integer idPegawai, Integer idJabatan)
public List<Map<String, Object>> findPengajuanKontrakKinerja(Integer idPegawai, Integer idJabatan)
throws JpaSystemException;
List<Map<String, Object>> findDupKontrakKinerja(Integer idPegawai, Integer idJabatan, Long bulan,
public List<Map<String, Object>> findDupKontrakKinerja(Integer idPegawai, Integer idJabatan, Long bulan,
Integer idIndikator) throws JpaSystemException;
Map<String, Object> findKontrakKinerja(Integer idPegawai, Integer idJabatan, Long bulan) throws JpaSystemException;
public Map<String, Object> findKontrakKinerja(Integer idPegawai, Integer idJabatan, Long bulan)
throws JpaSystemException;
List<Map<String, Object>> findKontrakKinerja(Integer idIndikator) throws JpaSystemException;
public List<Map<String, Object>> findKontrakKinerja(Integer idIndikator) throws JpaSystemException;
Map<String, Object> findLogbookKinerja(Integer idPegawai, Integer idJabatan, Long bulan) throws JpaSystemException;
List<Map<String, Object>> findAksesPegawai(Integer idPegawai);
public Map<String, Object> findLogbookKinerja(Integer idPegawai, Integer idJabatan, Long bulan)
throws JpaSystemException;
public List<Map<String, Object>> findAksesPegawai(Integer idPegawai);
public List<Map<String, Object>> findUsedKontrakByMapping(Integer idIndikator, Integer idJabatan)
throws JpaSystemException;
}

View File

@ -427,4 +427,11 @@ public class IndikatorKinerjaJabatanServiceImpl extends BaseVoServiceImpl implem
return result;
}
@Override
public List<Map<String, Object>> findUsedMappingByIndikator(Integer idIndikator) throws JpaSystemException {
List<Map<String, Object>> result = indikatorKinerjaJabatanDao.findUsedMappingByIndikator(idIndikator);
return result;
}
}

View File

@ -486,4 +486,12 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
return result;
}
@Override
public List<Map<String, Object>> findUsedKontrakByMapping(Integer idIndikator, Integer idJabatan)
throws JpaSystemException {
List<Map<String, Object>> result = logbookKinerjaDao.findUsedKontrakByMapping(idIndikator, idJabatan);
return result;
}
}

View File

@ -927,7 +927,8 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
public ResponseEntity<List<Map<String, Object>>> getUsedWorkingRecordByKontrak(HttpServletRequest request,
@RequestParam(value = "logbookKinerjaId", required = true) String idLogbookKinerja) throws ParseException {
try {
List<Map<String, Object>> result = logbookKinerjaDetailService.findUsedWorkingRecordByKontrak(idLogbookKinerja);
List<Map<String, Object>> result = logbookKinerjaDetailService
.findUsedWorkingRecordByKontrak(idLogbookKinerja);
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage);
@ -942,4 +943,45 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
}
}
@RequestMapping(value = "/kontrak-kinerja-mapping", method = RequestMethod.GET)
public ResponseEntity<List<Map<String, Object>>> getUsedKontrakByMapping(HttpServletRequest request,
@RequestParam(value = "indikatorId", required = true) Integer idIndikator,
@RequestParam(value = "jabatanId", required = true) Integer idJabatan) throws ParseException {
try {
List<Map<String, Object>> result = logbookKinerjaService.findUsedKontrakByMapping(idIndikator, idJabatan);
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage);
} catch (ServiceVOException sve) {
LOGGER.error("Got exception {} when get mapping sudah dipakai di kontrak kinerja individu",
sve.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, sve.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.INTERNAL_SERVER_ERROR, mapHeaderMessage);
} catch (JpaSystemException jse) {
LOGGER.error("Got exception {} when get mapping sudah dipakai di kontrak kinerja individu",
jse.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage);
}
}
@RequestMapping(value = "/mapping-jabatan-indikator", method = RequestMethod.GET)
public ResponseEntity<List<Map<String, Object>>> getUsedMappingByIndikator(HttpServletRequest request,
@RequestParam(value = "indikatorId", required = true) Integer idIndikator) throws ParseException {
try {
List<Map<String, Object>> result = indikatorKinerjaJabatanService.findUsedMappingByIndikator(idIndikator);
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage);
} catch (ServiceVOException sve) {
LOGGER.error("Got exception {} when get indikator sudah dipakai di mapping jabatan", sve.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, sve.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.INTERNAL_SERVER_ERROR, mapHeaderMessage);
} catch (JpaSystemException jse) {
LOGGER.error("Got exception {} when get indikator sudah dipakai di mapping jabatan", jse.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage);
}
}
}