From 243aafdcf421bb0d20786398a031bfe58b167517 Mon Sep 17 00:00:00 2001 From: zengwh <81383286@qq.com> Date: Thu, 3 Sep 2020 08:56:26 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=9F=A5=E8=AF=A2pdf?= =?UTF-8?q?=E5=9B=9E=E5=8E=9F=E6=9D=A5=E7=9A=84=E8=B5=8B=E5=80=BCiframe?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/emr/controller/FontController.java | 2 +- .../emr/controller/inHospitalController.java | 20 ++++++---------- .../emr/service/Archive_DetailService.java | 6 +++-- .../ipml/Archive_DetailServiceImpl.java | 23 ++++++++++++++----- .../static/js/hospitalLoadPdf/loadPdf.js | 8 ++++--- .../static/js/showRecord/showRecordIframe.js | 7 ++++-- 6 files changed, 39 insertions(+), 27 deletions(-) diff --git a/src/main/java/com/emr/controller/FontController.java b/src/main/java/com/emr/controller/FontController.java index 130b3e4..3d1551b 100644 --- a/src/main/java/com/emr/controller/FontController.java +++ b/src/main/java/com/emr/controller/FontController.java @@ -350,7 +350,7 @@ public class FontController { try { Archive_Detail detail = new Archive_Detail(); detail.setTitle(detailIds); - archiveDetailService.selectByIdStr(response,session,detail); + archiveDetailService.selectByIdStrFont(response,session,detail); return Msg.success(); } catch (Exception e) { ExceptionPrintUtil.printException(e); diff --git a/src/main/java/com/emr/controller/inHospitalController.java b/src/main/java/com/emr/controller/inHospitalController.java index 522e262..3407c39 100644 --- a/src/main/java/com/emr/controller/inHospitalController.java +++ b/src/main/java/com/emr/controller/inHospitalController.java @@ -101,7 +101,6 @@ public class inHospitalController { } try { List list = archiveMasterService.selectByCol(archiveMasterVo); - //文件名 String fileName = "在院浏览" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls"; //ExportExcelUtil @@ -268,21 +267,16 @@ public class inHospitalController { * @throws Exception */ @ResponseBody - @RequestMapping(value = "/getPdfToPdf/{masterId}/{imgStr}",method = RequestMethod.POST) - public Msg getPdfToPdf(HttpServletResponse response, HttpSession session, @PathVariable("imgStr") String imgStr, @PathVariable("masterId") String masterId){ - if(StringUtils.isNotBlank(masterId)) { - archiveDetailService.selectPdfPathByIds(response, session, imgStr, masterId); - return Msg.success(); - }else{ - return Msg.fail("masterId不能为空,请联系系统管理员"); - } + @RequestMapping(value = "/getPdfToPdf/{masterId}/{imgStr}") + public void getPdfToPdf(HttpServletResponse response, HttpSession session, @PathVariable("imgStr") String imgStr, @PathVariable("masterId") String masterId){ + archiveDetailService.selectPdfPathByIds(response, session, imgStr, masterId,pdfWater); } /** * 查看pdf * @param response */ - @ResponseBody + /*@ResponseBody @RequestMapping(value = "showPdf") public void showPdf(HttpServletResponse response,HttpSession session){ try { @@ -290,7 +284,7 @@ public class inHospitalController { } catch (Exception e) { ExceptionPrintUtil.printException(e); } - } + }*/ /** * 根据病案号或类别或图片id获取图片列表,并生成PDF并返回pdf文件名 @@ -355,8 +349,8 @@ public class inHospitalController { try { Archive_Detail detail = new Archive_Detail(); detail.setTitle(idStr); - archiveDetailService.selectByIdStr(response,session,detail); - archiveDetailService.showPdf(response,session,pdfWater); + archiveDetailService.selectByIdStr(response,session,detail,pdfWater); + //archiveDetailService.showPdf(response,session,pdfWater); } catch (Exception e) { ExceptionPrintUtil.printException(e); //e.printStackTrace(); diff --git a/src/main/java/com/emr/service/Archive_DetailService.java b/src/main/java/com/emr/service/Archive_DetailService.java index 71aa901..edc9867 100644 --- a/src/main/java/com/emr/service/Archive_DetailService.java +++ b/src/main/java/com/emr/service/Archive_DetailService.java @@ -76,9 +76,11 @@ public interface Archive_DetailService { List mulFile2OneById(HttpServletResponse response,List arList); - void selectPdfPathByIds(HttpServletResponse response, HttpSession session, String detailIds, String masterId); + void selectPdfPathByIds(HttpServletResponse response, HttpSession session, String detailIds, String masterId,String pdfWater); - void selectByIdStr(HttpServletResponse response, HttpSession session,Archive_Detail detail); + void selectByIdStr(HttpServletResponse response, HttpSession session,Archive_Detail detail,String pdfWater); + + void selectByIdStrFont(HttpServletResponse response, HttpSession session,Archive_Detail detail); void showPdf(HttpServletResponse response, HttpSession session, String pdfWater); } diff --git a/src/main/java/com/emr/service/ipml/Archive_DetailServiceImpl.java b/src/main/java/com/emr/service/ipml/Archive_DetailServiceImpl.java index 8d193c6..e8b8f81 100644 --- a/src/main/java/com/emr/service/ipml/Archive_DetailServiceImpl.java +++ b/src/main/java/com/emr/service/ipml/Archive_DetailServiceImpl.java @@ -156,23 +156,32 @@ public class Archive_DetailServiceImpl implements Archive_DetailService { } @Override - public void selectPdfPathByIds(HttpServletResponse response,HttpSession session,String detailIds, String masterId) { + public void selectPdfPathByIds(HttpServletResponse response,HttpSession session,String detailIds, String masterId,String pdfWater) { //获取废除的pdf文件名列表archive_detail List arList = archiveDetailMapper.selectPdfPathByIds(masterId,detailIds); - pdfToSession(response,session,arList); + pdfToSession(response,session,arList,pdfWater); } - private void pdfToSession(HttpServletResponse response,HttpSession session, List arList){ + private void pdfToSession(HttpServletResponse response,HttpSession session, List arList,String pdfWater){ List pdfList = mulFile2OneById(response, arList); + Jpg2PdfUtil.mulFile2One(response, pdfList, pdfWater); //存至session - session.setAttribute("showRecord",pdfList); + //session.setAttribute("showRecord",pdfList); + } + + @Override + public void selectByIdStr(HttpServletResponse response, HttpSession session,Archive_Detail detail,String pdfWater) { + List arList = archiveDetailMapper.selectByIdStr(detail); + pdfToSession(response,session,arList,pdfWater); } @Override - public void selectByIdStr(HttpServletResponse response, HttpSession session,Archive_Detail detail) { + public void selectByIdStrFont(HttpServletResponse response, HttpSession session,Archive_Detail detail) { List arList = archiveDetailMapper.selectByIdStr(detail); - pdfToSession(response,session,arList); + List pdfList = mulFile2OneById(response, arList); + //存至session + session.setAttribute("showRecord",pdfList); } @Override @@ -181,6 +190,8 @@ public class Archive_DetailServiceImpl implements Archive_DetailService { if(!CollectionUtils.isEmpty(pdfList)) { Jpg2PdfUtil.mulFile2One(response, pdfList, pdfWater); } + //删除缓存 + session.removeAttribute("showRecord"); } @Override diff --git a/src/main/webapp/static/js/hospitalLoadPdf/loadPdf.js b/src/main/webapp/static/js/hospitalLoadPdf/loadPdf.js index 7ddb622..1225c78 100644 --- a/src/main/webapp/static/js/hospitalLoadPdf/loadPdf.js +++ b/src/main/webapp/static/js/hospitalLoadPdf/loadPdf.js @@ -88,8 +88,10 @@ $("#pdfBtn").click(function () { if(imgStr != ''){ imgStr = imgStr.substring(0,imgStr.length-1); } - //var pdfUrl = path+"/static/pdfjs/web/viewer.html?file="+path+"/inHosp/getPdfToPdf/"+masterId+"/"+imgStr; - var url = path+"/inHosp/getPdfToPdf/"+masterId+"/"+imgStr; + var pdfUrl = path+"/static/pdfjs/web/viewer.html?file="+path+"/inHosp/getPdfToPdf/"+masterId+"/"+imgStr; + var openWin = window.open(pdfUrl,"_blank"); + setTimeout(function(){ openWin.document.title = $("#nameLab").text(); }, 100); + /*var url = path+"/inHosp/getPdfToPdf/"+masterId+"/"+imgStr; $.ajax({ type:'post', url:url, @@ -102,7 +104,7 @@ $("#pdfBtn").click(function () { toastr.error(data.msg); } } - }) + })*/ } else { toastr.warning("病案不存在!"); } diff --git a/src/main/webapp/static/js/showRecord/showRecordIframe.js b/src/main/webapp/static/js/showRecord/showRecordIframe.js index d6f241a..685cf92 100644 --- a/src/main/webapp/static/js/showRecord/showRecordIframe.js +++ b/src/main/webapp/static/js/showRecord/showRecordIframe.js @@ -93,7 +93,10 @@ function onloadPdf(){ var patientId = parent.$("#patientId").val(); var detailIds = $("#detailIds").val(); var url = path+"/font/getPdfToPdf/"+patientId+"/"+detailIds; - $.ajax({ + var pdfUrl = path+"/static/pdfjs/web/viewer.html?file="+url; + $("#iframe1").attr("src",pdfUrl); + $("#iframe1").css("height",$("body")[0].offsetHeight) + /*$.ajax({ type:'post', url:url, success:function(data){ @@ -105,7 +108,7 @@ function onloadPdf(){ toastr.error(data.msg); } } - }) + })*/ /*$("#iframe1").attr("src",path+"/static/pdfjs/web/viewer.html?file="+path+"/font/getPdfToPdf/"+patientId+"/"+detailIds);*/ }