public void DeleteCustomer(Customer customer) { var checkSumOfAccounts = ListOfAccounts.Where(x => x.CustomerId == customer.Id).Select(y => y.Balance).Sum(); if (checkSumOfAccounts == 0) { ListOfAccounts.Remove(customer.Accounts.FirstOrDefault()); ListOfCustomers.Remove(customer); Output.GreenColor($"Borttaget kundnummer: {customer.Id}"); } else { Output.RedColor("Det går inte att ta bort en kund som har saldo större en noll på något av sina konton."); } }
public void DeleteAccount(Account account) { // Check sum of accounts var checkSumOfAccounts = ListOfAccounts.Where(x => x.Id == account.Id).Select(y => y.Balance).Sum(); // Count accounts var countAccounts = ListOfAccounts.Count(x => x.CustomerId == account.CustomerId); var customer = ListOfCustomers.FirstOrDefault(x => x.Id == account.CustomerId); // Can not delete account if sum is not zero or there is only one account // (customer always need an account) if (checkSumOfAccounts == 0 && countAccounts > 1) { ListOfAccounts.Remove(account); customer.Accounts.Remove(account); Output.GreenColor($"Borttaget kontonummer: {account.Id}"); } else { Output.RedColor("Kan ej ta bort kontot om:\n- det finns saldo\n- det är kundens enda konto"); } }