Пример #1
0
 private void editProjectToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (clbProjects.SelectedItem != null)
     {
         var selectedProject = ((dynamic)(clbProjects.SelectedItem)).ProjectID;
         var projectManager  = new FrmProjectManager();
         projectManager.Run(selectedProject);
     }
 }
Пример #2
0
        private void btnProjects_Click(object sender, EventArgs e)
        {
            var projectManager = new FrmProjectManager();

            projectManager.Run();
        }
Пример #3
0
        /// <summary>
        /// 按钮事件处理
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void tempButton_Click(object sender, EventArgs e)
        {
            ToolStripButton button = ((ToolStripButton)sender);

            switch (button.Text)
            {
            case "保存所有":
                if (projectObj == null)
                {
                    MessageBox.Show("对不起,请先填写项目信息,然后再继续!");
                    return;
                }

                saveAllWithNoResult();
                break;

            case "帮助":
                FrmHelpBox helpForm = new FrmHelpBox();
                helpForm.ShowDialog();
                break;

            case "导出":
                if (projectObj == null)
                {
                    MessageBox.Show("对不起,请先填写项目信息,然后再继续!");
                    return;
                }

                if (isSaveAllSucess() == false)
                {
                    MessageBox.Show("对不起,保存失败,请检查!");
                    return;
                }

                if (File.Exists(Path.Combine(dataDir, "合同书.doc")) == false)
                {
                    MessageBox.Show("对不起,请先点击预览按钮生成项目申报书!");
                    return;
                }

                string errorPage = string.Empty;
                if (!isInputCompleted(ref errorPage))
                {
                    MessageBox.Show("对不起,内容未填写完不能上报!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    MessageBox.Show("请将页签[" + errorPage + "]填写完整再点击上报!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }

                SaveFileDialog sfd = new SaveFileDialog();
                sfd.Filter = "ZIP申报包|*.zip";
                if (sfd.ShowDialog() == DialogResult.OK)
                {
                    if (MessageBox.Show("真的要导出吗?", "提示", MessageBoxButtons.YesNo) == DialogResult.Yes)
                    {
                        CircleProgressBarDialog dialoga = new CircleProgressBarDialog();
                        dialoga.TransparencyKey        = dialoga.BackColor;
                        dialoga.ProgressBar.ForeColor  = Color.Red;
                        dialoga.MessageLabel.ForeColor = Color.Blue;
                        dialoga.FormBorderStyle        = FormBorderStyle.None;
                        dialoga.Start(new EventHandler <CircleProgressBarEventArgs>(delegate(object thisObject, CircleProgressBarEventArgs argss)
                        {
                            ((CircleProgressBarDialog)thisObject).ReportProgress(10, 100);
                            ((CircleProgressBarDialog)thisObject).ReportInfo("准备导出...");
                            try { System.Threading.Thread.Sleep(1000); }
                            catch (Exception ex) { }

                            //关闭连接
                            DB.ConnectionManager.Close();

                            //当前项目目录
                            string currentPath = System.IO.Path.Combine(System.IO.Path.Combine(PublicReporterLib.PluginLoader.getLocalPluginRoot <PluginRoot>().RootDir, "Data"), "Current");

                            ((CircleProgressBarDialog)thisObject).ReportProgress(20, 100);
                            ((CircleProgressBarDialog)thisObject).ReportInfo("正在导出...");
                            try { System.Threading.Thread.Sleep(1000); }
                            catch (Exception ex) { }

                            //压缩
                            PublicReporterLib.Utility.ZipUtil zu = new PublicReporterLib.Utility.ZipUtil();
                            zu.ZipFileDirectory(currentPath, sfd.FileName);

                            ((CircleProgressBarDialog)thisObject).ReportProgress(90, 100);
                            ((CircleProgressBarDialog)thisObject).ReportInfo("导出完成,准备重启...");
                            try { System.Threading.Thread.Sleep(1000); }
                            catch (Exception ex) { }

                            //重启软件
                            PublicReporterLib.PluginLoader.getLocalPluginRoot <PluginRoot>().enabledShowExitHint = false;
                            DB.ConnectionManager.Close();
                            System.Diagnostics.Process.Start(Application.ExecutablePath);
                            PublicReporterLib.PluginLoader.getLocalPluginRoot <PluginRoot>().projectObj = null;
                            Application.Exit();
                        }));
                    }
                }
                break;

            case "预览":
                if (projectObj == null)
                {
                    MessageBox.Show("对不起,请先填写项目信息,然后再继续!");
                    return;
                }

                CircleProgressBarDialog dialogc = new CircleProgressBarDialog();
                dialogc.TransparencyKey        = dialogc.BackColor;
                dialogc.ProgressBar.ForeColor  = Color.Red;
                dialogc.MessageLabel.ForeColor = Color.Blue;
                dialogc.FormBorderStyle        = FormBorderStyle.None;
                dialogc.Start(new EventHandler <CircleProgressBarEventArgs>(delegate(object thisObject, CircleProgressBarEventArgs argss)
                {
                    //word预览
                    WordPrinter.wordOutput(((CircleProgressBarDialog)thisObject));
                }
                                                                            ));
                break;

            case "导入":
                OpenFileDialog ofd = new OpenFileDialog();
                ofd.Filter = "ZIP申报包|*.zip";
                if (ofd.ShowDialog() == DialogResult.OK)
                {
                    if (MessageBox.Show("真的要导入吗?", "提示", MessageBoxButtons.YesNo) == DialogResult.Yes)
                    {
                        CircleProgressBarDialog dialogb = new CircleProgressBarDialog();
                        dialogb.TransparencyKey        = dialogb.BackColor;
                        dialogb.ProgressBar.ForeColor  = Color.Red;
                        dialogb.MessageLabel.ForeColor = Color.Blue;
                        dialogb.FormBorderStyle        = FormBorderStyle.None;
                        dialogb.Start(new EventHandler <CircleProgressBarEventArgs>(delegate(object thisObject, CircleProgressBarEventArgs argss)
                        {
                            ((CircleProgressBarDialog)thisObject).ReportProgress(10, 100);
                            ((CircleProgressBarDialog)thisObject).ReportInfo("准备导入...");
                            try { System.Threading.Thread.Sleep(1000); }
                            catch (Exception ex) { }

                            string uuid = projectObj != null ? projectObj.BianHao : string.Empty;

                            //关闭连接
                            DB.ConnectionManager.Close();

                            //当前项目目录
                            string currentPath = System.IO.Path.Combine(System.IO.Path.Combine(PublicReporterLib.PluginLoader.getLocalPluginRoot <PluginRoot>().RootDir, "Data"), "Current");

                            //backup
                            string backupPath = System.IO.Path.Combine(System.IO.Path.Combine(PublicReporterLib.PluginLoader.getLocalPluginRoot <PluginRoot>().RootDir, "Data"), uuid);

                            ((CircleProgressBarDialog)thisObject).ReportProgress(20, 100);
                            ((CircleProgressBarDialog)thisObject).ReportInfo("清空当前目录...");
                            try { System.Threading.Thread.Sleep(1000); }
                            catch (Exception ex) { }

                            //检查是否需要备份
                            if (uuid != null && uuid.Length >= 2)
                            {
                                //移动backupDir
                                if (System.IO.Directory.Exists(backupPath))
                                {
                                    System.IO.Directory.Delete(backupPath, true);
                                }
                                //备份当前
                                System.IO.Directory.Move(currentPath, backupPath);
                            }
                            else
                            {
                                //直接删除Current
                                if (System.IO.Directory.Exists(currentPath))
                                {
                                    System.IO.Directory.Delete(currentPath, true);
                                }
                            }

                            ((CircleProgressBarDialog)thisObject).ReportProgress(30, 100);
                            ((CircleProgressBarDialog)thisObject).ReportInfo("创建导入目录...");
                            try { System.Threading.Thread.Sleep(1000); }
                            catch (Exception ex) { }

                            //创建当前目录
                            try
                            {
                                Directory.CreateDirectory(currentPath);
                            }
                            catch (Exception ex) { }

                            ((CircleProgressBarDialog)thisObject).ReportProgress(40, 100);
                            ((CircleProgressBarDialog)thisObject).ReportInfo("正在导入...");
                            try { System.Threading.Thread.Sleep(1000); }
                            catch (Exception ex) { }

                            //解压
                            PublicReporterLib.Utility.ZipUtil zu = new PublicReporterLib.Utility.ZipUtil();
                            zu.UnZipFile(ofd.FileName, currentPath, string.Empty, true);

                            ((CircleProgressBarDialog)thisObject).ReportProgress(90, 100);
                            ((CircleProgressBarDialog)thisObject).ReportInfo("导入完成,准备重启...");
                            try { System.Threading.Thread.Sleep(1000); }
                            catch (Exception ex) { }

                            //重启软件
                            PublicReporterLib.PluginLoader.getLocalPluginRoot <PluginRoot>().enabledShowExitHint = false;
                            DB.ConnectionManager.Close();
                            System.Diagnostics.Process.Start(Application.ExecutablePath);
                            PublicReporterLib.PluginLoader.getLocalPluginRoot <PluginRoot>().projectObj = null;
                            Application.Exit();
                        }));
                    }
                }
                break;

            case "新建":
                if (MessageBox.Show("真的要新建吗?", "提示", MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    //关闭连接
                    DB.ConnectionManager.Close();

                    //当前项目目录
                    string currentPath = System.IO.Path.Combine(System.IO.Path.Combine(PublicReporterLib.PluginLoader.getLocalPluginRoot <PluginRoot>().RootDir, "Data"), "Current");

                    //移动当前目录
                    if (System.IO.Directory.Exists(currentPath))
                    {
                        System.IO.Directory.Delete(currentPath, true);
                    }

                    PublicReporterLib.PluginLoader.getLocalPluginRoot <PluginRoot>().enabledShowExitHint = false;
                    DB.ConnectionManager.Close();
                    System.Diagnostics.Process.Start(Application.ExecutablePath);
                    PublicReporterLib.PluginLoader.getLocalPluginRoot <PluginRoot>().projectObj = null;
                    Application.Exit();
                }
                break;

            case "项目管理":
                FrmProjectManager manager = new FrmProjectManager();
                manager.ShowDialog();
                break;
            }
        }