public static void ShowTableOnDisp(Object o) { DocumentFileHelper docHelper = null; SalesDocument document = null; decimal totalAdjAmount = 0.0m; if (o is DocumentFileHelper) { docHelper = o as DocumentFileHelper; } else { MenuLabel label = o as MenuLabel; docHelper = label.Value as DocumentFileHelper; } if (docHelper.FileInfo.Name.IndexOf("MASA10") > -1) { cr.State = AlertCashier.Instance(new Confirm("MASA BOÞ", OpenTables)); } else if (countToSellingState == 1) { document = docHelper.LoadDocument(); document.FileOnDisk = docHelper.FileInfo; document.Id = cr.Document.Id; String label = "{0}:{1:D3}\t{2}\n{3}?({4})"; label = String.Format(label, PosMessage.TABLE_NUMBER, docHelper.Id, document.TotalAmount, PosMessage.CLOSE_TABLE, PosMessage.ENTER); Confirm e = new Confirm(label, new StateInstance <Hashtable>(RepeatConfirmed), new StateInstance(OpenTables)); countToSellingState = 0; e.Data["Document"] = document; cr.State = ConfirmCashier.Instance(e); docHelper.Id = cr.Document.Id; docHelper.Remove(cr.Document); } else { document = docHelper.LoadDocument(); foreach (Adjustment adj in document.Adjustments) { totalAdjAmount += adj.NetAmount; } DisplayAdapter.Customer.ShowTableContent(document, totalAdjAmount); countToSellingState++; } }
/// <summary> /// - repeates document printed before. /// - Documents:Receipt,Invoice,Waybill,ReturnDocument,DiplomaticSale /// </summary> /// <param name="o"></param> public static void RepeatDocument(Object o) { DocumentFileHelper docHelper = null; if (o is DocumentFileHelper) { docHelper = o as DocumentFileHelper; } else { MenuLabel label = o as MenuLabel; docHelper = label.Value as DocumentFileHelper; } Hashtable data = new Hashtable(); SalesDocument document = null; document = docHelper.LoadDocument(); document.FileOnDisk = docHelper.FileInfo; data.Add("Document", document); cr.State = RepeatConfirmed(data); //cr.Document.Id = docHelper.Id; cr.Document.Id = cr.Printer.CurrentDocumentId; docHelper.Remove(cr.Document); }
static IState RepeatConfirmed(Hashtable data) { SalesDocument document = null; DocumentFileHelper helper = null; if (data["Document"] is DocumentFileHelper) { helper = ((DocumentFileHelper)data["Document"]); helper.LoadDocument(); } else { document = (SalesDocument)data["Document"]; } if (document.Status == DocumentStatus.Suspended) { document.Resume(); } /*ICustomer customer = cr.Document.Customer; * cr.Document = (SalesDocument)document.Clone(); * * if (customer != null) * cr.Document.Customer = customer; */ if (document.FileOnDisk != null) { if (document.FileOnDisk.Name.IndexOf("MASA") > -1) { DisplayAdapter.Cashier.ClearTableContent(); } } cr.ChangeDocumentType((SalesDocument)document.Clone()); cr.Document.Id = cr.Printer.CurrentDocumentId; return(cr.State); }