private void UpdateTotals(PosTotal posTotal, TotalType end, TotalName totalName) { foreach (object obj in posTotal.Totals) { EclipsePos.Data.Total total = obj as EclipsePos.Data.Total; if ((int)total.Total_type < (int)end) { total.AddToTotalAndCount( PosSettings.Default.Organization, PosContext.Instance.RetailStore.Retail_store_no, PosSettings.Default.Station, (TotalName)((int)posTotal.Total_name + 1), (TotalType)total.Total_type, total.Total_amount, total.Total_count); //total.Delete(); } } posTotal.UpdateEndDate(PosSettings.Default.Organization, PosSettings.Default.Store, PosSettings.Default.Station, (int)totalName); }
private bool AmountIsValid() { // because it is already negative double amount = this.cashBack; PosTotal posTotal = new PosTotal(); posTotal.Organization_no = PosSettings.Default.Organization; posTotal.Store_no = PosSettings.Default.Store; posTotal.Pos_no = PosSettings.Default.Station; posTotal.Total_name = (int)TotalName.DAILY_BASE; posTotal.Load(); posTotal.Relations(); foreach (object obj in posTotal.Totals) { EclipsePos.Data.Total tot = obj as EclipsePos.Data.Total; if (tot.Total_type == (int)EclipsePos.Data.TotalType.CASH_IN_DRAWER) { if (tot.Total_amount >= amount) { return(true); } } } return(false); }
public override void UpdateTotals() { if (PosContext.Instance.Training) { return; } EclipsePos.Data.Total total = new EclipsePos.Data.Total(); total.AddToTotal( PosSettings.Default.Organization, PosSettings.Default.Store, PosSettings.Default.Station, EclipsePos.Data.TotalName.DAILY_BASE, TotalType.CREDIT_CARD_BASE, this.Amount); if (transTender.Change_amount > 0) { EclipsePos.Data.Total total2 = new EclipsePos.Data.Total(); total2.AddToTotal( PosSettings.Default.Organization, PosSettings.Default.Store, PosSettings.Default.Station, EclipsePos.Data.TotalName.DAILY_BASE, TotalType.CASH_IN_DRAWER, PosContext.Instance.PosMath.Mult(transTender.Change_amount, -1.0)); } this.transTender.State = (int)EjLineStates.PAID; this.transTender.UpdateState(); }
public override void UpdateTotals() { //return null; if (PosContext.Instance.Training) { return; } EclipsePos.Data.Total total = new EclipsePos.Data.Total(); total.AddToTotal( PosSettings.Default.Organization, PosContext.Instance.RetailStore.Retail_store_no, PosSettings.Default.Station, EclipsePos.Data.TotalName.DAILY_BASE, TotalType.DEBIT, this.Amount); if (transTender.Change_amount > 0) { // subtract cash back from drawer EclipsePos.Data.Total total2 = new EclipsePos.Data.Total(); total2.AddToTotal( PosSettings.Default.Organization, PosContext.Instance.RetailStore.Retail_store_no, PosSettings.Default.Station, EclipsePos.Data.TotalName.DAILY_BASE, TotalType.CASH_IN_DRAWER, PosContext.Instance.PosMath.Mult(transTender.Change_amount, -1.0) ); } int count = PosContext.Instance.CurrentEj.SalesPerson.Count; PosContext.Instance.CurrentEj.SalesPerson.ForEach(delegate(EjSalesPerson ejSalesPerson) { TransSalesPerson transSalesPerson = (TransSalesPerson)ejSalesPerson.DataRecord(); string employee_id = transSalesPerson.Employee_no; EclipsePos.Data.PosEmployeeTotal empTotal = new EclipsePos.Data.PosEmployeeTotal(); empTotal.AddToEmployeeTotalAndCount( PosSettings.Default.Organization, PosContext.Instance.RetailStore.Retail_store_no, PosSettings.Default.Station, employee_id, 0, EclipsePos.Data.TotalName.DAILY_BASE, TotalType.DEBIT, 1, Amount / count ); }); transTender.State = (int)EjLineStates.PAID; transTender.UpdateState(); }
public override void UpdateTotals() { //return null; if (PosContext.Instance.Training) { return; } EclipsePos.Data.Total total1 = new EclipsePos.Data.Total(); total1.AddToTotal( PosSettings.Default.Organization, PosContext.Instance.RetailStore.Retail_store_no, PosSettings.Default.Station, EclipsePos.Data.TotalName.DAILY_BASE, TotalType.CASH_SALES, Amount - Change); EclipsePos.Data.Total total2 = new EclipsePos.Data.Total(); total2.AddToTotal( PosSettings.Default.Organization, PosContext.Instance.RetailStore.Retail_store_no, PosSettings.Default.Station, EclipsePos.Data.TotalName.DAILY_BASE, TotalType.CASH_IN_DRAWER, Amount - Change); int count = PosContext.Instance.CurrentEj.SalesPerson.Count; PosContext.Instance.CurrentEj.SalesPerson.ForEach(delegate(EjSalesPerson ejSalesPerson) { TransSalesPerson transSalesPerson = (TransSalesPerson)ejSalesPerson.DataRecord(); string employee_id = transSalesPerson.Employee_no; EclipsePos.Data.PosEmployeeTotal empTotal = new EclipsePos.Data.PosEmployeeTotal(); empTotal.AddToEmployeeTotalAndCount( PosSettings.Default.Organization, PosContext.Instance.RetailStore.Retail_store_no, PosSettings.Default.Station, employee_id, 0, EclipsePos.Data.TotalName.DAILY_BASE, TotalType.CASH_IN_DRAWER, 1, (Amount - Change) / count ); }); this.transTender.State = (int)EjLineStates.PAID; this.transTender.UpdateState(); }
public override void UpdateTotals() { if (PosContext.Instance.Training) { return; } EclipsePos.Data.Total total = new EclipsePos.Data.Total(); total.AddToTotal( PosSettings.Default.Organization, PosSettings.Default.Store, PosSettings.Default.Station, EclipsePos.Data.TotalName.DAILY_BASE, TotalType.ALT_CURRENCY_BASE + PosContext.Instance.AltCurrencyCode.Pos_key_number, this.SplitAmount); total.AddToTotal( PosSettings.Default.Organization, PosSettings.Default.Store, PosSettings.Default.Station, EclipsePos.Data.TotalName.DAILY_BASE, TotalType.CASH_SALES, transTender.Amount - transTender.Change_amount); if (transTender.Change_amount != 0.0) { //EclipsePos.Data.Total total2 = new EclipsePos.Data.Total(); total.AddToTotal( PosSettings.Default.Organization, PosSettings.Default.Store, PosSettings.Default.Station, EclipsePos.Data.TotalName.DAILY_BASE, TotalType.CASH_IN_DRAWER, PosContext.Instance.PosMath.Mult(transTender.Change_amount, -1)); } /* total.AddToTotal( * PosSettings.Default.Organization, * PosContext.Instance.RetailStore.Retail_store_no, * PosSettings.Default.Station, * EclipsePos.Data.TotalName.DAILY_BASE, * TotalType.CASH_IN_DRAWER, * transTender.Amount - transTender.Change_amount );*/ this.transTender.State = (int)EjLineStates.PAID; this.transTender.UpdateState(); }
private void TerminalReportForCashInDrawer(TerminalReport report, int start, int end) { this.PrintReceipt(PosContext.Instance.Parameters.getParam("CashInDrawer"), 0, PosContext.Instance.Training); double cashInDrawer = 0; foreach (object obj in report.PosTotal.Totals) { EclipsePos.Data.Total total = obj as EclipsePos.Data.Total; String countLit = null; String amountLit = null; if ((total.Total_type > start) && (total.Total_type < end)) { int type = total.Total_type - start; switch (type) { case (int)TotalType.CASH_SALES: countLit = PosContext.Instance.Parameters.getParam("CashSalesCount"); amountLit = PosContext.Instance.Parameters.getParam("CashSalesAmount"); break; // case (int) TotalType.CASH_IN_DRAWER: // countLit = PosContext.Instance.Parameters.getParam("CashInDrCount"); // amountLit = PosContext.Instance.Parameters.getParam("CashInDrAmount"); // break; case (int)TotalType.CASH_BACK: countLit = PosContext.Instance.Parameters.getParam("CashBackCount"); amountLit = PosContext.Instance.Parameters.getParam("CashBackAmount"); break; case (int)TotalType.PAID_IN: countLit = PosContext.Instance.Parameters.getParam("PaidInCount"); amountLit = PosContext.Instance.Parameters.getParam("PaidInAmount"); break; case (int)TotalType.PAID_OUT: countLit = PosContext.Instance.Parameters.getParam("PaidOutCount"); amountLit = PosContext.Instance.Parameters.getParam("PaidOutAmount"); break; case (int)TotalType.LOAN: countLit = PosContext.Instance.Parameters.getParam("LoanCount"); amountLit = PosContext.Instance.Parameters.getParam("LoanAmount"); break; case (int)TotalType.PICK_UP: countLit = PosContext.Instance.Parameters.getParam("PickupCount"); amountLit = PosContext.Instance.Parameters.getParam("PickupAmount"); break; default: break; } if (countLit != null) { this.PrintReceipt(amountLit.Trim(), total.Total_amount, PosContext.Instance.Training); cashInDrawer += total.Total_amount; } } } string strCashInDrawer = PosContext.Instance.Parameters.getParam("CashInDrAmount"); this.PrintReceipt(strCashInDrawer, cashInDrawer, PosContext.Instance.Training); }
private void TerminalReportByCollections(TerminalReport report, int start, int end) { this.PrintReceipt(PosContext.Instance.Parameters.getParam("Collections"), 0, PosContext.Instance.Training); double totalCollection = 0; foreach (object obj in report.PosTotal.Totals) { EclipsePos.Data.Total total = obj as EclipsePos.Data.Total; String countLit = null; String amountLit = null; if ((total.Total_type > start) && (total.Total_type < end)) { int type = total.Total_type - start; switch (type) { case (int)TotalType.CASH_SALES: countLit = PosContext.Instance.Parameters.getParam("CashSalesCount"); amountLit = PosContext.Instance.Parameters.getParam("CashSalesAmount"); break; case (int)TotalType.GIFT_CERTIFICATE: countLit = PosContext.Instance.Parameters.getParam("GiftCertCount"); amountLit = PosContext.Instance.Parameters.getParam("GiftCertAmount"); break; case (int)TotalType.CHECK: case (int)TotalType.CHECK_IN_DRAWER: countLit = PosContext.Instance.Parameters.getParam("CheckCount"); amountLit = PosContext.Instance.Parameters.getParam("CheckAmount"); break; default: break; } if (type > 400 && type < 500) { object objCard = PosContext.Instance.Config.CardMediaByTotalType[type]; if (objCard is CardMedia) { CardMedia cMedia = objCard as CardMedia; countLit = cMedia.Media_name; amountLit = cMedia.Media_name; } } if (countLit != null) { this.PrintReceipt(amountLit.Trim(), total.Total_amount, PosContext.Instance.Training); totalCollection += total.Total_amount; } } } string strCollectionTotal = PosContext.Instance.Parameters.getParam("CollectionTotal"); this.PrintReceipt(strCollectionTotal, totalCollection, PosContext.Instance.Training); }
/** * Validate the validity of the input amount. */ private bool AmountIsValid() { if (this.transType == (int)TotalType.PAID_IN) { return(true); } // because it is already negative double amount = PosContext.Instance.PosMath.Mult(transAmount, -1.0); PosTotal posTotal = new PosTotal(); posTotal.Organization_no = PosSettings.Default.Organization; posTotal.Store_no = PosSettings.Default.Store; posTotal.Pos_no = PosSettings.Default.Station; posTotal.Total_name = (int)TotalName.DAILY_BASE; posTotal.Load(); posTotal.Relations(); foreach (object obj in posTotal.Totals) { EclipsePos.Data.Total tot = obj as EclipsePos.Data.Total; if (tot.Total_type == (int)EclipsePos.Data.TotalType.CASH_IN_DRAWER) { if (tot.Total_amount > amount) { return(true); } } } return(false); /* String fetchSpec = PosTotal.getBySiteAndPos (context ().siteID (), context ().posNo ()); * Vector results = Application.dbConnection ().fetch (new PosTotal (), fetchSpec); * * if (results.size () > 0) * { * PosTotal posTotal = (PosTotal) results.elementAt (0); * for (int i=0; i<posTotal.totals ().size (); i++) * { * * Total total = (Total) posTotal.totals ().elementAt (i); * * * if (total.totalType () == Total.CASH_IN_DRAWER) * { * * double mediaTotal = total.totalAmount (); * if (mediaTotal < amount) * { * return false; * } * } * } * } */ //return false; }
public override void UpdateTotals() { if (PosContext.Instance.Training) { return; } if (this.Amount != 0.0) { /* * EclipsePos.Data.Total total = new EclipsePos.Data.Total(); * total.AddToTotal( * PosContext.Instance.RetailStore.Retail_store_no, * PosSettings.Default.Station, * TotalType.CASH, * transBank.Amount); * * * * switch ((TotalType)transBank.Pay_type) * { * * case TotalType.PAID_IN: * case TotalType.PAID_OUT: * case TotalType.PICK_UP: * case TotalType.LOAN: * * EclipsePos.Data.Total total2 = new EclipsePos.Data.Total(); * total2.Total_id = PosContext.Instance.RetailStore.Retail_store_no; * total2.Pos_total_id = PosSettings.Default.Station; * total2.Total_type = (int)TotalType.CASH_IN_DRAWER; * total2.Total_count = 0; * total2.Total_amount = transBank.Amount; * total2.Add(); * * break; * default: * break; * } */ //return null; EclipsePos.Data.Total total1 = new EclipsePos.Data.Total(); total1.AddToTotal( PosSettings.Default.Organization, PosSettings.Default.Store, PosSettings.Default.Station, EclipsePos.Data.TotalName.DAILY_BASE, (TotalType)transBank.Pay_type, transBank.Amount); EclipsePos.Data.Total total2 = new EclipsePos.Data.Total(); total2.AddToTotal( PosSettings.Default.Organization, PosSettings.Default.Store, PosSettings.Default.Station, EclipsePos.Data.TotalName.DAILY_BASE, TotalType.CASH_IN_DRAWER, transBank.Amount); int count = PosContext.Instance.CurrentEj.SalesPerson.Count; PosContext.Instance.CurrentEj.SalesPerson.ForEach(delegate(EjSalesPerson ejSalesPerson) { TransSalesPerson transSalesPerson = (TransSalesPerson)ejSalesPerson.DataRecord(); //PosContext.Instance.CurrentEj.SalesPerson.DataRecord(); string employee_id = transSalesPerson.Employee_no; EclipsePos.Data.PosEmployeeTotal empTotal = new EclipsePos.Data.PosEmployeeTotal(); empTotal.AddToEmployeeTotalAndCount( PosSettings.Default.Organization, PosContext.Instance.RetailStore.Retail_store_no, PosSettings.Default.Station, employee_id, 0, EclipsePos.Data.TotalName.DAILY_BASE, (TotalType)transBank.Pay_type, 1, (Amount - Change) / count ); }); } }