You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
lj_plc/Actions/ChemicalWeighing/Mesnac.Action.ChemicalWeighing/LjRecipeData/SelectAction.cs

228 lines
8.6 KiB
C#

using System;
using System.Data;
using System.Linq;
using System.Windows.Forms;
using DevExpress.Data.Extensions;
using DevExpress.PivotGrid.Criteria;
using Mesnac.Action.Base;
using Mesnac.Action.ChemicalWeighing.LjPlanning.Db;
using Mesnac.Action.ChemicalWeighing.LjPlanning.Entity;
using Mesnac.Action.ChemicalWeighing.LjProportional;
namespace Mesnac.Action.ChemicalWeighing.LjRecipeData
{
public class SelectAction:ChemicalWeighingAction, IAction
{
private DbMCControl _materialGridControl = null; //物料列表控件
private RuntimeParameter _runtime;
public void Run(RuntimeParameter runtime)
{
base.RunIni(runtime); //必须调用
this._runtime = runtime;
DbMCControl materialGridControl = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local,
"Lj_Formula").FirstOrDefault(); //获取物料数据控件
this._materialGridControl = materialGridControl;
FileControl();
}
private void FileControl()
{
DataGridView clientGridView = this._materialGridControl.BaseControl as DataGridView;
var s= this._runtime.IsReturn;
//验证是否选中某物料
if (clientGridView.SelectedRows.Count != 1)
{
//MessageBox.Show("请选择要修改的数据", Mesnac.Basic.LanguageHelper.Caption,
// MessageBoxButtons.OK, MessageBoxIcon.Information);
//this._runtime.IsReturn = true;
return;
}
var dataGridViewRow = clientGridView.SelectedRows[0];
var id = Convert.ToInt32(dataGridViewRow.Cells["Id"].Value);
// Lj_Formula
var table= LjFormulaDb.GetDetailTable(id);
var dataGridDryer1Table = table.Clone();
var dataGridSilo1Table = table.Clone();
var dataGridSilo2Table = table.Clone();
var dataGridWater1Table = table.Clone();
var dataGridWater2Table = table.Clone();
var dataGridDryer1ActionTable = table.Clone();
var dataGridSiloH1Table = table.Clone();
var dataGridSiloH2Table = table.Clone();
var dataGridWeter1Table = table.Clone();
var dataGridWeter2Table = table.Clone();
foreach (DataRow item in table.Rows)
{
// var data = detail.Where(x => x.MachineType == "Dry" && x.FormulaType == 1 && x.Machine == "A").ToList();
string machineType = item["MachineType"].ToString();
string formulaType = item["FormulaType"].ToString();
string machine= item["Machine"].ToString();
//干混机1 称量配方
if(machineType=="Dry" && formulaType=="1" && machine == "A")
{
var dataRow = item;
dataGridDryer1Table.ImportRow(dataRow);
}
//湿混机1 称量配方
if (machineType == "Silo" && formulaType == "1" && machine == "A")
{
var dataRow = item;
dataGridSilo1Table.ImportRow(dataRow);
}
// 湿混机1 水 称量配方
if (machineType == "Silo_Water" && formulaType == "1" && machine == "A")
{
var dataRow = item;
dataGridWater1Table.ImportRow(dataRow);
}
//湿混机2 称量配方
if (machineType == "Silo" && formulaType == "1" && machine == "B")
{
var dataRow = item;
dataGridSilo2Table.ImportRow(dataRow);
}
// 湿混机2 水 称量配方
if (machineType == "Silo_Water" && formulaType == "1" && machine == "B")
{
var dataRow = item;
dataGridWater2Table.ImportRow(dataRow);
}
//混合配方
if (machineType == "Dry" && formulaType == "2" && machine == "A")
{
var dataRow = item;
dataGridDryer1ActionTable.ImportRow(dataRow);
}
//湿混机1
if (machineType == "Silo" && formulaType == "2" && machine == "A")
{
var dataRow = item;
dataGridSiloH1Table.ImportRow(dataRow);
}
//湿混机2
if (machineType == "Silo" && formulaType == "2" && machine == "B")
{
var dataRow = item;
dataGridSiloH2Table.ImportRow(dataRow);
}
if (machineType == "Weter" && formulaType == "2" && machine == "A")
{
var dataRow = item;
dataGridWeter1Table.ImportRow(dataRow);
}
if (machineType == "Weter" && formulaType == "2" && machine == "B")
{
var dataRow = item;
dataGridWeter2Table.ImportRow(dataRow);
}
}
DbMCControl dataGridDryer1 = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local,
"dataGridDryer1").FirstOrDefault(); //获取物料数据控件
dataGridDryer1.BaseControl.BindDataSource = null;
dataGridDryer1.BaseControl.BindDataSource = dataGridDryer1Table;
DbMCControl dataGridSilo1 = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local,
"dataGridSilo1").FirstOrDefault(); //获取物料数据控件
dataGridSilo1.BaseControl.BindDataSource = null;
dataGridSilo1.BaseControl.BindDataSource = dataGridSilo1Table;
DbMCControl dataGridWater1 = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local,
"dataGridWater1").FirstOrDefault(); //获取物料数据控件
dataGridWater1.BaseControl.BindDataSource = null;
dataGridWater1.BaseControl.BindDataSource = dataGridWater1Table;
DbMCControl dataGridSilo2 = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local,
"dataGridSilo2").FirstOrDefault(); //获取物料数据控件
dataGridSilo2.BaseControl.BindDataSource = null;
dataGridSilo2.BaseControl.BindDataSource = dataGridSilo2Table;
DbMCControl dataGridWater2 = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local,
"dataGridWater2").FirstOrDefault(); //获取物料数据控件
dataGridWater2.BaseControl.BindDataSource = null;
dataGridWater2.BaseControl.BindDataSource = dataGridWater2Table;
//混合配方
DbMCControl dataGridDryer1Action = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local,
"dataGridDryer1Action").FirstOrDefault(); //获取物料数据控件
dataGridDryer1Action.BaseControl.BindDataSource = null;
dataGridDryer1Action.BaseControl.BindDataSource = dataGridDryer1ActionTable;
DbMCControl dataGridSiloH1 = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local,
"dataGridSiloH1").FirstOrDefault(); //获取物料数据控件
dataGridSiloH1.BaseControl.BindDataSource = null;
dataGridSiloH1.BaseControl.BindDataSource = dataGridSiloH1Table;
DbMCControl dataGridSiloH2 = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local,
"dataGridSiloH2").FirstOrDefault(); //获取物料数据控件
dataGridSiloH2.BaseControl.BindDataSource = null;
dataGridSiloH2.BaseControl.BindDataSource = dataGridSiloH2Table;
DbMCControl dataGridWeter1 = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local,
"dataGridWeter1").FirstOrDefault(); //获取物料数据控件
dataGridWeter1.BaseControl.BindDataSource = null;
dataGridWeter1.BaseControl.BindDataSource = dataGridWeter1Table;
DbMCControl dataGridWeter2 = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local,
"dataGridWeter2").FirstOrDefault(); //获取物料数据控件
dataGridWeter2.BaseControl.BindDataSource = null;
dataGridWeter2.BaseControl.BindDataSource = dataGridWeter2Table;
this._runtime.BaseControl.MCEnabled = false;
this._runtime.BaseControl.MCEnabled = true;
}
}
}