Update MigrasiPasienTask.java

Perbaikan service update flag terkirim di sistem SMART
This commit is contained in:
Salman Manoe 2024-07-30 15:09:35 +07:00
parent e9608d50ee
commit 9cd36a1043

View File

@ -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<Object> entity = new HttpEntity<>(new Object(), getHttpHeaders());
HttpEntity<Object> entity = new HttpEntity<>(null, getHttpHeaders());
ResponseEntity<Object> exchange = restTemplate.exchange(uri, GET, entity, Object.class);
if (CommonUtil.isNotNullOrEmpty(exchange.getBody())) {
List<Map<String, Object>> dtoList = objectMapper.convertValue(exchange.getBody(), List.class);
List<String> noRekamMedisList = dtoList.stream().map(dto -> dto.get("noRekamMedis").toString())
.collect(Collectors.toList());
migrasiPasienService.setStatus(noRekamMedisList);
Map<String, Object> dto = objectMapper.convertValue(exchange.getBody(), HashMap.class);
if (CommonUtil.isNotNullOrEmpty(dto) && CommonUtil.isNotNullOrEmpty(dto.get("response"))) {
List<String> noRekamMedisList = objectMapper.convertValue(dto.get("response"), List.class);
migrasiPasienService.setStatus(noRekamMedisList);
}
}
}
}