From 406b4180dca834457f0b4705398c3a8eac2b792d Mon Sep 17 00:00:00 2001 From: Salman Manoe Date: Thu, 16 Nov 2023 12:45:11 +0700 Subject: [PATCH] Create model entity dokumen vedika --- .../medifirst2000/constants/Master.java | 7 ++ .../impl/MigrasiPasienServiceImpl.java | 19 ++++- .../medifirst2000/entities/DokumenVedika.java | 80 +++++++++++++++++++ .../src/main/resources/hibernate.cfg.xml | 1 + 4 files changed, 105 insertions(+), 2 deletions(-) create mode 100644 jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/DokumenVedika.java diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java index ced35ec9..817cd62a 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java @@ -108,6 +108,13 @@ public final class Master { public static final Integer[] LEVEL_KEPALA = { 3, 4 }; } + public static final class JenisAlamat { + public static final Integer DOMISILI = 4; + public static final Integer IDENTITAS = 3; + public static final Integer KANTOR = 2; + public static final Integer RUMAH = 1; + } + public static final class JenisKomponenGaji { public static final Integer PEMOTONGAN = 2; public static final Integer PENERIMAAN = 1; 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 8b204d9c..045954a1 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 @@ -19,6 +19,8 @@ import java.util.*; import java.util.stream.Collectors; import static com.jasamedika.medifirst2000.etl.pasien.constant.CaraMeninggal.*; +import static com.jasamedika.medifirst2000.etl.pasien.constant.JenisAlamat.DOMISILI; +import static com.jasamedika.medifirst2000.etl.pasien.constant.JenisAlamat.IDENTITAS; import static com.jasamedika.medifirst2000.etl.pasien.constant.JenisIdentitas.KTP; import static com.jasamedika.medifirst2000.etl.pasien.constant.Pekerjaan.*; import static com.jasamedika.medifirst2000.etl.pasien.constant.Pendidikan.*; @@ -104,7 +106,8 @@ public class MigrasiPasienServiceImpl implements MigrasiPasienService { dtoBuilder.caraMeninggal(CaraMeninggalDto.builder().id(DOA.id()).build()); if (Master.CaraMeninggal.BLUECODE.equals(c.get("idPenyebabKematian"))) dtoBuilder.caraMeninggal(CaraMeninggalDto.builder().id(BLUECODE.id()).build()); - if (Arrays.asList(Master.CaraMeninggal.LAHIR).contains(Integer.parseInt(c.get("idPenyebabKematian").toString()))) + if (Arrays.asList(Master.CaraMeninggal.LAHIR) + .contains(Integer.parseInt(c.get("idPenyebabKematian").toString()))) dtoBuilder.caraMeninggal(CaraMeninggalDto.builder().id(LAHIR.id()).build()); }); dtoBuilder.kewarganegaraan(KewarganegaraanDto.builder().id(pasien.getKebangsaanId().longValue()).build()); @@ -184,13 +187,25 @@ public class MigrasiPasienServiceImpl implements MigrasiPasienService { } private Set setAlamat(List listAlamat) { - // TODO: Set ekstraksi dan transformasi alamat pasien Set dtoList = new HashSet<>(); listAlamat.forEach(alamat -> { AlamatDto.AlamatDtoBuilder dtoBuilder = AlamatDto.builder(); dtoBuilder.alamat(alamat.getAlamatLengkap()); + if (alamat.getRtrw().split(" ")[0].equals("RT")) + dtoBuilder.rt(Integer.parseInt(alamat.getRtrw().split(" ")[1])); + if (alamat.getRtrw().split(" ")[2].equals("RW")) + dtoBuilder.rw(Integer.parseInt(alamat.getRtrw().split(" ")[3])); dtoBuilder.kodePos(Integer.valueOf(alamat.getKodePos())); dtoList.add(dtoBuilder.build()); + { + if (Master.JenisAlamat.IDENTITAS.equals(alamat.getJenisAlamatId())) + dtoBuilder.jenisAlamat(JenisAlamatDto.builder().id(IDENTITAS.id()).build()); + if (Master.JenisAlamat.DOMISILI.equals(alamat.getJenisAlamatId())) + dtoBuilder.jenisAlamat(JenisAlamatDto.builder().id(DOMISILI.id()).build()); + } + dtoBuilder.kelurahanDesa( + KelurahanDesaDto.builder().id(alamat.getDesaKelurahan().getMigrasiKelurahanDesaId()).build()); + dtoBuilder.negara(NegaraDto.builder().id(alamat.getNegaraId().longValue()).build()); }); return dtoList; } diff --git a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/DokumenVedika.java b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/DokumenVedika.java new file mode 100644 index 00000000..fd1524e0 --- /dev/null +++ b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/DokumenVedika.java @@ -0,0 +1,80 @@ +package com.jasamedika.medifirst2000.entities; + +import com.jasamedika.medifirst2000.helper.Caption; +import lombok.Getter; +import lombok.Setter; + +import javax.persistence.*; +import java.io.Serializable; +import java.util.Date; + +import static javax.persistence.FetchType.LAZY; +import static javax.persistence.GenerationType.SEQUENCE; +import static javax.persistence.TemporalType.TIMESTAMP; + +/** + * @author salmanoe + * @version 1.0.0 + * @since 16/11/2023 + */ +@Getter +@Setter +@Entity +@Table(name = "document_vedika_tb") +public class DokumenVedika implements Serializable { + @Id + @GeneratedValue(strategy = SEQUENCE, generator = "gen_document_vedika_tb_id_seq") + @SequenceGenerator(name = "gen_document_vedika_tb_id_seq", sequenceName = "public.document_vedika_tb_id_seq", allocationSize = 1) + @Column(name = "id", columnDefinition = "serial4 default nextval('document_vedika_tb_id_seq'::regclass)") + protected Integer id; + + @Column(name = "statusenabled") + @Caption(value = "Status Enabled") + public Boolean statusEnabled; + + @ManyToOne(fetch = LAZY) + @JoinColumn(name = "pasiendaftar_t_norec") + @Caption(value = "Pasien Daftar") + private PasienDaftar pasienDaftar; + + @Column(name = "pasiendaftar_t_norec", insertable = false, updatable = false) + private String pasienDaftarId; + + @Column(name = "nam_file", length = 500) + @Caption(value = "Nama File") + private String namaFile; + + @Column(name = "url") + @Caption(value = "URL") + private String url; + + @Column(name = "deskripsi") + @Caption(value = "Deskripsi") + private String deskripsi; + + @ManyToOne(fetch = LAZY) + @JoinColumn(name = "jenis_berkas_id") + @Caption(value = "Jenis Berkas") + private JenisBerkas jenisBerkas; + + @Column(name = "jenis_berkas_id", insertable = false, updatable = false) + private Integer jenisBerkasId; + + @Column(name = "no_mr") + @Caption(value = "No Rekam Medis") + private String pasienNoMr; + + @Column(name = "date_insert") + @Temporal(TIMESTAMP) + @Caption(value = "Tanggal Dibuat") + private Date tglDibuat; + + @Column(name = "id_user", insertable = false, updatable = false) + @Caption(value = "ID User") + private Integer userId; + + @Column(name = "log_create_at") + @Temporal(TIMESTAMP) + @Caption(value = "Tanggal Log Dibuat") + private Date logCreateAt; +} diff --git a/jasamedika-domain/src/main/resources/hibernate.cfg.xml b/jasamedika-domain/src/main/resources/hibernate.cfg.xml index bbd5402d..2da0e4f7 100644 --- a/jasamedika-domain/src/main/resources/hibernate.cfg.xml +++ b/jasamedika-domain/src/main/resources/hibernate.cfg.xml @@ -886,5 +886,6 @@ +