- membuat service rekap hasil evaluasi jabatan

- mengganti service list jabatan di menu evaluasi jabatan
- mengganti function mendapatkan detail kelompok jabatan
This commit is contained in:
salmanoe 2021-01-27 17:45:28 +07:00
parent 29512f077a
commit 3b265b038a
8 changed files with 127 additions and 40 deletions

View File

@ -1,6 +1,7 @@
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;
@ -18,25 +19,45 @@ import com.jasamedika.medifirst2000.entities.NilaiKelompokJabatan;
@Repository("EvaluasiJabatanDao")
public interface EvaluasiJabatanDao extends PagingAndSortingRepository<EvaluasiJabatan, String> {
@Query("select model from EvaluasiJabatan model where model.tahun=:tahun and model.ruangan.id=:ruangan and model.bulan=:bulan ")
List<EvaluasiJabatan> findEvaluasi(@Param("bulan")String bulan, @Param("tahun")Integer tahun,@Param("ruangan") Integer ruangan);
@Query("select nilaiKelompokJabatan "
+ "from NilaiKelompokJabatan nilaiKelompokJabatan "
List<EvaluasiJabatan> findEvaluasi(@Param("bulan") String bulan, @Param("tahun") Integer tahun,
@Param("ruangan") Integer ruangan);
@Query("select nilaiKelompokJabatan " + "from NilaiKelompokJabatan nilaiKelompokJabatan "
+ "left join nilaiKelompokJabatan.kelompokJabatan kelompokJabatan where kelompokJabatan.id "
+ "in (Select kelompokJabatan.id "
+ "from MappingKelompokToJabatan mapping left "
+ "in (Select kelompokJabatan.id " + "from MappingKelompokToJabatan mapping left "
+ "join mapping.jabatan jabatan "
+ "left join mapping.kelompokJabatan kelompokJabatan where jabatan.id=:idJabatan) ")
List<NilaiKelompokJabatan> findGrade(@Param("idJabatan") Integer idJabatan);
List<EvaluasiJabatan> findByTahun(Integer tahun);
List<EvaluasiJabatan> findByTahunAndPegawaiId(Integer tahun,Integer pegawaiId);
List<EvaluasiJabatan> findByTahunAndPegawaiId(Integer tahun, Integer pegawaiId);
@Query("select nj from Jabatan j, NilaiKelompokJabatan nj " + "left join nj.kelompokJabatan kj "
+ "where j.kelompokJabatanId = kj.id " + "and j.statusEnabled is true " + "and kj.statusEnabled is true "
+ "and nj.statusEnabled is true " + "and :totalNilai between nj.nilaiTerendah and nj.nilaiTertinggi "
+ "and j.id = :idJabatan")
NilaiKelompokJabatan findDetailKelompokJabatan(@Param("idJabatan") Integer idJabatan,
@Param("totalNilai") Integer totalNilai);
@Query("select new Map(ej.tahun || '-' || ej.bulan as periodePerhitungan,"
+ "j.namaJabatan as namaJabatan,nj.detailKelompokJabatan as kelompokJabatan,"
+ "f1.profile as f1,f2.profile as f2,f3.profile as f3,"
+ "f4.profile as f4,f5.profile as f5,f7.profile as f7,"
+ "f8.profile as f8,f9.profile as f9,f10.profile as f10,"
+ "fa.profile as fa,fb.profile as fb,fc.profile as fc,fd.profile as fd,fe.profile as fe,ff.profile as ff,"
+ "fg.profile as fg,fh.profile as fh,fi.profile as fi,fj.profile as fj,fk.profile as fk,fl.profile as fl,"
+ "cast(ej.totalNilai as long) as nilaiJabatan) " + "from EvaluasiJabatan ej " + "left join ej.jabatan j "
+ "left join ej.grade nj " + "left join ej.faktor1 f1 " + "left join ej.faktor2 f2 "
+ "left join ej.faktor3 f3 " + "left join ej.faktor4 f4 " + "left join ej.faktor5 f5 "
+ "left join ej.faktor7 f7 " + "left join ej.faktor8 f8 " + "left join ej.faktor9 f9 "
+ "left join ej.faktor10 f10 " + "left join ej.faktorA fa " + "left join ej.faktorB fb "
+ "left join ej.faktorC fc " + "left join ej.faktorD fd " + "left join ej.faktorE fe "
+ "left join ej.faktorF ff " + "left join ej.faktorG fg " + "left join ej.faktorH fh "
+ "left join ej.faktorI fi " + "left join ej.faktorJ fj " + "left join ej.faktorK fk "
+ "left join ej.faktorL fl " + "where ej.statusEnabled is true "
+ "order by j.namaJabatan, ej.tahun || '-' || ej.bulan")
List<Map<String, Object>> findAllEvaluasiJabatan();
}

View File

@ -52,4 +52,12 @@ public interface JabatanDao extends PagingAndSortingRepository<Jabatan, Integer>
List<Map<String, Object>> checkNamaJabatan(@Param("namaJabatan") String namaJabatan,
@Param("jenisJabatanId") Integer jenisJabatanId);
@Query("select new Map(j.id as id,j.namaJabatan as namaJabatan,"
+ "min(nj.nilaiTerendah) as nilaiTerendah,max(nj.nilaiTertinggi) as nilaiTertinggi) "
+ "from Jabatan j, NilaiKelompokJabatan nj " + "left join nj.kelompokJabatan kj "
+ "where j.kelompokJabatanId = kj.id " + "and j.statusEnabled is true " + "and kj.statusEnabled is true "
+ "and nj.statusEnabled is true " + "and j.kdJabatan = 'ANJAB' " + "group by j.id, j.namaJabatan "
+ "order by j.namaJabatan")
List<Map<String, Object>> listJabatanAnjab();
}

