Update service resep dokter

Penyesuaian aturan pakai signa di cetakan resep elektronik
This commit is contained in:
Salman Manoe 2024-01-10 15:05:43 +07:00
parent 0db7dad001
commit 3c023474c9
4 changed files with 54 additions and 51 deletions

View File

@ -1,14 +1,13 @@
package com.jasamedika.medifirst2000.dao;
import java.util.List;
import java.util.Map;
import com.jasamedika.medifirst2000.entities.ResepDokter;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
import com.jasamedika.medifirst2000.entities.ResepDokter;
import java.util.List;
import java.util.Map;
/**
* @author salmanoe
@ -26,8 +25,13 @@ public interface ResepDokterDao extends PagingAndSortingRepository<ResepDokter,
Map<String, Object> findResepHeaderByStrukOrderId(@Param("strukOrderId") String strukOrderId);
@Query("select new Map(rd.racikanKe as rKe," + "rd.namaObat as obat," + "rd.qtyProduk as jumlah,"
+ "rd.keteranganLainnya as instruksi," + "rd.keteranganPakai as aturanPakai) " + "from ResepDokter rd "
+ "left join rd.strukOrder so " + "left join rd.ruangan ru " + "left join so.noRegistrasi pd "
+ "rd.keteranganLainnya as instruksi,rd.aturanPakaiId as aturanId,rd.aturanPakaiSignaId as aturanSignaId,"
+ "rd.keteranganPakai as aturanPakai, ap.keteranganPakai as keteranganPakai,"
+ "jd.namaJumlah as jumlahSigna," + "sd.namaSatuan as satuanSigna," + "fp.namaFrekuensi as frekuensiSigna,"
+ "kp.namaKeterangan as keteranganSigna) " + "from ResepDokter rd " + "left join rd.strukOrder so "
+ "left join rd.aturanPakai ap " + "left join rd.aturanPakaiSigna aps " + "left join aps.jumlahDosis jd "
+ "left join aps.satuanDosis sd " + "left join aps.frekuensiPakaiObat fp "
+ "left join aps.keteranganPakaiObat kp " + "left join rd.ruangan ru " + "left join so.noRegistrasi pd "
+ "left join so.noCm ps " + "inner join so.pegawaiOrder pg " + "where rd.strukOrderId = :strukOrderId "
+ "order by rd.racikanKe, rd.namaObat")
List<Map<String, Object>> findResepBodyByStrukOrderId(@Param("strukOrderId") String strukOrderId);

View File

@ -1,22 +1,22 @@
package com.jasamedika.medifirst2000.service;
import java.util.List;
import java.util.Map;
import com.jasamedika.medifirst2000.entities.ResepDokter;
import com.jasamedika.medifirst2000.vo.ResepDokterVO;
import java.util.List;
import java.util.Map;
/**
* @author salmanoe
* @since Aug 9, 2022
*
*/
public interface ResepDokterService extends BaseVoService<ResepDokter, ResepDokterVO, String> {
public Map<String, Object> findHeaderResep(String strukOrderId);
public List<Map<String, Object>> findResepSatuan(String strukOrderId);
public List<Map<String, Object>> findResepRacikan(String strukOrderId);
Map<String, Object> findHeaderResep(String strukOrderId);
List<Map<String, Object>> findResepSatuan(String strukOrderId);
List<Map<String, Object>> findResepRacikan(String strukOrderId);
}

View File

@ -1,34 +1,17 @@
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;
import com.jasamedika.medifirst2000.converter.BaseConverterImpl;
import com.jasamedika.medifirst2000.dao.ResepDokterDao;
import com.jasamedika.medifirst2000.entities.*;
import com.jasamedika.medifirst2000.exception.ServiceVOException;
import com.jasamedika.medifirst2000.service.ResepDokterService;
import com.jasamedika.medifirst2000.util.CommonUtil;
import com.jasamedika.medifirst2000.vo.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.orm.jpa.JpaSystemException;
import org.springframework.stereotype.Service;
import com.jasamedika.medifirst2000.converter.BaseConverterImpl;
import com.jasamedika.medifirst2000.dao.ResepDokterDao;
import com.jasamedika.medifirst2000.entities.JenisKemasan;
import com.jasamedika.medifirst2000.entities.JenisObat;
import com.jasamedika.medifirst2000.entities.Produk;
import com.jasamedika.medifirst2000.entities.ResepDokter;
import com.jasamedika.medifirst2000.entities.Ruangan;
import com.jasamedika.medifirst2000.entities.SatuanStandar;
import com.jasamedika.medifirst2000.entities.StrukOrder;
import com.jasamedika.medifirst2000.exception.ServiceVOException;
import com.jasamedika.medifirst2000.service.ResepDokterService;
import com.jasamedika.medifirst2000.util.CommonUtil;
import com.jasamedika.medifirst2000.vo.JenisKemasanVO;
import com.jasamedika.medifirst2000.vo.JenisObatVO;
import com.jasamedika.medifirst2000.vo.ProdukVO;
import com.jasamedika.medifirst2000.vo.ResepDokterVO;
import com.jasamedika.medifirst2000.vo.RuanganVO;
import com.jasamedika.medifirst2000.vo.SatuanStandarVO;
import com.jasamedika.medifirst2000.vo.StrukOrderVO;
import java.util.*;
/**
* @author salmanoe
@ -163,6 +146,14 @@ public class ResepDokterServiceImpl extends BaseVoServiceImpl implements ResepDo
public List<Map<String, Object>> findResepSatuan(String strukOrderId) {
List<Map<String, Object>> result = new ArrayList<>();
List<Map<String, Object>> data = resepDokterDao.findResepBodyByStrukOrderId(strukOrderId);
data.forEach(d -> {
if (CommonUtil.isNotNullOrEmpty(d.get("aturanSignaId"))) {
d.put("instruksi", d.get("jumlahSigna").toString() + " " + d.get("satuanSigna").toString());
d.put("aturanPakai", d.get("frekuensiSigna").toString() + " " + d.get("keteranganSigna").toString());
} else if (CommonUtil.isNotNullOrEmpty(d.get("aturanId"))) {
d.put("aturanPakai", d.get("keteranganPakai"));
}
});
List<String> listResepKe = new ArrayList<>();
for (Map<String, Object> map : data) {
if (!listResepKe.contains(map.get("rKe"))) {
@ -191,6 +182,14 @@ public class ResepDokterServiceImpl extends BaseVoServiceImpl implements ResepDo
public List<Map<String, Object>> findResepRacikan(String strukOrderId) {
List<Map<String, Object>> result = new ArrayList<>();
List<Map<String, Object>> data = resepDokterDao.findResepBodyByStrukOrderId(strukOrderId);
data.forEach(d -> {
if (CommonUtil.isNotNullOrEmpty(d.get("aturanSignaId"))) {
d.put("instruksi", d.get("jumlahSigna").toString() + " " + d.get("satuanSigna").toString());
d.put("aturanPakai", d.get("frekuensiSigna").toString() + " " + d.get("keteranganSigna").toString());
} else if (CommonUtil.isNotNullOrEmpty(d.get("aturanId"))) {
d.put("aturanPakai", d.get("keteranganPakai"));
}
});
List<String> listResepKe = new ArrayList<>();
for (Map<String, Object> map : data) {
if (!listResepKe.contains(map.get("rKe"))) {

View File

@ -1690,7 +1690,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
dto.setLamaDirawatPenderitaMasuk(
AgeCalculator.calculateAge2(df.parse(tglKeluar), df.parse(tglMasuk)).toString());
} catch (ParseException e) {
e.printStackTrace();
throw new ServiceVOException(e.getMessage());
}
}
dto.setStatusKeluar(statusKeluar);
@ -4376,7 +4376,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
m.addObject("endDate", DateUtil.getIndonesianStringDate(sdf.parse(endDate)));
m.addObject("startDate", DateUtil.getIndonesianStringDate(sdf.parse(startDate)));
} catch (ParseException e) {
e.printStackTrace();
throw new ServiceVOException(e.getMessage());
}
m.addObject("idFinger", temp.get("idFinger"));
m.addObject("jmlterlambat", ((Long) kehadiran.get("jumlahTerlambat")).toString());
@ -5672,7 +5672,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
m.addObject("endDate", ed);
} catch (ParseException e) {
e.printStackTrace();
throw new ServiceVOException(e.getMessage());
}
Map<String, Object> resultSimpan = neracaLimbahService.findReportNeracaLimbahB3(noRec);
@ -6667,7 +6667,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
getMessage(MessageResource.LABEL_SUCCESS, request));
} catch (Exception e) {
e.printStackTrace();
throw new ServiceVOException(e.getMessage());
}
return RestUtil.getJsonResponse(result, HttpStatus.OK);
}
@ -6827,7 +6827,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
m.addObject("endDate", ed);
} catch (ParseException e) {
e.printStackTrace();
throw new ServiceVOException(e.getMessage());
}
m.addObject("dataSource", dataSource.get("dataSource"));
@ -6862,7 +6862,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
m.addObject("endDate", ed);
} catch (ParseException e) {
e.printStackTrace();
throw new ServiceVOException(e.getMessage());
}
m.addObject("dsRekapLayananLaundry", dsRekapLayananLaundry);
@ -6900,7 +6900,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
m.addObject("endDate", ed);
} catch (ParseException e) {
e.printStackTrace();
throw new ServiceVOException(e.getMessage());
}
m.addObject("dsRekapLayananSterilisasi", dsRekapLayananSterilisasi);
@ -6941,7 +6941,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
m.addObject("endDate", ed);
} catch (ParseException e) {
e.printStackTrace();
throw new ServiceVOException(e.getMessage());
}
m.addObject("dsRekapPengirimanSterilisasi", dsRekapPengirimanSterilisasi);
@ -7025,7 +7025,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
periode = DateUtil.getIndonesianStringDate(sd) + " s/d " + DateUtil.getIndonesianStringDate(ed);
}
} catch (ParseException e) {
e.printStackTrace();
throw new ServiceVOException(e.getMessage());
}
if (CommonUtil.isNotNullOrEmpty(ruanganId)) {
m.addObject("ruangan", ruanganDao.findOne(ruanganId).getNamaRuangan());
@ -7093,7 +7093,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
m.addObject("endDate", ed);
} catch (ParseException e) {
e.printStackTrace();
throw new ServiceVOException(e.getMessage());
}
m.addObject("dsRekapLayananLaundry", dsRekapCuciLinen);