Ejemplo n.º 1
0
 public RouteListPrintableDocs(IUnitOfWork uow, RouteList routeList, RouteListPrintableDocuments type)
 {
     _uow           = uow;
     this.routeList = routeList;
     _type          = type;
     CopiesToPrint  = DefaultCopies;
 }
Ejemplo n.º 2
0
        DocumentsPrinterDlg CreateDocumentsPrinterDlg(RouteListPrintableDocuments choise)
        {
            var dlg = new DocumentsPrinterDlg(UoW, Entity, choise);

            dlg.DocumentsPrinted += Dlg_DocumentsPrinted;
            return(dlg);
        }
Ejemplo n.º 3
0
        public static ReportInfo GetRDL(RouteList routeList, RouteListPrintableDocuments type, IUnitOfWork uow = null, bool batchPrint = false)
        {
            switch (type)
            {
            case RouteListPrintableDocuments.LoadDocument:
                return(GetRDLLoadDocument(routeList.Id));

            case RouteListPrintableDocuments.LoadSofiyskaya:
                return(GetRDLLoadSofiyskaya(routeList.Id));

            case RouteListPrintableDocuments.RouteList:
                return(GetRDLRouteList(uow, routeList));

            case RouteListPrintableDocuments.RouteMap:
                return(GetRDLRouteMap(uow, routeList, batchPrint));

            case RouteListPrintableDocuments.TimeList:
                return(GetRDLTimeList(routeList.Id));

            case RouteListPrintableDocuments.DailyList:
                return(GetRDLDailyList(routeList.Id));

            case RouteListPrintableDocuments.OrderOfAddresses:
                return(routeList.OrderOfAddressesRep(routeList.Id));

            default:
                throw new NotImplementedException("Неизвестный тип документа");
            }
        }
Ejemplo n.º 4
0
 void PrintSelectedDocument(RouteListPrintableDocuments choise)
 {
     TabParent.OpenTab(
         QS.Dialog.Gtk.TdiTabBase.GenerateHashName <DocumentsPrinterDlg>(),
         () => CreateDocumentsPrinterDlg(choise)
         );
 }
Ejemplo n.º 5
0
        private void LoadDocument(RouteListPrintableDocuments docType)
        {
            int rlNumber = GetRouteListNumber();

            if (rlNumber == 0)
            {
                return;
            }
            ReportInfo document = null;

            using (IUnitOfWork uow = UnitOfWorkFactory.CreateWithoutRoot()) {
                RouteList rl = uow.GetById <RouteList>(rlNumber);
                if (rl == null)
                {
                    MessageDialogHelper.RunErrorDialog($"Маршрутный лист с номером {rlNumber} не найден");
                    return;
                }
                document = PrintRouteListHelper.GetRDL(rl, docType, uow);
            }

            if (document == null)
            {
                MessageDialogHelper.RunErrorDialog("Не возможно получить печатную форму документа");
                return;
            }

            if (document.Source != null)
            {
                reportViewer.LoadReport(document.Source, document.GetParametersString(), document.ConnectionString, true, document.RestrictedOutputPresentationTypes);
            }
            else
            {
                reportViewer.LoadReport(document.GetReportUri(), document.GetParametersString(), document.ConnectionString, true, document.RestrictedOutputPresentationTypes);
            }
        }
        private DocumentsPrinterViewModel CreateDocumentsPrinterDlg(RouteListPrintableDocuments choise)
        {
            var dlg = new DocumentsPrinterViewModel(
                UoW, _entityDocumentsPrinterFactory, MainClass.MainWin.NavigationManager, Entity, choise, ServicesConfig.InteractiveService);

            dlg.DocumentsPrinted += Dlg_DocumentsPrinted;
            return(dlg);
        }
Ejemplo n.º 7
0
        public DocumentsPrinterDlg(IUnitOfWork uow, RouteList routeList, RouteListPrintableDocuments selectedType)
        {
            this.Build();
            TabName = "Печать документов МЛ";
            entitiyDocumentsPrinter = new EntitiyDocumentsPrinter(uow, routeList, selectedType);
            currentRouteList        = routeList;

            Configure();
        }
