public void DealWithPacket(Packet receivedPacket, AllEventViews allEventViews) { string cmd = StringFromByteArr(receivedPacket.PacketRaw); string[] s = cmd.Split(','); if (s.Count() >= 2) { switch (s[0]) { case "chipid": this.ChipId = Convert.ToInt32(s[1]); this.BindToEventView(allEventViews); break; case "timerstatus": this.Status = (TimerView.TimerStatus)Convert.ToInt32(s[1]); this.Time_used = new TimeSpan(Convert.ToInt64(s[3]) / 1000 * 10000000); break; default: break; } } }
public void OnTimerDisconnect(INetworkSocket socket, AllEventViews allEventViews) { TimerView timerView = FindTimerViewByIpaddress(socket.IPInfo.IPAddress); timerView.UnBindToEventView(); this.list.Remove(timerView);//去掉Timer列表里的项目 }
public void ChangeEventRegister(int eventId, AllEventViews allEventViews) { UnBindToEventView(); EventView eventView = allEventViews.list.Find(t => t.EventId == eventId); eventView.RegisterChip(this.ChipId ?? 0); BindToEventView(allEventViews); }
public void BindToEventView(AllEventViews allEventViews) { EventView eventView = allEventViews.list.Find(t => t.ChipId == this.ChipId); if (eventView != null) { eventView.BindTimerView(this); } }
public void OnreceivedTimerMessage(INetworkSocket socket, Packet receivedPacket, AllEventViews allEventViews) { TimerView timerView = FindTimerViewByIpaddress(socket.IPInfo.IPAddress); timerView.DealWithPacket(receivedPacket, allEventViews); }