/// <summary>
        /// Searches for invoices associated with the customer
        /// </summary>
        private void SearchInvoicesWorker()
        {
            CedulaCliente = this.CedulaText.Text.Trim();
            List <CargoView> cargosViews = new List <CargoView>();

            this.cargos = BDManager.GetUnpaidCharges(CedulaCliente);

            if (cargos.Count == 0)
            {
                CedulaCliente = null;
                SystemSounds.Beep.Play();
                MessageBox.Show("No se encontro ningun cargo pendiente o la cedula no esta registrada", Messages.Titles.Warninig, MessageBoxButton.OK, MessageBoxImage.Exclamation);
                Clean();
                return;
            }
            Clean();

            Customer customer = BDManager.GetCustomer(CedulaCliente);

            UserName = customer.Nombre + " " + customer.Apellido;


            foreach (Cargo cargo in cargos)
            {
                CargoView cargoView = (CargoView)cargo;
                cargosViews.Add(cargoView);
            }

            foreach (CargoView cargoView in cargos)
            {
                this.ListViewCargos.Items.Add(cargoView);
            }
        }
        /// <summary>
        /// Adds pending charges to customer
        /// </summary>
        /// <param name="cedula_cliente">Customer ID</param>
        /// <param name="cargos">Charges</param>
        private void AddPreviousCharges(string cedula_cliente, List <Cargo> cargos)
        {
            List <Cargo> UnpaidCharges = BDManager.GetUnpaidCharges(cedula_cliente);

            foreach (Cargo cargo in UnpaidCharges)
            {
                cargos.Add(cargo);
            }
        }