Пример #1
0
        public static int ExecTransaction(ITransactior tran)
        {
            try
            {
                string tranData = tran.GetTranData();
                System.Console.Out.WriteLine("DataServices.ExecTransaction Xml=" + tranData);
                if (tranData != null && !tranData.Equals(""))
                {
                    InParams  inparams  = SDPClient.NewInParams();
                    OutParams outparams = SDPClient.NewOutParams();

                    inparams.SetRequestBody("ServiceName", "DataServices");
                    inparams.SetRequestBody("ServiceItem", "ExecTransaction");
                    inparams.SetRequestBody("TranType", tran.TranType);
                    inparams.SetRequestBody("TranData", tranData);
                    inparams.SetRequestBody("UpdateCheckType", (int)tran.UpdateCheckType);
                    inparams.SetRequestBody("AutoUpdateLob", "1");

                    SDPClient.CallService(inparams, outparams);

                    return(outparams.GetIntParamValue("UpdateRows"));
                }
                else
                {
                    return(0);
                }
            }
            catch (Exception e)
            {
                System.Console.Out.WriteLine("DataServices.ExecTransaction Exception: {0}", e);
                throw new TransactionException("保存数据失败!", e);
            }
        }
Пример #2
0
        public static bool LoadData(DataTable table, string rulename, string paramvalue, string pageinfo, string defwhere, string dsname)
        {
            try
            {
                InParams  inparams  = SDPClient.NewInParams();
                OutParams outparams = SDPClient.NewOutParams();

                inparams.SetRequestBody("ServiceName", "DataServices");
                inparams.SetRequestBody("ServiceItem", "LoadData");
                inparams.SetRequestBody("RuleName", rulename);
                inparams.SetRequestBody("DefWhere", defwhere);
                inparams.SetRequestBody("PageInfo", pageinfo);
                inparams.SetRequestBody("DataSource", dsname);
                inparams.SetRequestParams(paramvalue);

                SDPClient.CallService(inparams, outparams);

                DataTable resultTable = outparams.GetTableParam(rulename).GetDataTableValue();
                if (table.Columns.Count <= 0)
                {
                    DataUtil.InitTableSchemaFromDataRule(table, rulename);
                }

                return(DataUtil.CopyTable(resultTable, table));
            }
            catch (Exception e)
            {
                System.Console.Out.WriteLine("DataServices.LoadData Exception: {0}", e);
                throw e;
            }
        }
Пример #3
0
        public static String CallCursorStoreProcExt(DataTable table, String procname, String paramvalue, String dsname)
        {
            try
            {
                InParams  inparams  = SDPClient.NewInParams();
                OutParams outparams = SDPClient.NewOutParams();

                inparams.SetRequestBody("ServiceName", "DataServices");
                inparams.SetRequestBody("ServiceItem", "CallStoreProc");
                inparams.SetRequestBody("StoreProcType", "CursorStoreProcExt");
                inparams.SetRequestBody("StoreProcName", procname);
                inparams.SetRequestBody("DataSource", dsname);
                inparams.SetRequestParams(paramvalue);

                SDPClient.CallService(inparams, outparams);

                DataTable resulttable = outparams.GetTableParamValue(0);
                DataUtil.CopyTable(resulttable, table);

                return(outparams.GetStrParamValue("Result"));
            }
            catch (Exception e)
            {
                System.Console.Out.WriteLine("DataServices.CallCursorStoreProcExt Exception: {0}", e);
                throw e;
            }
        }
Пример #4
0
        public static DataRule LoadDataInfo(DataTable table, String rulename, String paramvalue, String pageinfo, String defwhere, String dsname)
        {
            try
            {
                InParams  inparams  = SDPClient.NewInParams();
                OutParams outparams = SDPClient.NewOutParams();

                inparams.SetRequestBody("ServiceName", "DataServices");
                inparams.SetRequestBody("ServiceItem", "LoadDataInfo");
                inparams.SetRequestBody("RuleName", rulename);
                inparams.SetRequestBody("DefWhere", defwhere);
                inparams.SetRequestBody("PageInfo", pageinfo);
                inparams.SetRequestBody("DataSource", dsname);
                inparams.SetRequestParams(paramvalue);

                SDPClient.CallService(inparams, outparams);

                DataRule rule = new DataRule(rulename, outparams);
                SystemContext.RuleManager.AppendDataRule(rule);

                DataTable resulttable = outparams.GetTableParam(rulename).GetDataTableValue();

                DataUtil.InitTableSchemaFromDataRule(table, rule);

                DataUtil.CopyTable(resulttable, table);

                return(rule);
            }
            catch (Exception e)
            {
                System.Console.Out.WriteLine("DataServices.LoadDataInfo Exception: {0}", e);
                throw e;
            }
        }
