Update logbook kinerja service
Prepare perhitungan target kuantitas dan kualitas dokter untuk otomatisasi kontrak kinerja
This commit is contained in:
parent
b09670e2c9
commit
3804590d35
@ -537,4 +537,8 @@ public interface MapPegawaiJabatanToUnitKerjaDao extends CrudRepository<MapPegaw
|
||||
Optional<Double> findByPegawaiAndJabatan(@Param("pegawaiId") Integer idPegawai,
|
||||
@Param("jabatanId") Integer idJabatan);
|
||||
|
||||
@Query("select distinct mj.pegawaiId " + "from MapPegawaiJabatanToUnitKerja mj "
|
||||
+ "where mj.jabatanId in (:listIdJabatan)")
|
||||
List<Integer> listIdPegawaiByAllJabatan(@Param("listIdJabatan") List<Integer> listIdJabatan);
|
||||
|
||||
}
|
||||
|
||||
@ -54,9 +54,9 @@ public interface LogbookKinerjaService extends BaseVoService<LogbookKinerja, Log
|
||||
public List<Map<String, Object>> findRekapPenilaianKinerja(Long bulan, Integer idUnitKerja, Integer idSubunitKerja,
|
||||
Integer idPegawai) throws JpaSystemException;
|
||||
|
||||
public void autoVerifLogbookJamKerjaDokter(Date bulan);
|
||||
|
||||
public void autoVerifKontrakJamKerjaDokter(Date bulan);
|
||||
|
||||
public void autoVerifLogbookJamKerjaDokter(Date bulan);
|
||||
|
||||
public List<SkorDokterVO> hitungTargetSkorLogbookDokter(String tahun) throws ParseException;
|
||||
|
||||
|
||||
@ -34,6 +34,7 @@ import com.jasamedika.medifirst2000.dao.BobotJenisIndikatorDao;
|
||||
import com.jasamedika.medifirst2000.dao.IkiDanRemunerasiDao;
|
||||
import com.jasamedika.medifirst2000.dao.IndikatorKinerjaDao;
|
||||
import com.jasamedika.medifirst2000.dao.IndikatorKinerjaDetailDao;
|
||||
import com.jasamedika.medifirst2000.dao.IndikatorKinerjaJabatanDao;
|
||||
import com.jasamedika.medifirst2000.dao.JabatanDao;
|
||||
import com.jasamedika.medifirst2000.dao.KalenderDao;
|
||||
import com.jasamedika.medifirst2000.dao.LogbookKinerjaDao;
|
||||
@ -165,6 +166,9 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
@Autowired
|
||||
private PelayananFarmakologiDao pelayananFarmakologiDao;
|
||||
|
||||
@Autowired
|
||||
private IndikatorKinerjaJabatanDao indikatorKinerjaJabatanDao;
|
||||
|
||||
@Override
|
||||
public LogbookKinerjaVO add(LogbookKinerjaVO vo) throws JpaSystemException, ServiceVOException {
|
||||
Pegawai pegawai = pegawaiConverter.transferVOToModel(vo.getPegawai(), new Pegawai());
|
||||
@ -3069,6 +3073,55 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void autoVerifKontrakJamKerjaDokter(Date bulan) {
|
||||
DateFormat yf = new SimpleDateFormat("yyyy");
|
||||
DateFormat mf = new SimpleDateFormat("yyyy-MM");
|
||||
|
||||
Integer targetHariKerja = hitungTargetHariKerja(bulan);
|
||||
Double targetJamKerja = hitungTargetMenitKerja(bulan);
|
||||
|
||||
List<Map<String, Object>> listIndikatorDokter = indikatorKinerjaJabatanDao
|
||||
.findAllByIndikator(Master.IndikatorKinerja.PELAYANAN_MEDIS_JAM_KERJA);
|
||||
List<Integer> listIdIndikator = new ArrayList<>();
|
||||
for (Map<String, Object> map : listIndikatorDokter) {
|
||||
listIdIndikator.add(Integer.parseInt(map.get("jabatanId").toString()));
|
||||
}
|
||||
|
||||
// Double targetSkorJamKerja = 0.0;
|
||||
// List<Double> target = targetSkorDokterDetailDao.findTargetByPegawai(idPegawai, mf.format(bulan),
|
||||
// yf.format(bulan));
|
||||
// if (CommonUtil.isNotNullOrEmpty(target)) {
|
||||
// targetSkorJamKerja = Math.floor(target.get(0));
|
||||
// }
|
||||
|
||||
// List<IndikatorKinerjaDetail> ikds = indikatorKinerjaDetailDao
|
||||
// .findByIndikator(Master.IndikatorKinerja.KEPATUHAN_PELAYANAN_MEDIS);
|
||||
// List<LogbookKinerjaDokter> lkds = new ArrayList<>();
|
||||
// for (IndikatorKinerjaDetail ikd : ikds) {
|
||||
// Jabatan jb = jabatanDao.findOne(idJabatan);
|
||||
// Pegawai pg = pegawaiDao.findOne(idPegawai);
|
||||
//
|
||||
// LogbookKinerjaDokter logbookKinerjaLama = logbookKinerjaDokterDao.findOne(mf.format(bulan), idPegawai,
|
||||
// idJabatan, ikd.getId());
|
||||
// if (CommonUtil.isNullOrEmpty(logbookKinerjaLama)) {
|
||||
// LogbookKinerjaDokter logbookKinerjaBaru = new LogbookKinerjaDokter();
|
||||
// logbookKinerjaBaru.setBulan(bulan);
|
||||
// logbookKinerjaBaru.setDetailTarget(70.0);
|
||||
// logbookKinerjaBaru.setKdProfile((short) 0);
|
||||
// logbookKinerjaBaru.setStatusEnabled(true);
|
||||
// logbookKinerjaBaru.setTglHitung(new Date());
|
||||
// logbookKinerjaBaru.setIndikatorDetail(ikd);
|
||||
// logbookKinerjaBaru.setJabatan(jb);
|
||||
// logbookKinerjaBaru.setPegawai(pg);
|
||||
// lkds.add(logbookKinerjaBaru);
|
||||
// }
|
||||
// }
|
||||
// if (CommonUtil.isNotNullOrEmpty(lkds)) {
|
||||
// logbookKinerjaDokterDao.save(lkds);
|
||||
// }
|
||||
}
|
||||
|
||||
@Override
|
||||
public void autoVerifLogbookJamKerjaDokter(Date bulan) {
|
||||
byte verifId = 2;
|
||||
@ -3088,12 +3141,6 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void autoVerifKontrakJamKerjaDokter(Date bulan) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SkorDokterVO> hitungTargetSkorLogbookDokter(String tahun) throws ParseException {
|
||||
List<SkorDokterVO> result = new ArrayList<>();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user