private void frmBarCode_Load(object sender, EventArgs e) { try { DataTable dt = classSQL.select("SELECT traje_do,popust,aktivnost FROM promocija1", "promocija1").Tables[0]; double UKpopust = ukupno * Convert.ToDouble(dt.Rows[0]["popust"].ToString()) / 100; DateTime RunsUntil; DateTime dvo = DateTime.Now; RunsUntil = dvo.AddDays(Convert.ToInt16(dt.Rows[0]["traje_do"].ToString()));; Image myimg = Code128Rendering.MakeBarcodeImage("000" + broj_dokumenta, int.Parse("3"), true); string path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\barcode.png"; ResizeBarCode(myimg, 100).Save(path); string txt = "<html><body style=\"font-family:Verdana, Geneva, sans-serif\"><div>Naša zahvala za Vašu kupovinu:</div><div>" + UKpopust.ToString("#0.00") + " kn popusta.</div><br/><br/>"; txt += "<img src=\"" + Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\barcode.png\" width=\"300\" height=\"100\" /><br/><br/><br/>"; txt += "<div>Popust odgovara " + dt.Rows[0]["popust"].ToString() + "% vrijednosti kupovine koju dobivate kod iduće kupovine.</div>" + "<div>Trajanje kupona vrijedi do " + RunsUntil.ToString() + "</div>" + "<div>Gotovinska isplata nije moguća. \r\nIznos sljedeće kupovine mora biti jednak ili veći od vrijednosti bona.</div></html></body>"; webBrowser1.DocumentText = txt; } catch (Exception ex) { MessageBox.Show(this, ex.Message, this.Text); } }
private static void PrintReceiptFooter(double subTotal, double tax, double discount, double ukupno, string barcode, string[] fiskalizacija, double PNP) { string offSetString = new string(' ', 0); PrintTextLine(new string('=', RecLineChars)); if (Class.PosPrint.ispisUkupnoIspodStavkiMaliPrinter && DTpostavke.Rows[0]["direct_print"].ToString() == "0") { PrintTextLine("{[5AR]}"); PrintTextLine(new string('=', RecLineChars)); } if (ukupno_rabat > 0) { PrintTextLine("UKUPNO POPUST: " + Math.Round(ukupno_rabat, 3).ToString("#0.00") + " kn"); } if (DTpostavke.Rows[0]["sustav_pdv"].ToString() == "1") { for (int i = 0; i < DTpdv.Rows.Count; i++) { //PrintTextLine("PDV " + DTpdv.Rows[i]["stopa"].ToString() + "%: " + Convert.ToDecimal(DTpdv.Rows[i]["iznos"].ToString()).ToString("#0.00") + " OSNOVICA: " + Convert.ToDecimal(DTpdv.Rows[i]["osnovica"].ToString()).ToString("#0.00")); PrintTextLine("PDV " + DTpdv.Rows[i]["stopa"].ToString() + "%: " + Convert.ToDecimal(DTpdv.Rows[i]["iznos"].ToString()).ToString("#0.00") + " OSNOVICA: " + subTotal.ToString("#0.00")); } } else { PrintTextLine("PDV nije uračunat u cijenu prema"); if (Class.PodaciTvrtka.oibTvrtke == "36486943127") { tekst += Environment.NewLine; } PrintTextLine("čl.90. st.2. zakona o PDV-u."); } PrintTextLine(offSetString + String.Format("PNP: {0}", PNP.ToString("#0.00"))); PrintTextLine(offSetString + new string('-', RecLineChars)); _2 = tekst; tekst = ""; PrintTextLine(offSetString + string.Format("UKUPNO: {0} KN", ukupno.ToString("#0.00"))); _3 = tekst; tekst = ""; _4 = ""; if (dt.Rows.Count > 0) { if (dt.Rows[0]["aktivnost"].ToString() == "DA" && barcode != "") { tekst += offSetString + new string('-', (RecLineChars)) + Environment.NewLine; tekst += "Naša zahvala za Vašu kupovinu." + Environment.NewLine; double UKpopust = ukupno * Convert.ToDouble(dt.Rows[0]["popust"].ToString()) / 100; tekst += UKpopust.ToString("#0.00") + " kn popusta." + Environment.NewLine + Environment.NewLine; _4 = tekst; tekst = ""; DateTime RunsUntil; DateTime dvo = DateTime.Now; RunsUntil = dvo.AddDays(Convert.ToInt16(dt.Rows[0]["traje_do"].ToString())); tekst = "Popust odgovara " + dt.Rows[0]["popust"].ToString() + "% vrijednosti kupovine \r\nkoju dobivate kod iduće kupovine. \r\nTrajanje kupona do " + RunsUntil.ToString() + Environment.NewLine; tekst += "Gotovinska isplata nije moguća." + Environment.NewLine + "Iznos sljedeće kupovine mora biti jednak \r\nili veći od vrijednosti bona." + Environment.NewLine; } else { tekst = ""; } } else { tekst = ""; } if (napomena != "") { tekst += new string('-', (RecLineChars)) + Environment.NewLine; nap = ""; tekst += PrintTextRecursiveString(napomena + Environment.NewLine); _4 += tekst; tekst = ""; } string[] lines = DTsetting.Rows[0]["bottom_text"].ToString().Split('\n'); tekst += Environment.NewLine + Environment.NewLine; foreach (string line in lines) { int brojText = line.Trim().Length; int brojOstatak = (RecLineChars - brojText) / 2; string praznaMjesta = ""; for (int _br = 0; _br < brojOstatak; _br++) { praznaMjesta += " "; } tekst += praznaMjesta + line.Trim() + "\r\n"; } for (int i = 0; i < Convert.ToInt16(DTsetting.Rows[0]["linija_praznih_bottom"].ToString()); i++) { tekst += Environment.NewLine; } _5 = tekst; tekst = ""; }
private static void PrintReceiptFooter(double subTotal, double tax, double discount, double ukupno, string barcode, string[] fiskalizacija, string placanje) { //string _placanje = ""; //if (placanje == "G") //{ // _placanje = "gotovina"; //} //else if (placanje == "K") //{ // _placanje = "kartica"; //} //else //{ // _placanje = "ostalo"; //} string offSetString = new string(' ', 0); PrintTextLine(new string('-', (RecLineChars / 3) * 2)); string za_povrat = "Plačeno: "; decimal ukupno_gotovina = Convert.ToDecimal(DTrac.Rows[0]["ukupno_gotovina"].ToString()); decimal ukupno_kartice = Convert.ToDecimal(DTrac.Rows[0]["ukupno_kartice"].ToString()); decimal dobiveno_gotovina = Convert.ToDecimal(DTrac.Rows[0]["dobiveno_gotovina"].ToString()); if (ukupno_gotovina > 0 && ukupno_kartice == 0) { za_povrat += "Gotovina: " + ukupno_gotovina.ToString("#0.00") + " "; } else if (ukupno_kartice > 0 && ukupno_gotovina == 0) { za_povrat += "Kartice: " + ukupno_kartice.ToString("#0.00"); } else { za_povrat += "Ostalo"; } PrintTextLine(za_povrat); if (dobiveno_gotovina > 0) { za_povrat = "Za vratiti :" + Convert.ToDecimal(dobiveno_gotovina - ukupno_gotovina - ukupno_kartice).ToString("#0.00") + "\r\n"; PrintTextLine(za_povrat); } PrintTextLine(offSetString + String.Format("OSNOVICA: {0}", subTotal.ToString("#0.00"))); PrintTextLine(offSetString + String.Format("PDV: {0}", tax.ToString("#0.00"))); PrintTextLine(offSetString + String.Format("POPUST: {0}", discount.ToString("#0.00"))); if (DTfis.Rows[0]["aktivna"].ToString() == "1") { tekst += "JIR:" + fiskalizacija[0] + "\r\n" + "ZKI:" + fiskalizacija[1] + "\r\n"; } PrintTextLine(offSetString + new string('-', RecLineChars)); rStavke = tekst; tekst = ""; PrintTextLine(offSetString + String.Format("UKUPNO: {0}", ukupno.ToString("#0.00"))); rUkupno = tekst; tekst = ""; DataTable dt = classSQL.select("SELECT traje_do,popust,aktivnost FROM promocija1", "promocija1").Tables[0]; if (dt.Rows[0]["aktivnost"].ToString() == "DA" && barcode != "") { tekst += offSetString + new string('-', (RecLineChars)) + Environment.NewLine; tekst += "Naša zahvala za Vašu kupovinu." + Environment.NewLine; double UKpopust = ukupno * Convert.ToDouble(dt.Rows[0]["popust"].ToString()) / 100; tekst += UKpopust.ToString("#0.00") + " kn popusta." + Environment.NewLine + Environment.NewLine; rZahvala = tekst; tekst = ""; DateTime RunsUntil; DateTime dvo = DateTime.Now; RunsUntil = dvo.AddDays(Convert.ToInt16(dt.Rows[0]["traje_do"].ToString())); ; tekst = Environment.NewLine + "Popust odgovara " + dt.Rows[0]["popust"].ToString() + "% vrijednosti kupovine \r\nkoju dobivate kod iduće kupovine. \r\nTrajanje kupona do " + RunsUntil.ToString() + Environment.NewLine; tekst += "Gotovinska isplata nije moguća." + Environment.NewLine + "Iznos sljedeće kupovine mora biti jednak \r\nili veći od vrijednosti bona." + Environment.NewLine; } else { tekst = ""; } tekst += Environment.NewLine + Environment.NewLine + DTsetting.Rows[0]["bottom_text"].ToString() + Environment.NewLine; for (int i = 0; i < Convert.ToInt16(DTsetting.Rows[0]["linija_praznih_bottom"].ToString()); i++) { tekst += Environment.NewLine; } rBottom = tekst; tekst = ""; }
private static void PrintReceiptFooter(double subTotal, double tax, double discount, double ukupno, string barcode, string[] fiskalizacija, double PNP) { string offSetString = new string(' ', 0); PrintTextLine(new string('=', RecLineChars)); if (Class.PosPrint.ispisUkupnoIspodStavkiMaliPrinter && DTpostavke.Rows[0]["direct_print"].ToString() == "0") { PrintTextLine("{[5AR]}"); PrintTextLine(new string('=', RecLineChars)); } //PrintTextLine(offSetString + String.Format("OSNOVICA: {0}", subTotal.ToString("#0.00"))); if (ukupno_rabat > 0) { PrintTextLine("UKUPNO POPUST: " + Math.Round(ukupno_rabat, 3).ToString("#0.00") + " kn"); } decimal popust_cijeli_racun = 0; decimal.TryParse(DTrac.Rows[0]["popust_cijeli_racun"].ToString(), out popust_cijeli_racun); if (popust_cijeli_racun > 0) { decimal popust_iznos = 0; popust_iznos = ((decimal)ukupno * (1 + (((100 * popust_cijeli_racun) / (100 - popust_cijeli_racun)) / 100))) - (decimal)ukupno; PrintTextLine("UKUPNO POPUSTA NA RAČUN: " + popust_cijeli_racun + "%"); PrintTextLine("POPUST U KN: " + Math.Round(popust_iznos, 3).ToString("#0.00") + " kn"); } //if (karticaIznosZaOduzeti > 0) //{ // PrintTextLine("UKUPNO POPUSTA NA RAČUN U KN: " + karticaIznosZaOduzeti + " kn"); //} if (DTpostavke.Rows[0]["sustav_pdv"].ToString() == "1") { for (int i = 0; i < DTpdv.Rows.Count; i++) { PrintTextLine("PDV " + DTpdv.Rows[i]["stopa"].ToString() + "%: " + Convert.ToDecimal(DTpdv.Rows[i]["iznos"].ToString()).ToString("#0.00") + " OSNOVICA: " + Convert.ToDecimal(DTpdv.Rows[i]["osnovica"].ToString()).ToString("#0.00")); } } else { PrintTextLine("PDV nije uračunat u cijenu prema"); if (Class.PodaciTvrtka.oibTvrtke == "36486943127") { tekst += Environment.NewLine; } PrintTextLine("čl.90. st.2. zakona o PDV-u."); } PrintTextLine(offSetString + String.Format("PNP: {0}", PNP.ToString("#0.00"))); //PrintTextLine(offSetString + String.Format("POPUST: {0}", discount.ToString("#0.00"))); try { if (Convert.ToDouble(DTrac.Rows[0]["dobiveno_gotovina"].ToString()) > 0) { tekst += "DOBIVENO NOVČANICE: " + Convert.ToDouble(DTrac.Rows[0]["dobiveno_gotovina"].ToString()).ToString("#0.00") + " kn\n"; } else if (DTrac.Rows[0]["nacin_placanja"].ToString() == "K") { tekst += "PLAĆENO KARTICOM.\r\n"; } else if (DTrac.Rows[0]["nacin_placanja"].ToString() == "O") { tekst += "OSTALI NAČINI PLAČANJA.\r\n"; } else if (DTrac.Rows[0]["nacin_placanja"].ToString() == "T") { tekst += "PLAĆANJE VIRMAN.\r\n\r\nUPLATA NA:\r\n"; if (DT.Rows[0]["zr"].ToString() != "") { tekst += "ŽR: " + DT.Rows[0]["zr"].ToString() + "\r\n"; } if (DT.Rows[0]["zr"].ToString() != "") { tekst += "IBAN: " + DT.Rows[0]["iban"].ToString() + "\r\n"; } tekst += "MODEL BR: " + BrojRacunaa + "-" + Convert.ToDateTime(DTrac.Rows[0]["datum_racuna"].ToString()).Year + "\r\n"; tekst += classOstalo.SvavkaZaPrinter(DT.Rows[0]["napomenaTransa"].ToString(), RecLineChars) + "\r\n"; } } catch (Exception e) { MessageBox.Show(e.ToString()); } PrintTextLine(offSetString + new string('-', RecLineChars)); _2 = tekst; tekst = ""; if (DTfis.Rows[0]["aktivna"].ToString() == "1") { fiskal_tekst = ""; kockice = ""; fiskal_tekst += "JIR:" + fiskalizacija[0] + "\r\n" + "ZKI:" + fiskalizacija[1] + "\r\n"; classSQL.update("UPDATE racuni SET jir='" + fiskalizacija[0] + "', zik='" + fiskalizacija[1] + "' WHERE broj_racuna='" + BrojRacunaa + "' AND racuni.id_ducan='" + Util.Korisno.idDucan + "' AND racuni.id_kasa='" + Util.Korisno.idKasa + "'"); for (int j = 0; j < RecLineChars; j++) { kockice += "="; } kockice += "\r\n"; } PrintTextLine(offSetString + string.Format("UKUPNO: {0} KN", ukupno.ToString("#0.00"))); _3 = tekst; tekst = ""; //Embed 'center' alignment tag on front of string below to have it printed in the center of the receipt. //PrintTextLine(printer, System.Text.ASCIIEncoding.ASCII.GetString(new byte[] { 27, (byte)'|', (byte)'c', (byte)'A' }) + footerText); _4 = ""; if (dt.Rows.Count > 0) { if (dt.Rows[0]["aktivnost"].ToString() == "DA" && barcode != "") { tekst += offSetString + new string('-', (RecLineChars)) + Environment.NewLine; tekst += "Naša zahvala za Vašu kupovinu." + Environment.NewLine; double UKpopust = ukupno * Convert.ToDouble(dt.Rows[0]["popust"].ToString()) / 100; tekst += UKpopust.ToString("#0.00") + " kn popusta." + Environment.NewLine + Environment.NewLine; _4 = tekst; tekst = ""; DateTime RunsUntil; DateTime dvo = DateTime.Now; RunsUntil = dvo.AddDays(Convert.ToInt16(dt.Rows[0]["traje_do"].ToString())); tekst = "Popust odgovara " + dt.Rows[0]["popust"].ToString() + "% vrijednosti kupovine \r\nkoju dobivate kod iduće kupovine. \r\nTrajanje kupona do " + RunsUntil.ToString() + Environment.NewLine; tekst += "Gotovinska isplata nije moguća." + Environment.NewLine + "Iznos sljedeće kupovine mora biti jednak \r\nili veći od vrijednosti bona." + Environment.NewLine; } else { tekst = ""; } } else { tekst = ""; } if (napomena != "") { tekst += new string('-', (RecLineChars)) + Environment.NewLine; nap = ""; tekst += PrintTextRecursiveString(napomena + Environment.NewLine); _4 += tekst; tekst = ""; } //tekst +=Environment.NewLine + Environment.NewLine + DTsetting.Rows[0]["bottom_text"].ToString() + Environment.NewLine; string[] lines = DTsetting.Rows[0]["bottom_text"].ToString().Split('\n'); tekst += Environment.NewLine + Environment.NewLine; foreach (string line in lines) { int brojText = line.Trim().Length; int brojOstatak = (RecLineChars - brojText) / 2; string praznaMjesta = ""; for (int _br = 0; _br < brojOstatak; _br++) { praznaMjesta += " "; } tekst += praznaMjesta + line.Trim() + "\r\n"; } for (int i = 0; i < Convert.ToInt16(DTsetting.Rows[0]["linija_praznih_bottom"].ToString()); i++) { tekst += Environment.NewLine; } _5 = tekst; // Code-iT verzija programa bottom text string codeIt = $"Code-iT verzija programa: {Properties.Settings.Default.verzija_programa.ToString()}"; _6 += Environment.NewLine; PrintTextLine(new string('-', RecLineChars)); string endline = ""; for (int i = 0; i < RecLineChars; i++) { endline += "-"; } string center = ""; for (int i = 0; i < (RecLineChars - codeIt.Length) / 2; i++) { center += " "; } _6 += endline + "\r\n" + center + codeIt; tekst = ""; }
private static void PrintReceiptFooter(double subTotal, double tax, double discount, double ukupno, string barcode, string[] fiskalizacija, double PNP) { string offSetString = new string(' ', 0); PrintTextLine(new string('=', RecLineChars)); try { if (ukupno_rabat > 0) { PrintTextLine("UKUPNO POPUST: " + Math.Round(ukupno_rabat, 3).ToString("#0.00") + " kn"); } if (DTpostavke.Rows[0]["sustav_pdv"].ToString() == "1") { for (int i = 0; i < DTpdv.Rows.Count; i++) { PrintTextLine("PDV " + DTpdv.Rows[i]["stopa"].ToString() + "%: " + Convert.ToDecimal(DTpdv.Rows[i]["iznos"].ToString()).ToString("#0.00") + " OSNOVICA: " + Convert.ToDecimal(DTpdv.Rows[i]["osnovica"].ToString()).ToString("#0.00")); } } else { PrintTextLine("PDV NIJE URAČUNAT U CIJENU!"); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } PrintTextLine(offSetString + String.Format("PNP: {0}", PNP.ToString("#0.00"))); try { if (Convert.ToDouble(DTrac.Rows[0]["dobiveno_gotovina"].ToString()) > 0) { tekst += "GOTOVINA NOVČANICE: " + Convert.ToDouble(DTrac.Rows[0]["dobiveno_gotovina"].ToString()).ToString("#0.00") + " kn\n"; } else if (DTrac.Rows[0]["nacin_placanja"].ToString() == "K") { tekst += "PLAĆENO KARTICOM.\r\n"; } else if (DTrac.Rows[0]["nacin_placanja"].ToString() == "O") { tekst += "OSTALI NAČINI PLAČANJA.\r\n"; } else if (DTrac.Rows[0]["nacin_placanja"].ToString() == "T") { tekst += "PLAĆANJE VIRMAN.\r\n\r\nUPLATA NA:\r\n"; if (DT.Rows[0]["zr"].ToString() != "") { tekst += "ŽR: " + DT.Rows[0]["zr"].ToString() + "\r\n"; } if (DT.Rows[0]["zr"].ToString() != "") { tekst += "IBAN: " + DT.Rows[0]["iban"].ToString() + "\r\n"; } tekst += "MODEL BR: " + BrojRacunaa + "-" + Convert.ToDateTime(DTrac.Rows[0]["datum_racuna"].ToString()).Year + "\r\n"; } } catch (Exception e) { MessageBox.Show(e.ToString()); } PrintTextLine(offSetString + new string('-', RecLineChars)); _2 += tekst; tekst = ""; PrintTextLine(offSetString + String.Format("UKUPNO: {0}", ukupno.ToString("#0.00"))); _2 += tekst; tekst = ""; _2 += "JIR: " + "\r\n" + fiskalizacija[0] + "\r\n"; _2 += "ZKI: " + "\r\n" + fiskalizacija[1] + "\r\n"; //Embed 'center' alignment tag on front of string below to have it printed in the center of the receipt. //PrintTextLine(printer, System.Text.ASCIIEncoding.ASCII.GetString(new byte[] { 27, (byte)'|', (byte)'c', (byte)'A' }) + footerText); if (dt.Rows.Count > 0) { if (dt.Rows[0]["aktivnost"].ToString() == "DA" && barcode != "") { tekst += offSetString + new string('-', (RecLineChars)) + Environment.NewLine; tekst += "Naša zahvala za Vašu kupovinu." + Environment.NewLine; double UKpopust = ukupno * Convert.ToDouble(dt.Rows[0]["popust"].ToString()) / 100; tekst += UKpopust.ToString("#0.00") + " kn popusta." + Environment.NewLine + Environment.NewLine; _4 += tekst; tekst = ""; DateTime RunsUntil; DateTime dvo = DateTime.Now; RunsUntil = dvo.AddDays(Convert.ToInt16(dt.Rows[0]["traje_do"].ToString())); tekst = "Popust odgovara " + dt.Rows[0]["popust"].ToString() + "% vrijednosti kupovine \r\nkoju dobivate kod iduće kupovine. \r\nTrajanje kupona do " + RunsUntil.ToString() + Environment.NewLine; tekst += "Gotovinska isplata nije moguća." + Environment.NewLine + "Iznos sljedeće kupovine mora biti jednak \r\nili veći od vrijednosti bona." + Environment.NewLine; } else { tekst = ""; } } else { tekst = ""; } }