feat: (feature/REQ-3010) 迁移pudge saasfeature

相关接口
This commit is contained in:
lilong 2024-10-16 10:16:34 +08:00
parent c666edfaa6
commit 98f11500ba
15 changed files with 410 additions and 2 deletions

View File

@ -4,6 +4,8 @@ import cn.axzo.framework.domain.web.result.ApiResult;
import cn.axzo.tyr.client.model.permission.ApplicationFeatureRes; import cn.axzo.tyr.client.model.permission.ApplicationFeatureRes;
import cn.axzo.tyr.client.model.permission.GetInfoByMicroAppItemIdReq; import cn.axzo.tyr.client.model.permission.GetInfoByMicroAppItemIdReq;
import cn.axzo.tyr.client.model.permission.SaasFeatureRes; import cn.axzo.tyr.client.model.permission.SaasFeatureRes;
import cn.axzo.tyr.client.model.req.GetByIdsReq;
import cn.axzo.tyr.client.model.res.SaasFeatureBO;
import cn.azxo.framework.common.model.CommonResponse; import cn.azxo.framework.common.model.CommonResponse;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
@ -28,4 +30,7 @@ public interface SaasFeatureApi {
@PostMapping("/api/saasFeature/getInfoByMicroAppItemId") @PostMapping("/api/saasFeature/getInfoByMicroAppItemId")
ApiResult<List<SaasFeatureRes>> getInfoByMicroAppItemId(@RequestBody GetInfoByMicroAppItemIdReq req); ApiResult<List<SaasFeatureRes>> getInfoByMicroAppItemId(@RequestBody GetInfoByMicroAppItemIdReq req);
@PostMapping("/api/saasFeature/getByIds")
ApiResult<List<SaasFeatureBO>> getByIds(@RequestBody GetByIdsReq req);
} }

View File

@ -2,7 +2,11 @@ package cn.axzo.tyr.client.feign;
import cn.axzo.framework.domain.web.result.ApiPageResult; import cn.axzo.framework.domain.web.result.ApiPageResult;
import cn.axzo.framework.domain.web.result.ApiResult; import cn.axzo.framework.domain.web.result.ApiResult;
import cn.axzo.tyr.client.model.permission.ListByWorkspaceIdAndOuIdReq;
import cn.axzo.tyr.client.model.permission.ListFeatureIdByGroupIdsReq;
import cn.axzo.tyr.client.model.req.QuerySaasPermissionGroupReq; import cn.axzo.tyr.client.model.req.QuerySaasPermissionGroupReq;
import cn.axzo.tyr.client.model.res.SaasPermissionGroupRes;
import cn.axzo.tyr.client.model.res.SaasPgroupPermissionRelationRes;
import cn.axzo.tyr.client.model.vo.DeletePermissionGroupVO; import cn.axzo.tyr.client.model.vo.DeletePermissionGroupVO;
import cn.axzo.tyr.client.model.vo.SaasPermissionGroupVO; import cn.axzo.tyr.client.model.vo.SaasPermissionGroupVO;
import cn.axzo.tyr.client.model.vo.SaveOrUpdatePermissionGroupVO; import cn.axzo.tyr.client.model.vo.SaveOrUpdatePermissionGroupVO;
@ -52,4 +56,10 @@ public interface SaasPermissionGroupApi {
@PostMapping("/api/saasPermissionGoup/deletePermissionGroupSpecial") @PostMapping("/api/saasPermissionGoup/deletePermissionGroupSpecial")
ApiResult<Void> deletePermissionGroupSpecial(@RequestBody @Valid DeletePermissionGroupVO group); ApiResult<Void> deletePermissionGroupSpecial(@RequestBody @Valid DeletePermissionGroupVO group);
@PostMapping("/api/saasPermissionGoup/listByWorkspaceIdAndOuId")
ApiResult<List<SaasPermissionGroupRes>> listByWorkspaceIdAndOuId(@RequestBody @Valid ListByWorkspaceIdAndOuIdReq group);
@PostMapping("/api/saasPermissionGoup/listFeatureIdByGroupIds")
ApiResult<List<SaasPgroupPermissionRelationRes>> listFeatureIdByGroupIds(@RequestBody @Valid ListFeatureIdByGroupIdsReq group);
} }

