示例#1
0
        private void SaveItem()
        {
            tm_Printer entity = new tm_Printer();

            if (action == "edit")
            {
                entity = Core.Container.Instance.Resolve <IServicePrinter>().GetEntity(_id);;
            }
            entity.PrinterName    = labPrinterName.Text.Trim();
            entity.Width          = ddlWidth.SelectedValue;
            entity.PrinterType    = radioPrinterType.SelectedValue;
            entity.IsSinging      = radioIsSinging.SelectedValue;
            entity.IP             = txbIP.Text.Trim();
            entity.Port           = Int32.Parse(numPort.Text);
            entity.Address        = radioAddress.SelectedValue;
            entity.IsOpenCashbox  = radioIsOpenCashbox.SelectedValue;
            entity.IsPrintslabels = radioIsPrintslabels.SelectedValue;
            entity.SerialNumber   = txbSerialNumber.Text.Trim();
            entity.Deploy         = String.Join(",", ckeDeploy.SelectedValueArray);
            if (action == "edit")
            {
                Core.Container.Instance.Resolve <IServicePrinter>().Update(entity);
            }
            else
            {
                Core.Container.Instance.Resolve <IServicePrinter>().Create(entity);
            }
        }
示例#2
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);//释放资源  
            }
        }
示例#3
0
 public string GetPrintName(string id)
 {
     if (int.Parse(id) > 0)
     {
         tm_Printer objType = Core.Container.Instance.Resolve <IServicePrinter>().GetEntity(int.Parse(id));
         return(objType.PrinterName);
     }
     return("");
 }
        protected void btnSave_Click(object sender, EventArgs e)
        {
            //获取退菜菜品信息
            tm_TabieDishesInfo tabieDishesInfo = Core.Container.Instance.Resolve <IServiceTabieDishesInfo>().GetEntity(DishesID);

            if (tabieDishesInfo != null)
            {
                //获取开台信息
                tm_TabieUsingInfo usingEnitty = Core.Container.Instance.Resolve <IServiceTabieUsingInfo>().GetEntity(tabieDishesInfo.TabieUsingID);
                tm_Tabie          objTabie    = Core.Container.Instance.Resolve <IServiceTabie>().GetEntity(usingEnitty.TabieID);
                //获取菜品信息
                tm_Dishes dish = Core.Container.Instance.Resolve <IServiceDishes>().GetEntity((int)tabieDishesInfo.DishesID);
                //创建退菜菜品信息
                tm_TabieDishesInfo backEntity = new tm_TabieDishesInfo();
                backEntity.DishesID     = tabieDishesInfo.DishesID;
                backEntity.DishesCount  = -decimal.Parse(numCount.Text);
                backEntity.Price        = dish.SellPrice;
                backEntity.Moneys       = backEntity.DishesCount * tabieDishesInfo.Price;
                backEntity.DishesType   = "2";
                backEntity.IsFree       = "0";
                backEntity.IsDiscount   = dish.IsDiscount;
                backEntity.TabieUsingID = tabieDishesInfo.TabieUsingID;
                backEntity.UnitName     = GetSystemEnumValue("CPDW", dish.DishesUnit.ToString());
                backEntity.DishesName   = dish.DishesName;
                backEntity.PrintID      = dish.PrinterID;
                backEntity.IsPrint      = 1;
                Core.Container.Instance.Resolve <IServiceTabieDishesInfo>().Create(backEntity);
                //更新开台总价
                usingEnitty.Moneys    += backEntity.Moneys;
                usingEnitty.FactPrice += backEntity.Moneys;
                Core.Container.Instance.Resolve <IServiceTabieUsingInfo>().Update(usingEnitty);
                //打印退菜单据
                tm_Printer objPrinter = Core.Container.Instance.Resolve <IServicePrinter>().GetEntity(tabieDishesInfo.PrintID);
                bool       isPrint    = bool.Parse(ConfigurationManager.AppSettings["IsPrint"]);

                if (isPrint)
                {
                    //判断是否是后厨打印单据
                    if (objPrinter.PrinterType.Equals("2"))
                    {
                        //后厨打印单据
                        new NetPrintHelper().Printeg(backEntity.DishesName, backEntity.DishesCount, backEntity.UnitName, (int)usingEnitty.Population, objPrinter, 3, objTabie.TabieName);
                    }
                    //前台打印单据
                    LocalPrint(backEntity, usingEnitty);//默认打印机
                }
            }
            PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
        }
示例#5
0
        private void Bind()
        {
            tm_Printer entity = Core.Container.Instance.Resolve <IServicePrinter>().GetEntity(_id);

            labPrinterName.Text            = entity.PrinterName;
            ddlWidth.SelectedValue         = entity.Width;
            radioPrinterType.SelectedValue = entity.PrinterType;
            radioIsSinging.SelectedValue   = entity.IsSinging;
            txbIP.Text   = entity.IP;
            numPort.Text = entity.Port.ToString();
            radioAddress.SelectedValue        = entity.Address;
            radioIsOpenCashbox.SelectedValue  = entity.IsOpenCashbox;
            radioIsPrintslabels.SelectedValue = entity.IsPrintslabels;
            txbSerialNumber.Text = entity.SerialNumber;
            string[] list = entity.Deploy.Split(',');
            ckeDeploy.SelectedValueArray = list;
        }
示例#6
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);//释放资源 
            }
        }
示例#7
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);//释放资源 
            }
        }