Exemplo n.º 1
0
        public async Task <ResponseMessage> PulshRolePermissions(RolePermissionsRequest rolesRequest)
        {
            var users = DataBaseUser.TokenModel;

            _Logger.LogInformation($"用户{users?.UserName ?? ""},其ID:({users?.Id ?? ""}) 添加角色组织权限表:\r\n" + (rolesRequest != null ? JsonHelpers.ToJSON(rolesRequest) : ""));
            var response = new ResponseMessage();

            try
            {
                response = await _RolesManager.AddRolePermissions(rolesRequest);
            }
            catch (Exception el)
            {
                _Logger.LogError($"用户{users?.UserName ?? ""}({users?.Id ?? ""})添加角色列表报错:\r\n{el.ToString()}");
                response.Code    = ResponseCodeDefines.ArgumentNullError;
                response.Message = $"添加角色列表报错:{el.Message}";
            }
            return(response);
        }
Exemplo n.º 2
0
        /// <summary>
        /// 添加角色权限表
        /// </summary>
        /// <param name="rolesRequest"></param>
        /// <returns></returns>
        public async Task <ResponseMessage> AddRolePermissions(RolePermissionsRequest rolesRequest)
        {
            var users    = DataBaseUser.TokenModel;
            var response = new ResponseMessage();

            if (rolesRequest == null)
            {
                throw new Exception(nameof(rolesRequest));
            }
            try
            {
                ///1.1.一个用户对应多个角色该角色拥有多个权限,一个权限又对应不同的组织范围   ???
                List <RolePermissions> newModel = new List <RolePermissions>()
                {
                };
                foreach (var item in rolesRequest.PermissionsScopes)
                {
                    var Scope = item.OrganizationScope;
                    //权限范围
                    for (int i = 0; i < Scope.Count; i++)
                    {
                        newModel.Add(new RolePermissions
                        {
                            Id = Guid.NewGuid().ToString(),
                            OrganizationScope = Scope[i],
                            PermissionsId     = item.PermissionsId,
                            RoledId           = rolesRequest.RoledId
                        });
                    }
                }
                var quers = newModel.ToList();
                await _IRolesStore.InsertRolePermissions(newModel);
            }
            catch (Exception el)
            {
                throw new Exception(el.Message);
            }
            return(response);
        }