zjh
2025-01-14 293581ce2108b0f9709a0d3b00310d1002f389cb
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java
@@ -120,13 +120,59 @@
    private HisApiConfigService hisApiConfigService;
    @Autowired
    private RedissonClient redissonClient;
    @Autowired
    private ITjRulesService rulesService;
//    public void  csdsrw() throws InterruptedException {
//        log.info("定时任务开始执行"+new Date());
//        Thread.sleep(1000*5);
//        log.info("定时任务结束执行"+new Date());
    @GetMapping ("/ceshicc")
    @ApiOperation (value = "测试调用存储过程耗时接口")
    @RepeatSubmit
//    @Transactional
    public AjaxResult ceshicc() {
        List<LtkjExamJcsqd> jcsqdList = testMapper.getCcXZxYyPacsLtkjExamJcsqd1("8003241206085556");
        if(null !=jcsqdList && !jcsqdList.isEmpty()){
            jcsqdService.deletedLtkjJcsqdByTjhAndTmh("8003241206085556");
            jcbgdService.deletedLtkjJcbgdByTjhAndTmh("8003241206085556");
            jcsqdService.saveBatch(jcsqdList);
            List<LtkjExamJcbgd> jcbgdList = testMapper.getCcXZxYyPacsLtkjExamJcbgd1("8003241206085556");
            if(null != jcbgdList && !jcbgdList.isEmpty())jcbgdService.saveBatch(jcbgdList);
            DynamicDataSourceContextHolder.clearDataSourceType();
        }
        return AjaxResult.success();
    }
//    @GetMapping ("/ceshi")
//    @ApiOperation (value = "测试调用lis视图数据接口")
//    @RepeatSubmit
////    @Transactional
//    public AjaxResult ceshi() {
//        List<Map<String, Object>> ccXZxYyLisJgSt = testMapper.getCcXZxYyLisJgSt();
//        return AjaxResult.success(ccXZxYyLisJgSt);
//    }
//    @GetMapping ("/pacs")
//    @ApiOperation (value = "测试调用pacs视图数据接口")
//    @RepeatSubmit
//    public AjaxResult pacs() {
//        List<Map<String, Object>> ccXZxYyPacsJgSt = testMapper.getCcXZxYyPacsJgSt();
//
//        List<LtkjExamJcsqd> list = testMapper.getCcXZxYyPacsLtkjExamJcsqd("");
//
//        log.info(list.toString());
//
//        List<LtkjExamJcbgd> list1 = testMapper.getCcXZxYyPacsLtkjExamJcbgd("");
//
//        log.info(list1.toString());
//
//        return AjaxResult.success(ccXZxYyPacsJgSt);
//    }
    @GetMapping ("/getOperationPermissionsByTjNum")
    @ApiOperation (value = "(初审页面  和 医生页面)根据体检号获取是否可操作权限接口  true可操作  反之不可")
@@ -142,35 +188,6 @@
            }
        }
        return AjaxResult.success(false);
    }
    @GetMapping ("/ceshi")
    @ApiOperation (value = "测试调用lis视图数据接口")
    @RepeatSubmit
//    @Transactional
    public AjaxResult ceshi() {
        List<Map<String, Object>> ccXZxYyLisJgSt = testMapper.getCcXZxYyLisJgSt();
        return AjaxResult.success(ccXZxYyLisJgSt);
    }
    @GetMapping ("/pacs")
    @ApiOperation (value = "测试调用pacs视图数据接口")
    @RepeatSubmit
    public AjaxResult pacs() {
        List<Map<String, Object>> ccXZxYyPacsJgSt = testMapper.getCcXZxYyPacsJgSt();
        List<LtkjExamJcsqd> list = testMapper.getCcXZxYyPacsLtkjExamJcsqd("");
        log.info(list.toString());
        List<LtkjExamJcbgd> list1 = testMapper.getCcXZxYyPacsLtkjExamJcbgd("");
        log.info(list1.toString());
        return AjaxResult.success(ccXZxYyPacsJgSt);
    }
@@ -312,7 +329,7 @@
    public List<CsProVo> getCsProVos(String tjNumber,boolean sfzpacs) {
        List<CsProVo> list = orderRemarkService.cSWebGetProByTjNumAndOrderId(tjNumber,sfzpacs);
        if (null != list && list.size() > 0) {
        if (null != list && !list.isEmpty()) {
            list.sort(new Comparator<CsProVo>() {
                @Override
                public int compare(CsProVo o1, CsProVo o2) {
@@ -667,6 +684,7 @@
                        testMapper.updateDetailByCall(order.getCardId(), String.valueOf(order.getOrderId()), order.getTjNumber(), UserHoder.getLoginUser().getUserId());
                    }
                  //检查
                    orderService.tjLispacstongbujianyi(null,null,null,null);
                    return AjaxResult.success("同步成功");
                }
                return AjaxResult.error("未查到该人员体检记录");
@@ -706,9 +724,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());
                    }
@@ -753,6 +771,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())
@@ -764,10 +783,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", "体检中心");
@@ -819,10 +838,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("检查项目暂时未出结果,请稍后同步!!!");
                                }