Пример #5
0
 //根据车场id和时间查询人员记录
 public string QuerytgPersonInfo()
 {
     try
     {
         InParams paras = new InParams
         {
             ParkingID = Request.Params["parkingid"],
             StartTime = DateTime.Parse(Request.Params["starttime"]),
             EndTime   = DateTime.Parse(Request.Params["endtime"]),
         };
         int           page       = string.IsNullOrEmpty(Request.Params["page"]) ? 0 : int.Parse(Request.Params["page"]);
         int           rows       = string.IsNullOrEmpty(Request.Params["rows"]) ? 0 : int.Parse(Request.Params["rows"]);
         Pagination    pagination = tgPersonServices.Search_DailyStatistics(paras, rows, page);
         StringBuilder sb         = new StringBuilder();
         sb.Append("{");
         sb.Append("\"total\":" + pagination.Total + ",");
         sb.Append("\"rows\":" + JsonHelper.GetJsonString(pagination.StatisticsGatherList) + ",");
         sb.Append("\"index\":" + rows);
         sb.Append("}");
         return(sb.ToString());
     }
     catch
     {
         return(string.Empty);
     }
 }
Пример #6
0
        public int CountTgPersonOrderCount(InParams paras)
        {
            int    _total = 0;
            string strSql = " select count(1) Count from (select PersonId,PKID from TgOrder where 1=1  ";

            if (!string.IsNullOrEmpty(paras.ParkingID))
            {
                strSql += " and PKID=@PKID";
            }
            if (paras.StartTime != null)
            {
                strSql += " and RealPayTime>=@StartTime";
            }
            if (paras.EndTime != null)
            {
                strSql += " and RealPayTime<@EndTime";
            }
            strSql += " group by PersonId,PKID) a ";
            using (DbOperator dboperator = ConnectionManager.CreateReadConnection())
            {
                dboperator.ClearParameters();
                dboperator.AddParameter("PKID", paras.ParkingID);
                dboperator.AddParameter("StartTime", paras.StartTime);
                dboperator.AddParameter("EndTime", paras.EndTime);
                using (DbDataReader dr = dboperator.ExecuteReader(strSql))
                {
                    if (dr.Read())
                    {
                        _total = int.Parse(dr["Count"].ToString());
                    }
                }
            }
            return(_total);
        }
Пример #7
0
        public static List <TgOrder> QueryAllCountTgPersonOrder(InParams paras)
        {
            ITgOrder       factory = TgOrderFactory.GetFactory();
            List <TgOrder> result  = factory.QueryAllCountTgPersonOrder(paras);

            return(result);
        }
Пример #8
0
        public static InParams NewInParams(string reqType, string proCode)
        {
            InParams inparams = new InParams();

            SystemConfig sc = SystemContext.SysConfig;

            //if (proCode != null && proCode.Equals(""))
            //    proCode = sc.ProCode;

            if (proCode == null || proCode.Equals(""))
            {
                proCode = sc.ProCode;
            }

            inparams.SetRequestType(reqType);

            inparams.SetRequestHead("ProCode", proCode != null ? proCode : "");

            inparams.SetRequestHead("LinkIP", NetUtil.GetLocalIP());
            inparams.SetRequestHead("Computer", ComputerUtil.ComputerName);

            inparams.SetRequestHead("LoginID", SystemContext.LoginId);

            inparams.SetRequestHead("IsDebug", sc.IsDebug ? "1" : "0");
            inparams.SetRequestHead("CompressResponse", sc.IsCompressResponse ? "1" : "0");

            return(inparams);
        }