Ejemplo n.º 8
0
        public DocumentsPrinterDlg(
            IUnitOfWork uow,
            RouteList routeList,
            IEntityDocumentsPrinterFactory entityDocumentsPrinterFactory,
            RouteListPrintableDocuments selectedType)
        {
            Build();
            TabName = "Печать документов МЛ";
            _entityDocumentsPrinter =
                (entityDocumentsPrinterFactory ?? throw new ArgumentNullException(nameof(entityDocumentsPrinterFactory)))
                .CreateRouteListWithOrderDocumentsPrinter(uow, routeList, new[] { selectedType });

            _currentRouteList = routeList;

            Configure();
        }
Ejemplo n.º 9
0
        public DocumentsPrinterViewModel(
            IUnitOfWork uow,
            IEntityDocumentsPrinterFactory entityDocumentsPrinterFactory,
            INavigationManager navigationManager,
            RouteList routeList,
            RouteListPrintableDocuments selectedType,
            IInteractiveService interactiveService) : base(interactiveService, navigationManager)
        {
            EntityDocumentsPrinter =
                (entityDocumentsPrinterFactory ?? throw new ArgumentNullException(nameof(entityDocumentsPrinterFactory)))
                .CreateRouteListWithOrderDocumentsPrinter(uow, routeList, new[] { selectedType });

            TabName = "Печать документов МЛ";

            _currentRouteList = routeList;
            Configure();
        }
Ejemplo n.º 10
0
        private void PrintDoc(RouteList route, RouteListPrintableDocuments type, PageOrientation orientation, int copies)
        {
            var reportInfo = PrintRouteListHelper.GetRDL(route, type, uow);

            var action = showDialog ? PrintOperationAction.PrintDialog : PrintOperationAction.Print;

            showDialog = false;

            Printer             = new PrintOperation();
            Printer.Unit        = Unit.Points;
            Printer.UseFullPage = true;
            //Printer.DefaultPageSetup = new PageSetup();

            if (PrintSettings == null)
            {
                Printer.PrintSettings = new PrintSettings();
            }
            else
            {
                Printer.PrintSettings = PrintSettings;
            }

            Printer.PrintSettings.Orientation = orientation;

            var rprint = new ReportPrinter(reportInfo);

            rprint.PrepareReport();

            Printer.NPages = rprint.PageCount;
            Printer.PrintSettings.NCopies = copies;
            if (copies > 1)
            {
                Printer.PrintSettings.Collate = true;
            }

            Printer.DrawPage += rprint.DrawPage;
            Printer.Run(action, null);

            PrintSettings = Printer.PrintSettings;
        }
Ejemplo n.º 11
0
        public DocumentsPrinterDlg(IUnitOfWork uow, RouteList routeList, RouteListPrintableDocuments selectedType)
        {
            this.Build();
            TabName          = "Печать документов МЛ";
            currentRouteList = routeList;

            foreach (RouteListPrintableDocuments rlDocType in Enum.GetValues(typeof(RouteListPrintableDocuments)))
            {
                if (rlDocType == RouteListPrintableDocuments.All)
                {
                    continue;
                }
                var  rlDoc                  = new RouteListPrintableDocs(uow, currentRouteList, rlDocType);
                bool isSelected             = selectedType == RouteListPrintableDocuments.All || selectedType == rlDocType;
                SelectablePrintDocument doc = new SelectablePrintDocument(rlDoc, rlDoc.CopiesToPrint)
                {
                    Selected = isSelected
                };
                printDocuments.Add(doc);
            }

            Configure();
        }
Ejemplo n.º 12
0
 public RouteListPrintableDocs(IUnitOfWork uow, RouteList routeList, RouteListPrintableDocuments type)
 {
     this.UoW       = uow;
     this.routeList = routeList;
     this.type      = type;
 }
Ejemplo n.º 13
0
 public RouteListPrintableDocs(IUnitOfWork uow, RouteList routeList, RouteListPrintableDocuments type)
 {
     this.UoW 		 = uow;
     this.routeList 	 = routeList;
     this.type 		 = type;
 }
Ejemplo n.º 14
0
 public EntitiyDocumentsPrinter(IUnitOfWork uow, RouteList routeList, RouteListPrintableDocuments selectedType) : this(uow, routeList, new RouteListPrintableDocuments[] { selectedType })
 {
 }
 private void PrintSelectedDocument(RouteListPrintableDocuments choise)
 {
     TabParent.AddSlaveTab(this, CreateDocumentsPrinterDlg(choise));
 }