/// <summary> /// Serial数据接收 /// </summary> /// <param name="device"></param> /// <param name="dataB"></param> /// <param name="dataS"></param> public void SerialReceive(Common.SerialDevice device, byte[] dataB, string dataS) { Config.SerialItem item = this.GetConfig(device); if (item.IsHex) { item.BuffReceive = Common.ByteArrayToHexString(dataB); } else { item.BuffReceive = dataS; } switch (item.SerialDevice) { default: item.Value = item.BuffReceive; item.Reset.Set(); business kylin = SystemHandle.Instance.GetMachineKylin(item.MachineID); if (kylin != null) { // kylin.SerialReceive(device, dataS, dataB); this.Async_SerialReceive(kylin, device, dataB, dataS); } break; case Common.SerialDevice.TEST: break; } }
///// <summary> ///// 获取站号 ///// </summary> ///// <param name="machine"></param> ///// <returns></returns> //public string GetStationID(string machine) //{ // IEnumerable ie = from lst in this.Config.MachineItems // where lst.MachineID == machine // select lst; // List<Config.MachineItem> ioLst = ie.Cast<Config.MachineItem>().ToList(); // if (ioLst.Count > 0) // return ioLst[0].StationID + "" ; // else // return "0000"; //} ///// <summary> ///// 获取机台配置 ///// </summary> ///// <param name="machine"></param> ///// <returns></returns> //public Config.MachineItem GetMachineItem(string machine) //{ // IEnumerable ie = from lst in this.Config.MachineItems // where lst.MachineID == machine // select lst; // List<Config.MachineItem> ioLst = ie.Cast<Config.MachineItem>().ToList(); // if (ioLst.Count > 0) // return ioLst[0]; // else // return null; //} ///// <summary> ///// 获取机台配置(多) ///// </summary> ///// <param name="active"></param> ///// <returns></returns> //public List<Config.MachineItem> GetMachineItems(bool active) //{ // IEnumerable ie = from lst in this.Config.MachineItems // where lst.IsActive == active // select lst; // List<Config.MachineItem> ioLst = ie.Cast<Config.MachineItem>().ToList(); // return ioLst; //} /// <summary> /// 获取机台Kylin业务 /// </summary> /// <param name="machine"></param> /// <returns></returns> public Logic.business GetMachineKylin(string machine) { business kylin = null; switch (machine) { case "01": kylin = business01.Instance; break; case "02": kylin = business02.Instance; break; } return(kylin); }
public void Async_SerialReceive(business business, Common.SerialDevice device, byte[] dataB, string dataS) { delegate_serial_receive rece = new delegate_serial_receive(business.SerialReceive); rece.BeginInvoke(device, dataS, dataB, null, rece); }