- perubahan konfigurasi untuk local workspace

- perubahan filename untuk kemudahan identifikasi oop
- penambahan virtual object target layanan medis di luar jam kerja
- pendaftaran konstanta indikator detail untuk layanan medis di luar jam kerja
- perbaikan query data untuk hitung target layanan medis di luar jam kerja dengan melibatkan jabatan
- penambahan query pengecekan hasil hitung target layanan medis di luar jam kerja terakhir
- penambahan query pengecekan data skoring paling update untuk layanan medis di luar jam kerja
- perbaikan service perhitungan dan simpan otomatis untuk layanan medis di luar jam kerja
- penambahan kolom tanggal hitung pada tabel tampungan hasil hitung otomatis
- penambahan service hitung dan simpan otomatis target layanan medis di luar jam kerja di timer bulanan
-
This commit is contained in:
Salman Manoe 2021-07-18 19:58:23 +07:00
parent 26762433aa
commit 5aa602dc5d
19 changed files with 751 additions and 479 deletions

View File

@ -80,10 +80,11 @@ public class Master {
}
public static final class IndikatorKinerja {
public static final Integer PELAYANAN_MEDIS = 466;
public static final Integer PELAYANAN_MEDIS_JAM_KERJA = 466;
public static final Integer PELAYANAN_MEDIS_LUAR_JAM_KERJA = 522;
}
public static final class IndikatorKinerjaDetail {
public static final class IndikatorKinerjaJamKerja {
public static final Integer KONSUL_EKS = 1;
public static final Integer KONSUL_GADAR = 2;
public static final Integer KONSUL_REG = 3;
@ -95,6 +96,19 @@ public class Master {
public static final Integer[] INDIKATOR_PELAYANAN_MEDIS = { 1, 2, 3, 4, 5, 6, 7, 8 };
}
public static final class IndikatorKinerjaLuarJamKerja {
public static final Integer KONSUL_EKS = 9;
public static final Integer KONSUL_GADAR = 10;
public static final Integer KONSUL_REG = 11;
public static final Integer TINDAKAN_EKS = 12;
public static final Integer TINDAKAN_GADAR = 13;
public static final Integer TINDAKAN_OPS = 14;
public static final Integer TINDAKAN_REG = 15;
public static final Integer VISITE = 16;
public static final Integer[] INDIKATOR_PELAYANAN_MEDIS = { 9, 10, 11, 12, 13, 14, 15, 16 };
}
public static final class Jabatan {
public static final int DIRUT_STRUKTURAL = 896;
@ -265,17 +279,17 @@ 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;
public static final Double PERSEN_P1 = 0.3;
public static final Double PERSEN_P2 = 0.7;
public static final Double PERSEN_SKOR_ASISTEN_SPESIALIS = 0.3;
public static final Double PERSEN_SKOR_EKSEKUTIF = 1.15;
}

View File

@ -133,18 +133,20 @@ public interface IkiDanRemunerasiDao extends PagingAndSortingRepository<IkiDanRe
// Target_pelayanan_luar_jam_kerja
@Query("select distinct new Map(ppp.ObjectJenisPetugasPeId as jenisPetugasId,"
+ "pp.noRec as noRec,pp.tglPelayanan as tglPelayanan,pp.hargaDiscount as hargaDiskon,pp.jumlah as jumlahTindakan,"
+ "pg.id as pegawaiId,pg.namaLengkap as namaLengkap," + "pr.id as idTindakan,pr.namaProduk as namaTindakan,"
+ "pg.id as pegawaiId,pg.namaLengkap as namaLengkap," + "jb.id as jabatanId,jb.namaJabatan as namaJabatan,"
+ "pr.id as idTindakan,pr.namaProduk as namaTindakan,"
+ "ru.departemenId as idDepartemen,ru.id as idRuangan," + "pd.isDiskonPegawai as statusDiskon) "
+ "from PelayananPasienPetugas ppp, MapRuanganToProduk mrtp, MapPegawaiJabatanToUnitKerja mpju, PegawaiJadwalKerja pjk "
+ "left join ppp.pelayananPasien pp " + "left join ppp.kdpegawai pg " + "left join pp.produk pr "
+ "left join pp.pasienDaftar apd " + "left join pr.detailJenisProduk djp "
+ "left join ppp.pelayananPasien pp " + "left join ppp.kdpegawai pg " + "left join mpju.jabatan jb "
+ "left join pp.produk pr " + "left join pp.pasienDaftar apd " + "left join pr.detailJenisProduk djp "
+ "left join apd.pasienDaftar pd " + "left join apd.ruangan ru " + "left join pjk.shift sk "
+ "left join pjk.tanggal kl " + "where mrtp.produkId = pr.id " + "and mrtp.ruanganId = apd.ruanganId "
+ "and ppp.ObjectPegawaiId = mpju.pegawaiId " + "and mpju.pegawaiId = pg.id "
+ "and pjk.pegawaiId = ppp.ObjectPegawaiId " + "and pjk.pegawaiId = pg.id "
+ "and mpju.unitKerjaPegawaiId in (:listKsmId) " + "and mrtp.statusEnabled is true "
+ "and mpju.statusEnabled is true " + "and pg.statusEnabled is true " + "and pd.statusEnabled is true "
+ "and sk.statusEnabled is true " + "and pp.tglPelayanan between :tglAwal and :tglAkhir "
+ "and mpju.statusEnabled is true " + "and pg.statusEnabled is true " + "and jb.statusEnabled is true "
+ "and pd.statusEnabled is true " + "and sk.statusEnabled is true "
+ "and pp.tglPelayanan between :tglAwal and :tglAkhir "
+ "and cast(pp.tglPelayanan as date) = cast(kl.tanggal as date) "
+ "and ((to_char(pp.tglPelayanan,'dy') in ('mon','tue','wed','thu') "
+ "and (to_char(pp.tglPelayanan,'HH24:MI:ss') between (case when pp.tglPelayanan between cast(:psbbAwal as timestamp) and cast(:psbbAkhir as timestamp) then '14:00:01' else '15:30:01' end) and '23:59:59' "

View File

@ -140,4 +140,8 @@ public interface JabatanDao extends PagingAndSortingRepository<Jabatan, Integer>
+ "group by nj.kelompokJabatanId " + "order by min(nj.nilaiTerendah)")
List<Map<String, Object>> findPeringkatJabatan(@Param("listKelompokJabatanId") List<Integer> listIdKelompokJabatan);
@Query("select new Map(jb.id as jabatanId,jb.namaJabatan as namaJabatan) " + "from Jabatan jb "
+ "where id in (:listJabatanId) " + "and jb.statusEnabled is true " + "order by jb.namaJabatan")
List<Map<String, Object>> findJabatanByListId(@Param("listJabatanId") List<Integer> listIdJabatan);
}

View File

@ -22,4 +22,15 @@ public interface LogbookKinerjaDokterDao extends PagingAndSortingRepository<Logb
@Param("jabatanId") Integer idJabatan, @Param("pegawaiId") Integer idPegawai,
@Param("indikatorId") Integer idIndikator);
@Query("select new Map(pg.id as pegawaiId," + "jb.id as jabatanId," + "ikd.id as indikatorId,"
+ "lkd.detailTarget as target," + "to_char(lkd.bulan,'yyyy-MM') as periode,"
+ "lkd.tglHitung as tglHitung) " + "from LogbookKinerjaDokter lkd " + "inner join lkd.pegawai pg "
+ "inner join lkd.jabatan jb " + "inner join lkd.indikatorDetail ikd "
+ "inner join ikd.indikatorKinerja ikm " + "where pg.statusEnabled is true "
+ "and jb.statusEnabled is true " + "and ikd.statusEnabled is true " + "and ikm.statusEnabled is true "
+ "and ikm.statusVerifikasi is true " + "and to_char(lkd.bulan,'yyyy-MM') between :tglAwal and :tglAkhir "
+ "and ikd.id in (:listIndikatorId) " + "order by pg.namaLengkap, lkd.tglHitung desc")
public List<Map<String, Object>> getLastTargetLayananLuarJamKerja(@Param("tglAwal") String tglAwal,
@Param("tglAkhir") String tglAkhir, @Param("listIndikatorId") List<Integer> listIdIndikator);
}

