public void CreateReg()
        {
            var          td = new Doc.Odf.TextDocument();//FlowEnvir.Config.PersonalSetting.RegTemplate.Data);
            OdtProcessor op = new OdtProcessor(td);

            Dictionary <string, object> elements = new Dictionary <string, object>(StringComparer.Ordinal);

            DocumentWork firstDoc = (DocumentWork)listDocuments.ListSource[0];
            DateTime     dt       = DateTime.Now;

            var nodes = listUsers.Nodes.GetChecked().ToList();

            elements.Add("Номер", firstDoc.Id);

            elements.Add("ДатаОтправки", dt.ToString("D", Locale.Instance.Culture));

            string departs = "";

            foreach (TableItemNode ss in nodes)
            {
                departs += ((User)ss.Item).Department.Name + "; ";
            }
            elements.Add("Департамент", departs);
            elements.Add("ВсегоДокументов", listDocuments.ListSource.Count);
            elements.Add("Отправитель", GuiEnvironment.User.ToString());

            string users = "";

            foreach (TableItemNode ss in nodes)
            {
                users += ((User)ss.Item).Name + "; ";
            }
            elements.Add("Получатель", users);

            var subparam = new Dictionary <string, object>(StringComparer.Ordinal);
            var param    = new List <Dictionary <string, object> >();

            foreach (DocumentWork row in (IEnumerable)listDocuments.ListSource)
            {
                subparam = new Dictionary <string, object>(StringComparer.Ordinal)
                {
                    { "numberio", row.Document["INOUTNUM"] },
                    { "number", row.Document.PrimaryCode }
                };
                //subparam.Add (row.Description);
                param.Add(subparam);
            }
            elements.Add("Документы", param);

            op.PerformReplace(elements);

            string filename = Path.Combine(Helper.GetDirectory(Environment.SpecialFolder.LocalApplicationData), "Reg" + firstDoc.Id + ".odt");

            td.Save(filename);
            //System.Diagnostics.Process p =
            Process.Start(filename);
        }
Exemple #2
0
 internal static ToolMenuItem InitWork(DocumentWork d, EventHandler clickHandler)
 {
     return(new ToolMenuItem(clickHandler)
     {
         Tag = d,
         Name = d.Id.ToString(),
         Text = string.Format("{0}-{1}", d.Stage, d.User)
     });
 }
        public static async Task <Command> Send(Widget widget, IEnumerable <Document> documnets, DocumentWork work, Stage stage, User user)
        {
            var sender = new DocumentSender();

            sender.Localize();
            sender.Initialize(documnets.ToList());

            // sender.Hidden += SenderSendComplete;
            if (stage != null && user != null)
            {
                sender.Send(stage, user, DocumentSendType.Next);
            }
            return(await sender.ShowAsync(widget, Point.Zero));
        }