- pembuatan service tampil daftar penempatan pegawai saat evaluasi jabatan

- perbaikan service edit plafon remunerasi
This commit is contained in:
salmanoe 2021-02-08 13:44:06 +07:00
parent ed638c743b
commit 3c74ae5f63
4 changed files with 103 additions and 22 deletions

View File

@ -16,7 +16,7 @@ import com.jasamedika.medifirst2000.entities.NilaiKelompokJabatan;
* @author Generator
*/
@Repository("KelompokJabatanDao")
public interface NilaiKelompokJabatanDao extends PagingAndSortingRepository<NilaiKelompokJabatan, String> {
public interface NilaiKelompokJabatanDao extends PagingAndSortingRepository<NilaiKelompokJabatan, Integer> {
@Query("select model from NilaiKelompokJabatan model where model.id = :kelompokJabatanId")
public NilaiKelompokJabatan getNilaiKelompokJabatan(@Param("kelompokJabatanId") Integer kelompokJabatanId);
@ -43,4 +43,16 @@ public interface NilaiKelompokJabatanDao extends PagingAndSortingRepository<Nila
@Query("select nj.id from NilaiKelompokJabatan nj where nj.grade = :grade")
public List<Integer> findIdsByGrade(@Param("grade") String grade);
@Query("select new Map(pg.id as idPegawai,pg.namaLengkap as namaPegawai,"
+ "j.namaExternal as unitKerja,j.namaJabatan as namaJabatan,"
+ "pg.nilaiJabatan as nilaiJabatan,pg.grade as grade,"
+ "kj.id as idKelompokJabatan,kj.namaKelompokJabatan as kelompokJabatan,"
+ "dkj.id as idDetailKelompokJabatan,dkj.detailKelompokJabatan as detailKelompokJabatan) "
+ "from MapPegawaiJabatanToUnitKerja mj " + "inner join mj.pegawai pg " + "inner join mj.jabatan j "
+ "inner join j.kelompokJabatan kj " + "inner join pg.detailKelompokJabatan dkj "
+ "where kj.id = dkj.kelompokJabatanId " + "and mj.statusEnabled is true " + "and pg.statusEnabled is true "
+ "and j.statusEnabled is true " + "and j.kdJabatan = 'ANJAB' " + "order by pg.id asc, "
+ "pg.nilaiJabatan desc")
public List<Map<String, Object>> findPenempatanEvaluasiJabatan();
}

View File

@ -17,5 +17,7 @@ public interface NilaiKelompokJabatanService {
List<Map<String, Object>> getAllByStatusEnabled();
List<Map<String, Object>> getPlafonRemunerasi();
List<Map<String, Object>> getPenempatanEvaluasiJabatan();
}

View File

@ -53,6 +53,29 @@ public class NilaiKelompokJabatanServiceImpl extends BaseVoServiceImpl implement
return result;
}
@Override
public Map<String, Object> saveNilaiKelompokJabatan(PlafonRemunerasiKemenkeuVO vo) {
Map<String, Object> result = new HashMap<>();
List<Integer> listId = nilaiKelompokJabatanDao.findIdsByGrade(vo.getGrade());
List<NilaiKelompokJabatan> models = new ArrayList<NilaiKelompokJabatan>();
for (Integer id : listId) {
NilaiKelompokJabatan model = nilaiKelompokJabatanDao.findOne(id);
model.setGajiHonorarium(vo.getGajiHonorarium());
model.setMinInsentif(vo.getMinInsentif());
model.setMaxInsentif(vo.getMaxInsentif());
model.setMaxTotalRemunerasi(vo.getMaxTotalRemunerasi());
models.add(model);
}
Iterable<NilaiKelompokJabatan> rs = nilaiKelompokJabatanDao.save(models);
if (CommonUtil.isNotNullOrEmpty(rs)) {
result.put("ids", listId);
}
return result;
}
@Override
public Map<String, Object> getNilaiKelompokJabatan(Integer id) {
Map<String, Object> result = new HashMap<String, Object>();
@ -83,24 +106,27 @@ public class NilaiKelompokJabatanServiceImpl extends BaseVoServiceImpl implement
}
@Override
public Map<String, Object> saveNilaiKelompokJabatan(PlafonRemunerasiKemenkeuVO vo) {
Map<String, Object> result = new HashMap<>();
List<Integer> listId = nilaiKelompokJabatanDao.findIdsByGrade(vo.getGrade());
List<NilaiKelompokJabatan> models = new ArrayList<NilaiKelompokJabatan>();
for (Integer id : listId) {
NilaiKelompokJabatan model = new NilaiKelompokJabatan();
model.setId(id);
model.setGajiHonorarium(vo.getGajiHonorarium());
model.setMinInsentif(vo.getMinInsentif());
model.setMaxInsentif(vo.getMaxInsentif());
model.setMaxTotalRemunerasi(vo.getMaxTotalRemunerasi());
models.add(model);
}
Iterable<NilaiKelompokJabatan> rs = nilaiKelompokJabatanDao.save(models);
if (CommonUtil.isNotNullOrEmpty(rs)) {
result.put("data", listId);
public List<Map<String, Object>> getPenempatanEvaluasiJabatan() {
List<Map<String, Object>> result = new ArrayList<>();
List<Integer> listIdPegawai = new ArrayList<>();
List<Map<String, Object>> data = nilaiKelompokJabatanDao.findPenempatanEvaluasiJabatan();
if (CommonUtil.isNotNullOrEmpty(data)) {
for (Map<String, Object> map : data) {
if (!listIdPegawai.contains(map.get("idPegawai"))) {
listIdPegawai.add(Integer.valueOf(map.get("idPegawai").toString()));
}
}
for (Integer idPegawai : listIdPegawai) {
for (Map<String, Object> map : data) {
if (map.get("idPegawai").equals(idPegawai)) {
result.add(map);
break;
}
}
}
}
return result;

View File

@ -2027,11 +2027,33 @@ public class SdmController extends LocaleController<AkunVO> {
return RestUtil.getJsonResponse(result, HttpStatus.CREATED, mapHeaderMessage);
} catch (ServiceVOException e) {
LOGGER.error("Got exception {} when add Pasien", e.getMessage());
LOGGER.error("Got exception {} when add kelompok jabatan", e.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, e.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.INTERNAL_SERVER_ERROR, mapHeaderMessage);
} catch (JpaSystemException jse) {
LOGGER.error("Got exception {} when add Pasien", jse.getMessage());
LOGGER.error("Got exception {} when add kelompok jabatan", jse.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage);
}
}
@RequestMapping(value = "/save-plafon-remunerasi", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Map<String, Object>> saveKelompokJabatan(@Valid @RequestBody PlafonRemunerasiKemenkeuVO vo,
HttpServletRequest request) {
try {
Map<String, Object> result = kelompokJabatanService.saveNilaiKelompokJabatan(vo);
if (null != result)
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
return RestUtil.getJsonResponse(result, HttpStatus.CREATED, mapHeaderMessage);
} catch (ServiceVOException e) {
LOGGER.error("Got exception {} when add plafon remunerasi", e.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, e.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.INTERNAL_SERVER_ERROR, mapHeaderMessage);
} catch (JpaSystemException jse) {
LOGGER.error("Got exception {} when add plafon remunerasi", jse.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage);
}
@ -5766,7 +5788,7 @@ public class SdmController extends LocaleController<AkunVO> {
}
}
@RequestMapping(value = "/get-plafon-kmk-remunerasi", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
@RequestMapping(value = "/get-plafon-remunerasi", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<List<Map<String, Object>>> getPlafonRemunerasi(HttpServletRequest request) {
try {
List<Map<String, Object>> result = nilaiKelompokJabatanService.getPlafonRemunerasi();
@ -5785,4 +5807,23 @@ public class SdmController extends LocaleController<AkunVO> {
}
}
@RequestMapping(value = "/get-penempatan-evaluasi-jabatan", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<List<Map<String, Object>>> getPenempatanEvaluasiJabatan(HttpServletRequest request) {
try {
List<Map<String, Object>> result = nilaiKelompokJabatanService.getPenempatanEvaluasiJabatan();
if (null != result)
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage);
} catch (ServiceVOException e) {
LOGGER.error("Got exception {} when get penempatan evaluasi jabatan", e.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, e.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.INTERNAL_SERVER_ERROR, mapHeaderMessage);
} catch (JpaSystemException jse) {
LOGGER.error("Got exception {} when get penempatan evaluasi jabatan", jse.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage);
}
}
}