View File

@ -1,10 +1,17 @@
package cn.axzo.tyr.client.feign; package cn.axzo.tyr.client.feign;
import cn.axzo.framework.domain.web.result.ApiResult;
import cn.axzo.tyr.client.model.req.GetByIdsReq;
import cn.axzo.tyr.client.model.req.WorkspaceUpdateUserRoleDTO;
import cn.axzo.tyr.client.model.res.SaasFeatureBO;
import cn.azxo.framework.common.model.CommonResponse; import cn.azxo.framework.common.model.CommonResponse;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/** /**
* @author yanglin * @author yanglin
*/ */
@ -17,4 +24,6 @@ public interface SaasRoleUserRelationApi {
@PostMapping("api/roleUserRelation/deleteByPersonId") @PostMapping("api/roleUserRelation/deleteByPersonId")
CommonResponse<Boolean> deleteByPersonId(@RequestParam("personId") Long personId); CommonResponse<Boolean> deleteByPersonId(@RequestParam("personId") Long personId);
@PostMapping("/api/roleUserRelation/updateWorkspaceUserRoles")
ApiResult<Boolean> updateWorkspaceUserRoles(@RequestBody WorkspaceUpdateUserRoleDTO req);
} }

View File

@ -0,0 +1,17 @@
package cn.axzo.tyr.client.model.permission;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ListByWorkspaceIdAndOuIdReq {
private Long workspaceId;
private Long ouId;
}

View File

@ -0,0 +1,17 @@
package cn.axzo.tyr.client.model.permission;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ListFeatureIdByGroupIdsReq {
private List<Long> groupIds;
}

View File

@ -0,0 +1,17 @@
package cn.axzo.tyr.client.model.req;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class GetByIdsReq {
private List<Long> ids;
}

View File

@ -0,0 +1,106 @@
package cn.axzo.tyr.client.model.res;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.time.LocalDateTime;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SaasFeatureBO {
/**
* 适用单位类型
*/
private Long fitOuTypeBit;
/**
* id
*/
private Long id;
/**
* 名称
*/
private String featureName;
/**
* 描述
*/
private String description;
/**
* code
*/
private String featureCode;
/**
* 图标地址
*/
private String icon;
/**
* 菜单上级id
*/
private Long parentId;
/**
* 链接地址
*/
private String linkUrl;
/**
* 1:CMS 2:小程序 4:原生
*/
private Integer linkType;
/**
* 扩展字段
*/
private String linkExt;
/**
* 小程序id 关联micro_app_item id
*/
private String microAppItemId;
/**
* 路径
*/
private String path;
/**
* 排序
*/
private Integer sort;
/**
* terminal
*/
private String terminal;
/**
* 类型 0.模块 1.菜单 2页面 3功能
*/
private Integer featureType;
/**
* 是否需要权限 1.需要 2:不需要
*/
private Integer needAuth;
/**
* 是否删除
*/
private Long isDelete;
/**
* 创建人id
*/
private Long createBy;
/**
* 创建时间
*/
private LocalDateTime createAt;
/**
* 更新时间
*/
private LocalDateTime updateAt;
/**
* 修改人id
*/
private Long updateBy;
private Long productId;
private String productName;
private String legacyLayout;
}

View File

@ -0,0 +1,88 @@
package cn.axzo.tyr.client.model.res;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SaasPermissionGroupRes {
private Long id;
/**
* 创建时间
*/
private Date createAt;
/**
* 修改时间
*/
private Date updateAt;
/**
* 是否删除 0正常1删除
*/
private Long isDelete = 0L;
/**
* 权限集名称
*/
private String name;
/**
* 权限集描述
*/
private String description;
/**
* 1总包企业产品 2:总包项目产品 3:政企产品 4:分包企业产品 5:班组产品
*/
private Integer productType;
/**
* 权限集类型 1查看 2操作管理
*/
private Integer legacyType;
/**
* 创建者
*/
private Long createBy;
/**
* 更新者
*/
private Long updateBy;
/**
* 是否自定义 0:不是 1: 如果为1 custom_space_id 不能为空
*/
private Integer isCustom;
/**
* 工作台Id
*/
private Long customSpaceId;
/**
* 适用单位类型 1:总包 2:建设单位 3:监理单位 4:劳务分包 5:专业分包 6:班组 0都可以用
*/
private Long fitOuTypeBit;
/**
* 适用节点类型 1:部门 2:班组 3:小组
*/
private Long fitOuNodeTypeBit;
/**
* 单位ID
*/
private Long ouId;
/**
* 功能分组ID
*/
private Long productCategoryId;
}

