Exemple #1
0
        private void tspDeleteProNameList_Click(object sender, EventArgs e)
        {
            if (this.lvProNameList.SelectedItems.Count > 0)
            {
                string ProName = this.lvProNameList.SelectedItems[0].Text;

                ProjectBLL bll = new ProjectBLL();
                bll.Delete_ProNameList(ProName);

                AnalyResultBLL analyResultBLL = new AnalyResultBLL();
                analyResultBLL.Delete_Result(ProName);

                NodeBLL nodeBLL = new NodeBLL();
                nodeBLL.Delete_ProName(ProName);

                ParticipantBLL participantBLL = new ParticipantBLL();
                participantBLL.Delete_ProName(ProName);

                SelectedPramasBLL selectedPramasBLL = new SelectedPramasBLL();
                selectedPramasBLL.Delete_ProName(ProName);

                ProNameDataBind();
            }
            else
            {
                this.Close();
            }
        }
        private void printBtn_Click(object sender, EventArgs e)
        {
            AnalyResultBLL analyResultBLL = new AnalyResultBLL();

            System.Data.DataTable dt = analyResultBLL.OutAllToExcel(HAZOP分析系统.ProName);
            LoadPrintViewPage(dt, 1);

            // ExportToExcel.DataBaseToExcel();
        }
 private void tspUcAnalyDelete_Click(object sender, EventArgs e)
 {
     if (this.dgvCcAnalys1.SelectedRows.Count > 0)
     {
         AnalyResultBLL analyResultBLL = new AnalyResultBLL();
         string         sqlString      = "delete from tb_AnalysisResult where ProName=@ProName and RecordNumver=@RecordNumver;";
         SqlParameter[] pms            =
         {
             new SqlParameter("@ProName",      SqlDbType.VarChar),
             new SqlParameter("@RecordNumver", SqlDbType.VarChar),
         };
         pms[0].Value = InitialInterface.ProName;
         pms[1].Value = this.dgvCcAnalys1.SelectedRows[0].Cells[0].Value.ToString();
         SqlHelper.ExecuteNonQuery(sqlString, pms);
         List <AnalysResultTotal> analysResultTotals = new List <AnalysResultTotal>();
         analysResultTotals           = analyResultBLL.Get_All(InitialInterface.ProName, this.trvUcAnaly.SelectedNode.Text);
         this.dgvCcAnalys1.DataSource = analysResultTotals;
     }
 }
        private void tspUcAnalyOutPut_Click(object sender, EventArgs e)
        {
            AnalyResultBLL analyResultBLL = new AnalyResultBLL();

            if (this.trvUcAnaly.SelectedNode.Level == 0)
            {
                return;
            }
            if (this.trvUcAnaly.SelectedNode.Level == 1)
            {
                string    NodeName = this.trvUcAnaly.SelectedNode.Text;
                DataTable dt       = analyResultBLL.OutAllToExcel(HAZOP分析系统.ProName, NodeName);

                if (MyLoadPrintViewPage != null)
                {
                    MyLoadPrintViewPage(dt, 1);
                }
            }
            if (this.trvUcAnaly.SelectedNode.Level == 2)
            {
                string    NodeName     = this.trvUcAnaly.SelectedNode.Parent.Text;
                string    SelectPramas = this.trvUcAnaly.SelectedNode.Text;
                DataTable dt           = analyResultBLL.OutAllToExcel(HAZOP分析系统.ProName, NodeName, SelectPramas);
                if (MyLoadPrintViewPage != null)
                {
                    MyLoadPrintViewPage(dt, 2);
                }
            }
            if (this.trvUcAnaly.SelectedNode.Level == 3)
            {
                string    NodeName     = this.trvUcAnaly.SelectedNode.Parent.Parent.Text;
                string    SelectPramas = this.trvUcAnaly.SelectedNode.Parent.Text;
                string    Introducer   = this.trvUcAnaly.SelectedNode.Text;
                DataTable dt           = analyResultBLL.OutAllToExcel(HAZOP分析系统.ProName, Introducer, NodeName, SelectPramas);
                if (MyLoadPrintViewPage != null)
                {
                    MyLoadPrintViewPage(dt, 2);
                }
            }

            //ExportToExcel.DataGridViewToExcel(this.dgvCcAnalys1);
        }
