public static void CreateCreditCardStatementsPayments() { Payments statement_payments = Payments.GetCreditCardStatementsList(0, false); CreditCardList credit_cards = CreditCardList.GetList(false); foreach (Payment payment in statement_payments) { //Payment Transactions payment.LoadChilds(typeof(TransactionPayment), false); CreditCardInfo card = credit_cards.GetItem(payment.OidTarjetaCredito); if (card.ETipoTarjeta != ETipoTarjeta.Credito) { continue; } //Extractos if (card.Statements == null) { card.LoadChilds(typeof(CreditCardStatement), false); } foreach (CreditCardStatementInfo statement in card.Statements) { if (statement.Amount == payment.Importe && statement.DueDate == payment.Vencimiento) { TransactionPayment operation = payment.Operations.NewItem(payment, statement, ETipoPago.ExtractoTarjeta); operation.Cantidad = payment.Importe; } } } statement_payments.Save(); }
public static void CreateCreditCardStatements() { QueryConditions conditions = new QueryConditions { MedioPago = EMedioPago.Tarjeta }; Payments payments = Payments.GetList(conditions, false); CreditCardList credit_cards = CreditCardList.GetList(false); string message = string.Empty; foreach (Payment payment in payments) { if (payment.EEstado == EEstado.Anulado) { continue; } CreditCardInfo card = credit_cards.GetItem(payment.OidTarjetaCredito); if (card.ETipoTarjeta != ETipoTarjeta.Credito) { continue; } payment.MarkItemDirty(); } payments.Save(); }
protected override void RefreshMainData() { PgMng.Message = Resources.Messages.RETRIEVING_EXTRACTOS; CreditCards = CreditCardList.GetList(ETipoTarjeta.Credito, false); PgMng.Grow(); if (List == null) { List = new NotifyEntityList(); } else { List.Clear(); } List = new NotifyEntityList(); Date_TI.Text = _fecha.ToShortDateString(); PgMng.Grow(); foreach (CreditCardInfo item in CreditCards) { //Extractos item.LoadChilds(typeof(CreditCardStatement), false); } PgMng.Grow(); base.RefreshMainData(); }
protected override void RefreshMainData() { PgMng.Message = Resources.Messages.RETRIEVING_EXTRACTOS; if (List == null) { List = new NotifyEntityList(); } else { List.Clear(); } List = new NotifyEntityList(); Date_TI.Text = _fecha.ToShortDateString(); TarjetasList = CreditCardList.GetList(ETipoTarjeta.Credito, false); MovimientosList.Clear(); PagosList.Clear(); PaymentList pagos; foreach (CreditCardInfo item in TarjetasList) { //Extractos item.LoadChilds(typeof(CreditCardStatement), false); //Extracto Pendiente pagos = PaymentList.GetListByVencimientoTarjeta(DateTime.MinValue, _fecha, item, false); PagosList.Add(pagos); //Extractos cobrados BankLineList movimientos = BankLineList.GetByCreditCardList(item, _fecha, false); MovimientosList.Add(movimientos); foreach (BankLineInfo mov in movimientos) { pagos = PaymentList.GetListByMovimiento(mov, false); PagosList.Add(pagos); } } PgMng.Grow(); base.RefreshMainData(); }
public static void CreateApuntesBancarios(PaymentList pagos) { List <PaymentInfo> list = new List <PaymentInfo>(); CreditCardList tarjetas = CreditCardList.GetList(); Payments pagos_tarjeta = Payments.NewList(); foreach (PaymentInfo item in pagos) { if (!Common.EnumFunctions.NeedsCuentaBancaria(item.EMedioPago)) { continue; } if (item.Vencimiento > DateTime.Today) { continue; } if (item.EMedioPago != EMedioPago.Tarjeta) { //Apunte bancario del pagaré, talón, etc.. BankLine.InsertItem(item, true); list.Add(item); } else { Payment pago_tarjeta = pagos_tarjeta.GetItemByTarjetaCredito(item.OidTarjetaCredito, item.Vencimiento); if (pago_tarjeta == null) { pago_tarjeta = pagos_tarjeta.NewItem(item, ETipoPago.ExtractoTarjeta); TransactionPayment pf = pago_tarjeta.Operations.NewItem(pago_tarjeta, item, item.ETipoPago); pf.Cantidad = item.Total; pago_tarjeta.EEstadoPago = EEstado.Pagado; } else { pago_tarjeta.Importe += item.Importe; pago_tarjeta.GastosBancarios += item.GastosBancarios; TransactionPayment pf = pago_tarjeta.Operations.NewItem(pago_tarjeta, item, item.ETipoPago); pf.Cantidad = item.Total; } list.Add(item); } } Payments pagos_fraccionados = Payments.NewList(); pagos_fraccionados.OpenNewSession(); //Apunte bancario de la tarjeta foreach (Payment item in pagos_tarjeta) { Payment root = pagos_fraccionados.NewItem(item.GetInfo(false), ETipoPago.FraccionadoTarjeta); root.Pagos.AddItem(item); //if (item.Importe != 0) // MovimientoBanco.InsertItemTarjeta(item, tarjetas.GetItem(item.OidTarjetaCredito)); } pagos_fraccionados.BeginTransaction(); pagos_fraccionados.Save(); Payment.UpdatePagadoFromList(list, true); }
/// <summary> /// Defines the entry point of the application. /// </summary> static void Main() { Console.BackgroundColor = ConsoleColor.White; Console.ForegroundColor = ConsoleColor.Blue; Console.Title = "Credit Card Information"; #region Class Level Variables CreditCard show = new CreditCard(); String FileName = String.Empty; NewCardMenu newCreditCardMenu = new NewCardMenu(); CreditCardList CreditCardListWorking = new CreditCardList(); InputValidation ValidValue = new InputValidation(); int CountOfCC = 0; #endregion #region Menu Values Menu menu = new Menu("Enter The Number of Your Choice"); menu = menu + "Create a New Empty Credit Card List" + "Open a Text File and Populate a Credit Card List" + "Add A Credit Card To the Current List" + "Remove A Credit Card From the Current Credit Card List" + "Retrieve and Display a Credit Card From Position n in the List" + "Retrieve and Display a Credit Card by its Card Number" + "Retrieve and Display Credit Cards That Belong to a Specified Person" + "Retrieve and Display all Non-Expired Valid Credit Cards" + "Sort the Credit Cards in the Credit Card List by Card Number" + "Display all the Credit Cards in the Credit Card List" + "Quit"; #endregion ChoicesMain choice = (ChoicesMain)menu.GetChoice(); while (choice != ChoicesMain.QUIT) { switch (choice) { #region EmptyCC case ChoicesMain.EMPTYCC: if (CreditCardListWorking.NeedsSaving == true) { CreditCardListWorking.SaveToAFile(); CreditCardListWorking = new CreditCardList(); CreditCardListWorking.NeedsSaving = true; CountOfCC = CreditCardListWorking.Count(); } else { CreditCardListWorking = new CreditCardList(); CreditCardListWorking.NeedsSaving = true; CountOfCC = CreditCardListWorking.Count(); } break; #endregion #region Open File and Populate A List case ChoicesMain.OPENFILE: OpenFileDialog dlg = new OpenFileDialog(); dlg.InitialDirectory = Application.StartupPath; dlg.Title = "Select the input file to be processed..."; dlg.Filter = "text files (*.txt)|*.txt|text files (*.text)|*.text|all files|*.*"; if (dlg.ShowDialog() == DialogResult.Cancel) { MessageBox.Show("File Open canceled by user. Program aborted.", "File Open Error"); Application.Exit(); } else { CreditCardListWorking.CreditCardValidation(dlg.FileName); } CountOfCC = CreditCardListWorking.Count(); Console.WriteLine("\nYou Have A Total of " + CountOfCC + " Credit Cards in the List\n\nPress Enter To Continue"); Console.ReadLine(); break; #endregion #region Add a Credit Card To The List case ChoicesMain.ADDCC: newCreditCardMenu = new NewCardMenu(); CreditCard AddCreditCard = (CreditCard)newCreditCardMenu.NewCreditCardMenu(); CreditCardListWorking = CreditCardListWorking + AddCreditCard; CreditCardListWorking.NeedsSaving = true; CountOfCC = CreditCardListWorking.Count(); Console.WriteLine("\nYou Have A Total of " + CountOfCC + " Credit Cards in the List\n\nPress Enter To Continue"); Console.ReadLine(); break; #endregion #region Remove a Credit Card From The List case ChoicesMain.REMOVECC: CreditCardListWorking.DisplayFirstandLast(); Boolean valid = false; int RemoveN = -1; Console.Write("What Number Person Would You Like to Remove?"); while (valid == false) { try { RemoveN = int.Parse(Console.ReadLine()); } catch (Exception) { Console.WriteLine("Please enter a number between 1 and " + CreditCardListWorking.NumCCInList()); valid = false; } valid = true; } if (RemoveN <= CreditCardListWorking.NumCCInList() && RemoveN > -1 && CreditCardListWorking.Count() > 0) { CreditCardListWorking.RemoveCCN(RemoveN - 1); valid = true; } else { valid = false; } CreditCardListWorking.NeedsSaving = true; CountOfCC = CreditCardListWorking.Count(); Console.WriteLine("\nYou Have A Total of " + CountOfCC + " Credit Cards in the List\n\nPress Enter To Continue"); Console.ReadLine(); break; #endregion #region Retrieve Credit Card at Index N case ChoicesMain.RETRIEVEATN: CreditCardListWorking.DisplayFirstandLast(); int NumberOfCardChosen; Boolean validChoice = false; if (CreditCardListWorking.Count() <= 0) { Console.WriteLine("There are no records to work with."); break; } while (validChoice == false) { try { Console.WriteLine("What number credit card would you like to look at?"); NumberOfCardChosen = (int.Parse(Console.ReadLine())) - 1; CreditCard FoundCreditCard = new CreditCard(); if (NumberOfCardChosen < CreditCardListWorking.NumCCInList() && NumberOfCardChosen >= 0) { Console.WriteLine(CreditCardListWorking[NumberOfCardChosen].ViewInputValues()); Console.WriteLine("\nPress Enter To Continue"); Console.ReadLine(); valid = true; break; } else { Console.WriteLine("Please enter a number between 1 and " + CreditCardListWorking.NumCCInList()); valid = false; } } catch (Exception) { Console.WriteLine("You did not enter a valid number."); valid = false; } } break; #endregion #region Retrieve A Credit Card By Number case ChoicesMain.RETRIEVEBYCCNUM: String EnteredCCNum = String.Empty; valid = false; Console.WriteLine("Enter the Credit Card You Would Like To Search For: "); EnteredCCNum = Console.ReadLine(); EnteredCCNum = Regex.Replace(EnteredCCNum, @"[\s]", ""); valid = ValidValue.CreditCardValidation(EnteredCCNum); if (EnteredCCNum == null) { EnteredCCNum = String.Empty; } EnteredCCNum = Regex.Replace(EnteredCCNum, @"[\s]", ""); if (CreditCardListWorking[EnteredCCNum] != null) { Console.WriteLine(CreditCardListWorking[EnteredCCNum].ViewInputValues()); Console.WriteLine("Press Enter To Continue"); Console.ReadLine(); } else { Console.WriteLine("Credit Card Not Found\nPress Enter To Continue"); Console.ReadLine(); } break; #endregion #region Retrieve A Credit Card By Name case ChoicesMain.RETRIEVEBYNAME: String FirstName = String.Empty; String LastName = String.Empty; valid = false; Console.WriteLine("The first name of the person you would like to search for: "); FirstName = Console.ReadLine(); valid = ValidValue.NameValidation(FirstName); while (valid == false) { Console.WriteLine("You did not enter a valid name\nPlease Try Again."); FirstName = Console.ReadLine(); valid = ValidValue.NameValidation(FirstName); } FirstName = Regex.Replace(FirstName, @"[\s]", ""); Console.WriteLine("Please enter the last name of the person you would like to search for: "); LastName = Console.ReadLine(); valid = ValidValue.NameValidation(LastName); while (valid == false) { Console.WriteLine("You did not enter a valid name\nPlease Try Again."); valid = ValidValue.NameValidation(LastName); } LastName = Regex.Replace(LastName, @"[\s]", ""); try { foreach (CreditCard c in CreditCardListWorking.RetrieveByName(FirstName, LastName)) { Console.WriteLine(c.ViewInputValues() + "\n\n"); } Console.ReadLine(); } catch (IndexOutOfRangeException) { Console.WriteLine("Name Not Found"); Console.ReadLine(); } break; #endregion #region Retrieve All Non-Expired Credit Cards case ChoicesMain.NONEXPIRED: Console.WriteLine(CreditCardListWorking.ListOfNonExpiredCCs() + "\n\nPress Enter To Continue\nCount: "); Console.ReadLine(); break; #endregion #region Sort By Credit Card Number case ChoicesMain.SORTBYCCNUM: CreditCardListWorking.SortedList(); CreditCardListWorking.NeedsSaving = true; break; #endregion #region Display all Credit Cards case ChoicesMain.DISPLAYALLCC: Console.WriteLine(CreditCardListWorking.DisplayCreditCards()); Console.WriteLine("\nYou Have A Total of " + CountOfCC + " Credit Cards in the List\n\nPress Enter To Continue"); Console.ReadLine(); Console.ReadLine(); break; #endregion #region Quit case ChoicesMain.QUIT: if (CreditCardListWorking.NeedsSaving == true) { CreditCardListWorking.SaveToAFile(); } Console.WriteLine("You selected Quit"); Console.ReadLine(); break; #endregion } // end of switch choice = (ChoicesMain)menu.GetChoice(); //Console.WriteLine("Press Enter To Continue"); } // end of while Console.WriteLine("Count: " + CreditCardListWorking.CountOfCC()); } // end of main
protected override void RefreshMainData() { PgMng.Message = Resources.Messages.RETRIEVING_NOTIFICATIONS; if (List == null) { List = new NotifyEntityList(); } else { List.Clear(); } List = new NotifyEntityList(); DateTime fecha; FechaApuntes_TI.Text = _fecha_apuntes.ToShortDateString(); if (Library.Store.ModulePrincipal.GetNotifyFacturasRecibidas()) { fecha = DateTime.Today.AddDays((double)Library.Store.ModulePrincipal.GetNotifyPlazoFacturasRecibidas()); FacturaRecibidaList = Library.Store.ModuleController.GetFacturasRecibidasPendientes(); List.Add(new NotifyEntity(ETipoNotificacion.GastoPendiente , ETipoEntidad.FacturaRecibida , FacturaRecibidaList.Count , FacturaRecibidaList.TotalPendiente() , String.Format(Store.Resources.Messages.NOFITY_FACTURAS_RECIBIDAS_PENDIENTES, fecha.ToShortDateString()) , FacturaRecibidaList)); } PgMng.Grow(); if (Library.Store.ModulePrincipal.GetNotifyPagos()) { BankAccountList cuentas = BankAccountList.GetList(EEstado.Active, false); PagosBancosList.Clear(); foreach (BankAccountInfo item in cuentas) { fecha = DateTime.Today.AddDays((double)Library.Store.ModulePrincipal.GetNotifyPlazoPagos()); PaymentList pagos_banco = Library.Store.ModuleController.GetPagosPendientesVencimiento(item); PagosBancosList.Add(pagos_banco); List.Add(new NotifyEntity(ETipoNotificacion.PagoBancoPendiente , ETipoEntidad.Pago , pagos_banco.Count , pagos_banco.Total() , item.Entidad , pagos_banco)); } } PgMng.Grow(); if (Library.Store.ModulePrincipal.GetNotifyGastos()) { fecha = DateTime.Today.AddDays((double)Library.Store.ModulePrincipal.GetNotifyPlazoGastos()); GastoList = Library.Store.ModuleController.GetGastosPendientes(); List.Add(new NotifyEntity(ETipoNotificacion.GastoPendiente , ETipoEntidad.Gasto , GastoList.Count , GastoList.TotalPendiente() , String.Format(Store.Resources.Messages.NOFITY_GASTOS_PENDIENTES, fecha.ToShortDateString()) , GastoList)); } PgMng.Grow(); if (Library.Invoice.ModulePrincipal.GetNotifyFacturasEmitidas()) { fecha = DateTime.Today.AddDays((double)Library.Invoice.ModulePrincipal.GetNotifyPlazoFacturasEmitidas()); FacturaList = Library.Invoice.ModuleController.GetFacturasPendientes(); List.Add(new NotifyEntity(ETipoNotificacion.IngresoPendiente , ETipoEntidad.FacturaEmitida , FacturaList.Count , FacturaList.TotalPendiente() , String.Format(Invoice.Resources.Messages.NOFITY_FACTURAS_EMITIDAS_PENDIENTES, fecha.ToShortDateString()) , FacturaList)); } PgMng.Grow(); if (Library.Invoice.ModulePrincipal.GetNotifyCobros()) { fecha = DateTime.Today.AddDays((double)Library.Invoice.ModulePrincipal.GetNotifyPlazoCobros()); CobroList = Library.Invoice.ModuleController.GetCobrosPendientes(); List.Add(new NotifyEntity(ETipoNotificacion.IngresoPendiente , ETipoEntidad.Cobro , CobroList.Count , CobroList.Total() , String.Format(Invoice.Resources.Messages.NOFITY_COBROS_PENDIENTES, fecha.ToShortDateString()) , CobroList)); } PgMng.Grow(); PagosVencidosList = Library.Store.ModuleController.GetPagosVencidosSinApunte(_fecha_apuntes); List.Add(new NotifyEntity(ETipoNotificacion.PagoVencido , ETipoEntidad.Pago , PagosVencidosList.Count , PagosVencidosList.Total() , String.Format(Store.Resources.Messages.NOTIFY_PAGOS_VENCIDOS, _fecha_apuntes.ToShortDateString()) , PagosVencidosList)); PgMng.Grow(); CreditCardList tarjetas = CreditCardList.GetList(ETipoTarjeta.Credito, false); PagosTarjetasList.Clear(); foreach (CreditCardInfo item in tarjetas) { PaymentList pagos_tarjetas = Library.Store.ModuleController.GetPagosTarjetaVencidosSinApunte(_fecha_apuntes, item); PagosTarjetasList.Add(pagos_tarjetas); List.Add(new NotifyEntity(ETipoNotificacion.PagoTarjetaVencido , ETipoEntidad.Pago , pagos_tarjetas.Count , pagos_tarjetas.Total() , item.Nombre , pagos_tarjetas)); } PgMng.Grow(); CobrosVencidosList = Library.Invoice.ModuleController.GetCobrosVencidosSinApunte(_fecha_apuntes); List.Add(new NotifyEntity(ETipoNotificacion.CobroVencido , ETipoEntidad.Cobro , CobrosVencidosList.Count , CobrosVencidosList.Total() , String.Format(Invoice.Resources.Messages.NOTIFY_COBROS_VENCIDOS, _fecha_apuntes.ToShortDateString()) , CobrosVencidosList)); PgMng.Grow(); if (Library.Quality.ModulePrincipal.GetNotifyAuditorias()) { //Auditorías con Plazo Máximo de Generación de Informe de Auditorías próximo a vencer //AuditoriaList auditorias = Library.Quality.ModuleControler.GetAvisoGeneracionInforme(); //foreach (AuditoriaInfo item in auditorias) //{ // List.Add(new NotifyEntity(ETipoNotificacion.InformeNoGenerado // , ETipoEntidad.Auditoria // , item.Referencia)); //} //Auditorías con Plazo Máximo de Notificación de Discrepancias próximo a vencer //Auditorías con Plazo Máximo de Notificación de Fin de Auditoría próximo a vencer //Auditorías con Plazo Máximo de Respuesta de Solicitud de Ampliación próximo a vencer //Auditorías con Discrepancias abiertas próximas a cumplir fecha de cierre AuditoriaList auditorias = Library.Quality.ModuleController.GetAvisoDiscrepanciasAbiertas(); foreach (AuditoriaInfo item in auditorias) { List.Add(new NotifyEntity(ETipoNotificacion.DiscrepanciaAbierta , ETipoEntidad.Auditoria , item.Referencia)); } } }
protected override void GetFormSourceData() { _list = CreditCardList.GetList(); }