Update MigrasiPasienServiceImpl.java

Perbaikan validasi golongan darah dan status perkawinan default
This commit is contained in:
Salman Manoe 2024-07-26 15:57:31 +07:00
parent fb44d1810e
commit e0a9fb0cc5

View File

@ -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<PasienDto> extractAndTransform() {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");
List<StatusMigrasi> statusMigrasiList = new ArrayList<>(Arrays.asList(BELUM_KIRIM, PEMBAHARUAN));
List<Pasien> listPasien = migrasiPasienDao.findPasienByStatusMigrasiIn(statusMigrasiList);
List<Integer> listIdPasien = listPasien.stream().map(Pasien::getId).collect(Collectors.toList());
@ -84,13 +85,15 @@ public class MigrasiPasienServiceImpl implements MigrasiPasienService {
List<PasienDto> 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));