Update perbaikan performance karena format tanggal
This commit is contained in:
parent
8d8b0af40c
commit
bd6390cac0
@ -5705,10 +5705,12 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
|
||||
@RequestParam(value = "format", required = false) String format,
|
||||
@RequestParam(value = "periode", required = true) String periode,
|
||||
@RequestParam(value = "idPegawai", required = false) Integer idPegawai) {
|
||||
Date start = DateUtil.startMonth(periode);
|
||||
Date end = DateUtil.endMonth(periode);
|
||||
|
||||
Pegawai pegawaiLoggedIn = indekKinerjaService.getPegawaiByUserLogin();
|
||||
Map<String, Object> pegawai = pegawaiDao.findPegawaiById(pegawaiLoggedIn.getId());
|
||||
List<Map<String, Object>> result = indekKinerjaDao.findTindakanByIdPegawaiAndPeriod(periode,
|
||||
List<Map<String, Object>> result = indekKinerjaDao.findTindakanByIdPegawaiAndPeriod(start, end,
|
||||
pegawaiLoggedIn.getId(), indekKinerjaService.splitIdProdukAdministrasi());
|
||||
if (CommonUtil.isNullOrEmpty(result)) {
|
||||
Map<String, Object> data = new HashMap<String, Object>();
|
||||
@ -5730,7 +5732,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
|
||||
m.addObject("jabatanAtasan", atasan.get("jabatanInternal"));
|
||||
m.addObject("atasan", atasan.get("nama"));
|
||||
m.addObject("nipAtasan", atasan.get("nipPns"));
|
||||
m.addObject("total", indekKinerjaDao.findTotalTindakanPerMonth(pegawaiLoggedIn.getId(), periode,
|
||||
m.addObject("total", indekKinerjaDao.findTotalTindakanPerMonth(pegawaiLoggedIn.getId(), start, end,
|
||||
indekKinerjaService.splitIdProdukAdministrasi()));
|
||||
|
||||
m.addObject("format", "pdf");
|
||||
|
||||
@ -111,10 +111,10 @@ public interface IndekKinerjaDao extends PagingAndSortingRepository<IndekKinerja
|
||||
+ " left join pelayananPasienPetugas.pelayananPasien pelayananPasien"
|
||||
+ " left join pelayananPasien.produk produk " + " left join produk.detailJenisProduk detail"
|
||||
+ " left join detail.jenisProduk jenisProduk "
|
||||
+ " where dokter.id=:id and jenisProduk.id not in (:listIdJenisProduk) and to_char(pelayananPasien.tglPelayanan,'yyyy-MM-dd')=:tgl "
|
||||
+ " where dokter.id=:id and jenisProduk.id not in (:listIdJenisProduk) and pelayananPasien.tglPelayanan between :start and :end "
|
||||
+ " group by produk.namaProduk, produk.id,pelayananPasien.hargaSatuan ,detail.id,jenisProduk.id")
|
||||
public List<Map<String, Object>> findTindakanByIdUser(@Param("id") Integer id, @Param("tgl") String tgl,
|
||||
@Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
public List<Map<String, Object>> findTindakanByIdUser(@Param("id") Integer id, @Param("start") Date start,
|
||||
@Param("end") Date end, @Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
|
||||
@Query(" select new map (produk.namaProduk as namaProduk,produk.id as produkId,"
|
||||
+ " count(produk.namaProduk) as count,to_char(pelayananPasien.tglPelayanan,'yyyy-MM-dd') as tglPelayanan )"
|
||||
@ -124,11 +124,11 @@ public interface IndekKinerjaDao extends PagingAndSortingRepository<IndekKinerja
|
||||
+ " left join pelayananPasien.produk produk " + " left join produk.detailJenisProduk detail"
|
||||
+ " left join detail.jenisProduk jenisProduk "
|
||||
+ " where dokter.id=:id and jenisProduk.id not in (:listIdJenisProduk) "
|
||||
+ " and to_char(pelayananPasien.tglPelayanan,'yyyy-MM-dd')= "
|
||||
+ " :date group by produk.namaProduk,produk.id,to_char(pelayananPasien.tglPelayanan,'yyyy-MM-dd')"
|
||||
+ " and pelayananPasien.tglPelayanan between :start and :end "
|
||||
+ "group by produk.namaProduk,produk.id,to_char(pelayananPasien.tglPelayanan,'yyyy-MM-dd')"
|
||||
+ " order by to_char(pelayananPasien.tglPelayanan,'yyyy-MM-dd')")
|
||||
public List<Map<String, Object>> findTindakanByIdUserAndPeriod(@Param("id") Integer id, @Param("date") String date,
|
||||
@Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
public List<Map<String, Object>> findTindakanByIdUserAndPeriod(@Param("id") Integer id, @Param("start") Date start,
|
||||
@Param("end") Date end, @Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
|
||||
@Query(" select new map (produk.namaProduk as namaProduk,produk.id as produkId,"
|
||||
+ " count(produk.namaProduk) as count,to_char(pelayananPasien.tglPelayanan,'yyyy-MM-dd') as tglPelayanan )"
|
||||
@ -138,11 +138,12 @@ public interface IndekKinerjaDao extends PagingAndSortingRepository<IndekKinerja
|
||||
+ " left join pelayananPasien.produk produk " + " left join produk.detailJenisProduk detail"
|
||||
+ " left join detail.jenisProduk jenisProduk "
|
||||
+ " where dokter.id=:id and jenisProduk.id not in (:listIdJenisProduk) and detail.id not in (:listIdDetailJenisProduk) "
|
||||
+ " and to_char(pelayananPasien.tglPelayanan,'yyyy-MM-dd')= "
|
||||
+ " :date group by produk.namaProduk,produk.id,to_char(pelayananPasien.tglPelayanan,'yyyy-MM-dd')"
|
||||
+ " and pelayananPasien.tglPelayanan between :start and :end"
|
||||
+ " group by produk.namaProduk,produk.id,to_char(pelayananPasien.tglPelayanan,'yyyy-MM-dd')"
|
||||
+ " order by to_char(pelayananPasien.tglPelayanan,'yyyy-MM-dd')")
|
||||
public List<Map<String, Object>> findTindakanByIdUserAndPeriodWithException(@Param("id") Integer id,
|
||||
@Param("date") String date, @Param("listIdJenisProduk") List<Integer> listIdJenisProduk,
|
||||
@Param("start") Date start, @Param("end") Date end,
|
||||
@Param("listIdJenisProduk") List<Integer> listIdJenisProduk,
|
||||
@Param("listIdDetailJenisProduk") List<Integer> listIdDetailJenisProduk);
|
||||
|
||||
@Query(" select new Map(rincianKegiatan.rincianKegiatan as rincianKegiatan, rincianKegiatan.id as idRincianKegiatan, "
|
||||
@ -167,11 +168,11 @@ public interface IndekKinerjaDao extends PagingAndSortingRepository<IndekKinerja
|
||||
+ " left join pelayananPasienPetugas.kdpegawai dokter"
|
||||
+ " left join pelayananPasienPetugas.pelayananPasien pelayananPasien"
|
||||
+ " left join pelayananPasien.produk produk " + " left join produk.detailJenisProduk detail"
|
||||
+ " left join detail.jenisProduk jenisProduk "
|
||||
+ "where dokter.id=:id and to_char(pelayananPasien.tglPelayanan,'yyyy-MM-dd') "
|
||||
+ "between :startDate and :endDate and jenisProduk.id not in (:listIdJenisProduk) group by produk.namaProduk,jenisProduk.id")
|
||||
+ " left join detail.jenisProduk jenisProduk"
|
||||
+ " where dokter.id=:id and pelayananPasien.tglPelayanan between :start and :end"
|
||||
+ " and jenisProduk.id not in (:listIdJenisProduk) group by produk.namaProduk,jenisProduk.id")
|
||||
public List<Map<String, Object>> findCountTindakanByIdUserAndPeriod(@Param("id") Integer id,
|
||||
@Param("startDate") String startDate, @Param("endDate") String endDate,
|
||||
@Param("start") Date start, @Param("end") Date end,
|
||||
@Param("listIdJenisProduk") List<Integer> listIdJenisProduk);
|
||||
|
||||
@Query(" select new Map( produk.namaProduk as namaProduk, count( distinct pelayananPasien.noRec) as count,jenisProduk.id as idJenisProduk)"
|
||||
@ -269,7 +270,7 @@ public interface IndekKinerjaDao extends PagingAndSortingRepository<IndekKinerja
|
||||
+ " left join pelayananPasienPetugas.kdpegawai dokter"
|
||||
+ " left join pelayananPasienPetugas.pelayananPasien pelayananPasien"
|
||||
+ " left join pelayananPasien.produk produk"
|
||||
+ " where dokter.id=:id and pelayananPasien.tglPelayanan between and :start and :end"
|
||||
+ " where dokter.id=:id and pelayananPasien.tglPelayanan between :start and :end"
|
||||
+ " and produk.id = :idProduk")
|
||||
public Long findTotalProdukPerPeriode(@Param("id") Integer id, @Param("idProduk") Integer idProduk,
|
||||
@Param("start") Date start, @Param("end") Date end);
|
||||
|
||||
@ -24,14 +24,14 @@ public interface TargetSkorDokterDetailDao extends PagingAndSortingRepository<Ta
|
||||
public List<Map<String, Object>> findByHeadId(@Param("noRec") String noRec) throws JpaSystemException;
|
||||
|
||||
@Query("select tsd.skor " + "from TargetSkorDokterDetail tsd " + "inner join tsd.targetSkor ts "
|
||||
+ "where tsd.pegawaiId = :pegawaiId " + "and ts.tmt <= :endMonth " + "ts.tmt between :start and :end "
|
||||
+ "where tsd.pegawaiId = :pegawaiId " + "and ts.tmt <= :endMonth " + " and ts.tmt between :start and :end "
|
||||
+ "order by ts.tmt desc")
|
||||
public List<Double> findTargetByPegawai(@Param("pegawaiId") Integer idPegawai, @Param("endMonth") Date endMonth,
|
||||
@Param("start") Date start, @Param("end") Date end) throws JpaSystemException;
|
||||
|
||||
@Query("select new Map(tsd.pegawaiId as pegawaiId,tsd.skor as skor) " + "from TargetSkorDokterDetail tsd "
|
||||
+ "inner join tsd.targetSkor ts " + "where tsd.pegawaiId in (:listIdPegawai) " + "and ts.tmt <= :endMonth "
|
||||
+ "ts.tmt between :start and :end " + "order by ts.tmt desc")
|
||||
+ "and ts.tmt between :start and :end " + "order by ts.tmt desc")
|
||||
public List<Map<String, Object>> findTargetByPegawai(@Param("listIdPegawai") List<Integer> listIdPegawai,
|
||||
@Param("endMonth") Date endMonth, @Param("start") Date start, @Param("end") Date end)
|
||||
throws JpaSystemException;
|
||||
|
||||
@ -371,6 +371,8 @@ public class IndekKinerjaServiceImpl extends BaseVoServiceImpl implements IndekK
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> findTindakanByIdUserAndPeriod(String month) {
|
||||
Date start = DateUtil.startMonth(month);
|
||||
Date end = DateUtil.endMonth(month);
|
||||
Pegawai pegawai = new Pegawai();
|
||||
pegawai = this.getPegawaiByUserLogin();
|
||||
List<Map<String, Object>> result = new ArrayList<Map<String, Object>>();
|
||||
@ -388,11 +390,11 @@ public class IndekKinerjaServiceImpl extends BaseVoServiceImpl implements IndekK
|
||||
int idPegawai = pegawai.getId();
|
||||
Long totalPerTanggal;
|
||||
if (CommonUtil.isNullOrEmpty(listDetailException)) {
|
||||
result = indekKinerjaDao.findTindakanByIdUserAndPeriod(idPegawai, date, splitIdProdukAdministrasi());
|
||||
result = indekKinerjaDao.findTindakanByIdUserAndPeriod(idPegawai, start, end, splitIdProdukAdministrasi());
|
||||
totalPerTanggal = indekKinerjaDao.findTotalTindakanPerTanggal(idPegawai, date,
|
||||
splitIdProdukAdministrasi());
|
||||
} else {
|
||||
result = indekKinerjaDao.findTindakanByIdUserAndPeriodWithException(idPegawai, date,
|
||||
result = indekKinerjaDao.findTindakanByIdUserAndPeriodWithException(idPegawai, start, end,
|
||||
splitIdProdukAdministrasi(), listDetailException);
|
||||
totalPerTanggal = indekKinerjaDao.findTotalTindakanPerTanggalWithException(idPegawai, date,
|
||||
splitIdProdukAdministrasi(), listDetailException);
|
||||
|
||||
@ -337,7 +337,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
|
||||
|
||||
@Autowired
|
||||
private CatatanPerkembanganPasienTerintegrasiService cpptService;
|
||||
|
||||
|
||||
@Autowired
|
||||
private ResepDokterService resepDokterService;
|
||||
|
||||
@ -5745,10 +5745,11 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
|
||||
@RequestParam(value = "format", required = false) String format,
|
||||
@RequestParam(value = "periode", required = true) String periode,
|
||||
@RequestParam(value = "idPegawai", required = false) Integer idPegawai) {
|
||||
|
||||
Date start = DateUtil.startMonth(periode);
|
||||
Date end = DateUtil.endMonth(periode);
|
||||
Pegawai pegawaiLoggedIn = indekKinerjaService.getPegawaiByUserLogin();
|
||||
Map<String, Object> pegawai = pegawaiDao.findPegawaiById(pegawaiLoggedIn.getId());
|
||||
List<Map<String, Object>> result = indekKinerjaDao.findTindakanByIdPegawaiAndPeriod(periode,
|
||||
List<Map<String, Object>> result = indekKinerjaDao.findTindakanByIdPegawaiAndPeriod(start, end,
|
||||
pegawaiLoggedIn.getId(), indekKinerjaService.splitIdProdukAdministrasi());
|
||||
if (CommonUtil.isNullOrEmpty(result)) {
|
||||
// Map<String, Object> data = new HashMap<String, Object>();
|
||||
@ -5770,7 +5771,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
|
||||
m.addObject("jabatanAtasan", atasan.get("jabatanInternal"));
|
||||
m.addObject("atasan", atasan.get("nama"));
|
||||
m.addObject("nipAtasan", atasan.get("nipPns"));
|
||||
m.addObject("total", indekKinerjaDao.findTotalTindakanPerMonth(pegawaiLoggedIn.getId(), periode,
|
||||
m.addObject("total", indekKinerjaDao.findTotalTindakanPerMonth(pegawaiLoggedIn.getId(), start, end,
|
||||
indekKinerjaService.splitIdProdukAdministrasi()));
|
||||
|
||||
m.addObject("format", "pdf");
|
||||
@ -6628,7 +6629,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
|
||||
|
||||
return m;
|
||||
}
|
||||
|
||||
|
||||
@RequestMapping("/logbookPelayananDokterDetailPasien")
|
||||
public ModelAndView generateLogbookPelayananDokterDetailPasien(ModelAndView m,
|
||||
@RequestParam(value = "format", required = false) String format,
|
||||
@ -7178,7 +7179,7 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
|
||||
|
||||
return m;
|
||||
}
|
||||
|
||||
|
||||
@RequestMapping("/lapLogbookPelayananStaffMedis")
|
||||
public ModelAndView generatelapLogbookPelayananStaffMedis(ModelAndView m,
|
||||
@RequestParam(value = "format", required = false) String format,
|
||||
@ -7914,15 +7915,14 @@ public class ReportingController extends LocaleController<RegistrasiPelayananVO>
|
||||
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@RequestMapping("/resep")
|
||||
public ModelAndView generateResep(ModelAndView m,
|
||||
@RequestParam(value = "format", required = false) String format,
|
||||
public ModelAndView generateResep(ModelAndView m, @RequestParam(value = "format", required = false) String format,
|
||||
@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"));
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user