示例#1
0
        public async Task <EditProfileResponse> EditProfile(EditProfileRequest request)
        {
            var toUpdate = _users.Users.FirstOrDefault(uu => uu.UserId == request.UserId);

            /*if(request.Name != )*/

            toUpdate.Name                = request.Name;
            toUpdate.PhoneNumber         = request.PhoneNumber;
            toUpdate.UserImgUrl          = request.UserImage;
            toUpdate.UserDescription     = request.UserDescription;
            toUpdate.OfficeLocation      = request.OfficeLocation;
            _users.Entry(toUpdate).State = EntityState.Modified;

            try
            {
                await _users.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                throw new DbUpdateException("Error when updating user" + request.Name);
            }

            var response = new EditProfileResponse(HttpStatusCode.Accepted);

            return(response);
        }
        private async void LoadUserProfileData()
        {
            try
            {
                _objHeaderModel.TokenCode = Settings.TokenCode;
                _objEditProfileRequest    = new EditProfileRequest
                {
                    UserId = Convert.ToInt32(Settings.UserID)
                };
                //int UserId = Convert.ToInt32(Settings.UserID);

                EditProfileResponse objEditProfileResponse = new EditProfileResponse();
                _objEditProfileResponse = await _apiService.EditProfilePostAsync(new Get_API_Url().CommonBaseApi(_baseUrlEdit), true, _objHeaderModel, _objEditProfileRequest);

                //string s = JsonConvert.SerializeObject(_objEditProfileRequest);
                //HttpResponseMessage response = null;
                //string uri = "http://180.151.232.92:130/api/User/EditProfile";
                //using (var stringContent = new StringContent(s, System.Text.Encoding.UTF8, "application/json"))
                //{
                //HttpClient client = new HttpClient();
                //client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Settings.TokenCode);

                //var geet = await client.PostAsync(uri, stringContent);

                //if (response.IsSuccessStatusCode)
                //{
                //    var SucessResponse = await response.Content.ReadAsStringAsync();
                //    objEditProfileResponse = JsonConvert.DeserializeObject<EditProfileResponse>(SucessResponse);
                //    /return objEditProfileResponse;
                //}
                //else
                //{
                //    var ErrorResponse = await response.Content.ReadAsStringAsync();
                //    objEditProfileResponse = JsonConvert.DeserializeObject<EditProfileResponse>(ErrorResponse);
                //    return objEditProfileResponse;
                //}
                //}

                ProfileResponse result = _objEditProfileResponse.Response;
                if (result.StatusCode == 200)
                {
                    this.BindingContext = result.details;
                }
                else
                {
                    DependencyService.Get <IToast>().Show("No Data!!");
                }
            }
            catch (Exception ex)
            {
                var msg = ex.Message;
            }
        }
        public async Task EditUserProfile_ExpectedReturnStatus()
        {
            var requestDto = new EditProfileRequest(
                1,
                "name",
                "0833611023",
                "image.png",
                "user Description",
                false,
                4,
                UserRoles.Administrator,
                OfficeLocation.Braamfontein
                );
            var responseDto = new EditProfileResponse(HttpStatusCode.Accepted);

            _userRepoMock.Setup(n => n.EditProfile(requestDto)).ReturnsAsync(responseDto);
            var editedUserProfile = await _sut.EditProfile(requestDto);

            Assert.Equal(responseDto, editedUserProfile);
        }
 public UserProfilePage()
 {
     InitializeComponent();
     _objEditProfileResponse = new EditProfileResponse();
     _apiService             = new RestApi();
     _objHeaderModel         = new HeaderModel();
     _apiServices            = new RestApi();
     _objCountryListResponse = new CountryListResponse();
     _baseUrlEdit            = Settings.Url + Domain.EditUserApiConstant;
     _baseUrlUpdate          = Settings.Url + Domain.UpdateUserApiConstant;
     _baseUrl = Domain.GetCountryApiConstant;
     LoadUserProfileData();
     LoadCountryData();
     _objUpdateProfileResponse = new UpdateProfileResponse();
     if (Settings.ProfilePicture == string.Empty)
     {
         imgProfile.Source = "profile.png";
     }
     else
     {
         imgProfile.Source = Settings.ProfilePicture;
     }
 }