Update LogbookKinerjaDetailService
Perbaikan service fungsi simpan total capaian saat verifikasi catatan kegiatan harian
This commit is contained in:
parent
536600138d
commit
57de829702
@ -48,24 +48,34 @@ public class LogbookKinerjaDetailServiceImpl extends BaseVoServiceImpl implement
|
||||
LogbookKinerjaDetail logbookKinerjaDetail = logbookKinerjaDetailConverter.transferVOToModel(vo,
|
||||
new LogbookKinerjaDetail());
|
||||
|
||||
/**
|
||||
* menghitung capaian indikator satuan yang harus dihitung secara
|
||||
* akumulatif
|
||||
*/
|
||||
if (vo.getStatusEnabled() && vo.getStatusVerifikasi()) {
|
||||
logbookKinerja.setCapaian(logbookKinerja.getCapaian() + vo.getCapaian());
|
||||
}
|
||||
|
||||
logbookKinerjaDetail.setLogbookKinerja(logbookKinerja);
|
||||
logbookKinerjaDetail.setTanggalKegiatan(new Date());
|
||||
|
||||
logbookKinerjaDao.save(logbookKinerja);
|
||||
|
||||
LogbookKinerjaDetail resultModel = logbookKinerjaDetailDao.save(logbookKinerjaDetail);
|
||||
|
||||
/**
|
||||
* menghitung capaian indikator satuan yang harus dihitung secara
|
||||
* rata-rata
|
||||
*/
|
||||
if (CommonUtil.isNotNullOrEmpty(resultModel)) {
|
||||
/**
|
||||
* menghitung capaian indikator satuan yang harus dihitung secara
|
||||
* akumulatif
|
||||
*/
|
||||
List<Map<String, Object>> dataSatuanJumlah = logbookKinerjaDetailDao.findSumCapaianByKontrak(
|
||||
vo.getLogbookKinerja().getNoRec(), Arrays.asList(Master.SatuanIndikator.PERCENTAGE));
|
||||
if (CommonUtil.isNotNullOrEmpty(dataSatuanJumlah)) {
|
||||
List<LogbookKinerja> models = new ArrayList<>();
|
||||
for (Map<String, Object> map : dataSatuanJumlah) {
|
||||
LogbookKinerja model = logbookKinerjaDao.findOne(map.get("logbookId").toString());
|
||||
model.setCapaian(Double.valueOf(map.get("sumCapaian").toString()));
|
||||
models.add(model);
|
||||
}
|
||||
logbookKinerjaDao.save(models);
|
||||
}
|
||||
|
||||
/**
|
||||
* menghitung capaian indikator satuan yang harus dihitung secara
|
||||
* rata-rata
|
||||
*/
|
||||
List<Map<String, Object>> dataSatuanRatarata = logbookKinerjaDetailDao.findAvgCapaianByKontrak(
|
||||
vo.getLogbookKinerja().getNoRec(), Arrays.asList(Master.SatuanIndikator.PERCENTAGE));
|
||||
if (CommonUtil.isNotNullOrEmpty(dataSatuanRatarata)) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user