using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using CoreFS.CA06; using Infragistics.Win; using System.Collections; using Infragistics.Win.UltraWinGrid; using System.Text.RegularExpressions; using Core.LZMes.Client.QCM.QCM03; using System.Diagnostics; namespace Core.LZMes.Client.QCM { public partial class QCM030203 : FrmBase { public QCM030203() { InitializeComponent(); } public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "Query": this.DoQuery(); break; case "Judge": this.Judge(); break; case "Cancel": this.Cancel(); break; case "Check": this.check(); break; case "Result": this.result(); break; case "Export": this.DoExport(); break; case "ReJudge": this.ReJudge(); break; } } private void ReJudge() { try { UltraGridRow ugr = this.ultraGrid3.ActiveRow; if (ugr == null) return; string material_no = ugr.Cells["specimen_no"].Value.ToString(); if (MessageBox.Show(this, "是否对" + material_no + "重新进行材质判定?", "删除", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No) { return; } string smp_no = ugr.Cells["smp_no"].Value.ToString(); string batch_no = ugr.Cells["batch_no"].Value.ToString(); string smp_type_code = ugr.Cells["smp_type_code"].Value.ToString(); string design_key = ugr.Cells["design_key"].Value.ToString(); string pline_code = ugr.Cells["pline_code"].Value.ToString(); string username = this.UserInfo.GetUserName(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl"; ccp.MethodName = "PhyRejudge"; ccp.ServerParams = new object[] {smp_no, material_no, batch_no, smp_type_code, design_key, pline_code, username }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode == 1) { MessageBox.Show(ccp.ReturnInfo); return; } MessageBox.Show("操作成功!"); } catch (Exception EX) { MessageBox.Show(EX.ToString()); } } private void result() { if (this.ultraTabControl1.Tabs[0].Selected) //待判信息 { UltraGridRow ugr = this.ultraGrid1.ActiveRow; string smp_no = ugr.Cells["SMP_NO"].Value.ToString(); string design_key = ugr.Cells["DESIGN_KEY"].Value.ToString(); string steel_name = ugr.Cells["STEEL_NAME"].Value.ToString(); ArrayList list1 = new ArrayList(); int count = 0; foreach (UltraGridRow ugrs in this.ultraGrid2.Rows) { if (ugrs.Cells["CHECK"].Text.ToString() == "True") { list1.Add(ugrs.Cells["specimen_no"].Value.ToString() + ugrs.Cells["seq"].Value.ToString() + ugrs.Cells["phy_code_l"].Value.ToString() + ugrs.Cells["phy_code_m"].Value.ToString() + ugrs.Cells["phy_code_s"].Value.ToString() + ugrs.Cells["item_code_d"].Value.ToString() + ugrs.Cells["item_code_s"].Value.ToString() + ugrs.Cells["item_code_t"].Value.ToString()); count++; } } if (count == 0) { MessageBox.Show("请选择检验实绩!"); return; } QCM030713 dlg = new QCM030713(); dlg.smp_no = smp_no; dlg.design_key = design_key; dlg.steel_name = steel_name; dlg.list = list1; dlg.ob = this.ob; dlg.ShowDialog(); } if (this.ultraTabControl1.Tabs[1].Selected) //判定记录 { UltraGridRow ugr = this.ultraGrid3.ActiveRow; string smp_no = ugr.Cells["SMP_NO"].Value.ToString(); string design_key = ugr.Cells["DESIGN_KEY"].Value.ToString(); string steel_name = ugr.Cells["STEEL_NAME"].Value.ToString(); ArrayList list1 = new ArrayList(); int count = 0; foreach (UltraGridRow ugrs in this.ultraGrid4.Rows) { list1.Add(ugrs.Cells["specimen_no"].Value.ToString() + ugrs.Cells["seq"].Value.ToString() + ugrs.Cells["phy_code_l"].Value.ToString() + ugrs.Cells["phy_code_m"].Value.ToString() + ugrs.Cells["phy_code_s"].Value.ToString() + ugrs.Cells["item_code_d"].Value.ToString() + ugrs.Cells["item_code_s"].Value.ToString() + ugrs.Cells["item_code_t"].Value.ToString()); } QCM030713 dlg = new QCM030713(); dlg.smp_no = smp_no; dlg.design_key = design_key; dlg.steel_name = steel_name; dlg.list = list1; dlg.ob = this.ob; dlg.ShowDialog(); } } private void check() { try { UltraGridRow ugr = this.ultraGrid1.ActiveRow; string smp_no = ugr.Cells["SMP_NO"].Value.ToString(); string steel_name = ugr.Cells["STEEL_NAME"].Value.ToString(); ArrayList list1 = new ArrayList(); int count = 0; foreach (UltraGridRow ugrs in this.ultraGrid2.Rows) { if (ugrs.Cells["CHECK"].Text.ToString() == "True") { list1.Add(ugrs.Cells["specimen_no"].Value.ToString() + ugrs.Cells["phy_code_l"].Value.ToString() + ugrs.Cells["phy_code_m"].Value.ToString() + ugrs.Cells["phy_code_s"].Value.ToString() + ugrs.Cells["item_code_d"].Value.ToString() + ugrs.Cells["item_code_s"].Value.ToString() + ugrs.Cells["item_code_t"].Value.ToString()); count++; } } if (count == 0) { MessageBox.Show("请选择检验实绩!"); return; } string username = this.UserInfo.GetUserName(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "QCM.QCM03.QCM0302.QcmJhyPhyresultServiceImpl"; ccp.MethodName = "PhyFstJudge"; ccp.ServerParams = new object[] { smp_no, list1, username }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode == 1) { MessageBox.Show(ccp.ReturnInfo); } } catch (Exception EX) { MessageBox.Show(EX.ToString()); } } private void Judge() { try { UltraGridRow ugr = this.ultraGrid1.ActiveRow; string smp_no = ugr.Cells["SMP_NO"].Value.ToString(); string steel_name = ugr.Cells["STEEL_NAME"].Value.ToString(); ArrayList list1 = new ArrayList(); int count = 0; foreach(UltraGridRow ugrs in this.ultraGrid2.Rows) { if(ugrs.Cells["CHECK"].Text.ToString() == "True") { list1.Add(ugrs.Cells["specimen_no"].Value.ToString() + ugrs.Cells["seq"].Value.ToString() + ugrs.Cells["phy_code_l"].Value.ToString() + ugrs.Cells["phy_code_m"].Value.ToString() + ugrs.Cells["phy_code_s"].Value.ToString() + ugrs.Cells["item_code_d"].Value.ToString() + ugrs.Cells["item_code_s"].Value.ToString() + ugrs.Cells["item_code_t"].Value.ToString()); count ++; } } if(count == 0){ MessageBox.Show("请选择检验实绩!"); return; } string username = this.UserInfo.GetUserName(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "QCM.QCM03.QCM0302.QcmJhyPhyresultServiceImpl"; ccp.MethodName = "JudgeByHuman"; ccp.ServerParams = new object[] { smp_no, list1, username, steel_name }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode == -1) { return; } ugr.Delete(false); MessageBox.Show("判定成功!"); } catch (Exception EX) { MessageBox.Show(EX.ToString()); } } private void Cancel() { try { QCM030607 frm = new QCM030607(); if (frm.ShowDialog() == DialogResult.OK) { string remark = frm._memo; if (remark == "") { MessageBox.Show("请录入备注信息!"); return; } if (this.ultraGrid3.Selected.Rows.Count == 0) this.ultraGrid3.ActiveRow.Selected = true; foreach (UltraGridRow ugr in this.ultraGrid3.Selected.Rows) { string inspection_lot = ugr.Cells["inspection_lot"].Value.ToString(); string phy_id = ugr.Cells["phy_id"].Value.ToString(); string smp_no = ugr.Cells["smp_no"].Value.ToString(); string username = this.UserInfo.GetUserName(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl"; ccp.MethodName = "CancelJudge"; ccp.ServerParams = new object[] { phy_id,inspection_lot, smp_no, username,remark }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode == -1) { return; } MessageBox.Show("取消判定成功!"); } } } catch (Exception EX) { MessageBox.Show(EX.ToString()); } } private void DoQuery() { if (this.ultraTabControl1.Tabs[0].Selected) //待判信息 { DoQueryMe(); } if (this.ultraTabControl1.Tabs[1].Selected) //判定记录 { DoQueryRe(); } } //查询待判信息 private void DoQueryMe() { try { if (comboBox4.SelectedIndex == 2) { MessageBox.Show("请选择委托生成或者发送时间!"); return; } this.dataSet1.Clear(); string ebatchno = ""; string bbatchno = textBox1.Text.Trim(); if (textBox2.Text.ToString() == "") { ebatchno = this.textBox1.Text.Trim(); } else { ebatchno = textBox2.Text.Trim(); } string design_key = textBox3.Text.Trim(); string psc = textBox4.Text.Trim(); string prodline = this.comboBox3.Text.ToString(); string certinstname = comboBox1.Text.ToString(); string status = comboBox2.Text.ToString(); string time_type = this.comboBox4.SelectedIndex.ToString(); string heat_no = this.textBox6.Text.ToString(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "QCM.QCM03.QCM0302.QcmJhyPhyresultServiceImpl"; ccp.MethodName = "getRejudgeInfo"; ccp.ServerParams = new object[] {this.dateTimePicker1.Value.ToString("yyyyMMdd"), this.dateTimePicker2.Value.ToString("yyyyMMdd"), bbatchno, ebatchno, design_key, psc,"",prodline ,certinstname,status,time_type,heat_no }; ccp.SourceDataTable = this.dataSet1.Tables[0]; this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); MessageBox.Show("系统出错,请联系管理人员", "警告"); } } //查询判定记录 private void DoQueryRe() { try { if (comboBox4.SelectedIndex != 2) { MessageBox.Show("请选择判定时间!"); return; } this.dataSet3.Clear(); string ebatchno = ""; string bbatchno = textBox1.Text.Trim(); if (textBox2.Text.ToString() == "") { ebatchno = this.textBox1.Text.Trim(); } else { ebatchno = textBox2.Text.Trim(); } string design_key = textBox3.Text.Trim(); string psc = textBox4.Text.Trim(); string prodline = this.comboBox3.Text.ToString(); string certinstname = comboBox1.Text.ToString(); string heat_no = this.textBox6.Text.ToString(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "QCM.QCM03.QCM0302.QcmJudgePhysicalServiceImpl"; ccp.MethodName = "doQueryQcmJudgePhysical"; ccp.ServerParams = new object[] { bbatchno, ebatchno, design_key, psc, this.dateTimePicker1.Value.ToString("yyyyMMdd"), this.dateTimePicker2.Value.ToString("yyyyMMdd"),"",prodline,certinstname,heat_no }; ccp.SourceDataTable = this.dataSet3.Tables[0]; this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal); //for (int i = 0; i < ccp.SourceDataTable.Rows.Count; i++) //{ // foreach (UltraGridRow ugr3 in this.ultraGrid3.Rows) // { // if (ugr3.Cells["phy_result_desc"].Value.ToString() == "合格") // { // ugr3.Cells["phy_result_desc"].Appearance.BackColor = Color.FromArgb(185, 235, 204); // ugr3.Cells["phy_result_desc"].Appearance.ForeColor = Color.Black; // } // else // { // ugr3.Cells["phy_result_desc"].Appearance.BackColor = Color.FromArgb(249, 198, 186); // ugr3.Cells["phy_result_desc"].Appearance.ForeColor = Color.Black; // } // } //} } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); MessageBox.Show("系统出错,请联系管理人员", "警告"); } } private void ultraGrid1_AfterRowActivate(object sender, EventArgs e) { try { UltraGridRow ugr = this.ultraGrid1.ActiveRow; if (ugr == null) return; this.dataSet4.Clear(); string smp_no = ugr.Cells["SMP_NO"].Value.ToString(); string design_key = ugr.Cells["DESIGN_KEY"].Value.ToString(); string steel_name = ugr.Cells["STEEL_NAME"].Value.ToString(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "QCM.QCM03.QCM0302.QcmJhyPhyresultServiceImpl"; ccp.MethodName = "querryJudgetItems"; ccp.ServerParams = new object[] { smp_no,design_key,steel_name }; ccp.SourceDataTable = this.dataSet4.Tables[0]; this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal); foreach (UltraGridRow ugrs in this.ultraGrid2.Rows) { if (ugrs.Cells["defect_flag"].Value.ToString() == "是") { ugrs.Cells["defect_flag"].Appearance.ForeColor = Color.Red; } if (ugr.Cells["SMP_TYPE_CODE"].Text.ToString() == "初样") { ugrs.Cells["CHECK"].Value = "True"; } if (ugrs.Cells["isjudge"].Value.ToString() == "是") { if (ugrs.Cells["judge_basis"].Value.ToString() == "逐值判定") { if (ugrs.Cells["val1"].Text.ToString() == "") { ugrs.Cells["val1"].Appearance.BackColor = Color.Yellow; } } else if (ugrs.Cells["judge_basis"].Value.ToString() == "平均值") { if (ugrs.Cells["avg_val"].Text.ToString() == "") { ugrs.Cells["avg_val"].Appearance.BackColor = Color.Yellow; } } } if (ugrs.Cells["isjudge"].Value.ToString() == "是") { if (ugrs.Cells["judge_basis"].Value.ToString() == "逐值判定") { DataTable dt = new DataTable(); if (IsNumberal(ugrs.Cells["val1"].Value.ToString())) { if (ishz(ugrs.Cells["jf_stdmin"].Value.ToString()) || ishz(ugrs.Cells["jf_stdmax"].Value.ToString())) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } else { if (ugrs.Cells["jf_stdmin"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val1"].Value.ToString() + ugrs.Cells["jf_stdmin"].Value.ToString(), "")) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["jf_stdmax"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val1"].Value.ToString() + ugrs.Cells["jf_stdmax"].Value.ToString(), "")) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } } } else { if (ugrs.Cells["jf_stdmin"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && ugrs.Cells["jf_stdmin_sign"].Value.ToString() + ugrs.Cells["val1"].Value.ToString() != ugrs.Cells["jf_stdmin"].Value.ToString()) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["jf_stdmax"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && ugrs.Cells["jf_stdmax_sign"].Value.ToString() + ugrs.Cells["val1"].Value.ToString() != ugrs.Cells["jf_stdmax"].Value.ToString()) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } } if (ugrs.Cells["jf_stdmin"].Value.ToString() != "" && ugrs.Cells["val2"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val2"].Value.ToString() + ugrs.Cells["jf_stdmin"].Value.ToString(), "")) { ugrs.Cells["val2"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["jf_stdmax"].Value.ToString() != "" && ugrs.Cells["val2"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val2"].Value.ToString() + ugrs.Cells["jf_stdmax"].Value.ToString(), "")) { ugrs.Cells["val2"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["jf_stdmin"].Value.ToString() != "" && ugrs.Cells["val3"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val3"].Value.ToString() + ugrs.Cells["jf_stdmin"].Value.ToString(), "")) { ugrs.Cells["val3"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["jf_stdmax"].Value.ToString() != "" && ugrs.Cells["val3"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val3"].Value.ToString() + ugrs.Cells["jf_stdmax"].Value.ToString(), "")) { ugrs.Cells["val3"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmin"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val1"].Value.ToString() + ugrs.Cells["nk_stdmin"].Value.ToString(), "")) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmax"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val1"].Value.ToString() + ugrs.Cells["nk_stdmax"].Value.ToString(), "")) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmin"].Value.ToString() != "" && ugrs.Cells["val2"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val2"].Value.ToString() + ugrs.Cells["nk_stdmin"].Value.ToString(), "")) { ugrs.Cells["val2"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmax"].Value.ToString() != "" && ugrs.Cells["val2"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val2"].Value.ToString() + ugrs.Cells["nk_stdmax"].Value.ToString(), "")) { ugrs.Cells["val2"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmin"].Value.ToString() != "" && ugrs.Cells["val3"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val3"].Value.ToString() + ugrs.Cells["nk_stdmin"].Value.ToString(), "")) { ugrs.Cells["val3"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmax"].Value.ToString() != "" && ugrs.Cells["val3"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val3"].Value.ToString() + ugrs.Cells["nk_stdmax"].Value.ToString(), "")) { ugrs.Cells["val3"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmin"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val1"].Value.ToString() + ugrs.Cells["kh_stdmin"].Value.ToString(), "")) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmax"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val1"].Value.ToString() + ugrs.Cells["kh_stdmax"].Value.ToString(), "")) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmin"].Value.ToString() != "" && ugrs.Cells["val2"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val2"].Value.ToString() + ugrs.Cells["kh_stdmin"].Value.ToString(), "")) { ugrs.Cells["val2"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmax"].Value.ToString() != "" && ugrs.Cells["val2"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val2"].Value.ToString() + ugrs.Cells["kh_stdmax"].Value.ToString(), "")) { ugrs.Cells["val2"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmin"].Value.ToString() != "" && ugrs.Cells["val3"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val3"].Value.ToString() + ugrs.Cells["kh_stdmin"].Value.ToString(), "")) { ugrs.Cells["val3"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmax"].Value.ToString() != "" && ugrs.Cells["val3"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val3"].Value.ToString() + ugrs.Cells["kh_stdmax"].Value.ToString(), "")) { ugrs.Cells["val3"].Appearance.ForeColor = Color.Red; } } else if (ugrs.Cells["judge_basis"].Value.ToString() == "平均值") { DataTable dt = new DataTable(); if (ugrs.Cells["jf_stdmin"].Value.ToString() != "" && ugrs.Cells["avg_val"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["avg_val"].Value.ToString() + ugrs.Cells["jf_stdmin"].Value.ToString(), "")) { ugrs.Cells["avg_val"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["jf_stdmax"].Value.ToString() != "" && ugrs.Cells["avg_val"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["avg_val"].Value.ToString() + ugrs.Cells["jf_stdmax"].Value.ToString(), "")) { ugrs.Cells["avg_val"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmin"].Value.ToString() != "" && ugrs.Cells["avg_val"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["avg_val"].Value.ToString() + ugrs.Cells["kh_stdmin"].Value.ToString(), "")) { ugrs.Cells["avg_val"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmax"].Value.ToString() != "" && ugrs.Cells["avg_val"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["avg_val"].Value.ToString() + ugrs.Cells["kh_stdmax"].Value.ToString(), "")) { ugrs.Cells["avg_val"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmin"].Value.ToString() != "" && ugrs.Cells["avg_val"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["avg_val"].Value.ToString() + ugrs.Cells["nk_stdmin"].Value.ToString(), "")) { ugrs.Cells["avg_val"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmax"].Value.ToString() != "" && ugrs.Cells["avg_val"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["avg_val"].Value.ToString() + ugrs.Cells["nk_stdmax"].Value.ToString(), "")) { ugrs.Cells["avg_val"].Appearance.ForeColor = Color.Red; } } } } RefreshAndAutoSize(ultraGrid2); //设置需要调整的长度 ultraGrid2.DisplayLayout.Bands[0].Columns["defect_flag"].RowLayoutColumnInfo.PreferredCellSize = new System.Drawing.Size(40, 0); ultraGrid2.DisplayLayout.Bands[0].Columns["val1"].RowLayoutColumnInfo.PreferredCellSize = new System.Drawing.Size(50, 0); ultraGrid2.DisplayLayout.Bands[0].Columns["val2"].RowLayoutColumnInfo.PreferredCellSize = new System.Drawing.Size(50, 0); ultraGrid2.DisplayLayout.Bands[0].Columns["val3"].RowLayoutColumnInfo.PreferredCellSize = new System.Drawing.Size(50, 0); ultraGrid2.DisplayLayout.Bands[0].Columns["avg_val"].RowLayoutColumnInfo.PreferredCellSize = new System.Drawing.Size(65, 0); } catch (Exception ex) { //System.Diagnostics.Debug.WriteLine(ex.ToString()); //MessageBox.Show("系统出错,请联系管理人员", "警告"); } } public static bool IsNumberal(string input) { bool flag = true; int count = 0; int count1 = 0; if (input.Length == 0) { flag = false; } else { char[] x = input.ToCharArray(); for (int i = 0; i < input.Length; i++) { if (!char.IsNumber(x[i]) && x[i] != '.'&&x[i] != '-') { flag = false; break; } if (x[i] == '.') { count++; if (i == 0 || i == input.Length - 1) flag = false; } if (x[i] == '-') { count1++; if (i >1) flag = false; } } if (count > 1 || count1 > 1) flag = false; } return flag; } private static bool ishz(string text) { if (Regex.IsMatch(text, @"[\u4e00-\u9fa5]")) { return true; } else { return false; } } private void ultraGrid3_AfterRowActivate(object sender, EventArgs e) { try { UltraGridRow ugr = this.ultraGrid3.ActiveRow; if (ugr == null) return; this.dataSet2.Clear(); string phy_id = ugr.Cells["phy_id"].Value.ToString(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "QCM.QCM03.QCM0302.QcmJhyPhyresultServiceImpl"; ccp.MethodName = "querryJudgetItemss"; ccp.ServerParams = new object[] { phy_id }; ccp.SourceDataTable = this.dataSet2.Tables[0]; this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal); foreach (UltraGridRow ugrs in this.ultraGrid4.Rows) { if (ugrs.Cells["defect_flag"].Value.ToString() == "是") { ugrs.Cells["defect_flag"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["isjudge"].Value.ToString() == "是") { if (ugrs.Cells["judge_basis"].Value.ToString() == "逐值判定") { DataTable dt = new DataTable(); if (IsNumberal(ugrs.Cells["val1"].Value.ToString())) { if (ishz(ugrs.Cells["jf_stdmin"].Value.ToString()) || ishz(ugrs.Cells["jf_stdmax"].Value.ToString())) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } else { if (ugrs.Cells["jf_stdmin"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val1"].Value.ToString() + ugrs.Cells["jf_stdmin"].Value.ToString(), "")) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["jf_stdmax"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val1"].Value.ToString() + ugrs.Cells["jf_stdmax"].Value.ToString(), "")) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } } } else { if (ugrs.Cells["jf_stdmin"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && ugrs.Cells["jf_stdmin_sign"].Value.ToString() +ugrs.Cells["val1"].Value.ToString() != ugrs.Cells["jf_stdmin"].Value.ToString()) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["jf_stdmax"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && ugrs.Cells["jf_stdmax_sign"].Value.ToString() + ugrs.Cells["val1"].Value.ToString() != ugrs.Cells["jf_stdmax"].Value.ToString()) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } } if (ugrs.Cells["jf_stdmin"].Value.ToString() != "" && ugrs.Cells["val2"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val2"].Value.ToString() + ugrs.Cells["jf_stdmin"].Value.ToString(), "")) { ugrs.Cells["val2"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["jf_stdmax"].Value.ToString() != "" && ugrs.Cells["val2"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val2"].Value.ToString() + ugrs.Cells["jf_stdmax"].Value.ToString(), "")) { ugrs.Cells["val2"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["jf_stdmin"].Value.ToString() != "" && ugrs.Cells["val3"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val3"].Value.ToString() + ugrs.Cells["jf_stdmin"].Value.ToString(), "")) { ugrs.Cells["val3"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["jf_stdmax"].Value.ToString() != "" && ugrs.Cells["val3"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val3"].Value.ToString() + ugrs.Cells["jf_stdmax"].Value.ToString(), "")) { ugrs.Cells["val3"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmin"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val1"].Value.ToString() + ugrs.Cells["nk_stdmin"].Value.ToString(), "")) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmax"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val1"].Value.ToString() + ugrs.Cells["nk_stdmax"].Value.ToString(), "")) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmin"].Value.ToString() != "" && ugrs.Cells["val2"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val2"].Value.ToString() + ugrs.Cells["nk_stdmin"].Value.ToString(), "")) { ugrs.Cells["val2"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmax"].Value.ToString() != "" && ugrs.Cells["val2"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val2"].Value.ToString() + ugrs.Cells["nk_stdmax"].Value.ToString(), "")) { ugrs.Cells["val2"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmin"].Value.ToString() != "" && ugrs.Cells["val3"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val3"].Value.ToString() + ugrs.Cells["nk_stdmin"].Value.ToString(), "")) { ugrs.Cells["val3"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmax"].Value.ToString() != "" && ugrs.Cells["val3"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val3"].Value.ToString() + ugrs.Cells["nk_stdmax"].Value.ToString(), "")) { ugrs.Cells["val3"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmin"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val1"].Value.ToString() + ugrs.Cells["kh_stdmin"].Value.ToString(), "")) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmax"].Value.ToString() != "" && ugrs.Cells["val1"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val1"].Value.ToString() + ugrs.Cells["kh_stdmax"].Value.ToString(), "")) { ugrs.Cells["val1"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmin"].Value.ToString() != "" && ugrs.Cells["val2"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val2"].Value.ToString() + ugrs.Cells["kh_stdmin"].Value.ToString(), "")) { ugrs.Cells["val2"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmax"].Value.ToString() != "" && ugrs.Cells["val2"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val2"].Value.ToString() + ugrs.Cells["kh_stdmax"].Value.ToString(), "")) { ugrs.Cells["val2"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmin"].Value.ToString() != "" && ugrs.Cells["val3"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val3"].Value.ToString() + ugrs.Cells["kh_stdmin"].Value.ToString(), "")) { ugrs.Cells["val3"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmax"].Value.ToString() != "" && ugrs.Cells["val3"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["val3"].Value.ToString() + ugrs.Cells["kh_stdmax"].Value.ToString(), "")) { ugrs.Cells["val3"].Appearance.ForeColor = Color.Red; } } else if (ugrs.Cells["judge_basis"].Value.ToString() == "平均值") { DataTable dt = new DataTable(); if (ugrs.Cells["jf_stdmin"].Value.ToString() != "" && ugrs.Cells["avg_val"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["avg_val"].Value.ToString() + ugrs.Cells["jf_stdmin"].Value.ToString(), "")) { ugrs.Cells["avg_val"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["jf_stdmax"].Value.ToString() != "" && ugrs.Cells["avg_val"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["avg_val"].Value.ToString() + ugrs.Cells["jf_stdmax"].Value.ToString(), "")) { ugrs.Cells["avg_val"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmin"].Value.ToString() != "" && ugrs.Cells["avg_val"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["avg_val"].Value.ToString() + ugrs.Cells["kh_stdmin"].Value.ToString(), "")) { ugrs.Cells["avg_val"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["kh_stdmax"].Value.ToString() != "" && ugrs.Cells["avg_val"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["avg_val"].Value.ToString() + ugrs.Cells["kh_stdmax"].Value.ToString(), "")) { ugrs.Cells["avg_val"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmin"].Value.ToString() != "" && ugrs.Cells["avg_val"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["avg_val"].Value.ToString() + ugrs.Cells["nk_stdmin"].Value.ToString(), "")) { ugrs.Cells["avg_val"].Appearance.ForeColor = Color.Red; } if (ugrs.Cells["nk_stdmax"].Value.ToString() != "" && ugrs.Cells["avg_val"].Value.ToString() != "" && !(bool)dt.Compute(ugrs.Cells["avg_val"].Value.ToString() + ugrs.Cells["nk_stdmax"].Value.ToString(), "")) { ugrs.Cells["avg_val"].Appearance.ForeColor = Color.Red; } } } } RefreshAndAutoSize(ultraGrid4); } catch (Exception ex) { //System.Diagnostics.Debug.WriteLine(ex.ToString()); //MessageBox.Show("系统出错,请联系管理人员", "警告"); } } private void QCM0302_Load(object sender, EventArgs e) { this.comboBox4.SelectedIndex = 1; ValueList vsflv = new ValueList(); CoreClientParam ccp = new CoreClientParam(); ccp = new CoreClientParam(); ccp.ServerName = "QCM.QCM03.QCM0305.QcmJudgeSurfaceServiceImpl"; ccp.MethodName = "findCretInstName"; this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal); for (int i = 0; i < ccp.SourceDataTable.Rows.Count; i++) { vsflv.ValueListItems.Add(ccp.SourceDataTable.Rows[i]["CERT_INST_CODE"].ToString(), ccp.SourceDataTable.Rows[i]["CERT_INST_NAME"].ToString()); } this.comboBox1.DataSource = vsflv.ValueListItems; this.comboBox2.SelectedIndex = 0; this.comboBox3.SelectedIndex = 0; this.ultraGrid1.DisplayLayout.Override.FilterUIType = FilterUIType.HeaderIcons; this.ultraGrid3.DisplayLayout.Override.FilterUIType = FilterUIType.HeaderIcons; this.dateTimePicker1.Value = System.DateTime.Now.AddDays(-7); this.DoQuery(); } private void ultraTabControl1_Click(object sender, EventArgs e) { if (this.ultraTabControl1.Tabs[1].Selected) //判定记录 { this.label8.Visible = false; this.comboBox2.Visible = false; this.comboBox4.SelectedIndex = 2; } if (this.ultraTabControl1.Tabs[0].Selected) //判定记录 { this.label8.Visible = true; this.comboBox2.Visible = true; this.comboBox4.SelectedIndex = 1; } } public static void RefreshAndAutoSize(UltraGrid ultraGrid) { try { ultraGrid.BeginUpdate(); foreach (UltraGridBand band in ultraGrid.DisplayLayout.Bands) { foreach (UltraGridColumn column in band.Columns) { if (column.Key != "defect_flag") { column.PerformAutoResize(PerformAutoSizeType.AllRowsInBand, band.ColHeadersVisible ? true : false); } } } } catch { } ultraGrid.EndUpdate(); } private void DoExport() { try { if (this.ultraGrid3.Rows.Count == 0) { MessageBox.Show("没有可以导出的数据", "提示"); return; } if (this.saveFileDialog1.ShowDialog(this) == DialogResult.OK) { string fName = this.saveFileDialog1.FileName; this.ultraGridExcelExporter1.Export(this.ultraGrid3, fName); Process.Start(fName); } } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); } } } }