fix(task): 修复任务评分权限控制问题
parent
b20c216216
commit
3ebbdb0859
|
|
@ -60,17 +60,22 @@ public class ProjectTaskQueryExe {
|
|||
* 1. 股份端看所有数据,企业端只能执行单位是自己的数据
|
||||
* 2. 主账号可以修改企业下创建的所有数据,个人账号,只能修改自己创建的数据
|
||||
*/
|
||||
examCenterCOS.forEach(videoCoursewareCO -> {
|
||||
examCenterCOS.forEach(info -> {
|
||||
//如果是企业,可以看本企业下所有的,如果是个人,只能看个人的,判断登录的账号是企业主账号还是个人
|
||||
Boolean isCorpAccount = corpInfoRepository.checkCorp();
|
||||
// 企业账户:检查租户ID匹配
|
||||
if (isCorpAccount && AuthContext.getTenantId().equals(videoCoursewareCO.getTenantId())) {
|
||||
videoCoursewareCO.setIsUserCreate(true);
|
||||
if (isCorpAccount && AuthContext.getTenantId().equals(info.getTenantId())) {
|
||||
info.setIsUserCreate(true);
|
||||
return;
|
||||
}
|
||||
// 个人账户:检查创建者ID匹配
|
||||
if (!isCorpAccount && videoCoursewareCO.getCreateId().equals(AuthContext.getUserId())) {
|
||||
videoCoursewareCO.setIsUserCreate(true);
|
||||
if (!isCorpAccount && info.getCreateId().equals(AuthContext.getUserId())) {
|
||||
info.setIsUserCreate(true);
|
||||
}
|
||||
|
||||
//只有组长和企业主账号可以看到 指定课题组人员按钮
|
||||
if (isCorpAccount || AuthContext.getUserId().equals(info.getTeamUserId())){
|
||||
info.setIsDomainGroupUser(true);
|
||||
}
|
||||
});
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
package com.zcloud.domain.dto.clientobject;
|
||||
|
||||
import com.alibaba.cola.dto.ClientObject;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
|
@ -71,9 +72,14 @@ public class ProjectTaskCO implements Serializable {
|
|||
|
||||
private Long tenantId;
|
||||
|
||||
|
||||
@ApiModelProperty(value = "领域组组长id")
|
||||
@TableField(exist = false)
|
||||
private Long teamUserId;
|
||||
|
||||
@ApiModelProperty(value = "是否是当前用户创建的数据")
|
||||
private Boolean isUserCreate = false;
|
||||
|
||||
@ApiModelProperty(value = "是否是指定课题组人员按钮")
|
||||
private Boolean isDomainGroupUser = false;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -71,6 +71,9 @@ public class ProjectTaskDO extends BaseDO {
|
|||
@ApiModelProperty(value = "领域组名称")
|
||||
@TableField(exist = false)
|
||||
private String domainGroupName;
|
||||
@ApiModelProperty(value = "领域组组长id")
|
||||
@TableField(exist = false)
|
||||
private Long teamUserId;
|
||||
|
||||
public ProjectTaskDO(String projectTaskId) {
|
||||
this.projectTaskId = projectTaskId;
|
||||
|
|
|
|||
|
|
@ -51,6 +51,8 @@ public class ProjectTaskRepositoryImpl extends BaseRepositoryImpl<ProjectTaskMap
|
|||
}
|
||||
IPage<ProjectTaskDO> iPage = new Query<ProjectTaskDO>().getPage(params);
|
||||
IPage<ProjectTaskDO> result = projectTaskMapper.listPage(iPage, params,menuPerms);
|
||||
|
||||
|
||||
return PageHelper.pageToResponse(result, result.getRecords());
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
<mapper namespace="com.zcloud.domain.persistence.mapper.ProjectTaskMapper">
|
||||
<select id="listPage" resultType="com.zcloud.domain.persistence.dataobject.ProjectTaskDO">
|
||||
select pt.*, c.corp_name as executeCorpinfoName, d.name as masterDepartmentName,dg.domain_group_name as domainGroupName
|
||||
select pt.*, c.corp_name as executeCorpinfoName, d.name as masterDepartmentName,dg.domain_group_name as domainGroupName,dg.team_user_id
|
||||
from project_task pt
|
||||
left join domain_group dg on pt.domain_group_id = dg.domain_group_id and dg.delete_enum = 'false'
|
||||
left join domain_department dd
|
||||
|
|
|
|||
Loading…
Reference in New Issue