Exemple #5
0
        public static void DataBaseToExcel()
        {
            AnalyResultBLL analyResultBLL = new AnalyResultBLL();

            System.Data.DataTable dt = analyResultBLL.OutAllToExcel(InitialInterface.ProName);

            //申明保存对话框
            SaveFileDialog dlg = new SaveFileDialog();

            //默然文件后缀
            dlg.DefaultExt = "xls";
            //文件后缀列表
            dlg.Filter = "Excel文件(*.xls)|*.xls";
            //默然路径是系统当前路径
            dlg.InitialDirectory = Directory.GetCurrentDirectory();
            //打开保存对话框
            if (dlg.ShowDialog() == DialogResult.Cancel)
            {
                return;
            }
            //返回文件路径
            string fileNameString = dlg.FileName;

            //验证strFileName是否为空或值无效
            if (fileNameString.Trim() == " ")
            {
                return;
            }

            //定义表格内数据的行数和列数
            int rowscount = dt.Rows.Count;
            int colscount = dt.Columns.Count;

            //行数必须大于0
            if (rowscount <= 0)
            {
                MessageBox.Show("没有数据可供保存 ", "提示 ", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            //列数必须大于0
            if (colscount <= 0)
            {
                MessageBox.Show("没有数据可供保存 ", "提示 ", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            //行数不可以大于65536
            if (rowscount > 65536)
            {
                MessageBox.Show("数据记录数太多(最多不能超过65536条),不能保存 ", "提示 ", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            //列数不可以大于255
            if (colscount > 255)
            {
                MessageBox.Show("数据记录行数太多,不能保存 ", "提示 ", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            //验证以fileNameString命名的文件是否存在,如果存在删除它
            FileInfo file = new FileInfo(fileNameString);

            if (file.Exists)
            {
                try
                {
                    file.Delete();
                }
                catch (Exception error)
                {
                    MessageBox.Show(error.Message, "删除失败 ", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }
            }
            ExcelApp.Application objExcel    = null;
            ExcelApp.Workbook    objWorkbook = null;
            ExcelApp.Worksheet   objsheet    = null;
            try
            {
                //申明对象
                objExcel    = new Microsoft.Office.Interop.Excel.Application();
                objWorkbook = objExcel.Workbooks.Add(true);
                objsheet    = (Worksheet)objWorkbook.Worksheets.Add(Type.Missing, Type.Missing, 1, Type.Missing);

                //设置EXCEL可见
                objExcel.Visible = true;

                //向Excel中写入表格的表头
                CombineTransverse(1, 1, 12, "分析项目:", objExcel, objsheet);
                CombineTransverse(1, 13, 16, "表页:", objExcel, objsheet);
                CombineTransverse(2, 1, 3, "图纸编号:", objExcel, objsheet);
                CombineTransverse(2, 4, 12, "版本号:", objExcel, objsheet);
                CombineTransverse(2, 13, 16, "日期:", objExcel, objsheet);

                ParticipantBLL     participantBLL  = new ParticipantBLL();
                List <Participant> list            = participantBLL.Get_ParticipantInfoList(InitialInterface.ProName);
                string             participantList = String.Empty;
                foreach (Participant p in list)
                {
                    participantList = participantList + p.Name + " ";
                }

                CombineTransverse(3, 1, 3, "小组成员:" + participantList, objExcel, objsheet);
                CombineTransverse(3, 4, 12, "", objExcel, objsheet);
                CombineTransverse(3, 13, 16, "会议时间:", objExcel, objsheet);
                CombineTransverse(4, 1, 12, "节点:", objExcel, objsheet);
                CombineTransverse(4, 13, 16, "", objExcel, objsheet);
                CombineTransverse(5, 1, 3, "设计意图:", objExcel, objsheet);
                CombineTransverse(5, 4, 16, "", objExcel, objsheet);

                Range range = objsheet.Range[objsheet.Cells[1, 1], objsheet.Cells[5, 16]];
                //range.WrapText = true;
                range.Font.Color = Color.Black; //字体颜色
                range.Font.Name  = "宋体";        //字体
                //range.Font.Bold = true; //设置为粗体
                range.Font.Size           = 14; //字体大小
                range.HorizontalAlignment = XlHAlign.xlHAlignLeft;
                range.ColumnWidth         = 12; //列宽
                range.RowHeight           = 22; //行高
                //range.EntireRow.AutoFit();//添加到行高设置之后才有效
                //range.Borders.ColorIndex = 2;//边框颜色
                range.Borders.LineStyle = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous;//边框线类型

                Range TitleRange = objsheet.Range[objsheet.Cells[6, 1], objsheet.Cells[6, 16]];
                TitleRange.Font.Color          = Color.Black; //字体颜色
                TitleRange.Font.Name           = "宋体";        //字体
                TitleRange.Font.Size           = 12;          //字体大小
                TitleRange.HorizontalAlignment = XlHAlign.xlHAlignCenter;
                TitleRange.RowHeight           = 20;          //行高

                int displayColumnsCount = 1;
                for (int i = 0; i <= dt.Columns.Count - 1; i++)
                {
                    if (dt.Columns[i].ColumnName != "F0" && dt.Columns[i].ColumnName != "Fs" && dt.Columns[i].ColumnName != "ProName" &&
                        dt.Columns[i].ColumnName != "ResultID" && dt.Columns[i].ColumnName != "NodeName")
                    {
                        string colunmName = String.Empty;
                        if (dt.Columns[i].ColumnName == "RecordNumver")
                        {
                            colunmName = "编号";
                        }
                        if (dt.Columns[i].ColumnName == "Pramas")
                        {
                            colunmName = "参数";
                        }
                        if (dt.Columns[i].ColumnName == "PramasAndIntroduce")
                        {
                            colunmName = "参数+引导词";
                        }
                        if (dt.Columns[i].ColumnName == "DeviateDescription")
                        {
                            colunmName = "偏离描述";
                        }
                        if (dt.Columns[i].ColumnName == "Reason")
                        {
                            colunmName = "原因";
                        }
                        if (dt.Columns[i].ColumnName == "Consequence")
                        {
                            colunmName = "后果";
                        }
                        if (dt.Columns[i].ColumnName == "Measure")
                        {
                            colunmName = "现有措施";
                        }
                        if (dt.Columns[i].ColumnName == "Suggestion")
                        {
                            colunmName = "建议项";
                        }
                        if (dt.Columns[i].ColumnName == "Company")
                        {
                            colunmName = "负责单位/人";
                        }
                        if (dt.Columns[i].ColumnName == "Mark")
                        {
                            colunmName = "备注";
                        }
                        if (dt.Columns[i].ColumnName == "Si")
                        {
                            colunmName = "Si";
                        }
                        if (dt.Columns[i].ColumnName == "Li")
                        {
                            colunmName = "Li";
                        }
                        if (dt.Columns[i].ColumnName == "Ri")
                        {
                            colunmName = "Ri";
                        }
                        if (dt.Columns[i].ColumnName == "S")
                        {
                            colunmName = "S";
                        }
                        if (dt.Columns[i].ColumnName == "L")
                        {
                            colunmName = "L";
                        }
                        if (dt.Columns[i].ColumnName == "R")
                        {
                            colunmName = "R";
                        }
                        objExcel.Cells[6, displayColumnsCount] = colunmName;
                        displayColumnsCount++;
                    }
                    else
                    {
                    }
                }
                //向Excel中逐行逐列写入表格中的数据
                for (int row = 0; row <= dt.Rows.Count - 1; row++)
                {
                    displayColumnsCount = 1;
                    for (int col = 0; col < colscount; col++)
                    {
                        if (dt.Columns[col].ColumnName != "F0" && dt.Columns[col].ColumnName != "Fs" && dt.Columns[col].ColumnName != "ProName" &&
                            dt.Columns[col].ColumnName != "ResultID" && dt.Columns[col].ColumnName != "NodeName")
                        {
                            try
                            {
                                objExcel.Cells[row + 7, displayColumnsCount] = "'" + dt.Rows[row].ItemArray[col].ToString();
                                displayColumnsCount++;
                            }
                            catch (Exception)
                            {
                            }
                        }
                        else
                        {
                        }
                    }
                }
                //设置自适应行高
                Range endrange = objsheet.Range[objsheet.Cells[1, 1], objsheet.Cells[rowscount + 6, colscount - 5]];
                endrange.Borders.LineStyle = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous;
                endrange.WrapText          = true;
                endrange.EntireRow.AutoFit();
                //保存文件
                objWorkbook.SaveAs(fileNameString, Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
            }
            catch (Exception error)
            {
                MessageBox.Show(error.Message, "警告 ", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            MessageBox.Show("导出完毕! ", "提示 ", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
        public bool SaveContent()
        {
            bool flag = false;
            List <AnalysResultTotal> analysResultTotalsInfo = new List <AnalysResultTotal>();
            List <int>     ResuletID      = new List <int>();;
            AnalyResultBLL analyResultBLL = new AnalyResultBLL();

            if (this.trvUcAnaly.SelectedNode.Level == 2)
            {
                #region
                if (dgvCcAnalys1.Rows.Count > 1)
                {
                    for (int i = 0; i < dgvCcAnalys1.Rows.Count - 1; i++)
                    {
                        AnalysResultTotal AnalysResultTotal = new AnalysResultTotal();
                        AnalysResultTotal.ProjectName = InitialInterface.ProName;
                        AnalysResultTotal.RecordName  = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyNum"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyNum"].Value.ToString();
                        AnalysResultTotal.Pramas      = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyParams"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyParams"].Value.ToString();
                        if (AnalysResultTotal.Pramas.Length == 0)
                        {
                            if (this.trvUcAnaly.SelectedNode.Level == 2)
                            {
                                AnalysResultTotal.Pramas = this.trvUcAnaly.SelectedNode.Text;
                            }
                        }
                        AnalysResultTotal.PramasAndIntroduce = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyParamsAndIntro"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyParamsAndIntro"].Value.ToString();
                        AnalysResultTotal.DeviateDescription = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyDesc"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyDesc"].Value.ToString();
                        AnalysResultTotal.Reason             = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyReason"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyReason"].Value.ToString();
                        AnalysResultTotal.F0          = "";
                        AnalysResultTotal.Consequence = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyConseq"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyConseq"].Value.ToString();
                        AnalysResultTotal.Si          = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalySi"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalySi"].Value.ToString();
                        AnalysResultTotal.Li          = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyLi"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyLi"].Value.ToString();
                        AnalysResultTotal.Ri          = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyRi"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyRi"].Value.ToString();
                        AnalysResultTotal.Measure     = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyMessure"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyMessure"].Value.ToString();
                        AnalysResultTotal.Fs          = "";
                        AnalysResultTotal.S           = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyS"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyS"].Value.ToString();
                        AnalysResultTotal.L           = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyL"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyL"].Value.ToString();
                        AnalysResultTotal.R           = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyR"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyR"].Value.ToString();
                        AnalysResultTotal.Suggestion  = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalySugges"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalySugges"].Value.ToString();
                        AnalysResultTotal.Company     = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyCompany"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyCompany"].Value.ToString();
                        AnalysResultTotal.Mark        = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyMark"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyMark"].Value.ToString();
                        //AnalysResultTotal.NodeName
                        if (this.trvUcAnaly.SelectedNode.Level == 1)
                        {
                            AnalysResultTotal.NodeName = this.trvUcAnaly.SelectedNode.Text;
                        }
                        if (this.trvUcAnaly.SelectedNode.Level == 2)
                        {
                            AnalysResultTotal.NodeName = this.trvUcAnaly.SelectedNode.Parent.Text;
                        }
                        if (this.trvUcAnaly.SelectedNode.Level == 3)
                        {
                            AnalysResultTotal.NodeName = this.trvUcAnaly.SelectedNode.Parent.Parent.Text;
                        }
                        analysResultTotalsInfo.Add(AnalysResultTotal);
                        if (dgvCcAnalys1.Rows[i].Cells["ResultID"].Value != null)
                        {
                            if ((int)dgvCcAnalys1.Rows[i].Cells["ResultID"].Value != 0)
                            {
                                ResuletID.Add((int)dgvCcAnalys1.Rows[i].Cells["ResultID"].Value);
                            }
                        }
                    }

                    if (ResuletID.Count > 0)
                    {
                        if (analyResultBLL.Del_AnalysisResult(ResuletID))
                        {
                            if (analyResultBLL.Add_AnalysisResult(analysResultTotalsInfo))
                            {
                                AfterSaveBinding(TreeViewSelected, TreeViewSelectedE);
                                flag = true;
                            }
                            else
                            {
                                MessageBox.Show("保存失败!");
                            }
                        }
                    }
                    else
                    {
                        if (analysResultTotalsInfo != null)
                        {
                            if (analyResultBLL.Add_AnalysisResult(analysResultTotalsInfo))
                            {
                                AfterSaveBinding(TreeViewSelected, TreeViewSelectedE);
                                flag = true;
                            }
                            else
                            {
                                MessageBox.Show("保存失败!");
                            }
                        }
                    }
                }
                #endregion
            }
            else
            {
                if (dgvCcAnalys1.Rows.Count > 0)
                {
                    for (int i = 0; i < dgvCcAnalys1.Rows.Count; i++)
                    {
                        AnalysResultTotal AnalysResultTotal = new AnalysResultTotal();
                        AnalysResultTotal.ProjectName = InitialInterface.ProName;
                        AnalysResultTotal.RecordName  = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyNum"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyNum"].Value.ToString();
                        //AnalysResultTotal.Pramas = this.trvUcAnaly.SelectedNode.Text;
                        AnalysResultTotal.Pramas             = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyParams"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyParams"].Value.ToString();
                        AnalysResultTotal.PramasAndIntroduce = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyParamsAndIntro"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyParamsAndIntro"].Value.ToString();
                        AnalysResultTotal.DeviateDescription = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyDesc"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyDesc"].Value.ToString();
                        AnalysResultTotal.Reason             = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyReason"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyReason"].Value.ToString();
                        AnalysResultTotal.F0          = "";
                        AnalysResultTotal.Consequence = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyConseq"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyConseq"].Value.ToString();
                        AnalysResultTotal.Si          = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalySi"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalySi"].Value.ToString();
                        AnalysResultTotal.Li          = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyLi"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyLi"].Value.ToString();
                        AnalysResultTotal.Ri          = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyRi"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyRi"].Value.ToString();
                        AnalysResultTotal.Measure     = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyMessure"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyMessure"].Value.ToString();
                        AnalysResultTotal.Fs          = "";
                        AnalysResultTotal.S           = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyS"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyS"].Value.ToString();
                        AnalysResultTotal.L           = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyL"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyL"].Value.ToString();
                        AnalysResultTotal.R           = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyR"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyR"].Value.ToString();
                        AnalysResultTotal.Suggestion  = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalySugges"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalySugges"].Value.ToString();
                        AnalysResultTotal.Company     = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyCompany"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyCompany"].Value.ToString();
                        AnalysResultTotal.Mark        = dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyMark"].Value == null ? "" : dgvCcAnalys1.Rows[i].Cells["dgcCcAnalyMark"].Value.ToString();
                        //AnalysResultTotal.NodeName
                        if (this.trvUcAnaly.SelectedNode.Level == 1)
                        {
                            AnalysResultTotal.NodeName = this.trvUcAnaly.SelectedNode.Text;
                        }
                        if (this.trvUcAnaly.SelectedNode.Level == 2)
                        {
                            AnalysResultTotal.NodeName = this.trvUcAnaly.SelectedNode.Parent.Text;
                        }
                        if (this.trvUcAnaly.SelectedNode.Level == 3)
                        {
                            AnalysResultTotal.NodeName = this.trvUcAnaly.SelectedNode.Parent.Parent.Text;
                        }
                        analysResultTotalsInfo.Add(AnalysResultTotal);
                        if (dgvCcAnalys1.Rows[i].Cells["ResultID"].Value != null)
                        {
                            if ((int)dgvCcAnalys1.Rows[i].Cells["ResultID"].Value != 0)
                            {
                                ResuletID.Add((int)dgvCcAnalys1.Rows[i].Cells["ResultID"].Value);
                            }
                        }
                    }

                    if (ResuletID.Count > 0)
                    {
                        if (analyResultBLL.Del_AnalysisResult(ResuletID))
                        {
                            if (analyResultBLL.Add_AnalysisResult(analysResultTotalsInfo))
                            {
                                AfterSaveBinding(TreeViewSelected, TreeViewSelectedE);
                                flag = true;
                            }
                            else
                            {
                                MessageBox.Show("保存失败!");
                            }
                        }
                    }
                    else
                    {
                        if (analysResultTotalsInfo != null)
                        {
                            if (analyResultBLL.Add_AnalysisResult(analysResultTotalsInfo))
                            {
                                AfterSaveBinding(TreeViewSelected, TreeViewSelectedE);
                                flag = true;
                            }
                            else
                            {
                                MessageBox.Show("保存失败!");
                            }
                        }
                    }
                }
            }


            return(flag);
            //List<AnalysResultTotal> analysResultTotals = new List<AnalysResultTotal>();
            //analysResultTotals = analyResultBLL.Get_All(InitialInterface.ProName,this.trvUcAnaly.SelectedNode.Text);
            //this.dgvCcAnalys1.DataSource = analysResultTotals;
        }
        private void AfterSaveBinding(object sender, TreeViewEventArgs e)
        {
            TreeView treeView = sender as TreeView;

            AnalyResultBLL analyResultBLL = new AnalyResultBLL();

            dgvCcAnalys1.AutoGenerateColumns = false;
            //记录选择节点的ID,如果是参数ID,在绑定引导词的时候会用到
            if (treeView.SelectedNode.Level > 0)
            {
                this.trvUcAnaly.Tag = treeView.SelectedNode.Tag;
            }
            string selectedParam = treeView.SelectedNode.Text;


            //选中项目名称则清空数据显示,且“参数”列不可见
            if (treeView.SelectedNode.Level == 0)
            {
                dgvCcAnalys1.Columns["dgcCcAnalyParams"].Visible = false;
                if (dgvCcAnalys1.AllowUserToAddRows == true)
                {
                    dgvCcAnalys1.AllowUserToAddRows = false;
                }
                //空数据源
                List <AnalysResultTotal> resultList = new List <AnalysResultTotal>();
                dgvCcAnalys1.DataSource = new BindingList <AnalysResultTotal>(resultList);
            }

            //选中节点 节点,绑定节点下所有参数引导词数据,且“参数”列可见
            //此时,“参数+引导词”列只读
            if (treeView.SelectedNode.Level == 1)
            {
                if (dgvCcAnalys1.Columns["dgcCcAnalyParams"].Visible == false)
                {
                    dgvCcAnalys1.Columns["dgcCcAnalyParams"].Visible = true;
                }
                if (dgvCcAnalys1.Columns["dgcCcAnalyParamsAndIntro"].ReadOnly == false)
                {
                    dgvCcAnalys1.Columns["dgcCcAnalyParamsAndIntro"].ReadOnly = true;
                }
                if (dgvCcAnalys1.AllowUserToAddRows == true)
                {
                    dgvCcAnalys1.AllowUserToAddRows = false;
                }
                List <AnalysResultTotal> resultList = analyResultBLL.Get_All(InitialInterface.ProName, this.trvUcAnaly.SelectedNode.Text);
                if (resultList == null)
                {
                    resultList = new List <AnalysResultTotal>();
                }
                dgvCcAnalys1.DataSource = new BindingList <AnalysResultTotal>(resultList);
                UcAnalysis_SLRColor();
            }

            //选中参数节点,绑定参数下所有引导词数据,且“参数”列不可见
            //此时,“参数+引导词”列才能选择,绑定数据源
            if (treeView.SelectedNode.Level == 2)
            {
                if (dgvCcAnalys1.Columns["dgcCcAnalyParamsAndIntro"].ReadOnly == true)
                {
                    dgvCcAnalys1.Columns["dgcCcAnalyParamsAndIntro"].ReadOnly = false;
                }
                if (dgvCcAnalys1.Columns["dgcCcAnalyParams"].Visible == true)
                {
                    dgvCcAnalys1.Columns["dgcCcAnalyParams"].Visible = false;
                }
                if (dgvCcAnalys1.AllowUserToAddRows == false)
                {
                    dgvCcAnalys1.AllowUserToAddRows = true;
                }
                List <AnalysResultTotal> resultList = analyResultBLL.Get_Params(InitialInterface.ProName, selectedParam, this.trvUcAnaly.SelectedNode.Parent.Text);
                if (resultList == null)
                {
                    resultList = new List <AnalysResultTotal>();
                }
                dgvCcAnalys1.DataSource = new BindingList <AnalysResultTotal>(resultList);
                UcAnalysis_SLRColor();
            }
            //选中叶子节点即引导词,绑定引导词数据,且“参数”列不可见
            if (treeView.SelectedNode.Level == 3)
            {
                if (dgvCcAnalys1.Columns["dgcCcAnalyParams"].Visible == true)
                {
                    dgvCcAnalys1.Columns["dgcCcAnalyParams"].Visible = false;
                }
                if (dgvCcAnalys1.AllowUserToAddRows == true)
                {
                    dgvCcAnalys1.AllowUserToAddRows = false;
                }
                dgvCcAnalys1.Columns["dgcCcAnalyParams"].Visible          = false;
                dgvCcAnalys1.Columns["dgcCcAnalyParamsAndIntro"].ReadOnly = true;
                List <AnalysResultTotal> resultList = analyResultBLL.Get_Introduces(InitialInterface.ProName, selectedParam, this.trvUcAnaly.SelectedNode.Parent.Parent.Text);
                if (resultList == null)
                {
                    resultList = new List <AnalysResultTotal>();
                }
                dgvCcAnalys1.DataSource = new BindingList <AnalysResultTotal>(resultList);
                UcAnalysis_SLRColor();
            }
        }