diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java index 2ee95cb1..0e08898e 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java @@ -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 savePelayananPasien(PelayananPasienVO vo) { Map result = new HashMap(); @@ -576,16 +580,22 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel List> listPelayananRemun = new ArrayList<>(); List> listPelayananFfs = new ArrayList<>(); Double capaianRemun = 0.0; - for (Map 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 next = queuePelayanan.poll(); next != null; next = queuePelayanan.poll()) listPelayananFfs.add(next); - } + } else { + for (Map 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 */