| | |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import io.swagger.annotations.ApiParam; |
| | | import jodd.util.StringUtil; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | |
| | | private IDictHospService dictHospService; |
| | | @Autowired |
| | | private ITjReportPrintService printService; |
| | | @Autowired |
| | | private TjOrderYcxmService ycxmService; |
| | | |
| | | @GetMapping("/savePdf") |
| | | @ApiOperation(value = "从本地存储模板到数据库") |
| | | public AjaxResult savePdf() { |
| | | //从文件地址读入PDF文件 仅存储一次 |
| | | String base64String = PDFBinaryUtil.getPDFBinary(configService.selectConfigByKey("default_pdf5Template")); |
| | | reportTemplateService.remove(new LambdaQueryWrapper<TjReportTemplate>().eq(TjReportTemplate::getName,"体检报告模板5")); |
| | | TjReportTemplate tem = new TjReportTemplate(); |
| | | tem.setName("体检报告模板5"); |
| | | tem.setRemark("体检报告模板5"); |
| | | tem.setTemplate(base64String); |
| | | tem.setFlag("1"); |
| | | tem.setOpen("0"); |
| | | tem.setCreateTime(DateUtil.date()); |
| | | final boolean save = reportTemplateService.save(tem); |
| | | if (save) { |
| | | return AjaxResult.success("保存成功"); |
| | | if(StringUtil.isNotBlank(base64String)){ |
| | | reportTemplateService.remove(new LambdaQueryWrapper<TjReportTemplate>().eq(TjReportTemplate::getName,"体检报告模板5")); |
| | | TjReportTemplate tem = new TjReportTemplate(); |
| | | tem.setName("体检报告模板5"); |
| | | tem.setRemark("体检报告模板5"); |
| | | tem.setTemplate(base64String); |
| | | tem.setFlag("1"); |
| | | tem.setOpen("0"); |
| | | tem.setCreateTime(DateUtil.date()); |
| | | final boolean save = reportTemplateService.save(tem); |
| | | if (save) { |
| | | return AjaxResult.success("保存成功"); |
| | | } |
| | | } |
| | | |
| | | return AjaxResult.success("保存失败"); |
| | | // String base64String2 = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\心电图1.pdf"); |
| | | // TjReport tem2 = new TjReport(); |
| | |
| | | wqa.eq(TjReport::getType, "体检报告"); |
| | | Integer count = tjReportService.getSelectCount(wqa); |
| | | if (tjOrder.getReportTime() !=null || count != 0 ) { |
| | | tjOrder.setReportTime(null); |
| | | tjOrder.setCheckTime(null); |
| | | tjOrder.setCheckStatus(0); |
| | | tjOrder.setPrintLastTime(null); |
| | | tjOrderService.updateById(tjOrder); |
| | | // tjOrder.setReportTime(null); |
| | | // tjOrder.setCheckTime(null); |
| | | // tjOrder.setCheckStatus(0); |
| | | // tjOrder.setPrintLastTime(null); |
| | | // tjOrderService.updateById(tjOrder); |
| | | return AjaxResult.error("该客户报告已生成!不能重复生成!可直接预览或打印!"); |
| | | } |
| | | |
| | |
| | | tjOrderService.update(updateWrapper); |
| | | return AjaxResult.success("已生成报告!可直接点击预览!"); |
| | | } |
| | | String hisRegistrationId = tjOrder.getCardId(); |
| | | Date createTime = tjOrder.getCreateTime(); |
| | | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | String ksrq = dateFormat.format(createTime); |
| | | String jsrq = dateFormat.format(new Date()); |
| | | HashMap<String, Object> params = new HashMap<>(); |
| | | params.put("his_registration_id", hisRegistrationId); |
| | | params.put("ksbm", ""); |
| | | params.put("pationid", ""); |
| | | params.put("ksrq", ksrq); |
| | | params.put("jsrq", jsrq); |
| | | params.put("pagecount", 100); |
| | | params.put("page", 1); |
| | | // String hisRegistrationId = tjOrder.getCardId(); |
| | | // Date createTime = tjOrder.getCreateTime(); |
| | | // SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | // String ksrq = dateFormat.format(createTime); |
| | | // String jsrq = dateFormat.format(new Date()); |
| | | // HashMap<String, Object> params = new HashMap<>(); |
| | | // params.put("his_registration_id", hisRegistrationId); |
| | | // params.put("ksbm", ""); |
| | | // params.put("pationid", ""); |
| | | // params.put("ksrq", ksrq); |
| | | // params.put("jsrq", jsrq); |
| | | // params.put("pagecount", 100); |
| | | // params.put("page", 1); |
| | | LambdaQueryWrapper<TjCustomer> wq1 = new LambdaQueryWrapper<>(); |
| | | wq1.eq(TjCustomer::getCusId, tjOrder.getUserId()); |
| | | TjCustomer tjCustomer = tjCustomerService.getOne(wq1); |
| | |
| | | tjOrder.setPrintLastTime(null); |
| | | tjOrderService.updateById(tjOrder); |
| | | |
| | | logger.error("生成报告异常"); |
| | | logger.error(String.valueOf(e)); |
| | | return AjaxResult.error("生成报告失败"); |
| | | } |
| | | } else { |
| | |
| | | we.eq(TjReport::getType, "体检报告"); |
| | | TjReport one = tjReportService.getOne(we); |
| | | if (one == null) { |
| | | return AjaxResult.error("暂无体检报告"); |
| | | return AjaxResult.error("暂无体检报告,请撤回到总检未审核页面,需总检医生重新审核并生成报告!"); |
| | | } |
| | | if ("pdf".equals(one.getPrint())) { |
| | | res.put("flag", "0"); |
| | |
| | | res.put("url", one.getPath()); |
| | | return AjaxResult.success(res); |
| | | } else { |
| | | return AjaxResult.error("暂无体检报告"); |
| | | return AjaxResult.error("暂无体检报告,请撤回到总检未审核页面,需总检医生重新审核并生成报告!"); |
| | | } |
| | | |
| | | } |
| | |
| | | |
| | | @GetMapping("/revocationReport/{TjNumber}") |
| | | @ApiOperation(value = "撤销生成体检报告") |
| | | @Transactional |
| | | public AjaxResult revocationReport(@PathVariable("TjNumber") String tjNumber) { |
| | | //逻辑删除数据库里的报告 |
| | | QueryWrapper<TjReport> wq1 = new QueryWrapper<>(); |
| | | wq1.select("re_id"); |
| | | wq1.eq("tj_number", tjNumber); |
| | | wq1.eq("type", "体检报告"); |
| | | TjReport tjReport = tjReportService.getOne(wq1); |
| | | if (null != tjReport) { |
| | | // 不在使用逻辑删除 逻辑删除导致打印报告生成 查询sql缓慢 |
| | | int i = tjReportService.deleteTjReportByReId(tjReport.getReId()); |
| | | if (i == 0) { |
| | | return AjaxResult.error("撤回失败!"); |
| | | } |
| | | } |
| | | |
| | | TjOrder one = tjOrderService.getOrderByTjNum(tjNumber); |
| | | if(null !=one){ |
| | |
| | | one.setPrintLastTime(null); |
| | | one.setDownloadLastTime(null); |
| | | if (tjOrderService.updateById(one)) { |
| | | |
| | | //逻辑删除数据库里的报告 |
| | | QueryWrapper<TjReport> wq1 = new QueryWrapper<>(); |
| | | wq1.select("re_id"); |
| | | wq1.eq("tj_number", tjNumber); |
| | | wq1.eq("type", "体检报告"); |
| | | TjReport tjReport = tjReportService.getOne(wq1); |
| | | if (null != tjReport) { |
| | | // 不在使用逻辑删除 逻辑删除导致打印报告生成 查询sql缓慢 |
| | | int i = tjReportService.deleteTjReportByReId(tjReport.getReId()); |
| | | if (i == 0) { |
| | | return AjaxResult.error("暂无体检报告,请撤回到总检未审核页面,需总检医生重新审核并生成报告!"); |
| | | } |
| | | } |
| | | |
| | | return AjaxResult.success("撤回成功!"); |
| | | } |
| | | } |
| | | return AjaxResult.error("撤回失败!"); |
| | | return AjaxResult.error("该人员体检记录不存在,请核实人员信息!"); |
| | | |
| | | } |
| | | |
| | |
| | | LambdaQueryWrapper<TjOrder> wq2 = new LambdaQueryWrapper<>(); |
| | | wq2.eq(TjOrder::getFirmId, firmId); |
| | | wq2.eq(TjOrder::getFirmDeptId, firmDeptId); |
| | | wq2.eq(TjOrder::getTjType, "1"); |
| | | wq2.in(TjOrder::getStatus, 401, 402); |
| | | wq2.ne(TjOrder::getTjType, "2"); |
| | | // wq2.in(TjOrder::getStatus, 401, 402); |
| | | final List<TjOrder> list = tjOrderService.list(wq2); |
| | | |
| | | for (TjOrder tjOrder : list) { |
| | |
| | | |
| | | @GetMapping("/tuanDuiYiChangBySex") |
| | | @ApiOperation(value = "生成团队体检报告——男女异常结果统计") |
| | | public Map<String, List<Map<String, Object>>> tuanDuiYiChangBySex(@ApiParam(value = "单位") @RequestParam String firmId, |
| | | @ApiParam(value = "部门") @RequestParam String firmDeptId) { |
| | | public Map<String, List<Map<String, Object>>> tuanDuiYiChangBySex(@ApiParam(value = "单位") @RequestParam String dwname) { |
| | | |
| | | Map<String, List<Map<String, Object>>> all = new HashMap<>(); |
| | | |
| | | LambdaQueryWrapper<TjOrder> wq2 = new LambdaQueryWrapper<>(); |
| | | wq2.eq(TjOrder::getFirmId, firmId); |
| | | wq2.eq(TjOrder::getFirmDeptId, firmDeptId); |
| | | wq2.eq(TjOrder::getTjType, "1"); |
| | | wq2.in(TjOrder::getStatus, 401, 402); |
| | | wq2.eq(TjOrder::getFirmName,dwname); |
| | | wq2.ne(TjOrder::getTjType, "2"); |
| | | // wq2.in(TjOrder::getStatus, 401, 402); |
| | | final List<TjOrder> list = tjOrderService.list(wq2); |
| | | |
| | | List<String> tjNumberList = list.stream().map(TjOrder::getTjNumber).collect(Collectors.toList()); |