Exemple #1
0
        /// <summary>
        /// 修改 Logo
        /// </summary>
        /// <param name="userImageInput"></param>
        /// <param name="modelState"></param>
        /// <returns></returns>
        public async Task <string> ChangeLogoAsync(UserImageInput userImageInput, ModelStateDictionary modelState)
        {
            var url = await ChangeUserImageAsync("Logo", userImageInput, modelState, _manager.ChangeLogoAsync);

            if (modelState.IsValid)
            {
                CleanupCache(userImageInput.UserId);
            }
            return(url);
        }
Exemple #2
0
        /// <summary>
        /// ChangeUserImageAsync
        /// </summary>
        /// <param name="subFolder"></param>
        /// <param name="userImageInput"></param>
        /// <param name="modelState"></param>
        /// <param name="action"></param>
        /// <returns></returns>
        public Task <string> ChangeUserImageAsync(string subFolder, UserImageInput userImageInput, ModelStateDictionary modelState, Func <int, string, ModelStateDictionary, Task <bool> > action)
        {
            if (userImageInput.FileCollection.Files.Count == 0)
            {
                modelState.AddModelError("Error", "请选择图片");
                return(null);
            }
            var file = userImageInput.FileCollection.Files[0];

            return(SaveFileAsync(1, subFolder, userImageInput.UserId, userImageInput.UserId.ToString(), file, modelState, action));
        }
Exemple #3
0
        public async Task <ApiResultUrl> ChangeUserLogo([FromForm] UserImageInput userImageInput)
        {
            var result = new ApiResultUrl();
            var url    = await _userService.ChangeLogoAsync(userImageInput, ModelState);

            if (!ModelState.IsValid)
            {
                result.Code    = 400;
                result.Message = $"修改 Logo 失败:{ModelState.FirstErrorMessage()}";
                return(result);
            }

            result.Url     = url;
            result.Code    = 200;
            result.Message = "修改 Logo 成功";
            return(result);
        }
Exemple #4
0
        public async Task <string> UpdateUserImage([FromBody] UserImageInput input)
        {
            var userId = _currentUserService.GetCurrentUserId();

            if (!userId.HasValue)
            {
                throw new AuthenticationException("User is not authenticated");
            }

            var id = userId.Value;

            if (userId == Guid.Empty || id == null)
            {
                throw new ArgumentException(nameof(id));
            }
            var user = await _userContext.ApplicationUsers.FindAsync(id);

            user.UrlImg = input.UserImage;
            _userContext.Update(user);
            await _userContext.SaveChangesAsync();

            return(user.UrlImg);
        }