public IActionResult Update([FromBody] UpdateUserRequestViewModel query, TokenModel tokenModel) { var updateDto = Mapper.Map <UpdateUserDto>(query); _userService.Update(updateDto); return(Ok(new ResponseViewModel())); }
public async Task <ActionResult> Profile(UserViewModel user) { TokenViewModel _token = HttpContext.Session.Get <TokenViewModel>(Constant.TOKEN); if (_token != null) { using (var client = new HttpClient()) { // TODO: Add insert logic here client.BaseAddress = new Uri("https://cocshopwebapi20190925023900.azurewebsites.net/"); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); client.DefaultRequestHeaders.Add("Authorization", $"Bearer {_token.Access_token}"); UpdateUserRequestViewModel updateUserRequestViewModel = new UpdateUserRequestViewModel() { AvatarPath = user.AvatarPath, FullName = user.FullName, Gender = user.Gender, Email = user.Email, Birthday = user.Birthday.Value.ToString("yyyyMMdd") }; HttpResponseMessage response = await client.PutAsJsonAsync("api/Auth/UpdateInfo", updateUserRequestViewModel); var jsonString = await response.Content.ReadAsStringAsync(); var body = JsonConvert.DeserializeObject <BaseViewModel <UserViewModel> >(jsonString); user.Genders = GetAllGender(); if (response.IsSuccessStatusCode) { client.DefaultRequestHeaders.Clear(); client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); client.DefaultRequestHeaders.Add("Authorization", $"Bearer {_token.Access_token}"); response = await client.GetAsync("api/Auth/GetToken"); jsonString = await response.Content.ReadAsStringAsync(); var token = JsonConvert.DeserializeObject <BaseViewModel <TokenViewModel> >(jsonString); if (response.IsSuccessStatusCode) { if (token.Data.Roles.Any(_ => _.ToUpper().Contains(Role.Admin.ToUpper()))) { HttpContext.Session.Set <TokenViewModel>(Constant.TOKEN, token.Data); } else { HttpContext.Session.Clear(); return(RedirectToAction("Login", "Auth")); } } else { ViewBag.Error = token.Description; return(View(user)); } ViewBag.Success = "Update profile successfully"; return(View(user)); } else { ViewBag.Error = body.Description; return(View(user)); } } } return(RedirectToAction("Login", "Auth")); }