View File

@ -0,0 +1,51 @@
package cn.axzo.tyr.client.model.res;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SaasPgroupPermissionRelationRes {
private Long id;
/**
* 创建时间
*/
private Date createAt;
/**
* 修改时间
*/
private Date updateAt;
/**
* 是否删除 0正常1删除
*/
private Long isDelete = 0L;
/**
* 权限集id
*/
private Long groupId;
/**
* 功能id
*/
private Long featureId;
/**
* 创建者
*/
private Long createBy;
/**
* 更新者
*/
private Long updateBy;
}

View File

@ -1,14 +1,17 @@
package cn.axzo.tyr.server.controller.permission; package cn.axzo.tyr.server.controller.permission;
import cn.axzo.basics.common.BeanMapper;
import cn.axzo.framework.domain.web.result.ApiResult; import cn.axzo.framework.domain.web.result.ApiResult;
import cn.axzo.pudge.core.persistence.BaseEntity;
import cn.axzo.tyr.client.feign.SaasFeatureApi; import cn.axzo.tyr.client.feign.SaasFeatureApi;
import cn.axzo.tyr.client.model.permission.ApplicationFeatureRes; import cn.axzo.tyr.client.model.permission.ApplicationFeatureRes;
import cn.axzo.tyr.client.model.permission.GetInfoByMicroAppItemIdReq; import cn.axzo.tyr.client.model.permission.GetInfoByMicroAppItemIdReq;
import cn.axzo.tyr.client.model.permission.SaasFeatureRes; import cn.axzo.tyr.client.model.permission.SaasFeatureRes;
import cn.axzo.tyr.client.model.req.GetByIdsReq;
import cn.axzo.tyr.client.model.res.SaasFeatureBO;
import cn.axzo.tyr.server.repository.dao.SaasFeatureDao; import cn.axzo.tyr.server.repository.dao.SaasFeatureDao;
import cn.axzo.tyr.server.repository.entity.SaasFeature; import cn.axzo.tyr.server.repository.entity.SaasFeature;
import cn.azxo.framework.common.model.CommonResponse; import cn.azxo.framework.common.model.CommonResponse;
import com.google.common.collect.Lists;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
@ -106,4 +109,13 @@ public class SaasFeatureApiImpl implements SaasFeatureApi {
return ApiResult.ok(result); return ApiResult.ok(result);
} }
@Override
public ApiResult<List<SaasFeatureBO>> getByIds(GetByIdsReq req) {
if (CollectionUtils.isEmpty(req.getIds())) {
return ApiResult.ok(Lists.newArrayList());
}
List<SaasFeature> list = saasFeatureDao.lambdaQuery().in(SaasFeature::getId, req.getIds()).list();
return ApiResult.ok(BeanMapper.mapList(list, SaasFeatureBO.class));
}
} }

View File

@ -1,6 +1,8 @@
package cn.axzo.tyr.server.controller.permission; package cn.axzo.tyr.server.controller.permission;
import cn.axzo.framework.domain.web.result.ApiResult;
import cn.axzo.tyr.client.feign.SaasRoleUserRelationApi; import cn.axzo.tyr.client.feign.SaasRoleUserRelationApi;
import cn.axzo.tyr.client.model.req.WorkspaceUpdateUserRoleDTO;
import cn.axzo.tyr.server.service.SaasRoleUserRelationService; import cn.axzo.tyr.server.service.SaasRoleUserRelationService;
import cn.azxo.framework.common.model.CommonResponse; import cn.azxo.framework.common.model.CommonResponse;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
@ -21,4 +23,9 @@ public class SaasRoleUserRelationApiImpl implements SaasRoleUserRelationApi {
saasRoleUserRelationService.deleteByPersonId(personId)); saasRoleUserRelationService.deleteByPersonId(personId));
} }
@Override
public ApiResult<Boolean> updateWorkspaceUserRoles(WorkspaceUpdateUserRoleDTO req) {
return ApiResult.ok(saasRoleUserRelationService.updateWorkspaceUserRoles(req));
}
} }

