评论--区分角色

This commit is contained in:
zhn
2022-05-05 14:05:18 +08:00
parent f9fa84d82c
commit c0e05cba0a
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.jero.common.system.vo.LoginUser;
import com.jero.modules.project.entity.ProjectCommentEO;
import com.jero.modules.project.entity.ProjectReplyEO;
import com.jero.modules.project.enums.ProjectRoleEnum;
import com.jero.modules.project.mapper.ProjectCommentEOMapper;
import com.jero.modules.project.service.IProjectCommentEOService;
import com.jero.modules.project.service.IProjectReplyEOService;
@@ -30,6 +31,8 @@ public class ProjectCommentEOServiceImpl extends ServiceImpl<ProjectCommentEOMap
@Autowired
private IProjectReplyEOService iProjectReplyEOService;
@Autowired
private ProjectLawsInventoryEOServiceImpl projectLawsInventoryEOService;
/**
* 保存
*
@@ -103,9 +106,17 @@ public class ProjectCommentEOServiceImpl extends ServiceImpl<ProjectCommentEOMap
@Override
public List<ProjectCommentVO> getInfoList(ProjectCommentEO projectCommentEOTemp) {
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
//评论的内容
LambdaQueryWrapper<ProjectCommentEO> wrapper = new LambdaQueryWrapper<>();
wrapper.in(ProjectCommentEO::getCreateBy,sysUser.getUsername()).in(ProjectCommentEO::getProjectLibraryId,projectCommentEOTemp.getProjectLibraryId());
//验证当前用户在该项目中是什么角色
int isProjectRole = projectLawsInventoryEOService.checkUserRole(projectCommentEOTemp.getProjectLibraryId(), sysUser.getId(), "");
if(!ProjectRoleEnum.STUDIO_ENGINEER.getValue().equals(String.valueOf(isProjectRole))){
//studio工程师(某一条项目中所有的评论和回复)
//其他角色(只能看自己评论,自己回复和studio工程师回复的)
wrapper.in(ProjectCommentEO::getCreateBy,sysUser.getUsername());
}
//评论的内容
wrapper.in(ProjectCommentEO::getProjectLibraryId,projectCommentEOTemp.getProjectLibraryId());
wrapper.orderByDesc(ProjectCommentEO::getCreateTime);
List<ProjectCommentEO> projectCommentEOS = this.list(wrapper);
List<String> projectCommentIdList = projectCommentEOS.stream().map(ProjectCommentEO::getId).collect(Collectors.toList());