@@ -831,7 +851,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("同步成功");
@@ -882,6 +902,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);
@@ -936,7 +957,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());
@@ -945,7 +966,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();
@@ -1202,7 +1223,7 @@
            int num = orderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber);
            if (num > 0) return AjaxResult.error("存在未检或延期项目暂不能生成报告!!!");
        }
        Date date = new Date();
        if (null != tjNumber) {
            Long userId = Long.valueOf(SecurityUtils.getLoginUser().getUserId());
            SysUser sysUser = userService.getById(userId);
@@ -1214,17 +1235,15 @@
                tjOrder.setCheckStatus(checkStatus);
                tjOrder.setStatus(TjConstants.TJ_CHECK);
                tjOrder.setCheckDoctor(sysUser.getNickName());
                tjOrder.setCheckTime(new Date());
                tjOrder.setCheckTime(date);
                tjOrder.setStatus(401);
                tjOrder.setFinishTime(date);
                if (orderService.updateById(tjOrder)) {
                    TjCustomer customer = customerService.getById(tjOrder.getUserId());
                    if (null != customer) {
                        customer.setCusNumber(customer.getCusNumber() + 1);
                        customer.setCardId("0");
                        if (customerService.updateById(customer)) {
//                            LambdaQueryWrapper<TbTransition> wqq = new LambdaQueryWrapper<>();
//                            wqq.eq(TbTransition::getCusId, customer.getCusIdcard());
//                            wqq.eq(TbTransition::getCardId, customer.getCardId());
//                            transitionService.remove(wqq);
                            asyncService.updateCheckType(tjNumber);
                            return AjaxResult.success("操作成功");
                        }
@@ -1372,14 +1391,14 @@
        List<TjOrderDetail> tjOrderDetails = detailService.addHuaYanTable(tjNumber);
        if (null != remarkList && remarkList.size() > 0) {
        if (null != remarkList && !remarkList.isEmpty()) {
            for (TjOrderRemark remark : remarkList) {
                Map<String, Object> parent = new HashMap<>();
                parent.put("checkAdvice", one.getCheckAdvice());
                parent.put("parent", remark.getProName());
                parent.put("parentId", remark.getProId().toString());
                List<TjOrderDetail> dels = new ArrayList<>();
                if (null != tjOrderDetails && tjOrderDetails.size() > 0) {
                if (null != tjOrderDetails && !tjOrderDetails.isEmpty()) {
                    for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
                        if (remark.getProId().equals(tjOrderDetail.getProId())) {
                            String ckfw = tjOrderDetail.getStanId();
@@ -1611,11 +1630,6 @@
    /**
     * 总检修改备注
     *
     * @return
     */
    @GetMapping ("/getzongjianyishengchakanyichangxiangmu")
    @ApiOperation (value = "总检查看异常项目接口")
    public AjaxResult getzongjianyishengchakanyichangxiangmu(@RequestParam String tjNum) {
@@ -1626,7 +1640,7 @@
    }
    private AjaxResult zongjianyishengchakanyichangxiangmu(String tjNumber) {
        asyncService.updateCheckType(tjNumber);
//        asyncService.updateCheckType(tjNumber);
        TjOrder one = orderService.getOrderByTjNum(tjNumber);
        if (one == null) {
@@ -1642,11 +1656,19 @@
                    List<TjOrderDetail> dels = new ArrayList<>();
                    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);
                                }
                            }
                            dels.add(tjOrderDetail);
                        }
                    }
                    if(!dels.isEmpty()){
                        parent.put("proName",remark.getProName());
                        parent.put("jyjc",remark.getJyjc());
                        parent.put("sone",dels);
                        list.add(parent);
                    }
@@ -1659,4 +1681,20 @@
        return AjaxResult.success("该人员没有体检项目数据!");
    }
    @GetMapping ("/chushenyemianchakanxiangmujieguo")
    @ApiOperation (value = "初审页面查看项目结果接口")
    public AjaxResult chushenyemianchakanxiangmujieguo(@RequestParam String proId,@RequestParam String tjNum) {
        List<Map<String,Object>> maps = projectService.tjCsXmjgcx(tjNum,proId);
        return AjaxResult.success(maps);
    }
    @GetMapping ("/panduaniscunzaiweijian")
    @ApiOperation (value = "初审页面查看项目前判断是否全部未检接口")
    public AjaxResult panduaniscunzaiweijian(@RequestParam String tjNum) {
        int a = orderRemarkService.panduaniscunzaiweijian(tjNum);
        return AjaxResult.success(a);
    }
}