无关风月
2025-08-06 053f6187b5f6cda1725ed63df8a8766b5976fb53
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TStrainValidationDataController.java
@@ -49,15 +49,46 @@
    private TStrainValidationDataService strainValidationDataService;
    @Resource
    private TStrainValidationDataDetailService strainValidationDataDetailService;
    @Resource
    private ISysUserService sysUserService;
    /**
     * 菌种验证数据资料分页列表
     */
    //@PreAuthorize("@ss.hasPermi('system:strainValidationData:list')")
    @ApiOperation(value = "菌种验证数据资料-获取菌种验证数据资料分页列表",response = TStrainValidationDataQuery.class)
    @PostMapping(value = "/api/t-strain-validation-data/pageList")
    public R<PageInfo<TStrainValidationDataVO>> pageList(@RequestBody String param) {
        TStrainValidationDataQuery query = JSON.parseObject(param, TStrainValidationDataQuery.class);
        SysUser sysUser = sysUserService.selectUserById(tokenService.getLoginUser().getUserId());
        if (sysUser.getRoleType().equals("2")){
            List<String> allProjectIds = projectTeamStaffService.lambdaQuery().eq(TProjectTeamStaff::getUserId, tokenService.getLoginUser().getUserId())
                    .list().stream().map(TProjectTeamStaff::getTeamId).collect(Collectors.toList());
            if (!allProjectIds.isEmpty()){                List<String> projectIds = projectTeamService.lambdaQuery().in(TProjectTeam::getId, allProjectIds)
                    .list().stream().map(TProjectTeam::getId).collect(Collectors.toList());
                if (projectIds.isEmpty()){
                    return R.ok(new PageInfo<>());
                }
                query.setProjectIds(projectIds);
            }else {
                return R.ok(new PageInfo<>());
            }
        }else if (!sysUser.getRoleType().equals("1")){
            List<String> allProjectIds = projectTeamStaffService.lambdaQuery().eq(TProjectTeamStaff::getUserId, tokenService.getLoginUser().getUserId())
                    .list().stream().map(TProjectTeamStaff::getTeamId).collect(Collectors.toList());
            if (!allProjectIds.isEmpty()){
                List<String> projectIds = projectTeamService.lambdaQuery().in(TProjectTeam::getId, allProjectIds)
                        .eq(TProjectTeam::getStatus, 1).list().stream().map(TProjectTeam::getId).collect(Collectors.toList());
                if (projectIds.isEmpty()){
                    return R.ok(new PageInfo<>());
                }
                query.setProjectIds(projectIds);
            }else {
                return R.ok(new PageInfo<>());
            }
        }
        return R.ok(strainValidationDataService.pageList(query));
    }
    /**