diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/IndikatorKinerjaDao.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/IndikatorKinerjaDao.java index 16ba88fe..3c718e3f 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/IndikatorKinerjaDao.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/IndikatorKinerjaDao.java @@ -1,9 +1,25 @@ package com.jasamedika.medifirst2000.dao; +import java.util.List; +import java.util.Map; + +import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.PagingAndSortingRepository; +import org.springframework.stereotype.Repository; import com.jasamedika.medifirst2000.entities.IndikatorKinerja; +@Repository("indikatorKinerjaDao") public interface IndikatorKinerjaDao extends PagingAndSortingRepository { + @Query("select new Map(ik.id as id," + "ik.jenisIndikator as jenisIndikatorId," + + "(case when ik.jenisIndikator = 1 then 'Kuantitas' " + "when ik.jenisIndikator = 2 then 'Kualitas' " + + "when ik.jenisIndikator = 3 then 'Perilaku' end) as jenisIndikator," + + "ik.namaIndikator as namaIndikator," + "si.id as satuanIndikatorId," + + "si.satuanIndikator as satuanIndikator," + "ik.statusVerifikasi as isStatusVerifikasi," + + "(case when ik.statusVerifikasi is false then 'Belum Terverifikasi' " + + "when ik.statusVerifikasi is true then 'Terverifikasi' end) as statusVerifikasi) " + + "from IndikatorKinerja ik " + "inner join ik.satuanIndikator si " + "where ik.statusEnabled is true") + List> findMasterIndikatorKinerja(); + } 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 2ebc40ec..e17f7173 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 @@ -1,9 +1,11 @@ package com.jasamedika.medifirst2000.dao; import org.springframework.data.repository.PagingAndSortingRepository; +import org.springframework.stereotype.Repository; import com.jasamedika.medifirst2000.entities.LogbookKinerja; +@Repository("logbookKinerjaDao") public interface LogbookKinerjaDao extends PagingAndSortingRepository { } diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/LogbookKinerjaDetailDao.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/LogbookKinerjaDetailDao.java index 124850c2..e56dc926 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/LogbookKinerjaDetailDao.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/LogbookKinerjaDetailDao.java @@ -1,9 +1,11 @@ package com.jasamedika.medifirst2000.dao; import org.springframework.data.repository.PagingAndSortingRepository; +import org.springframework.stereotype.Repository; import com.jasamedika.medifirst2000.entities.LogbookKinerjaDetail; +@Repository("logbookKinerjaDetailDao") public interface LogbookKinerjaDetailDao extends PagingAndSortingRepository { } diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/IndikatorKinerjaService.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/IndikatorKinerjaService.java index 54a47019..c9bd9533 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/IndikatorKinerjaService.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/IndikatorKinerjaService.java @@ -1,8 +1,13 @@ package com.jasamedika.medifirst2000.service; +import java.util.List; +import java.util.Map; + import com.jasamedika.medifirst2000.entities.IndikatorKinerja; import com.jasamedika.medifirst2000.vo.IndikatorKinerjaVO; public interface IndikatorKinerjaService extends BaseVoService { + List> getMasterIndikatorKinerja(); + } diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/IndikatorKinerjaServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/IndikatorKinerjaServiceImpl.java index 864ed876..b057e54e 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/IndikatorKinerjaServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/IndikatorKinerjaServiceImpl.java @@ -23,7 +23,7 @@ public class IndikatorKinerjaServiceImpl extends BaseVoServiceImpl implements In @Autowired private BaseConverterImpl indikatorKinerjaConverter; - + @Autowired private BaseConverterImpl satuanIndikatorConverter; @@ -32,9 +32,10 @@ public class IndikatorKinerjaServiceImpl extends BaseVoServiceImpl implements In @Override public IndikatorKinerjaVO add(IndikatorKinerjaVO vo) throws JpaSystemException, ServiceVOException { - SatuanIndikator satuanIndikator = satuanIndikatorConverter.transferVOToModel(vo.getSatuanIndikator(), new SatuanIndikator()); + SatuanIndikator satuanIndikator = satuanIndikatorConverter.transferVOToModel(vo.getSatuanIndikator(), + new SatuanIndikator()); IndikatorKinerja indikatorKinerja = indikatorKinerjaConverter.transferVOToModel(vo, new IndikatorKinerja()); - + indikatorKinerja.setSatuanIndikator(satuanIndikator); IndikatorKinerja resultModel = indikatorKinerjaDao.save(indikatorKinerja); @@ -47,10 +48,11 @@ public class IndikatorKinerjaServiceImpl extends BaseVoServiceImpl implements In @Override public IndikatorKinerjaVO update(IndikatorKinerjaVO vo) throws JpaSystemException, ServiceVOException { IndikatorKinerja indikatorKinerjaLama = indikatorKinerjaDao.findOne(vo.getId()); - - SatuanIndikator satuanIndikator = satuanIndikatorConverter.transferVOToModel(vo.getSatuanIndikator(), new SatuanIndikator()); + + SatuanIndikator satuanIndikator = satuanIndikatorConverter.transferVOToModel(vo.getSatuanIndikator(), + new SatuanIndikator()); IndikatorKinerja indikatorKinerjaBaru = indikatorKinerjaConverter.transferVOToModel(vo, indikatorKinerjaLama); - + indikatorKinerjaBaru.setSatuanIndikator(satuanIndikator); IndikatorKinerja resultModel = indikatorKinerjaDao.save(indikatorKinerjaBaru); @@ -69,19 +71,19 @@ public class IndikatorKinerjaServiceImpl extends BaseVoServiceImpl implements In @Override public IndikatorKinerjaVO findById(Integer key) throws JpaSystemException { IndikatorKinerjaVO result = new IndikatorKinerjaVO(); - + IndikatorKinerja indikatorKinerja = indikatorKinerjaDao.findOne(key); if (CommonUtil.isNotNullOrEmpty(indikatorKinerja)) { result = indikatorKinerjaConverter.transferModelToVO(indikatorKinerja, result); } - + return result; } @Override public List findAll() throws JpaSystemException { List result = new ArrayList(); - + Iterable models = indikatorKinerjaDao.findAll(); if (CommonUtil.isNotNullOrEmpty(models)) { for (IndikatorKinerja model : models) { @@ -99,4 +101,11 @@ public class IndikatorKinerjaServiceImpl extends BaseVoServiceImpl implements In return null; } + @Override + public List> getMasterIndikatorKinerja() { + List> result = indikatorKinerjaDao.findMasterIndikatorKinerja(); + + return result; + } + } diff --git a/jasamedika-domain/src/main/resources/hibernate.cfg.xml b/jasamedika-domain/src/main/resources/hibernate.cfg.xml index f84fd486..a606c325 100644 --- a/jasamedika-domain/src/main/resources/hibernate.cfg.xml +++ b/jasamedika-domain/src/main/resources/hibernate.cfg.xml @@ -681,7 +681,11 @@ + + + + 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 074867c8..45a34ca5 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 @@ -285,6 +285,25 @@ public class IkiDanRemunerasiController extends LocaleController>> getMasterIndikatorKinerja(HttpServletRequest request) + throws ParseException { + try { + List> result = indikatorKinerjaService.getMasterIndikatorKinerja(); + 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 master indikator kinerja", 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 master indikator kinerja", jse.getMessage()); + addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage()); + return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage); + } + } + @RequestMapping(value = "/save-logbook-kinerja", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE) public ResponseEntity> saveLogbookKinerja(HttpServletRequest request, @Valid @RequestBody LogbookKinerjaVO vo) {