Exemplo n.º 1
0
        public CancelCustomerStatusCodes CancelCustomer(int customerNumber)
        {
            var customer = customerManager.GetCustomerByCustomerNumber(customerNumber);

            if (customer == null)
            {
                return(CancelCustomerStatusCodes.NoSuchCustomer);
            }
            if (customer.IsGuardian == true)
            {
                return(CancelCustomerStatusCodes.CustomerIsGuardian);
            }
            if (customer.Debt > 0)
            {
                return(CancelCustomerStatusCodes.CustomerHasUnpaidDebt);
            }
            var borrow = borrowManager.GetAllCurrentBorrowFromCustomer(customerNumber);

            if (borrow.Count > 0)
            {
                return(CancelCustomerStatusCodes.CustomerHasBorrowedBooks);
            }

            customerManager.CancelCustomer(customer.CustomerID);
            return(CancelCustomerStatusCodes.Ok);
        }