public void test() { ReceiptBuilder builder = new ReceiptBuilder(); builder.AppendLine("First line in default"); builder.Alignment = PrintAlignment.Center; builder.AppendLine("Second line centered"); builder.Bold = true; builder.AppendLine("Third line is bold"); builder.Reset(); builder.AppendLine("Last line back in regular style"); builder.FeedLines(5); builder.PartialCut(); }
private void CreatingResultForm_Load(object sender, EventArgs e) { Thread createResult = new Thread(new ThreadStart(() => { double depositsum = 0.0; System.Threading.Thread.Sleep(2000); Cart purchs = DatabaseHandler.GetUserPurchaseSummary(profile, user); Cart cancs = DatabaseHandler.GetUserCancellationSummary(profile, user); Dictionary<Deposit, int> deps = DatabaseHandler.GetUserDepositReturns(user, profile); double depositReturnSum = 0.0; // calculate total sum of returned deposits foreach (KeyValuePair<Deposit, int> d in deps) depositReturnSum += d.Key.Amount * d.Value; foreach (ArticleCount c in cancs.Container) for (int j = 0; j < c.Count; j++) purchs.Decrement(c.Article); _printstring = new ReceiptBuilder(); _printstring.Alignment = PrintAlignment.Center; _printstring.DoubleHeight = true; _printstring.Font = FontType.B; _printstring.AppendLine(LoginForm.CashpointSettings["OrganizationName"]); _printstring.AppendLine("\r\n" + profile.Name + "\r\n"); _printstring.Font = FontType.A; _printstring.DoubleWidth = true; _printstring.AppendLine("KASSENAUSWERTUNG\r\n"); _printstring.DoubleHeight = false; _printstring.DoubleWidth = false; _printstring.Font = FontType.B; _printstring.AppendLine(DateTime.Now.ToString()); _printstring.Reset(); _printstring.FeedLines(2); _printstring.Bold = true; _printstring.AppendLine("VERANSTALTUNG"); _printstring.Bold = false; _printstring.Alignment = PrintAlignment.Right; _printstring.AppendLine(profile.Name); _printstring.Alignment = PrintAlignment.Left; _printstring.Bold = true; _printstring.AppendLine("BENUTZER"); _printstring.Bold = false; _printstring.Alignment = PrintAlignment.Right; _printstring.AppendLine(user.Username); _printstring.FeedLines(2); _printstring.Alignment = PrintAlignment.Left; _printstring.Bold = true; _printstring.AppendLine("ARTIKEL"); _printstring.Bold = false; purchs.Sort(FHoner.Kasse.Frontend.Controller.Model.SortOrder.SortCriteria.Name); // add articles foreach (ArticleCount ac in purchs.Container) { _printstring.AppendLine(" " + FormatItem(ac)); } _printstring.Bold = true; _printstring.AppendLine("\nPFANDRUECKGABE"); _printstring.Bold = false; // add deposit returns foreach (KeyValuePair<Deposit, int> dp in deps) { _printstring.AppendLine(" " + FormatItem(dp)); } // calculate deposit sum foreach (ArticleCount c in purchs.Container) if (c.Article.Deposit.DepositID != -1) depositsum += c.Article.Deposit.Amount * c.Count; // subtract returned deposit sum depositsum -= depositReturnSum; _printstring.Bold = true; _printstring.AppendLine("\nGESAMT"); _printstring.Bold = false; _printstring.AppendLine(" Artikel " + (purchs.Count - deps.Sum(x => x.Value)).ToString()); _printstring.AppendLine(" Pfand " + string.Format("{0:0.00}", depositsum)); _printstring.AppendLine(" Umsatz " + string.Format("{0:0.00}", purchs.Amount)); //_printstring.AppendLine(" Summe " + string.Format("{0:0.00}", purchs.AmountWithDeposit - depositReturnSum)); _printstring.FeedLines(7); _printstring.PartialCut(); if (!_cancelled) { OnResultCreated(this, new ResultCreatedEventArgs(_printstring.ToString(), (int)duration.TotalMilliseconds)); this.Invoke(new Action(() => { this.Close(); })); } })); createResult.Start(); }