Beispiel #1
0
        /// <summary>
        /// 打印美团单
        /// </summary>
        /// <param name="groupName"></param>
        /// <param name="printer"></param>
        /// <param name="custmerNO"></param>
        /// <param name="tabie"></param>
        public void Printeg(string groupName, tm_Printer printer, int custmerNO, string tabie, int type)
        {
            var p = new NetPrintHelper();
            var batai = p.GetPrint(printer.IP, printer.Port);//获得吧台打印机  
            var liunull = p.BuildStream();//初始化一个网络访问数据流  

            try
            {
                var liu = p.GetStream(batai, liunull);//获得通讯打印流  
                string title = "";

                p.SetFontSize(liu, 2);//字体变大    
                if (type == 4)
                {
                    p.SetFontSize(liu, 3);//字体变大         
                    title = "####点菜单(走菜)####";
                }
                if (type == 1)
                {
                    p.SetFontSize(liu, 3);//字体变大         
                    title = "美团单";
                }

                p.SetBold(liu, 1);//加粗 
                p.PrintText(liu, tabie + "\n");//打印文字  
                p.PrintText(liu, title + "\n\n");//打印文字   

                p.SetBold(liu, 0);//取消加粗             

                p.SetFontSize(liu, 0);

                p.SetDuiQi(liu, 0);
                p.PrintText(liu, DateTime.Now.ToString() + "             客数:" + custmerNO + "\n");//打印文字      

                p.PrintText(liu, "------------------------------------------------\n");//打印文字

                p.SetFontSize(liu, 1);

                int length = 40 - groupName.Length;
                p.PrintText(liu, groupName.PadRight(length) + 1 + " " + "份\n");//打印文字

                p.SetFontSize(liu, 0);
                p.PrintText(liu, "------------------------------------------------\n");//打印文字   

                p.PrintText(liu, "服务员:002           打印机:" + printer.PrinterName + "\n\n\n\n\n\n");//打印文字      

                p.QieZhi(liu);//切纸  
            }
            catch
            {
                //打印机缺纸或者纸匣打开时,不会出现异常,不用特殊代码判断,数据不会丢失. 
            }

            finally
            {
                p.DiposeStreamClient(batai, liunull);//释放资源  
            }
        }
Beispiel #2
0
        public void Printeg()
        {

            var p = new NetPrintHelper();
            var batai = p.GetPrint();//获得吧台打印机  
            var liunull = p.BuildStream();//初始化一个网络访问数据流  

            try
            {
                var liu = p.GetStream(batai, liunull);//获得通讯打印流  
                string title = "";

                p.SetFontSize(liu, 2);//字体变大         
                title = "点菜单";


                p.SetFontSize(liu, 0);
                p.PrintText(liu, "------------------------------------------------\n");//打印文字   

                p.PrintText(liu, "服务员:002           打印机:测试\n\n\n\n\n\n");//打印文字      

                p.QieZhi(liu);//切纸        

            }
            catch
            {

                //打印机缺纸或者纸匣打开时,不会出现异常,不用特殊代码判断,数据不会丢失.     

            }

            finally
            {

                p.DiposeStreamClient(batai, liunull);//释放资源       

            }

        }