View File

@ -1068,7 +1068,8 @@ public interface PegawaiDao extends PagingAndSortingRepository<Pegawai, Integer>
@Param("listKategoryPegawaiId") List<Integer> listIdKategoriPegawai);
@Query("select new Map(pg.id as pegawaiId,pg.namaLengkap as namaLengkap) "
+ "from Pegawai pg where pg.statusEnabled is true and pg.id in (:listPegawaiId)")
+ "from Pegawai pg where pg.statusEnabled is true and pg.id in (:listPegawaiId) "
+ "order by pg.namaLengkap")
public List<Map<String, Object>> findPegawaiByListId(@Param("listPegawaiId") List<Integer> listIdPegawai);
}

View File

@ -124,8 +124,20 @@ public interface SkoringTindakanMedisDao extends PagingAndSortingRepository<Skor
+ "stm.tanggalMulaiBerlaku as tglBerlaku,stm.tanggalPembaharuanData as tglPembaharuanData) "
+ "from SkoringTindakanMedis stm " + "inner join stm.kelompokKerja sk "
+ "where stm.statusEnabled is true and stm.statusVerifikasi is true " + "and sk.statusEnabled is true "
+ "order by sk.name asc, stm.produkId asc, stm.tanggalPembaharuanData desc")
List<Map<String, Object>> findLatestActiveSkor();
+ "and lower(sk.name) like 'kk%' " + "order by sk.name asc, stm.produkId asc, stm.tanggalPembaharuanData desc")
List<Map<String, Object>> findLatestActiveSkorByKelompokKerja();
@Query("select new Map(pg.id as pegawaiId,pg.namaLengkap as namaLengkap," + "jb.id as jabatanId,"
+ "stm.produkId as produkId,stm.skor as skor,"
+ "stm.tanggalMulaiBerlaku as tglBerlaku,stm.tanggalPembaharuanData as tglPembaharuanData) "
+ "from SkoringTindakanMedis stm, MapPegawaiJabatanToUnitKerja mj " + "inner join stm.kelompokKerja sk "
+ "inner join mj.pegawai pg " + "inner join mj.jabatan jb "
+ "where mj.subUnitKerjaPegawaiId = stm.kelompokKerjaId " + "and mj.subUnitKerjaPegawaiId = sk.id "
+ "and stm.statusEnabled is true " + "and stm.statusVerifikasi is true " + "and mj.statusEnabled is true "
+ "and sk.statusEnabled is true " + "and pg.statusEnabled is true " + "and jb.statusEnabled is true "
+ "and jb.kelompokJabatanId in (3,4) "
+ "order by pg.namaLengkap asc, stm.produkId asc, stm.tanggalPembaharuanData desc")
List<Map<String, Object>> findLatestActiveSkorByDokter();
@Query("select distinct new Map(pr.id as produkId,pr.namaProduk as namaProduk,"
+ "stm.skor as skor,stm.tanggalMulaiBerlaku as tglMulaiBerlaku,stm.tanggalPembaharuanData as tglPembaharuanData) "

View File

@ -18,10 +18,10 @@ public interface TargetLayananDao extends PagingAndSortingRepository<TargetLayan
+ "inner join tl.subUnitKerjaPegawai sk " + "inner join tl.indikatorDetail ikd "
+ "inner join ikd.indikatorKinerja ikm " + "where sk.statusEnabled is true "
+ "and ikd.statusEnabled is true " + "and ikm.statusEnabled is true and ikm.statusVerifikasi is true "
+ "and to_char(tl.periode,'yyyy-MM') between :tglAwal and :tglAkhir "
+ "and to_char(tl.periode,'yyyy-MM') between :tglAwal and :tglAkhir " + "and ikd.id in (:listIndikatorId) "
+ "order by sk.name, tl.tglHitung desc")
public List<Map<String, Object>> getLastTargetLayanan(@Param("tglAwal") String tglAwal,
@Param("tglAkhir") String tglAkhir);
public List<Map<String, Object>> getLastTargetLayananJamKerja(@Param("tglAwal") String tglAwal,
@Param("tglAkhir") String tglAkhir, @Param("listIndikatorId") List<Integer> listIdIndikator);
@Query("select distinct new Map(tl.subUnitKerjaPegawaiId as kelompokKerjaId,"
+ "tl.indikatorDetailId as indikatorId," + "pg.id as pegawaiId,"

View File

@ -5,9 +5,11 @@ import java.util.Date;
import java.util.List;
import java.util.Map;
import com.jasamedika.medifirst2000.vo.LogbookKinerjaDokterVO;
import com.jasamedika.medifirst2000.vo.SettingPirSdmVO;
import com.jasamedika.medifirst2000.vo.StrukHistoriVO;
import com.jasamedika.medifirst2000.vo.custom.TargetLayananCustomVO;
import com.jasamedika.medifirst2000.vo.custom.TargetLayananJamKerjaVO;
import com.jasamedika.medifirst2000.vo.custom.TargetLayananLuarJamKerjaVO;
public interface IkiDanRemunerasiService {
@ -31,13 +33,17 @@ public interface IkiDanRemunerasiService {
public Map<String, Object> savePirDanIku(List<SettingPirSdmVO> vo);
public void autoSaveTargetCapaianLayananJamKerja(String strPeriode, Integer idKsm) throws ParseException;
public void autoSaveTargetCapaianLayananLuarJamKerja(String strPeriode, Integer idKsm) throws ParseException;
public void autoSaveTargetCapaianLayananJamKerja(String strPeriode) throws ParseException;
public void saveTargetCapaianLayanan(TargetLayananCustomVO vo, Date periodeHitung) throws ParseException;
public void saveTargetCapaianLayananKelompokKerja(TargetLayananJamKerjaVO vo, Date periodeHitung)
throws ParseException;
public List<TargetLayananCustomVO> findAllTargetCapaianLayanan(String strPeriode, Integer idKsm)
public void autoSaveTargetCapaianLayananLuarJamKerja(String strPeriode) throws ParseException;
public void saveTargetCapaianLayananPegawai(TargetLayananLuarJamKerjaVO vo, Date periodeHitung)
throws ParseException;
public List<TargetLayananJamKerjaVO> findAllTargetCapaianLayanan(String strPeriode, Integer idKsm)
throws ParseException;
}

View File

@ -433,7 +433,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
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)) {
if (map.get("idIndikator").equals(Master.IndikatorKinerja.PELAYANAN_MEDIS_JAM_KERJA)) {
List<Map<String, Object>> logbookDokter = findLogbookJamKerjaDokter(idPegawai, bulan);
double capaian = 0.0;
for (Map<String, Object> ld : logbookDokter) {
@ -660,39 +660,39 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
for (Map<String, Object> mapLayanan : dataLayanan) {
if (listKonsulTapiVisit.contains(mapLayanan.get("produkId"))
|| mapLayanan.get("namaProduk").toString().toLowerCase().contains(Master.VISIT)) {
mapLayanan.put("indikatorId", Master.IndikatorKinerjaDetail.VISITE);
mapLayanan.put("indikatorId", Master.IndikatorKinerjaJamKerja.VISITE);
mapLayanan.put("namaIndikator",
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaDetail.VISITE));
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaJamKerja.VISITE));
} else if (mapLayanan.get("namaProduk").toString().toLowerCase().contains(Master.KONSUL)
&& listRuangEks.contains(mapLayanan.get("ruanganId"))) {
mapLayanan.put("indikatorId", Master.IndikatorKinerjaDetail.KONSUL_EKS);
mapLayanan.put("indikatorId", Master.IndikatorKinerjaJamKerja.KONSUL_EKS);
mapLayanan.put("namaIndikator",
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaDetail.KONSUL_EKS));
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaJamKerja.KONSUL_EKS));
} else if (mapLayanan.get("namaProduk").toString().toLowerCase().contains(Master.KONSUL)
&& mapLayanan.get("departemenId").equals(Master.Departemen.IGD)) {
mapLayanan.put("indikatorId", Master.IndikatorKinerjaDetail.KONSUL_GADAR);
mapLayanan.put("indikatorId", Master.IndikatorKinerjaJamKerja.KONSUL_GADAR);
mapLayanan.put("namaIndikator",
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaDetail.KONSUL_GADAR));
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaJamKerja.KONSUL_GADAR));
} else if (mapLayanan.get("namaProduk").toString().toLowerCase().contains(Master.KONSUL)) {
mapLayanan.put("indikatorId", Master.IndikatorKinerjaDetail.KONSUL_REG);
mapLayanan.put("indikatorId", Master.IndikatorKinerjaJamKerja.KONSUL_REG);
mapLayanan.put("namaIndikator",
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaDetail.KONSUL_REG));
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaJamKerja.KONSUL_REG));
} else if (listRuangEks.contains(mapLayanan.get("ruanganId"))) {
mapLayanan.put("indikatorId", Master.IndikatorKinerjaDetail.TINDAKAN_EKS);
mapLayanan.put("indikatorId", Master.IndikatorKinerjaJamKerja.TINDAKAN_EKS);
mapLayanan.put("namaIndikator",
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaDetail.TINDAKAN_EKS));
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaJamKerja.TINDAKAN_EKS));
} else if (mapLayanan.get("departemenId").equals(Master.Departemen.IGD)) {
mapLayanan.put("indikatorId", Master.IndikatorKinerjaDetail.TINDAKAN_GADAR);
mapLayanan.put("indikatorId", Master.IndikatorKinerjaJamKerja.TINDAKAN_GADAR);
mapLayanan.put("namaIndikator",
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaDetail.TINDAKAN_GADAR));
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaJamKerja.TINDAKAN_GADAR));
} else if (mapLayanan.get("ruanganId").equals(Master.Ruangan.OK)) {
mapLayanan.put("indikatorId", Master.IndikatorKinerjaDetail.TINDAKAN_OPS);
mapLayanan.put("indikatorId", Master.IndikatorKinerjaJamKerja.TINDAKAN_OPS);
mapLayanan.put("namaIndikator",
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaDetail.TINDAKAN_OPS));
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaJamKerja.TINDAKAN_OPS));
} else {
mapLayanan.put("indikatorId", Master.IndikatorKinerjaDetail.TINDAKAN_REG);
mapLayanan.put("indikatorId", Master.IndikatorKinerjaJamKerja.TINDAKAN_REG);
mapLayanan.put("namaIndikator",
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaDetail.TINDAKAN_REG));
indikatorKinerjaDetailDao.findNamaIndikator(Master.IndikatorKinerjaJamKerja.TINDAKAN_REG));
}
}
@ -815,7 +815,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
Arrays.asList(Master.JenisProduk.NONTINDAKAN), Master.Produk.KARCIS);
for (Map<String, Object> mapLayanan : dataLayanan) {
if (idIndikator.equals(Master.IndikatorKinerjaDetail.VISITE)
if (idIndikator.equals(Master.IndikatorKinerjaJamKerja.VISITE)
&& (listKonsulTapiVisit.contains(mapLayanan.get("produkId"))
|| mapLayanan.get("namaProduk").toString().toLowerCase().contains(Master.VISIT))) {
if (idJenisPetugas.equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)
@ -857,7 +857,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
result.add(mapLayanan);
}
}
} else if (idIndikator.equals(Master.IndikatorKinerjaDetail.KONSUL_EKS)
} else if (idIndikator.equals(Master.IndikatorKinerjaJamKerja.KONSUL_EKS)
&& mapLayanan.get("namaProduk").toString().toLowerCase().contains(Master.KONSUL)
&& listRuangEks.contains(mapLayanan.get("ruanganId"))) {
if (idJenisPetugas.equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)
@ -899,7 +899,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
result.add(mapLayanan);
}
}
} else if (idIndikator.equals(Master.IndikatorKinerjaDetail.KONSUL_GADAR)
} else if (idIndikator.equals(Master.IndikatorKinerjaJamKerja.KONSUL_GADAR)
&& mapLayanan.get("namaProduk").toString().toLowerCase().contains(Master.KONSUL)
&& mapLayanan.get("departemenId").equals(Master.Departemen.IGD)) {
if (idJenisPetugas.equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)
@ -941,7 +941,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
result.add(mapLayanan);
}
}
} else if (idIndikator.equals(Master.IndikatorKinerjaDetail.KONSUL_REG)
} else if (idIndikator.equals(Master.IndikatorKinerjaJamKerja.KONSUL_REG)
&& mapLayanan.get("namaProduk").toString().toLowerCase().contains(Master.KONSUL)) {
if (idJenisPetugas.equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)
&& mapLayanan.get("jenisPetugasId").equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)) {
@ -982,7 +982,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
result.add(mapLayanan);
}
}
} else if (idIndikator.equals(Master.IndikatorKinerjaDetail.TINDAKAN_EKS)
} else if (idIndikator.equals(Master.IndikatorKinerjaJamKerja.TINDAKAN_EKS)
&& listRuangEks.contains(mapLayanan.get("ruanganId"))) {
if (idJenisPetugas.equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)
&& mapLayanan.get("jenisPetugasId").equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)) {
@ -1023,7 +1023,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
result.add(mapLayanan);
}
}
} else if (idIndikator.equals(Master.IndikatorKinerjaDetail.TINDAKAN_GADAR)
} else if (idIndikator.equals(Master.IndikatorKinerjaJamKerja.TINDAKAN_GADAR)
&& mapLayanan.get("departemenId").equals(Master.Departemen.IGD)) {
if (idJenisPetugas.equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)
&& mapLayanan.get("jenisPetugasId").equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)) {
@ -1064,7 +1064,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
result.add(mapLayanan);
}
}
} else if (idIndikator.equals(Master.IndikatorKinerjaDetail.TINDAKAN_OPS)
} else if (idIndikator.equals(Master.IndikatorKinerjaJamKerja.TINDAKAN_OPS)
&& mapLayanan.get("ruanganId").equals(Master.Ruangan.OK)) {
if (idJenisPetugas.equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)
&& mapLayanan.get("jenisPetugasId").equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)) {
@ -1105,7 +1105,7 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
result.add(mapLayanan);
}
}
} else if (idIndikator.equals(Master.IndikatorKinerjaDetail.TINDAKAN_REG)) {
} else if (idIndikator.equals(Master.IndikatorKinerjaJamKerja.TINDAKAN_REG)) {
if (idJenisPetugas.equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)
&& mapLayanan.get("jenisPetugasId").equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)) {
if (skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) > 0.0

View File

@ -8,11 +8,11 @@ hibernate.show_sql = true
hikari.config.maximum.pool.size = 5
# DB Development
jdbc.url = jdbc:postgresql://localhost:5432/backup_01Mar21
jdbc.url = jdbc:postgresql://localhost:5432/rsabhk_backup
jdbc.username = postgres
jdbc.password = root
jdbc.serverName = localhost
jdbc.databaseName = backup_01Mar21
jdbc.databaseName = rsabhk_backup
jdbc.portNumber = 5432
corePoolSizeAsyncConfigurer = 5

View File

@ -57,6 +57,11 @@ public class LogbookKinerjaDokter extends BaseTransaction {
@Column(name = "objectindikatordetailfk", insertable = false, updatable = false, nullable = true)
private Integer indikatorDetailId;
@Column(name = "tglhitung")
@Temporal(TemporalType.TIMESTAMP)
@Caption(value = "Tanggal Hitung")
public Date tglHitung;
public Date getBulan() {
return bulan;
@ -130,4 +135,12 @@ public class LogbookKinerjaDokter extends BaseTransaction {
this.indikatorDetailId = indikatorDetailId;
}
public Date getTglHitung() {
return tglHitung;
}
public void setTglHitung(Date tglHitung) {
this.tglHitung = tglHitung;
}
}

View File

@ -31,6 +31,9 @@ public class LogbookKinerjaDokterVO extends BaseTransactionVO {
private Integer indikatorDetailId;
@Caption(value = "Tanggal Hitung")
public Date tglHitung;
public Date getBulan() {
return bulan;
}
@ -103,4 +106,12 @@ public class LogbookKinerjaDokterVO extends BaseTransactionVO {
this.indikatorDetailId = indikatorDetailId;
}
public Date getTglHitung() {
return tglHitung;
}
public void setTglHitung(Date tglHitung) {
this.tglHitung = tglHitung;
}
}

View File

@ -2,7 +2,7 @@ package com.jasamedika.medifirst2000.vo.custom;
import com.jasamedika.medifirst2000.helper.Caption;
public class TargetLayananCustomDetailVO {
public class TargetLayananJamKerjaDetailVO {
@Caption(value = "Date")
String date;

View File

@ -5,10 +5,9 @@ import java.util.List;
import com.jasamedika.medifirst2000.base.vo.BaseTransactionVO;
import com.jasamedika.medifirst2000.helper.Caption;
import com.jasamedika.medifirst2000.vo.IndikatorKinerjaDetailVO;
import com.jasamedika.medifirst2000.vo.IndikatorKinerjaVO;
import com.jasamedika.medifirst2000.vo.SubUnitKerjaPegawaiVO;
public class TargetLayananCustomVO extends BaseTransactionVO {
public class TargetLayananJamKerjaVO extends BaseTransactionVO {
private static final long serialVersionUID = 3163629696201167352L;
@ -25,7 +24,7 @@ public class TargetLayananCustomVO extends BaseTransactionVO {
public Integer kelompokKerjaId;
@Caption(value = "Detail")
public List<TargetLayananCustomDetailVO> detail;
public List<TargetLayananJamKerjaDetailVO> detail;
public IndikatorKinerjaDetailVO getIndikator() {
return indikator;
@ -59,11 +58,11 @@ public class TargetLayananCustomVO extends BaseTransactionVO {
this.kelompokKerjaId = kelompokKerjaId;
}
public List<TargetLayananCustomDetailVO> getDetail() {
public List<TargetLayananJamKerjaDetailVO> getDetail() {
return detail;
}
public void setDetail(List<TargetLayananCustomDetailVO> detail) {
public void setDetail(List<TargetLayananJamKerjaDetailVO> detail) {
this.detail = detail;
}

View File

@ -0,0 +1,62 @@
package com.jasamedika.medifirst2000.vo.custom;
import com.jasamedika.medifirst2000.helper.Caption;
public class TargetLayananLuarJamKerjaDetailVO {
@Caption(value = "Date")
String date;
@Caption(value = "Bulan")
String bulan;
@Caption(value = "Capaian")
Double capaian;
@Caption(value = "Target")
Double target;
@Caption(value = "Tanggal Hitung")
String tglHitung;
public String getDate() {
return date;
}
public void setDate(String date) {
this.date = date;
}
public String getBulan() {
return bulan;
}
public void setBulan(String bulan) {
this.bulan = bulan;
}
public Double getCapaian() {
return capaian;
}
public void setCapaian(Double capaian) {
this.capaian = capaian;
}
public Double getTarget() {
return target;
}
public void setTarget(Double target) {
this.target = target;
}
public String getTglHitung() {
return tglHitung;
}
public void setTglHitung(String tglHitung) {
this.tglHitung = tglHitung;
}
}

View File

@ -0,0 +1,92 @@
package com.jasamedika.medifirst2000.vo.custom;
import java.util.List;
import com.jasamedika.medifirst2000.base.vo.BaseTransactionVO;
import com.jasamedika.medifirst2000.helper.Caption;
import com.jasamedika.medifirst2000.vo.IndikatorKinerjaDetailVO;
import com.jasamedika.medifirst2000.vo.JabatanVO;
import com.jasamedika.medifirst2000.vo.PegawaiVO;
public class TargetLayananLuarJamKerjaVO extends BaseTransactionVO {
private static final long serialVersionUID = 204121701316648329L;
@Caption(value = "Indikator Kinerja")
public IndikatorKinerjaDetailVO indikator;
@Caption(value = "Id Indikator Kinerja")
public Integer indikatorId;
@Caption(value = "Pegawai")
public PegawaiVO pegawai;
@Caption(value = "Id Pegawai")
public Integer pegawaiId;
@Caption(value = "Jabatan")
public JabatanVO jabatan;
@Caption(value = "Id Jabatan")
public Integer jabatanId;
@Caption(value = "Detail")
public List<TargetLayananLuarJamKerjaDetailVO> detail;
public IndikatorKinerjaDetailVO getIndikator() {
return indikator;
}
public void setIndikator(IndikatorKinerjaDetailVO indikator) {
this.indikator = indikator;
}
public Integer getIndikatorId() {
return indikatorId;
}
public void setIndikatorId(Integer indikatorId) {
this.indikatorId = indikatorId;
}
public PegawaiVO getPegawai() {
return pegawai;
}
public void setPegawai(PegawaiVO pegawai) {
this.pegawai = pegawai;
}
public Integer getPegawaiId() {
return pegawaiId;
}
public void setPegawaiId(Integer pegawaiId) {
this.pegawaiId = pegawaiId;
}
public JabatanVO getJabatan() {
return jabatan;
}
public void setJabatan(JabatanVO jabatan) {
this.jabatan = jabatan;
}
public Integer getJabatanId() {
return jabatanId;
}
public void setJabatanId(Integer jabatanId) {
this.jabatanId = jabatanId;
}
public List<TargetLayananLuarJamKerjaDetailVO> getDetail() {
return detail;
}
public void setDetail(List<TargetLayananLuarJamKerjaDetailVO> detail) {
this.detail = detail;
}
}

View File

@ -46,8 +46,10 @@ public class TargetLayananGenerating extends LocaleController<TargetLayananVO> {
try {
if (CommonUtil.isNotNullOrEmpty(remunerasiService)) {
LOGGER.info("Task Target Layanan : Running Generate Target Layanan");
remunerasiService.autoSaveTargetCapaianLayananJamKerja(new SimpleDateFormat("yyyy-MM").format(new Date()),
null);
remunerasiService
.autoSaveTargetCapaianLayananJamKerja(new SimpleDateFormat("yyyy-MM").format(new Date()));
remunerasiService
.autoSaveTargetCapaianLayananLuarJamKerja(new SimpleDateFormat("yyyy-MM").format(new Date()));
} else {
LOGGER.warn("Task Target Layanan : Undefined service");
}

View File

@ -50,7 +50,7 @@ import com.jasamedika.medifirst2000.vo.RemunerasiOperasionalVO;
import com.jasamedika.medifirst2000.vo.SettingPirSdmVO;
import com.jasamedika.medifirst2000.vo.SkoringTindakanMedisVO;
import com.jasamedika.medifirst2000.vo.StrukHistoriVO;
import com.jasamedika.medifirst2000.vo.custom.TargetLayananCustomVO;
import com.jasamedika.medifirst2000.vo.custom.TargetLayananJamKerjaVO;
@RestController
@RequestMapping("/iki-remunerasi")
@ -245,11 +245,11 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
}
@RequestMapping(value = "/get-all-target-dan-capaian-layanan", method = RequestMethod.GET)
public ResponseEntity<List<TargetLayananCustomVO>> getAllTargetLayanan(HttpServletRequest request,
public ResponseEntity<List<TargetLayananJamKerjaVO>> getAllTargetLayanan(HttpServletRequest request,
@RequestParam(value = "periode", required = true) String periode,
@RequestParam(value = "ksmId", required = false) Integer idKsm) throws ParseException {
try {
List<TargetLayananCustomVO> result = service.findAllTargetCapaianLayanan(periode, idKsm);
List<TargetLayananJamKerjaVO> result = service.findAllTargetCapaianLayanan(periode, idKsm);
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage);