Update ResepDokterService
Penyesuaian cetakan resep baru
This commit is contained in:
parent
a46d1483c0
commit
3418991936
@ -17,12 +17,26 @@ import com.jasamedika.medifirst2000.entities.ResepDokter;
|
||||
*/
|
||||
@Repository("resepDokterDao")
|
||||
public interface ResepDokterDao extends PagingAndSortingRepository<ResepDokter, String> {
|
||||
@Query("select new Map(so.noRec as noRec," + "so.tglOrder as tglOrder," + "so.masalah as alergi,"
|
||||
@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," + "rd.racikanKe as rKe," + "rd.namaObat as obat," + "rd.qtyProduk as jumlah,"
|
||||
+ "ps.noCm as noCm, " + "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 "
|
||||
+ "left join so.noCm ps " + "inner join so.pegawaiOrder pg " + "where rd.strukOrderId = :strukOrderId")
|
||||
List<Map<String, Object>> findByStrukOrderId(@Param("strukOrderId") String strukOrderId);
|
||||
|
||||
@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")
|
||||
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 "
|
||||
+ "left join so.noCm ps " + "inner join so.pegawaiOrder pg " + "where rd.strukOrderId = :strukOrderId")
|
||||
List<Map<String, Object>> findResepBodyByStrukOrderId(@Param("strukOrderId") String strukOrderId);
|
||||
}
|
||||
|
||||
@ -15,7 +15,9 @@ public interface ResepDokterService extends BaseVoService<ResepDokter, ResepDokt
|
||||
|
||||
public List<Map<String, Object>> findByStrukOrderId(String strukOrderId);
|
||||
|
||||
public List<Map<String, Object>> findHeaderResep(String strukOrderId);
|
||||
public Map<String, Object> findHeaderResep(String strukOrderId);
|
||||
|
||||
public List<Map<String, Object>> findResepSatuan(String strukOrderId);
|
||||
|
||||
public List<Map<String, Object>> findResepRacikan(String strukOrderId);
|
||||
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package com.jasamedika.medifirst2000.service.impl;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -35,28 +36,28 @@ import com.jasamedika.medifirst2000.vo.StrukOrderVO;
|
||||
*/
|
||||
@Service("resepDokterService")
|
||||
public class ResepDokterServiceImpl extends BaseVoServiceImpl implements ResepDokterService {
|
||||
|
||||
|
||||
@Autowired
|
||||
private BaseConverterImpl<ResepDokterVO, ResepDokter> resepDokterConverter;
|
||||
|
||||
|
||||
@Autowired
|
||||
private BaseConverterImpl<ProdukVO, Produk> produkConverter;
|
||||
|
||||
|
||||
@Autowired
|
||||
private BaseConverterImpl<RuanganVO, Ruangan> ruanganConverter;
|
||||
|
||||
|
||||
@Autowired
|
||||
private BaseConverterImpl<SatuanStandarVO, SatuanStandar> satuanConverter;
|
||||
|
||||
|
||||
@Autowired
|
||||
private BaseConverterImpl<StrukOrderVO, StrukOrder> strukOrderConverter;
|
||||
|
||||
|
||||
@Autowired
|
||||
private BaseConverterImpl<JenisObatVO, JenisObat> jenisObatConverter;
|
||||
|
||||
|
||||
@Autowired
|
||||
private BaseConverterImpl<JenisKemasanVO, JenisKemasan> jenisKemasanConverter;
|
||||
|
||||
|
||||
@Autowired
|
||||
private ResepDokterDao resepDokterDao;
|
||||
|
||||
@ -123,7 +124,7 @@ public class ResepDokterServiceImpl extends BaseVoServiceImpl implements ResepDo
|
||||
public List<ResepDokterVO> findAll() throws JpaSystemException {
|
||||
List<ResepDokterVO> result = new ArrayList<ResepDokterVO>();
|
||||
Iterable<ResepDokter> models = resepDokterDao.findAll();
|
||||
if (CommonUtil.isNotNullOrEmpty(models)) {
|
||||
if (CommonUtil.isNotNullOrEmpty(models)) {
|
||||
for (ResepDokter model : models) {
|
||||
ResepDokterVO vo = new ResepDokterVO();
|
||||
vo = resepDokterConverter.transferModelToVO(model, vo);
|
||||
@ -149,31 +150,68 @@ public class ResepDokterServiceImpl extends BaseVoServiceImpl implements ResepDo
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> findHeaderResep(String strukOrderId) {
|
||||
public Map<String, Object> findHeaderResep(String strukOrderId) {
|
||||
Map<String, Object> result = resepDokterDao.findResepHeaderByStrukOrderId(strukOrderId);
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> findResepSatuan(String strukOrderId) {
|
||||
List<Map<String, Object>> result = new ArrayList<>();
|
||||
List<Map<String, Object>> data = resepDokterDao.findByStrukOrderId(strukOrderId);
|
||||
List<Map<String, Object>> data = resepDokterDao.findResepBodyByStrukOrderId(strukOrderId);
|
||||
List<String> listResepKe = new ArrayList<>();
|
||||
for (Map<String, Object> map : data) {
|
||||
if (!listResepKe.contains(map.get("rKe"))) {
|
||||
listResepKe.add(map.get("rKe").toString());
|
||||
}
|
||||
}
|
||||
int jumlahResep = 0;
|
||||
for (String resepKe : listResepKe) {
|
||||
int jumlahResep = 0;
|
||||
Map<String, Object> rsMap = new HashMap<String, Object>();
|
||||
for (Map<String, Object> map : data) {
|
||||
if (resepKe.equals(map.get("rKe"))) {
|
||||
|
||||
rsMap.putAll(map);
|
||||
jumlahResep++;
|
||||
}
|
||||
}
|
||||
if (jumlahResep == 1) {
|
||||
result.add(rsMap);
|
||||
}
|
||||
}
|
||||
return null;
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> findResepRacikan(String strukOrderId) {
|
||||
List<Map<String, Object>> result = new ArrayList<>();
|
||||
List<Map<String, Object>> data = resepDokterDao.findByStrukOrderId(strukOrderId);
|
||||
return null;
|
||||
List<Map<String, Object>> data = resepDokterDao.findResepBodyByStrukOrderId(strukOrderId);
|
||||
List<String> listResepKe = new ArrayList<>();
|
||||
for (Map<String, Object> map : data) {
|
||||
if (!listResepKe.contains(map.get("rKe"))) {
|
||||
listResepKe.add(map.get("rKe").toString());
|
||||
}
|
||||
}
|
||||
List<String> listRacikan = new ArrayList<>();
|
||||
for (String resepKe : listResepKe) {
|
||||
int jumlahResep = 0;
|
||||
String racikanKe = resepKe;
|
||||
for (Map<String, Object> map : data) {
|
||||
if (resepKe.equals(map.get("rKe"))) {
|
||||
jumlahResep++;
|
||||
}
|
||||
}
|
||||
if (jumlahResep > 1) {
|
||||
listRacikan.add(racikanKe);
|
||||
}
|
||||
}
|
||||
for (String racikanKe : listRacikan) {
|
||||
for (Map<String, Object> map : data) {
|
||||
if (racikanKe.equals(map.get("rKe"))) {
|
||||
result.add(map);
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -130,6 +130,7 @@ import com.jasamedika.medifirst2000.service.RekrutmenService;
|
||||
import com.jasamedika.medifirst2000.service.ReportService;
|
||||
import com.jasamedika.medifirst2000.service.ReportingPegawaiService;
|
||||
import com.jasamedika.medifirst2000.service.ReportingPelayananRekamMedisService;
|
||||
import com.jasamedika.medifirst2000.service.ResepDokterService;
|
||||
import com.jasamedika.medifirst2000.service.ReturRuanganService;
|
||||
import com.jasamedika.medifirst2000.service.RuanganService;
|
||||
import com.jasamedika.medifirst2000.service.StokProdukGlobalService;
|
||||
@ -336,6 +337,9 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
|
||||
|
||||
@Autowired
|
||||
private CatatanPerkembanganPasienTerintegrasiService cpptService;
|
||||
|
||||
@Autowired
|
||||
private ResepDokterService resepDokterService;
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@RequestMapping("/instalasiRawatInap")
|
||||
@ -7502,40 +7506,24 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
|
||||
|
||||
@RequestMapping("/resep")
|
||||
public ModelAndView generateResep(ModelAndView m, @RequestParam(value = "format", required = false) String format,
|
||||
@RequestParam(value = "startDate", required = true) String startDate,
|
||||
@RequestParam(value = "endDate", required = true) String endDate) {
|
||||
|
||||
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
|
||||
|
||||
Map<String, Object> kepalaTtdRekap = pegawaiService
|
||||
.findKepalaPegawai("Kepala Instalasi Loundry dan Sterilisasi Sentral");
|
||||
Map<String, Object> grandTarifQty = laundryService.findGrandTarifQtyCuciLinen(startDate, endDate);
|
||||
List<Map<String, Object>> dsRekapCuciLinen = laundryService.findDepartemenTarifQtyCuciLinen(startDate, endDate);
|
||||
List<Map<String, Object>> sdsRekapCuciLinen = laundryService.findRuanganTarifQtyCuciLinen(startDate, endDate);
|
||||
|
||||
try {
|
||||
Date sd = df.parse(startDate);
|
||||
Date ed = df.parse(endDate);
|
||||
|
||||
m.addObject("startDate", sd);
|
||||
m.addObject("endDate", ed);
|
||||
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
m.addObject("dsRekapLayananLaundry", dsRekapCuciLinen);
|
||||
m.addObject("sdsRekapLayananLaundry", sdsRekapCuciLinen);
|
||||
m.addObject("grandSubTotal", grandTarifQty.get("grandSubTotal"));
|
||||
m.addObject("grandTotal", grandTarifQty.get("grandTotal"));
|
||||
m.addObject("grandBerat", grandTarifQty.get("grandBerat"));
|
||||
m.addObject("rataanBeratCucian", grandTarifQty.get("rataanBeratCucian"));
|
||||
m.addObject("rataanLembarCucian", grandTarifQty.get("rataanLembarCucian"));
|
||||
@RequestParam(value = "struk_order_id", required = true) String strukOrderId) {
|
||||
Map<String, Object> headerResep = resepDokterService.findHeaderResep(strukOrderId);
|
||||
List<Map<String, Object>> dsResep = resepDokterService.findResepSatuan(strukOrderId);
|
||||
List<Map<String, Object>> sdsResep = resepDokterService.findResepRacikan(strukOrderId);
|
||||
|
||||
m.addObject("dsResep", dsResep);
|
||||
m.addObject("sdsResep", sdsResep);
|
||||
m.addObject("noRec", headerResep.get("noRec"));
|
||||
m.addObject("tglOrder", headerResep.get("tglOrder"));
|
||||
m.addObject("alergi", headerResep.get("alergi"));
|
||||
m.addObject("beratBadan", headerResep.get("beratBadan"));
|
||||
m.addObject("ruangan", headerResep.get("ruangan"));
|
||||
m.addObject("dokter", headerResep.get("dokter"));
|
||||
m.addObject("noRegistrasi", headerResep.get("noRegistrasi"));
|
||||
m.addObject("namaPasien", headerResep.get("namaPasien"));
|
||||
m.addObject("tglLahir", headerResep.get("tglLahir"));
|
||||
m.addObject("noCm", headerResep.get("noCm"));
|
||||
m.addObject("format", "pdf");
|
||||
if (CommonUtil.isNotNullOrEmpty(kepalaTtdRekap)) {
|
||||
m.addObject("nipPegawai", kepalaTtdRekap.get("nipPegawai"));
|
||||
m.addObject("namaPegawai", kepalaTtdRekap.get("namaPegawai"));
|
||||
}
|
||||
if (format != null && !format.isEmpty()) {
|
||||
m.addObject("format", format);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user