public Result <bool> UpdateAddress(int id, GroupAddress groupAddress, string information) { var address = AddressInternal.FirstOrDefault(g => g.Id == id); if (address != null) { var updateResult = address.Update(groupAddress, information); if (!updateResult.Succeeded) { return(Result <bool> .Fail(updateResult.Errors)); } return(Result <bool> .Success(true)); } return(Result <bool> .Fail("Address not found")); }
public Result <bool> AddAddress(GroupAddress groupAddress, string information) { var errors = new List <string>(); if (Addresses.Any(address => address.Information.Equals(information, StringComparison.OrdinalIgnoreCase))) { errors.Add("This address already exists"); } if (errors.Any()) { return(Result <bool> .Fail(errors)); } var result = Address.Create(groupAddress, information); AddressInternal.Add(result.Value); return(Result <bool> .Success(true)); }
public Result <bool> RemoveAddress(Address addressToDelete) { var errors = new List <string>(); if (addressToDelete is null) { errors.Add(nameof(addressToDelete)); } if (Addresses.All(address => !address.Information.Equals(addressToDelete.Information, StringComparison.OrdinalIgnoreCase))) { errors.Add("Not exists"); } if (errors.Any()) { return(Result <bool> .Fail(errors)); } AddressInternal.Remove(addressToDelete); return(Result <bool> .Success(true)); }
public Result <bool> AddAddress(Address address) { AddressInternal.Add(address); return(Result <bool> .Success(true)); }