2210718沈阳地铁2号线南延线wcs代码
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.

555 lines
20 KiB

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.ServiceModel;
using DBFactory;
using System.Net.Sockets;
using System.Threading;
using Microsoft.VisualBasic;
namespace wcfControlMonitorClient
{
/// <summary>
/// Creator:Richard.liu
/// µ÷¶ÈÈÎÎñ¹ÜÀí
/// </summary>
public partial class FrmModifyManage : Form
{
string _manstatus= " F_Status>=-1 ";
private static FrmModifyManage _formInstance;
public static FrmModifyManage FormInstance
{
get
{
if (_formInstance == null)
{
_formInstance = new FrmModifyManage();
}
return _formInstance;
}
set { _formInstance = value; }
}
Model.MDevice devinfo;
DBOperator dbo = CStaticClass.dbo;
DBOperator dboM = CStaticClass.dboM;
public FrmModifyManage()
{
InitializeComponent();
_formInstance = this;
}
private void TSMrefresh_Click()
{
string StrSql = string.Format("select V_Manage_Task.* from V_Manage_Task,T_Base_Device where V_Manage_Task.Æðµã=T_Base_Device.F_DeviceIndex and F_WorkArea like '%{0}%' and {1}", CStaticClass.UserArea, _manstatus);
this.dgvManager.DataSource = dbo.ExceSQL(StrSql).Tables[0].DefaultView;
}
private void button1_Click(object sender, EventArgs e)
{
try
{
//if (this.textBox1.Text.Trim().Length == 0) return;
if (this.comboBox1.Text == "ÌõÂë")
{
//20091016
//_manstatus = " ÌõÂë='" + this.textBox1.Text.Trim() + "' ";
_manstatus = string.Format(" ÌõÂë like '%{0}%' ", this.textBox1.Text.Trim());
}
if (this.comboBox1.Text == "µ÷¶ÈÈÎÎñË÷Òý")
{
//_manstatus = " µ÷¶ÈÈÎÎñË÷Òý='" + this.textBox1.Text.Trim() + "' ";
_manstatus = string.Format(" µ÷¶ÈÈÎÎñË÷Òý like '%{0}%' ", this.textBox1.Text.Trim());
}
string Type = comboTaskType.Text.Trim();//³öÈë¿âÈÎÎñÀàÐÍ
string Floor = comboFloor.SelectedIndex <= 0 ? string.Empty : Convert.ToString(comboFloor.SelectedIndex);//ÈÎÎñËùÔÚÂ¥²ã ,Èë¿âºÍÒÆ¿âÈÎÎñÅÐ¶ÏÆðµã£¬³ö¿âÈÎÎñÅжÏÖÕµã
string Lane = comboLane.SelectedIndex <= 0 ? string.Empty : string.Format("1800{0}", comboLane.SelectedIndex); //ÈÎÎñËùÔÚÏïµÀ,Èë¿âÈÎÎñÅжÏÖյ㣬³ö¿âÈÎÎñÅÐ¶ÏÆðµã
string str1 = string.Format(" And (×÷ÒµÀàÐÍ like '%{0}%') And (((×÷ÒµÀàÐÍ!='³ö¿â') and (Æðµã like '{1}%')) OR ((×÷ÒµÀàÐÍ='³ö¿â') and (ÖÕµã like '{2}%')))", Type, Floor, Floor);
//string str1 = string.Format(" And (×÷ÒµÀàÐÍ like '%{0}%') And (((×÷ÒµÀàÐÍ='Èë¿â' OR ×÷ÒµÀàÐÍ like'%ÒÆ¿â%') and (Æðµã like '{1}%')) OR ((×÷ÒµÀàÐÍ='³ö¿â') and (ÖÕµã like '{2}%')))", Type, Floor, Floor);
string str2 = string.Format(" And ((ÖÕµã like '{0}%') OR (Æðµã like '{1}%'))", Lane, Lane);
//string str2 = string.Format(" And (((×÷ÒµÀàÐÍ!='³ö¿â') and (ÖÕµã like '{0}%')) OR ((×÷ÒµÀàÐÍ='³ö¿â') and (Æðµã like '{1}%')))", Lane, Lane);
_manstatus = string.Format("{0}{1}{2}", _manstatus, str1, str2);
TSMrefresh_Click();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "²Ù×÷Ìáʾ£º", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void button2_Click(object sender, EventArgs e)
{
_manstatus = " F_Status>=-1 ";
TSMrefresh_Click();
}
private void dgvManager_DataSourceChanged(object sender, EventArgs e)
{
dgvManager.Columns["F_Status"].Visible = false;
}
private void cmManager_Opening(object sender, CancelEventArgs e)
{
if (this.dgvManager.CurrentRow == null)
{
TSMmanagerOK.Visible = false;
//TSMrefresh.Visible = false;
TSManager.Visible = false;
toolStripSeparator1.Visible = false;
//TSMmanagerDisassemble.Visible = false;
toolStripMenuItem1.Visible = false;
toolStripSeparator2.Visible = false;
return;
}
if (Convert.ToInt32(this.dgvManager.CurrentRow.Cells["µ÷¶ÈÈÎÎñË÷Òý"].Value) > 0)
{
TSMmanagerOK.Visible = true;
TSManager.Visible = true;
toolStripSeparator1.Visible = true;
toolStripSeparator2.Visible = true;
//TSMmanagerDisassemble.Visible = true;
toolStripMenuItem1.Visible = true;
TSManager.Text = "ÈÎÎñÀàÐÍ£º" + this.dgvManager.CurrentRow.Cells["ÈÎÎñÀàÐÍ"].Value.ToString() +
"£»µ÷¶ÈÈÎÎñË÷Òý£º" + this.dgvManager.CurrentRow.Cells["µ÷¶ÈÈÎÎñË÷Òý"].Value.ToString();
}
}
private void TSMmanagerOK_Click(object sender, EventArgs e)
{
char[] cc = new char[1] { '£º' };
string[] split = TSManager.Text.Split(cc);
if ((split[1] == "") || (split[2] == ""))
{
return;
}
try
{
char[] scc = new char[1] { '£»' };
string[] strsplit = split[1].Split(scc);
int mti = 0;
int fid = Convert.ToInt32(split[2]);
if (strsplit[0] == "") return;
switch (strsplit[0])
{
case "µ÷¶ÈÈÎÎñ":
mti = 1;
break;
case "×Ô¶¯ÈÎÎñ":
mti = 2;
break;
case "ÁÙʱÈÎÎñ":
mti = 3;
break;
case "ÊÖ¹¤ÈÎÎñ":
mti = 4;
break;
}
string cap = strsplit[0];
string hw = "";
if (this.dgvManager.CurrentRow.Cells["ÖÕµã»õλ"].Value.ToString() != "-")
{
hw = ",ÖÕµã»õλ:" + this.dgvManager.CurrentRow.Cells["ÖÕµã»õλ"].Value.ToString();
}
//20100108
if (MessageBox.Show("ÄúÈ·ÈÏÌõÂ룺¡°" + this.dgvManager.CurrentRow.Cells["ÌõÂë"].Value.ToString() + "¡±£¬" + cap + split[2] + "ÒѾ­±»°áÔ˵½ÖÕµãÉ豸¡°" + this.dgvManager.CurrentRow.Cells["ÖÕµã"].Value.ToString() + hw + "¡±ÁËÂð£¿", "²Ù×÷Ìáʾ£º", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) != DialogResult.OK)
{
return;
}
CStaticClass.WcfControl.BeginModifyManageTask(mti, fid, Model.CGeneralFunction.TASKFINISH, new AsyncCallback(ModifyManageTaskCallBack), null);
//{
// MessageBox.Show(cap, "²Ù×÷Ìáʾ£º", MessageBoxButtons.OK, MessageBoxIcon.Error);
//}
TSMrefresh_Click();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "²Ù×÷Ìáʾ£º", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void TSMmanagerDisassemble_Click(object sender, EventArgs e)
{
char[] cc = new char[1] { '£º' };
string[] split = TSManager.Text.Split(cc);
if ((split[1] == "") || (split[2] == ""))
{
return;
}
char[] scc = new char[1] { '£»' };
string[] strsplit = split[1].Split(scc);
int mti = 0;
int fid = Convert.ToInt32(split[2]);
if (strsplit[0] == "") return;
switch (strsplit[0])
{
case "µ÷¶ÈÈÎÎñ":
mti = 1;
break;
case "×Ô¶¯ÈÎÎñ":
mti = 2;
break;
case "ÁÙʱÈÎÎñ":
mti = 3;
break;
case "ÊÖ¹¤ÈÎÎñ":
mti = 4;
break;
}
if (mti == 1)
{
dbo.ExceSQL("update T_Manage_Task set FIntoStepOK='0' where FID=" + fid + " and FIntoStepOK='-' ");
// string sql = string.Format("SELECT * FROM T_Manage_Task WHERE (FIntoStepOK = '0') AND F_ManageTaskKindIndex={0} and FID={1} ", mti, fid);
// DataView dvM = new DataView();
// dvM = dbo.ExceSQL(sql.ToString()).Tables[0].DefaultView;
// if (dvM.Count>0)
// {
// if (CDisassembleTask.CreateMonitor(mti, fid, routeid, dvM[0], 0) > 0)
// {
// //·Ö½âÍê³É£¬ÐÞ¸ÄT_Manage_Task±íFIntoStepOK=1
// //20101124
// sql.Remove(0, sql.Length);
// sql.Append("update T_Manage_Task set FIntoStepOK='1' where FID=").Append(dvM[i]["FID"]
// ).Append(" and F_ManageTaskKindIndex=").Append(dvM[i]["F_ManageTaskKindIndex"]);
// dbo.ExceSQL(sql.ToString());
// }
//}
}
TSMrefresh_Click();
}
private void FrmModifyManage_Load(object sender, EventArgs e)
{
rbmanRun_Click(sender, e);
}
private void toolStripMenuItem1_Click(object sender, EventArgs e)
{
//ɾ³ýµ÷¶ÈÈÎÎñ900
try
{
char[] cc = new char[1] { '£º' };
string[] split = TSManager.Text.Split(cc);
if ((split[1] == "") || (split[2] == ""))
{
return;
}
char[] scc = new char[1] { '£»' };
string[] strsplit = split[1].Split(scc);
int mti = 0;
int fid = Convert.ToInt32(split[2]);
if (strsplit[0] == "") return;
switch (strsplit[0])
{
case "µ÷¶ÈÈÎÎñ":
mti = 1;
break;
case "×Ô¶¯ÈÎÎñ":
mti = 2;
break;
case "ÁÙʱÈÎÎñ":
mti = 3;
break;
case "ÊÖ¹¤ÈÎÎñ":
mti = 4;
break;
}
string hw = "";
if (this.dgvManager.CurrentRow.Cells["Æðµã»õλ"].Value.ToString() != "-")
{
hw = ",Æðµã»õλ:" + this.dgvManager.CurrentRow.Cells["Æðµã»õλ"].Value.ToString();
}
string cap = strsplit[0];
if (MessageBox.Show("ÄúÈ·ÈÏÌõÂ룺¡°" + this.dgvManager.CurrentRow.Cells["ÌõÂë"].Value.ToString() + "¡±£¬" + cap + split[2] + "ÒѾ­±»È¡Ïû²Ù×÷£¬¶øÇÒÈ˹¤°áÔËÍÐÅÌÍ˻ص½ÆðµãÉ豸¡°" + this.dgvManager.CurrentRow.Cells["Æðµã"].Value.ToString() + hw + "¡±ÁËÂð£¿", "²Ù×÷Ìáʾ£º", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) != DialogResult.OK)
{
return;
}
CStaticClass.WcfControl.BeginModifyManageTask(mti, fid, Model.CGeneralFunction.TASKDELETE, new AsyncCallback(ModifyManageTaskCallBack), null);
//{
// MessageBox.Show(cap, "²Ù×÷Ìáʾ£º", MessageBoxButtons.OK, MessageBoxIcon.Error);
//}
TSMrefresh_Click();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "²Ù×÷Ìáʾ£º", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
int GetDeviceKindIdx(int devIdx)
{
try
{
devinfo = Model.CGetInfo.GetDeviceInfo(devIdx);
return devinfo.DeviceKind;
}
catch (Exception ex)
{
throw ex;
}
}
int GetManageTaskIndexfromMonitor(int monitorIdx)
{
DataView dv = dbo.ExceSQL("SELECT F_ManageTaskIndex FROM T_Monitor_Task WHERE (F_MonitorIndex = " + monitorIdx + ")").Tables[0].DefaultView;
if (dv.Count > 0)
{
return Convert.ToInt32(dv[0]["F_ManageTaskIndex"]);
}
else
{
return -1;
}
}
int GetManageTaskKindIndexFromMonitor(int monitorIdx)
{
DataView dv = dbo.ExceSQL("SELECT F_ManageTaskKindIndex FROM T_Monitor_Task WHERE (F_MonitorIndex = " + monitorIdx + ")").Tables[0].DefaultView;
if (dv.Count > 0)
{
return Convert.ToInt32(dv[0]["F_ManageTaskKindIndex"]);
}
else
{
return -1;
}
}
int GetDeviceOrderFromMonitor(int MonitorIndex)
{
try
{
string sql = "select F_DeviceCommandIndex from T_Monitor_Task where (F_DeviceCommandIndex IS NOT NULL) and F_MonitorIndex=" + MonitorIndex;
DataView dv = dbo.ExceSQL(sql).Tables[0].DefaultView;
if (dv.Count > 0)
{
return Convert.ToInt32(dv[0]["F_DeviceCommandIndex"]);
}
else
{
return -1;
}
}
catch (Exception ex)
{
throw ex;
}
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
try
{
string df = "";
switch (this.comboBox1.Text)
{
case "ÌõÂë":
df = "ÌõÂë";
break;
case "µ÷¶ÈÈÎÎñË÷Òý":
df = "µ÷¶ÈÈÎÎñË÷Òý";
break;
default:
return;
}
//20100208
string sql = "select distinct " + df + " from V_Manage_Task ";
DataView dv = dbo.ExceSQL(sql).Tables[0].DefaultView;
if (dv.Count > 0)
{
this.textBox1.DataSource = null;
this.textBox1.DisplayMember = df;
this.textBox1.ValueMember = df;
this.textBox1.DataSource = dv;
}
}
catch (Exception ex)
{
throw ex;
}
}
private void dgvManager_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
if ((e.RowIndex >= 0) && (e.ColumnIndex >= 0))
{
//ÈôÐÐÒÑÊÇÑ¡ÖÐ״̬¾Í²»ÔÙ½øÐÐÉèÖÃ
if (dgvManager.Rows[e.RowIndex].Selected == false)
{
dgvManager.ClearSelection();
dgvManager.Rows[e.RowIndex].Selected = true;
}
//ֻѡÖÐÒ»ÐÐʱÉèÖûµ¥Ôª¸ñ
if (dgvManager.SelectedRows.Count == 1)
{
dgvManager.CurrentCell = dgvManager.Rows[e.RowIndex].Cells[e.ColumnIndex];
}
//µ¯³ö²Ù×÷²Ëµ¥
cmManager.Show(MousePosition.X, MousePosition.Y);
}
}
}
void ModifyManageTaskCallBack(IAsyncResult ar)
{
string errtext=string.Empty;
if (CStaticClass.WcfControl.EndModifyManageTask(out errtext, ar) == false)
{
MessageBox.Show(errtext, "²Ù×÷Ìáʾ£º", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
if (this.IsDisposed == true) return;
this.BeginInvoke(new MethodInvoker (delegate()
{
TSMrefresh_Click();
}
));
}
private void FrmModifyManage_FormClosing(object sender, FormClosingEventArgs e)
{
_formInstance = null;
}
private void dgvManager_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
if ((e.ColumnIndex >= 0) && (e.RowIndex >= 0))
{
dgvManager.ClearSelection();
dgvManager.Rows[e.RowIndex].Selected = true;
dgvManager.CurrentCell = dgvManager.Rows[e.RowIndex].Cells[e.ColumnIndex];
FrmModifyMonitor.FormInstance.comboBox1.Text = "ÌõÂë";
FrmModifyMonitor.FormInstance.textBox1.Text = dgvManager.CurrentRow.Cells["ÌõÂë"].Value.ToString();
FrmModifyMonitor.FormInstance.Show();
FrmModifyMonitor.FormInstance.button1_Click(sender, e);
this.Visible = false;
}
}
private void rbmanAll_Click(object sender, EventArgs e)
{
RadioButton rb = (RadioButton)sender;
if (rb.Checked == true)
{
_manstatus = " F_Status>=-1 ";
}
TSMrefresh_Click();
}
private void rbmanRun_Click(object sender, EventArgs e)
{
if (rbmanRun.Checked == true)
{
_manstatus = " F_Status>=1 ";
}
TSMrefresh_Click();
}
private void rbmanWait_Click(object sender, EventArgs e)
{
RadioButton rb = (RadioButton)sender;
if (rb.Checked == true)
{
_manstatus = " F_Status=0 ";
}
TSMrefresh_Click();
}
private void button3_Click(object sender, EventArgs e)
{
FrmRelativeIDSet.FormInstance.Show();
}
private void toolStripMenuItemLevel1_Click(object sender, EventArgs e)
{
SetTaskLevel(21);
}
private void SetTaskLevel( int level)
{
string sql = string.Empty;
try
{
char[] cc = new char[1] { '£º' };
string[] split = TSManager.Text.Split(cc);
if ((split[1] == "") || (split[2] == ""))
{
return;
}
char[] scc = new char[1] { '£»' };
string[] strsplit = split[1].Split(scc);
int mti = 0;
int fid = Convert.ToInt32(split[2]);
if (strsplit[0] == "") return;
switch (strsplit[0])
{
case "µ÷¶ÈÈÎÎñ":
mti = 1;
break;
case "×Ô¶¯ÈÎÎñ":
mti = 2;
break;
case "ÁÙʱÈÎÎñ":
mti = 3;
break;
case "ÊÖ¹¤ÈÎÎñ":
mti = 4;
break;
}
sql = string.Format("update T_Manage_Task set FTASKLEVEL={0} where FID={1} and F_ManageTaskKindIndex={2}",level,fid, mti);
dbo.ExceSQL(sql);
sql = string.Format("update T_Monitor_Task set F_MonitorTaskLevel={0} where F_ManageTaskIndex={1} and F_ManageTASKKINDINDEX={2}", level, fid, mti);
dbo.ExceSQL(sql);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "²Ù×÷Ìáʾ£º", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void toolStripMenuItemLevel2_Click(object sender, EventArgs e)
{
SetTaskLevel(11);
}
private void toolStripMenuItemLevel3_Click(object sender, EventArgs e)
{
SetTaskLevel(0);
}
}
}