From e0a9fb0cc5f7acda259d36ae39534d76acaa5b68 Mon Sep 17 00:00:00 2001 From: Salman Manoe Date: Fri, 26 Jul 2024 15:57:31 +0700 Subject: [PATCH] Update MigrasiPasienServiceImpl.java Perbaikan validasi golongan darah dan status perkawinan default --- .../impl/MigrasiPasienServiceImpl.java | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/MigrasiPasienServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/MigrasiPasienServiceImpl.java index 9d92dd7f..d206b084 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/MigrasiPasienServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/MigrasiPasienServiceImpl.java @@ -12,7 +12,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.time.ZoneId; +import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; @@ -72,6 +72,7 @@ public class MigrasiPasienServiceImpl implements MigrasiPasienService { @Override public List extractAndTransform() { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ"); List statusMigrasiList = new ArrayList<>(Arrays.asList(BELUM_KIRIM, PEMBAHARUAN)); List listPasien = migrasiPasienDao.findPasienByStatusMigrasiIn(statusMigrasiList); List listIdPasien = listPasien.stream().map(Pasien::getId).collect(Collectors.toList()); @@ -84,13 +85,15 @@ public class MigrasiPasienServiceImpl implements MigrasiPasienService { List dtoList = new ArrayList<>(); listPasien.forEach(pasien -> { PasienDto.PasienDtoBuilder dtoBuilder = PasienDto.builder(); + dtoBuilder.status("AKTIF"); dtoBuilder.noRekamMedis(pasien.getNoCm()); dtoBuilder.namaLengkap(pasien.getNamaPasien()); - dtoBuilder.namaPanggilan(pasien.getNamaDepan()); + dtoBuilder.namaPanggilan(CommonUtil.isNotNullOrEmpty(pasien.getNamaDepan()) ? pasien.getNamaDepan() + : pasien.getNamaPasien().split(" ")[0]); dtoBuilder.tempatLahir(pasien.getTempatLahir()); + dtoBuilder.caraRegistrasi("INTERNAL"); if (CommonUtil.isNotNullOrEmpty(pasien.getTglLahir())) - dtoBuilder.tanggalLahir( - pasien.getTglLahir().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime()); + dtoBuilder.tanggalLahir(dateFormat.format(pasien.getTglLahir())); dtoBuilder.surel(pasien.getEmail()); if (CommonUtil.isNotNullOrEmpty(pasien.getTitlePasienId())) dtoBuilder.sapaan(SapaanDto.builder().id(pasien.getTitlePasienId().longValue()).build()); @@ -99,7 +102,7 @@ public class MigrasiPasienServiceImpl implements MigrasiPasienService { .noIdentitas(pasien.getNoIdentitas()).build()))); if (CommonUtil.isNotNullOrEmpty(pasien.getJenisKelaminId())) dtoBuilder.jenisKelamin(JenisKelaminDto.builder().id(pasien.getJenisKelaminId().longValue()).build()); - if (CommonUtil.isNotNullOrEmpty(pasien.getGolonganDarahId())) + if (CommonUtil.isNotNullOrEmpty(pasien.getGolonganDarahId()) && pasien.getGolonganDarahId() != 0) dtoBuilder .golonganDarah(GolonganDarahDto.builder().id(pasien.getGolonganDarahId().longValue()).build()); listCaraMeninggal.stream().filter(c -> pasien.getId().equals(c.get("idPasien"))).findFirst() @@ -177,14 +180,15 @@ public class MigrasiPasienServiceImpl implements MigrasiPasienService { dtoBuilder.pekerjaan(PekerjaanDto.builder().id(PEGAWAI_SWASTA_ATAU_WIRAUSAHA.id()).build()); } { - if (Master.StatusPerkawinan.BELUM_KAWIN.equals(pasien.getStatusPerkawinanId())) - dtoBuilder.statusPerkawinan(StatusPerkawinanDto.builder().id(BELUM_KAWIN.id()).build()); - if (Master.StatusPerkawinan.KAWIN.equals(pasien.getStatusPerkawinanId())) + if (Master.StatusPerkawinan.KAWIN.equals(pasien.getStatusPerkawinanId())) { dtoBuilder.statusPerkawinan(StatusPerkawinanDto.builder().id(KAWIN.id()).build()); - if (Master.StatusPerkawinan.CERAI_HIDUP.equals(pasien.getStatusPerkawinanId())) + } else if (Master.StatusPerkawinan.CERAI_HIDUP.equals(pasien.getStatusPerkawinanId())) { dtoBuilder.statusPerkawinan(StatusPerkawinanDto.builder().id(CERAI_HIDUP.id()).build()); - if (Master.StatusPerkawinan.CERAI_MATI.equals(pasien.getStatusPerkawinanId())) + } else if (Master.StatusPerkawinan.CERAI_MATI.equals(pasien.getStatusPerkawinanId())) { dtoBuilder.statusPerkawinan(StatusPerkawinanDto.builder().id(CERAI_MATI.id()).build()); + } else { + dtoBuilder.statusPerkawinan(StatusPerkawinanDto.builder().id(BELUM_KAWIN.id()).build()); + } } { dtoBuilder.berkas(setBerkas(listDokumenVedika));