- perbaikan pencarian pengaturan bobot jenis indikator menggunakan kelompok jabatan
- perbaikan hitung target pelayanan medis otomatis melibatkan skor jika diskon dan asisten spesialis - pembuatan service data pasien di logbook kinerja dokter
This commit is contained in:
parent
f8fb108d84
commit
cb6c075d3c
@ -24,13 +24,21 @@ public interface BobotJenisIndikatorDao extends PagingAndSortingRepository<Bobot
|
||||
|
||||
String cdtBulan = "and to_char(bj.bulan,'yyyy-MM') <= :periode ";
|
||||
|
||||
String cdtKelompokJabatanNull = "and bj.kelompokJabatanId is null ";
|
||||
|
||||
String cdtKelompokJabatan = "and kj.id = :kelompokJabatanId ";
|
||||
|
||||
String cdtTglPembaharuanData = "and to_char(bj.tanggalPembaharuanData,'yyyy-mm-dd hh24:mi:ss') = :tglPembaharuanData ";
|
||||
|
||||
String sortGrid = "order by bj.bulan desc, kj.namaKelompokJabatan, bj.jenisIndikator";
|
||||
|
||||
@Query(strQryGrid + cdtBulan + sortGrid)
|
||||
@Query(strQryGrid + cdtBulan + cdtKelompokJabatanNull + sortGrid)
|
||||
public List<Map<String, Object>> findBobotJenisByBulanBerlaku(@Param("periode") String periode);
|
||||
|
||||
@Query(strQryGrid + cdtBulan + cdtKelompokJabatan + sortGrid)
|
||||
public List<Map<String, Object>> findBobotJenisByBulanBerlaku(@Param("periode") String periode,
|
||||
@Param("kelompokJabatanId") Integer idKelompokJabatan);
|
||||
|
||||
@Query(strQryGrid + cdtTglPembaharuanData + sortGrid)
|
||||
public List<Map<String, Object>> findBobotJenisByTglPembaharuanData(
|
||||
@Param("tglPembaharuanData") String tglPembaharuanData);
|
||||
|
||||
@ -99,10 +99,12 @@ public interface IkiDanRemunerasiDao extends PagingAndSortingRepository<IkiDanRe
|
||||
public Double findRemunerasi(@Param("periode") String periode, @Param("idPegawai") Integer idPegawai);
|
||||
|
||||
// Target_pelayanan
|
||||
@Query("select distinct new Map(pp.noRec as noRec,pp.tglPelayanan as tglPelayanan,"
|
||||
@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,"
|
||||
+ "su.id as idKelompokKerja,su.name as kelompokKerja,"
|
||||
+ "pr.id as idTindakan,pr.namaProduk as namaTindakan,"
|
||||
+ "ru.departemenId as idDepartemen, ru.id as idRuangan, " + "pp.jumlah as jumlahTindakan) "
|
||||
+ "ru.departemenId as idDepartemen, ru.id as idRuangan, " + "pd.isDiskonPegawai as statusDiskon) "
|
||||
+ "from PelayananPasienPetugas ppp, MapRuanganToProduk mrtp, MapPegawaiJabatanToUnitKerja mpju "
|
||||
+ "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 "
|
||||
@ -142,4 +144,27 @@ public interface IkiDanRemunerasiDao extends PagingAndSortingRepository<IkiDanRe
|
||||
public List<Map<String, Object>> getDataLogbookDokter(@Param("bulan") String bulan,
|
||||
@Param("jenisPegawaiId") Integer idJenisPegawai, @Param("pegawaiId") Integer idPegawai,
|
||||
@Param("listNontindakanId") List<Integer> listIdNontindakan, @Param("karcisId") Integer idKarcis);
|
||||
|
||||
@Query("select distinct new Map(ppp.ObjectJenisPetugasPeId as jenisPetugasId,"
|
||||
+ "pr.id as produkId,pr.namaProduk as namaProduk," + "pp.noRec as noRec,"
|
||||
+ "pp.tglPelayanan as tglPelayanan,"
|
||||
+ "to_char(pp.tglPelayanan,'dd-MM-yyyy HH:mi:ss') as tglPelayananFormatted," + "pp.jumlah as jumlah,"
|
||||
+ "pp.hargaDiscount as hargaDiskon," + "ru.departemenId as departemenId,ru.id as ruanganId,"
|
||||
+ "pd.noRegistrasi as noRegistrasi,pd.isDiskonPegawai as statusDiskon," + "ps.namaPasien as namaPasien) "
|
||||
+ "from PelayananPasienPetugas ppp, MapRuanganToProduk mrtp " + "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 apd.pasienDaftar pd " + "left join apd.ruangan ru "
|
||||
+ "left join pd.pasien ps " + "where mrtp.produkId = pr.id " + "and mrtp.ruanganId = apd.ruanganId "
|
||||
+ "and mrtp.statusEnabled is true " + "and pg.statusEnabled is true " + "and pd.statusEnabled is true "
|
||||
+ "and pr.id = :produkId " + "and to_char(pp.tglPelayanan,'yyyy-MM-dd') = :tglPelayanan "
|
||||
+ "and ((to_char(pp.tglPelayanan,'dy') in ('mon','tue','wed','thu') "
|
||||
+ "and to_char(pp.tglPelayanan,'HH24:MM:ss') between '07:00:00' and '15:30:00') "
|
||||
+ "or (to_char(pp.tglPelayanan,'dy') in ('fri') "
|
||||
+ "and to_char(pp.tglPelayanan,'HH24:MM:ss') between '07:00:00' and '16:00:00')) "
|
||||
+ "and pg.jenisPegawaiId = :jenisPegawaiId " + "and djp.jenisProdukId not in (:listNontindakanId) "
|
||||
+ "and pr.id <> :karcisId " + "and pg.id = :pegawaiId " + "order by pr.namaProduk, pp.tglPelayanan")
|
||||
public List<Map<String, Object>> findDetailPasienLogbook(@Param("produkId") Integer idProduk,
|
||||
@Param("tglPelayanan") String tglPelayanan, @Param("jenisPegawaiId") Integer idJenisPegawai,
|
||||
@Param("pegawaiId") Integer idPegawai, @Param("listNontindakanId") List<Integer> listIdNontindakan,
|
||||
@Param("karcisId") Integer idKarcis);
|
||||
}
|
||||
@ -18,7 +18,7 @@ public interface BobotJenisIndikatorService extends BaseVoService<BobotJenisIndi
|
||||
|
||||
public Boolean deleteAll(Long tglPembaharuanData) throws JpaSystemException;
|
||||
|
||||
public List<Map<String, Object>> findAllBobotJenis(Long periode);
|
||||
public List<Map<String, Object>> findAllBobotJenis(Long periode, Integer idKelompokJabatan);
|
||||
|
||||
public List<Double> findBobotJenisJabatan(Long periode, Integer idJabatan);
|
||||
|
||||
|
||||
@ -35,4 +35,7 @@ public interface LogbookKinerjaService extends BaseVoService<LogbookKinerja, Log
|
||||
|
||||
public List<Map<String, Object>> findLogbookSkoringDokter(Integer idPegawai, Long bulan);
|
||||
|
||||
public List<Map<String, Object>> findDetailPasienLogbook(Integer idPegawai, Integer idIndikator, Integer idProduk,
|
||||
String tglPelayanan, Integer idJenisPetugas, Double skor);
|
||||
|
||||
}
|
||||
|
||||
@ -195,14 +195,20 @@ public class BobotJenisIndikatorServiceImpl extends BaseVoServiceImpl implements
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> findAllBobotJenis(Long periode) {
|
||||
public List<Map<String, Object>> findAllBobotJenis(Long periode, Integer idKelompokJabatan) {
|
||||
List<Integer> listIdKelompokJabatan = new ArrayList<>();
|
||||
List<String> listTglPembaharuanData = new ArrayList<>();
|
||||
|
||||
DateFormat tf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
|
||||
List<Map<String, Object>> result = bobotJenisIndikatorDao
|
||||
.findBobotJenisByBulanBerlaku(new SimpleDateFormat("yyyy-MM").format(new Date(periode)));
|
||||
List<Map<String, Object>> result = new ArrayList<>();
|
||||
if (CommonUtil.isNotNullOrEmpty(idKelompokJabatan)) {
|
||||
result = bobotJenisIndikatorDao.findBobotJenisByBulanBerlaku(
|
||||
new SimpleDateFormat("yyyy-MM").format(new Date(periode)), idKelompokJabatan);
|
||||
} else {
|
||||
result = bobotJenisIndikatorDao
|
||||
.findBobotJenisByBulanBerlaku(new SimpleDateFormat("yyyy-MM").format(new Date(periode)));
|
||||
}
|
||||
|
||||
for (Map<String, Object> map : result) {
|
||||
if (!listIdKelompokJabatan.contains(map.get("kelompokJabatanId"))) {
|
||||
@ -219,11 +225,11 @@ public class BobotJenisIndikatorServiceImpl extends BaseVoServiceImpl implements
|
||||
.collect(Collectors.toList());
|
||||
|
||||
int sumTP = 0;
|
||||
for (Integer idKelompokJabatan : listIdKelompokJabatan) {
|
||||
for (Integer idKK : listIdKelompokJabatan) {
|
||||
for (String tglPembaharuanData : listTglPembaharuanDataSorted) {
|
||||
for (Map<String, Object> map : result) {
|
||||
if (CommonUtil.isNotNullOrEmpty(map.get("kelompokJabatanId"))
|
||||
&& idKelompokJabatan.equals(map.get("kelompokJabatanId"))
|
||||
&& idKK.equals(map.get("kelompokJabatanId"))
|
||||
&& tglPembaharuanData.equals(tf.format((Date) map.get("tglPembaharuanData")))) {
|
||||
sumTP++;
|
||||
if (sumTP <= 3) {
|
||||
|
||||
@ -596,17 +596,27 @@ public class IkiDanRemunerasiServiceImpl extends BaseVoServiceImpl implements Ik
|
||||
// scoring data layanan
|
||||
for (Map<String, Object> layanan : dataLayananRaw) {
|
||||
for (Map<String, Object> skoring : dataSkoringFiltered) {
|
||||
|
||||
if (layanan.get("idTindakan").equals(skoring.get("produkId"))
|
||||
&& layanan.get("idKelompokKerja").equals(skoring.get("kelompokKerjaId"))
|
||||
&& (((Date) skoring.get("tglBerlaku")).before(((Date) layanan.get("tglPelayanan")))
|
||||
|| ((Date) skoring.get("tglBerlaku")).equals(((Date) layanan.get("tglPelayanan"))))) {
|
||||
if (listRuangEks.contains(layanan.get("idRuangan"))
|
||||
&& !Arrays.asList(Master.Produk.KONSULTASI_EKSEKUTIF).contains(layanan.get("idTindakan"))) {
|
||||
|
||||
if (Double.valueOf(layanan.get("hargaDiskon").toString()) > 0.0
|
||||
&& (CommonUtil.isNullOrEmpty(layanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(layanan.get("statusDiskon").toString()))) {
|
||||
layanan.put("jumlahTindakan", 0.0);
|
||||
} else if (listRuangEks.contains(layanan.get("idRuangan"))
|
||||
&& !layanan.get("namaTindakan").toString().toLowerCase().contains(Master.KONSUL)
|
||||
&& !layanan.get("namaTindakan").toString().toLowerCase().contains(Master.VISIT)) {
|
||||
layanan.put("jumlahTindakan",
|
||||
Double.valueOf(layanan.get("jumlahTindakan").toString())
|
||||
* Double.valueOf(skoring.get("skor").toString())
|
||||
* Master.Remunerasi.PERSEN_SKOR_EKSEKUTIF);
|
||||
} else if (layanan.get("jenisPetugasId").equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)) {
|
||||
layanan.put("jumlahTindakan",
|
||||
Double.valueOf(layanan.get("jumlahTindakan").toString())
|
||||
* Double.valueOf(skoring.get("skor").toString())
|
||||
* Master.Remunerasi.PERSEN_SKOR_ASISTEN_SPESIALIS);
|
||||
} else {
|
||||
layanan.put("jumlahTindakan", Double.valueOf(layanan.get("jumlahTindakan").toString())
|
||||
* Double.valueOf(skoring.get("skor").toString()));
|
||||
|
||||
@ -594,23 +594,24 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
|
||||
// RULES
|
||||
for (Map<String, Object> mapLayanan : dataLayanan) {
|
||||
if (mapLayanan.get("jenisPetugasId").equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)) {
|
||||
mapLayanan.put("skor", Double.valueOf(mapLayanan.get("skor").toString())
|
||||
* Master.Remunerasi.PERSEN_SKOR_ASISTEN_SPESIALIS);
|
||||
mapLayanan.put("tSkor", Double.valueOf(mapLayanan.get("skor").toString())
|
||||
* Double.valueOf(mapLayanan.get("jumlah").toString()));
|
||||
} else if (!mapLayanan.get("namaProduk").toString().toLowerCase().contains(Master.KONSUL)
|
||||
&& listRuangEks.contains(mapLayanan.get("ruanganId"))) {
|
||||
mapLayanan.put("skor",
|
||||
Double.valueOf(mapLayanan.get("skor").toString()) * Master.Remunerasi.PERSEN_SKOR_EKSEKUTIF);
|
||||
mapLayanan.put("tSkor", Double.valueOf(mapLayanan.get("skor").toString())
|
||||
* Double.valueOf(mapLayanan.get("jumlah").toString()));
|
||||
} else if (Double.valueOf(mapLayanan.get("hargaDiskon").toString()) > 0.0
|
||||
if (Double.valueOf(mapLayanan.get("hargaDiskon").toString()) > 0.0
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
// tidak_dapat_skor_untuk_diskon_dpjp
|
||||
mapLayanan.put("skor", 0.0);
|
||||
mapLayanan.put("tSkor", 0.0);
|
||||
} else if (!mapLayanan.get("namaProduk").toString().toLowerCase().contains(Master.KONSUL)
|
||||
&& !mapLayanan.get("namaProduk").toString().toLowerCase().contains(Master.VISIT)
|
||||
&& listRuangEks.contains(mapLayanan.get("ruanganId"))) {
|
||||
mapLayanan.put("skor",
|
||||
Double.valueOf(mapLayanan.get("skor").toString()) * Master.Remunerasi.PERSEN_SKOR_EKSEKUTIF);
|
||||
mapLayanan.put("tSkor", Double.valueOf(mapLayanan.get("skor").toString())
|
||||
* Double.valueOf(mapLayanan.get("jumlah").toString()));
|
||||
} else if (mapLayanan.get("jenisPetugasId").equals(Master.JenisPetugasPelaksana.ASISTEN_SPESIALIS)) {
|
||||
mapLayanan.put("skor", Double.valueOf(mapLayanan.get("skor").toString())
|
||||
* Master.Remunerasi.PERSEN_SKOR_ASISTEN_SPESIALIS);
|
||||
mapLayanan.put("tSkor", Double.valueOf(mapLayanan.get("skor").toString())
|
||||
* Double.valueOf(mapLayanan.get("jumlah").toString()));
|
||||
} else {
|
||||
mapLayanan.put("tSkor", Double.valueOf(mapLayanan.get("skor").toString())
|
||||
* Double.valueOf(mapLayanan.get("jumlah").toString()));
|
||||
@ -746,4 +747,351 @@ public class LogbookKinerjaServiceImpl extends BaseVoServiceImpl implements Logb
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> findDetailPasienLogbook(Integer idPegawai, Integer idIndikator, Integer idProduk,
|
||||
String tglPelayanan, Integer idJenisPetugas, Double skor) {
|
||||
List<Map<String, Object>> result = new ArrayList<>();
|
||||
|
||||
List<Integer> listRuangEks = splitDataSettingDatafixed("IdRuanganEksekutif");
|
||||
|
||||
List<Map<String, Object>> dataLayanan = ikiDanRemunerasiDao.findDetailPasienLogbook(idProduk, tglPelayanan,
|
||||
Master.JenisPegawai.DOKTER, idPegawai, Arrays.asList(Master.JenisProduk.NONTINDAKAN),
|
||||
Master.Produk.KARCIS);
|
||||
|
||||
for (Map<String, Object> mapLayanan : dataLayanan) {
|
||||
if (idIndikator.equals(Master.IndikatorKinerjaDetail.KONSUL_EKS)
|
||||
&& mapLayanan.get("namaProduk").toString().toLowerCase().contains(Master.KONSUL)
|
||||
&& listRuangEks.contains(mapLayanan.get("ruanganId"))) {
|
||||
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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
} else 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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
}
|
||||
} else if (idIndikator.equals(Master.IndikatorKinerjaDetail.KONSUL_GADAR)
|
||||
&& mapLayanan.get("namaProduk").toString().toLowerCase().contains(Master.KONSUL)
|
||||
&& mapLayanan.get("departemenId").equals(Master.Departemen.IGD)) {
|
||||
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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
} else 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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
}
|
||||
} else if (idIndikator.equals(Master.IndikatorKinerjaDetail.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)) {
|
||||
if (skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) > 0.0
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
} else 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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
}
|
||||
} else if (idIndikator.equals(Master.IndikatorKinerjaDetail.VISITE)
|
||||
&& mapLayanan.get("namaProduk").toString().toLowerCase().contains(Master.VISIT)) {
|
||||
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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
} else 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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
}
|
||||
} else if (idIndikator.equals(Master.IndikatorKinerjaDetail.TINDAKAN_EKS)
|
||||
&& listRuangEks.contains(mapLayanan.get("ruanganId"))) {
|
||||
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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
} else 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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
}
|
||||
} else if (idIndikator.equals(Master.IndikatorKinerjaDetail.TINDAKAN_GADAR)
|
||||
&& mapLayanan.get("departemenId").equals(Master.Departemen.IGD)) {
|
||||
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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
} else 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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
}
|
||||
} else if (idIndikator.equals(Master.IndikatorKinerjaDetail.TINDAKAN_OPS)
|
||||
&& mapLayanan.get("ruanganId").equals(Master.Ruangan.OK)) {
|
||||
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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
} else 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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
}
|
||||
} else if (idIndikator.equals(Master.IndikatorKinerjaDetail.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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
} else 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
|
||||
&& (CommonUtil.isNullOrEmpty(mapLayanan.get("statusDiskon"))
|
||||
|| !Boolean.valueOf(mapLayanan.get("statusDiskon").toString()))) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
} else if (!skor.equals(0.0) && Double.valueOf(mapLayanan.get("hargaDiskon").toString()) == 0.0) {
|
||||
mapLayanan.remove("noRec");
|
||||
mapLayanan.remove("statusDiskon");
|
||||
mapLayanan.remove("departemenId");
|
||||
mapLayanan.remove("ruanganId");
|
||||
mapLayanan.remove("hargaDiskon");
|
||||
result.add(mapLayanan);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -83,7 +83,7 @@ public class TargetLayananTimer {
|
||||
runDate.add(Calendar.MONTH, 1);
|
||||
}
|
||||
|
||||
LOGGER.info("MonthlyTimer : Set to next month " + runDate.getTime());
|
||||
LOGGER.info("TargetLayananTimer : Set to next month " + runDate.getTime());
|
||||
|
||||
return runDate.getTime();
|
||||
}
|
||||
|
||||
@ -1015,9 +1015,10 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
|
||||
|
||||
@RequestMapping(value = "/get-master-bobot-jenis-indikator", method = RequestMethod.GET)
|
||||
public ResponseEntity<List<Map<String, Object>>> getMasterBobotJenisIndikator(HttpServletRequest request,
|
||||
@RequestParam(value = "periode", required = true) Long periode) {
|
||||
@RequestParam(value = "periode", required = true) Long periode,
|
||||
@RequestParam(value = "kelompokKerjaId", required = false) Integer idKelompokKerja) {
|
||||
try {
|
||||
List<Map<String, Object>> result = bobotJenisIndikatorService.findAllBobotJenis(periode);
|
||||
List<Map<String, Object>> result = bobotJenisIndikatorService.findAllBobotJenis(periode, idKelompokKerja);
|
||||
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
|
||||
getMessage(MessageResource.LABEL_SUCCESS, request));
|
||||
return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage);
|
||||
@ -1152,4 +1153,29 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
|
||||
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage);
|
||||
}
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/get-detail-pasien-dokter", method = RequestMethod.GET)
|
||||
public ResponseEntity<List<Map<String, Object>>> getDetailPasienDetail(HttpServletRequest request,
|
||||
@RequestParam(value = "pegawaiId", required = true) Integer idPegawai,
|
||||
@RequestParam(value = "indikatorId", required = true) Integer idIndikator,
|
||||
@RequestParam(value = "produkId", required = true) Integer idProduk,
|
||||
@RequestParam(value = "tglPelayanan", required = true) String tglPelayanan,
|
||||
@RequestParam(value = "jenisPetugasId", required = true) Integer idJenisPetugas,
|
||||
@RequestParam(value = "skor", required = true) Double skor) throws ParseException {
|
||||
try {
|
||||
List<Map<String, Object>> result = logbookKinerjaService.findDetailPasienLogbook(idPegawai, idIndikator,
|
||||
idProduk, tglPelayanan, idJenisPetugas, skor);
|
||||
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 detail pasien logbook skoring dokter", 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 detail pasien logbook skoring dokter", jse.getMessage());
|
||||
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage());
|
||||
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -132,7 +132,6 @@ import com.jasamedika.medifirst2000.util.CommonUtil;
|
||||
import com.jasamedika.medifirst2000.util.DateUtil;
|
||||
import com.jasamedika.medifirst2000.util.rest.RestUtil;
|
||||
import com.jasamedika.medifirst2000.vo.*;
|
||||
import com.jasamedika.medifirst2000.vo.custom.TargetLayananCustomVO;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/sdm")
|
||||
@ -401,9 +400,6 @@ public class SdmController extends LocaleController<AkunVO> {
|
||||
@Autowired
|
||||
private RuanganService ruanganService;
|
||||
|
||||
@Autowired
|
||||
private TargetLayananService targetLayananService;
|
||||
|
||||
@Autowired
|
||||
private RekamUraianRincianKegiatanService rekamUraianRincianKegiatanService;
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user