diff --git a/jasamedika-bridging/src/main/java/com/jasamedika/medifirst2000/task/schedule/MigrasiPasienTask.java b/jasamedika-bridging/src/main/java/com/jasamedika/medifirst2000/task/schedule/MigrasiPasienTask.java index e86fc886..4c5897df 100644 --- a/jasamedika-bridging/src/main/java/com/jasamedika/medifirst2000/task/schedule/MigrasiPasienTask.java +++ b/jasamedika-bridging/src/main/java/com/jasamedika/medifirst2000/task/schedule/MigrasiPasienTask.java @@ -16,9 +16,9 @@ import org.springframework.web.client.RestTemplate; import java.net.URI; import java.net.URISyntaxException; import java.time.LocalDateTime; +import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.stream.Collectors; import static com.jasamedika.medifirst2000.task.schedule.config.HeaderHandler.getHttpHeaders; import static org.springframework.http.HttpMethod.GET; @@ -44,25 +44,26 @@ public class MigrasiPasienTask { @Value("${app.etl.migrasi.pasien}") String baseUrl; - @Scheduled(cron = "0 0/15 * * * ?") + @Scheduled(cron = "0 15 0/1 * * ?") public void newMigrate() { LOGGER.info("Task MigrasiPasienTask.newMigrate {}", LocalDateTime.now()); migrasiPasienService.newMigrate(); } - @Scheduled(cron = "0 * 0/1 * * ?") + @Scheduled(cron = "0 0 0/1 * * ?") public void setStatusTerkirim() throws URISyntaxException { LOGGER.info("Task MigrasiPasienTask.setStatusTerkirim {}", LocalDateTime.now()); URI uri = new URI(baseUrl + "/status"); - HttpEntity entity = new HttpEntity<>(new Object(), getHttpHeaders()); + HttpEntity entity = new HttpEntity<>(null, getHttpHeaders()); ResponseEntity exchange = restTemplate.exchange(uri, GET, entity, Object.class); if (CommonUtil.isNotNullOrEmpty(exchange.getBody())) { - List> dtoList = objectMapper.convertValue(exchange.getBody(), List.class); - List noRekamMedisList = dtoList.stream().map(dto -> dto.get("noRekamMedis").toString()) - .collect(Collectors.toList()); - migrasiPasienService.setStatus(noRekamMedisList); + Map dto = objectMapper.convertValue(exchange.getBody(), HashMap.class); + if (CommonUtil.isNotNullOrEmpty(dto) && CommonUtil.isNotNullOrEmpty(dto.get("response"))) { + List noRekamMedisList = objectMapper.convertValue(dto.get("response"), List.class); + migrasiPasienService.setStatus(noRekamMedisList); + } } } }