View File

@ -1,12 +1,17 @@
package cn.axzo.tyr.server.controller.role; package cn.axzo.tyr.server.controller.role;
import cn.axzo.basics.common.constant.enums.TableIsDeleteEnum;
import cn.axzo.basics.common.exception.ServiceException; import cn.axzo.basics.common.exception.ServiceException;
import cn.axzo.framework.domain.page.PageResp; import cn.axzo.framework.domain.page.PageResp;
import cn.axzo.framework.domain.web.result.ApiPageResult; import cn.axzo.framework.domain.web.result.ApiPageResult;
import cn.axzo.framework.domain.web.result.ApiResult; import cn.axzo.framework.domain.web.result.ApiResult;
import cn.axzo.tyr.client.feign.SaasPermissionGroupApi; import cn.axzo.tyr.client.feign.SaasPermissionGroupApi;
import cn.axzo.tyr.client.model.permission.ListByWorkspaceIdAndOuIdReq;
import cn.axzo.tyr.client.model.permission.ListFeatureIdByGroupIdsReq;
import cn.axzo.tyr.client.model.req.QuerySaasPermissionGroupReq; import cn.axzo.tyr.client.model.req.QuerySaasPermissionGroupReq;
import cn.axzo.tyr.client.model.res.SaasPermissionGroupRes;
import cn.axzo.tyr.client.model.res.SaasPgroupPermissionRelationRes;
import cn.axzo.tyr.client.model.vo.DeletePermissionGroupVO; import cn.axzo.tyr.client.model.vo.DeletePermissionGroupVO;
import cn.axzo.tyr.client.model.vo.SaasPermissionGroupVO; import cn.axzo.tyr.client.model.vo.SaasPermissionGroupVO;
import cn.axzo.tyr.client.model.vo.SaveOrUpdatePermissionGroupVO; import cn.axzo.tyr.client.model.vo.SaveOrUpdatePermissionGroupVO;
@ -14,15 +19,20 @@ import cn.axzo.tyr.client.model.vo.SavePermissionGroupPPVO;
import cn.axzo.tyr.server.repository.dao.SaasPermissionGroupDao; import cn.axzo.tyr.server.repository.dao.SaasPermissionGroupDao;
import cn.axzo.tyr.server.repository.dao.SaasPermissionGroupScopeDao; import cn.axzo.tyr.server.repository.dao.SaasPermissionGroupScopeDao;
import cn.axzo.tyr.server.repository.dao.SaasPgroupPermissionRelationDao; import cn.axzo.tyr.server.repository.dao.SaasPgroupPermissionRelationDao;
import cn.axzo.tyr.server.repository.entity.SaasPermissionGroup;
import cn.axzo.tyr.server.repository.entity.SaasPgroupPermissionRelation;
import cn.axzo.tyr.server.service.PermissionGroupService; import cn.axzo.tyr.server.service.PermissionGroupService;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.List; import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@Slf4j @Slf4j
@RestController @RestController
@ -33,6 +43,7 @@ public class SaasPermissionGroupController implements SaasPermissionGroupApi {
private final SaasPgroupPermissionRelationDao pgroupPermissionRelationDao; private final SaasPgroupPermissionRelationDao pgroupPermissionRelationDao;
private final SaasPermissionGroupScopeDao permissionGroupScopeDao; private final SaasPermissionGroupScopeDao permissionGroupScopeDao;
private final PermissionGroupService permissionGroupService; private final PermissionGroupService permissionGroupService;
private final SaasPermissionGroupDao saasPermissionGroupDao;
@Override @Override
public ApiResult<Long> saveOrUpdateSpecial(SaveOrUpdatePermissionGroupVO permissionGroup) { public ApiResult<Long> saveOrUpdateSpecial(SaveOrUpdatePermissionGroupVO permissionGroup) {
@ -79,4 +90,39 @@ public class SaasPermissionGroupController implements SaasPermissionGroupApi {
return ApiResult.ok(); return ApiResult.ok();
} }
@Override
public ApiResult<List<SaasPermissionGroupRes>> listByWorkspaceIdAndOuId(ListByWorkspaceIdAndOuIdReq group) {
List<SaasPermissionGroupRes> saasPermissionGroupRes = saasPermissionGroupDao.lambdaQuery()
.eq(Objects.nonNull(group.getWorkspaceId()), SaasPermissionGroup::getCustomSpaceId, group.getWorkspaceId())
.eq(Objects.nonNull(group.getOuId()), SaasPermissionGroup::getOuId, group.getOuId())
.list()
.stream()
.map(e -> {
SaasPermissionGroupRes result = SaasPermissionGroupRes.builder().build();
BeanUtils.copyProperties(e, result);
return result;
})
.collect(Collectors.toList());
return ApiResult.ok(saasPermissionGroupRes);
}
@Override
public ApiResult<List<SaasPgroupPermissionRelationRes>> listFeatureIdByGroupIds(ListFeatureIdByGroupIdsReq group) {
List<SaasPgroupPermissionRelationRes> saasPgroupPermissionRelationRes = pgroupPermissionRelationDao.lambdaQuery()
.select(SaasPgroupPermissionRelation::getFeatureId)
.eq(SaasPgroupPermissionRelation::getIsDelete, TableIsDeleteEnum.NORMAL.value)
.in(SaasPgroupPermissionRelation::getGroupId, group.getGroupIds())
.list()
.stream()
.map(e -> {
SaasPgroupPermissionRelationRes result = SaasPgroupPermissionRelationRes.builder().build();
BeanUtils.copyProperties(e, result);
return result;
})
.collect(Collectors.toList());
return ApiResult.ok(saasPgroupPermissionRelationRes);
}
} }

