Esempio n. 1
0
        //导出报告
        private void btnExportReport_Click(object sender, RoutedEventArgs e)
        {
            //foreach (Model.TestInfoModel model in TestInfoModelList)
            //{
            //    model.IsChecked = true;
            //}
            //RefrenshChart();
            try
            {
                //生成数据xml对象,供导出报告使用
                //string title = "平均曲线对比-" + DateTime.Now.ToString("yyyyMMddHHmmss");

                //DSJL.Export.GenerateAvgReportXML garxml = new DSJL.Export.GenerateAvgReportXML();
                //garxml.CurrentTitle = "平均曲线对比报告";
                //garxml.TestInfoModelList = TestInfoModelList;
                //System.Xml.Linq.XDocument xdoc = garxml.Generate();

                //System.Windows.Forms.FolderBrowserDialog fbd = new System.Windows.Forms.FolderBrowserDialog();
                //fbd.Description = "选择保存报告的位置";
                //fbd.ShowNewFolderButton = true;
                //if (fbd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                //{
                //    //生成平均曲线图片
                //    DSJL.Export.SaveUIElementToImage.SaveToImage(avgPanel, AppDomain.CurrentDomain.BaseDirectory + "avg.jpg");
                //    //开始导出
                //    DSJL.Export.ExportAvgReport exportReport = new DSJL.Export.ExportAvgReport(xdoc);
                //    exportReport.Export(fbd.SelectedPath + "\\" + title + ".pdf");

                //    //删除平均曲线图片
                //    File.Delete(AppDomain.CurrentDomain.BaseDirectory + "avg.jpg");
                //    MessageBox.Show("导出成功!", "系统信息");
                //}
                List <Model.TestInfoModel> testInfoModelList = GetSortedTestInfoModelList();

                string pdfFileName = "";
                string reportTitle = "";
                string standName   = "";
                DSJL.Export.ExportModeEnum exportMode = DSJL.Export.ExportModeEnum.Mode1;
                if (rbMode1.IsChecked == true)//互相对比报告
                {
                    exportMode  = DSJL.Export.ExportModeEnum.Mode1;
                    pdfFileName = "等速肌力互相对比报告(" + DateTime.Now.ToString("yyyyMMddHHmmss") + ")";
                    reportTitle = "等速肌力互相对比报告";
                }
                else if (rbMode2.IsChecked == true)//与平均曲线对比报告
                {
                    exportMode  = DSJL.Export.ExportModeEnum.Mode2;
                    pdfFileName = "等速肌力个人与平均曲线报告(" + DateTime.Now.ToString("yyyyMMddHHmmss") + ")";
                    reportTitle = "等速肌力个人与平均曲线报告";
                }
                else if (rbMode3.IsChecked == true)//与参考值对比报告
                {
                    if (stand.SelectedItem == null)
                    {
                        MessageBox.Show("请选择测试参考值!", "系统信息");
                        return;
                    }
                    else
                    {
                        standName = stand.SelectedItem.Stand_Name;
                    }
                    exportMode = DSJL.Export.ExportModeEnum.Mode3;

                    BLL.TB_StandardInfo   standInfoBLL    = new BLL.TB_StandardInfo();
                    Model.TB_StandardInfo parentStandInfo = standInfoBLL.GetModel((int)stand.SelectedItem.Stand_ParentID);
                    foreach (Model.TestInfoModel testInfoModel in testInfoModelList)
                    {
                        pdfFileName += testInfoModel.Ath_Name;
                    }
                    pdfFileName += "与" + parentStandInfo.Stand_Name + stand.SelectedItem.Stand_Name + "对比报告(" + DateTime.Now.ToString("yyyyMMddHHmmss") + ")";
                    //pdfFileName = "等速肌力个人与参考值对比报告(" + DateTime.Now.ToString("yyyyMMddHHmmss") + ")";
                    reportTitle = "等速肌力个人与参考值对比报告";
                }

                System.Windows.Forms.SaveFileDialog saveFileDialog = new System.Windows.Forms.SaveFileDialog();
                saveFileDialog.AddExtension    = true;
                saveFileDialog.OverwritePrompt = true;
                saveFileDialog.Title           = "选择保存报告的位置";
                saveFileDialog.FileName        = pdfFileName;
                saveFileDialog.DefaultExt      = "pdf";
                saveFileDialog.Filter          = "PDF文件(*.pdf)|*.pdf";
                if (saveFileDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                {
                    //生成数据xml对象,供导出报告使用
                    DSJL.Export.GenerateCompareResportXml garxml = new DSJL.Export.GenerateCompareResportXml(exportMode);
                    garxml.CurrentTitle              = reportTitle;
                    garxml.TestInfoModelList         = GetSortedTestInfoModelList();
                    garxml.StandardTestInfoModelList = standTestInfoModelList;
                    garxml.StandName = standName;
                    System.Xml.Linq.XDocument xdoc = garxml.GenerateXDoc();


                    //生成平均曲线图片
                    DSJL.Export.SaveUIElementToImage.SaveToImage(avgPanel, AppDomain.CurrentDomain.BaseDirectory + "avg.jpg");
                    //开始导出
                    DSJL.Export.ExportCompareReport exportReport = new DSJL.Export.ExportCompareReport(xdoc);
                    exportReport.Export(saveFileDialog.FileName);

                    //删除平均曲线图片
                    File.Delete(AppDomain.CurrentDomain.BaseDirectory + "avg.jpg");
                    MessageBox.Show("导出成功!", "系统信息");
                }
            }
            catch (Exception ee)
            {
                MessageBox.Show("导出出错!\r\n" + ee.Message, "系统错误");
            }
        }
Esempio n. 2
0
        //导出报告
        private void btnExport_Click(object sender, RoutedEventArgs e)
        {
            if (testInfoModelList.Count == 0)
            {
                MessageBox.Show("所选的参考值下没有测试信息,不能导出!", "系统信息");
                return;
            }
            try
            {
                //刷新图表
                pageAvgCurve.ModelList = testInfoModelList;

                string pdfFileName = "";
                string reportTitle = "";
                string standName   = "";
                DSJL.Export.ExportModeEnum exportMode = DSJL.Export.ExportModeEnum.Mode1;

                List <Model.TestInfoModel> checkedModel = testInfoModelList.FindAll(x => x.IsChecked == true);

                if (rbMode1.IsChecked == true)
                {
                    //if (checkedModel.Count < 2)
                    //{
                    //    MessageBox.Show("请至少选择两条测试信息进行对比报告导出!", "系统信息");
                    //    return;
                    //}
                    exportMode  = DSJL.Export.ExportModeEnum.Mode1;
                    pdfFileName = "等速肌力互相对比报告(" + DateTime.Now.ToString("yyyyMMddHHmmss") + ")";
                    reportTitle = "等速肌力互相对比报告";
                }
                else if (rbMode2.IsChecked == true)
                {
                    exportMode  = DSJL.Export.ExportModeEnum.Mode2;
                    pdfFileName = "等速肌力个人与平均曲线报告(" + DateTime.Now.ToString("yyyyMMddHHmmss") + ")";
                    reportTitle = "等速肌力个人与平均曲线报告";
                }
                else if (rbMode3.IsChecked == true)
                {
                    //if (checkedModel.Count < 1)
                    //{
                    //    MessageBox.Show("请至少选择一条测试信息进行对比报告导出!", "系统信息");
                    //    return;
                    //}
                    if (standManager.SelectedItem == null)
                    {
                        MessageBox.Show("请选择测试参考值!", "系统信息");
                        return;
                    }
                    else
                    {
                        standName = standManager.SelectedItem.Stand_Name;
                    }
                    exportMode  = DSJL.Export.ExportModeEnum.Mode3;
                    pdfFileName = "等速肌力个人与参考值对比报告(" + DateTime.Now.ToString("yyyyMMddHHmmss") + ")";
                    reportTitle = "等速肌力个人与参考值对比报告";
                }

                string selectedPath = "";
                if (!ShowFileDialogTool.ShowSaveFileDialog(out selectedPath, ShowFileDialogTool.pdfFilter, ShowFileDialogTool.pdfExt, "测验报告"))
                {
                    return;
                }
                else
                {
                    selectedPath = selectedPath.Substring(0, selectedPath.LastIndexOf("\\"));
                }

                //生成数据xml对象,供导出报告使用
                DSJL.Export.GenerateCompareResportXml garxml = new DSJL.Export.GenerateCompareResportXml(exportMode);
                garxml.CurrentTitle              = reportTitle;
                garxml.TestInfoModelList         = GetSortedTestInfoModelList();
                garxml.StandardTestInfoModelList = testInfoModelList;
                garxml.StandName = standName;
                System.Xml.Linq.XDocument xdoc = garxml.GenerateXDoc();

                //生成平均曲线图片
                DSJL.Export.SaveUIElementToImage.SaveToImage(pageAvgCurve, AppDomain.CurrentDomain.BaseDirectory + "avg.jpg");
                //开始导出
                DSJL.Export.ExportCompareReport exportReport = new DSJL.Export.ExportCompareReport(xdoc);
                exportReport.Export(selectedPath + "\\" + pdfFileName + ".pdf");

                //删除平均曲线图片
                File.Delete(AppDomain.CurrentDomain.BaseDirectory + "avg.jpg");
                MessageBox.Show("导出成功!", "系统信息");
            }
            catch (Exception ee)
            {
                MessageBox.Show("导出出错!\r\n" + ee.Message, "系统错误");
            }
        }
Esempio n. 3
0
        //导出报告
        private void btnExport_Click(object sender, RoutedEventArgs e)
        {
            if (testInfoModelList.Count == 0)
            {
                MessageBox.Show("所选的参考值下没有测试信息,不能导出!", "系统信息");
                return;
            }
            try
            {
                //刷新图表
                pageAvgCurve.ModelList = testInfoModelList;

                string pdfFileName = "";
                string reportTitle = "";
                string standName = "";
                DSJL.Export.ExportModeEnum exportMode = DSJL.Export.ExportModeEnum.Mode1;

                List<Model.TestInfoModel> checkedModel = testInfoModelList.FindAll(x => x.IsChecked == true);

                if (rbMode1.IsChecked == true)
                {
                    //if (checkedModel.Count < 2)
                    //{
                    //    MessageBox.Show("请至少选择两条测试信息进行对比报告导出!", "系统信息");
                    //    return;
                    //}
                    exportMode = DSJL.Export.ExportModeEnum.Mode1;
                    pdfFileName = "等速肌力互相对比报告(" + DateTime.Now.ToString("yyyyMMddHHmmss") + ")";
                    reportTitle = "等速肌力互相对比报告";
                }
                else if (rbMode2.IsChecked == true)
                {
                    exportMode = DSJL.Export.ExportModeEnum.Mode2;
                    pdfFileName = "等速肌力个人与平均曲线报告(" + DateTime.Now.ToString("yyyyMMddHHmmss") + ")";
                    reportTitle = "等速肌力个人与平均曲线报告";
                }
                else if (rbMode3.IsChecked == true)
                {
                    //if (checkedModel.Count < 1)
                    //{
                    //    MessageBox.Show("请至少选择一条测试信息进行对比报告导出!", "系统信息");
                    //    return;
                    //}
                    if (standManager.SelectedItem == null)
                    {
                        MessageBox.Show("请选择测试参考值!", "系统信息");
                        return;
                    }
                    else
                    {
                        standName = standManager.SelectedItem.Stand_Name;
                    }
                    exportMode = DSJL.Export.ExportModeEnum.Mode3;
                    pdfFileName = "等速肌力个人与参考值对比报告(" + DateTime.Now.ToString("yyyyMMddHHmmss") + ")";
                    reportTitle = "等速肌力个人与参考值对比报告";
                }

                string selectedPath = "";
                if(!ShowFileDialogTool.ShowSaveFileDialog(out selectedPath,ShowFileDialogTool.pdfFilter,ShowFileDialogTool.pdfExt,"测验报告")){
                    return;
                }else{
                    selectedPath=selectedPath.Substring(0,selectedPath.LastIndexOf("\\"));
                }

                //生成数据xml对象,供导出报告使用
                DSJL.Export.GenerateCompareResportXml garxml = new DSJL.Export.GenerateCompareResportXml(exportMode);
                garxml.CurrentTitle = reportTitle;
                garxml.TestInfoModelList = GetSortedTestInfoModelList();
                garxml.StandardTestInfoModelList = testInfoModelList;
                garxml.StandName = standName;
                System.Xml.Linq.XDocument xdoc = garxml.GenerateXDoc();

                //生成平均曲线图片
                DSJL.Export.SaveUIElementToImage.SaveToImage(pageAvgCurve, AppDomain.CurrentDomain.BaseDirectory + "avg.jpg");
                //开始导出
                DSJL.Export.ExportCompareReport exportReport = new DSJL.Export.ExportCompareReport(xdoc);
                exportReport.Export(selectedPath + "\\" + pdfFileName + ".pdf");

                //删除平均曲线图片
                File.Delete(AppDomain.CurrentDomain.BaseDirectory + "avg.jpg");
                MessageBox.Show("导出成功!", "系统信息");

            }
            catch (Exception ee)
            {
                MessageBox.Show("导出出错!\r\n" + ee.Message, "系统错误");
            }
        }
        //导出报告
        private void btnExportReport_Click(object sender, RoutedEventArgs e)
        {
            //foreach (Model.TestInfoModel model in TestInfoModelList)
            //{
            //    model.IsChecked = true;
            //}
            //RefrenshChart();
            try
            {
                //生成数据xml对象,供导出报告使用
                //string title = "平均曲线对比-" + DateTime.Now.ToString("yyyyMMddHHmmss");

                //DSJL.Export.GenerateAvgReportXML garxml = new DSJL.Export.GenerateAvgReportXML();
                //garxml.CurrentTitle = "平均曲线对比报告";
                //garxml.TestInfoModelList = TestInfoModelList;
                //System.Xml.Linq.XDocument xdoc = garxml.Generate();

                //System.Windows.Forms.FolderBrowserDialog fbd = new System.Windows.Forms.FolderBrowserDialog();
                //fbd.Description = "选择保存报告的位置";
                //fbd.ShowNewFolderButton = true;
                //if (fbd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                //{
                //    //生成平均曲线图片
                //    DSJL.Export.SaveUIElementToImage.SaveToImage(avgPanel, AppDomain.CurrentDomain.BaseDirectory + "avg.jpg");
                //    //开始导出
                //    DSJL.Export.ExportAvgReport exportReport = new DSJL.Export.ExportAvgReport(xdoc);
                //    exportReport.Export(fbd.SelectedPath + "\\" + title + ".pdf");

                //    //删除平均曲线图片
                //    File.Delete(AppDomain.CurrentDomain.BaseDirectory + "avg.jpg");
                //    MessageBox.Show("导出成功!", "系统信息");
                //}
                List<Model.TestInfoModel> testInfoModelList = GetSortedTestInfoModelList();

                string pdfFileName = "";
                string reportTitle = "";
                string standName = "";
                DSJL.Export.ExportModeEnum exportMode = DSJL.Export.ExportModeEnum.Mode1;
                if (rbMode1.IsChecked == true)//互相对比报告
                {
                    exportMode = DSJL.Export.ExportModeEnum.Mode1;
                    pdfFileName = "等速肌力互相对比报告(" + DateTime.Now.ToString("yyyyMMddHHmmss") + ")";
                    reportTitle = "等速肌力互相对比报告";
                }
                else if (rbMode2.IsChecked == true)//与平均曲线对比报告
                {
                    exportMode = DSJL.Export.ExportModeEnum.Mode2;
                    pdfFileName = "等速肌力个人与平均曲线报告(" + DateTime.Now.ToString("yyyyMMddHHmmss") + ")";
                    reportTitle = "等速肌力个人与平均曲线报告";
                }
                else if (rbMode3.IsChecked == true)//与参考值对比报告
                {
                    if (stand.SelectedItem == null)
                    {
                        MessageBox.Show("请选择测试参考值!", "系统信息");
                        return;
                    }
                    else
                    {
                        standName = stand.SelectedItem.Stand_Name;
                    }
                    exportMode = DSJL.Export.ExportModeEnum.Mode3;

                    BLL.TB_StandardInfo standInfoBLL = new BLL.TB_StandardInfo();
                    Model.TB_StandardInfo parentStandInfo = standInfoBLL.GetModel((int)stand.SelectedItem.Stand_ParentID);
                    foreach (Model.TestInfoModel testInfoModel in testInfoModelList) {
                        pdfFileName += testInfoModel.Ath_Name;
                    }
                    pdfFileName += "与" + parentStandInfo.Stand_Name + stand.SelectedItem.Stand_Name + "对比报告(" + DateTime.Now.ToString("yyyyMMddHHmmss") + ")";
                    //pdfFileName = "等速肌力个人与参考值对比报告(" + DateTime.Now.ToString("yyyyMMddHHmmss") + ")";
                    reportTitle = "等速肌力个人与参考值对比报告";
                }

                System.Windows.Forms.SaveFileDialog saveFileDialog = new System.Windows.Forms.SaveFileDialog();
                saveFileDialog.AddExtension = true;
                saveFileDialog.OverwritePrompt = true;
                saveFileDialog.Title = "选择保存报告的位置";
                saveFileDialog.FileName = pdfFileName;
                saveFileDialog.DefaultExt = "pdf";
                saveFileDialog.Filter = "PDF文件(*.pdf)|*.pdf";
                if (saveFileDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                {

                    //生成数据xml对象,供导出报告使用
                    DSJL.Export.GenerateCompareResportXml garxml = new DSJL.Export.GenerateCompareResportXml(exportMode);
                    garxml.CurrentTitle = reportTitle;
                    garxml.TestInfoModelList = GetSortedTestInfoModelList();
                    garxml.StandardTestInfoModelList = standTestInfoModelList;
                    garxml.StandName = standName;
                    System.Xml.Linq.XDocument xdoc = garxml.GenerateXDoc();

                    //生成平均曲线图片
                    DSJL.Export.SaveUIElementToImage.SaveToImage(avgPanel, AppDomain.CurrentDomain.BaseDirectory + "avg.jpg");
                    //开始导出
                    DSJL.Export.ExportCompareReport exportReport = new DSJL.Export.ExportCompareReport(xdoc);
                    exportReport.Export(saveFileDialog.FileName);

                    //删除平均曲线图片
                    File.Delete(AppDomain.CurrentDomain.BaseDirectory + "avg.jpg");
                    MessageBox.Show("导出成功!", "系统信息");
                }
            }
            catch (Exception ee)
            {
                MessageBox.Show("导出出错!\r\n" + ee.Message, "系统错误");
            }
        }