Esempio n. 1
0
        private void BackgroundWorker_DoWork(object sender, DoWorkEventArgs e)
        {
            if (!IsShow)
            {
                try
                {
                    using (DBWokrSql db = new DBWokrSql(ConnectString))
                    {
                        var Ticket = db.CreateTicket(Id_level);

                        var  user     = db.GetUser(Id_user);
                        bool IsOnline = string.IsNullOrWhiteSpace(TicketStore);
                        if (user.ID != 13)
                        {
                            Id_ticket = db.AddTicket(Ticket, Id_user, !IsOnline);
                        }
                        else
                        {
                            IsTEST = true;
                        }

                        if (!IsOnline)
                        {
                            TicketStore = Path.ChangeExtension(Path.Combine(Path.GetDirectoryName(TicketStore), Path.GetFileNameWithoutExtension(TicketStore) + Id_ticket), "docx");
                            //Write to file
                            if (db.WriteTicketToWord(Ticket, user, Id_ticket, TicketStore))
                            {
                                System.Diagnostics.Process.Start("WINWORD.EXE", "\"" + TicketStore + "\"");
                            }
                            else
                            {
                                MessageBox.Show("Увага!! Помилка при створені файлу");
                            }
                        }
                        else
                        {
                            e.Result = new OutputParams()
                            {
                                id_Ticket = Id_ticket, Ticket_ = Ticket
                            };
                        }
                    }
                }
                catch (Exception ex)
                {
                    e.Cancel = false;
                    e.Result = "Не має зв`язку з базою: " + ex.Message;
                    throw new Exception(ex.Message);
                }
            }
            else
            {
                using (DBWokrSql db = new DBWokrSql(ConnectString))
                {
                    e.Result = new OutputParams()
                    {
                        id_Ticket = Id_ticket, Ticket_ = db.GetTicketRezults(Id_ticket)
                    };
                }
            }
        }