View File

@ -20,6 +20,11 @@ public interface EvaluasiJabatanService {
Map<String, Object> findPegawaiByTahun(Integer tahun, Integer idPegawai);
Map<String, Object> hitungPoinEvaluasi(EvaluasiJabatanVO vo);
Map<String, Object> findEvaluasiJabatanTahunBulan(Integer tahun, String bulan);
Map<String, Object> findEvaluasiJabatanTahun(Integer tahun);
List<Map<String, Object>> findAllEvaluasiJabatan();
}

View File

@ -16,6 +16,8 @@ public interface JabatanService extends BaseVoService<Jabatan, JabatanVO, Intege
List<Map<String, Object>> getJabatanStruktural();
List<Map<String, Object>> getListJabatanFungsionalStruktural();
List<Map<String, Object>> getListJabatanAnjab();
List<Map<String, Object>> getJabatanByJenisJabatan(Integer idJenisJabatan);

View File

@ -28,7 +28,6 @@ import com.jasamedika.medifirst2000.util.JsonUtil;
import com.jasamedika.medifirst2000.vo.EvaluasiJabatanVO;
import com.jasamedika.medifirst2000.vo.FaktorEvaluasiVO;
import com.jasamedika.medifirst2000.vo.JabatanVO;
import com.jasamedika.medifirst2000.vo.NilaiKelompokJabatanVO;
import com.jasamedika.medifirst2000.vo.PegawaiVO;
import com.jasamedika.medifirst2000.vo.RuanganVO;
@ -56,9 +55,6 @@ public class EvaluasiJabatanServiceImpl extends BaseVoServiceImpl implements Eva
@Autowired
private BaseConverterImpl<JabatanVO, Jabatan> jabatanConverter;
@Autowired
private BaseConverterImpl<NilaiKelompokJabatanVO, NilaiKelompokJabatan> nilaiKelompokJabatanConverter;
@Autowired
private EvaluasiJabatanDao evaluasiJabatanDao;
@ -75,20 +71,23 @@ public class EvaluasiJabatanServiceImpl extends BaseVoServiceImpl implements Eva
model.setBulan(vo.getBulan());
model.setTahun(vo.getTahun());
model.setTotalNilai(vo.getTotalNilai());
// SET DATA JABATAN
model.setJabatan(jabatanConverter.transferVOToModel(vo.getJabatan(), new Jabatan()));
// SET GRADE
model.setGrade(nilaiKelompokJabatanConverter.transferVOToModel(vo.getGrade(), new NilaiKelompokJabatan()));
// SET DATA PEGAWAI
if (CommonUtil.isNotNullOrEmpty(vo.getPegawai())) {
model.setPegawai(pegawaiConverter.transferVOToModel(vo.getPegawai(), new Pegawai()));
// Ambil Cek nilai dari grade yang didapat
NilaiKelompokJabatan nilaiKelompokJabatan = getGrade(model.getJabatan().getId(), vo.getTotalNilai());
}
// Ambil Cek nilai dari grade yang didapat
// NilaiKelompokJabatan nilaiKelompokJabatan = getGrade(vo.getJabatan().getId(), vo.getTotalNilai());
// SET GRADE
NilaiKelompokJabatan nilaiKelompokJabatan = evaluasiJabatanDao
.findDetailKelompokJabatan(vo.getJabatan().getId(), vo.getTotalNilai().intValue());
model.setGrade(nilaiKelompokJabatan);
// SET DATA RUANGAN
if (CommonUtil.isNotNullOrEmpty(vo.getRuangan())) {
model.setRuangan(ruanganConverter.transferVOToModel(vo.getRuangan(), new Ruangan()));
@ -525,4 +524,13 @@ public class EvaluasiJabatanServiceImpl extends BaseVoServiceImpl implements Eva
return result;
}
@Override
public List<Map<String, Object>> findAllEvaluasiJabatan() {
List<Map<String, Object>> result = new ArrayList<>();
result = evaluasiJabatanDao.findAllEvaluasiJabatan();
return result;
}
}

