zjh
2025-03-25 dc9f340fa83555c30655a0e42c175a91d81d65d2
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;
@@ -131,6 +132,8 @@
    private TjOrderYcxmService ycxmService;
    @Autowired
    private SysConfigController configController;
    @Autowired
    private TjJcycxmService jcycxmService;
    @GetMapping ("/ceshicc")
@@ -403,7 +406,7 @@
    @RepeatSubmit
//    @Transactional
    public AjaxResult dataSynchronization(@RequestParam String tjNumber) {
        String dqyyyqbm = configService.selectConfigByKey("dqyyyqbm");
        RLock lock = redissonClient.getLock("lock:check:dataSynchronization:" + tjNumber);
        try {
            boolean tryLock = lock.tryLock(3L, TimeUnit.SECONDS);
@@ -668,7 +671,7 @@
                        return AjaxResult.success("同步成功");
                    }
                    else if(null !=sfkqdshitulianjie && sfkqdshitulianjie.equalsIgnoreCase("Y")){
                        List<LtkjHysqd> hysqdList = testMapper.getCcXZxYyLtkjHysqdByLisVi(order.getTjNumber());
                        List<LtkjHysqd> hysqdList = testMapper.getCcXZxYyLtkjHysqdByLisVi(order.getTjNumber(),dqyyyqbm);
                        if(null != hysqdList && !hysqdList.isEmpty()){
                            for (LtkjHysqd hysqd : hysqdList) {
                                LtkjHysqd jybgid = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(hysqd.getTjh(),hysqd.getTmh());
@@ -683,7 +686,7 @@
                            }
                            DynamicDataSourceContextHolder.clearDataSourceType();
                        }
                        List<LtkjExamJcsqd> jcsqdList = testMapper.getCcXZxYyPacsLtkjExamJcsqd(order.getTjNumber());
                        List<LtkjExamJcsqd> jcsqdList = testMapper.getCcXZxYyPacsLtkjExamJcsqd(order.getTjNumber(),dqyyyqbm);
                        if(null !=jcsqdList && !jcsqdList.isEmpty()){
                            jcsqdService.deletedLtkjJcsqdByTjhAndTmh(order.getCardId());
                            jcbgdService.deletedLtkjJcbgdByTjhAndTmh(order.getCardId());
@@ -710,7 +713,7 @@
            }
            return AjaxResult.error("该人员数据正在同步中,请稍等");
        } catch (InterruptedException e) {
            e.printStackTrace();
            log.error(String.valueOf(e),e.getMessage());
            return AjaxResult.error("该人员数据正在同步中,请稍等");
        }finally {
            lock.unlock();
@@ -734,7 +737,7 @@
                String doctorId = configService.selectConfigByKey("request_default_check_doctorId");
                //根据配置调取存储过程 将临时表数据存入预约表2023.12.12
                final String getInfoFromSqlData = configService.selectConfigByKey("getInfoFromSqlData");
                String dqyyyqbm = configService.selectConfigByKey("dqyyyqbm");
                final String sfkqdyhis = configService.selectConfigByKey("sfkqdyhis");
                TjOrder order = orderService.getOrderByTjNum(tjNumber);
                if (null != order) {
@@ -815,7 +818,7 @@
                                resultMsg = "化验项目暂时未出结果,请稍后同步!!!";
                            }
                            //同步化验项目
//                            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.isEmpty()) {
@@ -878,8 +881,32 @@
                                            jcbgd.setSqsj(objectMap.get("SQRQSJ").toString());
                                        jcbgd.setCreateTime(new Date());
                                        jcbgdService.save(jcbgd);
                                    }
                                    jcsqdService.saveLtkjExamJcsqd(order.getCardId());
                        /*            List<LtkjExamJcsqd> jcsqdList = jcsqdService.getLtkjJcsqdByTjh(order.getCardId());
                                    if(null !=jcsqdList && !jcsqdList.isEmpty()) {
                                        for (LtkjExamJcsqd jcsqd : jcsqdList) {
                                            if (StringUtil.isNotBlank(jcsqd.getJgzt())) {
                                                String[] split = jcsqd.getJgzt().replaceAll("\n", "").split("。|;|;");
                                                for (String jg : split) {
                                                    if (StringUtil.isNotBlank(jg) && !jg.contains("未见异常")
                                                            && !jg.contains("未见明显异常") && !jg.contains("未见占位") && !jg.contains("未见")
                                                            && !jg.contains("未见明显") && !jg.contains("正常") && !jg.contains("双侧椎间孔无狭窄")) {
                                                        TjJcycxm jcycxm = new TjJcycxm();
                                                        jcycxm.setTjh(order.getTjNumber());
                                                        jcycxm.setYqid(dqyyyqbm);
                                                        String[] split1 = jcsqd.getJcxmid().split(";");
                                                        jcycxm.setProId(split1[0]);
                                                        jcycxm.setProName(jcsqd.getJcxmmc());
                                                        jcycxm.setCreateTime(new Date());
                                                        jcycxm.setJcjg(jg);
                                                        jcycxmService.save(jcycxm);
                                                    }
                                                }
                                            }
                                        }
                                    }*/
                                    testMapper.updateDetailByTjJcCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), doctorId);
                                }else {
//                                    return AjaxResult.error("检查项目暂时未出结果,请稍后同步!!!");
@@ -892,9 +919,9 @@
                        else return AjaxResult.error(resultMsg);
                    }
                    //化验
                    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());
//                    jcsqdService.saveLtkjExamJcsqd(order.getCardId());
                    return AjaxResult.success("同步成功");
                }
                return AjaxResult.error("未查到该人员体检记录");
@@ -1682,12 +1709,16 @@
    @GetMapping ("/getzongjianyishengchakanyichangxiangmu")
    @ApiOperation (value = "总检查看异常项目接口")
    public AjaxResult getzongjianyishengchakanyichangxiangmu(@RequestParam String tjNum) {
        long l = System.currentTimeMillis();
        if (StrUtil.isNotBlank(tjNum)) {
            TjOrder one = orderService.getOrderByTjNum(tjNum);
            if (one == null) {
                return AjaxResult.error("暂无数据!!");
            }
            String yqbm = configService.selectConfigByKey("common_api_service_hospbm");
            jcycxmService.deletedByTjh(tjNum);
            configController.zongjianshengchengyichangxiangmu(tjNum,yqbm);
        LambdaQueryWrapper<TjOrderYcxm> wq=new LambdaQueryWrapper<>();
        wq.eq(TjOrderYcxm::getTjh,tjNum);
@@ -1741,14 +1772,15 @@
                List<Map<String, Object>> collect1 = maps.stream()
                        .sorted((map1, map2) -> map2.get("proName").toString().compareTo(map1.get("proName").toString()))
                        .collect(Collectors.toList());
                System.out.println("总耗时:"+(System.currentTimeMillis()-l));
                return AjaxResult.success(collect1);
            }
           return AjaxResult.success(maps);
            System.out.println("总耗时:"+(System.currentTimeMillis()-l));
            return AjaxResult.success(maps);
        }else {
            List<Map<String, Object>> mapList = zongjianyishengchakanyichangxiangmu(tjNum);
//            if(mapList.isEmpty()){
//                return AjaxResult.success("暂无数据");
//            }
            System.out.println("总耗时:"+(System.currentTimeMillis()-l));
            return AjaxResult.success(mapList);
        }