Пример #9
0
        /// <summary>
        /// 推广人员数量
        /// </summary>
        /// <param name="ParkingID">车场编号</param>
        /// <param name="StartTime">开始时间</param>
        /// <param name="EndTime">结束时间</param>
        /// <returns></returns>
        public int Search_tgPersonStatisticsCount(InParams paras)
        {
            int    _total = 0;
            string strSql = "select count(1) Count from PersonTg  where 1=1";

            if (!string.IsNullOrEmpty(paras.ParkingID))
            {
                strSql += " and s.parkingid=@ParkingID";
            }
            if (paras.StartTime != null)
            {
                strSql += " and s.gathertime>=@StartTime";
            }
            if (paras.EndTime != null)
            {
                strSql += " and s.gathertime<@EndTime";
            }
            using (DbOperator dboperator = ConnectionManager.CreateReadConnection())
            {
                dboperator.ClearParameters();
                dboperator.AddParameter("ParkingID", paras.ParkingID);
                dboperator.AddParameter("StartTime", paras.StartTime);
                dboperator.AddParameter("EndTime", paras.EndTime);
                using (DbDataReader dr = dboperator.ExecuteReader(strSql))
                {
                    if (dr.Read())
                    {
                        _total = int.Parse(dr["Count"].ToString());
                    }
                }
            }
            return(_total);
        }
Пример #10
0
        /// <summary>
        /// 推广人员数据
        /// </summary>
        /// <param name="ParkingID">车场编号</param>
        /// <param name="StartTime">开始时间</param>
        /// <param name="EndTime">结束时间</param>
        /// <param name="PageSize">每页显示数</param>
        /// <param name="PageIndex">当前页</param>
        /// <returns></returns>
        public List <tgPerson> Search_tgPersonStatistics(InParams paras, int PageSize, int PageIndex)
        {
            List <tgPerson> statisticstgPersonlist = new List <tgPerson>();
            string          strSql = "select top " + PageSize + " temp.* from ( select top " + PageIndex * PageSize + " * from PersonTg where 1=1";

            if (!string.IsNullOrEmpty(paras.ParkingID))
            {
                strSql += " and s.parkingid=@ParkingID";
            }
            if (paras.StartTime != null)
            {
                strSql += " and s.gathertime>=@StartTime";
            }
            if (paras.EndTime != null)
            {
                strSql += " and s.gathertime<@EndTime";
            }
            using (DbOperator dboperator = ConnectionManager.CreateReadConnection())
            {
                dboperator.ClearParameters();
                dboperator.AddParameter("ParkingID", paras.ParkingID);
                dboperator.AddParameter("StartTime", paras.StartTime);
                dboperator.AddParameter("EndTime", paras.EndTime);
                using (DbDataReader dr = dboperator.ExecuteReader(strSql))
                {
                    while (dr.Read())
                    {
                        statisticstgPersonlist.Add(DataReaderToModel <tgPerson> .ToModel(dr));
                    }
                }
            }
            return(statisticstgPersonlist);
        }
Пример #11
0
        /// <summary>
        /// 车牌前缀查询
        /// </summary>
        /// <param name="paras">输入参数</param>
        /// <returns></returns>
        public static List <PlateNumberPrefixModel> Search_PlateNumberPrefix(InParams paras)
        {
            List <PlateNumberPrefixModel> iorecordlist = new List <PlateNumberPrefixModel>();
            IStatistics factory = StatisticsFactory.GetFactory();

            iorecordlist = factory.Search_PlateNumberPrefix(paras);

            BaseParkinfo park  = Common.Services.ParkingServices.QueryParkingByParkingID(paras.ParkingID);
            int          total = 0;

            //处理数据
            if (iorecordlist != null && iorecordlist.Count > 0)
            {
                total = iorecordlist.Select(u => u.Number).Sum();
                foreach (var record in iorecordlist)
                {
                    if (park != null)
                    {
                        record.ParkingName = park.PKName;
                    }
                    record.Rate = ((record.Number / (total * 1.0)) * 100).ToString("0.00") + "%";
                }
            }
            return(iorecordlist);
        }
