diff --git a/jasamedika-ipsrs/src/main/java/com/jasamedika/medifirst2000/asynctask/IpsrsAlertMaintenance.java b/jasamedika-ipsrs/src/main/java/com/jasamedika/medifirst2000/asynctask/IpsrsAlertMaintenance.java index 19a33eba..7512e502 100644 --- a/jasamedika-ipsrs/src/main/java/com/jasamedika/medifirst2000/asynctask/IpsrsAlertMaintenance.java +++ b/jasamedika-ipsrs/src/main/java/com/jasamedika/medifirst2000/asynctask/IpsrsAlertMaintenance.java @@ -21,7 +21,7 @@ import com.jasamedika.medifirst2000.vo.IpsrsJadwalPemeliharaanVO; @Component public class IpsrsAlertMaintenance extends LocaleController{ - +/* private Boolean flag =false; private Integer pending = 0; private String time = new SimpleDateFormat("HH:mm").format(Calendar.getInstance().getTime()); @@ -111,5 +111,5 @@ public class IpsrsAlertMaintenance extends LocaleController{ - +public class NotificationSchedulerMaintenanceTask extends LocaleController { +/* private final Logger LOG = LoggerFactory.getLogger(NotificationSchedulerMaintenanceTask.class); @Autowired NotifMessagingSchedulerService notifMessagingSchedulerService; - + @Autowired NotifMessagingService notifMessagingService; - + @Autowired NotifikasiMessageObjekModulService notifikasiMessageObjekModulService; - + + @Autowired + PegawaiService pegawaiService; + + @Autowired + RuanganService ruanganService; + @Autowired MessagePublisher messagePublisher; - + @Autowired PegawaiDao pegawaiDao; - - @Autowired - RuanganDao ruanganDao; - - @Scheduled(cron = "0 30 7 * * *") - public void NotificationNormalMaintenanceEvery730AM(){ - try{ - MessagePublisher.RabbitHole rabbitHole = messagePublisher.getRabbitHole(); - - List lNotif = notifMessagingSchedulerService.allNotifBelumTerkirim(new Date()); - - if (CommonUtil.isNullOrEmpty(lNotif)){ - LOG.info(DateUtil.now()+" task scheduler : tidak ada jadwal maintenance"); - return; - } - - Map pegawaiRuangaAsal = new HashMap<>(); - - Map> ruanganAsalAll = new HashMap<>(); - Map> notifMapAllRuanganTujuan = new HashMap<>(); - List notifsId = new ArrayList<>(); - List ruanganTujuansId = new ArrayList<>(); - - Integer oldNotifId = 0; - Integer oldRuanganIdTujuan = 0; - - for (NotifMessagingSchedulerVO notif:lNotif){ - - if (notif.getRuanganIdTujuan().intValue() != oldRuanganIdTujuan.intValue()){ - ruanganTujuansId = new ArrayList<>(); - oldRuanganIdTujuan = notif.getRuanganIdTujuan(); - } - ruanganTujuansId.add(notif.getRuanganIdTujuan()); - notifMapAllRuanganTujuan.put(notif.getNotifMessagingId(), ruanganTujuansId); - - if (notif.getNotifMessagingId().intValue() != oldNotifId.intValue()){ - notifsId = new ArrayList<>(); - oldNotifId = notif.getNotifMessagingId(); - } - - notifsId.add(notif.getNotifMessagingId()); - ruanganAsalAll.put(notif.getRuanganIdAsal(), notifsId); - - pegawaiRuangaAsal.put(notif.getRuanganIdAsal(), notif.getPegawaiId()); - } - - Set ruanganAsalIds = ruanganAsalAll.keySet(); - - for(Integer ruanganAsalId:ruanganAsalIds){ - - Integer pegawaiId = pegawaiRuangaAsal.get(ruanganAsalId); - Pegawai pegawai = pegawaiDao.findById(pegawaiId); - Ruangan ruanganAsal = ruanganDao.findById(ruanganAsalId); - notifsId = ruanganAsalAll.get(ruanganAsalId); - - for (Integer notifMessagingId:notifsId ){ - - ruanganTujuansId = notifMapAllRuanganTujuan.get(notifMessagingId); - - try{ - rabbitHole.sendNotif(rabbitHole, ruanganAsal, pegawai, notifikasiMessageObjekModulService, notifMessagingId, ruanganTujuansId); - }catch(Exception e){ - LOG.info(DateUtil.now()+" task scheduler dari Ruangan {} dengan ruanganId {} pada notifMessageId {} ada masalah {}", - ruanganAsal.getNamaRuangan(), ruanganAsalId, notifMessagingId, e.getMessage()); + @Autowired + RuanganDao ruanganDao; + + @Scheduled(cron = "0 30 7 * * *") + public void NotificationNormalMaintenanceEvery730AM() { + try { + MessagePublisher.RabbitHole rabbitHole = messagePublisher.getRabbitHole(); + + List lNotif = notifMessagingSchedulerService.allNotifBelumTerkirim(new Date()); + + if (CommonUtil.isNullOrEmpty(lNotif)) { + LOG.info(DateUtil.now() + " task scheduler : tidak ada jadwal maintenance"); + return; + } + + Map pegawaiRuangaAsal = new HashMap<>(); + + Map> ruanganAsalAll = new HashMap<>(); + Map> notifMapAllRuanganTujuan = new HashMap<>(); + List notifsId = new ArrayList<>(); + List ruanganTujuansId = new ArrayList<>(); + + Integer oldNotifId = 0; + Integer oldRuanganIdTujuan = 0; + + for (NotifMessagingSchedulerVO notif : lNotif) { + + if (notif.getRuanganIdTujuan().intValue() != oldRuanganIdTujuan.intValue()) { + ruanganTujuansId = new ArrayList<>(); + oldRuanganIdTujuan = notif.getRuanganIdTujuan(); + } + ruanganTujuansId.add(notif.getRuanganIdTujuan()); + notifMapAllRuanganTujuan.put(notif.getNotifMessagingId(), ruanganTujuansId); + + if (notif.getNotifMessagingId().intValue() != oldNotifId.intValue()) { + notifsId = new ArrayList<>(); + oldNotifId = notif.getNotifMessagingId(); + } + + notifsId.add(notif.getNotifMessagingId()); + ruanganAsalAll.put(notif.getRuanganIdAsal(), notifsId); + + pegawaiRuangaAsal.put(notif.getRuanganIdAsal(), notif.getPegawaiId()); + } + + Set ruanganAsalIds = ruanganAsalAll.keySet(); + + for (Integer ruanganAsalId : ruanganAsalIds) { + + Integer pegawaiId = pegawaiRuangaAsal.get(ruanganAsalId); + Pegawai pegawai = pegawaiDao.findById(pegawaiId); + Ruangan ruanganAsal = ruanganDao.findById(ruanganAsalId); + + notifsId = ruanganAsalAll.get(ruanganAsalId); + + for (Integer notifMessagingId : notifsId) { + + ruanganTujuansId = notifMapAllRuanganTujuan.get(notifMessagingId); + + try { + rabbitHole.sendNotif(rabbitHole, ruanganAsal, pegawai, notifikasiMessageObjekModulService, + notifMessagingId, ruanganTujuansId); + } catch (Exception e) { + LOG.info( + DateUtil.now() + + " task scheduler dari Ruangan {} dengan ruanganId {} pada notifMessageId {} ada masalah {}", + ruanganAsal.getNamaRuangan(), ruanganAsalId, notifMessagingId, e.getMessage()); + } } } - } - }catch(Exception e){ + } catch (Exception e) { LOG.info(DateUtil.now() + "Task scheduler gagal penyebab, {} ", e.getMessage()); - //e.printStackTrace(); + // e.printStackTrace(); } } -} + private void sendNotif(Gson gson, String urlSocket, MessagePublisher.RabbitHole rabbitHole, Integer pegawaiId, + Integer ruanganId, Integer notifMessagingId, List ruanganTujuansId) throws Exception { + List notifikasiMessageObjekModulVOs = notifikasiMessageObjekModulService + .findByNotifMessagingIdAndRuanganId(notifMessagingId, ruanganTujuansId); -//private void sendNotif(Gson gson, String urlSocket, MessagePublisher.RabbitHole rabbitHole, Integer pegawaiId, Integer ruanganId, Integer notifMessagingId, List ruanganTujuansId) throws Exception{ -// -//List notifikasiMessageObjekModulVOs = notifikasiMessageObjekModulService.findByNotifMessagingIdAndRuanganId(notifMessagingId, ruanganTujuansId); -// -//if (CommonUtil.isNullOrEmpty(notifikasiMessageObjekModulVOs)) { -// return; -//} -// -//Integer ruanganIdtemp = 0; -//boolean connect = false; -// -//PegawaiVO pegawai = pegawaiService.findById(pegawaiId); -// -//for (NotifikasiMessageObjekModulVO vo : notifikasiMessageObjekModulVOs){ -// Ruangan ruangan = vo.getRuangan(); -// ModulAplikasi modulAplikasi = vo.getModulAplikasi(); -// ObjekModulAplikasi objekModulAplikasi = vo.getObjekModulAplikasi(); -// String customURLObjekModul = vo.getCustomURLObjekModul(); -// String titleNotifikasi = vo.getTitleNotifikasi(); -// String pesanNotifikasi = vo.getPesanNotifikasi(); -// String namaFungsiFrontEnd = vo.getNamaFungsiFrontEnd(); -// -// if (ruangan.getId() == ruanganId){ -// continue; -// } -// -// RuanganVO dariRuangan = ruanganService.findById(ruanganId); -// -// if (ruanganIdtemp != ruangan.getId()){ -// if (connect){ -// rabbitHole.close(); -// } -// rabbitHole.connect(urlSocket, String.valueOf(ruangan.getId())); -// connect = true; -// ruanganIdtemp = ruangan.getId(); -// } -// -// Map map = new HashMap<>(); -// map.put("title", titleNotifikasi); -// map.put("dariRuangan", dariRuangan); -// map.put("ruanganId", ruangan.getId()); -// map.put("ruangan", ruangan); -// map.put("modulAplikasi", modulAplikasi); -// map.put("objekModulAplikasi", objekModulAplikasi); -// map.put("titleNotifikasi", titleNotifikasi); -// map.put("pesanNotifikasi", pesanNotifikasi); -// map.put("namaFungsiFrontEnd", namaFungsiFrontEnd); -// map.put("fromPegawai", pegawai); -// map.put("urlForm",CommonUtil.isNullOrEmpty(customURLObjekModul)? objekModulAplikasi.getAlamatUrlForm() : customURLObjekModul); -// -// rabbitHole.sendRabbitMQNotification(gson.toJson(map)); -// -// //messagePublisher.BroadcastMessage(map); -//} -//if (connect){ -// rabbitHole.close(); -//} -// -//} \ No newline at end of file + if (CommonUtil.isNullOrEmpty(notifikasiMessageObjekModulVOs)) { + return; + } + + Integer ruanganIdtemp = 0; + boolean connect = false; + + PegawaiVO pegawai = pegawaiService.findById(pegawaiId); + + for (NotifikasiMessageObjekModulVO vo : notifikasiMessageObjekModulVOs) { + Ruangan ruangan = vo.getRuangan(); + ModulAplikasi modulAplikasi = vo.getModulAplikasi(); + ObjekModulAplikasi objekModulAplikasi = vo.getObjekModulAplikasi(); + String customURLObjekModul = vo.getCustomURLObjekModul(); + String titleNotifikasi = vo.getTitleNotifikasi(); + String pesanNotifikasi = vo.getPesanNotifikasi(); + String namaFungsiFrontEnd = vo.getNamaFungsiFrontEnd(); + + if (ruangan.getId() == ruanganId) { + continue; + } + + RuanganVO dariRuangan = ruanganService.findById(ruanganId); + + if (ruanganIdtemp != ruangan.getId()) { + if (connect) { + rabbitHole.close(); + } + rabbitHole.connect(urlSocket, String.valueOf(ruangan.getId())); + connect = true; + ruanganIdtemp = ruangan.getId(); + } + + Map map = new HashMap<>(); + map.put("title", titleNotifikasi); + map.put("dariRuangan", dariRuangan); + map.put("ruanganId", ruangan.getId()); + map.put("ruangan", ruangan); + map.put("modulAplikasi", modulAplikasi); + map.put("objekModulAplikasi", objekModulAplikasi); + map.put("titleNotifikasi", titleNotifikasi); + map.put("pesanNotifikasi", pesanNotifikasi); + map.put("namaFungsiFrontEnd", namaFungsiFrontEnd); + map.put("fromPegawai", pegawai); + map.put("urlForm", CommonUtil.isNullOrEmpty(customURLObjekModul) ? objekModulAplikasi.getAlamatUrlForm() + : customURLObjekModul); + + rabbitHole.sendRabbitMQNotification(gson.toJson(map)); + + messagePublisher.BroadcastMessage(map); + } + if (connect) { + rabbitHole.close(); + } + } +*/ +} \ No newline at end of file diff --git a/jasamedika-it/src/main/java/com/jasamedika/medifirst2000/asynctask/NotificationSchedulerMaintenanceTask.java b/jasamedika-it/src/main/java/com/jasamedika/medifirst2000/asynctask/NotificationSchedulerMaintenanceTask.java index 99bcd91f..4a28d68b 100644 --- a/jasamedika-it/src/main/java/com/jasamedika/medifirst2000/asynctask/NotificationSchedulerMaintenanceTask.java +++ b/jasamedika-it/src/main/java/com/jasamedika/medifirst2000/asynctask/NotificationSchedulerMaintenanceTask.java @@ -13,173 +13,190 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; +import com.google.gson.Gson; import com.jasamedika.medifirst2000.controller.base.LocaleController; import com.jasamedika.medifirst2000.dao.PegawaiDao; import com.jasamedika.medifirst2000.dao.RuanganDao; +import com.jasamedika.medifirst2000.entities.ModulAplikasi; +import com.jasamedika.medifirst2000.entities.ObjekModulAplikasi; import com.jasamedika.medifirst2000.entities.Pegawai; import com.jasamedika.medifirst2000.entities.Ruangan; import com.jasamedika.medifirst2000.notification.MessagePublisher; import com.jasamedika.medifirst2000.service.NotifMessagingSchedulerService; import com.jasamedika.medifirst2000.service.NotifMessagingService; import com.jasamedika.medifirst2000.service.NotifikasiMessageObjekModulService; +import com.jasamedika.medifirst2000.service.PegawaiService; +import com.jasamedika.medifirst2000.service.RuanganService; import com.jasamedika.medifirst2000.util.CommonUtil; import com.jasamedika.medifirst2000.util.DateUtil; import com.jasamedika.medifirst2000.vo.NotifMessagingSchedulerVO; import com.jasamedika.medifirst2000.vo.NotifMessagingVO; import com.jasamedika.medifirst2000.vo.NotifikasiMessageObjekModulVO; +import com.jasamedika.medifirst2000.vo.PegawaiVO; +import com.jasamedika.medifirst2000.vo.RuanganVO; @Component -public class NotificationSchedulerMaintenanceTask extends LocaleController{ - +public class NotificationSchedulerMaintenanceTask extends LocaleController { +/* private final Logger LOG = LoggerFactory.getLogger(NotificationSchedulerMaintenanceTask.class); @Autowired NotifMessagingSchedulerService notifMessagingSchedulerService; - + @Autowired NotifMessagingService notifMessagingService; - + @Autowired NotifikasiMessageObjekModulService notifikasiMessageObjekModulService; - + + @Autowired + PegawaiService pegawaiService; + + @Autowired + RuanganService ruanganService; + @Autowired MessagePublisher messagePublisher; - + @Autowired PegawaiDao pegawaiDao; - - @Autowired - RuanganDao ruanganDao; - - @Scheduled(cron = "0 30 7 * * *") - public void NotificationNormalMaintenanceEvery730AM(){ - try{ - MessagePublisher.RabbitHole rabbitHole = messagePublisher.getRabbitHole(); - - List lNotif = notifMessagingSchedulerService.allNotifBelumTerkirim(new Date()); - - if (CommonUtil.isNullOrEmpty(lNotif)){ - LOG.info(DateUtil.now()+" task scheduler : tidak ada jadwal maintenance"); - return; - } - - Map pegawaiRuangaAsal = new HashMap<>(); - - Map> ruanganAsalAll = new HashMap<>(); - Map> notifMapAllRuanganTujuan = new HashMap<>(); - List notifsId = new ArrayList<>(); - List ruanganTujuansId = new ArrayList<>(); - - Integer oldNotifId = 0; - Integer oldRuanganIdTujuan = 0; - - for (NotifMessagingSchedulerVO notif:lNotif){ - - if (notif.getRuanganIdTujuan().intValue() != oldRuanganIdTujuan.intValue()){ - ruanganTujuansId = new ArrayList<>(); - oldRuanganIdTujuan = notif.getRuanganIdTujuan(); - } - ruanganTujuansId.add(notif.getRuanganIdTujuan()); - notifMapAllRuanganTujuan.put(notif.getNotifMessagingId(), ruanganTujuansId); - - if (notif.getNotifMessagingId().intValue() != oldNotifId.intValue()){ - notifsId = new ArrayList<>(); - oldNotifId = notif.getNotifMessagingId(); - } - - notifsId.add(notif.getNotifMessagingId()); - ruanganAsalAll.put(notif.getRuanganIdAsal(), notifsId); - - pegawaiRuangaAsal.put(notif.getRuanganIdAsal(), notif.getPegawaiId()); - } - - Set ruanganAsalIds = ruanganAsalAll.keySet(); - - for(Integer ruanganAsalId:ruanganAsalIds){ - - Integer pegawaiId = pegawaiRuangaAsal.get(ruanganAsalId); - Pegawai pegawai = pegawaiDao.findById(pegawaiId); - Ruangan ruanganAsal = ruanganDao.findById(ruanganAsalId); - notifsId = ruanganAsalAll.get(ruanganAsalId); - - for (Integer notifMessagingId:notifsId ){ - - ruanganTujuansId = notifMapAllRuanganTujuan.get(notifMessagingId); - - try{ - rabbitHole.sendNotif(rabbitHole, ruanganAsal, pegawai, notifikasiMessageObjekModulService, notifMessagingId, ruanganTujuansId); - }catch(Exception e){ - LOG.info(DateUtil.now()+" task scheduler dari Ruangan {} dengan ruanganId {} pada notifMessageId {} ada masalah {}", - ruanganAsal.getNamaRuangan(), ruanganAsalId, notifMessagingId, e.getMessage()); + @Autowired + RuanganDao ruanganDao; + + @Scheduled(cron = "0 30 7 * * *") + public void NotificationNormalMaintenanceEvery730AM() { + try { + MessagePublisher.RabbitHole rabbitHole = messagePublisher.getRabbitHole(); + + List lNotif = notifMessagingSchedulerService.allNotifBelumTerkirim(new Date()); + + if (CommonUtil.isNullOrEmpty(lNotif)) { + LOG.info(DateUtil.now() + " task scheduler : tidak ada jadwal maintenance"); + return; + } + + Map pegawaiRuangaAsal = new HashMap<>(); + + Map> ruanganAsalAll = new HashMap<>(); + Map> notifMapAllRuanganTujuan = new HashMap<>(); + List notifsId = new ArrayList<>(); + List ruanganTujuansId = new ArrayList<>(); + + Integer oldNotifId = 0; + Integer oldRuanganIdTujuan = 0; + + for (NotifMessagingSchedulerVO notif : lNotif) { + + if (notif.getRuanganIdTujuan().intValue() != oldRuanganIdTujuan.intValue()) { + ruanganTujuansId = new ArrayList<>(); + oldRuanganIdTujuan = notif.getRuanganIdTujuan(); + } + ruanganTujuansId.add(notif.getRuanganIdTujuan()); + notifMapAllRuanganTujuan.put(notif.getNotifMessagingId(), ruanganTujuansId); + + if (notif.getNotifMessagingId().intValue() != oldNotifId.intValue()) { + notifsId = new ArrayList<>(); + oldNotifId = notif.getNotifMessagingId(); + } + + notifsId.add(notif.getNotifMessagingId()); + ruanganAsalAll.put(notif.getRuanganIdAsal(), notifsId); + + pegawaiRuangaAsal.put(notif.getRuanganIdAsal(), notif.getPegawaiId()); + } + + Set ruanganAsalIds = ruanganAsalAll.keySet(); + + for (Integer ruanganAsalId : ruanganAsalIds) { + + Integer pegawaiId = pegawaiRuangaAsal.get(ruanganAsalId); + Pegawai pegawai = pegawaiDao.findById(pegawaiId); + Ruangan ruanganAsal = ruanganDao.findById(ruanganAsalId); + + notifsId = ruanganAsalAll.get(ruanganAsalId); + + for (Integer notifMessagingId : notifsId) { + + ruanganTujuansId = notifMapAllRuanganTujuan.get(notifMessagingId); + + try { + rabbitHole.sendNotif(rabbitHole, ruanganAsal, pegawai, notifikasiMessageObjekModulService, + notifMessagingId, ruanganTujuansId); + } catch (Exception e) { + LOG.info( + DateUtil.now() + + " task scheduler dari Ruangan {} dengan ruanganId {} pada notifMessageId {} ada masalah {}", + ruanganAsal.getNamaRuangan(), ruanganAsalId, notifMessagingId, e.getMessage()); + } } } - } - }catch(Exception e){ + } catch (Exception e) { LOG.info(DateUtil.now() + "Task scheduler gagal penyebab, {} ", e.getMessage()); - //e.printStackTrace(); + // e.printStackTrace(); } } -} + private void sendNotif(Gson gson, String urlSocket, MessagePublisher.RabbitHole rabbitHole, Integer pegawaiId, + Integer ruanganId, Integer notifMessagingId, List ruanganTujuansId) throws Exception { + List notifikasiMessageObjekModulVOs = notifikasiMessageObjekModulService + .findByNotifMessagingIdAndRuanganId(notifMessagingId, ruanganTujuansId); -//private void sendNotif(Gson gson, String urlSocket, MessagePublisher.RabbitHole rabbitHole, Integer pegawaiId, Integer ruanganId, Integer notifMessagingId, List ruanganTujuansId) throws Exception{ -// -//List notifikasiMessageObjekModulVOs = notifikasiMessageObjekModulService.findByNotifMessagingIdAndRuanganId(notifMessagingId, ruanganTujuansId); -// -//if (CommonUtil.isNullOrEmpty(notifikasiMessageObjekModulVOs)) { -// return; -//} -// -//Integer ruanganIdtemp = 0; -//boolean connect = false; -// -//PegawaiVO pegawai = pegawaiService.findById(pegawaiId); -// -//for (NotifikasiMessageObjekModulVO vo : notifikasiMessageObjekModulVOs){ -// Ruangan ruangan = vo.getRuangan(); -// ModulAplikasi modulAplikasi = vo.getModulAplikasi(); -// ObjekModulAplikasi objekModulAplikasi = vo.getObjekModulAplikasi(); -// String customURLObjekModul = vo.getCustomURLObjekModul(); -// String titleNotifikasi = vo.getTitleNotifikasi(); -// String pesanNotifikasi = vo.getPesanNotifikasi(); -// String namaFungsiFrontEnd = vo.getNamaFungsiFrontEnd(); -// -// if (ruangan.getId() == ruanganId){ -// continue; -// } -// -// RuanganVO dariRuangan = ruanganService.findById(ruanganId); -// -// if (ruanganIdtemp != ruangan.getId()){ -// if (connect){ -// rabbitHole.close(); -// } -// rabbitHole.connect(urlSocket, String.valueOf(ruangan.getId())); -// connect = true; -// ruanganIdtemp = ruangan.getId(); -// } -// -// Map map = new HashMap<>(); -// map.put("title", titleNotifikasi); -// map.put("dariRuangan", dariRuangan); -// map.put("ruanganId", ruangan.getId()); -// map.put("ruangan", ruangan); -// map.put("modulAplikasi", modulAplikasi); -// map.put("objekModulAplikasi", objekModulAplikasi); -// map.put("titleNotifikasi", titleNotifikasi); -// map.put("pesanNotifikasi", pesanNotifikasi); -// map.put("namaFungsiFrontEnd", namaFungsiFrontEnd); -// map.put("fromPegawai", pegawai); -// map.put("urlForm",CommonUtil.isNullOrEmpty(customURLObjekModul)? objekModulAplikasi.getAlamatUrlForm() : customURLObjekModul); -// -// rabbitHole.sendRabbitMQNotification(gson.toJson(map)); -// -// //messagePublisher.BroadcastMessage(map); -//} -//if (connect){ -// rabbitHole.close(); -//} -// -//} \ No newline at end of file + if (CommonUtil.isNullOrEmpty(notifikasiMessageObjekModulVOs)) { + return; + } + + Integer ruanganIdtemp = 0; + boolean connect = false; + + PegawaiVO pegawai = pegawaiService.findById(pegawaiId); + + for (NotifikasiMessageObjekModulVO vo : notifikasiMessageObjekModulVOs) { + Ruangan ruangan = vo.getRuangan(); + ModulAplikasi modulAplikasi = vo.getModulAplikasi(); + ObjekModulAplikasi objekModulAplikasi = vo.getObjekModulAplikasi(); + String customURLObjekModul = vo.getCustomURLObjekModul(); + String titleNotifikasi = vo.getTitleNotifikasi(); + String pesanNotifikasi = vo.getPesanNotifikasi(); + String namaFungsiFrontEnd = vo.getNamaFungsiFrontEnd(); + + if (ruangan.getId() == ruanganId) { + continue; + } + + RuanganVO dariRuangan = ruanganService.findById(ruanganId); + + if (ruanganIdtemp != ruangan.getId()) { + if (connect) { + rabbitHole.close(); + } + rabbitHole.connect(urlSocket, String.valueOf(ruangan.getId())); + connect = true; + ruanganIdtemp = ruangan.getId(); + } + + Map map = new HashMap<>(); + map.put("title", titleNotifikasi); + map.put("dariRuangan", dariRuangan); + map.put("ruanganId", ruangan.getId()); + map.put("ruangan", ruangan); + map.put("modulAplikasi", modulAplikasi); + map.put("objekModulAplikasi", objekModulAplikasi); + map.put("titleNotifikasi", titleNotifikasi); + map.put("pesanNotifikasi", pesanNotifikasi); + map.put("namaFungsiFrontEnd", namaFungsiFrontEnd); + map.put("fromPegawai", pegawai); + map.put("urlForm", CommonUtil.isNullOrEmpty(customURLObjekModul) ? objekModulAplikasi.getAlamatUrlForm() + : customURLObjekModul); + + rabbitHole.sendRabbitMQNotification(gson.toJson(map)); + + messagePublisher.BroadcastMessage(map); + } + if (connect) { + rabbitHole.close(); + } + } +*/ +} \ No newline at end of file diff --git a/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/asynctask/IpsrsAlertMaintenance.java b/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/asynctask/IpsrsAlertMaintenance.java index 844f7fc8..d8d690cc 100644 --- a/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/asynctask/IpsrsAlertMaintenance.java +++ b/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/asynctask/IpsrsAlertMaintenance.java @@ -21,7 +21,7 @@ import com.jasamedika.medifirst2000.vo.IpsrsJadwalPemeliharaanVO; @Component public class IpsrsAlertMaintenance extends LocaleController{ - +/* private Boolean flag =false; private Integer pending = 0; private String time = new SimpleDateFormat("HH:mm").format(Calendar.getInstance().getTime()); @@ -111,5 +111,5 @@ public class IpsrsAlertMaintenance extends LocaleController{ - +/* private final Logger LOG = LoggerFactory.getLogger(NotificationSchedulerMaintenanceTask.class); @Autowired @@ -38,7 +38,7 @@ public class NotificationSchedulerMaintenanceTask extends LocaleController{ - +/* private Boolean flag =false; private Integer pending = 0; private String time = new SimpleDateFormat("HH:mm").format(Calendar.getInstance().getTime()); @@ -111,5 +111,5 @@ public class IpsrsAlertMaintenance extends LocaleController{ - +/* private final Logger LOG = LoggerFactory.getLogger(NotificationSchedulerMaintenanceTask.class); @Autowired @@ -53,6 +53,7 @@ public class NotificationSchedulerMaintenanceTask extends LocaleController