From 8fda1d856c37cf6c1bed6fa80e6e5720aa93975d Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期四, 08 五月 2025 16:58:19 +0800 Subject: [PATCH] zjh20250508 --- ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java | 194 ++++++++++++++++++++++++++++---------- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjXdPictureController.java | 30 +++++ ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java | 5 ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjExamJcsqdService.java | 3 ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjExamJcsqdServiceImpl.java | 4 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java | 5 ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjExamJcsqdMapper.java | 14 +- 7 files changed, 186 insertions(+), 69 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java index f4f4388..a3eba6e 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java @@ -33,6 +33,7 @@ import com.ltkj.system.service.ISysUserService; import com.ltkj.web.config.pdfutils.PdfUtils; import com.ltkj.web.controller.system.SysDeptController; +import jodd.util.StringUtil; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -2661,7 +2662,9 @@ // 姝e垯琛ㄨ揪寮忥細鍖归厤鏁板瓧鍚庤窡 '.' 鎴� '銆�' String regex = "\\d+[\\.,銆乚"; // 浣跨敤姝e垯鏇挎崲锛屽尮閰嶇殑鏁板瓧鍚庢坊鍔犳崲琛岀 - yxbx = yxbx.replaceAll(regex, "\n$0"); + if(StringUtil.isNotBlank(yxbx)) yxbx = yxbx.replaceAll(regex, "\n$0"); + if(StringUtil.isBlank(bgNr)) bgNr = ""; + if(StringUtil.isBlank(yxbx)) yxbx = ""; tjPdfVO.setTs(yxbx); tjPdfVO.setSj(bgNr); tjPdfVO.setShys(jcbgd.getShysxm()); diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java index dd09c23..ccbb6c1 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java @@ -597,69 +597,157 @@ } @Override - @Async("async") - public void updateOrdeltile(List<TjOrderDetail> tjOrderDetailList, SysUser sysUser, TjOrder order,TjOrderRemark orderRemark) { - String deptname=""; - TjProject tjProject = projectService.getById(orderRemark.getProId()); - if(null !=tjProject){ - SysDept dept = deptService.getById(tjProject.getDeptId()); - if(dept.getParentId()!=100L){ - deptname= deptService.getprentks(dept.getParentId().toString()); - }else { - deptname=dept.getDeptName(); - } - String xb= tjCustomerService.getSexByTjh(order.getTjNumber()); + //@Async("async") + public void updateOrdeltile(List<TjOrderDetail> tjOrderDetailList, SysUser sysUser, TjOrder order, TjOrderRemark orderRemark) { - for (TjOrderDetail detail : tjOrderDetailList) { - detail.setTjStatus(1L); - LambdaQueryWrapper<TjStandard> wq0 = new LambdaQueryWrapper<>(); - wq0.eq(TjStandard::getProId, detail.getProId()); - detail.setUpdateBy(sysUser.getNickName()); - detail.setUpdateTime(new Date()); - detail.setCreateId(String.valueOf(sysUser.getUserId())); - detail.setUpdateId(String.valueOf(sysUser.getUserId())); - tjOrderDetailService.updateById(detail); - try { - LambdaQueryWrapper<TjOrderYcxm> wq=new LambdaQueryWrapper<>(); - wq.eq(TjOrderYcxm::getTjh,order.getTjNumber()); - wq.eq(TjOrderYcxm::getJcxm,detail.getProName()); - TjOrderYcxm ycxm = ycxmService.getOne(wq); - if(null !=ycxm){ - ycxm.setJcjg(detail.getProResult()); - String replacedAll = detail.getProName().replaceAll("[锛�(][^锛�)]*[\u4e00-\u9fa5]+[^锛�)]*[锛�)]", "").replaceAll("[锛�(][^锛�)]*[锛�)]", "") - .replaceAll("[ 娴嬪畾妫�娴媇", "").replaceAll("\\[.*?\\]", "").replaceAll("鈼�", ""); - List<Map<String,Object>> maps= rulesService.getyichangxiangmujianyiguize(detail.getProId().toString() - ,replacedAll,"",order.getTjNumber() - ,replacedAll - ,detail.getProResult()); + try { + String deptname = ""; + TjProject tjProject = projectService.getById(orderRemark.getProId()); + if (null != tjProject) { + SysDept dept = deptService.getById(tjProject.getDeptId()); + if (dept.getParentId() != 100L) { + deptname = deptService.getprentks(dept.getParentId().toString()); + } else { + deptname = dept.getDeptName(); + } + String xb= tjCustomerService.getSexByTjh(order.getTjNumber()); - String[] split = detail.getProResult().split("銆倈,|锛�"); - List<Map<String,Object>> mapList=new ArrayList<>(); - for (String s : split) { - s = s.replaceAll("\n", "").replaceAll("[锛�(][^锛�)]*[锛�)]", ""); -// Map<String,Object> maps= rulesService.getyichangxiangmujianyiguizeJianCha(s); - Map<String,Object> mapss= tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(deptname,s,"0",xb); - if(null !=mapss && !mapss.isEmpty()){ - Object bt = mapss.get("bt"); - Object nr = mapss.get("nr"); - if(null !=bt || null !=nr){ + StringBuilder ssyszys = new StringBuilder(); + StringBuilder ssyszyjgs = new StringBuilder(); + List<Map<String, Object>> jianyilis=new ArrayList<>(); + for (TjOrderDetail detail : tjOrderDetailList) { + detail.setTjStatus(1L); + LambdaQueryWrapper<TjStandard> wq0 = new LambdaQueryWrapper<>(); + wq0.eq(TjStandard::getProId, detail.getProId()); + detail.setUpdateBy(sysUser.getNickName()); + detail.setUpdateTime(new Date()); + detail.setCreateId(String.valueOf(sysUser.getUserId())); + detail.setUpdateId(String.valueOf(sysUser.getUserId())); + tjOrderDetailService.updateById(detail); - } mapList.add(mapss); + LambdaQueryWrapper<TjOrderYcxm> wq = new LambdaQueryWrapper<>(); + wq.eq(TjOrderYcxm::getTjh, order.getTjNumber()); + wq.eq(TjOrderYcxm::getJcxm, detail.getProName()); + ycxmService.remove(wq); + if (detail.getExceptionDesc() == 1) { + if(tjProject.getSfcyyc()==0){ + String replacedAll = detail.getProName().replaceAll("[锛�(][^锛�)]*[\u4e00-\u9fa5]+[^锛�)]*[锛�)]", "").replaceAll("[锛�(][^锛�)]*[锛�)]", "") + .replaceAll("[ 娴嬪畾妫�娴媇", "").replaceAll("\\[.*?\\]", "").replaceAll("鈼�", ""); + + if(!detail.getProName().contains("鑸掑紶鍘�") && !detail.getProName().contains("鏀剁缉鍘�")){ + + List<Map<String, Object>> maps = rulesService.getyichangxiangmujianyiguize(detail.getProId().toString(), replacedAll, "", order.getTjNumber() + , replacedAll, detail.getProResult()); + + + String[] split = detail.getProResult().split("[銆�,锛�:锛�.\\s]+"); + List<Map<String, Object>> mapList = new ArrayList<>(); + for (String s : split) { + s = s.replaceAll("\n", "").replaceAll("[锛�(][^锛�)]*[锛�)]", "").replaceAll(" ","") + .replaceAll("鐥�","").replaceAll("[0-9]", ""); + Map<String, Object> mapss = tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(deptname, s, "0",xb); + if (null != mapss && !mapss.isEmpty()) { + Object bt = mapss.get("bt"); + Object nr = mapss.get("nr"); + if (null != bt || null != nr) { + + } + mapList.add(mapss); + } + } + TjOrderYcxm ycxm = ycxmService.getOne(wq); + if (null != ycxm) { + ycxm.setJcjg(detail.getProResult()); + if (null != maps && !maps.isEmpty()) { + ycxm.setJynr(JSONUtil.toJsonStr(maps)); + } + if (!mapList.isEmpty()) { + ycxm.setJynr(JSONUtil.toJsonStr(mapList)); + } + ycxmService.updateById(ycxm); + }else { + TjOrderYcxm orderYcxm =new TjOrderYcxm(); + orderYcxm.setTjh(order.getTjNumber()); + orderYcxm.setParentName(tjProject.getProName()); + orderYcxm.setJcxm(detail.getProName()); + orderYcxm.setJcjg(detail.getProResult()); + if (null != maps && !maps.isEmpty()) { + orderYcxm.setJynr(JSONUtil.toJsonStr(maps)); + } + if (!mapList.isEmpty()) { + orderYcxm.setJynr(JSONUtil.toJsonStr(mapList)); + } + orderYcxm.setJyjc("0"); + ycxmService.save(orderYcxm); + } + }else { + + List<Map<String, Object>> maps = rulesService.getyichangxiangmujianyiguize(detail.getProId().toString() + , replacedAll, "", order.getTjNumber(), replacedAll, detail.getProResult()); + + + String[] split = detail.getProResult().split("[銆�,锛�:锛�.\\s]+"); + List<Map<String, Object>> mapList = new ArrayList<>(); + for (String s : split) { + s = s.replaceAll("\n", "").replaceAll("[锛�(][^锛�)]*[锛�)]", "").replaceAll(" ","") + .replaceAll("鐥�","").replaceAll("[0-9]", ""); + Map<String, Object> mapss = tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(deptname, s, "0",xb); + if (null != mapss && !mapss.isEmpty()) { + Object bt = mapss.get("bt"); + Object nr = mapss.get("nr"); + if (null != bt || null != nr) { + + } + mapList.add(mapss); + } + } + + if (null != maps && !maps.isEmpty()) { + jianyilis.addAll(maps); + } + if (!mapList.isEmpty()) { + jianyilis.addAll(mapList); + } + ssyszys.append(detail.getProName()).append("/"); + ssyszyjgs.append(detail.getProResult()).append("/"); } } + } else { + if(detail.getProName().contains("鑸掑紶鍘�") || detail.getProName().contains("鏀剁缉鍘�")){ + ssyszys.append(detail.getProName()).append("/"); + ssyszyjgs.append(detail.getProResult()).append("/"); - if(null != maps && !maps.isEmpty()){ - ycxm.setJynr(JSONUtil.toJsonStr(maps)); } - if( !mapList.isEmpty()){ - ycxm.setJynr(JSONUtil.toJsonStr(mapList)); - } - ycxmService.updateById(ycxm); - if(detail.getExceptionDesc()==0)ycxmService.remove(wq); + } - } catch (Exception e) { + } + + // 浣跨敤 stream 杩囨护鍑� proName 涓� "鑸掑紶鍘�" 鎴� "鏀剁缉鍘�" 鐨勫厓绱� + List<TjOrderDetail> filteredList = tjOrderDetailList.stream() + .filter(a -> ("鑸掑紶鍘�".equals(a.getProName()) || "鏀剁缉鍘�".equals(a.getProName())) && a.getExceptionDesc()==1) + .collect(Collectors.toList()); + if(StrUtil.isNotBlank(ssyszys.toString())){ + + LambdaQueryWrapper<TjOrderYcxm> wq = new LambdaQueryWrapper<>(); + wq.eq(TjOrderYcxm::getTjh, order.getTjNumber()); + wq.like(TjOrderYcxm::getJcxm,"鑸掑紶鍘�"); + ycxmService.remove(wq); + + if(!filteredList.isEmpty()){ + TjOrderYcxm orderYcxm =new TjOrderYcxm(); + orderYcxm.setTjh(order.getTjNumber()); + orderYcxm.setParentName(tjProject.getProName()); + orderYcxm.setJcxm(ssyszys.toString().replaceFirst("/$", "")); + orderYcxm.setJcjg(ssyszyjgs.toString().replaceFirst("/$", "")); + orderYcxm.setJynr(JSONUtil.toJsonStr(jianyilis)); + orderYcxm.setJyjc("0"); + ycxmService.save(orderYcxm); + } } } + } catch (Exception e) { + e.printStackTrace(); + log.error(String.valueOf(e)); } } diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java index 7d7c76a..097a840 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java @@ -1812,10 +1812,11 @@ } } else { - String[] split = tjOrderDetail.getProResult().split("銆倈锛泑;|,|锛�"); + String[] split = tjOrderDetail.getProResult().split("[銆�,锛�:锛�.\\s]+"); List<Map<String, Object>> mapList = new ArrayList<>(); for (String s : split) { - s = s.replaceAll("\n", "").replaceAll("[锛�(][^锛�)]*[锛�)]", ""); + s = s.replaceAll("\n", "").replaceAll("[锛�(][^锛�)]*[锛�)]", "").replaceAll(" ","") + .replaceAll("鐥�","").replaceAll("[0-9]", ""); Map<String, Object> maps = tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(remark.getKs(), s, "0",xb); if (null != maps && !maps.isEmpty()) { Object bt = maps.get("bt"); diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjXdPictureController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjXdPictureController.java index afdefd3..351c120 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjXdPictureController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjXdPictureController.java @@ -361,7 +361,6 @@ if(null !=order){ TjProject project = projectService.getById(proId); if(null !=project){ -// List<TjProject> projects = projectService.getTjProjectListBySoneId(proId); LambdaQueryWrapper<TjOrderDetail>wq1=new LambdaQueryWrapper<>(); wq1.eq(TjOrderDetail::getProId,proId); wq1.eq(TjOrderDetail::getOrderId,order.getOrderId()); @@ -425,13 +424,38 @@ jcbgd.setShysxm(xdtgmdjg.getCreateBy()); jcbgd.setShysdm(xdtgmdjg.getCreateId()); jcbgd.setYxzd(xdtgmdjg.getJcjl()); - jcbgd.setYxbx("鏈寮傚父"); + jcbgd.setYxbx(xdtgmdjg.getJcjl()); jcbgd.setZdsj(DateUtil.format(date,"yyyy-MM-dd")); jcbgd.setJcbw(""); + jcbgd.setLx("1"); jcbgd.setSqsj(DateUtil.format(date,"yyyy-MM-dd")); jcbgd.setCreateTime(date); jcbgdService.save(jcbgd); - jcsqdService.saveLtkjExamJcsqd(xdtgmdjg.getCardId()); + jcsqdService.saveXdtLtkjExamJcsqd(xdtgmdjg.getCardId(),jcbgd.getTmh()); + + jcsqdService.deletedLtkjJcsqdByTjhandtmh1(xdtgmdjg.getCardId()); + + LambdaQueryWrapper<TjJcycxm> wq=new LambdaQueryWrapper<>(); + wq.eq(TjJcycxm::getTjh,xdtgmdjg.getTjh()); + wq.eq(TjJcycxm::getProId,xdtgmdjg.getProId()); + jcycxmService.remove(wq); + if(StringUtil.isNotBlank(xdtgmdjg.getJcjl())){ + String[] split = xdtgmdjg.getJcjl().replaceAll("\n", "").split("銆倈锛泑;|,|锛�"); + for (String jg : split) { + if(StringUtil.isNotBlank(jg) && !jg.contains("鏈寮傚父") + && !jg.contains("鏈鏄庢樉寮傚父") && !jg.contains("鏈鍗犱綅") && !jg.contains("鏈") + && !jg.contains("鏈鏄庢樉")&& !jg.contains("姝e父")&& !jg.contains("鍙屼晶妞庨棿瀛旀棤鐙獎")){ + TjJcycxm jcycxm=new TjJcycxm(); + jcycxm.setTjh(xdtgmdjg.getTjh()); + jcycxm.setYqid(""); + jcycxm.setProId(xdtgmdjg.getProId()); + jcycxm.setProName(xdtgmdjg.getProName()); + jcycxm.setCreateTime(new Date()); + jcycxm.setJcjg(jg); + jcycxmService.save(jcycxm); + } + } + } } catch (Exception e) { throw new RuntimeException(e); } diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjExamJcsqdMapper.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjExamJcsqdMapper.java index f712edd..39e1a77 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjExamJcsqdMapper.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjExamJcsqdMapper.java @@ -45,6 +45,13 @@ "FROM ltkj_exam_jcbgd a WHERE a.tjh=#{tjh} and a.lx=0 GROUP BY a.xmmc") void saveLtkjExamJcsqd(String tjh); + @Insert("INSERT INTO ltkj_exam_jcsqd (`tjh`, `tmh`, `jclx`, `jczlx`, `bgys`, `bgysid`, " + + "`sqsj`, `jgsj`, `jcxmmc`, `jcxmid`, `bw`, `jgzt`, `jgbx`, `lx`, `create_time`)\n" + + "SELECT a.tjh,a.tmh,NULL jclx,NULL jczlx,a.shysxm bgys,a.shysdm bgysid,a.sqsj,a.zdsj jgsj, a.xmmc jcxmmc,a.xmdm jcxmid,a.jcbw bw,\n" + + "a.yxzd jgzt,a.bg_nr jgbx,'1',sysdate()\n" + + "FROM ltkj_exam_jcbgd a WHERE a.tjh=#{tjh} and a.tmh=#{tmh} and a.lx=1 GROUP BY a.xmmc") + void saveXdtLtkjExamJcsqd(@Param("tjh") String tjh,@Param("tmh")String tmh); + @Select("SELECT a.tjh,a.tmh,NULL jclx,NULL jczlx,a.shysxm bgys,a.shysdm bgysid,a.sqsj,a.zdsj jgsj, a.xmmc jcxmmc,a.xmdm jcxmid,a.jcbw bw," + "a.yxzd jgzt,a.yxbx jgbx FROM ltkj_exam_jcbgd a WHERE a.tjh=#{tjh} GROUP BY a.xmmc") List<LtkjExamJcbgd> queryLtkjExamJcsqdByTjh(String tjh); @@ -62,11 +69,4 @@ @Delete ("DELETE FROM ltkj_exam_jcsqd WHERE tjh=#{tjh} and jcxmid = #{xmid} and lx=0 and sgorzd=1 ") void deletedLtkjJcsqdByTjhAndProId(@Param("tjh") String tjh,@Param("xmid") String xmid); - - @Insert("INSERT INTO ltkj_exam_jcsqd (`tjh`, `tmh`, `jclx`, `jczlx`, `bgys`, `bgysid`, `sqsj`, " + - "`jgsj`, `jcxmmc`, `jcxmid`, `bw`, `jgzt`, `jgbx`, `lx`, `create_time`)\n" + - "SELECT a.tjh,a.tmh,NULL jclx,NULL jczlx,a.shysxm bgys,a.shysdm bgysid,a.sqsj,a.zdsj jgsj, a.xmmc jcxmmc,a.xmdm jcxmid,a.jcbw bw,\n" + - "a.yxzd jgzt,a.bg_nr jgbx,'1',sysdate()\n" + - "FROM ltkj_exam_jcbgd a WHERE a.tjh=#{tjh} and a.lx=1 GROUP BY a.xmmc") - void saveLtkjExamJcsqdxdt(String tjh); } diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjExamJcsqdService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjExamJcsqdService.java index 2e1e879..09e803c 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjExamJcsqdService.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/LtkjExamJcsqdService.java @@ -31,7 +31,8 @@ void saveLtkjExamJcsqd(String tjh); - void saveLtkjExamJcsqdxdt(String tjh); + void saveXdtLtkjExamJcsqd(String tjh,String tmh); + AjaxResult getTjJcProByHisCall(String ksmc,String strIn,String brid,int pagecount,int page,String status); diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjExamJcsqdServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjExamJcsqdServiceImpl.java index 06fbdcf..5408b0e 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjExamJcsqdServiceImpl.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/LtkjExamJcsqdServiceImpl.java @@ -82,8 +82,8 @@ } @Override - public void saveLtkjExamJcsqdxdt(String tjh) { - mapper.saveLtkjExamJcsqdxdt(tjh); + public void saveXdtLtkjExamJcsqd(String tjh, String tmh) { + mapper.saveXdtLtkjExamJcsqd(tjh,tmh); } @Override -- Gitblit v1.8.0