/// <summary>
        /// 微信消息发送接口
        /// </summary>
        /// <param name="msg"></param>
        private void weixinNoticeSend(SocketMsgData.SocketRequest msg)
        {
            try
            {
                Console.WriteLine("推送微信消息");
                //Console.WriteLine("{0:M} {1:t}:推送微信消息", DateTime.Now, DateTime.Now );
                if (msg != null)
                {
                    try
                    {
                        SeatManage.ClassModel.WeiXinBaseMsg weixinMsg = msg.Parameters[0] as SeatManage.ClassModel.WeiXinBaseMsg;
                        string weixinId = AMS.ServiceProxy.WeiXinProxy.GetReaderWeixinIdByCardNo(weixinMsg.CardNum, weixinMsg.SchoolNum);

                        if (string.IsNullOrEmpty(weixinId))//如果微信Id为null,则程序终止
                        {
                            return;
                        }
                        WeiXinJK.Model.WeiXinJsonTxtMessage json = new WeiXinJK.Model.WeiXinJsonTxtMessage(weixinId, weixinMsg.ToString());

                        string weiXinMsgSendUrl = System.Configuration.ConfigurationManager.AppSettings["weiXinMsgSendUrl"];
                        string strjson          = json.Getmess();
                        Console.WriteLine("{0:M} {1:t}:推送微信消息{2}", DateTime.Now, DateTime.Now, strjson);
                        SeatManage.SeatManageComm.HttpRequest.Post(weiXinMsgSendUrl, strjson);
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                }
            }
            catch (Exception ex)
            {
                SeatManage.SeatManageComm.WriteLog.Write(string.Format("weixinNoticeSend执行失败:{0},异常来自:{1}", ex.Message, ex.Source));
            }
        }
        void server_OnMsgReceived(string uid, SocketMsgData.SocketMsgBase e)
        {
            try
            {
                SocketMsgData.SocketMsgBase msg = e;
                if (msg.SubSystem == SocketMsgData.TcpSeatManageSubSystem.SocketClient && msg.MsgType == SocketMsgData.TcpMsgDataType.ClientToken)
                {
                    if (schoolNums.ContainsKey(msg.Sender))
                    {
                        schoolNums[msg.Sender] = uid;
                    }
                    else
                    {
                        schoolNums.Add(msg.Sender, uid);
                    }
                    Console.WriteLine("{0:M} {1:t}:学校{2}已建立连接", DateTime.Now, DateTime.Now, msg.Sender);
                    SeatManage.SeatManageComm.WriteLog.Write(schoolLinkLog, string.Format("学校{0}已连接,Ip地址:{1}", msg.Sender, uid));
                    if (OnSchoolConnectionHandler != null)
                    {
                        OnSchoolConnectionHandler(msg.Sender, uid);
                    }
                }
                else
                {
                    if (OnReceivedMsg != null)
                    {
                        OnReceivedMsg(msg);
                    }
                    switch (msg.MsgType)
                    {
                    case TcpMsgDataType.Relay:
                        RelaySocketMsg(uid, msg);
                        break;

                    case TcpMsgDataType.WeiXinNotice:
                        SocketMsgData.SocketRequest request = msg as SocketMsgData.SocketRequest;
                        weixinNoticeSend(request);
                        break;
                    }
                }
            }
            catch (Exception ex)
            {
                SeatManage.SeatManageComm.WriteLog.Write(string.Format("消息处理失败:{0},异常来自:{1}", ex.Message, ex.Source));
            }
        }