public async Task <IActionResult> Update(int userId, int id, ChangeAddressCommand command) { if (userId != UserId) { return(Unauthorized()); } if (id != command.Id) { return(BadRequest()); } await _mediator.Send(command); return(NoContent()); }
public Address Update(ChangeAddressCommand command) { var address = _repository.GetOne(command.Id); if (!string.IsNullOrEmpty(command.CEP)) { address.ChangeCEP(command.CEP); } if (!string.IsNullOrEmpty(command.City)) { address.ChangeCity(command.City); } if (!string.IsNullOrEmpty(command.Description)) { address.ChangeDescription(command.Description); } if (command.Number != 0) { address.ChangeNumber(command.Number); } address.ChangeState(command.State); if (!string.IsNullOrEmpty(command.Street)) { address.ChangeStreet(command.Street); } address.ChangeType(command.Type); _repository.Update(address); if (Commit()) { return(address); } return(null); }
public void ExecuteChangeAddressCommand(ChangeAddressCommand command) { OnEvent(new AddressChangedEvent(command.Value)); }
public async Task Update_Address_Should_Return_Status_Code_204() { var registerCommand = new RegisterCommand() { FirstName = "FirstNameTestAddressUpdate", LastName = "LastNameTestAddressUpdate", CompanyName = "TestCompanyAddressUpdate", Email = "*****@*****.**", ConfirmEmail = "*****@*****.**", Password = "******", ConfirmPassword = "******" }; UserDetailsDto user = await AuthHelper.SignUp(_httpClient, registerCommand); var newAddress = new CreateAddressCommand() { UserId = user.Id, Alias = "My home", FirstName = user.FirstName, Lastname = user.LastName, Place = "Warszawa", PostCode = "00-005", Street = "test54", BuildingNumber = "12A", Phone = "000-000-000", Email = user.Email }; var createdAddress = await _httpClient.PostAsync <CreateAddressCommand, AddressDetailsDto> ($"/api/users/{user.Id}/addresses", newAddress); var addressToUpdate = new ChangeAddressCommand() { Id = createdAddress.Id, Alias = "updated 999", Email = "*****@*****.**", Phone = "123-123-123", BuildingNumber = "999A", ApartmentNumber = "99", Place = "Place updated", Street = "Street updated", FirstName = user.FirstName, Lastname = user.LastName, PostCode = "00-321" }; var messagePut = await _httpClient.PutAsync($"/api/users/{user.Id}/addresses/{createdAddress.Id}", addressToUpdate); var updatedAddress = await _httpClient.GetAsync <AddressDetailsDto>($"api/users/{user.Id}/addresses/{addressToUpdate.Id}"); Assert.Equal(HttpStatusCode.NoContent, messagePut.StatusCode); Assert.Equal(addressToUpdate.Id, updatedAddress.Id); Assert.Equal(addressToUpdate.Alias, updatedAddress.Alias); Assert.Equal(addressToUpdate.Email, updatedAddress.Email); Assert.Equal(addressToUpdate.Phone, updatedAddress.Phone); Assert.Equal(addressToUpdate.BuildingNumber, updatedAddress.BuildingNumber); Assert.Equal(addressToUpdate.ApartmentNumber, updatedAddress.ApartmentNumber); Assert.Equal(addressToUpdate.Place, updatedAddress.Place); Assert.Equal(addressToUpdate.FirstName, updatedAddress.FirstName); Assert.Equal(addressToUpdate.Lastname, updatedAddress.LastName); Assert.Equal(addressToUpdate.Street, updatedAddress.Street); Assert.Equal(addressToUpdate.PostCode, updatedAddress.PostCode); }