From 33d9e97d528db577a80e8b1c5f0d3ca104f5f768 Mon Sep 17 00:00:00 2001 From: salmanoe Date: Thu, 18 Aug 2022 12:53:29 +0700 Subject: [PATCH] Update ResepDokterService Penyesuaian format tanggal lahir - tanggal order - umur --- .../medifirst2000/dao/ResepDokterDao.java | 8 +++--- .../service/impl/ResepDokterServiceImpl.java | 13 +++++++++ jasamedika-reporting/pom.xml | 4 +-- .../controller/ReportingController.java | 1 + .../WEB-INF/templates/jrxml/resep.jrxml | 27 +++++++++++++++---- 5 files changed, 42 insertions(+), 11 deletions(-) diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/ResepDokterDao.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/ResepDokterDao.java index dbe28fb7..5599edbb 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/ResepDokterDao.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/ResepDokterDao.java @@ -19,10 +19,10 @@ import com.jasamedika.medifirst2000.entities.ResepDokter; public interface ResepDokterDao extends PagingAndSortingRepository { @Query("select distinct new Map(so.noRec as noRec," + "so.tglOrder as tglOrder," + "so.masalah as alergi," + "so.diagnosis as beratBadan," + "ru.namaRuangan as ruangan," + "pg.namaLengkap as dokter," - + "pd.noRegistrasi as noRegistrasi," + "ps.namaPasien as namaPasien," + "ps.tglLahir as tglLahir," - + "ps.noCm as noCm) " + "from ResepDokter rd " + "left join rd.strukOrder so " + "left join rd.ruangan ru " - + "left join so.noRegistrasi pd " + "left join so.noCm ps " + "inner join so.pegawaiOrder pg " - + "where rd.strukOrderId = :strukOrderId") + + "pd.noRegistrasi as noRegistrasi," + "pd.tglRegistrasi as tglRegistrasi," + "ps.namaPasien as namaPasien," + + "ps.tglLahir as tglLahir," + "ps.noCm as noCm) " + "from ResepDokter rd " + "left join rd.strukOrder so " + + "left join rd.ruangan ru " + "left join so.noRegistrasi pd " + "left join so.noCm ps " + + "inner join so.pegawaiOrder pg " + "where rd.strukOrderId = :strukOrderId") Map findResepHeaderByStrukOrderId(@Param("strukOrderId") String strukOrderId); @Query("select new Map(rd.racikanKe as rKe," + "rd.namaObat as obat," + "rd.qtyProduk as jumlah," diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ResepDokterServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ResepDokterServiceImpl.java index 0839fbd5..198ca4d9 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ResepDokterServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ResepDokterServiceImpl.java @@ -1,6 +1,7 @@ package com.jasamedika.medifirst2000.service.impl; import java.util.ArrayList; +import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -143,6 +144,18 @@ public class ResepDokterServiceImpl extends BaseVoServiceImpl implements ResepDo @Override public Map findHeaderResep(String strukOrderId) { Map result = resepDokterDao.findResepHeaderByStrukOrderId(strukOrderId); + String umur = "0 tahun 0 bulan 0 hari"; + Date tglRegistrasi = (Date) result.get("tglRegistrasi"); + Date tglLahir = (Date) result.get("tglLahir"); + long selisihTgl = tglRegistrasi.getTime() - tglLahir.getTime(); + long tahun = selisihTgl / 31_556_952_000L; + long bulan = (selisihTgl % 31_556_952_000L) / 2_629_746_000L; + long hari = ((selisihTgl % 31_556_952_000L) % 2_629_746_000L) / 86_400_000L; + if (CommonUtil.isNotNullOrEmpty(tglRegistrasi) && CommonUtil.isNotNullOrEmpty(tglLahir) + && tglRegistrasi.getTime() >= tglLahir.getTime()) { + umur = tahun + " tahun " + bulan + " bulan " + hari + " hari"; + } + result.put("umur", umur); return result; } diff --git a/jasamedika-reporting/pom.xml b/jasamedika-reporting/pom.xml index ae87644d..b5c0e218 100644 --- a/jasamedika-reporting/pom.xml +++ b/jasamedika-reporting/pom.xml @@ -201,13 +201,13 @@ net.sf.jasperreports jasperreports - 6.12.2 + 6.13.0 net.sf.jasperreports jasperreports-fonts - 6.12.2 + 6.13.0 diff --git a/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java b/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java index 5c32a373..c8ee4c70 100644 --- a/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java +++ b/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java @@ -7805,6 +7805,7 @@ public class ReportingController extends LocaleController m.addObject("noRegistrasi", headerResep.get("noRegistrasi")); m.addObject("namaPasien", headerResep.get("namaPasien")); m.addObject("tglLahir", headerResep.get("tglLahir")); + m.addObject("umur", headerResep.get("umur")); m.addObject("noCm", headerResep.get("noCm")); m.addObject("format", "pdf"); if (format != null && !format.isEmpty()) { diff --git a/jasamedika-reporting/src/main/webapp/WEB-INF/templates/jrxml/resep.jrxml b/jasamedika-reporting/src/main/webapp/WEB-INF/templates/jrxml/resep.jrxml index 28a9e94e..538ca7cc 100644 --- a/jasamedika-reporting/src/main/webapp/WEB-INF/templates/jrxml/resep.jrxml +++ b/jasamedika-reporting/src/main/webapp/WEB-INF/templates/jrxml/resep.jrxml @@ -1,5 +1,5 @@ - + @@ -21,6 +21,7 @@ + @@ -36,7 +37,7 @@ - + @@ -164,7 +165,7 @@ - + @@ -180,7 +181,7 @@ - + @@ -264,6 +265,22 @@ + + + + + + + + + + + + + + + + @@ -302,7 +319,7 @@ - +