public frmCashMovement() { InitializeComponent(); _cashMovement = new CashMovement(); _category = new Category(); dateNow = new DateTime(); }
//[ValidateAntiForgeryToken] public IActionResult Create([Bind("PaymentId,PaymentDate,MovementTypeId,QuantityMovmentType,Amount,PaymentMediaId,UserId,LimitUsableDate")] Payment payment) { if (ModelState.IsValid) { if (_paymentLogic.ProcessPayment(payment, _context.User.Where(u => u.UserId == payment.UserId).First().FullName, _context.User.Where(u => u.UserId == payment.UserId).First().Email)) { CashMovement cashMov = new CashMovement { Amount = payment.Amount, PaymentMediaId = payment.PaymentMediaId, CashMovementDate = payment.PaymentDate, CashMovementDetails = "Movimiento de Pago", CashMovementTypeId = 1,//1 es de tipo entrada CashCategoryId = _context.CashCategory.Where(x => x.CashCategoryDescription == "Movimiento de pago").FirstOrDefault().CashCategoryId, CashSubcategoryId = _context.CashSubcategory.Where(x => x.CashSubcategoryDescription == "Movimiento de pago").FirstOrDefault().CashSubcategoryId, SupplierId = _context.Supplier.Where(x => x.SupplierDescription == "Movimiento de pago").FirstOrDefault().SupplierId, PaymentId = payment.PaymentId }; _context.Add(cashMov); _context.SaveChanges(); return(RedirectToAction(nameof(Index))); } } ViewData["MovementTypeId"] = new SelectList(_context.MovementType, "MovementTypeId", "Description", payment.MovementTypeId); ViewData["PaymentMediaId"] = new SelectList(_context.PaymentMedia, "PaymentMediaId", "PaymentMediaDescription", payment.PaymentMediaId); ViewData["UserId"] = new SelectList(_context.User, "UserId", "FullName", payment.UserId); return(View(payment)); }
//[ValidateAntiForgeryToken] public async Task <IActionResult> Edit(int id, [Bind("CashMovementId,CashMovementDate,CashMovementDetails,Amount,CashMovementTypeId,CashCategoryId,SupplierId,CashSubcategoryId,PaymentMediaId")] CashMovement cashMovement) { if (id != cashMovement.CashMovementId) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(cashMovement); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!CashMovementExists(cashMovement.CashMovementId)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["CashCategoryId"] = new SelectList(_context.CashCategory, "CashCategoryId", "CashCategoryDescription", cashMovement.CashCategoryId); ViewData["CashSubcategoryId"] = new SelectList(_context.CashSubcategory, "CashSubcategoryId", "CashSubcategoryDescription", cashMovement.CashSubcategoryId); ViewData["CashMovementTypeId"] = new SelectList(_context.Set <CashMovementType>(), "CashMovementTypeId", "CashMovementTypeDescription", cashMovement.CashMovementTypeId); ViewData["SupplierId"] = new SelectList(_context.Set <Supplier>(), "SupplierId", "SupplierDescription", cashMovement.SupplierId); ViewData["PaymentMediaId"] = new SelectList(_context.Set <PaymentMedia>(), "PaymentMediaId", "PaymentMediaDescription", cashMovement.PaymentMediaId); return(View(cashMovement)); }
public frmSelectedCashMovement(int _cashMovementId, frmCashMovement owner) { InitializeComponent(); CashMovementId = _cashMovementId; C = new CashMovement(); L = new Log(); _owner = owner; }
public JsonResult _UpdateCash(CashMovement ins) { ins.Amount = ins.Count * MuRep.GetMoneyUnitValue(ins.MoneyUnitID); CashMovement ins2 = CashRep.Update(ins); //...Repopulate Grid... return(Json(new GridModel(MRep.GetCashMovements()))); }
public frmNewCashMovement(string _action, frmCashMovement owner) { InitializeComponent(); titulo = _action; CM = new CashMovement(); L = new Log(); C = new Category(); _owner = owner; }
//[ValidateAntiForgeryToken] public async Task <IActionResult> DeleteConfirmed(int id) { var payment = await _context.Payment.FindAsync(id); CashMovement cashMovement = _context.CashMovement.Where(c => c.PaymentId == id).FirstOrDefault(); _context.Payment.Remove(payment); _context.CashMovement.Remove(cashMovement); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> Create([Bind("CashMovementId,CashMovementDate,CashMovementDetails,Amount,CashMovementTypeId,CashCategoryId,SupplierId,CashSubcategoryId")] CashMovement cashMovement) { if (ModelState.IsValid) { _context.Add(cashMovement); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["CashCategoryId"] = new SelectList(_context.CashCategory, "CashCategoryId", "CashCategoryDescription", cashMovement.CashCategoryId); ViewData["CashSubcategoryId"] = new SelectList(_context.CashSubcategory, "CashSubcategoryId", "CashSubcategoryDescription", cashMovement.CashSubcategoryId); ViewData["CashMovementTypeId"] = new SelectList(_context.Set <CashMovementType>(), "CashMovementTypeId", "CashMovementTypeDescription", cashMovement.CashMovementTypeId); ViewData["SupplierId"] = new SelectList(_context.Set <Supplier>(), "SupplierId", "SupplierDescription", cashMovement.SupplierId); return(View(cashMovement)); }
private void CreateSaleInfo(int sessionId, CashMovement cashMovementCreated, ISaleDocumentType saleDocumentType, string customerName, List <SaleLineDto> saleLineDtos, string ruc, IEnumerable <ProductMovement> productMovements) { var saleAmount = GetSaleAmount(saleLineDtos); var sale = new Sale { Date = DateTime.Now, Status = Constants.SaleStatus.Created, SessionId = sessionId, CashMovement = cashMovementCreated }; uow.SaleRepository.Insert(sale); var saleDocument = new SaleDocument { DocumentType = saleDocumentType.Name, Number = saleDocumentType.GetNextDocumentNumber(uow.GeneralConfigValuesRepository), Date = DateTime.Now, CustomerName = customerName, RUC = ruc, SubTotal = saleDocumentType.GetSubTotalForDocument(saleAmount), IGV = saleDocumentType.GetIgvForDocument(saleAmount), Total = saleAmount, Status = Constants.SaleDocumentStatus.Created, Sale = sale }; uow.SaleDocumentRepository.Insert(saleDocument); var zippedCollection = saleLineDtos.Zip(productMovements, (x, y) => new { SaleLineDto = x, ProductMovement = y }); foreach (var zippedItem in zippedCollection) { var saleDetail = new SaleDetails() { //TODO: Ingresar correlativo en linea del documento ([SaleDetailNumber]) ProductMovement = zippedItem.ProductMovement, Quantity = zippedItem.SaleLineDto.Quantity, SaleDocument = saleDocument, SinglePrice = zippedItem.SaleLineDto.UnitPrice, TotalPrice = zippedItem.SaleLineDto.LinePrice }; uow.SaleDetailsRepository.Insert(saleDetail); } }
//[ValidateAntiForgeryToken] public IActionResult Edit(int id, [Bind("PaymentId,PaymentDate,MovementTypeId,QuantityMovmentType,Amount,PaymentMediaId,UserId,LimitUsableDate")] Payment payment) { if (id != payment.PaymentId) { return(NotFound()); } if (ModelState.IsValid) { try { if (_paymentLogic.ProcessPayment(payment, _context.User.Where(u => u.UserId == payment.UserId).First().FullName, _context.User.Where(u => u.UserId == payment.UserId).First().Email)) { var cashMovsPayment = _context.CashMovement.Where(c => c.PaymentId == payment.PaymentId); if (cashMovsPayment.Count() > 0) { CashMovement cashMov = cashMovsPayment.FirstOrDefault(); cashMov.Amount = payment.Amount; cashMov.CashMovementDate = payment.PaymentDate; cashMov.PaymentMediaId = payment.PaymentMediaId; _context.Update(cashMov); } _context.SaveChanges(); return(RedirectToAction(nameof(Index))); } } catch (DbUpdateConcurrencyException) { if (!PaymentExists(payment.PaymentId)) { return(NotFound()); } else { throw; } } } ViewData["MovementTypeId"] = new SelectList(_context.MovementType, "MovementTypeId", "Description", payment.MovementTypeId); ViewData["PaymentMediaId"] = new SelectList(_context.Set <PaymentMedia>(), "PaymentMediaId", "PaymentMediaDescription", payment.PaymentMediaId); ViewData["UserId"] = new SelectList(_context.User.Where(u => u.UserId == payment.UserId), "UserId", "FullName", payment.UserId); return(View(payment)); }
private CashMovement CreateCashMovement(int sessionId, decimal saleAmount, string movementCategory, string movementType) { var cashBoxService = new CashBoxService(uow); var cashMovement = new CashMovement { MovementCategory = movementCategory, MovementType = movementType, MovementDate = DateTime.Now, Amount = saleAmount, MovementStatus = Constants.CashMovementStatus.Ok, CashboxId = cashBoxService.GetDefatultCashbox().CashboxId, SessionId = sessionId }; uow.CashMovementRepository.Insert(cashMovement); return(cashMovement); }
/// <summary> /// Metodo per la creazione delle classi derivate di Movement /// </summary> /// <returns></returns> public static Movement FactoryMovement() { Movement movement = null; bool flag = true; do { int input; Console.WriteLine("Che tipo di movimento vuoi effettuare? Premi: \n 0 per Cash Movement \n 1 per Credit Card Movement \n 2 per Transfert Movement"); while (!int.TryParse(Console.ReadLine(), out input)) { Console.WriteLine("Input non corretto"); Console.WriteLine(" Premi: \n 0 per Cash Movement \n 1 per Credit Card Movement \n 2 per Transfert Movement"); } switch (input) { case 0: movement = CashMovement.Create(); break; case 1: movement = CreditCardMovement.Create(); break; case 2: movement = TransfertMovement.Create(); break; default: Console.WriteLine("Input non corretto"); flag = false; break; } } while (flag == false); return(movement); }
static void Main(string[] args) { Console.WriteLine("=== Account ====="); Account account = new Account( 123456, "Banca Popolare di Lodi", 1000 ); #region Test Movement transfertMovement = new TransfertMovement( 500, "Pop Vicenza", "Banca Popolare di Lodi" ); account += transfertMovement; Movement cashMovement = new CashMovement( 100, "Roberto Ajolfi" ); account -= cashMovement; Movement ccMovement = new CreditCardMovement( 230, CreditCardMovement.CreditCardType.AMEX, "9999-1234-1234-0001" ); account -= ccMovement; #endregion #region Interactive Mode //bool next = true; //while (next) //{ // Console.Write("Amount: "); // string amountString = Console.ReadLine(); // double.TryParse(amountString, out double amount); // Console.Write("[I]n / [O]ut: "); // string inOut = Console.ReadLine(); // Console.Write("Type ([C]Cash / [CC] / [T]ransfer: "); // string type = Console.ReadLine(); // Movement movement; // switch (type.ToUpper()) // { // case "C": // movement = new CashMovement(amount, "Roberto A."); // break; // case "CC": // movement = new CreditCardMovement( // amount, // CreditCardMovement.CreditCardType.AMEX, // "9999-12345-1234" // ); // break; // case "T": // movement = new TransfertMovement( // amount, // "Pop Lodi", // "Pop Vicenza" // ); // break; // default: // movement = null; // break; // } // if (movement != null) // if (inOut.ToUpper() == "I") // account += movement; // else // account -= movement; // Console.Write("Ancora (S/N)?"); // string again = Console.ReadLine(); // next = (again.ToUpper() == "S"); //} //Console.WriteLine("----------------------------------"); //Console.WriteLine(); //Console.WriteLine(); #endregion Console.WriteLine(account.Statement()); }
static void Main(string[] args) { Random rand = new Random(); int bancomatNum = rand.Next(11, 9999); Account <Movement> myBankAccount = new Account <Movement>("00001AYH182", "Morgan Stanley"); bool exit = false; while (!exit) { Console.WriteLine("BENVENUTO/A AL BANCOMAT MORGAN STANLEY N. 00C" + bancomatNum); Thread.Sleep(1000); Console.WriteLine("Scegli che tipo di movimento vuole effettuare:"); Console.WriteLine("-1 Cash Movement\n" + "-2 Transfert Movement\n" + "-3 Credit Card Movement"); int x = int.Parse(Console.ReadLine()); switch (x) { case 1: Console.WriteLine("Per favore inserisca l'ammontare:"); double cashAmount = double.Parse(Console.ReadLine()); Console.WriteLine("Per favore inserisca se è un movimento positivo o negativo +/-:"); string cashSign = Console.ReadLine(); Console.WriteLine("Per favore inserisca chi effettua l'operazione:"); string performer = Console.ReadLine(); CashMovement cash = new CashMovement(new Movement(cashAmount), performer); if (cashSign.Equals("+")) { myBankAccount += cash; } else if (cashSign.Equals("-")) { myBankAccount -= cash; cash.Amount *= -1.0; } break; case 2: Console.WriteLine("Per favore inserisca l'ammontare:"); double transfertAmount = double.Parse(Console.ReadLine()); Console.WriteLine("Per favore inserisca se è un movimento positivo o negativo +/-:"); string transfertSign = Console.ReadLine(); Console.WriteLine("Per favore inserisca l'istituto emittente:"); string source = Console.ReadLine(); Console.WriteLine("Per favore inserisca l'istituto destinatario:"); string dest = Console.ReadLine(); TransfertMovement transfert = new TransfertMovement(new Movement(transfertAmount), source, dest); if (transfertSign.Equals("+")) { myBankAccount += transfert; } else if (transfertSign.Equals("-")) { myBankAccount -= transfert; transfert.Amount *= -1.0; } break; case 3: Console.WriteLine("Per favore inserisca l'ammontare:"); double cardAmount = double.Parse(Console.ReadLine()); Console.WriteLine("Per favore inserisca se è un movimento positivo o negativo +/-:"); string cardSign = Console.ReadLine(); Console.WriteLine("Per favore inserisca l'emittente della carta scegliendo tra:"); Console.WriteLine("-AMEX\n" + "-VISA\n" + "-MASTER CARD\n" + "-OTHER"); Kind kind; try { kind = (Kind)Enum.Parse(typeof(Kind), Console.ReadLine().Trim().Replace(" ", ""), true); } catch (Exception e) { Console.WriteLine("Ci dispiace, ma non è stato possibile individuare l'istituto emittente;\n" + "per favore ripeta la procedura digitando correttamente il nome dell'emittente\n"); Thread.Sleep(2500); goto case 3; } Console.WriteLine("Per favore inserisca il numero di carta:"); string cardNo = Console.ReadLine(); CreditCardMovement creditCard = new CreditCardMovement(new Movement(cardAmount), kind, cardNo); if (cardSign.Equals("+")) { myBankAccount += creditCard; } else if (cardSign.Equals("-")) { myBankAccount -= creditCard; creditCard.Amount *= -1.0; } break; default: Console.WriteLine("Per favore inserisca un numero corrispondente al tipo di operazione"); break; } Console.WriteLine("Se vuole inserire un'altro movimento premi invio altrimenti prema Q"); if (Console.ReadLine().ToLower().Equals("q")) { exit = true; } Console.Clear(); } Console.WriteLine("Vuole stampare il dettaglio del suo conto con annessa lista dei movimenti? Y/N"); if (Console.ReadLine().ToLower().Equals("y")) { Console.Clear(); myBankAccount.Statement(); } }
static void Main(string[] args) { int x = 0; Console.WriteLine("Benvenuto sul Menu"); //Creazione Account Account account = new Account(); Console.WriteLine("Inserisci il nome della banca"); account.NomeBanca = Console.ReadLine(); Console.WriteLine("Inserisci il numero del conto"); do { try { x = 1; int numeroConto = Convert.ToInt32(Console.ReadLine()); account.NumeroConto = numeroConto.ToString(); } catch { Console.WriteLine("Numero non valido, riprova"); x = 0; } } while (x == 0); Console.WriteLine(account); x = 0; do { Console.WriteLine("Movimenti Bancari"); Console.WriteLine("Inserisci il tipo di movimento che vuoi eseguire:"); Console.WriteLine("1 - Cash Movement"); Console.WriteLine("2 - Credit Card Movement"); Console.WriteLine("3 - Transfert Movement"); Console.WriteLine("4 - Stampare la lista dei movimenti"); Console.WriteLine("Premi un tasto per uscire"); char c = Console.ReadKey().KeyChar; Console.WriteLine(); switch (c) { case '1': CashMovement movimento = new CashMovement(); Console.WriteLine("Inserisci l'esecutore del movimento"); movimento.Esecutore = Console.ReadLine(); GestioneMovimenti <CashMovement> .Gestione(movimento, account); Console.WriteLine(movimento); break; case '2': CreditCardMovement creditCardMovement = new CreditCardMovement(); creditCardMovement.NumeroCarta = creditCardMovement.ControlloNumeroCarta(); Console.WriteLine($"Inserisci il tipo della carta: {Tipo.Amex}, {Tipo.Mastercard}, {Tipo.Visa}, {Tipo.Other}"); creditCardMovement.Tipo = creditCardMovement.ControlloCarta(Console.ReadLine()); GestioneMovimenti <CreditCardMovement> .Gestione(creditCardMovement, account); Console.WriteLine(creditCardMovement); break; case '3': TransfertMovement trasferimento = new TransfertMovement(); Console.WriteLine("Inserisci la banca di destinazione"); trasferimento.BancaDestinazione = Console.ReadLine(); trasferimento.BancaOrigine = account.NomeBanca; GestioneMovimenti <TransfertMovement> .Gestione(trasferimento, account); Console.WriteLine(trasferimento); break; case '4': account.Statement(); break; default: x = 1; Console.WriteLine(); break; } } while (x == 0); Console.WriteLine("Operazioni Terminate"); }
public static void BankMenù(Account <Movement> account) { menu: Console.WriteLine("Choose one option: \n" + "Register a cash transaction - press C\n" + "Register a transfer transaction - press T\n" + "Register a credit card transaction - press R\n" + "Check all transaction - press P\n" + "Quit - press Q"); string answer = Console.ReadLine(); switch (answer) { case "c": //cash Movement m1 = StartingDataMovement(); Console.WriteLine("Insert the Esecutor"); string Esec = Console.ReadLine(); CashMovement cm = new CashMovement(m1.MovementAmount, m1.MovementDate, m1.isIncome, Esec); DoTransaction(cm, account); goto menu; case "t": // transfer Movement m2 = StartingDataMovement(); Console.WriteLine("Insert the origin bank:"); string ob = Console.ReadLine(); Console.WriteLine("Insert the destination bank:"); string db = Console.ReadLine(); TransfertMovement tm = new TransfertMovement(m2.MovementAmount, m2.MovementDate, m2.isIncome, ob, db); DoTransaction(tm, account); goto menu; case "r": //credit card Movement m3 = StartingDataMovement(); insertcard: Console.WriteLine("Insert the cardType\n" + "AMEX - press A\n" + "VISA - press V\n" + "MASTERCARD - press M" + "OTHER -press O"); string cardtype = Console.ReadLine(); CardType ct; if (cardtype == "a" || cardtype == "v" || cardtype == "m" || cardtype == "o") { ct = type(cardtype); } else { goto insertcard; } Console.WriteLine("Insert the card number "); string cn = Console.ReadLine(); CreditCardMovement ccm = new CreditCardMovement(m3.MovementAmount, m3.MovementDate, m3.isIncome, cn, ct); DoTransaction(ccm, account); goto menu; case "p": account.statement(); goto menu; case "q": return; } }