Exemplo n.º 1
0
        public async Task <IActionResult> EditAvatar(long id, IFormFile avatar, User Model)
        {
            var user = DB.Users
                       .Include(x => x.Avatar)
                       .Where(x => x.Id == id)
                       .SingleOrDefault();

            if (avatar != null)
            {
                try
                {
                    DB.Files.Remove(DB.Files.Single(x => x.Id == user.AvatarId));
                }
                catch { }
                var file = new CodeComb.AspNet.Upload.Models.File
                {
                    Bytes         = await avatar.ReadAllBytesAsync(),
                    ContentLength = avatar.Length,
                    ContentType   = avatar.ContentType,
                    FileName      = avatar.GetFileName(),
                    Time          = DateTime.Now
                };
                DB.Files.Add(file);
                user.AvatarId = file.Id;
            }
            DB.SaveChanges();
            return(RedirectToAction("Manage", "Admin"));
        }
Exemplo n.º 2
0
 public async Task<IActionResult> EditAvatar(long id,IFormFile avatar,User Model)
 {
     var user = DB.Users
         .Include(x=>x.Avatar)
         .Where(x => x.Id == id)
         .SingleOrDefault();
     if (avatar != null)
     {
         try
         {
             DB.Files.Remove(DB.Files.Single(x => x.Id == user.AvatarId));
         }
         catch { }
         var file = new CodeComb.AspNet.Upload.Models.File
         {
             Bytes = await avatar.ReadAllBytesAsync(),
             ContentLength = avatar.Length,
             ContentType = avatar.ContentType,
             FileName = avatar.GetFileName(),
             Time = DateTime.Now
         };
         DB.Files.Add(file);
         user.AvatarId = file.Id;
     }
     DB.SaveChanges();
     return RedirectToAction("Center", "Home");
 }
Exemplo n.º 3
0
        public async Task <IActionResult> Edit(long id, IFormFile avatar, User Model)
        {
            var user = DB.Users
                       .Include(x => x.Avatar)
                       .Where(x => x.Id == id).SingleOrDefault();

            if (user == null)
            {
                return(Prompt(x =>
                {
                    x.Title = "资源没有找到";
                    x.Details = "您请求的资源没有找到,请返回重试!";
                    x.StatusCode = 404;
                }));
            }
            var roles = await UserManager.GetRolesAsync(user);

            if (roles.Contains("Root") && !User.IsInRole("Root"))
            {
                return(Prompt(x =>
                {
                    x.Title = "没有权限";
                    x.Details = "您的权限不足以编辑该用户,请使用更高权限帐号执行本操作。";
                    x.StatusCode = 403;
                }));
            }
            if (User.Current.Id != id && !User.AnyRoles("Root, Master"))
            {
                return(Prompt(x =>
                {
                    x.Title = "没有权限";
                    x.Details = "您的权限不足以编辑该用户,请使用更高权限帐号执行本操作。";
                    x.StatusCode = 403;
                }));
            }
            if (avatar != null)
            {
                try
                {
                    DB.Files.Remove(DB.Files.Single(x => x.Id == user.AvatarId));
                }
                catch { }
                var file = new CodeComb.AspNet.Upload.Models.File
                {
                    Bytes         = await avatar.ReadAllBytesAsync(),
                    ContentLength = avatar.Length,
                    ContentType   = avatar.ContentType,
                    FileName      = avatar.GetFileName(),
                    Time          = DateTime.Now
                };
                DB.Files.Add(file);
                user.AvatarId = file.Id;
            }
            user.Motto = Model.Motto;
            DB.SaveChanges();
            return(Prompt(x =>
            {
                x.Title = "修改成功";
                x.Details = "用户资料已经保存成功!";
            }));
        }