示例#1
0
        public async Task <int> UpdateAsync(AdminRoleUpdateCommand request, CancellationToken cancellationToken)
        {
            var entity = await db.Context.AdminAuthRole.FirstOrDefaultAsync(c => c.Id == request.Id, cancellationToken);

            if (entity == null)
            {
                return(0);
            }

            entity = mapper.Map(request, entity);

            //先清空导航集合,确保没有冗余信息
            await db.DeleteAsync <AdminRoleMenuEntity>(c => c.RoleId == entity.Id);

            //保存关联导航
            if (request.MenuIds != null && request.MenuIds.Length > 0)
            {
                entity.RoleMenus = Array.ConvertAll(request.MenuIds, key => new AdminRoleMenuEntity
                {
                    RoleId = entity.Id,
                    MenuId = key
                });
            }

            var res = db.Update(entity);

            if (res > 0)
            {
                return(res);
            }
            return(res);
        }
示例#2
0
            public override async Task <int> Handle(AdminMenuDeleteCommand request, CancellationToken cancellationToken)
            {
                var res = await db.DeleteAsync <AdminMenuEntity>(c => request.Ids.Contains(c.Id));

                if (res > 0)
                {
                    await db.DeleteAsync <AdminRoleMenuEntity>(c => request.Ids.Contains(c.MenuId));
                }

                return(res);
            }
        public async Task <int> DeleteAsync(long[] ids, CancellationToken cancellationToken)
        {
            var res = await db.DeleteAsync <AdminMenuEntity>(c => ids.Contains(c.Id), cancellationToken);

            if (res > 0)
            {
                await db.DeleteAsync <AdminRoleMenuEntity>(c => ids.Contains(c.MenuId), cancellationToken);
            }

            return(res);
        }
        public async Task <int> DeleteAsync(long[] ids, CancellationToken cancellationToken)
        {
            var res = await db.DeleteAsync <AdminUserEntity>(c => ids.Contains(c.Id), cancellationToken);

            if (res > 0)
            {
                //删除登录记录
                await db.DeleteAsync <LoginRecordEntity>(c => ids.Contains(c.AdminId), cancellationToken);

                //删除关联的角色
                await db.DeleteAsync <AdminUserRoleEntity>(c => ids.Contains(c.AdminId), cancellationToken);
            }

            return(res);
        }
示例#5
0
            public override async Task <int> Handle(AdminRoleDeleteCommand request, CancellationToken cancellationToken)
            {
                var res = await db.DeleteAsync <AdminRoleEntity>(c => request.Ids.Contains(c.Id));

                if (res > 0)
                {
                    //删除关联的导航
                    await db.DeleteAsync <AdminRoleMenuEntity>(c => request.Ids.Contains(c.RoleId));

                    //删除用户关联的角色
                    await db.DeleteAsync <AdminUserRoleEntity>(c => request.Ids.Contains(c.RoleId));
                }

                return(res);
            }
示例#6
0
            public override async Task <int> Handle(AdminUserDeleteCommand request, CancellationToken cancellationToken)
            {
                var res = await db.DeleteAsync <AdminUserEntity>(c => request.Ids.Contains(c.Id));

                if (res > 0)
                {
                    //删除登录记录
                    await db.DeleteAsync <LoginRecordEntity>(c => request.Ids.Contains(c.AdminId));

                    //删除关联的角色
                    await db.DeleteAsync <AdminUserRoleEntity>(c => request.Ids.Contains(c.AdminId));
                }

                return(res);
            }
示例#7
0
        public async Task <Result <int> > DeleteUserAsync([Required] long[] ids, CancellationToken cancellationToken = default)
        {
            var res = await db.DeleteAsync <AdminUserEntity>(c => ids.Contains(c.Id), cancellationToken);

            if (res > 0)
            {
                //删除登录记录
                await db.DeleteAsync <LoginRecordEntity>(c => ids.Contains(c.AdminId), cancellationToken);

                //删除关联的角色
                await db.DeleteAsync <AdminUserRoleEntity>(c => ids.Contains(c.AdminId), cancellationToken);

                return(RestFull.Success(data: res));
            }
            else
            {
                return(RestFull.Fail(data: res));
            }
        }
示例#8
0
            public override async Task <int> Handle(AdminUserDeleteCommand request, CancellationToken cancellationToken)
            {
                var has = await db.Context.AdminUser.AnyAsync(c => c.Id == request.Id, cancellationToken);

                if (!has)
                {
                    return(0);
                }

                var res = await db.DeleteAsync <AdminUserEntity>(c => c.Id == request.Id);

                if (res > 0)
                {
                    await bus.PublishEvent(new DeleteEvent(request.Id), cancellationToken);
                }

                return(res);
            }
示例#9
0
            public override async Task <int> Handle(AdminUserRelevanceRoleCommand request, CancellationToken cancellationToken)
            {
                //先清空用户的角色,确保没有冗余的数据
                await db.DeleteAsync <AdminUserRoleEntity>(c => c.AdminId == request.AdminId);

                var userRoles = Array.ConvertAll(request.RoleIds, roleid => new AdminUserRoleEntity
                {
                    RoleId  = roleid,
                    AdminId = request.AdminId
                });

                //添加角色
                if (userRoles.Length > 0)
                {
                    return(await db.AddAsync(userRoles));
                }

                return(1);
            }