AHTC/RGD/RGD.WCS/FrmModifyMonitor.cs
2025-05-19 09:22:33 +08:00

535 lines
28 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using RGD.Common;
using RGD.DataService;
using RGD.DBUtility;
using RGD.MdsAPI.WMS;
using RGD.OPCClient;
using System;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Windows.Forms;
namespace RGD.WCS
{
public partial class FrmModifyMonitor : Form
{
private string _monstatus = " F_Status<>-1 ";
private static FrmModifyMonitor _formInstance;
public static FrmModifyMonitor FormInstance
{
get
{
if (_formInstance == null)
{
_formInstance = new FrmModifyMonitor();
}
return _formInstance;
}
set { _formInstance = value; }
}
public FrmModifyMonitor()
{
InitializeComponent();
_formInstance = this;
}
private CGetState gs = new CGetState();
private CCommonFunction ccf = new CCommonFunction();
private void FrmModifyMonitor_Load(object sender, EventArgs e)
{
rbmonRun_CheckedChanged(sender, e);
}
/// <summary>
/// 运行队列
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void rbmonRun_CheckedChanged(object sender, EventArgs e)
{
if (rbmonRun.Checked == true)
{
_monstatus = " (F_Status>=1) ";
}
TSMMonitorRefresh_Click(sender, e);
}
/// <summary>
/// 全部队列
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void rbmonAll_CheckedChanged(object sender, EventArgs e)
{
RadioButton rb = (RadioButton)sender;
if (rb.Checked == true)
{
_monstatus = " F_Status<>-1 ";
}
TSMMonitorRefresh_Click(sender, e);
}
/// <summary>
/// 等待队列
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void rbmonWait_CheckedChanged(object sender, EventArgs e)
{
RadioButton rb = (RadioButton)sender;
if (rb.Checked == true)
{
_monstatus = " F_Status=0 ";
}
TSMMonitorRefresh_Click(sender, e);
}
//刷新列表
private void TSMMonitorRefresh_Click(object sender, EventArgs e)
{
CStaticClass.RealRefresh = true;
this.dgvMonitor.DataSource = DbHelperSQL.Query("select * from V_Monitor_Task where " + _monstatus + " order by 设备指令索引 asc ").Tables[0].DefaultView;
}
/// <summary>
/// 开始查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
if (this.textBox1.Text.Trim().Length == 0) return;
int index = 0;
bool isint = int.TryParse(this.textBox1.Text.Trim(), out index);
if (this.comboBox1.Text == "表箱条码")
{
_monstatus = " 表箱条码 like'%" + this.textBox1.Text.Trim() + "%' ";
}
if (this.comboBox1.Text == "设备指令索引")
{
if (isint == false)
{
//MessageBox.Show("请输入数字!", "误操作提示:", MessageBoxButtons.OK, MessageBoxIcon.Error);
textBox1.Text = string.Empty;
return;
}
_monstatus = " 设备指令索引='" + this.textBox1.Text.Trim() + "' ";
}
if (this.comboBox1.Text == "调度任务索引")
{
if (isint == false)
{
//MessageBox.Show("请输入数字!", "误操作提示:", MessageBoxButtons.OK, MessageBoxIcon.Error);
textBox1.Text = string.Empty;
return;
}
_monstatus = " 调度任务索引='" + this.textBox1.Text.Trim() + "' ";
}
TSMMonitorRefresh_Click(sender, e);
}
/// <summary>
/// 显示全部
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button2_Click(object sender, EventArgs e)
{
_monstatus = " F_Status<>-1 ";
TSMMonitorRefresh_Click(sender, e);
}
private void dgvMonitor_DataSourceChanged(object sender, EventArgs e)
{
dgvMonitor.Columns["F_Status"].Visible = false;
}
/// <summary>
/// 指令完成
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void TSMmonitorOK_Click(object sender, EventArgs e)
{
char[] cc = new char[1] { '' };
string[] split = TSMonitor.Text.Split(cc);
if (split[1] == "") return;
DataView dv = DbHelperSQL.Query("SELECT * FROM T_Monitor_Task Where F_MonitorIndex=" +
Convert.ToInt32(split[1])).Tables[0].DefaultView;
if (dv.Count > 0)
{
//20100108中间指令被报告完成时给与提示和警告
DataView dv0 = DbHelperSQL.Query("SELECT MIN(F_MonitorIndex) AS mmi FROM dbo.T_Monitor_Task WHERE (F_ManageTaskIndex = " + dv[0]["F_ManageTaskIndex"] + ") AND (F_ManageTASKKINDINDEX = " + dv[0]["F_ManageTASKKINDINDEX"] + ")").Tables[0].DefaultView;
if (dv0.Count > 0)
{
if ((dv0[0]["mmi"] != DBNull.Value) && (dv0[0]["mmi"].ToString() != split[1]))
{
if (MessageBox.Show("表箱条码:" + dv[0]["F_TxtParam"].ToString() + ",设备名称:“" + this.dgvMonitor.CurrentRow.Cells["设备名称"].Value.ToString() + ";设备命令:" + this.dgvMonitor.CurrentRow.Cells["设备命令名称"].Value.ToString() + "”之前还有没执行完成的调度任务,提前【动作完成】会造成调度任务混乱,您确认要继续操作吗?", "操作提示:", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) != DialogResult.OK)
{
return;
}
}
}
dv0 = null;
//20100108操作黑匣子增加托盘条码
if (MessageBox.Show("您确认表箱条码:" + dv[0]["F_TxtParam"].ToString() + ",设备名称:“" + this.dgvMonitor.CurrentRow.Cells["设备名称"].Value.ToString() + ";设备命令:" + this.dgvMonitor.CurrentRow.Cells["设备命令名称"].Value.ToString() + "”已经操作完成了吗?", "操作提示:", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) != DialogResult.OK)
{
return;
}
if (dv[0]["F_DeviceIndex"].ToString() == "11001")
{
if (MessageBox.Show("Agv无法手动完成任务,请问是否只调接口", "操作提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
{
string sResult;
//DataView dv_task = DbHelperSQL.Query("select * from t_WareHouse").Tables[0].DefaultView;
DataView ds = DbHelperSQL.Query("SELECT * FROM T_Manage_Task =" + dv[0]["F_ManageTaskIndex"]).Tables[0].DefaultView;
bool bResult = (new uploadStackIODet()).Notify(ds[0]["fmanageid"].ToString(), ds[0]["FSTARTCELL"].ToString() == "-" ? "02" : "01", ds[0]["FSTARTCELL"].ToString() == "-" ? ds[0]["FENDCELL"].ToString() : ds[0]["FSTARTCELL"].ToString(), out sResult);
MessageBox.Show("调用接口" + (bResult ? "成功" : "失败"));
}
}
string sss = "设备索引:" + dv[0]["F_DeviceIndex"].ToString() + ";设备指令索引:" + dv[0]["F_MonitorIndex"].ToString();
//20100108操作黑匣子增加托盘条码
CCarryConvert.WriteDarkCasket("设备指令管理", "手工报告完成", "表箱条码:" + dv[0]["F_TxtParam"].ToString(), sss);
AssociateComplete(Convert.ToInt32(dv[0]["F_DeviceIndex"]), Convert.ToInt32(dv[0]["F_MonitorIndex"]), Convert.ToInt32(dv[0]["F_Status"]));
this.dgvMonitor.DataSource = DbHelperSQL.Query("select * from V_Monitor_Task where " + _monstatus + " order by 设备指令索引 asc ").Tables[0].DefaultView;
}
}
public void AssociateComplete(int deviceIdx, int mindex, int status)
{
int ClearZero = 0;
if (status >= 1)
{
ClearZero = 1;
}
else
{
ClearZero = CGeneralFunction.TASKFINISH;
}
int DeviceIdx = deviceIdx;
int devKind;
DataView dv = DbHelperSQL.Query("select F_MonitorIndex,F_DeviceIndex,F_DeviceCommandIndex,F_NumParam4 from T_Monitor_Task where F_MonitorIndex=" + mindex).Tables[0].DefaultView;
if (dv.Count > 0)
{
//检查关联命令一起报告完成
//如果mindex是主动任务f_associatemonitor有数据先报告完成被动的任务如果mindex是被动任务先报告完成自己再报告完成主动任务
DataView dv1 = DbHelperSQL.Query("select F_DeviceIndex,F_Associate from T_Monitor_Task where F_Associate IS NOT NULL and F_MonitorIndex=" + mindex).Tables[0].DefaultView;
if (dv1.Count > 0)
{
DataView dv2 = DbHelperSQL.Query("select F_DeviceIndex,F_MonitorIndex from T_Monitor_Task where F_MonitorIndex=" + Convert.ToInt32(dv1[0]["F_Associate"])).Tables[0].DefaultView;
if (dv2.Count > 0)//有关联命令,先报告完成关联命令
{
DeviceIdx = Convert.ToInt32(dv2[0]["F_DeviceIndex"]);
devKind = BaseDeviceService.GetDeviceKindIdx(DeviceIdx);
gs.ActionComplete(DeviceIdx, Convert.ToInt32(dv2[0]["F_MonitorIndex"]), ClearZero);
}
//再报告完成自己
DeviceIdx = Convert.ToInt32(dv[0]["F_DeviceIndex"]);
devKind = BaseDeviceService.GetDeviceKindIdx(DeviceIdx);
gs.ActionComplete(DeviceIdx, mindex, ClearZero);
}
else
{
//自己是否被关联,先报告完成自己,再报告完成主任务
DataView dv3 = DbHelperSQL.Query("select F_DeviceIndex,F_MonitorIndex from T_Monitor_Task where F_Associate ='" + mindex + "'").Tables[0].DefaultView;
if (dv3.Count > 0)
{ //先报告完成自己
DeviceIdx = Convert.ToInt32(dv[0]["F_DeviceIndex"]);
devKind = BaseDeviceService.GetDeviceKindIdx(DeviceIdx);
gs.ActionComplete(DeviceIdx, mindex, ClearZero);
//再报告完成主任务
DeviceIdx = Convert.ToInt32(dv3[0]["F_DeviceIndex"]);
devKind = BaseDeviceService.GetDeviceKindIdx(DeviceIdx);
gs.ActionComplete(DeviceIdx, Convert.ToInt32(dv3[0]["F_MonitorIndex"]), ClearZero);
}
else
{
//无关联任务,只报告完成自己
DeviceIdx = Convert.ToInt32(dv[0]["F_DeviceIndex"]);
devKind = BaseDeviceService.GetDeviceKindIdx(DeviceIdx);
//20091107长输送机链需要给最后一个报告完成的清零
if ((devKind == 2) && (Convert.ToInt32(dv[0]["F_NumParam4"]) > 0) && (dv[0]["F_DeviceCommandIndex"].ToString() == "6"))
{
DeviceIdx = Convert.ToInt32(dv[0]["F_NumParam4"]);
}
gs.ActionComplete(DeviceIdx, mindex, ClearZero);
}
}
}
}
/// <summary>
/// 指令重发
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void TSMRestore_Click(object sender, EventArgs e)
{
char[] cc = new char[1] { '' };
string[] split = TSMonitor.Text.Split(cc);
if (split[1] == "") return;
ISendDeviceOrder sdo;
int DeviceIdx;
int devKind;
int mindex = Convert.ToInt32(split[1]);
int fid = ccf.GetManageTaskIndexfromMonitor(mindex);
int mankind = ccf.GetManageTaskKindIndexFromMonitor(mindex);
//20100108改为select *
DataView dv = DbHelperSQL.Query("select * from T_Monitor_Task where F_MonitorIndex=" + mindex).Tables[0].DefaultView;
if (dv.Count > 0)
{
//20100108中间指令被复位时给与提示和警告
DataView dv0 = DbHelperSQL.Query("SELECT MIN(F_MonitorIndex) AS mmi FROM dbo.T_Monitor_Task WHERE (F_ManageTaskIndex = " + fid + ") AND (F_ManageTASKKINDINDEX = " + mankind + ")").Tables[0].DefaultView;
if (dv0.Count > 0)
{
if ((dv0[0]["mmi"] != DBNull.Value) && (dv0[0]["mmi"].ToString() != mindex.ToString()))
{
if (MessageBox.Show("表箱条码:" + dv[0]["F_TxtParam"].ToString() + ",设备名称:“" + this.dgvMonitor.CurrentRow.Cells["设备名称"].Value.ToString() + ";设备命令:" + this.dgvMonitor.CurrentRow.Cells["设备命令名称"].Value.ToString() + "”之前还有没执行完成的调度任务,提前【复位】会造成调度任务混乱,您确认要继续操作吗?", "操作提示:", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) != DialogResult.OK)
{
return;
}
}
}
dv0 = null;
//20100108操作黑匣子增加托盘条码
if (MessageBox.Show("您确认表箱条码:" + dv[0]["F_TxtParam"].ToString() + ",设备名称:“" + this.dgvMonitor.CurrentRow.Cells["设备名称"].Value.ToString() + ";设备命令:" + this.dgvMonitor.CurrentRow.Cells["设备命令名称"].Value.ToString() + "”需要被重新发送和设备清零吗?", "操作提示:", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) != DialogResult.OK)
{
return;
}
//20091107
devKind = BaseDeviceService.GetDeviceKindIdx(Convert.ToInt32(dv[0]["F_DeviceIndex"]));
if ((devKind == 6) && (dv[0]["F_AgvNo"] != DBNull.Value))
{
if (MessageBox.Show("您要复位的AGV任务已经分配AGV车号" + dv[0]["F_AgvNo"].ToString() + "确认要继续重新下达AGV命令吗", "操作提示:", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) != DialogResult.OK)
{
return;
}
}
string sss = "设备索引:" + dv[0]["F_DeviceIndex"].ToString() + ";设备指令索引:" + dv[0]["F_MonitorIndex"].ToString();
//20100108操作黑匣子增加托盘条码
CCarryConvert.WriteDarkCasket("设备指令管理", "手工复位", "表箱条码:" + dv[0]["F_TxtParam"].ToString(), sss);
//检查关联命令一起复位
//如果mindex是主动任务f_associatemonitor有数据先复位被动的任务如果mindex是被动任务先复位自己再复位主动任务
DataView dv1 = DbHelperSQL.Query("select F_DeviceIndex,F_Associate from T_Monitor_Task where F_Associate IS NOT NULL and F_MonitorIndex=" + mindex).Tables[0].DefaultView;
if (dv1.Count > 0)
{
DataView dv2 = DbHelperSQL.Query("select F_DeviceIndex,F_MonitorIndex from T_Monitor_Task where F_MonitorIndex=" + Convert.ToInt32(dv1[0]["F_Associate"])).Tables[0].DefaultView;
if (dv2.Count > 0)//有关联命令,先复位关联命令
{
DeviceIdx = Convert.ToInt32(dv2[0]["F_DeviceIndex"]);
devKind = BaseDeviceService.GetDeviceKindIdx(DeviceIdx);
if ((devKind == 2) || (devKind == 4))
{//输送机、RGV清零
sdo = CommModeCreate.CreateSendDeviceOrder(DeviceIdx);
sdo.SendDeviceOrder(2, 0, 0, DeviceIdx, 0);
}
if ((devKind == 1)) //堆垛机
{
//只有取货任务才能重发,已经取完货的任务或放货任务不能重发
DataView restart = DbHelperSQL.Query("select * from t_monitor_task,t_manage_task where t_manage_task.fid=t_monitor_task.F_ManageTaskIndex and t_monitor_task.F_MonitorIndex=" + mindex).Tables[0].DefaultView;
//首先取消已经下发的任务
//其次判断是出库还是入库
//出库直接取,入库需要一个允许
MessageBox.Show("Agv不允许重发任务");
//sdo = CommModeCreate.CreateSendDeviceOrder(DeviceIdx);
//sdo.SendDeviceOrder(2, 0, 0, DeviceIdx, 0, 0, 0, 0, 0, 0);
}
DbHelperSQL.ExecuteSql("update T_Base_Device set F_LockedState=0 where F_DeviceIndex=" + Convert.ToInt32(dv2[0]["F_DeviceIndex"]));
DbHelperSQL.ExecuteSql("update T_Monitor_Task set F_SendCount=0,F_Status=0 where F_MonitorIndex=" + Convert.ToInt32(dv2[0]["F_MonitorIndex"]));
}
//再复位自己
DeviceIdx = Convert.ToInt32(dv[0]["F_DeviceIndex"]);
devKind = BaseDeviceService.GetDeviceKindIdx(DeviceIdx);
if ((devKind == 2) || (devKind == 4))
{//输送机、RGV清零
sdo = CommModeCreate.CreateSendDeviceOrder(DeviceIdx);
sdo.SendDeviceOrder(2, 0, 0, DeviceIdx, 0);
}
if ((devKind == 1)) //堆垛机
{
MessageBox.Show("Agv不允许重发任务");
//sdo = CommModeCreate.CreateSendDeviceOrder(DeviceIdx);
//sdo.SendDeviceOrder(2, 0, 0, DeviceIdx, 0, 0, 0, 0, 0, 0);
}
DbHelperSQL.ExecuteSql("update T_Base_Device set F_LockedState=0 where F_DeviceIndex=" + Convert.ToInt32(dv[0]["F_DeviceIndex"]));
DbHelperSQL.ExecuteSql("update T_Monitor_Task set F_SendCount=0,F_Status=0 where F_MonitorIndex=" + Convert.ToInt32(dv[0]["F_MonitorIndex"]));
}
else
{ //自己是否被关联,先复位自己,再复位主任务
DataView dv3 = DbHelperSQL.Query("select F_DeviceIndex,F_MonitorIndex from T_Monitor_Task where F_Associate ='" + mindex + "'").Tables[0].DefaultView;
if (dv3.Count > 0)
{ //先复位自己
DeviceIdx = Convert.ToInt32(dv[0]["F_DeviceIndex"]);
devKind = BaseDeviceService.GetDeviceKindIdx(DeviceIdx);
if ((devKind == 2) || (devKind == 4))
{//输送机、RGV清零
sdo = CommModeCreate.CreateSendDeviceOrder(DeviceIdx);
sdo.SendDeviceOrder(2, 0, 0, DeviceIdx, 0);
}
if (devKind == 1) //堆垛机
{
MessageBox.Show("Agv不允许重发任务");
//sdo = CommModeCreate.CreateSendDeviceOrder(DeviceIdx);
//sdo.SendDeviceOrder(2, 0, 0, DeviceIdx, 0, 0, 0, 0, 0, 0);
}
DbHelperSQL.ExecuteSql("update T_Base_Device set F_LockedState=0 where F_DeviceIndex=" + Convert.ToInt32(dv[0]["F_DeviceIndex"]));
DbHelperSQL.ExecuteSql("update T_Monitor_Task set F_SendCount=0,F_Status=0 where F_MonitorIndex=" + mindex);
//再复位主任务
DeviceIdx = Convert.ToInt32(dv3[0]["F_DeviceIndex"]);
devKind = BaseDeviceService.GetDeviceKindIdx(DeviceIdx);
if ((devKind == 2) || (devKind == 4))
{//输送机、RGV清零
sdo = CommModeCreate.CreateSendDeviceOrder(DeviceIdx);
sdo.SendDeviceOrder(2, 0, 0, DeviceIdx, 0);
}
if (devKind == 1) //堆垛机
{
MessageBox.Show("Agv不允许重发任务");
//sdo = CommModeCreate.CreateSendDeviceOrder(DeviceIdx);
//sdo.SendDeviceOrder(2, 0, 0, DeviceIdx, 0, 0, 0, 0, 0, 0);
}
DbHelperSQL.ExecuteSql("update T_Base_Device set F_LockedState=0 where F_DeviceIndex=" + Convert.ToInt32(dv3[0]["F_DeviceIndex"]));
DbHelperSQL.ExecuteSql("update T_Monitor_Task set F_SendCount=0,F_Status=0 where F_MonitorIndex=" + Convert.ToInt32(dv3[0]["F_MonitorIndex"]));
}
else
{
//无关联任务,只复位自己
DeviceIdx = Convert.ToInt32(dv[0]["F_DeviceIndex"]);
devKind = BaseDeviceService.GetDeviceKindIdx(DeviceIdx);
if ((devKind == 2) || (devKind == 4))
{//输送机、RGV清零
sdo = CommModeCreate.CreateSendDeviceOrder(DeviceIdx);
sdo.SendDeviceOrder(2, 0, 0, DeviceIdx, 0);
}
if ((devKind == 1)) //堆垛机
{
MessageBox.Show("Agv不允许重发任务");
//sdo = CommModeCreate.CreateSendDeviceOrder(DeviceIdx);
//sdo.SendDeviceOrder(2, 0, 0, DeviceIdx, 0, 0, 0, 0, 0, 0);
}
DbHelperSQL.ExecuteSql("update T_Base_Device set F_LockedState=0 where F_DeviceIndex=" + Convert.ToInt32(dv[0]["F_DeviceIndex"]));
DbHelperSQL.ExecuteSql("update T_Monitor_Task set F_SendCount=0,F_Status=0 where F_MonitorIndex=" + mindex);
}
}
//给管理FERRORCODE清空
if (mankind == 1)
{
}
DbHelperSQL.ExecuteSql("UPDATE T_Manage_Task SET FERRORCODE ='' WHERE FID=" + fid + " and F_ManageTaskKindIndex=" + mankind + "");
}
this.dgvMonitor.DataSource = DbHelperSQL.Query("select * from V_Monitor_Task where " + _monstatus + " order by 设备指令索引 asc ").Tables[0].DefaultView;
}
/// <summary>
/// 指令删除
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void TSMmonitorDel_Click(object sender, EventArgs e)
{
char[] cc = new char[1] { '' };
string[] split = TSMonitor.Text.Split(cc);
if (split[1] == "") return;
DataView dv = DbHelperSQL.Query("SELECT * FROM T_Monitor_Task Where F_MonitorIndex=" +
Convert.ToInt32(split[1])).Tables[0].DefaultView;
if (dv.Count > 0)
{
//20100108中间指令被报告完成时给与提示和警告
DataView dv0 = DbHelperSQL.Query("SELECT MIN(F_MonitorIndex) AS mmi FROM dbo.T_Monitor_Task WHERE (F_ManageTaskIndex = " + dv[0]["F_ManageTaskIndex"] + ") AND (F_ManageTASKKINDINDEX = " + dv[0]["F_ManageTASKKINDINDEX"] + ")").Tables[0].DefaultView;
if (dv0.Count > 0)
{
if ((dv0[0]["mmi"] != DBNull.Value) && (dv0[0]["mmi"].ToString() != split[1]))
{
if (MessageBox.Show("表箱条码:" + dv[0]["F_TxtParam"].ToString() + ",设备名称:“" + this.dgvMonitor.CurrentRow.Cells["设备名称"].Value.ToString() + ";设备命令:" + this.dgvMonitor.CurrentRow.Cells["设备命令名称"].Value.ToString() + "”之前还有没执行完成的调度任务,提前【删除设备指令】会造成调度任务混乱,您确认要继续操作吗?", "操作提示:", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) != DialogResult.OK)
{
return;
}
}
}
dv0 = null;
//20100108操作黑匣子增加托盘条码
if (MessageBox.Show("您确认表箱条码:" + dv[0]["F_TxtParam"].ToString() + ",设备名称:“" + this.dgvMonitor.CurrentRow.Cells["设备名称"].Value.ToString() + ";设备命令:" + this.dgvMonitor.CurrentRow.Cells["设备命令名称"].Value.ToString() + "”已经不需要设备执行了吗?", "操作提示:", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) != DialogResult.OK)
{
return;
}
string sss = "设备索引:" + dv[0]["F_DeviceIndex"].ToString() + ";设备指令索引:" + dv[0]["F_MonitorIndex"].ToString();
{
CCarryConvert.WriteDarkCasket("设备指令管理", "手工删除设备指令", "表箱条码:" + dv[0]["F_TxtParam"].ToString(), sss);
gs.ActionComplete(Convert.ToInt32(dv[0]["F_DeviceIndex"]), Convert.ToInt32(dv[0]["F_MonitorIndex"]), CGeneralFunction.TASKDELETE);//20100905
}
this.dgvMonitor.DataSource = DbHelperSQL.Query("select * from V_Monitor_Task where " + _monstatus + " order by 设备指令索引 asc ").Tables[0].DefaultView;
}
}
private void dgvMonitor_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
{
foreach (DataGridViewRow DGVRow in this.dgvMonitor.Rows)
{
if (DGVRow != null)
{
if (Convert.ToInt32(DGVRow.Cells["f_status"].Value) >= 30)
{
DGVRow.DefaultCellStyle.BackColor = Color.Red;
}
}
}
}
/// <summary>
/// 菜单打开
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void cmMonitor_Opening(object sender, CancelEventArgs e)
{
if (this.dgvMonitor.CurrentRow == null)
{
TSMonitor.Visible = false;
TSMManager.Visible = false;
TSMmonitorOK.Visible = false;
TSMRestore.Visible = false;
TSMmonitorDel.Visible = false;
toolStripSeparator2.Visible = false;
return;
}
if (Convert.ToInt32(this.dgvMonitor.CurrentRow.Cells[0].Value) > 0)
{
TSMonitor.Visible = true;
TSMManager.Visible = true;
//TSMSimulateRun.Visible = true;
TSMmonitorOK.Visible = true;
TSMmonitorDel.Visible = true;
TSMRestore.Visible = true;
toolStripSeparator2.Visible = true;
TSMManager.Text = "任务类型:" + this.dgvMonitor.CurrentRow.Cells[1].Value.ToString() +
";调度任务索引:" + this.dgvMonitor.CurrentRow.Cells[0].Value.ToString();
TSMonitor.Text = "设备指令索引:" + this.dgvMonitor.CurrentRow.Cells[2].Value.ToString();
}
}
}
}