123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193 |
-
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace YG.Device
- {
- /// <summary>
- /// 设备状态
- /// </summary>
- public enum DeviceState
- {
- /// <summary>
- /// 运行中
- /// </summary>
- Runing,
- /// <summary>
- /// 准备就绪
- /// </summary>
- Start,
- /// <summary>
- /// 停止
- /// </summary>
- Stop,
- }
- /// <summary>
- /// 发送状态
- /// </summary>
- public enum SendState
- {
- /// <summary>
- /// 准备发送
- /// </summary>
- StartSend,
- /// <summary>
- /// 发送了请求,没有回应
- /// </summary>
- SendNoReceive,
- /// <summary>
- /// 已回应
- /// </summary>
- Received
- }
- interface InterfacleDevice
- {
- /// <summary>
- /// 初始化设备
- /// </summary>
- void DeviceInit();
- /// <summary>
- /// 打开设备
- /// </summary>
- void DeviceOpen();
- /// <summary>
- /// 关闭设备
- /// </summary>
- void DeviceClose();
- /// <summary>
- /// 设备检测
- /// </summary>
- void DeviceCheck();
- void DeviceStart();
- }
- public abstract class DeviceList : InterfacleDevice
- {
- /// <summary>
- /// 设备类型
- /// </summary>
- public DeviceType Dtype { get; set; } = DeviceType.其他;
- /// <summary>
- /// 设备运行状态
- /// </summary>
- /// <param name="enumDeviceList"></param>
- /// <param name="ison"></param>
- public delegate void RunState(string enumDeviceList, bool ison);
- /// <summary>
- /// 设备运行状态
- /// </summary>
- public virtual event RunState rState;
- /// <summary>
- /// 接受设备反馈指令
- /// </summary>
- /// <param name="obje1"></param>
- /// <param name="obje2"></param>
- /// <param name="obje3"></param>
- public delegate void RunMessage(string obje1,string obje2, string obje3);
- public virtual object Clone()
- {
- return this.MemberwiseClone();
- }
- /// <summary>
- /// 设备正常运行
- /// </summary>
- public virtual bool IsOn { get; set; }
- /// <summary>
- /// 事件
- /// </summary>
- public virtual event RunMessage Msg;
- /// <summary>
- /// 超时时间
- /// </summary>
- public int timeout { get; set; } = 2500;
- /// <summary>
- /// 发送的内容
- /// </summary>
- public string SendValue { get; set; } = "";
- public DeviceList(string name)
- {
- DeviceName = name;
- }
- public DeviceList()
- {
- DeviceName = "";
- }
- /// <summary>
- /// 设备名称
- /// </summary>
- public virtual string DeviceName { get; set; }
- public virtual string ServerUrl { get; set; }
- public virtual string Ip { get; set; }
- public virtual string ReadType { get; set; }
- public virtual void DeviceClose()
- {
- Console.WriteLine(this.DeviceName+DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff") + this.DeviceName + "关闭");
- if (Msg != null)
- {
- Msg(this.DeviceName,"", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff")+ this.DeviceName + "关闭");
- }
- }
- public virtual void DeviceInit() {
- Console.WriteLine(this.DeviceName+DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff") + this.DeviceName + "初始化");
- if (Msg != null)
- {
- Msg(this.DeviceName,"", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff") + this.DeviceName + "初始化");
- }
- }
- public virtual T DeviceRead<T>(string value,ushort leng=0)
- {
- return default(T);
- }
- public virtual void DeviceOpen() {
- Console.WriteLine(this.DeviceName+DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff") + this.DeviceName + "打开");
- if (Msg != null)
- {
- Msg(this.DeviceName,"",DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff") + this.DeviceName + "打开");
- }
- }
- /// <summary>
- /// 设备运行状态
- /// </summary>
-
- public virtual void DeviceSend(object ob)
- {
- Console.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff") + this.DeviceName + "发送一次数据");
- Log.Instance.WriteLogAdd(this.DeviceName + "发送一次数据"+ob.ToString());
- if (Msg != null)
- {
- Msg(this.DeviceName, ob.ToString(), DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff") + this.DeviceName + "发送一次数据");
- }
- }
- public virtual void DeviceSend(object ob, object ob1)
- {
- Console.WriteLine(this.DeviceName+DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff") + ob.ToString()+" "+ob1.ToString());
- }
- public virtual void DeviceSend(object ob, object ob1,string readType)
- {
- Console.WriteLine(this.DeviceName + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff") + ob.ToString() + " " + ob1.ToString());
- }
- public virtual void DeviceCheck() { }
- public virtual void PrintMsg()
- {
-
- }
- public virtual void DeviceStart() { }
- public virtual void DeviceState()
- { }
-
- }
- }
|