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 System.Collections; using CoreFS.CA06; namespace Core.LZMes.Client.UIM { public partial class UIM010040 : FrmBase { //钢卷号 private string COIL_NO = ""; internal string before_yard = "1-01A-01"; public UIM010040() { InitializeComponent(); } public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "Query": this.DoQuery(); break; case "Add": //this.DoAdd(); break; case "Update": //this.DoUpdate(); break; case "Delete": //this.DoDelete(); break; case "Save": this.DoSave(); break; case "Exit": this.Close(); break; } } private void comboBox2_SelectedIndexChanged(object sender, EventArgs e) { } private void label2_Click(object sender, EventArgs e) { } /// /// 查询钢卷在系统中的位置 /// private void DoQuery() { try { this.dataSet1.Tables[0].Clear(); string coilNo = "R" + this.textBox1.Text.Trim() /*+ "-" */+ this.textBox2.Text.Trim() + "A" + this.textBox3.Text.Trim(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIM.UIM010040"; ccp.MethodName = "queryCoilStatus"; ccp.ServerParams = new object[] { coilNo }; ccp.SourceDataTable = this.dataSet1.Tables[0]; this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal); this.dataSet1.Tables[1].Clear(); CoreClientParam ccp1 = new CoreClientParam(); ccp1.ServerName = "UIM.UIM010040"; ccp1.MethodName = "queryCoilOtherInfo"; ccp1.ServerParams = new object[] { coilNo }; ccp1.SourceDataTable = this.dataSet1.Tables[1]; this.ExecuteQueryToDataTable(ccp1, CoreInvokeType.Internal); COIL_NO = coilNo; foreach (Infragistics.Win.UltraWinGrid.UltraGridRow ugr in ultraGrid1.Rows) { if (ugr.Cells["CUR_PROG_CD"].Value.ToString().Equals("酸轧指示待机") || ugr.Cells["CUR_PROG_CD"].Value.ToString().Equals("基料卷充当待机")) { ugr.Appearance.BackColor = Color.LightGreen; } else { ugr.Appearance.BackColor = Color.White; } if (ugr.Cells["TOT_DEC_GRD"].Value.ToString().Equals("不合格")) { ugr.Cells["TOT_DEC_GRD"].Appearance.BackColor = Color.Red; } //添加生产判定信息显示 if (ugr.Cells["TECH_DCS_CD"].Value.ToString().Equals("不合格")) { ugr.Cells["TECH_DCS_CD"].Appearance.BackColor = Color.Red; ugr.Cells["TECH_DCS_DESC"].Appearance.BackColor = Color.Red; } //添加了生产判定信息,这个里的凸度楔形报红就取消了 //double xiexin = System.Math.Abs(double.Parse(ugr.Cells["HC_XIE_XIN"].Value.ToString())); //double tudu = System.Math.Abs(double.Parse(ugr.Cells["HC_TU_DU"].Value.ToString())); //if (xiexin>tudu) //{ // ugr.Cells["HC_XIE_XIN"].Appearance.BackColor = Color.Red; // ugr.Cells["HC_TU_DU"].Appearance.BackColor = Color.Red; //} } //添加了生产判定信息,这个里的温度报红就取消了 //foreach (Infragistics.Win.UltraWinGrid.UltraGridRow ugr in ultraGrid2.Rows) //{ // double wendu = double.Parse(ugr.Cells["DC_TEMP_AVG"].Value.ToString()); // if (wendu > 760) // { // ugr.Cells["DC_TEMP_AVG"].Appearance.BackColor = Color.Red; // //ugr.Cells["HC_TU_DU"].Appearance.BackColor = Color.Red; // } //} foreach (Infragistics.Win.UltraWinGrid.UltraGridRow ugr in ultraGrid3.Rows) { foreach (Infragistics.Win.UltraWinGrid.UltraGridCell ugc in ugr.Cells) { if (ugc.Text.Trim().Equals("不合格")) { ugc.Appearance.BackColor = Color.Red; } else { ugc.Appearance.BackColor = Color.White; } } } //CoreClientParam ccp = new CoreClientParam(); //ccp.ServerName = "UIM.UIM010040"; //ccp.MethodName = "addYard"; //this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); } catch (Exception EX) { MessageBox.Show(EX.ToString()); } } private void FDoQuery() { try { this.dataSet1.Tables[0].Clear(); string coilNo = "L" + this.textBox6.Text.Trim() + "-" + this.textBox5.Text.Trim() + "-" + this.textBox4.Text.Trim(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIM.UIM010040"; ccp.MethodName = "queryfanxiu"; ccp.ServerParams = new object[] { coilNo }; ccp.SourceDataTable = this.dataSet1.Tables[0]; this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal); this.dataSet1.Tables[1].Clear(); CoreClientParam ccp1 = new CoreClientParam(); ccp1.ServerName = "UIM.UIM010040"; ccp1.MethodName = "queryCoilOtherInfo"; ccp1.ServerParams = new object[] { coilNo }; ccp1.SourceDataTable = this.dataSet1.Tables[1]; this.ExecuteQueryToDataTable(ccp1, CoreInvokeType.Internal); COIL_NO = coilNo; foreach (Infragistics.Win.UltraWinGrid.UltraGridRow ugr in ultraGrid1.Rows) { if (ugr.Cells["CUR_PROG_CD"].Value.ToString().Equals("酸轧指示待机") || ugr.Cells["CUR_PROG_CD"].Value.ToString().Equals("基料卷充当待机")) { ugr.Appearance.BackColor = Color.LightGreen; } else { ugr.Appearance.BackColor = Color.White; } if (ugr.Cells["TOT_DEC_GRD"].Value.ToString().Equals("不合格")) { ugr.Cells["TOT_DEC_GRD"].Appearance.BackColor = Color.Red; } //添加生产判定信息显示 if (ugr.Cells["TECH_DCS_CD"].Value.ToString().Equals("不合格")) { ugr.Cells["TECH_DCS_CD"].Appearance.BackColor = Color.Red; ugr.Cells["TECH_DCS_DESC"].Appearance.BackColor = Color.Red; } } foreach (Infragistics.Win.UltraWinGrid.UltraGridRow ugr in ultraGrid3.Rows) { foreach (Infragistics.Win.UltraWinGrid.UltraGridCell ugc in ugr.Cells) { if (ugc.Text.Trim().Equals("不合格")) { ugc.Appearance.BackColor = Color.Red; } else { ugc.Appearance.BackColor = Color.White; } } } } catch (Exception EX) { MessageBox.Show(EX.ToString()); } } /// /// 原料库钢卷入库 /// private void DoSave() { try { if (this.dataTable1.Rows.Count < 1) { MessageBox.Show("没有查询到相应的钢卷信息!"); return; } DataRow dr = dataTable1.Rows[0]; if (dr["CUR_PROG_CD"].ToString().Equals("酸轧轧制待机") || dr["CUR_PROG_CD"].ToString().Equals("酸轧卷取待机")) { MessageBox.Show("已经下发轧制计划,不能修改入库数据!"); return; } string curProcCd = "PRC"; string ordFL = dr["ORD_FL"].ToString(); if (ordFL.Equals("1")) { curProcCd = "PCA"; } string entryShift = this.UserInfo.GetUserOrder();//入库班次 string entryGroup = this.UserInfo.GetUserGroup();//入库班组 string entryDtime = this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMddHHmmss");//入库时间 string reg_id = this.UserInfo.GetUserID();//操作人 string C_CUR_LOAD_LOC = dr["CUR_LOAD_LOC"].ToString(); //DataTable dt = new DataTable(); //CoreClientParam ccp2 = new CoreClientParam(); //ccp2.ServerName = "UIM.UIM010040"; //ccp2.MethodName = "DoSelect"; //ccp2.ServerParams = new object[] { C_CUR_LOAD_LOC, COIL_NO }; //ccp2.SourceDataTable = dt; //this.ExecuteQueryToDataTable(ccp2, CoreInvokeType.Internal); if (C_CUR_LOAD_LOC=="") { if (dr["CUR_PROG_CD"].ToString().Equals("基料卷入库待机") || dr["CUR_PROG_CD"].ToString().Equals("基料卷充当待机")) { UIM010041 dlg = new UIM010041(this, 1); if (DialogResult.OK == dlg.ShowDialog(this)) { string yardAddr = dlg.YARD_ADDR.ToUpper();//垛位 string[] tmpArray = yardAddr.Split('-'); try { if (tmpArray[1].Length < 3) { tmpArray[1] = "0" + tmpArray[1]; } if (tmpArray[2].Length < 2) { tmpArray[2] = "0" + tmpArray[2]; } if (Convert.ToInt32(tmpArray[0]) != 1) { if (Convert.ToInt32(tmpArray[0]) != 6) { MessageBox.Show("垛位输入有误,请重新输入!"); return; } } //if (tmpArray[1] > "17A") //{ // MessageBox.Show("垛位输入有误,请重新输入!"); // return; //} if (Convert.ToInt32(tmpArray[2]) > 69) { MessageBox.Show("垛位行数不能超过69,请重新输入!"); return; } if (Convert.ToInt32(tmpArray[1].Substring(0, 2)) > 50)//20171226列数扩大 原27 { if (Convert.ToInt32(tmpArray[1].Substring(0, 2)) != 81) { MessageBox.Show("垛位列数不能超过50,请重新输入!"); return; } } if ((tmpArray[1].Substring(2, 1)) != "A" && (tmpArray[1].Substring(2, 1)) != "B") { MessageBox.Show("垛位格式不对,请重新输入!"); return; } yardAddr = tmpArray[0] + "-" + tmpArray[1] + "-" + tmpArray[2]; } catch (Exception ex) { MessageBox.Show("垛位信息错误!"); return; } DataTable dt = new DataTable(); CoreClientParam ccpx = new CoreClientParam(); ccpx.ServerName = "UIM.UIM010040"; ccpx.MethodName = "SelectCoilYard"; ccpx.ServerParams = new object[] { yardAddr }; ccpx.SourceDataTable = dt; this.ExecuteQueryToDataTable(ccpx, CoreInvokeType.Internal); if (yardAddr == "1-81A-01" || yardAddr == "1-81A-1")//20160318新增一个虚拟垛位用于热轧移送by:wl dt.Clear(); if (dt.Rows.Count <= 0) { CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIM.UIM010040"; ccp.MethodName = "saveCoilYard"; ccp.ServerParams = new object[] { COIL_NO, yardAddr, entryShift, entryGroup, entryDtime, reg_id, curProcCd }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != 0) { MessageBox.Show(ccp.ReturnInfo); return; } } else { MessageBox.Show("该位置上已经有了钢卷,请重新输入!"); return; } } else { return; } } } ultraGrid1.UpdateData(); ultraGrid2.UpdateData(); string thk = ultraGrid1.ActiveRow.Cells["COIL_THK"].Value.ToString().Trim(); string wth = ultraGrid1.ActiveRow.Cells["COIL_WTH"].Value.ToString().Trim(); string len = ultraGrid1.ActiveRow.Cells["COIL_LEN"].Value.ToString().Trim(); string actWgt = ultraGrid1.ActiveRow.Cells["ACT_WGT"].Value.ToString().Trim(); string calWgt = ultraGrid1.ActiveRow.Cells["CAL_WGT"].Value.ToString().Trim(); string india = ultraGrid1.ActiveRow.Cells["COIL_INDIA"].Value.ToString().Trim(); string outdia = ultraGrid1.ActiveRow.Cells["COIL_OUTDIA"].Value.ToString().Trim(); string crkCd1 = ultraGrid2.ActiveRow.Cells["CRK_CD1"].Value.ToString().Trim(); string crkCd2 = ultraGrid2.ActiveRow.Cells["CRK_CD2"].Value.ToString().Trim(); string crkCd3 = ultraGrid2.ActiveRow.Cells["CRK_CD3"].Value.ToString().Trim(); string crkCd4 = ultraGrid2.ActiveRow.Cells["CRK_CD4"].Value.ToString().Trim(); string crkCd5 = ultraGrid2.ActiveRow.Cells["CRK_CD5"].Value.ToString().Trim(); string fmAvg = ultraGrid2.ActiveRow.Cells["FM_EXT_STRIP_TEMP_AVG"].Value.ToString().Trim(); string cdAvg = ultraGrid2.ActiveRow.Cells["DC_TEMP_AVG"].Value.ToString().Trim(); string cExtShape = ultraGrid2.ActiveRow.Cells["C_EXTSHAPE_DEC_GRD"].Value.ToString().Trim(); string crkCDDesc = ultraGrid2.ActiveRow.Cells["CRK_CD_DESC"].Value.ToString().Trim(); CoreClientParam ccp1 = new CoreClientParam(); ccp1.ServerName = "UIM.UIM010040"; ccp1.MethodName = "updateCoilInfo"; ccp1.ServerParams = new object[] { COIL_NO, thk, wth, len, actWgt, calWgt, india, outdia, crkCd1, crkCd2, crkCd3, crkCd4, crkCd5, fmAvg, cdAvg, reg_id, cExtShape, crkCDDesc }; ccp1 = this.ExecuteNonQuery(ccp1, CoreInvokeType.Internal); this.SaveYtg(); this.DoQuery(); } catch (Exception ex) { MessageBox.Show(ex.Message); } } private void SaveYtg() { try { CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIM.UIM010040"; ccp.MethodName = "SaveYtg"; ccp.ServerParams = new object[] { COIL_NO }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); } catch (Exception ex) { MessageBox.Show(ex.Message); } } private void UIM010040_Load(object sender, EventArgs e) { this.dataSet4.Tables[0].Clear(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIM.UIM010040"; ccp.MethodName = "queryDefectInfo"; ccp.SourceDataTable = this.dataSet4.Tables[0]; this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal); DataRowCollection drs = dataTable4.Rows; Infragistics.Win.ValueListItem[] valueListItems = new Infragistics.Win.ValueListItem[drs.Count]; for (int i = 0; i < drs.Count; i++) { Infragistics.Win.ValueListItem item = new Infragistics.Win.ValueListItem(); item.DataValue = drs[i]["SM_CD"].ToString().Clone().ToString(); item.DisplayText = drs[i]["SM_CFNM"].ToString().Clone().ToString(); valueListItems[i] = item; } this.ultraComboEditor1.Items.AddRange(valueListItems); Infragistics.Win.ValueListItem[] valueListItems2 = new Infragistics.Win.ValueListItem[2]; Infragistics.Win.ValueListItem item1 = new Infragistics.Win.ValueListItem(); item1.DataValue = "1"; item1.DisplayText = "合格"; valueListItems2[0] = item1; Infragistics.Win.ValueListItem item2 = new Infragistics.Win.ValueListItem(); item2.DataValue = "2"; item2.DisplayText = "不合格"; valueListItems2[1] = item2; this.ultraComboEditor2.Items.AddRange(valueListItems2); } /// /// 查询区域中一行的垛位信息 /// /// /// /// internal void queryYardRows(int areaType,int areaNo, string yardCol) { this.dataSet3.Tables[0].Clear(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIM.UIM010070"; ccp.MethodName = "queryYardRows"; ccp.ServerParams = new object[] { areaType,areaNo, yardCol }; ccp.SourceDataTable = this.dataSet3.Tables[0]; this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal); } /// /// 查询区域中一行的垛位中钢卷信息 /// /// /// /// internal void queryYardRowCoils(int areaType,int areaNo, string yardCol) { this.dataSet2.Tables[0].Clear(); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIM.UIM010070"; ccp.MethodName = "queryYardRowCoils"; ccp.ServerParams = new object[] { areaType,areaNo, yardCol }; ccp.SourceDataTable = this.dataSet2.Tables[0]; this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal); } internal int queryMinYardRow(int areaType, int areaNo, string yardCol) { int minRow = 1; CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIM.UIM010070"; ccp.MethodName = "queryMinYardRow"; ccp.ServerParams = new object[] { areaType, areaNo, yardCol }; ccp = this.ExecuteQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnObject != null) { minRow = int.Parse(ccp.ReturnObject.ToString()); } return minRow; } /// /// 查询库存区域 /// /// /// internal ArrayList queryYardAreas(int areaType) { CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIM.UIM010040"; ccp.MethodName = "queryYardAreas"; ccp.ServerParams = new object[] { areaType }; ccp = this.ExecuteQuery(ccp, CoreInvokeType.Internal); ArrayList retList = (ArrayList)ccp.ReturnObject; return retList; } /// /// 查询库存区分 /// /// /// internal ArrayList queryYardColsByArea(int areaNo) { CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "UIM.UIM010040"; ccp.MethodName = "queryYardColsByArea"; ccp.ServerParams = new object[] { areaNo }; ccp = this.ExecuteQuery(ccp, CoreInvokeType.Internal); ArrayList retList = (ArrayList)ccp.ReturnObject; return retList; } private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == (char)Keys.Enter) { textBox2.Focus(); } if ((int)e.KeyChar == 3) { Clipboard.SetDataObject("R"+textBox1.Text.Trim()+"-"+textBox2.Text.Trim()+"A"+textBox3.Text.Trim(), true); } if ((int)e.KeyChar == 22) { // GetDataObject检索当前剪贴板上的数据 IDataObject iData = Clipboard.GetDataObject(); // 将数据与指定的格式进行匹配,返回bool if (iData.GetDataPresent(DataFormats.Text)) { // GetData检索数据并指定一个格式 string text = (string)iData.GetData(DataFormats.Text); if (text.Length >= 13) { textBox1.Text = text.Substring(1, 1); textBox2.Text = text.Substring(3, 6); textBox3.Text = text.Substring(10, 3); } } } e.Handled = (e.KeyChar == 3 || e.KeyChar == 22); } private void textBox2_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == (char)Keys.Enter) { textBox3.Focus(); } } private void textBox3_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == (char)Keys.Enter) { this.DoQuery(); } } private void ultraGrid2_AfterRowActivate(object sender, EventArgs e) { ultraGrid2.ActiveRow.Cells["CRK_CD1"].ValueList = ultraComboEditor1.ValueList ; ultraGrid2.ActiveRow.Cells["CRK_CD2"].ValueList = ultraComboEditor1.ValueList; ultraGrid2.ActiveRow.Cells["CRK_CD3"].ValueList = ultraComboEditor1.ValueList; ultraGrid2.ActiveRow.Cells["CRK_CD4"].ValueList = ultraComboEditor1.ValueList; ultraGrid2.ActiveRow.Cells["CRK_CD5"].ValueList = ultraComboEditor1.ValueList; ultraGrid2.ActiveRow.Cells["C_EXTSHAPE_DEC_GRD"].ValueList = ultraComboEditor2.ValueList; } private void button2_Click(object sender, EventArgs e) { this.FDoQuery(); } } }