From 7e73e7699d55b4b229bef4dc5d89e01aedef5a19 Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期一, 19 五月 2025 17:13:37 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java | 194 +++++++++++++++++++++++++++++++++++------------- 1 files changed, 141 insertions(+), 53 deletions(-) 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)); } } -- Gitblit v1.8.0