コード例 #1
0
ファイル: PrinterManager.cs プロジェクト: guandy2016/Print
        //打印发货单或快递单
        public static void PrintOrder(Guid templateModelID, OrderPrintDataDTO orderPrintDataDto, string printerName,
                                      DataEntity.PrintType printType, YesOrNo isGlass, PrintAbout printAbout)
        {
            if (printAbout == PrintAbout.Order && (printType == DataEntity.PrintType.Manual || printType == DataEntity.PrintType.Again))
            {
                WMSService.CurrentWMSService.RecordPrinted(orderPrintDataDto.DownGoodsBillNo);
            }
            CurrentPrintPage.About = printAbout;
            //打印数据初始化
            PrintEditResultModel perm = GetModel(templateModelID);

            CurrentPrintPage.PrintEntity = EntityConvert <OrderDetailPrintDataDTO> .Objs2Fields(perm, Machining.MachiningOrder(orderPrintDataDto));

            perm.Extends.Add("PrintType", printType);
            //纸张设置默认
            if (CurrentPrintPage.PrintEntity.PageModel != null)
            {
                CurrentPrintPage.DefaultPageSettings.PaperSize = new PaperSize(
                    CurrentPrintPage.PrintEntity.PageModel.PageName,
                    CommonFunction.Millimeter2Pix(CurrentPrintPage.PrintEntity.PageModel.Width),
                    CommonFunction.Millimeter2Pix(CurrentPrintPage.PrintEntity.PageModel.Height));
            }

            // 打印机名称
            CurrentPrintPage.PrinterSettings.PrinterName = printerName;
            CurrentPrintPage.DocumentName = printIndex++.ToString();
            if (CurrentPrintPage.PrinterSettings.IsValid)
            {
                CurrentPrintPage.Print();
            }
        }