143 lines
4.4 KiB
C#
143 lines
4.4 KiB
C#
using System;
|
||
using System.Collections.Generic;
|
||
using System.Text;
|
||
using System.Data;
|
||
using System.Threading;
|
||
using Microsoft.VisualBasic;
|
||
using DBFactory;
|
||
using ICommLayer;
|
||
|
||
namespace Symbol3204
|
||
{
|
||
/// <summary>
|
||
/// 使用SocketsUDP的客户端进行通讯
|
||
/// 发送设备命令类
|
||
/// 创建者:Richard.Liu
|
||
/// </summary>
|
||
public class CSendDeviceOrder: ISendDeviceOrder
|
||
{
|
||
string _commLayerError;
|
||
|
||
public string CommLayerError
|
||
{
|
||
get { return _commLayerError; }
|
||
set { _commLayerError = value; }
|
||
}
|
||
DBOperator dbo = new DBOperator();
|
||
public CSendDeviceOrder()
|
||
{
|
||
dbo.Open();
|
||
}
|
||
|
||
public bool SendDeviceOrder(int MessageIndex, int TaskIndex, int Order, int DeviceIndex)
|
||
{
|
||
try
|
||
{
|
||
CScan cs;
|
||
//根据DeviceIndex,得到串口号和初始设置
|
||
|
||
DataSet ds = dbo.ExceSQL("SELECT F_DeviceIndex, F_CommSettings, F_SerialPort FROM T_Base_Device where F_DeviceIndex=" + DeviceIndex);
|
||
DataView dv = ds.Tables[0].DefaultView;
|
||
|
||
if (ds.Tables[0].DefaultView.Count > 0)
|
||
{
|
||
|
||
cs = new CScan(Convert.ToInt16(dv[0]["F_SerialPort"]), Convert.ToString(dv[0]["F_CommSettings"]));
|
||
if (Order == 1)//触发扫描
|
||
{
|
||
if (cs.StartSession() == true)
|
||
{
|
||
cs.StopScan();
|
||
return true;
|
||
}
|
||
else
|
||
{
|
||
cs.StopScan();
|
||
return false;
|
||
}
|
||
}
|
||
else//停止触发
|
||
{
|
||
if (cs.StopSession() == true)
|
||
{
|
||
cs.StopScan();
|
||
return true;
|
||
}
|
||
else
|
||
{
|
||
cs.StopScan();
|
||
return false;
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
{
|
||
|
||
return false;
|
||
}
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
_commLayerError = "Symbol3204:SendDeviceOrder---" + ex.Message;
|
||
return false;
|
||
}
|
||
}
|
||
public bool SendDeviceOrder(int MessageIndex, int TaskIndex, int Order, int DeviceIndex, int StartX, int StartY, int StartZ, int EndX, int EndY, int EndZ)
|
||
{
|
||
try
|
||
{
|
||
CScan cs;
|
||
//根据DeviceIndex,得到串口号和初始设置
|
||
|
||
DataSet ds = dbo.ExceSQL("SELECT F_DeviceIndex, F_CommSettings, F_SerialPort FROM T_Base_Device where F_DeviceIndex=" + DeviceIndex);
|
||
DataView dv = ds.Tables[0].DefaultView;
|
||
|
||
if (ds.Tables[0].DefaultView.Count > 0)
|
||
{
|
||
|
||
cs = new CScan(Convert.ToInt16(dv[0]["F_SerialPort"]), Convert.ToString(dv[0]["F_CommSettings"]));
|
||
if (Order == 1)//触发扫描
|
||
{
|
||
if (cs.StartSession() == true)
|
||
{
|
||
cs.StopScan();
|
||
return true;
|
||
}
|
||
else
|
||
{
|
||
cs.StopScan();
|
||
return false;
|
||
}
|
||
}
|
||
else//停止触发
|
||
{
|
||
if (cs.StopSession() == true)
|
||
{
|
||
cs.StopScan();
|
||
return true;
|
||
}
|
||
else
|
||
{
|
||
cs.StopScan();
|
||
return false;
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
|
||
return false;
|
||
}
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
_commLayerError = "Symbol3204:SendDeviceOrder---" + ex.Message;
|
||
return false;
|
||
}
|
||
}
|
||
|
||
}
|
||
}
|