View File

@ -229,5 +229,14 @@ public class JabatanServiceImpl extends BaseVoServiceImpl implements JabatanServ
return result;
}
@Override
public List<Map<String, Object>> getListJabatanAnjab() {
List<Map<String, Object>> result = new ArrayList<>();
result = jabatanDao.listJabatanAnjab();
return result;
}
}

View File

@ -92,7 +92,7 @@ public class JabatanController extends LocaleController<JabatanVO> implements IB
return RestUtil.getJsonHttptatus(HttpStatus.NOT_ACCEPTABLE);
}
@RequestMapping(value = "/update-jabatan-false/", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<String> editFalseVO(@Valid @RequestBody JabatanVO vo) {
try {
@ -169,11 +169,12 @@ public class JabatanController extends LocaleController<JabatanVO> implements IB
}
return RestUtil.getJsonResponse(result, HttpStatus.OK);
}
@RequestMapping(value = "/get-list-jabatan", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<List<Map<String, Object>>> getAllJabatanByJenisJabatan(@RequestParam(value = "idJenisJabatan", required = true) Integer idJenisJabatan,
public ResponseEntity<List<Map<String, Object>>> getAllJabatanByJenisJabatan(
@RequestParam(value = "idJenisJabatan", required = true) Integer idJenisJabatan,
HttpServletRequest request) {
List<Map<String, Object>> result = new ArrayList<Map<String,Object>>();
List<Map<String, Object>> result = new ArrayList<Map<String, Object>>();
try {
result = jabatanService.getJabatanByJenisJabatan(idJenisJabatan);
@ -190,12 +191,11 @@ public class JabatanController extends LocaleController<JabatanVO> implements IB
public ResponseEntity<String> deleteVO(Integer id) {
return null;
}
@RequestMapping(value = "/validate-nama-jabatan/", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Map<String, Object>> validateNamaJabatan(HttpServletRequest request,
@RequestParam(value = "namaJabatan", required = true) String namaJabatan,
@RequestParam(value = "idJenisJabatan", required = true) Integer idJenisJabatan
) {
@RequestParam(value = "idJenisJabatan", required = true) Integer idJenisJabatan) {
try {
Map<String, Object> result = jabatanService.validateNamaJabatan(namaJabatan, idJenisJabatan);
@ -211,4 +211,19 @@ public class JabatanController extends LocaleController<JabatanVO> implements IB
}
}
@RequestMapping(value = "/get-list-jabatan-anjab", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<List<Map<String, Object>>> getAllJabatanAnjab(HttpServletRequest request) {
List<Map<String, Object>> result = new ArrayList<Map<String, Object>>();
try {
result = jabatanService.getListJabatanAnjab();
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
} catch (Exception e) {
e.printStackTrace();
}
return RestUtil.getJsonResponse(result, HttpStatus.OK);
}
}

View File

@ -376,7 +376,7 @@ public class SdmController extends LocaleController<AkunVO> {
private MasterEvaluasiJabatanService MasterEvaluasiJabatanService;
@Autowired
private EvaluasiJabatanService EvaluasiJabatanService;
private EvaluasiJabatanService evaluasiJabatanService;
@Autowired
private SimulasiPendapatanService simulasiPendapatanService;
@ -2102,7 +2102,7 @@ public class SdmController extends LocaleController<AkunVO> {
public ResponseEntity<Map<String, Object>> hitungGradeEvaluasiJabatan(@Valid @RequestBody EvaluasiJabatanVO vo,
HttpServletRequest request) {
try {
Map<String, Object> result = EvaluasiJabatanService.hitungPoinEvaluasi(vo);
Map<String, Object> result = evaluasiJabatanService.hitungPoinEvaluasi(vo);
if (null != result)
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
@ -2150,7 +2150,7 @@ public class SdmController extends LocaleController<AkunVO> {
public ResponseEntity<Map<String, Object>> saveEvaluasiJabatan(@Valid @RequestBody EvaluasiJabatanVO vo,
HttpServletRequest request) {
try {
Map<String, Object> result = EvaluasiJabatanService.saveEvaluasiJabatan(vo);
Map<String, Object> result = evaluasiJabatanService.saveEvaluasiJabatan(vo);
if (null != result)
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
@ -2173,7 +2173,7 @@ public class SdmController extends LocaleController<AkunVO> {
HttpServletRequest request) throws ParseException {
Map<String, Object> result = null;
try {
result = EvaluasiJabatanService.findEvaluasiJabatan(tahun, bulan, ruangan);
result = evaluasiJabatanService.findEvaluasiJabatan(tahun, bulan, ruangan);
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
} catch (Exception e) {
@ -2187,7 +2187,7 @@ public class SdmController extends LocaleController<AkunVO> {
HttpServletRequest request) throws ParseException {
Map<String, Object> result = null;
try {
result = EvaluasiJabatanService.CountEvaluasi(tahun);
result = evaluasiJabatanService.CountEvaluasi(tahun);
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
} catch (Exception e) {
@ -2201,7 +2201,7 @@ public class SdmController extends LocaleController<AkunVO> {
HttpServletRequest request) throws ParseException {
Map<String, Object> result = null;
try {
result = EvaluasiJabatanService.findPegawaiByTahun(tahun);
result = evaluasiJabatanService.findPegawaiByTahun(tahun);
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
} catch (Exception e) {
@ -2216,7 +2216,7 @@ public class SdmController extends LocaleController<AkunVO> {
HttpServletRequest request) throws ParseException {
Map<String, Object> result = null;
try {
result = EvaluasiJabatanService.findPegawaiByTahun(tahun, idPegawai);
result = evaluasiJabatanService.findPegawaiByTahun(tahun, idPegawai);
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
} catch (Exception e) {
@ -4068,7 +4068,7 @@ public class SdmController extends LocaleController<AkunVO> {
@RequestParam(value = "bulan", required = false) String bulan, HttpServletRequest request) {
Map<String, Object> result = null;
try {
result = EvaluasiJabatanService.findEvaluasiJabatanTahun(tahun);
result = evaluasiJabatanService.findEvaluasiJabatanTahun(tahun);
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
} catch (Exception e) {
@ -5725,4 +5725,23 @@ public class SdmController extends LocaleController<AkunVO> {
}
}
@RequestMapping(value = "/get-all-evaluasi-jabatan", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<List<Map<String, Object>>> getAllEvaluasiJabatan(HttpServletRequest request) {
try {
List<Map<String, Object>> result = evaluasiJabatanService.findAllEvaluasiJabatan();
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 all 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 all evaluasi jabatan", jse.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage);
}
}
}