Update PelayananPasienServiceImpl.java

Aturan dokter luar hanya ffs di logbook baru
This commit is contained in:
Salman Manoe 2023-05-09 16:48:04 +07:00
parent f5c80a233b
commit 16ab9227ca

View File

@ -29,6 +29,7 @@ import com.jasamedika.medifirst2000.converter.BaseConverterImpl;
import com.jasamedika.medifirst2000.dao.AntrianPasienDiPeriksaDao;
import com.jasamedika.medifirst2000.dao.LogAccDao;
import com.jasamedika.medifirst2000.dao.PasienDaftarDao;
import com.jasamedika.medifirst2000.dao.PegawaiDao;
import com.jasamedika.medifirst2000.dao.PegawaiJadwalKerjaDao;
import com.jasamedika.medifirst2000.dao.PelayananPasienDao;
import com.jasamedika.medifirst2000.dao.StrukPelayananDao;
@ -86,6 +87,9 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
@Autowired
private TargetRemunDokterDetailDao targetRemunDokterDetailDao;
@Autowired
private PegawaiDao pegawaiDao;
@Override
public Map<String, Object> savePelayananPasien(PelayananPasienVO vo) {
Map<String, Object> result = new HashMap<String, Object>();
@ -576,16 +580,22 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
List<Map<String, Object>> listPelayananRemun = new ArrayList<>();
List<Map<String, Object>> listPelayananFfs = new ArrayList<>();
Double capaianRemun = 0.0;
for (Map<String, Object> next = queuePelayanan.poll(); next != null; next = queuePelayanan.poll())
if (Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS).contains(next.get("idKelompokPasien"))) {
listPelayananRemun.add(next);
capaianRemun += Double.valueOf(next.get("hargaJasa").toString());
} else if (capaianRemun < targetRemun && (date.equals(dateLine) || date.after(dateLine))) {
listPelayananRemun.add(next);
capaianRemun += Double.valueOf(next.get("hargaJasa").toString());
} else {
if (pegawaiDao.getPegawaiByKategoryPegawai(Arrays.asList(Master.KategoryPegawai.DOKTER_LUAR))
.contains(idPegawai)) {
for (Map<String, Object> next = queuePelayanan.poll(); next != null; next = queuePelayanan.poll())
listPelayananFfs.add(next);
}
} else {
for (Map<String, Object> next = queuePelayanan.poll(); next != null; next = queuePelayanan.poll())
if (Arrays.asList(Master.KelompokPasien.KELOMPOK_BPJS).contains(next.get("idKelompokPasien"))) {
listPelayananRemun.add(next);
capaianRemun += Double.valueOf(next.get("hargaJasa").toString());
} else if (capaianRemun < targetRemun && (date.equals(dateLine) || date.after(dateLine))) {
listPelayananRemun.add(next);
capaianRemun += Double.valueOf(next.get("hargaJasa").toString());
} else {
listPelayananFfs.add(next);
}
}
/*
* Sorting data remun diurutkan
*/