View File

@ -55,6 +55,16 @@ public class SaasPermissionGroup extends BaseEntity<SaasPermissionGroup> {
*/ */
private Integer isCommon; private Integer isCommon;
/**
* 工作台Id
*/
private Long customSpaceId;
/**
* 单位ID
*/
private Long ouId;
/** /**
* 获取主键值 * 获取主键值
* *

View File

@ -8,6 +8,7 @@ import cn.axzo.tyr.client.model.permission.QueryIdentityByPermissionDTO;
import cn.axzo.tyr.client.model.permission.SaasUserRoleExBO; import cn.axzo.tyr.client.model.permission.SaasUserRoleExBO;
import cn.axzo.tyr.client.model.req.QuerySuperAdminReq; import cn.axzo.tyr.client.model.req.QuerySuperAdminReq;
import cn.axzo.tyr.client.model.req.UpdateUserJobReq; import cn.axzo.tyr.client.model.req.UpdateUserJobReq;
import cn.axzo.tyr.client.model.req.WorkspaceUpdateUserRoleDTO;
import cn.axzo.tyr.client.model.res.SuperAminInfoResp; import cn.axzo.tyr.client.model.res.SuperAminInfoResp;
import cn.axzo.tyr.client.model.roleuser.dto.SaasRoleUserDTO; import cn.axzo.tyr.client.model.roleuser.dto.SaasRoleUserDTO;
import cn.axzo.tyr.client.model.roleuser.dto.SaasRoleUserV2DTO; import cn.axzo.tyr.client.model.roleuser.dto.SaasRoleUserV2DTO;
@ -53,4 +54,6 @@ public interface SaasRoleUserRelationService extends IService<SaasRoleUserRelati
List<IdentityKey> getSuperAdminIdsByWorkspaceAndOu(Long workspaceId, Long ouId); List<IdentityKey> getSuperAdminIdsByWorkspaceAndOu(Long workspaceId, Long ouId);
List<SaasUserRoleExBO> getUserRoleExListMapByIdentityIdAndWorkspaceId(List<Long> identityIds, IdentityType identityType, Long workspaceId); List<SaasUserRoleExBO> getUserRoleExListMapByIdentityIdAndWorkspaceId(List<Long> identityIds, IdentityType identityType, Long workspaceId);
Boolean updateWorkspaceUserRoles(WorkspaceUpdateUserRoleDTO req);
} }

View File

@ -24,6 +24,7 @@ import cn.axzo.tyr.client.model.enums.SaasJobTypeEnum;
import cn.axzo.tyr.client.model.permission.IdentityAndAccountDTO; import cn.axzo.tyr.client.model.permission.IdentityAndAccountDTO;
import cn.axzo.tyr.client.model.permission.IdentityKey; import cn.axzo.tyr.client.model.permission.IdentityKey;
import cn.axzo.tyr.client.model.permission.QueryIdentityByPermissionDTO; import cn.axzo.tyr.client.model.permission.QueryIdentityByPermissionDTO;
import cn.axzo.tyr.client.model.permission.SaasUserRoleExBO;
import cn.axzo.tyr.client.model.req.QuerySuperAdminReq; import cn.axzo.tyr.client.model.req.QuerySuperAdminReq;
import cn.axzo.tyr.client.model.req.UpdateUserJobReq; import cn.axzo.tyr.client.model.req.UpdateUserJobReq;
import cn.axzo.tyr.client.model.req.WorkspaceUpdateUserRoleDTO; import cn.axzo.tyr.client.model.req.WorkspaceUpdateUserRoleDTO;
@ -36,7 +37,6 @@ import cn.axzo.tyr.client.model.roleuser.req.PageRoleUserRelationParam;
import cn.axzo.tyr.client.model.roleuser.req.RoleUserParam; import cn.axzo.tyr.client.model.roleuser.req.RoleUserParam;
import cn.axzo.tyr.server.common.util.NumUtil; import cn.axzo.tyr.server.common.util.NumUtil;
import cn.axzo.tyr.server.model.QueryUserRoleReq; import cn.axzo.tyr.server.model.QueryUserRoleReq;
import cn.axzo.tyr.client.model.permission.SaasUserRoleExBO;
import cn.axzo.tyr.server.repository.dao.SaasRoleDao; import cn.axzo.tyr.server.repository.dao.SaasRoleDao;
import cn.axzo.tyr.server.repository.dao.SaasRoleUserRelationDao; import cn.axzo.tyr.server.repository.dao.SaasRoleUserRelationDao;
import cn.axzo.tyr.server.repository.entity.SaasRole; import cn.axzo.tyr.server.repository.entity.SaasRole;
@ -595,4 +595,14 @@ public class SaasRoleUserRelationServiceImpl extends ServiceImpl<SaasRoleUserRel
public List<SaasUserRoleExBO> getUserRoleExListMapByIdentityIdAndWorkspaceId(List<Long> identityIds, IdentityType identityType, Long workspaceId) { public List<SaasUserRoleExBO> getUserRoleExListMapByIdentityIdAndWorkspaceId(List<Long> identityIds, IdentityType identityType, Long workspaceId) {
return saasRoleUserRelationDao.listUserRoleExByIdentityIdsAndWorkspaceId(identityIds, identityType, workspaceId); return saasRoleUserRelationDao.listUserRoleExByIdentityIdsAndWorkspaceId(identityIds, identityType, workspaceId);
} }
@Transactional(rollbackFor = Throwable.class)
@Override
public Boolean updateWorkspaceUserRoles(WorkspaceUpdateUserRoleDTO g) {
checkWorkspace(g.getWorkspaceId());
checkRoleInWorkspaceAndFitOu(g.getUpdateRoleIds(), g.getWorkspaceId(), g.getOuId(),
Arrays.asList(RoleTypeEnum.INIT, RoleTypeEnum.COMMON));
doUpdateWorkspaceUserRoles(g.getIdentityId(), g.getIdentityType(), g.getUpdateRoleIds(), g.getWorkspaceId(), g.getOuId(), g.getJobType());
return Boolean.TRUE;
}
} }