private void btnPrint_Click(object sender, EventArgs e) { try { if (this.chkCashBox.Checked) { Gfunc.OpenCash(); // string strMemo = Language.GetString("#0514"); // Gattr.Bll.WriteRetailLog("OPD", 0M, strMemo, Gattr.CashierNo, "", 0M, true); // Gattr.Bll.WriteSysLog(Gattr.LogFile, strMemo, strMemo, 1); } //Gattr.PosPrinter.OpenPrinter(Gattr.PrinterName, Gattr.PrinterPort); //Gattr.PosPrinter.PrintOut("\r\n"); string strOut = ""; List <t_pos_printer_out> listOut = new List <t_pos_printer_out>(); for (int i = 0; i < this.listBox.Items.Count; i++) { if (Gattr.PosPrinter.IsWindowPrinter) { t_pos_printer_out item = new t_pos_printer_out { BigFont = false, Text = this.listBox.Items[i].ToString() }; listOut.Add(item); } else { strOut = strOut + this.listBox.Items[i].ToString() + "\n"; } } if (Gattr.PosPrinter.IsWindowPrinter) { Gattr.PosPrinter.PrintOut(listOut); } else { //Gattr.PosPrinter.PrintOut(strOut); //Gattr.PosPrinter.FooterEmptyLine(); //Gattr.PosPrinter.PrintCut(); } //Gattr.PosPrinter.ClosePrinter(); LoggerHelper.Log("MsmkLogger", System.DateTime.Now.ToString() + "【" + Gattr.OperId + "】进行打印对账信息!", LogEnum.SysLog); } catch (Exception exception) { MessageBox.Show(exception.Message, Gattr.AppTitle); } }
//打印机检测 private void button1_Click(object sender, EventArgs e) { bool IsOpen = false; switch (Port) { case "并口": SendMoneyBox(cboxBK.Text); break; case "串口": System.IO.Ports.SerialPort sPort = new System.IO.Ports.SerialPort(); sPort.PortName = cboxCK.Text; sPort.BaudRate = 9600; sPort.DataBits = 8; sPort.StopBits = (StopBits)Enum.Parse(typeof(StopBits), "1"); sPort.Parity = (Parity)Enum.Parse(typeof(Parity), "1"); sPort.Handshake = (Handshake)Enum.Parse(typeof(Handshake), "1"); IsOpen = POSUtility.Instance.OpenComPort(ref sPort); sPort.Dispose(); break; case "USB": IsOpen = POSUtility.Instance.OpenUSBPort(cboxUSB.Text); break; case "驱动": Gfunc.OpenCash(); break; case "网口": IsOpen = POSUtility.Instance.OpenNetPort(maskedtboxIP.Text); break; } if (IsOpen) { try { if (Port == "并口") { //开钱箱 bool res = POSUtility.Instance.PrintESC(3); if (!res) { MessageBox.Show("开钱箱失败!指令调用返回值:" + res.ToString(), "系统提示"); LoggerHelper.Log("MsmkLogger", "开钱箱失败!指令调用返回值:" + res.ToString(), LogEnum.SysLog); } else { LoggerHelper.Log("MsmkLogger", Gattr.OperId + "通过打印设置打开钱箱", LogEnum.SysLog); } //关闭端口 POSUtility.Instance.ClosePrintLPT(); } else { IntPtr res = POSUtility.POS_KickOutDrawer(0x00, 100, 100); if ((uint)res != POSUtility.Instance.POS_SUCCESS) { MessageBox.Show("开钱箱失败!指令调用返回值:" + res.ToString(), "系统提示"); LoggerHelper.Log("MsmkLogger", "开钱箱失败!指令调用返回值:" + res.ToString(), LogEnum.SysLog); } else { LoggerHelper.Log("MsmkLogger", Gattr.OperId + "通过打印设置打开钱箱", LogEnum.SysLog); } //关闭端口 POSUtility.Instance.ClosePrinterPort(); } } catch (Exception exception) { MessageBox.Show(exception.Message, "系统提示"); } } else { if (Port != "驱动" && Port != "并口") { MessageBox.Show("端口打开失败,请检查一下端口选择是否正确!", Gattr.AppTitle); } } }