public static HandleResultModel EnterLibHandle(string xmlValue)
 {
     try
     {
         HandleResultModel model  = new HandleResultModel();
         XmlDocument       xmlDoc = new XmlDocument();
         xmlDoc.LoadXml(xmlValue);
         XmlNode node = xmlDoc.SelectSingleNode("//ReaderInfo/ReaderNo");
         model.CardNo       = node.InnerText;
         node               = xmlDoc.SelectSingleNode("//ReaderInfo/NowStatus");
         model.NowStatus    = node.InnerText;
         node               = xmlDoc.SelectSingleNode("//ReaderInfo/BeforeStatus");
         model.BeforeStatus = node.InnerText;
         node               = xmlDoc.SelectSingleNode("//ReaderInfo/Error");
         model.Error        = node.InnerText;
         return(model);
     }
     catch (Exception EX)
     {
         throw new Exception("解析结果失败,可能是接口程序返回了一个不正常的结果。错误信息为:" + EX.Message);
     }
     //    <ReaderInfo>
     //<ReaderNo>{0}</ReaderNo>  --读者学号
     //<ReaderName>{1}</ReaderName> --读者姓名
     //<NowStatus>{2}</NowStatus>  --处理后(当前)的读者状态(详见最后附录)
     //<BeforeStatus>{3}</BeforeStatus> --处理前的状态(详见最后附录)
     //<Error>{4}</Error> --错误信息(正常为空值)
     //</ReaderInfo>
 }
        /// <summary>
        /// 刷卡数据处理函数
        /// </summary>
        private void HandPosData()
        {
            int ivalidMinutes = -1;

            if (!string.IsNullOrEmpty(validMinutes))
            {
                ivalidMinutes = int.Parse(validMinutes);
            }
            else
            {
                ivalidMinutes = int.MaxValue;
            }


            List <AccessModelLog> posDataModels = PosDataMiddleTableHandler.MiddleTableHandler_New.GetModels(ivalidMinutes);//获取还没处理的刷卡数据,参数表示有效时间(分钟)

            PostProgress("新进馆" + posDataModels.Count + "人,开始处理");
            for (int i = 0; i < posDataModels.Count; i++)//遍历获取到的刷卡数据列表
            {
                AccessModelLog model = posDataModels[i];
                TimeSpan       ts    = DateTime.Now - model.VisitTime;

                //如果读者学号不存在,跳过,不做处理
                if (string.IsNullOrEmpty(model.CardNo))
                {
                    continue;
                }

                if (true)//model.CardNo == "reader" || model.CardNo == "7302" || model.CardNo == "7607")
                {
                    //判断是否处理,是否为入馆通道,有效时间。
                    if (!model.HandleFlag && ts.TotalMinutes < ivalidMinutes)
                    {
                        string strResult = "";
                        try
                        {//调用通道机的处理接口,并记录返回结果
                            if (model.Enter == EnterState.Enter)
                            {
                                strResult = eg.EnterLib(model.CardNo);
                                SeatManage.SeatManageComm.WriteLog.Write("处理读者" + model.CardNo + "进馆处理");
                                PostProgress("处理读者" + model.CardNo + "进馆处理");
                            }
                            else
                            {
                                strResult = eg.OutLib(model.CardNo);
                                SeatManage.SeatManageComm.WriteLog.Write("处理读者" + model.CardNo + "出馆处理");
                                PostProgress("处理读者" + model.CardNo + "出馆处理");
                            }
                        }
                        catch (Exception ex)
                        {
                            SeatManage.SeatManageComm.WriteLog.Write(string.Format("处理失败,记录Id:{0}  错误信息:{1}", model.ID, ex.ToString()));
                            PostProgress(string.Format("处理失败,记录Id:{0}  错误信息:{1}", model.ID, ex.Message));
                            break;
                        }
                        try
                        {
                            //解析返回结果
                            HandleResultModel result = WebServiceReturnValueHandler.EnterLibHandle(strResult);
                            if (!string.IsNullOrEmpty(result.Error))
                            {//如果不为空,则说明处理错误
                                SeatManage.SeatManageComm.WriteLog.Write(string.Format("处理错误,记录Id:{0}  错误信息:{1}", model.ID, result.Error));
                                PostProgress(string.Format("处理错误,记录Id:{0}  错误信息:{1}", model.ID, result.Error));
                            }
                            else
                            {   //否则标识已经处理完成。
                                PosDataMiddleTableHandler.MiddleTableHandler_New.Update(model);
                            }
                        }
                        catch (Exception ex)
                        {
                            SeatManage.SeatManageComm.WriteLog.Write(ex.Message);
                            PostProgress(ex.ToString());
                            break;
                        }
                    }
                }
                else
                {
                    PostProgress("测试:只处理7302,7607,和reader的记录");
                }
            }
        }