Update LogbookTask.java
Penyesuaian cut-off tarif baru untuk scheduler rekap logbook dokter
This commit is contained in:
parent
f7fb78722d
commit
eccbc161f5
@ -5,6 +5,7 @@ import com.jasamedika.medifirst2000.entities.*;
|
||||
import com.jasamedika.medifirst2000.service.LogbookRemunService;
|
||||
import com.jasamedika.medifirst2000.service.PelayananPasienService;
|
||||
import com.jasamedika.medifirst2000.service.RekapLogbookDokterService;
|
||||
import com.jasamedika.medifirst2000.service.RemunerasiService;
|
||||
import com.jasamedika.medifirst2000.util.DateUtil;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@ -16,7 +17,9 @@ import java.math.BigDecimal;
|
||||
import java.text.DateFormat;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.time.YearMonth;
|
||||
import java.time.ZoneId;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.CountDownLatch;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
@ -31,7 +34,7 @@ import static com.jasamedika.medifirst2000.constants.Master.Profesi.TERAPI;
|
||||
*/
|
||||
@Component
|
||||
public class LogbookTask {
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(PasienTask.class);
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(LogbookTask.class);
|
||||
|
||||
@Autowired
|
||||
private PelayananPasienPetugasDao pelayananPasienPetugasDao;
|
||||
@ -42,6 +45,9 @@ public class LogbookTask {
|
||||
@Autowired
|
||||
private PelayananPasienService pelayananPasienService;
|
||||
|
||||
@Autowired
|
||||
private RemunerasiService remunerasiService;
|
||||
|
||||
@Autowired
|
||||
private RekapLogbookDokterService rekapLogbookDokterService;
|
||||
|
||||
@ -81,11 +87,18 @@ public class LogbookTask {
|
||||
Set<Integer> idPegawaiByTglPelayanan = pelayananPasienPetugasDao.findPegawaiByTglPelayanan(tglAwal, tglAkhir);
|
||||
DateFormat df = new SimpleDateFormat("yyyy-MM");
|
||||
String bulan = df.format(date);
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM");
|
||||
YearMonth oct24 = YearMonth.parse("2024-10", formatter);
|
||||
YearMonth month = YearMonth.parse(bulan, formatter);
|
||||
List<RekapLogbookDokter> models = new ArrayList<>();
|
||||
idPegawaiByTglPelayanan.forEach(idPegawai -> {
|
||||
{
|
||||
Map<String, Object> kinerjaDokter = pelayananPasienService.logbookRemunTarifDokter(idPegawai, bulan,
|
||||
null);
|
||||
Map<String, Object> kinerjaDokter;
|
||||
if (month.isBefore(oct24)) {
|
||||
kinerjaDokter = pelayananPasienService.logbookRemunTarifDokter(idPegawai, bulan, null);
|
||||
} else {
|
||||
kinerjaDokter = remunerasiService.logbookRemunTarifDokter(idPegawai, bulan, null);
|
||||
}
|
||||
List<Map<String, Object>> remun = (List<Map<String, Object>>) kinerjaDokter.get("data");
|
||||
List<Integer> listIdKelompokPasien = new ArrayList<>();
|
||||
remun.forEach(r -> {
|
||||
@ -114,7 +127,12 @@ public class LogbookTask {
|
||||
});
|
||||
}
|
||||
{
|
||||
List<Map<String, Object>> ffs = pelayananPasienService.logbookFfsTarifDokter(idPegawai, bulan, null);
|
||||
List<Map<String, Object>> ffs;
|
||||
if (month.isBefore(oct24)) {
|
||||
ffs = pelayananPasienService.logbookFfsTarifDokter(idPegawai, bulan, null);
|
||||
} else {
|
||||
ffs = remunerasiService.logbookFfsTarifDokter(idPegawai, bulan, null);
|
||||
}
|
||||
List<String> listJenisRuangan = new ArrayList<>();
|
||||
List<Integer> listIdKelompokPasien = new ArrayList<>();
|
||||
ffs.forEach(r -> {
|
||||
@ -150,8 +168,12 @@ public class LogbookTask {
|
||||
}));
|
||||
}
|
||||
{
|
||||
List<Map<String, Object>> fixedPay = pelayananPasienService.logbookFixedPayDokter(idPegawai, bulan,
|
||||
null);
|
||||
List<Map<String, Object>> fixedPay;
|
||||
if (month.isBefore(oct24)) {
|
||||
fixedPay = pelayananPasienService.logbookFixedPayDokter(idPegawai, bulan, null);
|
||||
} else {
|
||||
fixedPay = remunerasiService.logbookFixedPayDokter(idPegawai, bulan, null);
|
||||
}
|
||||
List<String> listJenisRuangan = new ArrayList<>();
|
||||
List<Integer> listIdKelompokPasien = new ArrayList<>();
|
||||
List<String> listBulanIbuPulangRanap = new ArrayList<>();
|
||||
@ -222,6 +244,9 @@ public class LogbookTask {
|
||||
private void saveRekapDetailLogbookDokter(Set<Integer> idPegawaiKelompokKerja, Date date) {
|
||||
DateFormat df = new SimpleDateFormat("yyyy-MM");
|
||||
String bulan = df.format(date);
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM");
|
||||
YearMonth oct24 = YearMonth.parse("2024-09", formatter);
|
||||
YearMonth month = YearMonth.parse(bulan, formatter);
|
||||
ExecutorService executorService = Executors.newFixedThreadPool(50);
|
||||
CountDownLatch latch = new CountDownLatch(50);
|
||||
try {
|
||||
@ -237,8 +262,12 @@ public class LogbookTask {
|
||||
logbookRemun.setTanggalTarikData(new Date());
|
||||
LogbookRemun savedRemun = logbookRemunDao.save(logbookRemun);
|
||||
{
|
||||
Map<String, Object> kinerjaDokter = pelayananPasienService.logbookRemunTarifDokter(idPegawai,
|
||||
bulan, null);
|
||||
Map<String, Object> kinerjaDokter;
|
||||
if (month.isBefore(oct24)) {
|
||||
kinerjaDokter = pelayananPasienService.logbookRemunTarifDokter(idPegawai, bulan, null);
|
||||
} else {
|
||||
kinerjaDokter = remunerasiService.logbookRemunTarifDokter(idPegawai, bulan, null);
|
||||
}
|
||||
List<Map<String, Object>> remun = (List<Map<String, Object>>) kinerjaDokter.get("data");
|
||||
for (Map<String, Object> map : remun) {
|
||||
List<String> listNorecPelayananPasienPetugas = new ArrayList<>();
|
||||
@ -296,8 +325,12 @@ public class LogbookTask {
|
||||
}
|
||||
}
|
||||
{
|
||||
List<Map<String, Object>> ffs = pelayananPasienService.logbookFfsTarifDokter(idPegawai, bulan,
|
||||
null);
|
||||
List<Map<String, Object>> ffs;
|
||||
if (month.isBefore(oct24)) {
|
||||
ffs = pelayananPasienService.logbookFfsTarifDokter(idPegawai, bulan, null);
|
||||
} else {
|
||||
ffs = remunerasiService.logbookFfsTarifDokter(idPegawai, bulan, null);
|
||||
}
|
||||
for (Map<String, Object> fee : ffs) {
|
||||
List<String> listNorecPelayananPasienPetugas = new ArrayList<>();
|
||||
{
|
||||
@ -355,8 +388,12 @@ public class LogbookTask {
|
||||
}
|
||||
}
|
||||
{
|
||||
List<Map<String, Object>> ffs = pelayananPasienService.logbookFfsLuarTarifDokter(idPegawai,
|
||||
bulan, null);
|
||||
List<Map<String, Object>> ffs;
|
||||
if (month.isBefore(oct24)) {
|
||||
ffs = pelayananPasienService.logbookFfsLuarTarifDokter(idPegawai, bulan, null);
|
||||
} else {
|
||||
ffs = remunerasiService.logbookFfsLuarTarifDokter(idPegawai, bulan, null);
|
||||
}
|
||||
for (Map<String, Object> fee : ffs) {
|
||||
List<String> listNorecPelayananPasienPetugas = new ArrayList<>();
|
||||
{
|
||||
@ -414,8 +451,12 @@ public class LogbookTask {
|
||||
}
|
||||
}
|
||||
{
|
||||
List<Map<String, Object>> fixedPay = pelayananPasienService.logbookFixedPayDokter(idPegawai,
|
||||
bulan, null);
|
||||
List<Map<String, Object>> fixedPay;
|
||||
if (month.isBefore(oct24)) {
|
||||
fixedPay = pelayananPasienService.logbookFixedPayDokter(idPegawai, bulan, null);
|
||||
} else {
|
||||
fixedPay = remunerasiService.logbookFixedPayDokter(idPegawai, bulan, null);
|
||||
}
|
||||
for (Map<String, Object> pay : fixedPay) {
|
||||
List<String> listNorecPelayananPasienPetugas = new ArrayList<>();
|
||||
{
|
||||
@ -471,8 +512,12 @@ public class LogbookTask {
|
||||
}
|
||||
}
|
||||
{
|
||||
List<Map<String, Object>> klaimMpp = pelayananPasienService.logbookKlaimMppDokter(idPegawai,
|
||||
bulan);
|
||||
List<Map<String, Object>> klaimMpp;
|
||||
if (month.isBefore(oct24)) {
|
||||
klaimMpp = pelayananPasienService.logbookKlaimMppDokter(idPegawai, bulan);
|
||||
} else {
|
||||
klaimMpp = remunerasiService.logbookKlaimMppDokter(idPegawai, bulan);
|
||||
}
|
||||
for (Map<String, Object> mpp : klaimMpp) {
|
||||
List<String> listNorecPelayananPasienPetugas = new ArrayList<>();
|
||||
{
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user