Compare commits
134 Commits
ade/sdm-ab
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9fdb73c1e7 | ||
|
|
0e1eb307a0 | ||
|
|
1591b4cb17 | ||
|
|
8b65c492cf | ||
|
|
a0cc1cd482 | ||
|
|
1a6f7fcd16 | ||
|
|
77eb8f3672 | ||
|
|
b7139f2851 | ||
|
|
90d511e928 | ||
|
|
8c617702eb | ||
|
|
0c753e9c22 | ||
|
|
1317e877f0 | ||
|
|
248bc1cad7 | ||
|
|
db25c0aef9 | ||
|
|
12d298949d | ||
|
|
82b84d2fb9 | ||
|
|
eb7b2f91ad | ||
|
|
8482eab951 | ||
|
|
e816f1f2e4 | ||
|
|
406ed896a9 | ||
|
|
67a45253b1 | ||
|
|
9197ad56ce | ||
|
|
79f93d8f1e | ||
|
|
d06be39030 | ||
|
|
ae1e575d73 | ||
|
|
4d528f86bc | ||
|
|
42548e0cca | ||
|
|
a9a123cbf3 | ||
|
|
a705fc4c3b | ||
|
|
f2a247792d | ||
|
|
d1455fc1cf | ||
|
|
69df61e369 | ||
|
|
838739b0e1 | ||
|
|
4d73c1cbbe | ||
|
|
e6d47716ea | ||
|
|
74ca1b4cfa | ||
|
|
f5fd2a5831 | ||
|
|
f152385e55 | ||
|
|
f10373891e | ||
|
|
fbec23b80f | ||
|
|
d8de068b74 | ||
|
|
8e21f0b7cf | ||
|
|
f9d2af743f | ||
|
|
749fb0fb53 | ||
|
|
cf0e09ae01 | ||
|
|
e3dc3c5807 | ||
|
|
143bfa458e | ||
|
|
8b3a574ce1 | ||
|
|
9948599436 | ||
|
|
e6107dae92 | ||
|
|
d554375789 | ||
|
|
ef9ed72c64 | ||
|
|
b8ed331571 | ||
|
|
623f945859 | ||
|
|
ef48f2649c | ||
|
|
26e4dbb777 | ||
|
|
36eb745812 | ||
|
|
6b2df06b20 | ||
|
|
2481546942 | ||
|
|
12f5c633f2 | ||
|
|
2d83b9a91c | ||
|
|
31d07e10ce | ||
|
|
243a90e2c7 | ||
|
|
c44d5799f3 | ||
|
|
960b9af314 | ||
|
|
43d105de37 | ||
|
|
e6002e44e8 | ||
|
|
bda56b5f44 | ||
|
|
b1206442bb | ||
|
|
71391fb198 | ||
|
|
78699b5eee | ||
|
|
34ed82a346 | ||
|
|
69f37af283 | ||
|
|
5bbefc913d | ||
|
|
991b15464e | ||
|
|
3fb671e4f9 | ||
|
|
9c3f7924bc | ||
|
|
a1490efe43 | ||
|
|
b50c271d21 | ||
|
|
39796f393a | ||
|
|
389147e756 | ||
|
|
3582e22fed | ||
|
|
852325485b | ||
|
|
e2ac3cb803 | ||
|
|
1a21be43ab | ||
|
|
9a6ff8d2b8 | ||
|
|
a4b51b2ecb | ||
|
|
543b41dffa | ||
|
|
6dba53aee0 | ||
|
|
a4aa2ad173 | ||
|
|
d83566d8d5 | ||
|
|
6cd22af4b6 | ||
|
|
33bcd7b313 | ||
|
|
3947da84fc | ||
|
|
aa0f1ad5ae | ||
|
|
b239c18f9e | ||
|
|
07ced4ffc7 | ||
|
|
7f6474fb8a | ||
|
|
280cf73993 | ||
|
|
f03a842dd2 | ||
|
|
482731fafa | ||
|
|
eb71199dd7 | ||
|
|
5969617896 | ||
|
|
cb6b91f1ed | ||
|
|
c3688c9422 | ||
|
|
2c22512271 | ||
|
|
06aaa550d2 | ||
|
|
ad368f7946 | ||
|
|
8df79fac35 | ||
|
|
e2f9e92ecb | ||
|
|
9d054afeb5 | ||
|
|
a4dde9dd13 | ||
|
|
f092607ec4 | ||
|
|
8c1f6a1825 | ||
|
|
d24bbfb260 | ||
|
|
79fe30ff4b | ||
|
|
a4db6562b9 | ||
|
|
7750dc974e | ||
|
|
ac5e379b28 | ||
|
|
dd485a8a5a | ||
|
|
bdd2db96cc | ||
|
|
bda8841f7f | ||
|
|
d231af1cd1 | ||
|
|
27abc1bc75 | ||
|
|
d185736401 | ||
|
|
172c1a0539 | ||
|
|
82e77209e6 | ||
|
|
ec685312cf | ||
|
|
96abf3cdab | ||
|
|
4178405fd4 | ||
|
|
aace5f33b0 | ||
|
|
fc2d017850 | ||
|
|
321e87b6f9 | ||
|
|
d4f3cc414d |
@ -15,7 +15,7 @@
|
||||
</context-param>
|
||||
<context-param>
|
||||
<param-name>spring.profiles.default</param-name>
|
||||
<param-value>localhost</param-value>
|
||||
<param-value>bridging</param-value>
|
||||
</context-param>
|
||||
|
||||
<listener>
|
||||
|
||||
@ -461,6 +461,10 @@ public final class Master {
|
||||
public static final Integer KSM_OBGYN = 59;
|
||||
}
|
||||
|
||||
public static final class AppDefaultVariabel {
|
||||
public static final Integer RECURSIVE_BATCH = 8000;
|
||||
}
|
||||
|
||||
public static final class User {
|
||||
public static final Integer MOBILE_JKN = 3;
|
||||
}
|
||||
|
||||
@ -333,24 +333,25 @@ public class LogbookKinerjaDetailServiceImpl extends BaseVoServiceImpl implement
|
||||
logbookKinerjaDetailDao.save(catatanKinerja);
|
||||
}
|
||||
{
|
||||
Optional<LogbookKinerja> byIdLogbook = logbookKinerjaDao
|
||||
.findByNoRec(catatanKinerja.getLogbookKinerjaId());
|
||||
Optional<LogbookKinerja> byIdLogbook = logbookKinerjaDao.findByNoRec(catatanKinerja.getLogbookKinerjaId());
|
||||
byIdLogbook.ifPresent(logbookKinerja -> {
|
||||
if (Arrays.asList(PERCENTAGE)
|
||||
.contains(logbookKinerja.getIndikatorKinerja().getSatuanIndikatorId())) {
|
||||
List<Map<String, Object>> listCatatan = logbookKinerjaDetailDao
|
||||
.findAvgCapaianByKontrak(logbookKinerja.getNoRec(), Arrays.asList(PERCENTAGE));
|
||||
Optional<Map<String, Object>> catatan = listCatatan.stream()
|
||||
.filter(c -> logbookKinerja.getNoRec().equals(c.get("logbookId"))).findFirst();
|
||||
catatan.ifPresent(
|
||||
c -> logbookKinerja.setCapaian(Double.parseDouble(c.get("avgCapaian").toString())));
|
||||
if (Arrays.asList(PERCENTAGE).contains(logbookKinerja.getIndikatorKinerja().getSatuanIndikatorId())) {
|
||||
List<Map<String, Object>> listCatatan = logbookKinerjaDetailDao.findAvgCapaianByKontrak(logbookKinerja.getNoRec(), Arrays.asList(PERCENTAGE));
|
||||
Optional<Map<String, Object>> catatan = listCatatan.stream().filter(c -> logbookKinerja.getNoRec().equals(c.get("logbookId"))).findFirst();
|
||||
if (catatan.isPresent()) {
|
||||
logbookKinerja.setCapaian(Double.parseDouble(catatan.get().get("avgCapaian").toString()));
|
||||
} else {
|
||||
logbookKinerja.setCapaian(0.0);
|
||||
}
|
||||
|
||||
} else {
|
||||
List<Map<String, Object>> listCatatan = logbookKinerjaDetailDao
|
||||
.findSumCapaianByKontrak(logbookKinerja.getNoRec(), Arrays.asList(PERCENTAGE));
|
||||
Optional<Map<String, Object>> catatan = listCatatan.stream()
|
||||
.filter(c -> logbookKinerja.getNoRec().equals(c.get("logbookId"))).findFirst();
|
||||
catatan.ifPresent(
|
||||
c -> logbookKinerja.setCapaian(Double.parseDouble(c.get("sumCapaian").toString())));
|
||||
List<Map<String, Object>> listCatatan = logbookKinerjaDetailDao.findSumCapaianByKontrak(logbookKinerja.getNoRec(), Arrays.asList(PERCENTAGE));
|
||||
Optional<Map<String, Object>> catatan = listCatatan.stream().filter(c -> logbookKinerja.getNoRec().equals(c.get("logbookId"))).findFirst();
|
||||
if (catatan.isPresent()) {
|
||||
logbookKinerja.setCapaian(Double.parseDouble(catatan.get().get("sumCapaian").toString()));
|
||||
} else {
|
||||
logbookKinerja.setCapaian(0.0);
|
||||
}
|
||||
}
|
||||
logbookKinerjaDao.save(logbookKinerja);
|
||||
});
|
||||
|
||||
@ -264,17 +264,21 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
return result;
|
||||
}
|
||||
|
||||
public Map<String, Object> jamEfektifTunggal(Date jadwalPulang, Date jadwalMasuk, long waktuIstirahat, String shift) {
|
||||
public Map<String, Object> jamEfektifTunggal(Date jadwalPulang, Date jadwalMasuk, long waktuIstirahat, String shift, float factorRate) {
|
||||
Map<String, Object> result = new HashMap<>();
|
||||
String jam_efektif;
|
||||
long minutes;
|
||||
Long minutesAbsen = (long) 0;
|
||||
Long minutesJadwal = (long) 0;
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(jadwalMasuk) && CommonUtil.isNotNullOrEmpty(jadwalPulang)) {
|
||||
minutesJadwal = reduceTime(jadwalPulang, jadwalMasuk);
|
||||
if (minutesJadwal > 30) {
|
||||
minutesJadwal = minutesJadwal - waktuIstirahat; // 30_adalah_waktu_istirahat
|
||||
if (CommonUtil.isNotNullOrEmpty(factorRate)) {
|
||||
minutesJadwal = (long) (factorRate * 60);
|
||||
}else{
|
||||
if (CommonUtil.isNotNullOrEmpty(jadwalMasuk) && CommonUtil.isNotNullOrEmpty(jadwalPulang)) {
|
||||
minutesJadwal = reduceTime(jadwalPulang, jadwalMasuk);
|
||||
if (minutesJadwal > 30) {
|
||||
minutesJadwal = minutesJadwal - waktuIstirahat; // 30_adalah_waktu_istirahat
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1654,8 +1658,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("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<>();
|
||||
List<Map<String, Object>> listAbsensiPM = new ArrayList<>();
|
||||
@ -1806,11 +1810,11 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
Map<String, Object> jamEfektif = null;
|
||||
|
||||
if (i == 1) {
|
||||
//jamEfektif = jamEfektif(absensiDate, absensiMasuk, jadwalPulang, jadwalMasuk, (Integer) data.get("idKelompokShiftKerja"), waktuIstirahatPagi, "Pagi");
|
||||
jamEfektif = jamEfektifFactorRate((float) data.get("factorRate"), "Pagi");
|
||||
jamEfektif = jamEfektif(absensiDate, absensiMasuk, jadwalPulang, jadwalMasuk, (Integer) data.get("idKelompokShiftKerja"), waktuIstirahatPagi, "Pagi");
|
||||
//jamEfektif = jamEfektifFactorRate((float) data.get("factorRate"), "Pagi");
|
||||
} else if (i == 2) {
|
||||
//jamEfektif = jamEfektif(absensiDate, absensiMasuk, jadwalPulang, jadwalMasuk, (Integer) data.get("idKelompokShiftKerja"), waktuIstirahatMalam, "Malam");
|
||||
jamEfektif = jamEfektifFactorRate((float) data.get("factorRate"), "Malam");
|
||||
jamEfektif = jamEfektif(absensiDate, absensiMasuk, jadwalPulang, jadwalMasuk, (Integer) data.get("idKelompokShiftKerja"), waktuIstirahatMalam, "Malam");
|
||||
//jamEfektif = jamEfektifFactorRate((float) data.get("factorRate"), "Malam");
|
||||
}
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(jamEfektif)) {
|
||||
@ -1870,7 +1874,7 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
if (target.before(twoDaysAgo) || target.equals(twoDaysAgo)) {
|
||||
absenTunggal++;
|
||||
Map<String, Object> jamEfektif = new HashMap<>();
|
||||
jamEfektif = jamEfektifTunggal(jadwalPulang, jadwalMasuk, (long) data.get("waktuIstirahat"), (String) data.get("namaShift"));
|
||||
jamEfektif = jamEfektifTunggal(jadwalPulang, jadwalMasuk, (long) data.get("waktuIstirahat"), (String) data.get("namaShift"), (float) factorRateX);
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(jamEfektif)) {
|
||||
jamEf = (String) jamEfektif.get("jam_efektif");
|
||||
@ -1890,9 +1894,9 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
data.put("terlambat", "0");
|
||||
data.put("telat", (long) 0);
|
||||
}
|
||||
} catch (ParseException e) {
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
} else if ((CommonUtil.isNotNullOrEmpty(data.get("absensiPulang")) && CommonUtil.isNullOrEmpty(data.get("absensiMasuk"))) && (CommonUtil.isNotNullOrEmpty(jamMasuk) && CommonUtil.isNotNullOrEmpty(jamPulang))) {
|
||||
absenTunggal++;
|
||||
@ -2018,18 +2022,18 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
dataPM.put("verifikasi", "X");
|
||||
}
|
||||
}
|
||||
|
||||
data.put("jamEfektif", jamEf);
|
||||
data.put("jam_efektif", jamEf);
|
||||
data.put("kelebihanJamKerja", kelebihanJamKerja);
|
||||
|
||||
dataPM.put("jamEfektif", jamEf); //xxx
|
||||
dataPM.put("jam_efektif", jamEf); //xxx
|
||||
dataPM.put("kelebihanJamKerja", kelebihanJamKerja);
|
||||
rsMap.put("jumlahCountKelebihanJamKerja", jumlahCountKelebihanJamKerja);
|
||||
rsMap.put("jumlahKelebihanJamKerja", jumlahKelebihanJamKerja / 60);
|
||||
rsMap.put("jumlahKelebihanMenitKerja", jumlahKelebihanJamKerja);
|
||||
data.put("jumlahTerlambat", jumlahTerlambat.toString());
|
||||
data.put("jumlahJamEfektif", jumlahJamEfektif.toString());
|
||||
data.put("jumlahPulangAwal", jumlahPulangAwal.toString());
|
||||
data.put("alasan", alasanCuti);
|
||||
listkehadiran.add(data);
|
||||
dataPM.put("jumlahTerlambat", jumlahTerlambat.toString()); //xxx
|
||||
dataPM.put("jumlahJamEfektif", jumlahJamEfektif.toString()); //xxx
|
||||
dataPM.put("jumlahPulangAwal", jumlahPulangAwal.toString()); //xxx
|
||||
dataPM.put("alasan", alasanCuti); //xxx
|
||||
listkehadiran.add(dataPM);
|
||||
}
|
||||
rsMap.put("jumlahKelebihanJamKerja", jumlahKelebihanJamKerja / 60);
|
||||
rsMap.put("jumlahKelebihanMenitKerja", jumlahKelebihanJamKerja);
|
||||
@ -2173,12 +2177,25 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
if (target.before(twoDaysAgo) || target.equals(twoDaysAgo)) {
|
||||
absenTunggal++;
|
||||
Map<String, Object> jamEfektif = new HashMap<>();
|
||||
jamEfektif = jamEfektifTunggal(jadwalPulang, jadwalMasuk, (long) data.get("waktuIstirahat"), (String) data.get("namaShift"));
|
||||
jamEfektif = jamEfektifTunggal(jadwalPulang, jadwalMasuk, (long) data.get("waktuIstirahat"), (String) data.get("namaShift"), (float) factorRateX);
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(jamEfektif)) {
|
||||
jamEf = (String) jamEfektif.get("jam_efektif");
|
||||
jumlahJamEfektif += (Long) jamEfektif.get("Minutes_Efektif");
|
||||
|
||||
if (count == 1) {
|
||||
if ( CommonUtil.isNotNullOrEmpty(data.get("terlambat"))) {
|
||||
jumlahTerlambat -= (long) data.get("terlambat");
|
||||
jumlahCountTerlambat -= 1;
|
||||
data.put("terlambat", "0");
|
||||
data.put("telat", (long) 0);
|
||||
}
|
||||
}else{
|
||||
jumlahTerlambat += (long) 0;
|
||||
data.put("terlambat", "0");
|
||||
data.put("telat", (long) 0);
|
||||
}
|
||||
|
||||
if (((Integer) jamEfektif.get("hariKerja")) != 0) {
|
||||
harikerja += (Integer) jamEfektif.get("hariKerja");
|
||||
p1 += (Integer) jamEfektif.get("p1");
|
||||
@ -2187,11 +2204,11 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
malam += (Integer) jamEfektif.get("malam");
|
||||
data.putAll(jamEfektif);
|
||||
}
|
||||
}else{
|
||||
jumlahTerlambat += (long) 0;
|
||||
data.put("terlambat", "0");
|
||||
data.put("telat", (long) 0);
|
||||
}
|
||||
|
||||
jumlahTerlambat += (long) 0;
|
||||
data.put("terlambat", "0");
|
||||
data.put("telat", (long) 0);
|
||||
}
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
@ -2199,6 +2216,8 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
|
||||
} else if ((CommonUtil.isNotNullOrEmpty(data.get("absensiPulang")) && CommonUtil.isNullOrEmpty(data.get("absensiMasuk"))) && (CommonUtil.isNotNullOrEmpty(jamMasuk) && CommonUtil.isNotNullOrEmpty(jamPulang))) {
|
||||
absenTunggal++;
|
||||
|
||||
System.out.print("terlambat 2");
|
||||
} else if ( CommonUtil.isNotNullOrEmpty(data.get("factorRate")) && factorRateX > 0.0 && Arrays.asList(listKetidakhadiran).contains(data.get("kodeShift")) ) {
|
||||
//System.out.print("Ini Gua Cuti 123");
|
||||
Map<String, Object> jamEfektif = new HashMap<>();
|
||||
@ -2368,17 +2387,19 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
|
||||
if (CommonUtil.isNotNullOrEmpty(listkehadiran) && CommonUtil.isNotNullOrEmpty(groupKodeShift)) {
|
||||
if (Arrays.asList(listKetidakhadiran).contains(groupKodeShift)) {
|
||||
dataShift.put(groupKodeShift, listkehadiran.stream().filter(
|
||||
long jumlah = listkehadiran.stream().filter(
|
||||
p -> p.containsKey("kodeShift") &&
|
||||
groupKodeShift.equals(p.get("kodeShift"))
|
||||
).count());
|
||||
).count();
|
||||
dataShift.put(groupKodeShift, jumlah);
|
||||
}else{
|
||||
dataShift.put(groupKodeShift, listkehadiran.stream().filter(
|
||||
long jumlah = listkehadiran.stream().filter(
|
||||
p -> p.containsKey("kodeShift") &&
|
||||
groupKodeShift.equals(p.get("kodeShift")) &&
|
||||
!p.get("absensiMasuk").equals("-") &&
|
||||
!p.get("absensiPulang").equals("-")
|
||||
).count());
|
||||
).count();
|
||||
dataShift.put(groupKodeShift, jumlah);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1877,8 +1877,17 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
|
||||
.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<HargaNettoProdukByKelasD> tarifDetailReguler = hargaNettoProdukByKelasDDao.findByConcateProdukKelas(allConcatProdukKelas); // Ganti Versi batching
|
||||
|
||||
final int BATCH_SIZE = Master.AppDefaultVariabel.RECURSIVE_BATCH; // Limitasi Jumlah Data Per Batch
|
||||
int total = allConcatProdukKelas.size();
|
||||
List<HargaNettoProdukByKelasD> tarifDetailReguler = new ArrayList<>();
|
||||
for (int i = 0; i < total; i += BATCH_SIZE) {
|
||||
int end = Math.min(i + BATCH_SIZE, total);
|
||||
List<String> batchKeys = allConcatProdukKelas.subList(i, end);
|
||||
List<HargaNettoProdukByKelasD> batchResult = hargaNettoProdukByKelasDDao.findByConcateProdukKelas(batchKeys);
|
||||
tarifDetailReguler.addAll(batchResult);
|
||||
}
|
||||
List<String> allConcatProdukNonkelas = listData.stream()
|
||||
.filter(d -> CommonUtil.isNotNullOrEmpty(d.get("regRefId")))
|
||||
.map(d -> d.get("regRefId").toString() + NON_KELAS).collect(Collectors.toList());
|
||||
@ -1886,8 +1895,17 @@ 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<HargaNettoProdukByKelasD> tarifDetailNonKelas = hargaNettoProdukByKelasDDao
|
||||
.findByConcateProdukKelas(allConcatProdukNonkelas);
|
||||
//List<HargaNettoProdukByKelasD> tarifDetailNonKelas = hargaNettoProdukByKelasDDao.findByConcateProdukKelas(allConcatProdukNonkelas); // Ganti Versi batching
|
||||
|
||||
final int BATCH_SIZE_NB = Master.AppDefaultVariabel.RECURSIVE_BATCH;
|
||||
int totalNB = allConcatProdukNonkelas.size();
|
||||
List<HargaNettoProdukByKelasD> tarifDetailNonKelas = new ArrayList<>();
|
||||
for (int i = 0; i < totalNB; i += BATCH_SIZE_NB) {
|
||||
int end = Math.min(i + BATCH_SIZE_NB, totalNB);
|
||||
List<String> batchKeys = allConcatProdukNonkelas.subList(i, end);
|
||||
List<HargaNettoProdukByKelasD> batchResult = hargaNettoProdukByKelasDDao.findByConcateProdukKelas(batchKeys);
|
||||
tarifDetailNonKelas.addAll(batchResult);
|
||||
}
|
||||
Set<Map<String, Object>> ibuPaketDiRanapByDokter = pelayananPasienDao.findPasienPaketDiRanapByDokter(drKsmObgyn,
|
||||
allProdukEntriId, Arrays.asList(GRUP_RAWAT_INAP));
|
||||
Set<Integer> setIdIbu = ibuPaketDiRanapByDokter.stream()
|
||||
@ -2248,6 +2266,9 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
|
||||
} else {
|
||||
remunFfs = this.splitRemunFfs(idPegawai, bulan);
|
||||
}
|
||||
|
||||
// cek disini
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
List<Map<String, Object>> listData = (List<Map<String, Object>>) remunFfs.get("remun");
|
||||
Double target = Double.parseDouble(remunFfs.get("targetRemun").toString());
|
||||
|
||||
@ -257,7 +257,7 @@
|
||||
<textElement verticalAlignment="Middle">
|
||||
<font size="10"/>
|
||||
</textElement>
|
||||
<text><![CDATA[Yth. Menteri Kesehatan RI]]></text>
|
||||
<text><![CDATA[Direktur Utama RSAB Harapan Kita]]></text>
|
||||
</staticText>
|
||||
<staticText>
|
||||
<reportElement x="382" y="12" width="178" height="17" uuid="d382faef-4c46-4fbf-a505-1bcc7b814e35"/>
|
||||
@ -1338,212 +1338,5 @@
|
||||
<textFieldExpression><![CDATA[$F{nipMenkes} != null ? $F{nipMenkes} : ""]]></textFieldExpression>
|
||||
</textField>
|
||||
</band>
|
||||
<band height="935">
|
||||
<property name="com.jaspersoft.studio.unit.height" value="px"/>
|
||||
<break>
|
||||
<reportElement x="0" y="0" width="558" height="1" uuid="869b09e3-bceb-4163-b52c-c3c05efad9ae">
|
||||
<property name="com.jaspersoft.studio.unit.y" value="px"/>
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
</reportElement>
|
||||
</break>
|
||||
<textField>
|
||||
<reportElement x="72" y="0" width="415" height="105" uuid="fe6b633f-4ca7-4a25-a1c5-08e25a44e095">
|
||||
<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="326c72f8-0be5-40d2-8da7-19beb0f28b94">
|
||||
<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="11935348-65a5-4536-a408-a59e2b7bac1c">
|
||||
<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="f41657cb-125c-4121-b9f5-26cc1ee3592a">
|
||||
<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="330" width="415" height="19" uuid="2b6afbb3-c869-4d2d-be9f-6fdc85128f44">
|
||||
<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{jumlahHari}!=null?$F{jumlahHari}+" hari":"-")+" terhitung mulai "+($F{listDate}!=null?$F{listDate}:"-")+". 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="240" width="89" height="15" uuid="1951cf37-1ab8-4661-9902-85693486af6d">
|
||||
<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="240" width="5" height="15" uuid="164f2593-f496-4a1a-a941-e463be471a62">
|
||||
<property name="com.jaspersoft.studio.unit.width" value="px"/>
|
||||
</reportElement>
|
||||
<text><![CDATA[:]]></text>
|
||||
</staticText>
|
||||
<textField>
|
||||
<reportElement positionType="Float" x="166" y="240" width="322" height="15" uuid="a177697f-69a4-42b6-8b96-2ae720b8d48a"/>
|
||||
<textFieldExpression><![CDATA[($F{nama}!=null?$F{nama}:"")]]></textFieldExpression>
|
||||
</textField>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="72" y="255" width="89" height="15" uuid="e0e9acaf-1977-4c4e-88d8-d212c204f9b7">
|
||||
<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="255" width="5" height="15" uuid="ba040a65-65a4-4c96-be43-c6829138a665"/>
|
||||
<text><![CDATA[:]]></text>
|
||||
</staticText>
|
||||
<textField>
|
||||
<reportElement positionType="Float" x="166" y="255" width="322" height="15" uuid="ef1a216e-802b-40c2-837e-ef22334e85ac"/>
|
||||
<textFieldExpression><![CDATA[($F{nip}!=null?$F{nip}:"")]]></textFieldExpression>
|
||||
</textField>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="72" y="270" width="89" height="15" uuid="2352fcfd-a821-4713-9ee0-d0105d310701">
|
||||
<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="270" width="5" height="15" uuid="61163194-1cde-4ec7-bfbb-083fa676c26e"/>
|
||||
<text><![CDATA[:]]></text>
|
||||
</staticText>
|
||||
<textField>
|
||||
<reportElement positionType="Float" x="166" y="270" width="322" height="15" uuid="c91357e8-7116-4e8a-b923-2ffd8da31687"/>
|
||||
<textFieldExpression><![CDATA[$F{pangkatGol}!=null?$F{pangkatGol}:"-"]]></textFieldExpression>
|
||||
</textField>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="72" y="285" width="89" height="15" uuid="369cf729-9689-4e71-9433-6aafc7d03d63">
|
||||
<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="285" width="5" height="15" uuid="c5b1cc61-54b7-48ad-9ddb-d9a584bd4c81"/>
|
||||
<text><![CDATA[:]]></text>
|
||||
</staticText>
|
||||
<textField>
|
||||
<reportElement positionType="Float" x="166" y="285" width="322" height="15" uuid="b13c4d7d-4da0-41b2-bd0a-379f0253365a"/>
|
||||
<textFieldExpression><![CDATA[($F{jabatan}!=null?$F{jabatan}:"")]]></textFieldExpression>
|
||||
</textField>
|
||||
<staticText>
|
||||
<reportElement positionType="Float" x="72" y="300" width="89" height="15" uuid="8922bbe8-9fe6-43a5-8bcd-a7a863c0a27d">
|
||||
<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="300" width="5" height="15" uuid="8b372655-ccc8-498d-a783-5afde86cbaf4"/>
|
||||
<text><![CDATA[:]]></text>
|
||||
</staticText>
|
||||
<textField>
|
||||
<reportElement positionType="Float" x="166" y="300" width="322" height="15" uuid="4c6d76e9-6036-41b7-9a76-85ac69fe3f54"/>
|
||||
<textFieldExpression><![CDATA["RSAB Harapan Kita"]]></textFieldExpression>
|
||||
</textField>
|
||||
<textField textAdjust="StretchHeight">
|
||||
<reportElement positionType="Float" stretchType="RelativeToTallestObject" x="72" y="360" width="415" height="20" uuid="afa46059-f5f1-4a94-a723-6f0456c2aa31">
|
||||
<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="44" y="416" width="250" height="31" uuid="86a26d64-b72a-452f-a5d0-545824fff617">
|
||||
<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="44" y="471" width="250" height="15" uuid="648fd884-67c5-4d08-a58e-752d43a651bd">
|
||||
<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="44" y="486" width="250" height="15" uuid="fe05c47f-aab5-4edf-98f7-aaebc9bdc6a1">
|
||||
<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="314" y="401" width="196" height="15" uuid="7bcc7a28-b37f-4a3a-a562-d57c8dc2835f"/>
|
||||
<textElement textAlignment="Left" verticalAlignment="Middle">
|
||||
<font size="10"/>
|
||||
</textElement>
|
||||
<text><![CDATA[Hormat saya,]]></text>
|
||||
</staticText>
|
||||
<textField isBlankWhenNull="true">
|
||||
<reportElement positionType="Float" x="314" y="471" width="196" height="15" uuid="265785ad-e0c1-4f4e-b063-d98c95e27d74">
|
||||
<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="314" y="486" width="196" height="15" uuid="b3b92289-e3f8-4ac0-b504-979631082aab">
|
||||
<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="44" y="401" width="250" height="15" uuid="79946d39-f451-46d9-b43f-c538274991d3"/>
|
||||
<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="db1b2f42-b8e0-40c9-9468-f32c83234fd0">
|
||||
<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="f98791d0-3688-494c-8e0c-fc22a6f6ce23">
|
||||
<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
@ -30,6 +30,8 @@ import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.orm.jpa.JpaSystemException;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.validation.Valid;
|
||||
@ -2653,7 +2655,16 @@ public class SdmController extends LocaleController<AkunVO> {
|
||||
getMessage(MessageResource.LABEL_SUCCESS, request));
|
||||
return RestUtil.getJsonResponse(result, HttpStatus.OK);
|
||||
} catch (Exception e) {
|
||||
return RestUtil.getJsonHttptatus(HttpStatus.INTERNAL_SERVER_ERROR);
|
||||
Map<String, Object> error = new HashMap<>();
|
||||
error.put("message", e.getMessage());
|
||||
|
||||
if (e.getStackTrace() != null && e.getStackTrace().length > 0) {
|
||||
error.put("line", e.getStackTrace()[0].getLineNumber());
|
||||
error.put("class", e.getStackTrace()[0].getClassName());
|
||||
error.put("method", e.getStackTrace()[0].getMethodName());
|
||||
}
|
||||
|
||||
return RestUtil.getJsonResponse(error, HttpStatus.INTERNAL_SERVER_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
@ -5982,4 +5993,18 @@ public class SdmController extends LocaleController<AkunVO> {
|
||||
}
|
||||
}
|
||||
|
||||
@RequestMapping(value = "cek-health", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
public ResponseEntity<Map<String, Object>> cekHealth(HttpServletRequest request) {
|
||||
|
||||
long startTime = System.currentTimeMillis();
|
||||
|
||||
Map<String, Object> body = new HashMap<>();
|
||||
String now = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
|
||||
|
||||
body.put("message", "ready");
|
||||
body.put("time", now);
|
||||
|
||||
return ResponseEntity.ok(body);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user