コード例 #1
0
ファイル: GBT3354.cs プロジェクト: vampire1202/HSTest
 //保存修改结果
 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;
     }
 }
コード例 #2
0
ファイル: GBT3354_2014.cs プロジェクト: vampire1202/HSTest
        //列表
        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]);
        }
コード例 #3
0
ファイル: GBT3354_2014.cs プロジェクト: vampire1202/HSTest
        //列表
        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]);
        }
コード例 #4
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);
         }
     }
 }
コード例 #5
0
        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);
        }
コード例 #6
0
ファイル: GBT3354_2014.cs プロジェクト: vampire1202/HSTest
        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();
        }
コード例 #7
0
ファイル: GBT3354_2014.cs プロジェクト: vampire1202/HSTest
        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]);
        }
コード例 #8
0
ファイル: GBT3354_2014.cs プロジェクト: vampire1202/HSTest
        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; }
        }