Compare commits
No commits in common. "master" and "ade/jadwal-dinas/juni2026" have entirely different histories.
master
...
ade/jadwal
@ -15,7 +15,7 @@
|
||||
</context-param>
|
||||
<context-param>
|
||||
<param-name>spring.profiles.default</param-name>
|
||||
<param-value>bridging</param-value>
|
||||
<param-value>localhost</param-value>
|
||||
</context-param>
|
||||
|
||||
<listener>
|
||||
|
||||
@ -170,7 +170,6 @@ public final class Master {
|
||||
public static final Integer KELAS_SATU = 3;
|
||||
public static final Integer[] KELAS_SATU_VIP = { 3, 5, 8, 21 };
|
||||
public static final Integer NON_KELAS = 6;
|
||||
public static final Integer NON_KELAS_EKSEKUTIF = 22;
|
||||
public static final Integer[] REF_KELAS_KAMAR = { 1, 2, 3, 5, 6, 8 };
|
||||
}
|
||||
|
||||
@ -277,7 +276,6 @@ public final class Master {
|
||||
public static final class MonitoringAbsensi {
|
||||
public static final Integer BATAS_MULTI_FINGERPRINT = 10; // 10_Menit
|
||||
public static final Long BATAS_TERLAMBAT = 15L; // 15_Menit
|
||||
public static final Long BATAS_TERLAMBAT_01062026 = 0L; // 15_Menit
|
||||
}
|
||||
|
||||
public static final class NilaiKelompokJabatan {
|
||||
@ -393,7 +391,7 @@ public final class Master {
|
||||
public static final String OPERATOR_FACTOR_RATE_NONSHIFT = "x";
|
||||
public static final Integer[] PSM = { 31, 47, 106, 203, 204 }; // id shift kerja -> ada penambahan 203, 204
|
||||
public static final Integer RESET = 0;
|
||||
public static final Integer[] TUJUH_BELAS_JAM_SHIFT = { 22, 24, 31, 33, 46, 47, 50, 58, 64, 65, 66, 86, 91, 106, 114, 115, 203, 204, 216, 313, 314, 315, 316}; // id shift kerja -> ada penambahan 203, 204
|
||||
public static final Integer[] TUJUH_BELAS_JAM_SHIFT = { 22, 24, 31, 33, 46, 47, 50, 58, 64, 65, 66, 86, 91, 106, 114, 115, 203, 204}; // id shift kerja -> ada penambahan 203, 204
|
||||
}
|
||||
|
||||
public static final class StatusPegawai {
|
||||
|
||||
@ -257,16 +257,6 @@ public interface MonitoringAbsenDao extends PagingAndSortingRepository<Monitorin
|
||||
Map<String, Object> findShiftPMDetail(@Param("idKelompokShift") Integer idKelompokShift,
|
||||
@Param("namaShift") String namaShift, @Param("kodeExternal") String kodeExternal);
|
||||
|
||||
@Query("select new map(shiftKerja.jamMasuk as jamMasuk, " + "shiftKerja.jamPulang as jamPulang, "
|
||||
+ "shiftKerja.jamBreakAkhir as jamBreakAkhir, " + "shiftKerja.jamBreakAwal as jamBreakAwal, "
|
||||
+ "shiftKerja.factorRate as factorRate, " + "shiftKerja.operatorFactorRate as operatorFactorRate, "
|
||||
+ "shiftKerja.komponenIndexId as komponenIndexId, " + "shiftKerja.waktuIstirahat as waktuIstirahat) "
|
||||
+ "from ShiftKerja shiftKerja " + "left join shiftKerja.kelompokShift kelompokShift "
|
||||
+ "left join shiftKerja.komponenIndex komponenIndex " + "where kelompokShift.id = :idKelompokShift "
|
||||
+ "and shiftKerja.namaShift = :namaShift " + "and shiftKerja.kodeExternal = :kodeExternal " + "and shiftKerja.statusEnabled is true")
|
||||
Map<String, Object> findShiftPMDetailWithStatusEnableTrue(@Param("idKelompokShift") Integer idKelompokShift,
|
||||
@Param("namaShift") String namaShift, @Param("kodeExternal") String kodeExternal);
|
||||
|
||||
@Query("select distinct new map(pegawaiHistoriRekapIndex.nilaiIndex as nilaiIndex, "
|
||||
+ "pegawaiHistoriRekapIndex.nilaiIndexTotal as nilaiIndexTotal, "
|
||||
+ "komponenIndex.komponenIndex as namaKomponenIndex, " + "komponenIndex.id as idKomponenIndex, "
|
||||
|
||||
@ -197,7 +197,7 @@ public interface PelayananPasienDao extends JpaRepository<PelayananPasien, Strin
|
||||
+ "when pd.kelompokPasienId = 5 then 6 " + "when pd.kelompokPasienId = 6 then 7 "
|
||||
+ "when pd.kelompokPasienId = 3 then 8 " + "when pd.kelompokPasienId = 7 then 9 "
|
||||
+ "else 10 end as sortIdKelompokPasien," + "kp.kelompokPasien as kelompokPasien," + "pp.kelasId as idKelas,"
|
||||
+ "case when (pp.kelasId = 6 or pp.kelasId = 22) then 1 " + "when pp.kelasId = 1 then 2 " + "when pp.kelasId = 2 then 3 "
|
||||
+ "case when pp.kelasId = 6 then 1 " + "when pp.kelasId = 1 then 2 " + "when pp.kelasId = 2 then 3 "
|
||||
+ "when pp.kelasId = 3 then 4 " + "when pp.kelasId = 8 then 5 " + "when pp.kelasId = 5 then 6 "
|
||||
+ "when pp.kelasId = 21 then 7 " + "else 8 end as sortIdKelas," + "kls.namaKelas as namaKelas,"
|
||||
+ "ppp.noRec as idPelayananPasienPetugas," + "ppp.ObjectJenisPetugasPeId as idJenisPelaksana,"
|
||||
@ -258,7 +258,7 @@ public interface PelayananPasienDao extends JpaRepository<PelayananPasien, Strin
|
||||
+ "when pd.kelompokPasienId = 1 then 5 " + "when pd.kelompokPasienId = 5 then 6 "
|
||||
+ "when pd.kelompokPasienId = 6 then 7 " + "when pd.kelompokPasienId = 3 then 8 "
|
||||
+ "when pd.kelompokPasienId = 7 then 9 " + "else 10 end," + "kp.kelompokPasien," + "pp.kelasId,"
|
||||
+ "case when (pp.kelasId = 6 or pp.kelasId = 22) then 1 " + "when pp.kelasId = 1 then 2 " + "when pp.kelasId = 2 then 3 "
|
||||
+ "case when pp.kelasId = 6 then 1 " + "when pp.kelasId = 1 then 2 " + "when pp.kelasId = 2 then 3 "
|
||||
+ "when pp.kelasId = 3 then 4 " + "when pp.kelasId = 8 then 5 " + "when pp.kelasId = 5 then 6 "
|
||||
+ "when pp.kelasId = 21 then 7 " + "else 8 end," + "kls.namaKelas," + "ppp.noRec,"
|
||||
+ "ppp.ObjectJenisPetugasPeId,ppp.ObjectPegawaiId,"
|
||||
@ -273,7 +273,7 @@ public interface PelayananPasienDao extends JpaRepository<PelayananPasien, Strin
|
||||
+ "when pd.kelompokPasienId = 9 then 4 " + "when pd.kelompokPasienId = 1 then 5 "
|
||||
+ "when pd.kelompokPasienId = 5 then 6 " + "when pd.kelompokPasienId = 6 then 7 "
|
||||
+ "when pd.kelompokPasienId = 3 then 8 " + "when pd.kelompokPasienId = 7 then 9 " + "else 10 end asc, "
|
||||
+ "pp.tglPelayanan, " + "pp.hargaJual, " + "case when (pp.kelasId = 6 or pp.kelasId = 22) then 1 "
|
||||
+ "pp.tglPelayanan, " + "pp.hargaJual, " + "case when pp.kelasId = 6 then 1 "
|
||||
+ "when pp.kelasId = 1 then 2 " + "when pp.kelasId = 2 then 3 " + "when pp.kelasId = 3 then 4 "
|
||||
+ "when pp.kelasId = 8 then 5 " + "when pp.kelasId = 5 then 6 " + "when pp.kelasId = 21 then 7 "
|
||||
+ "else 8 end asc," + "pr.namaProduk";
|
||||
@ -301,7 +301,7 @@ public interface PelayananPasienDao extends JpaRepository<PelayananPasien, Strin
|
||||
+ "order by case when kp.id = 2 then 1 when kp.id = 4 then 2 when kp.id = 8 then 3 when kp.id = 9 then 4 "
|
||||
+ "when kp.id = 1 then 5 when kp.id = 5 then 6 when kp.id = 6 then 7 when kp.id = 3 then 8 when kp.id = 7 then 9 else 10 end asc, "
|
||||
+ "pp.tglPelayanan, " + "pp.hargaJual, "
|
||||
+ "case when (kls.id = 6 or kls.id = 22) then 1 when kls.id = 1 then 2 when kls.id = 2 then 3 when kls.id =3 then 4 when kls.id = 8 then 5 when kls.id = 5 then 6 when kls.id = 21 then 7 else 8 end asc,"
|
||||
+ "case when kls.id = 6 then 1 when kls.id = 1 then 2 when kls.id = 2 then 3 when kls.id =3 then 4 when kls.id = 8 then 5 when kls.id = 5 then 6 when kls.id = 21 then 7 else 8 end asc,"
|
||||
+ "pr.namaProduk")
|
||||
List<Map<String, Object>> findPelayananPasienByPetugasAndPelayananPasien(@Param("pegawaiId") Integer idPegawai,
|
||||
@Param("norecs") List<String> norecs);
|
||||
|
||||
@ -320,7 +320,7 @@ public class JatahCutiDanIzinServiceImpl implements JatahCutiDanIzinService {
|
||||
|
||||
cutiTerpakaiB = cutiTerpakaiN;
|
||||
} else {
|
||||
sisaCutiB = 0 + getDataIntervensiCutiB;
|
||||
sisaCutiB = 0;
|
||||
cutiTerpakaiB = dataCutiB;
|
||||
}
|
||||
cutiIzinBuilder.sisaCutiB2(sisaCutiB2);
|
||||
|
||||
@ -512,16 +512,9 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
if (((Integer) jamEfektif.get("hariKerja")) != 0) {
|
||||
harikerja += (Integer) jamEfektif.get("hariKerja");
|
||||
kehadiran.put("pulangAwal", reduceTime(jadwalPulang, absensiDate));
|
||||
|
||||
if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) {
|
||||
if (terlambat > 15) {
|
||||
kehadiran.put("terlambat", terlambat);
|
||||
}
|
||||
}else{
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) {
|
||||
kehadiran.put("terlambat", terlambat);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -943,7 +936,8 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(data.get("namaShift")) && ((data.get("namaShift").equals("Pagi Malam")) || (data.get("namaShift").equals("Pagi Malam 2")) || (data.get("namaShift").equals("Non Shift MOD")))) {
|
||||
if (CommonUtil.isNotNullOrEmpty(data.get("namaShift")) && ((data.get("namaShift").equals("Pagi Malam"))
|
||||
|| (data.get("namaShift").equals("Non Shift MOD")))) {
|
||||
try {
|
||||
List<Map<String, Object>> listAbsensiPagi = new ArrayList<>();
|
||||
List<Map<String, Object>> listAbsensiPM = new ArrayList<>();
|
||||
@ -951,7 +945,7 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
Map<String, Object> detailShiftPMPagi = new HashMap<>();
|
||||
Map<String, Object> detailShiftPMMalam = new HashMap<>();
|
||||
|
||||
if ((data.get("namaShift").equals("Pagi Malam")) || (data.get("namaShift").equals("Pagi Malam 2"))) {
|
||||
if ((data.get("namaShift").equals("Pagi Malam"))) {
|
||||
detailShiftPMPagi = monitoringAbsenDao.findShiftPMDetail(
|
||||
Integer.parseInt(data.get("idKelompokShiftKerja").toString()), "Pagi", "P");
|
||||
detailShiftPMMalam = monitoringAbsenDao.findShiftPMDetail(
|
||||
@ -1052,22 +1046,12 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
dataPM.put("absensiMasuk", sdf.format(time));
|
||||
terlambat = reduceTime(absensiDate, jadwalMasuk);
|
||||
absensiMasuk = absensiDate;
|
||||
|
||||
if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) {
|
||||
jumlahCountTerlambat += 1;
|
||||
jumlahTerlambat += terlambat;
|
||||
dataPM.put("terlambat", terlambat);
|
||||
dataPM.put("telat", terlambat.toString());
|
||||
}
|
||||
}else{
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) {
|
||||
jumlahCountTerlambat += 1;
|
||||
jumlahTerlambat += terlambat;
|
||||
dataPM.put("terlambat", terlambat);
|
||||
dataPM.put("telat", terlambat.toString());
|
||||
}
|
||||
}
|
||||
} else if (count == index) {
|
||||
dataPM.put("absensiPulang", sdf.format(time));
|
||||
kelebihanJamKerja = reduceTime(absensiDate, jadwalPulang);
|
||||
@ -1214,23 +1198,12 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
data.put("absensiMasuk", sdf.format(time));
|
||||
terlambat = reduceTime(absensiDate, jadwalMasuk);
|
||||
absensiMasuk = absensiDate;
|
||||
|
||||
if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) {
|
||||
jumlahCountTerlambat += 1;
|
||||
jumlahTerlambat += terlambat;
|
||||
data.put("terlambat", terlambat);
|
||||
data.put("telat", terlambat.toString());
|
||||
}
|
||||
}else{
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) {
|
||||
jumlahCountTerlambat += 1;
|
||||
jumlahTerlambat += terlambat;
|
||||
data.put("terlambat", terlambat);
|
||||
data.put("telat", terlambat.toString());
|
||||
}
|
||||
}
|
||||
|
||||
} else if (count == index) {
|
||||
data.put("absensiPulang", sdf.format(time));
|
||||
kelebihanJamKerja = reduceTime(absensiDate, jadwalPulang);
|
||||
@ -1685,7 +1658,7 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(data.get("namaShift")) && ((data.get("namaShift").equals("Pagi Malam")) || (data.get("namaShift").equals("Pagi Malam 2")) || (data.get("namaShift").equals("Non Shift MOD")))) {
|
||||
if (CommonUtil.isNotNullOrEmpty(data.get("namaShift")) && ((data.get("namaShift").equals("Pagi Malam")) || (data.get("namaShift").equals("Non Shift MOD")))) {
|
||||
//if (CommonUtil.isNotNullOrEmpty(data.get("namaShift")) && (data.get("namaShift").equals("Non Shift MOD"))) {
|
||||
try {
|
||||
List<Map<String, Object>> listAbsensiPagi = new ArrayList<>();
|
||||
@ -1694,18 +1667,11 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
Map<String, Object> detailShiftPMPagi = new HashMap<>();
|
||||
Map<String, Object> detailShiftPMMalam = new HashMap<>();
|
||||
|
||||
if ((data.get("namaShift").equals("Pagi Malam")) || (data.get("namaShift").equals("Pagi Malam 2"))) {
|
||||
if((tanggal.before(new Date(1780272000000L)) || tanggal.equals(new Date(1780272000000L)))){
|
||||
if ((data.get("namaShift").equals("Pagi Malam"))) {
|
||||
detailShiftPMPagi = monitoringAbsenDao.findShiftPMDetail(
|
||||
Integer.parseInt(data.get("idKelompokShiftKerja").toString()), "Pagi", "P");
|
||||
detailShiftPMMalam = monitoringAbsenDao.findShiftPMDetail(
|
||||
Integer.parseInt(data.get("idKelompokShiftKerja").toString()), "Malam", "M");
|
||||
}else{
|
||||
detailShiftPMPagi = monitoringAbsenDao.findShiftPMDetailWithStatusEnableTrue(
|
||||
Integer.parseInt(data.get("idKelompokShiftKerja").toString()), "Pagi 1", "P1");
|
||||
detailShiftPMMalam = monitoringAbsenDao.findShiftPMDetailWithStatusEnableTrue(
|
||||
Integer.parseInt(data.get("idKelompokShiftKerja").toString()), "Malam", "M");
|
||||
}
|
||||
} else if ((data.get("namaShift").equals("Non Shift MOD"))) {
|
||||
if (data.get("namaHari").equals("Senin") || data.get("namaHari").equals("Selasa")
|
||||
|| data.get("namaHari").equals("Rabu") || data.get("namaHari").equals("Kamis")) {
|
||||
@ -1816,22 +1782,12 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
}
|
||||
terlambat = reduceTime(absensiDate, jadwalMasuk);
|
||||
absensiMasuk = absensiDate;
|
||||
|
||||
if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) {
|
||||
jumlahCountTerlambat += 1;
|
||||
jumlahTerlambat += terlambat;
|
||||
dataPM.put("terlambat", terlambat);
|
||||
dataPM.put("telat", terlambat.toString());
|
||||
}
|
||||
}else{
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) {
|
||||
jumlahCountTerlambat += 1;
|
||||
jumlahTerlambat += terlambat;
|
||||
dataPM.put("terlambat", terlambat);
|
||||
dataPM.put("telat", terlambat.toString());
|
||||
}
|
||||
}
|
||||
} else if (count == index) {
|
||||
listTrNo.add(Integer.parseInt(temp.get("tr_no").toString()));
|
||||
dataPM.put("absensiPulang", sdf.format(time));
|
||||
@ -2135,23 +2091,12 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
}
|
||||
terlambat = reduceTime(absensiDate, jadwalMasuk);
|
||||
absensiMasuk = absensiDate;
|
||||
|
||||
if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) {
|
||||
jumlahCountTerlambat += 1;
|
||||
jumlahTerlambat += terlambat;
|
||||
data.put("terlambat", terlambat);
|
||||
data.put("telat", terlambat.toString());
|
||||
}
|
||||
}else{
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) {
|
||||
jumlahCountTerlambat += 1;
|
||||
jumlahTerlambat += terlambat;
|
||||
data.put("terlambat", terlambat);
|
||||
data.put("telat", terlambat.toString());
|
||||
}
|
||||
}
|
||||
|
||||
} else if (count == index) {
|
||||
listTrNo.add(Integer.parseInt(temp.get("tr_no").toString()));
|
||||
data.put("absensiPulang", sdf.format(time));
|
||||
@ -3717,20 +3662,11 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
kehadiran.put("pulangAwal", reduceTime(jadwalPulang, absensiDate));
|
||||
kehadiran.put("pulangCepat", (reduceTime(jadwalPulang, absensiDate)).toString());
|
||||
jumlahPulangAwal += reduceTime(jadwalPulang, absensiDate);
|
||||
|
||||
if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) {
|
||||
if (terlambat > 15) {
|
||||
jumlahTerlambat += terlambat;
|
||||
kehadiran.put("terlambat", terlambat);
|
||||
kehadiran.put("telat", terlambat.toString());
|
||||
}
|
||||
}else{
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) {
|
||||
jumlahTerlambat += terlambat;
|
||||
kehadiran.put("terlambat", terlambat);
|
||||
kehadiran.put("telat", terlambat.toString());
|
||||
}
|
||||
}
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(data.get("idKelompokShiftKerja"))) {
|
||||
if ((Integer) data.get("idKelompokShiftKerja") == 2) {
|
||||
@ -4268,20 +4204,11 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
kehadiran.put("pulangAwal", reduceTime(jadwalPulang, absensiDate));
|
||||
kehadiran.put("pulangCepat", (reduceTime(jadwalPulang, absensiDate)).toString());
|
||||
jumlahPulangAwal += reduceTime(jadwalPulang, absensiDate);
|
||||
|
||||
if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) {
|
||||
if (terlambat > 15) {
|
||||
jumlahTerlambat += terlambat;
|
||||
kehadiran.put("terlambat", terlambat);
|
||||
kehadiran.put("telat", terlambat.toString());
|
||||
}
|
||||
}else{
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) {
|
||||
jumlahTerlambat += terlambat;
|
||||
kehadiran.put("terlambat", terlambat);
|
||||
kehadiran.put("telat", terlambat.toString());
|
||||
}
|
||||
}
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(data.get("idKelompokShiftKerja"))) {
|
||||
if (data.get("idKelompokShiftKerja") == getIdNonShiftPlus()) {
|
||||
@ -4658,20 +4585,11 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
data.put("pulangAwal", reduceTime(jadwalPulang, absensiDate));
|
||||
data.put("pulangCepat", (reduceTime(jadwalPulang, absensiDate)).toString());
|
||||
jumlahPulangAwal += reduceTime(jadwalPulang, absensiDate);
|
||||
|
||||
if((absensiMasuk.before(new Date(1780272000000L)) || absensiMasuk.equals(new Date(1780272000000L)))){
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT) {
|
||||
if (terlambat > 15) {
|
||||
jumlahTerlambat += terlambat;
|
||||
data.put("terlambat", terlambat);
|
||||
data.put("telat", terlambat.toString());
|
||||
}
|
||||
}else{
|
||||
if (terlambat > Master.MonitoringAbsensi.BATAS_TERLAMBAT_01062026) {
|
||||
jumlahTerlambat += terlambat;
|
||||
data.put("terlambat", terlambat);
|
||||
data.put("telat", terlambat.toString());
|
||||
}
|
||||
}
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(data.get("idKelompokShiftKerja"))) {
|
||||
if ((Integer) data.get("idKelompokShiftKerja") == 2) {
|
||||
|
||||
@ -38,7 +38,6 @@ import static com.jasamedika.medifirst2000.constants.Master.JenisProduk.OBAT_ALK
|
||||
import static com.jasamedika.medifirst2000.constants.Master.KONSUL_VISIT;
|
||||
import static com.jasamedika.medifirst2000.constants.Master.KategoryPegawai.DOKTER_LUAR;
|
||||
import static com.jasamedika.medifirst2000.constants.Master.Kelas.NON_KELAS;
|
||||
import static com.jasamedika.medifirst2000.constants.Master.Kelas.NON_KELAS_EKSEKUTIF;
|
||||
import static com.jasamedika.medifirst2000.constants.Master.KelompokPasien.KELOMPOK_BPJS;
|
||||
import static com.jasamedika.medifirst2000.constants.Master.KelompokUser.TATA_REKENING;
|
||||
import static com.jasamedika.medifirst2000.constants.Master.KomponenHarga.*;
|
||||
@ -1996,10 +1995,8 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
.map(d -> d.get("paketId").toString() + d.get("idKelas").toString()).collect(Collectors.toList()));
|
||||
allConcatProdukKelas.addAll(listData.stream().filter(d -> CommonUtil.isNotNullOrEmpty(d.get("idProduk")))
|
||||
.map(d -> d.get("idProduk").toString() + d.get("idKelas").toString()).collect(Collectors.toList()));
|
||||
|
||||
List<HargaNettoProdukByKelasD> tarifDetailReguler = hargaNettoProdukByKelasDDao
|
||||
.findByConcateProdukKelas(allConcatProdukKelas);
|
||||
|
||||
List<String> allConcatProdukNonkelas = listData.stream()
|
||||
.filter(d -> CommonUtil.isNotNullOrEmpty(d.get("regRefId")))
|
||||
.map(d -> d.get("regRefId").toString() + NON_KELAS).collect(Collectors.toList());
|
||||
@ -2007,18 +2004,6 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
.map(d -> d.get("paketId").toString() + NON_KELAS).collect(Collectors.toList()));
|
||||
allConcatProdukNonkelas.addAll(listData.stream().filter(d -> CommonUtil.isNotNullOrEmpty(d.get("idProduk")))
|
||||
.map(d -> d.get("idProduk").toString() + NON_KELAS).collect(Collectors.toList()));
|
||||
|
||||
List<String> allConcatProdukNonkelasEksekutif = listData.stream()
|
||||
.filter(d -> CommonUtil.isNotNullOrEmpty(d.get("regRefId")))
|
||||
.map(d -> d.get("regRefId").toString() + NON_KELAS_EKSEKUTIF).collect(Collectors.toList());
|
||||
allConcatProdukNonkelasEksekutif.addAll(listData.stream().filter(d -> CommonUtil.isNotNullOrEmpty(d.get("paketId")))
|
||||
.map(d -> d.get("paketId").toString() + NON_KELAS_EKSEKUTIF).collect(Collectors.toList()));
|
||||
allConcatProdukNonkelasEksekutif.addAll(listData.stream().filter(d -> CommonUtil.isNotNullOrEmpty(d.get("idProduk")))
|
||||
.map(d -> d.get("idProduk").toString() + NON_KELAS_EKSEKUTIF).collect(Collectors.toList()));
|
||||
|
||||
allConcatProdukNonkelas.addAll(allConcatProdukNonkelasEksekutif);
|
||||
|
||||
|
||||
List<HargaNettoProdukByKelasD> tarifDetailNonKelas = hargaNettoProdukByKelasDDao
|
||||
.findByConcateProdukKelas(allConcatProdukNonkelas);
|
||||
Set<Map<String, Object>> ibuPaketDiRanapByDokter = pelayananPasienDao.findPasienPaketDiRanapByDokter(drKsmObgyn,
|
||||
@ -2068,7 +2053,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
} else {
|
||||
Optional<HargaNettoProdukByKelasD> byDetailTarifNonKelas = tarifDetailNonKelas.stream()
|
||||
.filter(dt -> dt.getProdukId().equals(d.get("paketId")))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS) || dt.getKelasId().equals(NON_KELAS_EKSEKUTIF))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS))
|
||||
.filter(dt -> dt.getKomponenHargaId().equals(SPOG_OPERATOR)).findFirst();
|
||||
byDetailTarifNonKelas.ifPresent(hargaNettoProdukByKelasD -> d.put("hargaJasa",
|
||||
CommonUtil.isNotNullOrEmpty(byDetailTarifNonKelas.get().getHargaNetto1())
|
||||
@ -2087,7 +2072,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
} else {
|
||||
Optional<HargaNettoProdukByKelasD> byDetailTarifNonKelas = tarifDetailNonKelas.stream()
|
||||
.filter(dt -> dt.getProdukId().equals(d.get("paketId")))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS) || dt.getKelasId().equals(NON_KELAS_EKSEKUTIF))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS))
|
||||
.filter(dt -> dt.getKomponenHargaId().equals(SPOG_ASISTEN)).findFirst();
|
||||
byDetailTarifNonKelas.ifPresent(hargaNettoProdukByKelasD -> d.put("hargaJasa",
|
||||
CommonUtil.isNotNullOrEmpty(byDetailTarifNonKelas.get().getHargaNetto1())
|
||||
@ -2105,7 +2090,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
} else {
|
||||
Optional<HargaNettoProdukByKelasD> byDetailTarifNonKelas = tarifDetailNonKelas.stream()
|
||||
.filter(dt -> dt.getProdukId().equals(d.get("idProduk")))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS) || dt.getKelasId().equals(NON_KELAS_EKSEKUTIF))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS))
|
||||
.filter(dt -> dt.getKomponenHargaId().equals(JASA_DOKTER)).findFirst();
|
||||
byDetailTarifNonKelas.ifPresent(hargaNettoProdukByKelasD -> d.put("hargaJasa",
|
||||
CommonUtil.isNotNullOrEmpty(byDetailTarifNonKelas.get().getHargaNetto1())
|
||||
@ -2123,7 +2108,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
} else {
|
||||
Optional<HargaNettoProdukByKelasD> byDetailTarifNonKelas = tarifDetailNonKelas.stream()
|
||||
.filter(dt -> dt.getProdukId().equals(d.get("idProduk")))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS) || dt.getKelasId().equals(NON_KELAS_EKSEKUTIF))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS))
|
||||
.filter(dt -> dt.getKomponenHargaId().equals(JASA_ASISTEN_SPESIALIS)).findFirst();
|
||||
byDetailTarifNonKelas.ifPresent(hargaNettoProdukByKelasD -> d.put("hargaJasa",
|
||||
CommonUtil.isNotNullOrEmpty(byDetailTarifNonKelas.get().getHargaNetto1())
|
||||
@ -2141,7 +2126,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
} else {
|
||||
Optional<HargaNettoProdukByKelasD> byDetailTarifNonKelas = tarifDetailNonKelas.stream()
|
||||
.filter(dt -> dt.getProdukId().equals(d.get("idProduk")))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS) || dt.getKelasId().equals(NON_KELAS_EKSEKUTIF))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS))
|
||||
.filter(dt -> dt.getKomponenHargaId().equals(JASA_DOKTER_ANASTESI)).findFirst();
|
||||
byDetailTarifNonKelas.ifPresent(hargaNettoProdukByKelasD -> d.put("hargaJasa",
|
||||
CommonUtil.isNotNullOrEmpty(byDetailTarifNonKelas.get().getHargaNetto1())
|
||||
|
||||
@ -33,7 +33,6 @@ import static com.jasamedika.medifirst2000.constants.Master.GolonganProduk.KONSU
|
||||
import static com.jasamedika.medifirst2000.constants.Master.GolonganProduk.VISIT;
|
||||
import static com.jasamedika.medifirst2000.constants.Master.JenisPetugasPelaksana.*;
|
||||
import static com.jasamedika.medifirst2000.constants.Master.Kelas.NON_KELAS;
|
||||
import static com.jasamedika.medifirst2000.constants.Master.Kelas.NON_KELAS_EKSEKUTIF;
|
||||
import static com.jasamedika.medifirst2000.constants.Master.KelompokPasien.KELOMPOK_BPJS;
|
||||
import static com.jasamedika.medifirst2000.constants.Master.KomponenHarga.*;
|
||||
import static com.jasamedika.medifirst2000.constants.Master.Profesi.TERAPI;
|
||||
@ -1896,18 +1895,8 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
|
||||
.map(d -> d.get("paketId").toString() + NON_KELAS).collect(Collectors.toList()));
|
||||
allConcatProdukNonkelas.addAll(listData.stream().filter(d -> CommonUtil.isNotNullOrEmpty(d.get("idProduk")))
|
||||
.map(d -> d.get("idProduk").toString() + NON_KELAS).collect(Collectors.toList()));
|
||||
|
||||
List<String> allConcatProdukNonkelasEksekutif = listData.stream()
|
||||
.filter(d -> CommonUtil.isNotNullOrEmpty(d.get("regRefId")))
|
||||
.map(d -> d.get("regRefId").toString() + NON_KELAS_EKSEKUTIF).collect(Collectors.toList());
|
||||
allConcatProdukNonkelasEksekutif.addAll(listData.stream().filter(d -> CommonUtil.isNotNullOrEmpty(d.get("paketId")))
|
||||
.map(d -> d.get("paketId").toString() + NON_KELAS_EKSEKUTIF).collect(Collectors.toList()));
|
||||
allConcatProdukNonkelasEksekutif.addAll(listData.stream().filter(d -> CommonUtil.isNotNullOrEmpty(d.get("idProduk")))
|
||||
.map(d -> d.get("idProduk").toString() + NON_KELAS_EKSEKUTIF).collect(Collectors.toList()));
|
||||
//List<HargaNettoProdukByKelasD> tarifDetailNonKelas = hargaNettoProdukByKelasDDao.findByConcateProdukKelas(allConcatProdukNonkelas); // Ganti Versi batching
|
||||
|
||||
allConcatProdukNonkelas.addAll(allConcatProdukNonkelasEksekutif);
|
||||
|
||||
final int BATCH_SIZE_NB = Master.AppDefaultVariabel.RECURSIVE_BATCH;
|
||||
int totalNB = allConcatProdukNonkelas.size();
|
||||
List<HargaNettoProdukByKelasD> tarifDetailNonKelas = new ArrayList<>();
|
||||
@ -1964,7 +1953,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
|
||||
} else {
|
||||
Optional<HargaNettoProdukByKelasD> byDetailTarifNonKelas = tarifDetailNonKelas.stream()
|
||||
.filter(dt -> dt.getProdukId().equals(d.get("paketId")))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS) || dt.getKelasId().equals(NON_KELAS_EKSEKUTIF))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS))
|
||||
.filter(dt -> dt.getKomponenHargaId().equals(SPOG_OPERATOR)).findFirst();
|
||||
byDetailTarifNonKelas.ifPresent(hargaNettoProdukByKelasD -> d.put("hargaJasa",
|
||||
CommonUtil.isNotNullOrEmpty(byDetailTarifNonKelas.get().getHargaNetto1())
|
||||
@ -1983,7 +1972,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
|
||||
} else {
|
||||
Optional<HargaNettoProdukByKelasD> byDetailTarifNonKelas = tarifDetailNonKelas.stream()
|
||||
.filter(dt -> dt.getProdukId().equals(d.get("paketId")))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS) || dt.getKelasId().equals(NON_KELAS_EKSEKUTIF))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS))
|
||||
.filter(dt -> dt.getKomponenHargaId().equals(SPOG_ASISTEN)).findFirst();
|
||||
byDetailTarifNonKelas.ifPresent(hargaNettoProdukByKelasD -> d.put("hargaJasa",
|
||||
CommonUtil.isNotNullOrEmpty(byDetailTarifNonKelas.get().getHargaNetto1())
|
||||
@ -2005,7 +1994,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
|
||||
} else {
|
||||
Optional<HargaNettoProdukByKelasD> byDetailTarifNonKelas = tarifDetailNonKelas.stream()
|
||||
.filter(dt -> dt.getProdukId().equals(d.get("idProduk")))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS) || dt.getKelasId().equals(NON_KELAS_EKSEKUTIF))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS))
|
||||
.filter(dt -> dt.getKomponenHargaId().equals(JASA_DOKTER)).findFirst();
|
||||
byDetailTarifNonKelas.ifPresent(hargaNettoProdukByKelasD -> d.put("hargaJasa",
|
||||
CommonUtil.isNotNullOrEmpty(byDetailTarifNonKelas.get().getHargaNetto1())
|
||||
@ -2027,7 +2016,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
|
||||
} else {
|
||||
Optional<HargaNettoProdukByKelasD> byDetailTarifNonKelas = tarifDetailNonKelas.stream()
|
||||
.filter(dt -> dt.getProdukId().equals(d.get("idProduk")))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS) || dt.getKelasId().equals(NON_KELAS_EKSEKUTIF))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS))
|
||||
.filter(dt -> dt.getKomponenHargaId().equals(JASA_ASISTEN_SPESIALIS)).findFirst();
|
||||
byDetailTarifNonKelas.ifPresent(hargaNettoProdukByKelasD -> d.put("hargaJasa",
|
||||
CommonUtil.isNotNullOrEmpty(byDetailTarifNonKelas.get().getHargaNetto1())
|
||||
@ -2049,7 +2038,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
|
||||
} else {
|
||||
Optional<HargaNettoProdukByKelasD> byDetailTarifNonKelas = tarifDetailNonKelas.stream()
|
||||
.filter(dt -> dt.getProdukId().equals(d.get("idProduk")))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS) || dt.getKelasId().equals(NON_KELAS_EKSEKUTIF))
|
||||
.filter(dt -> dt.getKelasId().equals(NON_KELAS))
|
||||
.filter(dt -> dt.getKomponenHargaId().equals(JASA_DOKTER_ANASTESI)).findFirst();
|
||||
byDetailTarifNonKelas.ifPresent(hargaNettoProdukByKelasD -> d.put("hargaJasa",
|
||||
CommonUtil.isNotNullOrEmpty(byDetailTarifNonKelas.get().getHargaNetto1())
|
||||
@ -2298,8 +2287,6 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
|
||||
double persenKonsultasi = toDoubleSettingFix("persenRemunKonsultasiDokter", tglAkhir);
|
||||
double persenVisite = toDoubleSettingFix("persenRemunVisiteDokter", tglAkhir);
|
||||
double persenTindakan = toDoubleSettingFix("persenRemunTindakanDokter", tglAkhir);
|
||||
double persenTindakanRuangIntensif = toDoubleSettingFix("persenRemunTindakanDokterRuangIntensif", tglAkhir);
|
||||
List<Integer> listRuanganIntensifRemun = toListIntegerSettingFix("listRuanganIntensifRemun", tglAkhir);
|
||||
double persenTarifJasaBedah = toDoubleSettingFix("persenTarifJasaBedah", tglAkhir);
|
||||
double persenTarifJasaICU = toDoubleSettingFix("persenTarifJasaICU", tglAkhir);
|
||||
double persenRemunDokterPA = toDoubleSettingFix("persenRemunDokterPA", tglAkhir);
|
||||
@ -2509,27 +2496,13 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
|
||||
d.put("persenJasa", persenLaboratorium + "%");
|
||||
d.put("keterangan", hargaJasa.getKeterangan());
|
||||
d.put("hargaJasa", hargaJasa.getNilai());
|
||||
} else if (CommonUtil.isNotNullOrEmpty(d.get("idRuangan")) && Arrays.asList(ICU_NICU).contains(Integer.parseInt(d.get("idRuangan").toString()))) {
|
||||
// Penyesuaian Perhitungan Remunerasi
|
||||
if( listRuanganIntensifRemun.contains(Integer.parseInt(d.get("idRuangan").toString())) ){
|
||||
double persenJasa = persenTindakanRuangIntensif / 100;
|
||||
RemunHargaJasaDto hargaJasa = hargaJasa(persenJasa * persenTarifICU, hargaJual, d);
|
||||
d.put("persenJasa", persenTindakanRuangIntensif + "%");
|
||||
d.put("keterangan", "Tarif Jasa (" + persenTarifJasaICU + "%)" + hargaJasa.getKeterangan());
|
||||
d.put("hargaJasa", hargaJasa.getNilai());
|
||||
}else{
|
||||
} else if (CommonUtil.isNotNullOrEmpty(d.get("idRuangan"))
|
||||
&& Arrays.asList(ICU_NICU).contains(Integer.parseInt(d.get("idRuangan").toString()))) {
|
||||
double persenJasa = persenTindakan / 100;
|
||||
RemunHargaJasaDto hargaJasa = hargaJasa(persenJasa * persenTarifICU, hargaJual, d);
|
||||
d.put("persenJasa", persenTindakan + "%");
|
||||
d.put("keterangan", "Tarif Jasa (" + persenTarifJasaICU + "%)" + hargaJasa.getKeterangan());
|
||||
d.put("hargaJasa", hargaJasa.getNilai());
|
||||
}
|
||||
} else {
|
||||
if( listRuanganIntensifRemun.contains(Integer.parseInt(d.get("idRuangan").toString())) ){
|
||||
RemunHargaJasaDto hargaJasa = hargaJasa(persenTindakanRuangIntensif / 100, hargaJual, d);
|
||||
d.put("persenJasa", persenTindakanRuangIntensif + "%");
|
||||
d.put("keterangan", hargaJasa.getKeterangan());
|
||||
d.put("hargaJasa", hargaJasa.getNilai());
|
||||
} else {
|
||||
RemunHargaJasaDto hargaJasa = hargaJasa(persenTindakan / 100, hargaJual, d);
|
||||
d.put("persenJasa", persenTindakan + "%");
|
||||
@ -2537,7 +2510,6 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
|
||||
d.put("hargaJasa", hargaJasa.getNilai());
|
||||
}
|
||||
}
|
||||
}
|
||||
/*
|
||||
* Populate data filter
|
||||
*/
|
||||
|
||||
@ -1524,5 +1524,211 @@
|
||||
</staticText>
|
||||
</frame>
|
||||
</band>
|
||||
<band height="899">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
<break>
|
||||
<reportElement x="0" y="0" width="592" height="1" uuid="3ac37058-02fc-47a1-b460-1b514dbd003d">
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
</reportElement>
|
||||
</break>
|
||||
<textField>
|
||||
<reportElement x="72" y="0" width="415" height="105" uuid="b042e84c-fa9c-476b-a8db-3977dfae8849">
|
||||
<property name="com.jaspersoft.studio.unit.x" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.y" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
</reportElement>
|
||||
<textElement verticalAlignment="Bottom"/>
|
||||
<textFieldExpression><![CDATA["Jakarta, "+ new SimpleDateFormat("dd MMMM yyyy", new java.util.Locale("id")).format(new Date())]]></textFieldExpression>
|
||||
</textField>
|
||||
<staticText>
|
||||
<reportElement x="290" y="115" width="198" height="15" uuid="10f81a52-61fa-4f23-93ba-8953e4b28688">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
</reportElement>
|
||||
<text><![CDATA[Kepada Yth,]]></text>
|
||||
</staticText>
|
||||
<staticText>
|
||||
<reportElement x="290" y="130" width="198" height="15" uuid="ef4d1e2c-a3c1-457b-99eb-b3865fecbb42">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
</reportElement>
|
||||
<text><![CDATA[Direktur Utama RSAB Harapan Kita]]></text>
|
||||
</staticText>
|
||||
<staticText>
|
||||
<reportElement x="290" y="145" width="198" height="15" uuid="23d0f8ea-4ad7-4dd0-bc45-b500ca86e93b">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
</reportElement>
|
||||
<text><![CDATA[di Jakarta]]></text>
|
||||
</staticText>
|
||||
<textField textAdjust="StretchHeight">
|
||||
<reportElement positionType="Float" stretchType="RelativeToTallestObject" x="72" y="324" width="415" height="19" uuid="815b2aa9-4e66-4f44-a9cc-98f35f99eb0c">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
</reportElement>
|
||||
<textElement textAlignment="Left"/>
|
||||
<textFieldExpression><![CDATA[" Dengan ini mengajukan permohonan "+($F{statusPegawai}!=null?$F{statusPegawai}.toLowerCase():"-")+" tahun "+ new SimpleDateFormat("yyyy", new java.util.Locale("id")).format(new Date())+" selama "+($F{lamaCuti}!=null?$F{lamaCuti}+" hari":"-")+" terhitung mulai "+($F{detailTgl}!=null?$F{detailTgl}:"-")+". Alasan permohonan " + ($F{statusPegawai}!=null?$F{statusPegawai}.toLowerCase():"-")+" tersebut adalah "+($F{alasan}!=null?$F{alasan}.toLowerCase():"-")+($F{tglMasuk}!=""?". Adapun saya telah bekerja di RSAB Harapan Kita sejak tanggal "+$F{tglMasuk}:"")+". Selama menjalankan cuti alamat saya adalah di "+($F{alamat}!=null?$F{alamat}:"-")+"."]]></textFieldExpression>
|
||||
</textField>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="72" y="234" width="89" height="15" uuid="def00d79-2d7a-4bfa-b6f1-e6d3b40d4aa3">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.x" value="pixel"/>
|
||||
</reportElement>
|
||||
<text><![CDATA[Nama]]></text>
|
||||
</staticText>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="161" y="234" width="5" height="15" uuid="8608f6fd-b50a-4292-b5cc-32fbb53ccc30">
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
</reportElement>
|
||||
<text><![CDATA[:]]></text>
|
||||
</staticText>
|
||||
<textField>
|
||||
<reportElement positionType="Float" x="166" y="234" width="322" height="15" uuid="9ecd6142-41e4-44c4-8d16-94c98c4a6510"/>
|
||||
<textFieldExpression><![CDATA[($F{nama}!=null?$F{nama}:"")]]></textFieldExpression>
|
||||
</textField>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="72" y="249" width="89" height="15" uuid="d1ea37ca-bda4-4b8f-9db7-80179f8dbc48">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
</reportElement>
|
||||
<text><![CDATA[NIP]]></text>
|
||||
</staticText>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="161" y="249" width="5" height="15" uuid="f34be8e8-6fe8-4726-ac56-c16a0a6a4b36"/>
|
||||
<text><![CDATA[:]]></text>
|
||||
</staticText>
|
||||
<textField>
|
||||
<reportElement positionType="Float" x="166" y="249" width="322" height="15" uuid="7f282ef2-662c-444f-980b-ea614ca021d9"/>
|
||||
<textFieldExpression><![CDATA[($F{nip}!=null?$F{nip}:"")]]></textFieldExpression>
|
||||
</textField>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="72" y="264" width="89" height="15" uuid="d928875f-c0c0-49d9-b234-7cd984033dfd">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
</reportElement>
|
||||
<text><![CDATA[Pangkat, Gol]]></text>
|
||||
</staticText>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="161" y="264" width="5" height="15" uuid="cf30eac4-4c1b-4d70-bb36-155e9eeb2de9"/>
|
||||
<text><![CDATA[:]]></text>
|
||||
</staticText>
|
||||
<textField>
|
||||
<reportElement positionType="Float" x="166" y="264" width="322" height="15" uuid="f398f10d-7bb9-4036-96d9-6f0122599d5c"/>
|
||||
<textFieldExpression><![CDATA[$F{pangkatGol}!=null?$F{pangkatGol}:"-"]]></textFieldExpression>
|
||||
</textField>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="72" y="279" width="89" height="15" uuid="dbeb04c6-58ad-43fe-96bb-f1aad3095bca">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
</reportElement>
|
||||
<text><![CDATA[Jabatan]]></text>
|
||||
</staticText>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="161" y="279" width="5" height="15" uuid="3c40abd5-bd1f-49e6-b8cf-3bdebc937269"/>
|
||||
<text><![CDATA[:]]></text>
|
||||
</staticText>
|
||||
<textField>
|
||||
<reportElement positionType="Float" x="166" y="279" width="322" height="15" uuid="3f10b7b1-5a51-4b95-b6ae-b60351b4800f"/>
|
||||
<textFieldExpression><![CDATA[($F{jabatan}!=null?$F{jabatan}:"")]]></textFieldExpression>
|
||||
</textField>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="72" y="294" width="89" height="15" uuid="1e1039fb-0909-41df-9f3d-aed0ca5ebce5">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
</reportElement>
|
||||
<text><![CDATA[Satuan Organisasi]]></text>
|
||||
</staticText>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="161" y="294" width="5" height="15" uuid="9c1f9ac6-f054-4457-8b93-933f05fa882e"/>
|
||||
<text><![CDATA[:]]></text>
|
||||
</staticText>
|
||||
<textField>
|
||||
<reportElement positionType="Float" x="166" y="294" width="322" height="15" uuid="a26e2463-956d-467a-ab41-d0f555496aa5"/>
|
||||
<textFieldExpression><![CDATA["RSAB Harapan Kita"]]></textFieldExpression>
|
||||
</textField>
|
||||
<textField textAdjust="StretchHeight">
|
||||
<reportElement positionType="Float" stretchType="RelativeToTallestObject" x="72" y="354" width="415" height="20" uuid="fe372652-87fc-451b-bd28-ce4a1c28c3a8">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
</reportElement>
|
||||
<textElement textAlignment="Left"/>
|
||||
<textFieldExpression><![CDATA[" Demikian permohonan "+($F{statusPegawai}!=null?$F{statusPegawai}.toLowerCase():"-")+" ini saya buat, terima kasih."]]></textFieldExpression>
|
||||
</textField>
|
||||
<textField>
|
||||
<reportElement positionType="Float" x="43" y="410" width="250" height="31" uuid="38f2321c-a453-4d37-bc4e-d4507c93a373">
|
||||
<property name="com.jaspersoft.studio.unit.x" value="pixel"/>
|
||||
<property name="com.jaspersoft.studio.unit.height" value="pixel"/>
|
||||
</reportElement>
|
||||
<textElement textAlignment="Left" verticalAlignment="Top">
|
||||
<font size="10"/>
|
||||
</textElement>
|
||||
<textFieldExpression><![CDATA[$F{jabatanAtasan1}!=null?$F{jabatanAtasan1}:$F{jabatanAtasan2}!=null?$F{jabatanAtasan2}:""]]></textFieldExpression>
|
||||
</textField>
|
||||
<textField>
|
||||
<reportElement positionType="Float" x="43" y="465" width="250" height="15" uuid="d474f1e3-5cdd-47b3-b28f-5aae4978737a">
|
||||
<property name="com.jaspersoft.studio.unit.x" value="pixel"/>
|
||||
</reportElement>
|
||||
<textElement textAlignment="Left" verticalAlignment="Middle">
|
||||
<font size="10"/>
|
||||
</textElement>
|
||||
<textFieldExpression><![CDATA[$F{namaAtasan1}!=null?$F{namaAtasan1}:$F{namaAtasan2}!=null?$F{namaAtasan2}:""]]></textFieldExpression>
|
||||
</textField>
|
||||
<textField>
|
||||
<reportElement positionType="Float" x="43" y="480" width="250" height="15" uuid="3b97642c-b56e-42e3-a6d1-2ef2e115bb0e">
|
||||
<property name="com.jaspersoft.studio.unit.x" value="pixel"/>
|
||||
</reportElement>
|
||||
<textElement textAlignment="Left" verticalAlignment="Bottom">
|
||||
<font size="10"/>
|
||||
</textElement>
|
||||
<textFieldExpression><![CDATA[$F{nipAtasan1}!=null?"NIP."+$F{nipAtasan1}:$F{nipAtasan2}!=null?"NIP."+$F{nipAtasan2}:""]]></textFieldExpression>
|
||||
</textField>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="313" y="395" width="196" height="15" uuid="d75bb821-e66f-4bf9-a862-e53b07e29d71"/>
|
||||
<textElement textAlignment="Left" verticalAlignment="Middle">
|
||||
<font size="10"/>
|
||||
</textElement>
|
||||
<text><![CDATA[Hormat saya,]]></text>
|
||||
</staticText>
|
||||
<textField isBlankWhenNull="true">
|
||||
<reportElement positionType="Float" x="313" y="465" width="196" height="15" uuid="b31bff61-b9d0-4b0c-a1e2-ab8372ffca05">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="pixel"/>
|
||||
</reportElement>
|
||||
<textElement textAlignment="Left" verticalAlignment="Middle">
|
||||
<font size="10"/>
|
||||
</textElement>
|
||||
<textFieldExpression><![CDATA[$F{nama}]]></textFieldExpression>
|
||||
</textField>
|
||||
<textField>
|
||||
<reportElement positionType="Float" x="313" y="480" width="196" height="15" uuid="1ab446e3-18c3-48a6-9e9c-d921f5da58d4">
|
||||
<property name="com.jaspersoft.studio.unit.x" value="pixel"/>
|
||||
<property name="com.jaspersoft.studio.unit.height" value="pixel"/>
|
||||
</reportElement>
|
||||
<textElement textAlignment="Left" verticalAlignment="Middle">
|
||||
<font size="10"/>
|
||||
</textElement>
|
||||
<textFieldExpression><![CDATA[$F{nip}!=null?"NIP."+$F{nip}:""]]></textFieldExpression>
|
||||
</textField>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="43" y="395" width="250" height="15" uuid="22df296a-d82d-4325-9fff-ca6d603937b0"/>
|
||||
<textElement textAlignment="Left" verticalAlignment="Middle">
|
||||
<font size="10"/>
|
||||
</textElement>
|
||||
<text><![CDATA[Mengetahui,]]></text>
|
||||
</staticText>
|
||||
<staticText>
|
||||
<reportElement x="72" y="190" width="175" height="15" uuid="92de4191-6384-47dc-9d68-375e8605dd84">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
</reportElement>
|
||||
<text><![CDATA[Dengan hormat,]]></text>
|
||||
</staticText>
|
||||
<staticText>
|
||||
<reportElement x="72" y="205" width="175" height="15" uuid="2ca29930-b387-4052-b5c7-1fe5b455f697">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
</reportElement>
|
||||
<text><![CDATA[Yang bertanda tangan di bawah ini :]]></text>
|
||||
</staticText>
|
||||
</band>
|
||||
</detail>
|
||||
</jasperReport>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user