update laporan resume medis
This commit is contained in:
parent
a2be20151f
commit
85e8bdd542
@ -801,4 +801,47 @@ public class ReportingController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@RequestMapping(value = {"/laporan-resume-medis"}, method = {RequestMethod.GET})
|
||||||
|
public void exportLpResumeMedis(
|
||||||
|
@RequestParam("tglAwal") String tglAwal,
|
||||||
|
@RequestParam("tglAkhir") String tglAkhir,
|
||||||
|
@RequestParam(value = "idInstalasi", required = false, defaultValue = "") Integer idInstalasi,
|
||||||
|
@RequestParam(value = "idRuangan", required = false, defaultValue = "") Integer idRuangan,
|
||||||
|
@RequestParam(value = "idPegawai", required = false, defaultValue = "") Integer idPegawai,
|
||||||
|
@RequestParam(value = "format", required = false, defaultValue = "pdf") String format,
|
||||||
|
@RequestParam(value = "mode", required = false, defaultValue = "download") String mode,
|
||||||
|
HttpServletResponse response) throws Exception {
|
||||||
|
|
||||||
|
// Generate report (common for both PDF/Excel)
|
||||||
|
JasperPrint jasperPrint = this.reportingService.exportLpResumeMedis(tglAwal, tglAkhir, idInstalasi, idRuangan, idPegawai);
|
||||||
|
|
||||||
|
if ("excel".equalsIgnoreCase(format)) {
|
||||||
|
// Handle Excel export
|
||||||
|
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
|
||||||
|
response.setHeader("Content-Disposition", "attachment; filename=Laporan_Resume_Medis.xlsx");
|
||||||
|
|
||||||
|
JRXlsxExporter exporter = new JRXlsxExporter();
|
||||||
|
exporter.setExporterInput(new SimpleExporterInput(jasperPrint));
|
||||||
|
exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(response.getOutputStream()));
|
||||||
|
SimpleXlsxReportConfiguration config = new SimpleXlsxReportConfiguration();
|
||||||
|
config.setOnePagePerSheet(false);
|
||||||
|
config.setDetectCellType(true);
|
||||||
|
config.setCollapseRowSpan(false);
|
||||||
|
config.setRemoveEmptySpaceBetweenRows(true);
|
||||||
|
config.setWhitePageBackground(false);
|
||||||
|
exporter.setConfiguration(config);
|
||||||
|
exporter.exportReport();
|
||||||
|
|
||||||
|
} else {
|
||||||
|
// Handle PDF preview
|
||||||
|
response.setContentType("application/pdf");
|
||||||
|
response.setHeader("Content-Disposition", "inline; filename=Laporan_Resume_Medis.pdf");
|
||||||
|
|
||||||
|
JRPdfExporter exporter = new JRPdfExporter();
|
||||||
|
exporter.setExporterInput(new SimpleExporterInput(jasperPrint));
|
||||||
|
exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(response.getOutputStream()));
|
||||||
|
exporter.exportReport();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1132,7 +1132,7 @@ public class ReportingDao {
|
|||||||
Map<String, Object> parameters = new HashMap<>();
|
Map<String, Object> parameters = new HashMap<>();
|
||||||
parameters.put("tglAwal", tglAwal);
|
parameters.put("tglAwal", tglAwal);
|
||||||
parameters.put("tglAkhir", tglAkhir);
|
parameters.put("tglAkhir", tglAkhir);
|
||||||
parameters.put("idUnit", idInstalasi);
|
parameters.put("idInstalasi", idInstalasi);
|
||||||
parameters.put("idRuangan", idRuangan);
|
parameters.put("idRuangan", idRuangan);
|
||||||
parameters.put("idProduk", idProduk);
|
parameters.put("idProduk", idProduk);
|
||||||
parameters.put("idPegawai", idPegawai);
|
parameters.put("idPegawai", idPegawai);
|
||||||
@ -1144,4 +1144,22 @@ public class ReportingDao {
|
|||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public JasperPrint exportLpResumeMedis(Date tglAwal, Date tglAkhir, Integer idInstalasi, Integer idRuangan, Integer idPegawai) {
|
||||||
|
try (Connection conn = this.jdbcTemplate1.getDataSource().getConnection()) {
|
||||||
|
String path = jaspersim2DirPath + "LaporanResumeMedis.jrxml";
|
||||||
|
JasperReport jasperReport = JasperCompileManager.compileReport(path);
|
||||||
|
Map<String, Object> parameters = new HashMap<>();
|
||||||
|
parameters.put("tglAwal", tglAwal);
|
||||||
|
parameters.put("tglAkhir", tglAkhir);
|
||||||
|
parameters.put("idInstalasi", idInstalasi);
|
||||||
|
parameters.put("idRuangan", idRuangan);
|
||||||
|
parameters.put("idPegawai", idPegawai);
|
||||||
|
return JasperFillManager.fillReport(jasperReport, parameters, conn);
|
||||||
|
} catch (Exception var15) {
|
||||||
|
LOG.error("Exception at exportLpResumeMedis");
|
||||||
|
LOG.error(ReportingDao.class, var15);
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -364,4 +364,17 @@ public class ReportingService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public JasperPrint exportLpResumeMedis(String tglAwal, String tglAkhir, Integer idInstalasi, Integer idRuangan, Integer idPegawai) {
|
||||||
|
try {
|
||||||
|
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
|
||||||
|
Date parse = formatter.parse(tglAwal);
|
||||||
|
Date parse2 = formatter.parse(tglAkhir);
|
||||||
|
return this.reportingDao.exportLpResumeMedis(parse, parse2, idInstalasi, idRuangan, idPegawai);
|
||||||
|
} catch (ParseException e) {
|
||||||
|
log.error(e.getMessage());
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user