zjh
2025-03-25 f5e009d6c7cdb7ec64ab68feed4456fec49187b8
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java
@@ -37,6 +37,7 @@
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 lombok.var;
import org.aspectj.weaver.AjAttribute;
@@ -1746,61 +1747,77 @@
    private List<Map<String, Object>> zongjianyishengchakanyichangxiangmu(String tjNumber) {
//        asyncService.updateCheckType(tjNumber);
        List<TjOrderRemark> remarkList = orderRemarkService.getzongjianyishengchakanyichangxiangmu(tjNumber);
        List<TjOrderDetail> tjOrderDetails = detailService.getzongjianyishengchakanyichangxiangmu(tjNumber);
        List<Map<String, Object>> list = new ArrayList<>();
        if (null != remarkList && !remarkList.isEmpty()) {
            for (TjOrderRemark remark : remarkList) {
                Map<String, Object> parent = new HashMap<>();
                if (null != tjOrderDetails && !tjOrderDetails.isEmpty()) {
                    List<TjOrderDetail> dels = new ArrayList<>();
                    for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
                        if (remark.getProsId().equals(tjOrderDetail.getProsId())) {
                            if(null !=tjOrderDetail.getProId()&& null !=tjOrderDetail.getYcbz()){
                                if(!tjOrderDetail.getDeptId().equals("2")){
                                    List<Map<String,Object>> maps= rulesService.getyichangxiangmujianyiguize(tjOrderDetail.getProId().toString()
                                            ,tjOrderDetail.getProName().replaceAll("[((][^))]*[))]", "")
                                                    .replaceAll("[ 测定检测]","").replaceAll("\\[.*?\\]", ""),tjOrderDetail.getYcbz().replaceAll(" ", ""),tjNumber
                                            ,tjOrderDetail.getProName().replaceAll("[((][^))]*[\u4e00-\u9fa5]+[^))]*[))]", "")
                                                    .replaceAll("[ 测定检测]","").replaceAll("\\[.*?\\]", "")
                                            ,tjOrderDetail.getProResult());
        TjOrder order = orderService.getOrderByTjNum(tjNumber);
        if(null !=order){
            List<TjOrderRemark> remarkList = orderRemarkService.getzongjianyishengchakanyichangxiangmu(tjNumber);
            List<TjOrderDetail> tjOrderDetails = detailService.getzongjianyishengchakanyichangxiangmu(tjNumber);
            LambdaQueryWrapper<TjOrderYcxm> wq=new LambdaQueryWrapper<>();
            wq.eq(TjOrderYcxm::getTjh,tjNumber);
            List<TjOrderYcxm> ycxmList = ycxmService.list(wq);
            if (null != remarkList && !remarkList.isEmpty()) {
                for (TjOrderRemark remark : remarkList) {
                    Map<String, Object> parent = new HashMap<>();
                    if (null != tjOrderDetails && !tjOrderDetails.isEmpty()) {
                        List<TjOrderDetail> dels = new ArrayList<>();
                        for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
                            if (remark.getProsId().equals(tjOrderDetail.getProsId())) {
                                if(null !=tjOrderDetail.getProId()&& null !=tjOrderDetail.getYcbz()){
                                    if(!tjOrderDetail.getDeptId().equals("2")){
                                        List<Map<String,Object>> maps= rulesService.getyichangxiangmujianyiguize(tjOrderDetail.getProId().toString()
                                                ,tjOrderDetail.getProName().replaceAll("[((][^))]*[))]", "")
                                                        .replaceAll("[ 测定检测]","").replaceAll("\\[.*?\\]", ""),tjOrderDetail.getYcbz().replaceAll(" ", ""),tjNumber
                                                ,tjOrderDetail.getProName().replaceAll("[((][^))]*[\u4e00-\u9fa5]+[^))]*[))]", "")
                                                        .replaceAll("[ 测定检测]","").replaceAll("\\[.*?\\]", "")
                                                ,tjOrderDetail.getProResult());
                                    if(null !=maps && !maps.isEmpty()){
                                        tjOrderDetail.setAdvices(maps);
                                    }
                                }else {
                                    String[] split = tjOrderDetail.getProResult().split("。|,|,");
                                    List<Map<String,Object>> mapList=new ArrayList<>();
                                    for (String s : split) {
                                                s = s.replaceAll("\n", "");
//                                        Map<String,Object> maps= rulesService.getyichangxiangmujianyiguizeJianCha(s);
                                        Map<String,Object> maps= tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(remark.getKs(),s,"0");
                                        if(null !=maps && !maps.isEmpty()){
                                            Object bt = maps.get("bt");
                                            Object nr = maps.get("nr");
                                            if(null !=bt || null !=nr) mapList.add(maps);
                                            tjOrderDetail.setAdvices(maps);
                                        }
                                    }else {
                                        String[] split = tjOrderDetail.getProResult().split("。|,|,");
                                        List<Map<String,Object>> mapList=new ArrayList<>();
                                        for (String s : split) {
                                            s = s.replaceAll("\n", "");
//                                        Map<String,Object> maps= rulesService.getyichangxiangmujianyiguizeJianCha(s);
                                            Map<String,Object> maps= tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(remark.getKs(),s,"0");
                                            if(null !=maps && !maps.isEmpty()){
                                                Object bt = maps.get("bt");
                                                Object nr = maps.get("nr");
                                                if(null !=bt || null !=nr) mapList.add(maps);
                                            }
                                        }
                                        tjOrderDetail.setAdvices(mapList);
                                    }
                                    tjOrderDetail.setAdvices(mapList);
                                }
                                if(null==ycxmList || ycxmList.isEmpty()){
                                    TjOrderYcxm ycxm=new TjOrderYcxm();
                                    ycxm.setTjh(tjNumber);
                                    ycxm.setParentName(remark.getProName());
                                    ycxm.setJcxm(tjOrderDetail.getProName());
                                    ycxm.setJcjg(tjOrderDetail.getProResult());
                                    ycxm.setCkfw(tjOrderDetail.getStanId());
                                    ycxm.setDw(tjOrderDetail.getProAdvice());
                                    ycxm.setJynr(JSONUtil.toJsonStr(tjOrderDetail.getAdvices()));
                                    ycxmService.save(ycxm);
                                }
                                dels.add(tjOrderDetail);
                            }
                            dels.add(tjOrderDetail);
                        }
                        if(!dels.isEmpty()){
                            parent.put("proName",remark.getProName());
                            parent.put("jyjc",remark.getJyjc());
                            parent.put("sone",dels);
                            list.add(parent);
                        }
                    }
                    if(!dels.isEmpty()){
                        parent.put("proName",remark.getProName());
                        parent.put("jyjc",remark.getJyjc());
                        parent.put("sone",dels);
                        list.add(parent);
                    }
                }
            }
            }
        }
        return list;
    }