Beispiel #1
0
        public void HandleMsg(string strMsg)
        {
            string CommandID = XmlUtil.XmlAnalysis("CommandID", strMsg);

            if (CommandID != "ShakeHand")
            {
                LogHelper.WriteNetMsgLog("Recieve BServer message:" + strMsg);
            }
            switch (CommandID)
            {
            case "ShakeHand":
                ShakeHand ShakeHand = (ShakeHand)XmlUtil.Deserialize(typeof(ShakeHand), strMsg);
                if (ShakeHand.TLX == "BSS")
                {
                    HandleSharkHandleMsg(ShakeHand);
                }
                break;

            case "CommonInterface":
                CommonInterface Common = (CommonInterface)XmlUtil.Deserialize(typeof(CommonInterface), strMsg);
                OnMessageChange(Common);
                break;

            case "DispatchTaskSelectData":
                DispatchTaskSelectData SelectData = (DispatchTaskSelectData)XmlUtil.Deserialize(typeof(DispatchTaskSelectData), strMsg);
                //SelectData.DWBH = ConfigurationManager.AppSettings["UnitCode"].Trim();
                OnMessageChange(SelectData);
                break;

            case "GetVehiclePositionResp":
                GetVehiclePositionResp VehiclePositionResp = (GetVehiclePositionResp)XmlUtil.Deserialize(typeof(GetVehiclePositionResp), strMsg);
                OnMessageChange(VehiclePositionResp);
                break;

            case "MonitorData":
                MonitorData MonitorData = (MonitorData)XmlUtil.Deserialize(typeof(MonitorData), strMsg);
                OnMessageChange(MonitorData);
                break;

            case "VehicleStatus":
                VehicleStatus VehicleStatus = (VehicleStatus)XmlUtil.Deserialize(typeof(VehicleStatus), strMsg);
                //VehicleStatus.DWBH = ConfigurationManager.AppSettings["UnitCode"].Trim();
                OnMessageChange(VehicleStatus);
                break;

            case "DispatchTaskRequestReinforcementResp":
                DispatchTaskRequestReinforcementResp DispatchTaskResp = (DispatchTaskRequestReinforcementResp)XmlUtil.Deserialize(typeof(DispatchTaskRequestReinforcementResp), strMsg);
                OnMessageChange(DispatchTaskResp);
                break;

            default:
                break;
            }
        }
Beispiel #2
0
        private void OnMessageChange(object obj)
        {
            try
            {
                ExchangeServer es   = Controller.GetInstance().es;
                string         Name = obj.GetType().Name;
                string         xml  = "";
                switch (Name)
                {
                case "MonitorData":
                    MonitorData md = obj as MonitorData;
                    xml = XmlUtil.Serializer(md.GetType(), md);
                    es.SendMessage(xml);
                    break;

                case "DispatchTaskSelectData":
                    DispatchTaskSelectData SelectData = obj as DispatchTaskSelectData;
                    xml = XmlUtil.Serializer(SelectData.GetType(), SelectData);
                    es.SendMessage(xml);
                    break;

                case "DispatchTaskNoAnswer":
                    DispatchTaskNoAnswer NoAnswer = obj as DispatchTaskNoAnswer;
                    xml = XmlUtil.Serializer(NoAnswer.GetType(), NoAnswer);
                    es.SendMessage(xml);
                    break;

                case "SubCenterState":
                    SubCenterState State = obj as SubCenterState;
                    xml = XmlUtil.Serializer(State.GetType(), State);
                    //es.SendNotLogMessage(xml);
                    break;

                case "CommonInterface":
                    CommonInterface Common = obj as CommonInterface;
                    xml = XmlUtil.Serializer(Common.GetType(), Common);
                    es.SendMessage(xml);
                    break;

                case "GetVehiclePositionResp":
                    GetVehiclePositionResp PositionResp = obj as GetVehiclePositionResp;
                    xml = XmlUtil.Serializer(PositionResp.GetType(), PositionResp);
                    es.SendMessage(xml);
                    break;

                case "ShakeHand":
                    ShakeHand ShakeHand = obj as ShakeHand;
                    xml = XmlUtil.Serializer(ShakeHand.GetType(), ShakeHand);
                    // es.SendNotLogMessage(xml);
                    break;

                case "DispatchTaskRequestReinforcementResp":
                    DispatchTaskRequestReinforcementResp Resp = obj as DispatchTaskRequestReinforcementResp;
                    xml = XmlUtil.Serializer(Resp.GetType(), Resp);
                    es.SendMessage(xml);
                    break;

                case "VehicleStatus":
                    VehicleStatus Status = obj as VehicleStatus;
                    xml = XmlUtil.Serializer(Status.GetType(), Status);
                    es.SendMessage(xml);
                    break;

                default:
                    break;
                }
            }
            catch (Exception ex) { throw ex; }
        }