Пример #12
0
        public void init(InParams inParams)
        {
            if (viewType == ViewType.Setup)
            {
                phaseDisplay = PhaseDisplayType.All;
            }
            else if (viewType == ViewType.Time)
            {
                phaseDisplay = PhaseDisplayType.UpperLower;
            }
            else if (inParams.runMode == RunModeType.LowerPhase)
            {
                phaseDisplay = PhaseDisplayType.All;
            }
            else if (inParams.runMode == RunModeType.UpperPhase)
            {
                phaseDisplay = PhaseDisplayType.All;
            }
            else
            {
                phaseDisplay = PhaseDisplayType.UpperLowerTime;
            }

            syncScales    = (inParams.runMode == RunModeType.CoCurrent);
            peaksDisplay  = PeaksDisplayType.PeaksSum;
            yScale        = YScaleType.Automatic;
            exponentType  = ExponentType.Exponents;
            viewUnits     = inParams.viewUnits;
            showProbUnits = (inParams.model == ModelType.Probabilistic && viewType != ViewType.Setup);
            autoZoom      = true;
            update(inParams);
        }
Пример #13
0
        public static Pagination Search_MonthCardInfo(InParams paras, int PageSize, int PageIndex)
        {
            Pagination  _pagination = new Pagination();
            IStatistics factory     = StatisticsFactory.GetFactory();

            _pagination.Total = factory.Search_MonthCardInfoCount(paras);
            List <MonthCardInfoModel> iorecordlist = factory.Search_MonthCardInfo(paras, PageSize, PageIndex);

            if (iorecordlist != null && iorecordlist.Count > 0)
            {
                foreach (var m in iorecordlist)
                {
                    if (m.StartTime > DateTime.MinValue)
                    {
                        m.strStartTime = m.StartTime.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    if (m.EndTime > DateTime.MinValue)
                    {
                        m.strEndTime = m.EndTime.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                }
            }
            _pagination.MonthCardList = iorecordlist;
            return(_pagination);
        }
Пример #14
0
        /// <summary>
        /// 获得临停缴费记录
        /// </summary>
        /// <param name="paras">输入参数</param>
        /// <returns></returns>
        public static List <ParkOrder> Search_TempPays(InParams paras)
        {
            IStatistics      factory = StatisticsFactory.GetFactory();
            List <ParkOrder> temp    = factory.Search_TempPays(paras);

            ParkOrderFormat(temp);
            return(temp);
        }
Пример #15
0
        private void button_refreshServer_Click(object sender, EventArgs e)
        {
            InParams  inparams  = SDPClient.NewInParams("SystemEnter");
            OutParams outparams = SDPClient.NewOutParams();

            inparams.SetServiceName("RefreshServices");

            CallService(inparams, outparams);
        }
Пример #16
0
        // If your activity returns a value, derive from CodeActivity<TResult>
        // and return the value from the Execute method.
        protected override void Execute(CodeActivityContext context)
        {
            //TODO: реализовать пример объернутого вызова сервиса

            var cls    = Assembly.Load("WebApplication1").GetType("WebApplication1.RequestCard.RequestCardServices");
            var method = cls.GetMethod(ServiceName.Get(context));

            Result.Set(context, (TOut)method.Invoke(null, InParams.Get(context)));
        }
Пример #17
0
        /// <summary>
        /// 查询所有推广记录次数 按人员id分类
        /// </summary>
        /// <param name="paras"></param>
        /// <param name="PageSize"></param>
        /// <param name="PageIndex"></param>
        /// <returns></returns>
        public static Pagination CountTgPersonOrder(InParams paras, int PageSize, int PageIndex)
        {
            Pagination _pagination = new Pagination();
            ITgOrder   factory     = TgOrderFactory.GetFactory();

            _pagination.Total = factory.CountTgPersonOrderCount(paras);
            _pagination.StatisticsTgOrderList = factory.CountTgPersonOrder(paras, PageSize, PageIndex);
            return(_pagination);
        }
Пример #18
0
        public static List <ParkLpPlan> Search_ParkLpPlan(InParams paras, int PageSize, int PageIndex, ref int pagecount)
        {
            IParkLpPlan factory = ParkLpPlanFactory.GetFactory();

            pagecount = factory.Search_ParkLpPlansCount(paras);
            List <ParkLpPlan> list = factory.Search_ParkLpPlans(paras, PageSize, PageIndex);

            return(list);
        }
Пример #19
0
        private void button_refreshProj_Click(object sender, EventArgs e)
        {
            InParams  inparams  = SDPClient.NewInParams(comboBox_proCode.Text.Trim());
            OutParams outparams = SDPClient.NewOutParams();

            inparams.SetServiceName("RefreshServices");

            CallService(inparams, outparams);
        }
Пример #20
0
        /// <summary>
        /// 在场无牌车辆
        /// </summary>
        /// <param name="paras">输入参数</param>
        /// <returns></returns>
        public static List <ParkIORecord> Search_NoPlateNumber(InParams paras)
        {
            List <ParkIORecord> iorecordlist = new List <ParkIORecord>();
            IStatistics         factory      = StatisticsFactory.GetFactory();

            iorecordlist = factory.Search_NoPlateNumber(paras);
            IORecordFormat(iorecordlist);
            return(iorecordlist);
        }
Пример #21
0
        private void button_serverVer_Click(object sender, EventArgs e)
        {
            InParams  inparams  = SDPClient.NewInParams(null);
            OutParams outparams = SDPClient.NewOutParams();

            inparams.SetServiceName("GetSystemVersion");

            CallService(inparams, outparams);
        }
Пример #22
0
        /// <summary>
        /// 获得临停缴费记录
        /// </summary>
        /// <param name="paras">输入参数</param>
        /// <param name="PageSize">每页显示数</param>
        /// <param name="PageIndex">当前页</param>
        /// <returns></returns>
        public static Pagination Search_SellerRecharge(InParams paras, int PageSize, int PageIndex)
        {
            Pagination  _pagination = new Pagination();
            IStatistics factory     = StatisticsFactory.GetFactory();

            _pagination.Total     = factory.Search_SellerRechargeCount(paras);
            _pagination.OrderList = factory.Search_SellerRecharges(paras, PageSize, PageIndex);
            return(_pagination);
        }
Пример #23
0
        public static Pagination Search_DevConnctions(InParams paras, int PageSize, int PageIndex)
        {
            Pagination  _pagination = new Pagination();
            IStatistics factory     = StatisticsFactory.GetFactory();

            _pagination.Total         = factory.Search_DevConnectionCount(paras);
            _pagination.GateEventList = factory.Search_DevConnection(paras, PageSize, PageIndex);
            return(_pagination);
        }
Пример #24
0
        /// <summary>
        /// 获得临停缴费记录
        /// </summary>
        /// <param name="paras">输入参数</param>
        /// <param name="PageSize">每页显示数</param>
        /// <param name="PageIndex">当前页</param>
        /// <returns></returns>
        public static Pagination Search_CarDerates(InParams paras, int PageSize, int PageIndex)
        {
            Pagination  _pagination = new Pagination();
            IStatistics factory     = StatisticsFactory.GetFactory();

            _pagination.Total         = factory.Search_CarDeratesCount(paras);
            _pagination.CarDerateList = factory.Search_CarDerates(paras, PageSize, PageIndex);
            return(_pagination);
        }
Пример #25
0
        /// <summary>
        /// 获取异常放行记录
        /// </summary>
        /// <param name="paras">输入参数</param>
        /// <returns></returns>
        public static List <ParkIORecord> Search_ExceptionRelease(InParams paras)
        {
            List <ParkIORecord> iorecordlist = new List <ParkIORecord>();
            IStatistics         factory      = StatisticsFactory.GetFactory();

            iorecordlist = factory.Search_ExceptionRelease(paras);
            IORecordFormat(iorecordlist);
            return(iorecordlist);
        }
Пример #26
0
        private void button_callService_Click(object sender, EventArgs e)
        {
            InParams  inparams  = SDPClient.NewInParams(comboBox_proCode.Text.Trim());
            OutParams outparams = SDPClient.NewOutParams();

            inparams.SetRequestBody(textBox_reqBody.Text.Trim());
            inparams.SetRequestParams(textBox_reqParams.Text.Trim());

            CallService(inparams, outparams);
        }
Пример #27
0
        /// <summary>
        /// 获得月卡续期记录
        /// </summary>
        /// <param name="paras">输入参数</param>
        /// <param name="PageSize">每页显示数</param>
        /// <param name="PageIndex">当前页</param>
        /// <returns></returns>
        public static Pagination Search_CardExtension(InParams paras, int PageSize, int PageIndex)
        {
            Pagination  _pagination = new Pagination();
            IStatistics factory     = StatisticsFactory.GetFactory();

            _pagination.Total     = factory.Search_CardExtensionCount(paras);
            _pagination.OrderList = factory.Search_CardExtension(paras, PageSize, PageIndex);
            ParkOderMonthTimeLong(_pagination.OrderList);
            return(_pagination);
        }
Пример #28
0
        /// <summary>
        /// 获取小车场在场车辆记录
        /// </summary>
        /// <param name="paras"></param>
        /// <param name="PageSize"></param>
        /// <param name="PageIndex"></param>
        /// <returns></returns>
        public static Pagination Search_PresenceSmall(InParams paras, int PageSize, int PageIndex)
        {
            Pagination  _pagination = new Pagination();
            IStatistics factory     = StatisticsFactory.GetFactory();

            _pagination.Total = factory.Search_PresenceCountSmall(paras);
            List <ParkIORecord> iorecordlist = factory.Search_PresenceSmall(paras, PageSize, PageIndex);

            IORecordFormat(iorecordlist);
            _pagination.IORecordsList = iorecordlist;
            return(_pagination);
        }
Пример #29
0
        /// <summary>
        /// 获得临停缴费记录
        /// </summary>
        /// <param name="paras">输入参数</param>
        /// <param name="PageSize">每页显示数</param>
        /// <param name="PageIndex">当前页</param>
        /// <returns></returns>
        public static Pagination Search_RechargePays(InParams paras, int PageSize, int PageIndex)
        {
            Pagination  _pagination = new Pagination();
            IStatistics factory     = StatisticsFactory.GetFactory();

            _pagination.Total = factory.Search_RechargePaysCount(paras);
            List <ParkOrder> temp = factory.Search_RechargePays(paras, PageSize, PageIndex);

            ParkOrderFormat(temp);
            _pagination.OrderList = temp;
            return(_pagination);
        }
Пример #30
0
        public ActionResult GetInOutRecordData()
        {
            try
            {
                int      page  = string.IsNullOrEmpty(Request.Params["page"]) ? 0 : int.Parse(Request.Params["page"]);
                int      rows  = 15;
                InParams paras = new InParams
                {
                    ParkingID   = Request.Params["parkingid"],
                    CardType    = Request.Params["cardtypeid"],
                    CarType     = Request.Params["cartypeid"],
                    OutGateID   = "-1",
                    InGateID    = "-1",
                    OutOperator = Request.Params["exitoperatorid"],
                    ReleaseType = int.Parse(Request.Params["releasetype"]),
                    AreaID      = "-1",
                    StartTime   = DateTime.Parse(Request.Params["starttime"]),
                    EndTime     = DateTime.Parse(Request.Params["endtime"]),
                    IsExit      = int.Parse(Request.Params["isexit"]),
                    PlateNumber = Request.Params["platenumber"],
                    Owner       = Request.Params["owner"],
                    ReportType  = ReportType.InOut
                };

                Pagination pagination = StatisticsServices.Search_InOutRecords(paras, rows, page);
                var        result     = from p in pagination.IORecordsList
                                        select new
                {
                    PKName          = p.PKName,
                    PlateNumber     = p.PlateNumber,
                    CarTypeName     = p.CarTypeName,
                    InGateName      = p.InGateName,
                    AreaName        = p.AreaName,
                    EntranceTime    = p.EntranceTime.ToString("yyyy-MM-dd HH:mm:ss"),
                    LongTime        = p.LongTime,
                    EmployeeName    = string.IsNullOrWhiteSpace(p.EmployeeName) ? "" : p.EmployeeName,
                    MobilePhone     = string.IsNullOrWhiteSpace(p.MobilePhone) ? "" : p.MobilePhone,
                    InOperatorName  = p.InOperatorName,
                    IsExit          = p.IsExit ? "已出场" : "在场",
                    CarModelName    = p.CarModelName,
                    ReleaseTypeName = p.ReleaseTypeName,
                    ExitTime        = p.IsExit ? p.ExitTime.ToString("yyyy-MM-dd HH:mm:ss") : string.Empty,
                    OutGateName     = string.IsNullOrWhiteSpace(p.OutGateName) ? "" : p.OutGateName,
                };
                return(Json(MyResult.Success("", result)));
            }
            catch (Exception ex)
            {
                ExceptionsServices.AddExceptions(ex, "微信管理端获取进出记录失败");
                return(Json(MyResult.Error("获取失败")));
            }
        }