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/LjPlanning/PauseAction.cs

85 lines
2.8 KiB
C#

1 year ago
using System;
using System.Linq;
using System.Windows.Forms;
using Mesnac.Action.Base;
1 year ago
using Mesnac.Action.ChemicalWeighing.LjPlanning.Db;
1 year ago
namespace Mesnac.Action.ChemicalWeighing.LjPlanning
{
public class PauseAction:ChemicalWeighingAction, IAction
{
private DbMCControl _materialGridControl = null; //物料列表控件
private RuntimeParameter _runtime;
1 year ago
1 year ago
public static event EventHandler OnPause;
public void Run(RuntimeParameter runtime)
{
base.RunIni(runtime); //必须调用
this._runtime = runtime;
DbMCControl materialGridControl =
this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local, "lj_planning")
.FirstOrDefault(); //获取物料数据控件
this._materialGridControl = materialGridControl;
DataGridView clientGridView = this._materialGridControl.BaseControl as DataGridView;
//验证是否选中某物料
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);
1 year ago
//Pause
var i = BasePlcHelper.Instance.RecipePause.LastValue.ToInt();
1 year ago
string message = "是否暂停系统";
var formul = LjFormulaDb.GetById(id);
var plc = BasePlcHelper.Instance;
1 year ago
if (MessageBox.Show(message, "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Information) ==
DialogResult.OK)
{
1 year ago
var unit= formul.Unit;
switch (unit)
{
case 1:
plc.PlcWriteByDataKey(plc.Plan0_Pause, new object[] { 1 });
break;
case 2:
plc.PlcWriteByDataKey(plc.Plan1_Pause, new object[] { 1 });
break;
case 3:
plc.PlcWriteByDataKey(plc.Plan2_Pause, new object[] { 1 });
break;
case 4:
plc.PlcWriteByDataKey(plc.Plan3_Pause, new object[] { 1 });
break;
default:
break;
}
}
1 year ago
if (OnPause != null)
{
1 year ago
OnPause(this._runtime.BaseControl.MCRoot, System.EventArgs.Empty);
}
1 year ago
}
}
}