zjh
2024-12-16 8ee03ce807822e08ab7daebddf88f4cd79993fce
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java
@@ -63,7 +63,7 @@
 */
@RestController
@RequestMapping ("/check")
@Api (tags = "总检医师相关接口")
@Api (tags = "AAAAAAAAAAAA总检医师相关接口")
@Slf4j
public class TjCheckController {
    @Resource
@@ -120,28 +120,21 @@
    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(String s) {
    @GetMapping ("/getOperationPermissionsByTjNum")
    @ApiOperation (value = "(初审页面  和 医生页面)根据体检号获取是否可操作权限接口  true可操作  反之不可")
    public AjaxResult getOperationPermissionsByTjNum(@ApiParam (value = "体检号") @RequestParam String tjNumber) {
        TjOrder order = orderService.getOrderByTjNum(tjNumber);
        if (null != order) {
            Integer status = order.getStatus();
            if (status < 300) {
                return AjaxResult.success(true);
            }
            if (status > 300) {
                return AjaxResult.success(false);
            }
        }
        return AjaxResult.success(false);
        Map<String,Object> map=new HashMap<>();
        List<List<?>> tjpled = testMapper.tjplUpdateDetatilByVi(map);
        log.info(tjpled.toString());
        Integer object = (Integer) map.get("total");
        return AjaxResult.success(object);
    }
@@ -171,6 +164,22 @@
        log.info(list1.toString());
        return AjaxResult.success(ccXZxYyPacsJgSt);
    }
    @GetMapping ("/getOperationPermissionsByTjNum")
    @ApiOperation (value = "(初审页面  和 医生页面)根据体检号获取是否可操作权限接口  true可操作  反之不可")
    public AjaxResult getOperationPermissionsByTjNum(@ApiParam (value = "体检号") @RequestParam String tjNumber) {
        TjOrder order = orderService.getOrderByTjNum(tjNumber);
        if (null != order) {
            Integer status = order.getStatus();
            if (status < 300) {
                return AjaxResult.success(true);
            }
            if (status > 300) {
                return AjaxResult.success(false);
            }
        }
        return AjaxResult.success(false);
    }
@@ -312,7 +321,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) {
@@ -631,7 +640,7 @@
                        }
                        return AjaxResult.success("同步成功");
                    }
                    else if(null !=sfkqdshitulianjie && sfkqdshitulianjie.equals("Y")){
                    else if(null !=sfkqdshitulianjie && sfkqdshitulianjie.equalsIgnoreCase("Y")){
                        List<LtkjHysqd> hysqdList = testMapper.getCcXZxYyLtkjHysqdByLisVi(order.getTjNumber());
                        if(null != hysqdList && !hysqdList.isEmpty()){
                            for (LtkjHysqd hysqd : hysqdList) {
@@ -667,6 +676,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("未查到该人员体检记录");
@@ -1197,8 +1207,12 @@
                                      @ApiParam (value = "总检建议") @RequestParam (required = false) String advice,
                                      @ApiParam (value = "审核状态0待审核1已审核") @RequestParam Integer checkStatus) {
        int num = orderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber);
        if (num > 0) return AjaxResult.error("有延期项目暂不能生成报告!!!");
        String config = configService.selectConfigByKey("sfjcwjhyqxm");
        if(null != config && config.equalsIgnoreCase("Y")){
            int num = orderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber);
            if (num > 0) return AjaxResult.error("存在未检或延期项目暂不能生成报告!!!");
        }
        if (null != tjNumber) {
            Long userId = Long.valueOf(SecurityUtils.getLoginUser().getUserId());
            SysUser sysUser = userService.getById(userId);
@@ -1368,14 +1382,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();
@@ -1456,7 +1470,7 @@
        List<TjOrderDetail> tjOrderDetails = detailService.addHuaYanAndCgTable(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());
@@ -1465,7 +1479,7 @@
                parent.put("xmlb", remark.getXmlb());
                parent.put("", remark.getXmlb());
                List<TjOrderDetail> dels = new ArrayList<>();
                if (null != tjOrderDetails && tjOrderDetails.size() > 0) {
                if (null != tjOrderDetails && !tjOrderDetails.isEmpty()) {
                    for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
                        if (remark.getProsId().equals(tjOrderDetail.getProsId())) {
                            String ckfw = tjOrderDetail.getStanId();
@@ -1491,7 +1505,7 @@
                                        }else {
                                            tjOrderDetail.setYcbz("");
                                        }
                                        if (null != tjOrderDetail.getYcbz() && !tjOrderDetail.getYcbz().equals("")) {
                                        if (null != tjOrderDetail.getYcbz() && !tjOrderDetail.getYcbz().isEmpty()) {
                                            tjOrderDetail.setProResult(tjOrderDetail.getProResult() + " [" + tjOrderDetail.getYcbz() + "]");
                                        }
                                    }else {
@@ -1503,7 +1517,6 @@
                                        if (tjOrderDetail.getProResult() != null && tjOrderDetail.getProResult().contains("阳")) tjOrderDetail.setYcbz("↑");
                                    }
                                } catch (NumberFormatException ignored) {
                                    ignored.printStackTrace();
                                }
                            }else {
                                tjOrderDetail.setYcbz("");
@@ -1520,7 +1533,7 @@
                    } else {
                        parent.put("parentAdvice", null);
                    }
                    if (dels.size() == 0) {
                    if (dels.isEmpty()) {
                        continue;
                    }
                    parent.put("sons", dels);
@@ -1606,4 +1619,73 @@
        return AjaxResult.success(map);
    }
    @GetMapping ("/getzongjianyishengchakanyichangxiangmu")
    @ApiOperation (value = "总检查看异常项目接口")
    public AjaxResult getzongjianyishengchakanyichangxiangmu(@RequestParam String tjNum) {
        if (StrUtil.isNotBlank(tjNum)) {
            return zongjianyishengchakanyichangxiangmu(tjNum);
        }
        return AjaxResult.error();
    }
    private AjaxResult zongjianyishengchakanyichangxiangmu(String tjNumber) {
//        asyncService.updateCheckType(tjNumber);
        TjOrder one = orderService.getOrderByTjNum(tjNumber);
        if (one == null) {
            return AjaxResult.error("暂无数据!!");
        }
        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()){
                                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);
                    }
                } else {
                    return AjaxResult.success("该人员无异常项目");
                }
            }
            return AjaxResult.success(list);
        }
        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);
    }
}