//保存修改结果 private void gBtnSaveResult_Click(object sender, EventArgs e) { switch (this._TestType) { case "GBT3354-2014": BLL.GBT3354_Samples bllTs = new HR_Test.BLL.GBT3354_Samples(); Model.GBT3354_Samples modelTs = bllTs.GetModel(this.tslblSampleNo.Text); foreach (UC.Result ucR in this.flowLayoutPanel1.Controls) { switch (ucR.Name) { //case "Pmax": // modelTs.Pmax = double.Parse(ucR.Tag.ToString()) * 1000.0; // break; //case "σt": // modelTs.σt = double.Parse(ucR.Tag.ToString()); // break; //case "ε1t": // modelTs.ε1t = double.Parse(ucR.Tag.ToString()); // break; //case "μ12": // modelTs.μ12 = double.Parse(ucR.Tag.ToString()); // break; case "ε1t": modelTs.ε1t = double.Parse(ucR.Tag.ToString()); break; } } if (bllTs.Update(modelTs)) { MessageBox.Show(this, "更新成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); } break; } }
//列表 private static DataTable CreateView_T(string _selCol, string _strTestNo, int ab) { BLL.GBT3354_Samples bllts = new HR_Test.BLL.GBT3354_Samples(); DataSet dst = bllts.GetFinishList1(_selCol, " testNo = '" + _strTestNo + "' and isFinish=true ", ab); return(dst.Tables[0]); }
//列表 public static DataTable CreateViewReport(string selCol, string strTestSampleNo, int ab) { BLL.GBT3354_Samples bllts = new HR_Test.BLL.GBT3354_Samples(); selCol = selCol.Substring(0, selCol.LastIndexOf(',')); DataSet dst = bllts.GetFinishListReport(selCol, " testSampleNo in ('" + strTestSampleNo + ") and isFinish=true ", ab); return(dst.Tables[0]); }
private void gBtnDelete_Click(object sender, EventArgs e) { if (_methodName != null) { if (DialogResult.OK == MessageBox.Show("是否删除该编号?", "警告", MessageBoxButtons.OKCancel, MessageBoxIcon.Question)) { BLL.GBT3354_Samples bllts = new HR_Test.BLL.GBT3354_Samples(); bllts.Delete(_methodName); //TestStandard.MethodControl.ReadMethod(treeviewTestMethod); } } }
private static List <TreeNode> ReadGBT3354Samples(DateTime dtp) { BLL.GBT3354_Samples bllTs = new HR_Test.BLL.GBT3354_Samples(); //查询不重复项 DataSet ds = bllTs.GetNotOverlapList1(" testDate = #" + dtp.Date + "#");//distinct testNo,testMethodName int rCount = ds.Tables[0].Rows.Count; List <TreeNode> ltn = new List <TreeNode>(); for (int i = 0; i < rCount; i++) { DataSet _ds = bllTs.GetList(" testNo='" + ds.Tables[0].Rows[i]["testNo"].ToString() + "' and testMethodName='" + ds.Tables[0].Rows[i]["testMethodName"].ToString() + "' and testDate=#" + dtp.Date + "#"); TreeNode tn = new TreeNode(); tn.Text = ds.Tables[0].Rows[i]["testNo"].ToString(); tn.Name = "GBT3354-2014"; tn.ImageIndex = 0; foreach (DataRow dr in _ds.Tables[0].Rows) { if (Convert.ToBoolean(dr["isFinish"].ToString()) == true) { //左侧node完成试验的图标 TreeNode ftn = new TreeNode(); ftn.ImageIndex = 1; ftn.Text = dr["testSampleNo"].ToString(); ftn.Name = "GBT3354-2014_c"; ftn.Tag = dr; tn.Nodes.Add(ftn); } else { //左侧node未完成试验的图标 //左侧node完成试验的图标 TreeNode ftn = new TreeNode(); ftn.ImageIndex = 2; ftn.Text = dr["testSampleNo"].ToString(); ftn.Tag = dr; ftn.Name = "GBT3354-2014_c"; tn.Nodes.Add(ftn); } } _ds.Dispose(); ltn.Add(tn); } ds.Dispose(); return(ltn); }
public static void readFinishSampleReport(DataGridView dg, string testNo, string testSampleNo, DateTimePicker dtpfrom, DateTimePicker dtpto, ZedGraph.ZedGraphControl zed) { BLL.GBT3354_Samples bllTs = new HR_Test.BLL.GBT3354_Samples(); string strWhere = string.Empty; if (!string.IsNullOrEmpty(testNo)) { strWhere += " and testNo like '%" + testNo + "%'"; } if (!string.IsNullOrEmpty(testSampleNo)) { strWhere += " and testSampleNo like '%" + testSampleNo + "%'"; } double maxValue = 0; DataSet dsmax = bllTs.GetMaxFm("isFinish=true and isEffective=false and testDate>=#" + dtpfrom.Value.Date + "# and testDate<=#" + dtpto.Value.Date + "#" + strWhere); if (dsmax != null) { if (dsmax.Tables[0].Rows.Count > 0) { if (!string.IsNullOrEmpty(dsmax.Tables[0].Rows[0]["Pmax"].ToString())) { maxValue = Convert.ToDouble(dsmax.Tables[0].Rows[0]["Pmax"].ToString()); } } } DataSet ds = bllTs.GetFinishList("isFinish=true and isEffective=false and testDate>=#" + dtpfrom.Value.Date + "# and testDate<=#" + dtpto.Value.Date + "#" + strWhere, maxValue); DataTable dt = ds.Tables[0]; dg.DataSource = dt; DataGridViewCheckBoxColumn chkcol = new DataGridViewCheckBoxColumn(); //DataGridViewDisableCheckBoxColumn chkcol = new DataGridViewDisableCheckBoxColumn(); chkcol.Name = "选择"; DataGridViewTextBoxColumn c = new DataGridViewTextBoxColumn(); c.Visible = true; c.Name = " "; dg.Columns.Insert(0, c); dg.Columns.Insert(0, chkcol); dg.Columns[1].Frozen = true; dg.Columns[2].Frozen = true; //dg.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.DisplayedCells); dg.Columns[0].Width = 50; dg.Columns[1].Width = 50; dg.Columns[2].Width = 100; if (dg.ColumnCount > 0) { foreach (DataGridViewColumn dgvc in dg.Columns) { dgvc.AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells; dgvc.SortMode = DataGridViewColumnSortMode.NotSortable; dgvc.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; } } dg.Refresh(); for (int i = 0; i < dg.Rows.Count; i++) { if (i > 19) { dg.Rows[i].Cells[1].Style.BackColor = Color.FromName(_Color_Array[i % 20]); dg.Rows[i].Cells[1].Style.ForeColor = Color.FromName(_Color_Array[i % 20]); dg.Rows[i].Cells[1].Style.SelectionForeColor = Color.FromName(_Color_Array[i % 20]); dg.Rows[i].Cells[1].Style.SelectionBackColor = Color.FromName(_Color_Array[i % 20]); dg.Rows[i].Cells[1].Value = _Color_Array[i % 20].ToString(); } else { dg.Rows[i].Cells[1].Style.BackColor = Color.FromName(_Color_Array[i]); dg.Rows[i].Cells[1].Style.ForeColor = Color.FromName(_Color_Array[i]); dg.Rows[i].Cells[1].Style.SelectionForeColor = Color.FromName(_Color_Array[i]); dg.Rows[i].Cells[1].Style.SelectionBackColor = Color.FromName(_Color_Array[i]); dg.Rows[i].Cells[1].Value = _Color_Array[i].ToString(); } } foreach (CurveItem ci in zed.GraphPane.CurveList) { ci.Clear(); ci.Label.Text = ""; } zed.AxisChange(); zed.Refresh(); ds.Dispose(); }
public static DataTable CreateAverageViewReport(StringBuilder _selSqlAver, StringBuilder _strSelcol, string _arrTestSample, int ab) { BLL.GBT3354_Samples bllts = new HR_Test.BLL.GBT3354_Samples(); //求平均 DataSet dsaver = bllts.GetFinishSumList1(_selSqlAver.ToString(), " testSampleNo in ('" + _arrTestSample + ") and isFinish=true "); //获取选择试样的数量和试样编号 string selCol = _strSelcol.ToString(); selCol = selCol.Substring(0, selCol.LastIndexOf(',')); DataSet dsfinish = bllts.GetFinishList1(selCol, " testSampleNo in ('" + _arrTestSample + ") and isFinish=true ", ab); int fcount = dsfinish.Tables[0].Rows.Count; //变异系数 = sd/mean StringBuilder strCV = new StringBuilder(); //中间值 StringBuilder strMid = new StringBuilder(); //创建新的数据计算结果表 DataSet dsaverto = new DataSet(); dsaverto.Tables.Add(); dsaverto.Tables[0].Columns.Add("数量(" + fcount + ")").SetOrdinal(0); for (int i = 0; i < dsaver.Tables[0].Columns.Count; i++) { dsaverto.Tables[0].Columns.Add(dsaver.Tables[0].Columns[i].Caption).SetOrdinal(i + 1); } //给新数据表添加平均值列 List <object> objmean = new List <object>(); objmean.Add("Mean.:"); for (int i = 0; i < dsaver.Tables[0].Columns.Count; i++) { if (double.Parse(dsaver.Tables[0].Rows[0][i].ToString()) != 0) { objmean.Add(dsaver.Tables[0].Rows[0][i].ToString()); } else { objmean.Add("-"); } } dsaverto.Tables[0].Rows.Add(objmean.ToArray()); double sumsd = 0; double sd = 0; double cv = 0; double ctrue = 0; double caver = 0; double temp = 1000000; double mid = 0; List <object> objsd = new List <object>(); objsd.Add("S.D.:"); List <object> objcv = new List <object>(); objcv.Add("C.V.:"); List <object> objmid = new List <object>(); objmid.Add("Mid.:"); //计算标准偏差 for (int i = 0; i < dsaver.Tables[0].Columns.Count; i++) { for (int j = 0; j < dsfinish.Tables[0].Rows.Count; j++) { // 求和 (真实值-平均值)^2 if (ab == 2) { ctrue = Convert.ToDouble(dsfinish.Tables[0].Rows[j][i + 5].ToString()); caver = Convert.ToDouble(dsaver.Tables[0].Rows[0][i].ToString()); } else { ctrue = Convert.ToDouble(dsfinish.Tables[0].Rows[j][i + 6].ToString()); caver = Convert.ToDouble(dsaver.Tables[0].Rows[0][i].ToString()); } double c1 = (ctrue - caver) * (ctrue - caver); sumsd += c1; //查找中间值,最接近平均值的 double d_value = Math.Abs(ctrue - caver); if (d_value < temp) { temp = d_value; mid = ctrue; } } if (fcount - 1 != 0) { sd = Math.Sqrt(sumsd / (fcount - 1)); } else { sd = 0; } //变异系数 =( 标准偏差 / 平均值 ) *100 if (caver != 0) { cv = (sd / caver) * 100; } else { cv = 0; } if (sd != 0) { objsd.Add(sd.ToString("f4")); } else { objsd.Add("-"); } if (cv != 0) { objcv.Add(cv.ToString("f4")); } else { objcv.Add("-"); } if (mid != 0) { objmid.Add(mid.ToString("f4")); } else { objmid.Add("-"); } temp = 1000000; sumsd = 0; } //S.D.标准偏差行 if (_isSelSD) { dsaverto.Tables[0].Rows.Add(objsd.ToArray()); } //变异系数行 if (_isSelCV) { dsaverto.Tables[0].Rows.Add(objcv.ToArray()); } //中间值行 if (_isSelMid) { dsaverto.Tables[0].Rows.Add(objmid.ToArray()); } dsfinish.Dispose(); return(dsaverto.Tables[0]); }
public static void readFinishSample(DataGridView dg, DataGridView dgSum, string testNo, DateTimePicker dtp, ZedGraph.ZedGraphControl zed) { //try //{ //dg.MultiSelect = true; if (dg != null) { dg.DataSource = null; dg.Columns.Clear(); dg.RowHeadersVisible = false; } BLL.GBT3354_Samples bllTs = new HR_Test.BLL.GBT3354_Samples(); if (!string.IsNullOrEmpty(testNo)) { //if (testNo.Contains('-')) // testNo = testNo.Substring(0, testNo.LastIndexOf("-")); //获取不重复的试验编号列表 DataSet ds = bllTs.GetNotOverlapList(" testNo='" + testNo + "' and testDate =#" + dtp.Value.Date + "#"); DataTable dt = ds.Tables[0]; int ab = 0; if (dt != null) { if (dt.Rows[0]["w"].ToString() != "0") { ab = 1; } if (dt.Rows[0]["d0"].ToString() != "0") { ab = 2; } if (dt.Rows[0]["Do"].ToString() != "0") { ab = 3; } } DataSet ds1 = bllTs.GetNotOverlapList1(" testNo='" + testNo + "' and testDate =#" + dtp.Value.Date + "#"); DataTable dt1 = ds1.Tables[0]; DataSet dsmax = bllTs.GetMaxFm(" testNo='" + testNo + "' and testDate =#" + dtp.Value.Date + "#"); double maxvalue = 0; if (dsmax != null) { if (!string.IsNullOrEmpty(dsmax.Tables[0].Rows[0]["Pmax"].ToString())) { maxvalue = Convert.ToDouble(dsmax.Tables[0].Rows[0]["Pmax"].ToString()); } } string methodName = dt1.Rows[0]["testMethodName"].ToString(); if (dt1 != null) { StringBuilder[] tst = strSql_T(methodName, maxvalue); if (!string.IsNullOrEmpty(tst[0].ToString()) && dg != null) { dg.DataSource = CreateView_T(tst[0].ToString(), dt1.Rows[0]["testNo"].ToString(), ab); } if (!string.IsNullOrEmpty(tst[1].ToString())) { dgSum.DataSource = CreateAverageView(tst[0], tst[1], dt1.Rows[0]["testNo"].ToString(), ab); } } } else { DataSet ds = bllTs.GetFinishList(" testNo='" + testNo + "' and testDate=#" + dtp.Value.Date + "#", 0); DataTable dt = ds.Tables[0]; DataRow dr = dt.NewRow(); dt.Rows.Add(dr); if (dg != null) { dg.DataSource = dt; } ds.Dispose(); } DataGridViewCheckBoxColumn chkcol = new DataGridViewCheckBoxColumn(); chkcol.Name = "选择"; chkcol.MinimumWidth = 50; chkcol.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; //按钮 //DataGridViewButtonColumn btncol = new DataGridViewButtonColumn(); //btncol.Name = "失效模式"; //btncol.MinimumWidth = 100; //btncol.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; if (dg != null) { DataGridViewTextBoxColumn c = new DataGridViewTextBoxColumn(); c.Name = ""; dg.Columns.Insert(0, chkcol); dg.Columns.Insert(1, c); //dg.Columns.Insert(4, btncol); dg.Name = "tensile"; int rCount = dg.Rows.Count; for (int i = 0; i < rCount; i++) { if (!string.IsNullOrEmpty(dg.Rows[i].Cells[2].Value.ToString())) { if (Convert.ToBoolean(dg.Rows[i].Cells[2].Value.ToString()) == true) { dg.Rows[i].DefaultCellStyle.BackColor = Color.IndianRed; } } if (i > 19) { dg.Rows[i].Cells[1].Style.BackColor = Color.FromName(_Color_Array[i % 20]); dg.Rows[i].Cells[1].Style.ForeColor = Color.FromName(_Color_Array[i % 20]); dg.Rows[i].Cells[1].Style.SelectionForeColor = Color.FromName(_Color_Array[i % 20]); dg.Rows[i].Cells[1].Style.SelectionBackColor = Color.FromName(_Color_Array[i % 20]); dg.Rows[i].Cells[1].Value = _Color_Array[i % 20].ToString(); } else { dg.Rows[i].Cells[1].Style.BackColor = Color.FromName(_Color_Array[i]); dg.Rows[i].Cells[1].Style.ForeColor = Color.FromName(_Color_Array[i]); dg.Rows[i].Cells[1].Style.SelectionBackColor = Color.FromName(_Color_Array[i]); dg.Rows[i].Cells[1].Style.SelectionForeColor = Color.FromName(_Color_Array[i]); dg.Rows[i].Cells[1].Value = _Color_Array[i].ToString(); } } foreach (DataGridViewColumn dgvc in dg.Columns) { dgvc.SortMode = DataGridViewColumnSortMode.NotSortable; dgvc.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter; } if (dg.Columns.Count > 3) { dg.Columns[0].Frozen = true; dg.Columns[1].Frozen = true; dg.Columns[2].Frozen = true; } if (dg.Columns.Count > 2) { dg.Columns[2].Frozen = true; } dg.Refresh(); } if (zed != null) { //clear all curves foreach (CurveItem ci in zed.GraphPane.CurveList) { ci.Clear(); ci.Label.Text = ""; } zed.AxisChange(); zed.Refresh(); } //} //catch (Exception ee) { throw ee; } }