zjh
2025-01-20 86c2fdbef4ed64b5f38adb23fe8b54b79054550b
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java
@@ -122,6 +122,8 @@
    private RedissonClient redissonClient;
    @Autowired
    private ITjRulesService rulesService;
    @Autowired
    private ITjProAdvicerulesService tjProAdvicerulesService;
    @GetMapping ("/ceshicc")
@@ -724,9 +726,9 @@
                    if ("Y".equals(getInfoFromSqlData)) {
                        tbhyxm(order);
                        //同步化验项目
                        testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), doctorId);
//                        testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), doctorId);
                        //同步检查项目
                        testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), doctorId);
//                        testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), doctorId);
                        asyncService.updateCheckType(order.getTjNumber());
                    }
@@ -771,6 +773,7 @@
                                hysqd.setShrdm(jsonObject.getStr("JYYSBH"));
                                hysqd.setShrxm(jsonObject.getStr("JYYSQM"));
                                hysqd.setJybgjg(jsonObject.getStr("JYBGJG"));
                                hysqd.setCreateTime(new Date());
                                QueryWrapper<LtkjHysqd> queryWrapper = new QueryWrapper<>(hysqd);
                                List<LtkjHysqd> list = ltkjHysqdService.list(queryWrapper);
                                if (list.isEmpty())
@@ -782,10 +785,10 @@
                                }
                            }
                            //同步化验项目
                            testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), doctorId);
//                            testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), doctorId);
                        }
                        /*同步检查 his接口*/
                        if (null != jianChaBaoGaoDan && jianChaBaoGaoDan.size() > 0) {
                        if (null != jianChaBaoGaoDan && !jianChaBaoGaoDan.isEmpty()) {
                            Map<String, Object> maps = new HashMap<>();
                            maps.put("his_registration_id", order.getCardId());
                            maps.put("ksbm", "体检中心");
@@ -837,10 +840,11 @@
                                            jcbgd.setJcbw(objectMap.get("JCBW").toString());
                                        if (null != objectMap.get("SQRQSJ") || !objectMap.get("SQRQSJ").equals(""))
                                            jcbgd.setSqsj(objectMap.get("SQRQSJ").toString());
                                            jcbgd.setCreateTime(new Date());
                                        jcbgdService.save(jcbgd);
                                    }
                                    jcsqdService.saveLtkjExamJcsqd(order.getCardId());
                                    testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), doctorId);
//                                    testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), doctorId);
                                }else {
                                    return AjaxResult.error("检查项目暂时未出结果,请稍后同步!!!");
                                }
@@ -849,7 +853,7 @@
                        return AjaxResult.success("同步成功");
                    }
                    //化验
                    testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), doctorId);
//                    testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), doctorId);
                    //检查
                    jcsqdService.saveLtkjExamJcsqd(order.getCardId());
                    return AjaxResult.success("同步成功");
@@ -900,6 +904,7 @@
                bgd.setShys(js.getStr("SHRBH"));
                bgd.setShysmc(js.getStr("SHRXM"));
                bgd.setYcbz(js.getStr("YCTS"));
                bgd.setCreateTime(new Date());
//                            bgd.setTpurl(js.getStr(""));
                QueryWrapper<LtkjHybgd> queryWrapper = new QueryWrapper<>(bgd);
                List<LtkjHybgd> list = ltkjHybgdService.list(queryWrapper);
@@ -954,7 +959,7 @@
    private void tbhyxm(TjOrder order) {
        List<LtkjHysqd> one = testMapper.getHysqdByTmh(order.getCardId());
        if (one != null && one.size() > 0) {
        if (one != null && !one.isEmpty()) {
            for (LtkjHysqd ltkjHysqd : one) {
                ltkjHysqdService.deletedLtkjHysqdByTjhAndTmh(ltkjHysqd.getTjh(), ltkjHysqd.getTmh());
                ltkjHybgdService.deletedLtkjHybgdByTjhAndTmh(ltkjHysqd.getTmh());
@@ -963,7 +968,7 @@
                    ltkjHysqdService.save(ltkjHysqd);
                    DynamicDataSourceContextHolder.clearDataSourceType();
                    List<LtkjHybgd> one1 = testMapper.getHybgdByTmh(ltkjHysqd.getTmh());
                    if (one1 != null && one1.size() > 0) {
                    if (one1 != null && !one1.isEmpty()) {
                        DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name());
                        ltkjHybgdService.saveBatch(one1);
                        DynamicDataSourceContextHolder.clearDataSourceType();
@@ -1654,10 +1659,31 @@
                    for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
                        if (remark.getProsId().equals(tjOrderDetail.getProsId())) {
                            if(null !=tjOrderDetail.getProId()&& null !=tjOrderDetail.getYcbz()){
                                List<Map<String,Object>> maps= rulesService.getyichangxiangmujianyiguize(tjOrderDetail.getProId().toString(),"",tjOrderDetail.getYcbz(),tjNumber);
                                if(null !=maps && !maps.isEmpty()){
                                    tjOrderDetail.setAdvices(maps);
                                if(!tjOrderDetail.getDeptId().equals("2")){
                                    List<Map<String,Object>> maps= rulesService.getyichangxiangmujianyiguize(tjOrderDetail.getProId().toString()
                                            ,"",tjOrderDetail.getYcbz().replaceAll(" ", ""),tjNumber
                                            ,tjOrderDetail.getProName().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(mapList);
                                }
                            }
                            dels.add(tjOrderDetail);