feat: (feature/REQ-3010) 迁移pudge saasfeature
相关接口
This commit is contained in:
parent
c666edfaa6
commit
98f11500ba
@ -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);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -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);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -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);
|
||||||
}
|
}
|
||||||
@ -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;
|
||||||
|
}
|
||||||
@ -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;
|
||||||
|
}
|
||||||
@ -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;
|
||||||
|
}
|
||||||
@ -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;
|
||||||
|
}
|
||||||
@ -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;
|
||||||
|
}
|
||||||
@ -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;
|
||||||
|
|
||||||
|
}
|
||||||
@ -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));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -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));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@ -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);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -55,6 +55,16 @@ public class SaasPermissionGroup extends BaseEntity<SaasPermissionGroup> {
|
|||||||
*/
|
*/
|
||||||
private Integer isCommon;
|
private Integer isCommon;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工作台Id
|
||||||
|
*/
|
||||||
|
private Long customSpaceId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单位ID
|
||||||
|
*/
|
||||||
|
private Long ouId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取主键值
|
* 获取主键值
|
||||||
*
|
*
|
||||||
|
|||||||
@ -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);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -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;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user