吉林安睿特调度
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

136 lines
7.0 KiB

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DBFactory;
namespace wcfControlMonitorClient
{
/// <summary>
/// 20101011新增加出入库站台属性定义
/// </summary>
public partial class FrmZCKIOStation : Form
{
DBOperator dbo = CStaticClass.dbo;
DBOperator dboM = CStaticClass.dboM;
private static FrmZCKIOStation _formInstance;
public static FrmZCKIOStation FormInstance
{
get
{
if (_formInstance == null)
{
_formInstance = new FrmZCKIOStation();
}
return _formInstance;
}
set { _formInstance = value; }
}
public FrmZCKIOStation()
{
InitializeComponent();
DataView dv = dbo.ExceSQL("select F_DeviceIndex,F_DeviceName from T_Base_Device where F_DeviceKindIndex=2").Tables[0].DefaultView;
if (dv.Count > 0)
{
this.comboBox1.DisplayMember = "F_DeviceName";
this.comboBox1.ValueMember = "F_DeviceIndex";
this.comboBox1.DataSource = dv;
}
_formInstance = this;
}
private void button1_Click(object sender, EventArgs e)
{
if (this.comboBox1.SelectedValue == null)
{
MessageBox.Show("请选择出入库站台!","操作提示",MessageBoxButtons.OK,MessageBoxIcon.Warning);
this.comboBox1.Focus();
return;
}
if (this.comboBox2.Text.Trim()=="")
{
MessageBox.Show("请选择出入库属性!", "操作提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
this.comboBox2.Focus();
return;
}
if ("出库站台入库站台拣选站台".IndexOf(this.comboBox2.Text.Trim()) < 0)
{
MessageBox.Show("请选择出入库属性!", "操作提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
this.comboBox2.Focus();
return;
}
string iotype = " (T_Base_Route.F_RouteKind <> 0) ";
if (this.comboBox2.Text.Trim() == "入库站台")
{
iotype = " (T_Base_Route.F_RouteKind = 1) ";
dbo.ExecuteSql("update t_base_route set F_Status=1,F_AutoUpdate=1 where F_StartDevice=" + this.comboBox1.SelectedValue);
dboM.ExceSQL("update IO_CONTROL_ROUTE set CONTROL_ROUTE_STATUS=1 where START_DEVICE=" + this.comboBox1.SelectedValue);
dbo.ExecuteSql("update t_base_route set F_Status=0,F_AutoUpdate=0 where F_EndDevice=" + this.comboBox1.SelectedValue);
dboM.ExceSQL("update IO_CONTROL_ROUTE set CONTROL_ROUTE_STATUS=0 where END_DEVICE=" + this.comboBox1.SelectedValue);
}
else if (this.comboBox2.Text.Trim() == "出库站台")
{
iotype = " (T_Base_Route.F_RouteKind = 2) ";
dbo.ExecuteSql("update t_base_route set F_Status=1,F_AutoUpdate=1 where F_EndDevice=" + this.comboBox1.SelectedValue);
dboM.ExceSQL("update IO_CONTROL_ROUTE set CONTROL_ROUTE_STATUS=1 where END_DEVICE=" + this.comboBox1.SelectedValue);
dbo.ExecuteSql("update t_base_route set F_Status=0,F_AutoUpdate=0 where F_StartDevice=" + this.comboBox1.SelectedValue);
dboM.ExceSQL("update IO_CONTROL_ROUTE set CONTROL_ROUTE_STATUS=0 where START_DEVICE=" + this.comboBox1.SelectedValue);
}
else
{
iotype = " (T_Base_Route.F_RouteKind <> 0) ";
dbo.ExecuteSql("update t_base_route set F_Status=1,F_AutoUpdate=1 where ((F_EndDevice=" + this.comboBox1.SelectedValue +") or (F_StartDevice=" + this.comboBox1.SelectedValue +"))");
dboM.ExceSQL("update IO_CONTROL_ROUTE set CONTROL_ROUTE_STATUS=1 where ((End_Device=" + this.comboBox1.SelectedValue + ") or (Start_Device=" + this.comboBox1.SelectedValue + "))");
}
DataView dv = dbo.ExceSQL("SELECT DISTINCT T_Base_Route.F_RouteID, T_Base_Route.F_RouteKind, "+
"T_Base_Route_Device.F_DeviceIndex FROM T_Base_Route,T_Base_Route_Device where "+
"T_Base_Route.F_RouteID = T_Base_Route_Device.F_RouteID and "+iotype+
" AND (T_Base_Route_Device.F_DeviceIndex = "+this.comboBox1.SelectedValue +")").Tables[0].DefaultView;
DataView dvf;
for(int i=0;i<dv.Count;i++)
{
dbo.ExecuteSql("update t_base_route set F_Status=1,F_AutoUpdate=1 where f_routeid=" + dv[i]["F_RouteID"]);
dboM.ExceSQL("update IO_CONTROL_ROUTE set CONTROL_ROUTE_STATUS=1 where CONTROL_ROUTE_ID='" + dv[i]["F_RouteID"] + "' and CONTROL_ROUTE_STATUS=0");
if (dv[i]["F_RouteKind"].ToString() == "1")
{
dvf = dbo.ExceSQL("SELECT DISTINCT T_Base_Route.F_RouteID, T_Base_Route.F_RouteKind, " +
"T_Base_Route_Device.F_DeviceIndex FROM T_Base_Route,T_Base_Route_Device where " +
"T_Base_Route.F_RouteID = T_Base_Route_Device.F_RouteID and T_Base_Route.F_RouteKind = 2 " +
" AND (T_Base_Route_Device.F_DeviceIndex = " + this.comboBox1.SelectedValue + ")").Tables[0].DefaultView;
for (int f = 0; f < dvf.Count; f++)
{
dbo.ExecuteSql("update t_base_route set F_Status=0,F_AutoUpdate=0 where f_routeid=" + dvf[f]["F_RouteID"]);
dboM.ExceSQL("update IO_CONTROL_ROUTE set CONTROL_ROUTE_STATUS=0 where CONTROL_ROUTE_ID='" + dvf[f]["F_RouteID"] + "' and CONTROL_ROUTE_STATUS=1");
}
}
else if (dv[i]["F_RouteKind"].ToString() == "2")
{
dvf = dbo.ExceSQL("SELECT DISTINCT T_Base_Route.F_RouteID, T_Base_Route.F_RouteKind, " +
"T_Base_Route_Device.F_DeviceIndex FROM T_Base_Route,T_Base_Route_Device where " +
"T_Base_Route.F_RouteID = T_Base_Route_Device.F_RouteID and T_Base_Route.F_RouteKind = 1 " +
" AND (T_Base_Route_Device.F_DeviceIndex = " + this.comboBox1.SelectedValue + ")").Tables[0].DefaultView;
for (int f = 0; f < dvf.Count; f++)
{
dbo.ExecuteSql("update t_base_route set F_Status=0,F_AutoUpdate=0 where f_routeid=" + dvf[f]["F_RouteID"]);
dboM.ExceSQL("update IO_CONTROL_ROUTE set CONTROL_ROUTE_STATUS=0 where CONTROL_ROUTE_ID='" + dvf[f]["F_RouteID"] + "' and CONTROL_ROUTE_STATUS=1");
}
}
}
}
private void FrmIOStation_FormClosing(object sender, FormClosingEventArgs e)
{
_formInstance = null;
}
}
}