Example #1
0
        protected override bool doConvertToPdf(string saveAsFile)
        {
            System.IO.FileInfo fileInfo    = new System.IO.FileInfo(saveAsFile);
            string             sourceFile  = saveAsFile.Replace(fileInfo.Extension, ".doc");
            WordPrinter        wrodPrinter = new WordPrinter();
            bool result;

            try
            {
                if (wrodPrinter.LoadSourceFile(sourceFile))
                {
                    wrodPrinter.ConvertToPdf(saveAsFile);
                    result = true;
                    return(result);
                }
            }
            catch (System.Exception ex)
            {
                throw ex;
            }
            finally
            {
                wrodPrinter.Dispose();
            }
            result = false;
            return(result);
        }
Example #2
0
 protected override void Act()
 {
     Sut = new WordPrinter(Counter);
 }
Example #3
0
 public FizzAndBuzzPrinter(WordPrinter<FizzBuzzWord> fizzBuzzWord)
 {
     _fizzBuzzWord = fizzBuzzWord;
 }
Example #4
0
        public IGHPrinterDefine GetObj(string Extension)
        {
            Extension = Extension.ToLower();
            IGHPrinterDefine result;

            if (this.InstanceList.ContainsKey(Extension))
            {
                result = this.InstanceList[Extension];
            }
            else
            {
                string text = Extension;
                switch (text)
                {
                case ".doc":
                case ".docx":
                case ".dot":
                case ".dotx":
                case ".txt":
                    result = new WordPrinter();
                    return(result);

                case ".xls":
                case ".xlt":
                case ".xlsx":
                case ".xltx":
                    result = new ExcelPrinter();
                    return(result);

                case ".htm":
                case ".html":
                case ".mht":
                    result = new HtmlPrinter();
                    return(result);

                case ".ppt":
                case ".pptx":
                    result = new PowerPointPrinter();
                    return(result);

                case ".vsd":
                case ".vsdx":
                    result = new VisioPrinter();
                    return(result);

                case ".mpp":
                    result = new ProjectPrinter();
                    return(result);

                //case ".frx":
                //	//result = new FastReportPrinter();
                //	return result;
                case ".bmp":
                case ".jpg":
                case ".jpeg":
                case ".png":
                case ".gif":
                    result = new ImgPrinter();
                    return(result);
                }
                result = null;
            }
            return(result);
        }
Example #5
0
 protected override void Act()
 {
     Sut = new WordPrinter<Word>(Word, InnerPrinter);
 }
Example #6
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;
            }
        }
Example #7
0
 public FizzAndBuzzPrinter(WordPrinter wordPrinter)
 {
     _wordPrinter = wordPrinter;
 }
Example #8
0
 public BuzzPrinter(WordPrinter printer)
 {
     _wordPrinter = printer;
 }