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.UltraWinGrid; using System.Collections; namespace Core.LZMes.Client.UIB { public partial class CUIB030240 : FrmBase { public string ORG_SMP_NO = ""; public string ORG_SMP_NO_LOT = ""; public string QLTY_CD_GP = ""; //被替换项目代码 public string QLTY_CD_GPN = ""; //被替换项目名称 public CUIB030240() { InitializeComponent(); } public void DoQuery() { } public SortedList al = null;//存入选择的替换项目 private void button1_Click(object sender, EventArgs e) { try { if (MessageBox.Show("确定替换?", "提示", MessageBoxButtons.OKCancel) == DialogResult.Cancel) return; al = new SortedList(); string QLTYCD = ""; string QLTY_VAL = ""; string QLTY_VAL_TH = ""; foreach (UltraGridRow ugr in this.ultraGrid4.Rows) { if (ugr.Cells["CHK"].Text.ToLower() == "true") { QLTYCD = ugr.Cells["QLTY_CD"].Text; QLTY_VAL = ugr.Cells["QLTY_VAL_WK"].Text; QLTY_VAL_TH = ugr.Cells["ZH_VALUE"].Text; if (QLTY_VAL_TH != "") QLTY_VAL = QLTY_VAL_TH; if (QLTYCD != "" && QLTY_VAL != "") { al.Add(QLTYCD, QLTY_VAL); } } } if (al.Count == 0) { System.Windows.Forms.MessageBox.Show("请选择材质项目,并设定值!"); return; } } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); } this.DialogResult = DialogResult.OK; } private void button2_Click(object sender, EventArgs e) { this.Close(); } private void CUIB030240_Load(object sender, EventArgs e) { try { if (QLTY_CD_GP.IndexOf("EL") > -1 && QLTY_CD_GPN.IndexOf("50") > -1) { this.button3_50.Visible = true; } if (QLTY_CD_GP.IndexOf("EL") > -1 && QLTY_CD_GPN.IndexOf("80") > -1) { this.button4_80.Visible = true; } //钢卷原始检验信息 ArrayList al = new ArrayList(); al.Add("UIB030230_04.SELECT"); al.Add(ORG_SMP_NO); al.Add(ORG_SMP_NO_LOT); this.dataSet3.Tables[0].Clear(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIB.COM.ComDBQuery"; ccp.MethodName = "doSimpleQuery"; ccp.ServerParams = new object[] { al }; ccp.SourceDataTable = this.dataSet3.Tables[0]; this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal); int isCheck = 0; foreach (UltraGridRow ugr in this.ultraGrid4.Rows) { string QLTYCD = ugr.Cells["QLTY_CD"].Text; //找到与替换项目相同的材质默认勾选 if (QLTY_CD_GP.Equals(QLTYCD)) { ugr.Cells["CHK"].Value = "True"; isCheck = 1; break; } } if (isCheck == 0) //若不存在相同的项目则默认勾选类似的 { foreach (UltraGridRow ugr in this.ultraGrid4.Rows) { string QLTYCD = ugr.Cells["QLTY_CD"].Text; //找到与替换项目类似的伸长率默认勾选,否则不勾选 if (QLTY_CD_GP.Substring(0, 2).Equals(QLTYCD.Substring(0, 2)) && isCheck == 0 && (QLTYCD.IndexOf("EL") > -1 || QLTYCD.IndexOf("YS") > -1 || QLTYCD.IndexOf("TE") > -1 || QLTYCD.IndexOf("YR") > -1 || QLTYCD.IndexOf("RP") > -1)) { ugr.Cells["CHK"].Value = "True"; isCheck = 1; break; } } } } catch (Exception ex) { } } private void ultraGrid4_CellChange(object sender, CellEventArgs e) { try { if (this.ultraGrid4.ActiveRow == null) return; string clickColumnID = this.ultraGrid4.ActiveCell.Column.Key; if (clickColumnID.Equals("CHK")) { string QLTYCD = this.ultraGrid4.ActiveRow.Cells["QLTY_CD"].Value.ToString(); string CHK_VAL = this.ultraGrid4.ActiveRow.Cells["CHK"].Text.ToString(); //找到与替换项目类似的材质默认勾选 if (!QLTY_CD_GP.Substring(0, 2).Equals(QLTYCD.Substring(0, 2))) { this.ultraGrid4.ActiveRow.Cells["CHK"].Value = "False"; System.Windows.Forms.MessageBox.Show("请选择相同材质项目!"); return; } foreach (UltraGridRow ugr in this.ultraGrid4.Rows) { if (!QLTYCD.Equals(ugr.Cells["QLTY_CD"].Text.ToString())) { if (CHK_VAL == "True") { ugr.Cells["CHK"].Value = "False"; } } } } //只允许编辑伸长率 if (clickColumnID.Equals("ZH_VALUE")) { string QLTYCD = this.ultraGrid4.ActiveRow.Cells["QLTY_CD"].Value.ToString(); if (QLTYCD.IndexOf("EL") > -1 && QLTY_CD_GP.IndexOf("EL") > -1 && !QLTY_CD_GP.Equals(QLTYCD)) { } else { this.ultraGrid4.ActiveRow.Cells["ZH_VALUE"].Value = ""; System.Windows.Forms.MessageBox.Show("只能修改伸长率不相同的值!"); } } } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); } } private void button4_80_Click(object sender, EventArgs e) { try { foreach (UltraGridRow ugr in this.ultraGrid4.Rows) { string QLTYCD = ugr.Cells["QLTY_CD"].Text; string QLTYCD_NM = ugr.Cells["QLTY_CD_CFNM"].Text; string QLTY_VAL = ugr.Cells["QLTY_VAL_WK"].Text; if (QLTY_VAL != "") { double val_d = Double.Parse(QLTY_VAL); //伸长率值由A50转换成A80 if (QLTYCD.IndexOf("EL") > -1 && QLTY_CD_GP.IndexOf("EL") > -1 && QLTYCD_NM.IndexOf("50") > -1 && QLTY_CD_GPN.IndexOf("80") > -1) { ugr.Cells["ZH_VALUE"].Value = Math.Round(val_d * 0.829, 3).ToString(); //ugr.Cells["ZH_VALUE"].Activation = Activation.AllowEdit; } } } } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); } } private void button3_50_Click(object sender, EventArgs e) { try { foreach (UltraGridRow ugr in this.ultraGrid4.Rows) { string QLTYCD = ugr.Cells["QLTY_CD"].Text; string QLTYCD_NM = ugr.Cells["QLTY_CD_CFNM"].Text; string QLTY_VAL = ugr.Cells["QLTY_VAL_WK"].Text; if (QLTY_VAL != "") { double val_d = Double.Parse(QLTY_VAL); if (QLTYCD.IndexOf("EL") > -1 && QLTY_CD_GP.IndexOf("EL") > -1 && QLTYCD_NM.IndexOf("80") > -1 && QLTY_CD_GPN.IndexOf("50") > -1) { ugr.Cells["ZH_VALUE"].Value = Math.Round(val_d * 1.207, 3).ToString(); } } } } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); } } private void ultraGrid4_ClickCell(object sender, ClickCellEventArgs e) { } } }