- perbaikan pembulatan 2 desimal di dashboard pencatatan kinerja

- penambahan informasi satuan indikator di penilaian kinerja individu
This commit is contained in:
salmanoe 2021-06-28 11:45:42 +07:00
parent a46e4f3ed1
commit 38632dd8cc
3 changed files with 13 additions and 9 deletions

View File

@ -74,7 +74,7 @@ public interface LogbookKinerjaDao extends PagingAndSortingRepository<LogbookKin
+ "when ik.jenisIndikator = 3 then 'Perilaku' end) as jenisIndikator,"
+ "ik.id as idIndikator,ik.namaIndikator as namaIndikator,"
+ "si.id as satuanId,si.satuanIndikator as satuanIndikator,"
+ "lk.target as target,lk.capaian/lk.target as fragCapaian,lk.bobot as bobot) "
+ "lk.target as target,round(lk.capaian/lk.target, 2) as fragCapaian,lk.bobot as bobot) "
+ "from LogbookKinerja lk, MapPegawaiJabatanToUnitKerja mj " + "inner join lk.indikatorKinerja ik "
+ "inner join ik.satuanIndikator si " + "inner join lk.pegawai pg " + "inner join lk.jabatan jb "
+ "where lk.pegawaiId = mj.pegawaiId " + "and lk.jabatanId = mj.jabatanId " + "and mj.pegawaiId = pg.id "
@ -122,12 +122,14 @@ public interface LogbookKinerjaDao extends PagingAndSortingRepository<LogbookKin
@Query("select new Map(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,"
+ "ikm.id as indikatorId,ikm.namaIndikator as namaIndikator," + "lkt.bobot as bobot,"
+ "lkt.target as target," + "lkt.capaian as realisasi) " + "from LogbookKinerja lkt "
+ "inner join lkt.indikatorKinerja ikm "
+ "ikm.id as indikatorId,ikm.namaIndikator as namaIndikator,"
+ "si.id as satuanId,si.satuanIndikator as satuan," + "lkt.bobot as bobot," + "lkt.target as target,"
+ "lkt.capaian as realisasi) " + "from LogbookKinerja lkt "
+ "inner join lkt.indikatorKinerja ikm inner join ikm.satuanIndikator si "
+ "where lkt.statusEnabled is true and lkt.statusVerifikasi is true "
+ "and ikm.statusEnabled is true and ikm.statusVerifikasi is true " + "and lkt.pegawaiId = :pegawaiId "
+ "and lkt.jabatanId = :jabatanId " + "and to_char(lkt.bulan,'yyyy-MM') = :bulan")
+ "and ikm.statusEnabled is true and ikm.statusVerifikasi is true " + "and si.statusEnabled is true "
+ "and lkt.pegawaiId = :pegawaiId " + "and lkt.jabatanId = :jabatanId "
+ "and to_char(lkt.bulan,'yyyy-MM') = :bulan")
List<Map<String, Object>> findPenilaianKinerja(@Param("pegawaiId") Integer idPegawai,
@Param("jabatanId") Integer idJabatan, @Param("bulan") String bulan);

View File

@ -403,6 +403,9 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
DecimalFormat kursINA = (DecimalFormat) DecimalFormat.getCurrencyInstance();
kursINA.setDecimalFormatSymbols(formatRp);
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)));
@ -429,10 +432,10 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
for (Map<String, Object> ld : logbookDokter) {
capaian += Double.valueOf(ld.get("tSkor").toString());
}
double fragCapaian = capaian / Double.valueOf(map.get("target").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", fragCapaian);
map.put("fragCapaian", Double.parseDouble(fragCapaian));
map.put("persenCapaianDibulatkan",
new BigDecimal(Double.valueOf(map.get("fragCapaian").toString()) * 100).setScale(2,
RoundingMode.HALF_UP));

View File

@ -122,7 +122,6 @@ import com.jasamedika.medifirst2000.service.StatusMeninggalDuniaService;
import com.jasamedika.medifirst2000.service.StatusPegawaiService;
import com.jasamedika.medifirst2000.service.TahunUmrService;
import com.jasamedika.medifirst2000.service.TanggunganService;
import com.jasamedika.medifirst2000.service.TargetLayananService;
import com.jasamedika.medifirst2000.service.TipeKeanggotaanService;
import com.jasamedika.medifirst2000.service.TipeKoleksiService;
import com.jasamedika.medifirst2000.service.UnitKerjaPegawaiService;