ltkj-admin/src/main/java/com/ltkj/web/config/JacksonConfig.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ltkj-admin/src/main/java/com/ltkj/web/config/pdfutils/PdfUtils.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ltkj-admin/src/main/java/com/ltkj/web/controller/app/CustomerController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ltkj-admin/src/main/java/com/ltkj/web/controller/app/ReportController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjExamJcbgdMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
ltkj-admin/src/main/java/com/ltkj/web/config/JacksonConfig.java
New file @@ -0,0 +1,25 @@ package com.ltkj.web.config; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import java.math.BigInteger; @Configuration public class JacksonConfig { /** * Jackson全局转化long类型为String,解决jackson序列化时传入前端Long类型缺失精度问题 * @return */ @Bean public Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer() { return builder -> builder .serializerByType(BigInteger.class, ToStringSerializer.instance) .serializerByType(Long.class, ToStringSerializer.instance); } } ltkj-admin/src/main/java/com/ltkj/web/config/pdfutils/PdfUtils.java
@@ -152,7 +152,7 @@ */ public static PdfPTable setTable(Font headFont, Font textFont, String[] title, List<TjPdfVO> list) { //四列 PdfPTable table = createTable(new float[]{120, 120, 120, 120}); PdfPTable table = createTable(new float[]{120, 120, 120}); //画标题 for (String head : title) { table.addCell(createCell(head, headFont)); @@ -162,7 +162,7 @@ table.addCell(createCell(tjPdfVO.getProName(), textFont)); table.addCell(createCell(tjPdfVO.getProResult(), textFont)); table.addCell(createCell(tjPdfVO.getCompany(), textFont)); table.addCell(createCell(tjPdfVO.getStandardValue(), textFont)); // table.addCell(createCell(tjPdfVO.getStandardValue(), textFont)); } return table; } ltkj-admin/src/main/java/com/ltkj/web/controller/app/CustomerController.java
@@ -145,7 +145,7 @@ AjaxResult xinXi = suijieHisXinXi(tjCustomer); if(!xinXi.get("code").toString().equals("200")){ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return AjaxResult.error("添加就诊人信息失败!" + xinXi.get("msg").toString()); return AjaxResult.error("注册失败,请到前台登记!" + xinXi.get("msg").toString()); } } } @@ -169,7 +169,7 @@ AjaxResult xinXi = suijieHisXinXi(tjCustomer); if(!xinXi.get("code").toString().equals("200")){ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return AjaxResult.error("添加就诊人信息失败!" + xinXi.get("msg").toString()); return AjaxResult.error("注册失败,请到前台登记!" + xinXi.get("msg").toString()); } } return AjaxResult.success(tjCustomer); ltkj-admin/src/main/java/com/ltkj/web/controller/app/ReportController.java
@@ -15,6 +15,8 @@ import com.ltkj.framework.config.UserHoder; import com.ltkj.hosp.domain.*; import com.ltkj.hosp.service.*; import com.ltkj.hosp.sqlDomain.LtkjExamJcbgd; import com.ltkj.hosp.sqlDomain.LtkjExamJcsqd; import com.ltkj.hosp.sqlDomain.LtkjHybgd; import com.ltkj.hosp.sqlDomain.LtkjHysqd; import com.ltkj.mall.mallOrderUtils.TjConstants; @@ -54,39 +56,36 @@ @Resource private ITjReportService reportService; @Resource private ITjCustomerService customerService; @Autowired private ITjOrderService orderService; @Autowired private ITjOrderDetailService detailService; @Resource private ITjProjectService projectService; @Resource private ITjOrderRemarkService remarkService; @Resource private ITjStandardService standardService; @Resource private ITjAdviceService adviceService; @Resource private IDictCompService compService; @Resource private ITjReportTemplateService reportTemplateService; @Value("${path.filePath}") private String value; @Resource private LtkjHybgdService ltkjHybgdService; @Resource private LtkjHysqdService ltkjHysqdService; @Resource private LtkjExamJcbgdService jcbgdService; @Resource private LtkjExamJcsqdService jcsqdService; /** * 小程序查询体检报告列表 */ @@ -131,7 +130,7 @@ public AjaxResult getRelativeReportList(@RequestParam @ApiParam(value = "姓名") String cusName, @RequestParam @ApiParam(value = "身份证号") String cusIdcard) { LambdaQueryWrapper<TjCustomer> wq1 = new LambdaQueryWrapper<>(); wq1.eq(TjCustomer::getCusName, cusName); wq1.like(TjCustomer::getCusName, cusName); wq1.eq(TjCustomer::getCusIdcard, cusIdcard); TjCustomer customer = customerService.getOne(wq1); if (null != customer) { @@ -208,26 +207,27 @@ } LambdaQueryWrapper<TjProject> wqqqq = new LambdaQueryWrapper<>(); wqqqq.eq(TjProject::getProId, tjOrderDetail.getProId()); wqqqq.eq(TjProject::getNeedReport,"Y"); 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)); } } // 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)); // } // } } LambdaQueryWrapper<TjAdvice> wq3 = new LambdaQueryWrapper<>(); wq3.eq(TjAdvice::getProId, remark.getProId()); @@ -299,6 +299,35 @@ } @GetMapping("/getJcReportByTjNumber") @ApiOperation(value = "小程序-体检检查报告查询详情") public AjaxResult getJcReportByTjNumber(@RequestParam @ApiParam(value = "体检号") String tjNumber) { LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>(); wq1.eq(TjOrder::getTjNumber, tjNumber); wq1.eq(TjOrder::getCheckStatus, 1); TjOrder one = orderService.getOne(wq1); if (one == null) { return AjaxResult.success("体检暂未完成!!"); } List<LtkjExamJcsqd> jcsqdList = jcsqdService.getLtkjJcsqdByTjh(one.getCardId()); if(null !=jcsqdList && jcsqdList.size()>0){ List<Map<String, Object>> list = new ArrayList<>(); for (LtkjExamJcsqd jcsqd : jcsqdList) { Map<String, Object> map = new HashMap<>(); map.put("parent",jcsqd.getJcxmmc()); map.put("jcbx",jcsqd.getJgbx()); List<LtkjExamJcbgd> jcbgdList = jcbgdService.getJianJcBaoGaoDanList(jcsqd.getTmh()); map.put("sons",jcbgdList); list.add(map); } return AjaxResult.success(list); } return AjaxResult.success("该客户在没有体检项目数据!"); } /** * 小程序点击体检报告查询详情,显示身高体重体重指数收缩压舒张压 */ ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java
@@ -80,6 +80,7 @@ /** * 通过his API请求获取数据生成PDF * * @param pdfInfoMap * @param params * @param tjOrder @@ -252,6 +253,7 @@ /** * 生成检查表格 * * @param tjOrder * @return */ @@ -292,6 +294,7 @@ /** * PDF文件存储至本地 * * @param tjOrder * @param customer * @param finalOutPut @@ -316,6 +319,7 @@ /** * 填充检验表格数据 * * @param document1 * @param map * @throws DocumentException @@ -348,20 +352,19 @@ /** * 非化验项目表格填充 * * @param document1 * @param printReport * @throws DocumentException */ private void notHuaYanTable(Document document1, Map<TjOrderRemark, List<TjPdfVO>> printReport) throws DocumentException { for (Map.Entry<TjOrderRemark, List<TjPdfVO>> entry : printReport.entrySet()) { List<TjPdfVO> value = entry.getValue(); LambdaQueryWrapper<TjProject> wqqq = new LambdaQueryWrapper<>(); wqqq.eq(TjProject::getProId, entry.getKey().getProId()); TjProject one11 = projectService.getOne(wqqq); //判断该项目是否需要打印报告 if (null != one11 && "N".equals(one11.getNeedReport())) { continue; } if (null != one11 && "Y".equals(one11.getNeedReport())) { List<TjPdfVO> value = entry.getValue(); String titleName = null; if (null != one11 && "1".equals(one11.getResultType())) { titleName = one11.getProName(); @@ -431,7 +434,7 @@ // 设置标题字体样式 Font titleFonts = PdfUtils.setFont(9); Paragraph paragraph = PdfUtils.setParagraph(titleFonts, titleName); String[] titles = {"体检项目", "体检结果", "单位", "参考范围"}; String[] titles = {"体检项目", "体检结果", "单位"}; // 获取列表数据 //设置表头字体样式 Font headFont = PdfUtils.setFont(9); @@ -487,6 +490,7 @@ } } } } public HashMap<String, Object> makeHisJianYan(TjOrder tjOrder, TjCustomer customer){ // TODO 这里先使用查全部测试 @@ -530,7 +534,8 @@ // jyjg 大于范围最大值,添加上箭头 jyjg = jyjg + " ↑"; } } catch (Exception ignored) {} } catch (Exception ignored) { } } // LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>(); // queryWrapper.eq(SysUser::getUserName,jyys); @@ -557,6 +562,7 @@ /** * 生成PDF模版以及用户信息部分 * * @param tjOrder * @param reportTemplate */ @@ -1098,6 +1104,7 @@ /** * 组合非化验项目报告数据 * * @param tjNumber * @param printReport * @param one @@ -1107,7 +1114,7 @@ LambdaQueryWrapper<TjOrderRemark> wqq = new LambdaQueryWrapper<>(); wqq.eq(TjOrderRemark::getTjNumber, tjNumber); wqq.ne(TjOrderRemark::getDeptId, "241"); wqq.in(TjOrderRemark::getDeptId, "269", "270", "253", "254", "255", "257", "251", "271"); wqq.in(TjOrderRemark::getDeptId, "269", "270", "253", "254", "255", "257", "271"); wqq.notIn(TjOrderRemark::getProId, projectService.getNneedReprotProId()); List<TjOrderRemark> tjOrderRemarks = tjOrderRemarkService.list(wqq); for (TjOrderRemark tjOrderRemark : tjOrderRemarks) { @@ -1118,61 +1125,21 @@ List<TjOrderDetail> tjOrderDetails = tjOrderDetailService.getDetailByOrderIdAndParId(one.getOrderId(), entry.getKey().getProId()); for (TjOrderDetail tjOrderDetail : tjOrderDetails) { TjProject tjProject = projectService.getById(tjOrderDetail.getProId()); if (null != tjProject) { if (null != tjProject && tjProject.getNeedReport().equals("Y")) { tjOrderDetail.setProject(tjProject); } if (tjOrderDetail.getProject().getProParentId().equals(entry.getKey().getProId())) { LambdaQueryWrapper<TjStandard> wq6 = new LambdaQueryWrapper<>(); wq6.eq(TjStandard::getProId, tjOrderDetail.getProId()); List<TjStandard> list2 = tjStandardService.list(wq6); if (list2.size() == 0) { TjStandard s = new TjStandard(); s.setCompany(" "); s.setTjStandardLtValue(" "); s.setTjStandardGtValue(" "); tjOrderDetail.setStandard(s); } else if (list2.size() == 1) { tjOrderDetail.setStandard(list2.get(0)); } else { Long cusSex = customer.getCusSex(); Date cusBrithday = customer.getCusBrithday(); int age = DateUtil.ageOfNow(cusBrithday); for (TjStandard tjStandard : list2) { LambdaQueryWrapper<TjStandard> wq8 = new LambdaQueryWrapper<>(); if (tjStandard.getTjSex() != null) { wq8.eq(TjStandard::getTjSex, cusSex); } if (tjStandard.getTjType() != null) { wq8.eq(TjStandard::getTjType, StringUtils.getAgeType(age)); } TjStandard standard = tjStandardService.getOne(wq8); tjOrderDetail.setStandard(standard); } } TjPdfVO tjPdfVO = new TjPdfVO(); tjPdfVO.setProName(tjOrderDetail.getProject().getProName()); tjPdfVO.setProResult(tjOrderDetail.getProResult()); tjPdfVO.setExc(tjOrderDetail.getExceptionDesc()); if (tjOrderDetail.getStandard() != null) { //单位 if (tjOrderDetail.getStandard().getCompany() == null) { tjPdfVO.setCompany(" "); if(null !=tjProject.getProMetering()){ tjPdfVO.setCompany(tjProject.getProMetering()); } else { tjPdfVO.setCompany(tjOrderDetail.getStandard().getCompany()); } // TODO 设置单位 //最大值和最小值 String tjStandardGtValue = tjOrderDetail.getStandard().getTjStandardGtValue(); String tjStandardLtValue = tjOrderDetail.getStandard().getTjStandardLtValue(); if (tjStandardGtValue == null) { tjStandardGtValue = " "; } if (tjStandardLtValue == null) { tjStandardLtValue = " "; } tjPdfVO.setStandardValue(tjStandardLtValue + "-" + tjStandardGtValue); tjPdfVO.setCompany("/"); } tjPdfVOS.add(tjPdfVO); } } } printReport.put(entry.getKey(), tjPdfVOS); @@ -1222,7 +1189,6 @@ } /** * * @param document * @param titleName * @param titles @@ -1344,6 +1310,7 @@ /** * 创建检查pdf * * @param xm * @param xb * @param nl ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java
@@ -2544,15 +2544,14 @@ transitionService.deletedTbTransitionByTjNum(tjNum); TjCustomer customer = tjCustomerService.getById(order.getUserId()); if (null != customer) { customer.setCardId("0"); tjCustomerService.updateById(customer); } String configByKey = configService.selectConfigByKey("sfkqdyhis"); if (configByKey.equals("Y")) { HashMap<String, Object> map = new HashMap<>(); map.put("cardtype", "4"); map.put("input", order.getCardId()); // map.put("input", order.getCardId()); map.put("input", customer.getPationId()); LocalDate currentDate = LocalDate.now(); LocalDateTime startOfDay = currentDate.atStartOfDay(); LocalDateTime nineteenOClock = currentDate.atTime(LocalTime.of(19, 0)); @@ -2564,7 +2563,7 @@ AjaxResult result = hisApiGetMethodService.getHISDataNew("Getoutpatientcostinfo", map); if (Integer.parseInt(String.valueOf(result.get("code"))) == 200) { TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return AjaxResult.error("撤销失败,门诊患者费用清单信息不为空"); return AjaxResult.error("撤销失败,该人员已缴费,请先退费!"); } else { boolean zfHisApiMethods = hisApiMethod.ZfHisApiMethods(null, order); if (zfHisApiMethods) { @@ -2575,8 +2574,6 @@ } } } // transitionService.updateTbTransitionByTjNum(tjNum); return AjaxResult.success("撤销成功!!!"); } return AjaxResult.success("签到记录不存在!"); @@ -2802,7 +2799,6 @@ } @PostMapping("/revokeBlProByBldhAndTjh") @ApiOperation(value = "根据补录单号和体检号删除记录") @Transactional @@ -2860,12 +2856,6 @@ } return AjaxResult.success(); } } ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjExamJcbgdMapper.java
@@ -26,6 +26,6 @@ @Select ("SELECT a.sqdh FROM ltkj_jianchajianyan_tree a WHERE a.card_id =#{cardId} AND a.type='检查' GROUP BY a.sqdh") List<String> getJianJcBaoGaoDan(String cardId); @Select("SELECT * FROM ltkj_exam_jcbgd WHERE tmh=#{tmh}") @Select("SELECT * FROM ltkj_exam_jcbgd WHERE tmh=#{tmh} GROUP BY xmmc ") List<LtkjExamJcbgd> getJianJcBaoGaoDanList(String tmh); }