| | |
| | | @ApiOperation(value = "小程序-体检报告列表") |
| | | public AjaxResult getReportList(String cusPhone) { |
| | | // Wxuser wxuser = UserHoder.getWxuser(); |
| | | if (cusPhone==null){ |
| | | if (cusPhone == null) { |
| | | return AjaxResult.error("请绑定手机号!"); |
| | | } |
| | | List<Object> result = new ArrayList<>(); |
| | |
| | | Map<String, Object> parent = new HashMap<>(); |
| | | Map<String, Object> parent1 = new HashMap<>(); |
| | | TjProject tjProject = projectService.getById(remark.getProId()); |
| | | if (null != tjProject) { |
| | | if (null != tjProject && tjProject.getNeedReport().equals("Y")) { |
| | | parent.put("parent", tjProject.getProName()); |
| | | parent1.put("parent", tjProject.getProName()); |
| | | } else { |
| | | parent.put("parent", null); |
| | | parent1.put("parent", null); |
| | | } |
| | | LambdaQueryWrapper<TjProject> wq2 = new LambdaQueryWrapper<>(); |
| | | wq2.eq(TjProject::getProParentId, remark.getProId()); |
| | | List<Long> sonsTjProjectList = null; |
| | | if (null != projectService.list(wq2) && projectService.list(wq2).size() > 0) { |
| | | sonsTjProjectList = projectService.list(wq2).stream().map(TjProject::getProId).collect(Collectors.toList()); |
| | | } |
| | | if (sonsTjProjectList == null) { |
| | | log.info("我报空指针了::::::::::::" + remark.toString()); |
| | | continue; |
| | | } |
| | | LambdaQueryWrapper<TjOrderDetail> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjOrderDetail::getOrderId, one.getOrderId()); |
| | | wq.in(TjOrderDetail::getProId, sonsTjProjectList); |
| | | List<TjOrderDetail> tjOrderDetails = detailService.list(wq); |
| | | if (null != tjOrderDetails && tjOrderDetails.size() > 0) { |
| | | List<TjOrderDetail> abnormals = new ArrayList<>(); |
| | | for (TjOrderDetail tjOrderDetail : tjOrderDetails) { |
| | | if (tjOrderDetail.getExceptionDesc() == 1) { |
| | | abnormals.add(tjOrderDetail); |
| | | parent1.put("abnormalList", abnormals); |
| | | abnormalList.add(parent1); |
| | | } |
| | | LambdaQueryWrapper<TjProject> wqqqq = new LambdaQueryWrapper<>(); |
| | | wqqqq.eq(TjProject::getProId, tjOrderDetail.getProId()); |
| | | tjOrderDetail.setProject(projectService.getOne(wqqqq)); |
| | | LambdaQueryWrapper<TjStandard> wq6 = new LambdaQueryWrapper<>(); |
| | | wq6.eq(TjStandard::getProId, tjOrderDetail.getProId()); |
| | | List<TjStandard> list2 = standardService.list(wq6); |
| | | if (list2.size() == 0) { |
| | | tjOrderDetail.setStandard(null); |
| | | } else if (list2.size() == 1) { |
| | | tjOrderDetail.setStandard(list2.get(0)); |
| | | } else { |
| | | for (TjStandard tjStandard : list2) { |
| | | LambdaQueryWrapper<TjStandard> wq8 = new LambdaQueryWrapper<>(); |
| | | if (tjStandard.getTjSex() != null) { |
| | | wq8.eq(TjStandard::getTjSex, customer.getCusSex()); |
| | | LambdaQueryWrapper<TjProject> wq2 = new LambdaQueryWrapper<>(); |
| | | wq2.eq(TjProject::getProParentId, remark.getProId()); |
| | | List<Long> sonsTjProjectList = null; |
| | | if (null != projectService.list(wq2) && projectService.list(wq2).size() > 0) { |
| | | sonsTjProjectList = projectService.list(wq2).stream().map(TjProject::getProId).collect(Collectors.toList()); |
| | | } |
| | | if (sonsTjProjectList == null) { |
| | | log.info("我报空指针了::::::::::::" + remark.toString()); |
| | | continue; |
| | | } |
| | | LambdaQueryWrapper<TjOrderDetail> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjOrderDetail::getOrderId, one.getOrderId()); |
| | | wq.in(TjOrderDetail::getProId, sonsTjProjectList); |
| | | List<TjOrderDetail> tjOrderDetails = detailService.list(wq); |
| | | if (null != tjOrderDetails && tjOrderDetails.size() > 0) { |
| | | List<TjOrderDetail> abnormals = new ArrayList<>(); |
| | | for (TjOrderDetail tjOrderDetail : tjOrderDetails) { |
| | | if (tjOrderDetail.getExceptionDesc() == 1) { |
| | | abnormals.add(tjOrderDetail); |
| | | parent1.put("abnormalList", abnormals); |
| | | abnormalList.add(parent1); |
| | | } |
| | | LambdaQueryWrapper<TjProject> wqqqq = new LambdaQueryWrapper<>(); |
| | | wqqqq.eq(TjProject::getProId, tjOrderDetail.getProId()); |
| | | tjOrderDetail.setProject(projectService.getOne(wqqqq)); |
| | | LambdaQueryWrapper<TjStandard> wq6 = new LambdaQueryWrapper<>(); |
| | | wq6.eq(TjStandard::getProId, tjOrderDetail.getProId()); |
| | | List<TjStandard> list2 = standardService.list(wq6); |
| | | if (list2.size() == 0) { |
| | | tjOrderDetail.setStandard(null); |
| | | } else if (list2.size() == 1) { |
| | | tjOrderDetail.setStandard(list2.get(0)); |
| | | } else { |
| | | for (TjStandard tjStandard : list2) { |
| | | LambdaQueryWrapper<TjStandard> wq8 = new LambdaQueryWrapper<>(); |
| | | if (tjStandard.getTjSex() != null) { |
| | | wq8.eq(TjStandard::getTjSex, customer.getCusSex()); |
| | | } |
| | | if (tjStandard.getTjType() != null) { |
| | | wq8.eq(TjStandard::getTjType, StringUtils.getAgeType(DateUtil.ageOfNow(customer.getCusBrithday()))); |
| | | } |
| | | tjOrderDetail.setStandard(standardService.getOne(wq8)); |
| | | } |
| | | if (tjStandard.getTjType() != null) { |
| | | wq8.eq(TjStandard::getTjType, StringUtils.getAgeType(DateUtil.ageOfNow(customer.getCusBrithday()))); |
| | | } |
| | | tjOrderDetail.setStandard(standardService.getOne(wq8)); |
| | | } |
| | | } |
| | | LambdaQueryWrapper<TjAdvice> wq3 = new LambdaQueryWrapper<>(); |
| | | wq3.eq(TjAdvice::getProId, remark.getProId()); |
| | | parent.put("sons", tjOrderDetails); |
| | | parent.put("parentAdvice", adviceService.list(wq3)); |
| | | parent.put("advice", remark.getSummary()); |
| | | list.add(parent); |
| | | } else { |
| | | return AjaxResult.success("该客户在没有体检项目数据"); |
| | | } |
| | | LambdaQueryWrapper<TjAdvice> wq3 = new LambdaQueryWrapper<>(); |
| | | wq3.eq(TjAdvice::getProId, remark.getProId()); |
| | | parent.put("sons", tjOrderDetails); |
| | | parent.put("parentAdvice", adviceService.list(wq3)); |
| | | parent.put("advice", remark.getSummary()); |
| | | list.add(parent); |
| | | } else { |
| | | return AjaxResult.success("该客户在没有体检项目数据"); |
| | | } |
| | | } |
| | | objectMap.put("list", list); |
| | |
| | | } |
| | | return AjaxResult.success("该客户在没有体检项目数据!"); |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | |
| | | wq.eq(TjOrderDetail::getOrderId, one.getOrderId()); |
| | | wq.in(TjOrderDetail::getProId, "1633660948860522524"); |
| | | final TjOrderDetail one1 = detailService.getOne(wq); |
| | | if (one1== null){ |
| | | if (one1 == null) { |
| | | objectMap.put("shenggao", "无"); |
| | | }else { |
| | | } else { |
| | | objectMap.put("shenggao", one1.getProResult()); |
| | | } |
| | | |
| | |
| | | wq2.eq(TjOrderDetail::getOrderId, one.getOrderId()); |
| | | wq2.in(TjOrderDetail::getProId, "1633660948860522525"); |
| | | final TjOrderDetail one2 = detailService.getOne(wq2); |
| | | if (one2==null){ |
| | | if (one2 == null) { |
| | | objectMap.put("tizhong", "无"); |
| | | }else { |
| | | } else { |
| | | objectMap.put("tizhong", one2.getProResult()); |
| | | } |
| | | |
| | |
| | | wq3.eq(TjOrderDetail::getOrderId, one.getOrderId()); |
| | | wq3.in(TjOrderDetail::getProId, "1633660948860522526"); |
| | | final TjOrderDetail one3 = detailService.getOne(wq3); |
| | | if (one3==null){ |
| | | if (one3 == null) { |
| | | objectMap.put("tizhongzhishu", "无"); |
| | | }else { |
| | | } else { |
| | | objectMap.put("tizhongzhishu", one3.getProResult()); |
| | | } |
| | | |
| | | |
| | | |
| | | LambdaQueryWrapper<TjOrderDetail> wq4 = new LambdaQueryWrapper<>(); |
| | | wq4.eq(TjOrderDetail::getOrderId, one.getOrderId()); |
| | | wq4.in(TjOrderDetail::getProId, "1633660948860522527"); |
| | | final TjOrderDetail one4 = detailService.getOne(wq4); |
| | | if (one4==null){ |
| | | if (one4 == null) { |
| | | objectMap.put("shousuoya", "无"); |
| | | }else { |
| | | } else { |
| | | objectMap.put("shousuoya", one4.getProResult()); |
| | | } |
| | | |
| | | |
| | | |
| | | LambdaQueryWrapper<TjOrderDetail> wq5 = new LambdaQueryWrapper<>(); |
| | | wq5.eq(TjOrderDetail::getOrderId, one.getOrderId()); |
| | | wq5.in(TjOrderDetail::getProId, "1633660948860522528"); |
| | | final TjOrderDetail one5 = detailService.getOne(wq5); |
| | | if (one5==null){ |
| | | objectMap.put("shuzhangya","无"); |
| | | }else { |
| | | if (one5 == null) { |
| | | objectMap.put("shuzhangya", "无"); |
| | | } else { |
| | | objectMap.put("shuzhangya", one5.getProResult()); |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | /** |
| | | * 小程序点击下载报告 |
| | | */ |
| | | @GetMapping("/downloadReport") |
| | | @ApiOperation(value = "小程序-下载报告") |
| | | public AjaxResult downloadReport(@RequestParam @ApiParam(value = "体检号") String tjNumber) { |
| | | Map<String,String> res=new HashMap<>(); |
| | | Map<String, String> res = new HashMap<>(); |
| | | LambdaQueryWrapper<TjReport> we = new LambdaQueryWrapper<>(); |
| | | we.eq(TjReport::getTjNumber, tjNumber); |
| | | we.eq(TjReport::getType, "体检报告"); |
| | | TjReport one = reportService.getOne(we); |
| | | if ("pdf".equals(one.getPrint())){ |
| | | res.put("flag","0"); |
| | | res.put("url",one.getPath()); |
| | | if ("pdf".equals(one.getPrint())) { |
| | | res.put("flag", "0"); |
| | | res.put("url", one.getPath()); |
| | | return AjaxResult.success(res); |
| | | }else if ("报表".equals(one.getPrint())){ |
| | | res.put("flag","1"); |
| | | res.put("url",one.getPath()); |
| | | } else if ("报表".equals(one.getPrint())) { |
| | | res.put("flag", "1"); |
| | | res.put("url", one.getPath()); |
| | | return AjaxResult.success(res); |
| | | }else { |
| | | } else { |
| | | return AjaxResult.error("暂无体检报告"); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | @GetMapping("/preview/{flag}/{TjNumber}") |
| | |
| | | final String substring = uuid.toString().substring(0, 5); |
| | | |
| | | // String userId = SecurityUtils.getLoginUser().getUsername(); |
| | | PDFBinaryUtil.base64StringToPDF(one.getReport(), FileUtil.mkdir(value).getPath() + "\\" +substring+ tjNumber + tjCustomer.getCusName() + "_体检报告.pdf"); |
| | | PDFBinaryUtil.base64StringToPDF(one.getReport(), FileUtil.mkdir(value).getPath() + "\\" + substring + tjNumber + tjCustomer.getCusName() + "_体检报告.pdf"); |
| | | //String filePath = one.getPath(); |
| | | String filePath = value + "\\" +substring + tjNumber + tjCustomer.getCusName() + "_体检报告.pdf"; |
| | | String filePath = value + "\\" + substring + tjNumber + tjCustomer.getCusName() + "_体检报告.pdf"; |
| | | File f = new File(filePath); |
| | | if (filePath.isEmpty()) { |
| | | System.out.println("文件不存在!"); |
| | |
| | | String contentType = u.openConnection().getContentType(); |
| | | response.setContentType(contentType); |
| | | response.setHeader("Content-Disposition", "inline;filename=" |
| | | +substring+ tjNumber + ".pdf"); |
| | | + substring + tjNumber + ".pdf"); |
| | | } else { |
| | | // 纯下载方式 |
| | | response.setContentType("application/x-msdownload"); |
| | | response.setContentType("application/pdf;charset=utf-8"); |
| | | response.setHeader("Content-Disposition", "attachment;filename=" |
| | | +substring+ tjNumber + ".pdf"); |
| | | + substring + tjNumber + ".pdf"); |
| | | } |
| | | out = response.getOutputStream(); |
| | | while ((len = br.read(bs)) > 0) { |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | /** |