using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data; using ICSharpCode.Core; using Mesnac.Controls.Base; using Mesnac.Action.Base; using Mesnac.Codd.Session; using Mesnac.Action.ChemicalWeighing.Entity; using DevExpress.Office.Utils; namespace Mesnac.Action.ChemicalWeighing.Station { /// /// 生产管理-修改计划数业务 /// public class SelectStation : ChemicalWeighingAction, IAction { #region 字段定义 private RuntimeParameter _runtime; private DbMCControl _stationGridControl = null; private DbMCControl _subGridControl = null; List subList = null; #endregion #region 业务入口 public void Run(RuntimeParameter runtime) { base.RunIni(runtime); //必须要调用的 this._runtime = runtime; #region 获取界面recipe控件 DbMCControl gridControl = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local, "xl_station").FirstOrDefault(); if (gridControl == null || !(gridControl.BaseControl is DataGridView)) { ICSharpCode.Core.LoggingService.Error("{工位管理—选择工位}缺少配方管理控件..."); return; } this._stationGridControl = gridControl; #endregion this.DoWork(); } #endregion #region 方法定义 protected void DoWork() { #region 1 判断是否选择了一条工位信息 DataGridView stationGridView = this._stationGridControl.BaseControl as DataGridView; if (stationGridView.SelectedRows.Count == 1) { #region 变量定义 string selectID = null; #endregion #region 2.1 获取界面控件 DbMCControl subGridControl = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local, "xl_station_sub").FirstOrDefault(); if (subGridControl == null || !(subGridControl.BaseControl is DataGridView)) { ICSharpCode.Core.LoggingService.Error("{工位管理—选择工位}缺少工位显示控件..."); return; } this._subGridControl = subGridControl; DataGridView subGridView = this._subGridControl.BaseControl as DataGridView; #endregion #region 获取工位信息List selectID = stationGridView.SelectedRows[0].Cells["ID"].Value as string; #endregion subList = StationHelper.GetStationSubList(selectID); DataTable table = DataListShow(); lock (String.Empty) { //本地计划 if (this._subGridControl != null && table != null) { this._subGridControl.BaseControl.BindDataSource = null; this._subGridControl.BaseControl.BindDataSource = table; } } } else { return; } #endregion } #region DataTable数据整理显示 private DataTable DataListShow() { DataTable dataTable = null; if (subList != null && subList.Count > 0) { dataTable = new DataTable(); DataColumn ID = new DataColumn("ID", Type.GetType("System.String")); DataColumn MainId = new DataColumn("MainId", Type.GetType("System.String")); DataColumn StationSubName = new DataColumn("StationSubName", Type.GetType("System.String")); DataColumn Station_Weight_Medium = new DataColumn("Station_Weight_Medium", Type.GetType("System.String")); DataColumn Station_Weight_Low = new DataColumn("Station_Weight_Low", Type.GetType("System.String")); DataColumn Station_Weight_Advance = new DataColumn("Station_Weight_Advance", Type.GetType("System.String")); DataColumn Station_Speed_Hight = new DataColumn("Station_Speed_Hight", Type.GetType("System.String")); DataColumn Station_Speed_Medium = new DataColumn("Station_Speed_Medium", Type.GetType("System.String")); DataColumn Station_Speed_Low = new DataColumn("Station_Speed_Low", Type.GetType("System.String")); //DataColumn Station_CreateDateTime = new DataColumn("reateDateTime", Type.GetType("System.String")); dataTable.Columns.Add(ID); dataTable.Columns.Add(MainId); dataTable.Columns.Add(StationSubName); dataTable.Columns.Add(Station_Weight_Medium); dataTable.Columns.Add(Station_Weight_Low); dataTable.Columns.Add(Station_Weight_Advance); dataTable.Columns.Add(Station_Speed_Hight); dataTable.Columns.Add(Station_Speed_Medium); dataTable.Columns.Add(Station_Speed_Low); //dataTable.Columns.Add(Station_CreateDateTime); for (int i = 0; i < subList.Count; i++) { DataRow dataRow = dataTable.NewRow(); dataRow["ID"] = subList[i].ID.ToString(); dataRow["MainId"] = subList[i].MainId.ToString(); dataRow["StationSubName"] = subList[i].StationSubName.ToString(); dataRow["Station_Weight_Medium"] = subList[i].Station_Weight_Medium.ToString(); dataRow["Station_Weight_Low"] = subList[i].Station_Weight_Low.ToString(); dataRow["Station_Weight_Advance"] = subList[i].Station_Weight_Advance.ToString(); dataRow["Station_Speed_Hight"] = subList[i].Station_Speed_Hight.ToString(); dataRow["Station_Speed_Medium"] = subList[i].Station_Speed_Medium.ToString(); dataRow["Station_Speed_Low"] = subList[i].Station_Speed_Low.ToString(); //dataRow["CreateDateTime"] = subList[i].CreateDateTime.ToString(); dataTable.Rows.Add(dataRow); } } return dataTable; } #endregion #endregion } }