Beispiel #3
0
        /// <summary>
        /// 单个打印点菜单
        /// </summary>
        /// <param name="dishesName">菜品名称</param>
        /// <param name="dishesCount">菜品数量</param>
        /// <param name="unitName">菜品单位</param>
        /// <param name="custmerNO">客数</param>
        /// <param name="printer">打印机信息</param>
        /// <param name="type">单子类型</param>
        /// <param name="tabieName">餐台名称</param>
        public void Printeg(string dishesName, decimal dishesCount, string unitName, int custmerNO, tm_Printer printer, int type, string tabieName)
        {
            var p = new NetPrintHelper();
            var batai = p.GetPrint(printer.IP, printer.Port);//获得吧台打印机  
            var liunull = p.BuildStream();//初始化一个网络访问数据流  

            try
            {
                var liu = p.GetStream(batai, liunull);//获得通讯打印流  
                string title = "";
                if (type == 1)
                {
                    p.SetFontSize(liu, 2);//字体变大         
                    title = "点菜单(留存)";
                }
                if (type == 9)
                {
                    p.SetFontSize(liu, 2);//字体变大         
                    title = "点菜单(上菜)";
                }
                if (type == 2)
                {
                    p.SetFontSize(liu, 2);//字体变大         
                    title = "----叫菜单(留存)----";
                }
                if (type == 8)
                {
                    p.SetFontSize(liu, 2);//字体变大         
                    title = "----叫菜单(上菜)----";
                }
                if (type == 3)
                {
                    p.SetFontSize(liu, 3);//字体变大         
                    title = "####退菜单####";
                }
                p.SetBold(liu, 1);//加粗 
                p.PrintText(liu, tabieName + "\n");//打印文字  
                p.PrintText(liu, title + "\n\n");//打印文字   

                p.SetBold(liu, 0);//取消加粗             

                p.SetFontSize(liu, 0);

                p.SetDuiQi(liu, 0);
                //tm_TabieUsingInfo entity = Core.Container.Instance.Resolve<IServiceTabieUsingInfo>().GetEntity(dishesInfo.TabieUsingID);
                p.PrintText(liu, DateTime.Now.ToString() + "             客数:" + custmerNO + "\n");//打印文字      

                p.PrintText(liu, "------------------------------------------------\n");//打印文字

                p.SetFontSize(liu, 1);

                int length = 40 - dishesName.Length;
                p.PrintText(liu, dishesName.PadRight(length) + Math.Abs(dishesCount) + " " + unitName + "\n");//打印文字
                //dishesInfo.IsPrint = 1;
                //Core.Container.Instance.Resolve<IServiceTabieDishesInfo>().Update(dishesInfo);

                p.SetFontSize(liu, 0);
                p.PrintText(liu, "------------------------------------------------\n");//打印文字   

                p.PrintText(liu, "服务员:002           打印机:" + printer.PrinterName + "\n\n\n\n\n\n");//打印文字      

                p.QieZhi(liu);//切纸        

            }
            catch
            {
                //打印机缺纸或者纸匣打开时,不会出现异常,不用特殊代码判断,数据不会丢失.
            }
            finally
            {
                p.DiposeStreamClient(batai, liunull);//释放资源 
            }
        }
Beispiel #4
0
        /// <summary>
        /// 批量打印点菜单
        /// </summary>
        /// <param name="list"></param>
        /// <param name="printer"></param>
        /// <param name="type"></param>
        /// <param name="tabie"></param>
        public void Printeg(IList<tm_TabieDishesInfo> list, tm_Printer printer, int type, string tabie)
        {
            var p = new NetPrintHelper();
            var batai = p.GetPrint(printer.IP, printer.Port);//获得吧台打印机  
            var liunull = p.BuildStream();//初始化一个网络访问数据流  

            try
            {
                var liu = p.GetStream(batai, liunull);//获得通讯打印流  
                string title = "";
                if (type == 1)
                {
                    p.SetFontSize(liu, 2);//字体变大         
                    title = "点菜单";
                }
                else if (type == 2)
                {
                    p.SetFontSize(liu, 2);//字体变大         
                    title = "加菜单";
                }
                else
                {
                    p.SetFontSize(liu, 3);//字体变大         
                    title = "#退菜单#";
                }
                p.SetBold(liu, 1);//加粗 
                p.PrintText(liu, tabie + "\n");//打印文字  
                p.PrintText(liu, title + "\n\n");//打印文字   

                p.SetBold(liu, 0);//取消加粗             

                p.SetFontSize(liu, 0);

                p.SetDuiQi(liu, 0);
                tm_TabieUsingInfo entity = Core.Container.Instance.Resolve<IServiceTabieUsingInfo>().GetEntity(list[0].TabieUsingID);
                p.PrintText(liu, DateTime.Now.ToString() + "             客数:" + entity.Population + "\n");//打印文字      

                p.PrintText(liu, "------------------------------------------------\n");//打印文字

                p.SetFontSize(liu, 1);
                foreach (tm_TabieDishesInfo item in list)
                {
                    int length = 40 - item.DishesName.Length;
                    p.PrintText(liu, item.DishesName.PadRight(length) + item.DishesCount + " " + item.UnitName + "\n");//打印文字
                    item.IsPrint = 1;
                    Core.Container.Instance.Resolve<IServiceTabieDishesInfo>().Update(item);
                }
                p.SetFontSize(liu, 0);
                p.PrintText(liu, "------------------------------------------------\n");//打印文字   

                p.PrintText(liu, "服务员:002           打印机:" + printer.PrinterName + "\n\n\n\n\n\n");//打印文字      

                p.QieZhi(liu);//切纸        

            }
            catch
            {
                //打印机缺纸或者纸匣打开时,不会出现异常,不用特殊代码判断,数据不会丢失.
            }

            finally
            {
                p.DiposeStreamClient(batai, liunull);//释放资源 
            }
        }