feat(video-courseware): 添加视频课件查询权限控制日志记录

dev
zhaokai 2026-03-09 14:17:37 +08:00
parent e0b811f04d
commit d46e23f9cf
5 changed files with 17 additions and 7 deletions

View File

@ -82,8 +82,7 @@ public class CurriculumQueryExe {
return; return;
} }
// 个人账户检查创建者ID匹配 // 个人账户检查创建者ID匹配
if ((!isCorpAccount || (AuthContext.getRoleIds()!=null && AuthContext.getRoleIds().contains(2008483105201106946L))) && videoCoursewareCO.getCreateId().equals(AuthContext.getUserId())) { if (!isCorpAccount && (videoCoursewareCO.getCreateId().equals(AuthContext.getUserId())||(AuthContext.getRoleIds()!=null && AuthContext.getRoleIds().contains(2008483105201106946L)))) {
videoCoursewareCO.setIsUserCreate(true); videoCoursewareCO.setIsUserCreate(true);
} }
}); });

View File

@ -74,7 +74,7 @@ public class ExamPaperQueryExe {
} }
// 个人账户检查创建者ID匹配 // 个人账户检查创建者ID匹配
if ((!isCorpAccount || (AuthContext.getRoleIds()!=null && AuthContext.getRoleIds().contains(2008483105201106946L))) && videoCoursewareCO.getCreateId().equals(AuthContext.getUserId())) { if (!isCorpAccount && (videoCoursewareCO.getCreateId().equals(AuthContext.getUserId())||(AuthContext.getRoleIds()!=null && AuthContext.getRoleIds().contains(2008483105201106946L)))) {
videoCoursewareCO.setIsUserCreate(true); videoCoursewareCO.setIsUserCreate(true);
} }

View File

@ -16,6 +16,7 @@ import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.alibaba.cola.dto.PageResponse; import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.SingleResponse; import com.alibaba.cola.dto.SingleResponse;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
@ -33,6 +34,7 @@ import java.util.stream.Collectors;
*/ */
@Component @Component
@AllArgsConstructor @AllArgsConstructor
@Slf4j
public class VideoCoursewareQueryExe { public class VideoCoursewareQueryExe {
private final VideoCoursewareRepository videoCoursewareRepository; private final VideoCoursewareRepository videoCoursewareRepository;
private final VideoCoursewareCoConvertor videoCoursewareCoConvertor; private final VideoCoursewareCoConvertor videoCoursewareCoConvertor;
@ -64,18 +66,26 @@ public class VideoCoursewareQueryExe {
return PageResponse.of(null, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex()); return PageResponse.of(null, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
} }
List<VideoCoursewareCO> videoCoursewareCOList = videoCoursewareCoConvertor.converDOsToCOs(pageResponse.getData()); List<VideoCoursewareCO> videoCoursewareCOList = videoCoursewareCoConvertor.converDOsToCOs(pageResponse.getData());
log.info("当前用户权限集合:{}", AuthContext.getRoleIds());
videoCoursewareCOList.forEach(videoCoursewareCO -> { videoCoursewareCOList.forEach(videoCoursewareCO -> {
//如果是企业,可以看本企业下所有的,如果是个人,只能看个人的,判断登录的账号是企业主账号还是个人 //如果是企业,可以看本企业下所有的,如果是个人,只能看个人的,判断登录的账号是企业主账号还是个人
Boolean isCorpAccount = corpInfoRepository.checkCorp(); Boolean isCorpAccount = corpInfoRepository.checkCorp();
log.info("当前用户是:{}", isCorpAccount ? "企业" : "个人");
log.info("当前用户ttenantId:{}", AuthContext.getTenantId());
log.info("当前用户userId:{}", AuthContext.getUserId());
log.info("当前用户configinfoId:{}", videoCoursewareCO.getCorpinfoId());
// 企业账户检查租户ID匹配 ,获取权限是体液主账号 // 企业账户检查租户ID匹配 ,获取权限是体液主账号
log.info("企业判断:{}",(isCorpAccount) && AuthContext.getTenantId().equals(videoCoursewareCO.getCorpinfoId()));
if ((isCorpAccount) && AuthContext.getTenantId().equals(videoCoursewareCO.getCorpinfoId())) { if ((isCorpAccount) && AuthContext.getTenantId().equals(videoCoursewareCO.getCorpinfoId())) {
videoCoursewareCO.setIsUserCreate(true); videoCoursewareCO.setIsUserCreate(true);
return; return;
} }
// 个人账户检查创建者ID匹配 // 个人账户检查创建者ID匹配
if ((!isCorpAccount || (AuthContext.getRoleIds()!=null && AuthContext.getRoleIds().contains(2008483105201106946L))) && videoCoursewareCO.getCreateId().equals(AuthContext.getUserId())) { log.info("个人判断:{}",(videoCoursewareCO.getCreateId().equals(AuthContext.getUserId())||(AuthContext.getRoleIds()!=null && AuthContext.getRoleIds().contains(2008483105201106946L))));
log.info("个人判断:{}",((AuthContext.getRoleIds()!=null && AuthContext.getRoleIds().contains(2008483105201106946L))) );
log.info("个人判断:{}",videoCoursewareCO.getCreateId().equals(AuthContext.getUserId()));
if (!isCorpAccount && (videoCoursewareCO.getCreateId().equals(AuthContext.getUserId())||(AuthContext.getRoleIds()!=null && AuthContext.getRoleIds().contains(2008483105201106946L)))) {
videoCoursewareCO.setIsUserCreate(true); videoCoursewareCO.setIsUserCreate(true);
return; return;
} }

View File

@ -93,7 +93,8 @@ public class ClassQueryExe {
classCO.setIsUserCreate(true); classCO.setIsUserCreate(true);
} }
// 个人账户检查创建者ID匹配 // 个人账户检查创建者ID匹配
if ((!checkCorp ||(AuthContext.getRoleIds()!=null && AuthContext.getRoleIds().contains(2008483105201106946L))) && (teacherInfoByUserId != null && teacherInfoByUserId.getUserId().equals(classCO.getCreateId()))) { if (!checkCorp && ((teacherInfoByUserId != null && teacherInfoByUserId.getUserId().equals(classCO.getCreateId())) || (AuthContext.getRoleIds()!=null && AuthContext.getRoleIds().contains(2008483105201106946L)))) {
classCO.setIsUserCreate(true); classCO.setIsUserCreate(true);
} }
/* /*

View File

@ -152,7 +152,7 @@ public class CurriculumUpdateExe {
errorList.add(curriculumDO.getCurriculumName()+"课程不是本企业的"); errorList.add(curriculumDO.getCurriculumName()+"课程不是本企业的");
} }
// 个人账户检查创建者ID匹配 // 个人账户检查创建者ID匹配
if ((!isCorpAccount || (AuthContext.getRoleIds()!=null && AuthContext.getRoleIds().contains(2008483105201106946L))) && curriculumDO.getCreateId().equals(AuthContext.getUserId())) { if (!isCorpAccount && (curriculumDO.getCreateId().equals(AuthContext.getUserId())||(AuthContext.getRoleIds()!=null && AuthContext.getRoleIds().contains(2008483105201106946L)))) {
errorList.add(curriculumDO.getCurriculumName()+"课程不是本人创建的"); errorList.add(curriculumDO.getCurriculumName()+"课程不是本人创建的");
} }