- penghapusan konstanta bobot jenis indikator di dashboard pencatatan kinerja
- perbaikan sorting daftar indikator di dashboard pencatatan kinerja - perbaikan grouping jenis tindakan di menu verifikasi pencatatan kinerja harian - pembuatan service widget dashboard kinerja
This commit is contained in:
parent
3d0d6e758a
commit
4e573ae881
@ -285,10 +285,6 @@ public class Master {
|
||||
public static final class Remunerasi {
|
||||
public static final Integer[] JENIS_INDIKATOR = { 1, 2, 3 };
|
||||
|
||||
public static final Double BOBOT_KUANTITAS = 40.0;
|
||||
public static final Double BOBOT_KUALITAS = 30.0;
|
||||
public static final Double BOBOT_PERILAKU = 30.0;
|
||||
|
||||
public static final Double IKI_STANDAR = 1.0;
|
||||
public static final Double IKU = 1.0;
|
||||
|
||||
|
||||
@ -81,7 +81,7 @@ public interface LogbookKinerjaDao extends PagingAndSortingRepository<LogbookKin
|
||||
+ "and mj.jabatanId = jb.id " + "and lk.statusEnabled is true " + "and ik.statusEnabled is true "
|
||||
+ "and lk.statusVerifikasi is true " + "and ik.statusVerifikasi is true " + "and si.statusEnabled is true "
|
||||
+ "and mj.statusEnabled is true " + "and lk.pegawaiId = :pegawaiId " + "and lk.jabatanId = :jabatanId "
|
||||
+ "and to_char(lk.bulan,'yyyy-MM') = :bulan")
|
||||
+ "and to_char(lk.bulan,'yyyy-MM') = :bulan " + "order by ik.jenisIndikator, ik.namaIndikator")
|
||||
List<Map<String, Object>> findLogbookKinerja(@Param("pegawaiId") Integer idPegawai,
|
||||
@Param("jabatanId") Integer idJabatan, @Param("bulan") String bulan);
|
||||
|
||||
|
||||
@ -14,7 +14,9 @@ import com.jasamedika.medifirst2000.entities.LogbookKinerjaDetail;
|
||||
public interface LogbookKinerjaDetailDao extends PagingAndSortingRepository<LogbookKinerjaDetail, String> {
|
||||
|
||||
String strGetWR = "select new Map(lkh.noRec as logbookNoRec," + "lkd.noRec as noRec,"
|
||||
+ "ikm.id as indikatorId,ikm.namaIndikator as namaIndikator,"
|
||||
+ "ikm.id as indikatorId,ikm.namaIndikator as namaIndikator," + "ikm.jenisIndikator as jenisIndikatorId,"
|
||||
+ "(case when ikm.jenisIndikator = 1 then 'Kuantitas' " + "when ikm.jenisIndikator = 2 then 'Kualitas' "
|
||||
+ "when ikm.jenisIndikator = 3 then 'Perilaku' end) as jenisIndikator,"
|
||||
+ "lkd.namaKegiatan as namaKegiatan,lkd.capaian as hasil,"
|
||||
+ "si.id as satuanId,si.satuanIndikator as satuanIndikator," + "lkd.catatan as catatan,"
|
||||
+ "lkd.tanggalKegiatan as tglKegiatan,"
|
||||
|
||||
@ -20,8 +20,6 @@ public interface BobotJenisIndikatorService extends BaseVoService<BobotJenisIndi
|
||||
|
||||
public List<Map<String, Object>> findAllBobotJenis(Long periode, Integer idKelompokJabatan);
|
||||
|
||||
public List<Double> findBobotJenisJabatan(Long periode, Integer idJabatan);
|
||||
|
||||
public List<Map<String, Object>> findBobotJenis(Long periode, Integer idjenisIndikator, Integer idKelompokJabatan);
|
||||
|
||||
public Map<String, Object> findBobotJenis(Long tglPembaharuanData) throws ParseException;
|
||||
|
||||
@ -53,5 +53,9 @@ public interface LogbookKinerjaService extends BaseVoService<LogbookKinerja, Log
|
||||
Integer idPegawai) throws JpaSystemException;
|
||||
|
||||
public void autoVerifLogbookJamKerjaDokter(Date bulan);
|
||||
|
||||
public List<Double> findBobotJenisJabatan(Long periode, Integer idJabatan);
|
||||
|
||||
List<Map<String, Object>> findJabatanKontrakVerifKinerja(Integer idPegawai, Integer idPegawaiLogin);
|
||||
|
||||
}
|
||||
|
||||
@ -142,8 +142,6 @@ public interface PegawaiService extends BaseVoService<Pegawai, PegawaiVO, Intege
|
||||
|
||||
List<Map<String, Object>> findJabatanByPegawai(Integer idPegawai);
|
||||
|
||||
List<Map<String, Object>> findJabatanKontrakVerifKinerja(Integer idPegawai, Integer idPegawaiLogin);
|
||||
|
||||
List<Map<String, Object>> findAllPangkatGolongan();
|
||||
|
||||
Map<String, Object> findPegawaiDetailById(Integer idPegawai);
|
||||
|
||||
@ -291,36 +291,6 @@ public class BobotJenisIndikatorServiceImpl extends BaseVoServiceImpl implements
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Double> findBobotJenisJabatan(Long periode, Integer idJabatan) {
|
||||
List<Double> result = new ArrayList<>();
|
||||
|
||||
List<Map<String, Object>> data = new ArrayList<>();
|
||||
List<Date> bulanBerlaku = new ArrayList<>();
|
||||
|
||||
DateFormat df = new SimpleDateFormat("yyyy-MM");
|
||||
|
||||
bulanBerlaku = bobotJenisIndikatorDao.findBulanBerlaku(df.format(new Date(periode)), idJabatan);
|
||||
if (CommonUtil.isNullOrEmpty(bulanBerlaku)) {
|
||||
bulanBerlaku = bobotJenisIndikatorDao.findBulanBerlaku(df.format(new Date(periode)));
|
||||
}
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(bulanBerlaku)) {
|
||||
data = bobotJenisIndikatorDao.findBobotJenisKontrak(bulanBerlaku.get(0), idJabatan);
|
||||
if (CommonUtil.isNullOrEmpty(data) || data.size() != 3) {
|
||||
data = bobotJenisIndikatorDao.findBobotJenisKontrak(bulanBerlaku.get(0));
|
||||
}
|
||||
}
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(data)) {
|
||||
for (Map<String, Object> map : data) {
|
||||
result.add(Double.parseDouble(map.get("persentase").toString()));
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> findBobotJenis(Long periode, Integer idjenisIndikator, Integer idKelompokJabatan) {
|
||||
List<Map<String, Object>> result = new ArrayList<>();
|
||||
|
||||
@ -26,6 +26,7 @@ import org.springframework.transaction.annotation.Transactional;
|
||||
import com.jasamedika.medifirst2000.constants.Master;
|
||||
import com.jasamedika.medifirst2000.converter.BaseConverterImpl;
|
||||
import com.jasamedika.medifirst2000.dao.AnggaranRemunerasiDao;
|
||||
import com.jasamedika.medifirst2000.dao.BobotJenisIndikatorDao;
|
||||
import com.jasamedika.medifirst2000.dao.IkiDanRemunerasiDao;
|
||||
import com.jasamedika.medifirst2000.dao.IndikatorKinerjaDao;
|
||||
import com.jasamedika.medifirst2000.dao.IndikatorKinerjaDetailDao;
|
||||
@ -109,6 +110,9 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
@Autowired
|
||||
private MapPegawaiJabatanToUnitKerjaDao mapPegawaiJabatanToUnitKerjaDao;
|
||||
|
||||
@Autowired
|
||||
private BobotJenisIndikatorDao bobotJenisIndikatorDao;
|
||||
|
||||
@Override
|
||||
public LogbookKinerjaVO add(LogbookKinerjaVO vo) throws JpaSystemException, ServiceVOException {
|
||||
Pegawai pegawai = pegawaiConverter.transferVOToModel(vo.getPegawai(), new Pegawai());
|
||||
@ -450,6 +454,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
public Map<String, Object> findLogbookKinerja(Integer idPegawai, Integer idJabatan, Long bulan)
|
||||
throws JpaSystemException {
|
||||
Map<String, Object> result = new HashMap<>();
|
||||
List<Map<String, Object>> resData = new ArrayList<>();
|
||||
List<Map<String, Object>> listJenisIndikator = new ArrayList<>();
|
||||
DateFormat mf = new SimpleDateFormat("yyyy-MM");
|
||||
DateFormat yf = new SimpleDateFormat("yyyy");
|
||||
@ -470,106 +475,128 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
DecimalFormat df = new DecimalFormat("0.00");
|
||||
df.setRoundingMode(RoundingMode.HALF_UP);
|
||||
|
||||
List<Map<String, Object>> rs = logbookKinerjaDao.findLogbookKinerja(idPegawai, idJabatan,
|
||||
mf.format(new Date(bulan)));
|
||||
Map<String, Object> anggaran = findAnggaranRemunerasi(idPegawai, idJabatan, yf.format(new Date(bulan)));
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(rs) && rs.size() > 0) {
|
||||
nilaiJabatan = Double.valueOf(rs.get(0).get("nilaiJabatan").toString());
|
||||
}
|
||||
if (CommonUtil.isNotNullOrEmpty(anggaran)) {
|
||||
pir = Double.valueOf(anggaran.get("pir").toString());
|
||||
plafonGaji = Double.valueOf(anggaran.get("plafonGaji").toString());
|
||||
plafonInsentif = Double.valueOf(anggaran.get("plafonInsentif").toString());
|
||||
List<Integer> listIdJabatan = new ArrayList<>();
|
||||
if (CommonUtil.isNotNullOrEmpty(idJabatan)) {
|
||||
listIdJabatan.add(idJabatan);
|
||||
} else {
|
||||
List<Map<String, Object>> listJab = findJabatanKontrakVerifKinerja(idPegawai, idPegawai);
|
||||
for (Map<String, Object> jab : listJab) {
|
||||
listIdJabatan.add(Integer.valueOf(jab.get("id").toString()));
|
||||
}
|
||||
}
|
||||
|
||||
for (String ji : Arrays.asList(Master.JENIS_INDIKATOR)) {
|
||||
double hasil = 0.0;
|
||||
List<Map<String, Object>> data = new ArrayList<>();
|
||||
Map<String, Object> jenisIndikator = new HashMap<>();
|
||||
jenisIndikator.put("jenisIndikator", ji);
|
||||
for (Map<String, Object> map : rs) {
|
||||
if (map.get("jenisIndikator").equals(ji)) {
|
||||
if (map.get("idIndikator").equals(Master.IndikatorKinerja.PELAYANAN_MEDIS_JAM_KERJA)
|
||||
&& Double.valueOf(map.get("fragCapaian").toString()).equals(0.0)) {
|
||||
List<Map<String, Object>> logbookDokter = findLogbookJamKerjaDokter(idPegawai, bulan);
|
||||
double capaian = 0.0;
|
||||
for (Map<String, Object> ld : logbookDokter) {
|
||||
capaian += Double.valueOf(ld.get("tSkor").toString());
|
||||
for (Integer idJab : listIdJabatan) {
|
||||
Map<String, Object> rsMap = new HashMap<>();
|
||||
|
||||
List<Double> persenIndikator = findBobotJenisJabatan(bulan, idJab);
|
||||
|
||||
List<Map<String, Object>> rs = logbookKinerjaDao.findLogbookKinerja(idPegawai, idJab,
|
||||
mf.format(new Date(bulan)));
|
||||
Map<String, Object> anggaran = findAnggaranRemunerasi(idPegawai, idJab, yf.format(new Date(bulan)));
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(rs) && rs.size() > 0) {
|
||||
nilaiJabatan = Double.valueOf(rs.get(0).get("nilaiJabatan").toString());
|
||||
}
|
||||
if (CommonUtil.isNotNullOrEmpty(anggaran)) {
|
||||
pir = Double.valueOf(anggaran.get("pir").toString());
|
||||
plafonGaji = Double.valueOf(anggaran.get("plafonGaji").toString());
|
||||
plafonInsentif = Double.valueOf(anggaran.get("plafonInsentif").toString());
|
||||
}
|
||||
|
||||
for (String ji : Arrays.asList(Master.JENIS_INDIKATOR)) {
|
||||
double hasil = 0.0;
|
||||
List<Map<String, Object>> data = new ArrayList<>();
|
||||
Map<String, Object> jenisIndikator = new HashMap<>();
|
||||
jenisIndikator.put("jenisIndikator", ji);
|
||||
for (Map<String, Object> map : rs) {
|
||||
if (map.get("jenisIndikator").equals(ji)) {
|
||||
if (map.get("idIndikator").equals(Master.IndikatorKinerja.PELAYANAN_MEDIS_JAM_KERJA)
|
||||
&& Double.valueOf(map.get("fragCapaian").toString()).equals(0.0)) {
|
||||
List<Map<String, Object>> logbookDokter = findLogbookJamKerjaDokter(idPegawai, bulan);
|
||||
double capaian = 0.0;
|
||||
for (Map<String, Object> ld : logbookDokter) {
|
||||
capaian += Double.valueOf(ld.get("tSkor").toString());
|
||||
}
|
||||
String fragCapaian = df.format(capaian / Double.valueOf(map.get("target").toString()));
|
||||
hasil += capaian / Double.valueOf(map.get("target").toString())
|
||||
* Double.valueOf(map.get("bobot").toString());
|
||||
map.put("fragCapaian", Double.parseDouble(fragCapaian));
|
||||
map.put("persenCapaianDibulatkan",
|
||||
new BigDecimal(Double.valueOf(map.get("fragCapaian").toString()) * 100).setScale(2,
|
||||
RoundingMode.HALF_UP));
|
||||
data.add(map);
|
||||
} else {
|
||||
hasil += Double.parseDouble(df.format(Double.valueOf(map.get("fragCapaian").toString())))
|
||||
* Double.valueOf(map.get("bobot").toString());
|
||||
map.put("persenCapaianDibulatkan",
|
||||
new BigDecimal(Double.valueOf(map.get("fragCapaian").toString()) * 100).setScale(2,
|
||||
RoundingMode.HALF_UP));
|
||||
data.add(map);
|
||||
}
|
||||
String fragCapaian = df.format(capaian / Double.valueOf(map.get("target").toString()));
|
||||
hasil += capaian / Double.valueOf(map.get("target").toString())
|
||||
* Double.valueOf(map.get("bobot").toString());
|
||||
map.put("fragCapaian", Double.parseDouble(fragCapaian));
|
||||
map.put("persenCapaianDibulatkan",
|
||||
new BigDecimal(Double.valueOf(map.get("fragCapaian").toString()) * 100).setScale(2,
|
||||
RoundingMode.HALF_UP));
|
||||
data.add(map);
|
||||
} else {
|
||||
hasil += Double.parseDouble(df.format(Double.valueOf(map.get("fragCapaian").toString())))
|
||||
* Double.valueOf(map.get("bobot").toString());
|
||||
map.put("persenCapaianDibulatkan",
|
||||
new BigDecimal(Double.valueOf(map.get("fragCapaian").toString()) * 100).setScale(2,
|
||||
RoundingMode.HALF_UP));
|
||||
data.add(map);
|
||||
}
|
||||
}
|
||||
|
||||
if (ji.equals("Kuantitas")) {
|
||||
totAllPersen += hasil;
|
||||
jenisIndikator.put("persenCapaian", (100.0 / persenIndikator.get(0)) * hasil);
|
||||
jenisIndikator.put("persenCapaianDibulatkan",
|
||||
new BigDecimal(Double.valueOf((100.0 / persenIndikator.get(0)) * hasil)).setScale(2,
|
||||
RoundingMode.HALF_UP));
|
||||
} else if (ji.equals("Kualitas")) {
|
||||
totAllPersen += hasil;
|
||||
jenisIndikator.put("persenCapaian", (100.0 / persenIndikator.get(1)) * hasil);
|
||||
jenisIndikator.put("persenCapaianDibulatkan",
|
||||
new BigDecimal(Double.valueOf((100.0 / persenIndikator.get(1)) * hasil)).setScale(2,
|
||||
RoundingMode.HALF_UP));
|
||||
} else if (ji.equals("Perilaku")) {
|
||||
totAllPersen += hasil;
|
||||
jenisIndikator.put("persenCapaian", (100.0 / persenIndikator.get(2)) * hasil);
|
||||
jenisIndikator.put("persenCapaianDibulatkan",
|
||||
new BigDecimal(Double.valueOf((100.0 / persenIndikator.get(2)) * hasil)).setScale(2,
|
||||
RoundingMode.HALF_UP));
|
||||
}
|
||||
jenisIndikator.put("data", data);
|
||||
|
||||
listJenisIndikator.add(jenisIndikator);
|
||||
}
|
||||
|
||||
if (ji.equals("Kuantitas")) {
|
||||
totAllPersen += hasil;
|
||||
jenisIndikator.put("persenCapaian", (100.0 / Master.Remunerasi.BOBOT_KUANTITAS) * hasil);
|
||||
jenisIndikator.put("persenCapaianDibulatkan",
|
||||
new BigDecimal(Double.valueOf((100.0 / Master.Remunerasi.BOBOT_KUANTITAS) * hasil)).setScale(2,
|
||||
RoundingMode.HALF_UP));
|
||||
} else if (ji.equals("Kualitas")) {
|
||||
totAllPersen += hasil;
|
||||
jenisIndikator.put("persenCapaian", (100.0 / Master.Remunerasi.BOBOT_KUALITAS) * hasil);
|
||||
jenisIndikator.put("persenCapaianDibulatkan",
|
||||
new BigDecimal(Double.valueOf((100.0 / Master.Remunerasi.BOBOT_KUALITAS) * hasil)).setScale(2,
|
||||
RoundingMode.HALF_UP));
|
||||
} else if (ji.equals("Perilaku")) {
|
||||
totAllPersen += hasil;
|
||||
jenisIndikator.put("persenCapaian", (100.0 / Master.Remunerasi.BOBOT_PERILAKU) * hasil);
|
||||
jenisIndikator.put("persenCapaianDibulatkan",
|
||||
new BigDecimal(Double.valueOf((100.0 / Master.Remunerasi.BOBOT_PERILAKU) * hasil)).setScale(2,
|
||||
RoundingMode.HALF_UP));
|
||||
Double iki = 0.0;
|
||||
Map<String, Object> acuanIndeks = tabelAcuanIndeksIKIDao.findIKI(totAllPersen);
|
||||
if (CommonUtil.isNotNullOrEmpty(acuanIndeks)) {
|
||||
iki = Double.valueOf(acuanIndeks.get("indeks").toString());
|
||||
}
|
||||
jenisIndikator.put("data", data);
|
||||
|
||||
listJenisIndikator.add(jenisIndikator);
|
||||
double targetRupiahP1 = nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir * Master.Remunerasi.PERSEN_P1;
|
||||
double targetRupiahP2 = nilaiJabatan * Master.Remunerasi.IKU * Master.Remunerasi.IKI_STANDAR * pir
|
||||
* Master.Remunerasi.PERSEN_P2;
|
||||
|
||||
double capaianRupiahP1 = nilaiJabatan * iki * pir * Master.Remunerasi.PERSEN_P1;
|
||||
double capaianRupiahP2 = nilaiJabatan * Master.Remunerasi.IKU * iki * pir * Master.Remunerasi.PERSEN_P2;
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(idJabatan)) {
|
||||
rsMap.put("listJenisIndikator", listJenisIndikator);
|
||||
|
||||
rsMap.put("plafonP1", kursINA.format(plafonGaji).toString());
|
||||
rsMap.put("rupiahTargetP1", targetRupiahP1);
|
||||
rsMap.put("rupiahTargetFormatP1", kursINA.format(targetRupiahP1).toString());
|
||||
rsMap.put("rupiahCapaianP1", capaianRupiahP1);
|
||||
rsMap.put("rupiahCapaianP1Format", kursINA.format(capaianRupiahP1).toString());
|
||||
|
||||
rsMap.put("plafonP2", kursINA.format(plafonInsentif).toString());
|
||||
rsMap.put("rupiahTargetP2", targetRupiahP2);
|
||||
rsMap.put("rupiahTargetFormatP2", kursINA.format(targetRupiahP2).toString());
|
||||
rsMap.put("rupiahCapaianP2", capaianRupiahP2);
|
||||
rsMap.put("rupiahCapaianP2Format", kursINA.format(capaianRupiahP2).toString());
|
||||
}
|
||||
|
||||
rsMap.put("persenCapaian", totAllPersen);
|
||||
rsMap.put("persenCapaianDibulatkan",
|
||||
new BigDecimal(Double.valueOf(totAllPersen)).setScale(2, RoundingMode.HALF_UP));
|
||||
|
||||
resData.add(rsMap);
|
||||
}
|
||||
|
||||
Double iki = 0.0;
|
||||
Map<String, Object> acuanIndeks = tabelAcuanIndeksIKIDao.findIKI(totAllPersen);
|
||||
if (CommonUtil.isNotNullOrEmpty(acuanIndeks)) {
|
||||
iki = Double.valueOf(acuanIndeks.get("indeks").toString());
|
||||
}
|
||||
|
||||
double targetRupiahP1 = nilaiJabatan * Master.Remunerasi.IKI_STANDAR * pir * Master.Remunerasi.PERSEN_P1;
|
||||
double targetRupiahP2 = nilaiJabatan * Master.Remunerasi.IKU * Master.Remunerasi.IKI_STANDAR * pir
|
||||
* Master.Remunerasi.PERSEN_P2;
|
||||
|
||||
double capaianRupiahP1 = nilaiJabatan * iki * pir * Master.Remunerasi.PERSEN_P1;
|
||||
double capaianRupiahP2 = nilaiJabatan * Master.Remunerasi.IKU * iki * pir * Master.Remunerasi.PERSEN_P2;
|
||||
|
||||
result.put("listJenisIndikator", listJenisIndikator);
|
||||
|
||||
result.put("plafonP1", kursINA.format(plafonGaji).toString());
|
||||
result.put("rupiahTargetP1", targetRupiahP1);
|
||||
result.put("rupiahTargetFormatP1", kursINA.format(targetRupiahP1).toString());
|
||||
result.put("rupiahCapaianP1", capaianRupiahP1);
|
||||
result.put("rupiahCapaianP1Format", kursINA.format(capaianRupiahP1).toString());
|
||||
|
||||
result.put("plafonP2", kursINA.format(plafonInsentif).toString());
|
||||
result.put("rupiahTargetP2", targetRupiahP2);
|
||||
result.put("rupiahTargetFormatP2", kursINA.format(targetRupiahP2).toString());
|
||||
result.put("rupiahCapaianP2", capaianRupiahP2);
|
||||
result.put("rupiahCapaianP2Format", kursINA.format(capaianRupiahP2).toString());
|
||||
|
||||
result.put("persenCapaian", totAllPersen);
|
||||
result.put("persenCapaianDibulatkan",
|
||||
new BigDecimal(Double.valueOf(totAllPersen)).setScale(2, RoundingMode.HALF_UP));
|
||||
result.put("data", resData);
|
||||
|
||||
return result;
|
||||
}
|
||||
@ -2245,4 +2272,51 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Double> findBobotJenisJabatan(Long periode, Integer idJabatan) {
|
||||
List<Double> result = new ArrayList<>();
|
||||
|
||||
List<Map<String, Object>> data = new ArrayList<>();
|
||||
List<Date> bulanBerlaku = new ArrayList<>();
|
||||
|
||||
DateFormat df = new SimpleDateFormat("yyyy-MM");
|
||||
|
||||
bulanBerlaku = bobotJenisIndikatorDao.findBulanBerlaku(df.format(new Date(periode)), idJabatan);
|
||||
if (CommonUtil.isNullOrEmpty(bulanBerlaku)) {
|
||||
bulanBerlaku = bobotJenisIndikatorDao.findBulanBerlaku(df.format(new Date(periode)));
|
||||
}
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(bulanBerlaku)) {
|
||||
data = bobotJenisIndikatorDao.findBobotJenisKontrak(bulanBerlaku.get(0), idJabatan);
|
||||
if (CommonUtil.isNullOrEmpty(data) || data.size() != 3) {
|
||||
data = bobotJenisIndikatorDao.findBobotJenisKontrak(bulanBerlaku.get(0));
|
||||
}
|
||||
}
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(data)) {
|
||||
for (Map<String, Object> map : data) {
|
||||
result.add(Double.parseDouble(map.get("persentase").toString()));
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> findJabatanKontrakVerifKinerja(Integer idPegawai, Integer idPegawaiLogin) {
|
||||
List<Map<String, Object>> result = mapPegawaiJabatanToUnitKerjaDao.findJabLvlUkAtasan(idPegawai);
|
||||
for (Map<String, Object> map : result) {
|
||||
if ((CommonUtil.isNotNullOrEmpty(map.get("atasanId")) && map.get("atasanId").equals(idPegawaiLogin))
|
||||
|| (CommonUtil.isNotNullOrEmpty(map.get("penilaiId"))
|
||||
&& map.get("penilaiId").equals(idPegawaiLogin))
|
||||
|| idPegawai.equals(idPegawaiLogin)) {
|
||||
map.put("isCariAkses", true);
|
||||
} else {
|
||||
map.put("isCariAkses", false);
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -1804,23 +1804,6 @@ public class PegawaiServiceImpl extends BaseVoServiceImpl implements PegawaiServ
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> findJabatanKontrakVerifKinerja(Integer idPegawai, Integer idPegawaiLogin) {
|
||||
List<Map<String, Object>> result = mapPegawaiJabatanToUnitKerjaDao.findJabLvlUkAtasan(idPegawai);
|
||||
for (Map<String, Object> map : result) {
|
||||
if ((CommonUtil.isNotNullOrEmpty(map.get("atasanId")) && map.get("atasanId").equals(idPegawaiLogin))
|
||||
|| (CommonUtil.isNotNullOrEmpty(map.get("penilaiId"))
|
||||
&& map.get("penilaiId").equals(idPegawaiLogin))
|
||||
|| idPegawai.equals(idPegawaiLogin)) {
|
||||
map.put("isCariAkses", true);
|
||||
} else {
|
||||
map.put("isCariAkses", false);
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> findAllPangkatGolongan() {
|
||||
List<Map<String, Object>> result = pangkatDao.getPangkatGolongan();
|
||||
|
||||
@ -962,6 +962,26 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
|
||||
}
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/widget-dashboard-kinerja", method = RequestMethod.GET)
|
||||
public ResponseEntity<Map<String, Object>> widgetDashboardKinerja(HttpServletRequest request,
|
||||
@RequestParam(value = "pegawaiId", required = true) Integer idPegawai,
|
||||
@RequestParam(value = "bulan", required = true) Long bulan) throws ParseException {
|
||||
try {
|
||||
Map<String, Object> result = logbookKinerjaService.findLogbookKinerja(idPegawai, null, bulan);
|
||||
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 widget dashboard 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 widget dashboard kinerja", jse.getMessage());
|
||||
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage());
|
||||
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage);
|
||||
}
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/get-catatan-kegiatan-harian", method = RequestMethod.GET)
|
||||
public ResponseEntity<List<Map<String, Object>>> getCatatanKegiatanHarian(HttpServletRequest request,
|
||||
@RequestParam(value = "pegawaiId", required = true) Integer idPegawai,
|
||||
@ -1183,7 +1203,7 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
|
||||
@RequestParam(value = "periode", required = true) Long periode,
|
||||
@RequestParam(value = "jabatanId", required = true) Integer idJabatan) throws ParseException {
|
||||
try {
|
||||
List<Double> result = bobotJenisIndikatorService.findBobotJenisJabatan(periode, idJabatan);
|
||||
List<Double> result = logbookKinerjaService.findBobotJenisJabatan(periode, idJabatan);
|
||||
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
|
||||
getMessage(MessageResource.LABEL_SUCCESS, request));
|
||||
return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage);
|
||||
|
||||
@ -39,6 +39,7 @@ import com.jasamedika.medifirst2000.exception.ServiceVOException;
|
||||
import com.jasamedika.medifirst2000.security.model.AppPermission;
|
||||
import com.jasamedika.medifirst2000.security.service.TokenAuthenticationService;
|
||||
import com.jasamedika.medifirst2000.service.KeluargaPegawaiService;
|
||||
import com.jasamedika.medifirst2000.service.LogbookKinerjaService;
|
||||
import com.jasamedika.medifirst2000.service.LoginUserService;
|
||||
import com.jasamedika.medifirst2000.service.MapPegawaiJabatanToUnitKerjaService;
|
||||
import com.jasamedika.medifirst2000.service.PegawaiJadwalKerjaService;
|
||||
@ -109,6 +110,9 @@ public class PegawaiController extends LocaleController<PegawaiVO> implements IB
|
||||
@Autowired
|
||||
private MapPegawaiJabatanToUnitKerjaService mapPegawaiJabatanToUnitKerjaService;
|
||||
|
||||
@Autowired
|
||||
private LogbookKinerjaService logbookKinerjaService;
|
||||
|
||||
@RequestMapping(value = "/get-all-dokter2", method = RequestMethod.GET)
|
||||
public ResponseEntity<List<PegawaiVO>> getAllDokter2(HttpServletRequest request) {
|
||||
try {
|
||||
@ -1303,7 +1307,7 @@ public class PegawaiController extends LocaleController<PegawaiVO> implements IB
|
||||
@RequestParam(value = "pegawaiLoginId") Integer idPegawaiLogin) {
|
||||
List<Map<String, Object>> result = new ArrayList<Map<String, Object>>();
|
||||
try {
|
||||
result = pegawaiService.findJabatanKontrakVerifKinerja(idPegawai, idPegawaiLogin);
|
||||
result = logbookKinerjaService.findJabatanKontrakVerifKinerja(idPegawai, idPegawaiLogin);
|
||||
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
|
||||
getMessage(MessageResource.LABEL_SUCCESS, request));
|
||||
} catch (Exception e) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user