Example #1
0
        private void Init()
        {
            if (_isLoadUserInfo)
            {
                AsyncBatchOperationInvoker invoker = new AsyncBatchOperationInvoker(result =>
                {
                    gridLogin.Visibility = System.Windows.Visibility.Collapsed;
                    if (!result.IsValid)
                    {
                        StringBuilder builder = new StringBuilder();
                        builder.AppendLine("加载启动信息出错,程序将自动关闭");
                        builder.AppendLine("错误信息:");
                        builder.AppendLine(result.Exception.GetExceptionMessage());
                        MessageBox.Show(this, builder.ToString());
                        App.Current.Shutdown();
                    }
                },
                                                                                    hintInfo =>
                {
                    this.textBlockHint.Text = hintInfo;
                },
                                                                                    System.Threading.SynchronizationContext.Current);

                #region 读取用户权限
                invoker.Add <ISubsystem, StringList>(channel =>
                {
                    return(channel.GetUsableAuthoritiesBySubsystemID(RiasPortal.Current.UserSetting.UserID, CO_IA.Public.SubSystemIDs.Rias));
                },
                                                     result =>
                {
                    if (result.IsValid)
                    {
                        var activities = result.Result;
                        RiasPortal.Current.UserSetting.UserRights = result.Result.ToArray();
                    }
                }, "正在加载用户权限");
                #endregion
                #region 加载地图地址
                invoker.Add <I_CO_IA.Setting.I_CO_IA_Setting, MapConfig>(channel =>
                {
                    return(channel.GetMapConig());
                },
                                                                         result =>
                {
                    if (result.IsValid)
                    {
                        RiasPortal.Current.MapConfig.ElectricUrl  = result.Result.ElectricUrl;
                        RiasPortal.Current.MapConfig.SatelliteUrl = result.Result.SatelliteUrl;
                        RiasPortal.RegisterSessionParam(RiasPortal.MapDefaultArea, result.Result.DefaultGeoRange);
                    }
                }, "读取地图配置信息");
                #endregion
                invoker.Invoke();
            }
            #region 加载活动列表
            //List<Activity> activities2=null;
            //if (this._isLoadUserInfo)
            //{
            //    PT_BS_Service.Client.Framework.BeOperationInvoker.Invoke<I_CO_IA.ActivityManage.I_CO_IA_ActivityManage>(channel =>
            //        {
            //            activities2 = channel.GetActivities().ToList();
            //        });
            //}
            //else
            //{
            List <Activity> activities2 = SQLiteDataService.QueryActivitiesFromLocal();
            //}
            if (gridLogin.Visibility == System.Windows.Visibility.Visible)
            {
                gridLogin.Visibility = System.Windows.Visibility.Collapsed;
            }
            this.dicLocalActivity.Clear();
            foreach (var activity in activities2)
            {
                this.dicLocalActivity[activity.Guid] = activity;
                ListBoxImageItem item = new ListBoxImageItem();
                item.DataContext = activity;
                item.ToolTip     = activity.Name;

                if (activity.Icon != null && activity.Icon.Length > 100)
                {
                    MemoryStream ms          = new MemoryStream(activity.Icon);
                    BitmapImage  bitmapImage = new BitmapImage();
                    bitmapImage.BeginInit();
                    bitmapImage.StreamSource = ms;
                    bitmapImage.EndInit();
                    item.ImageSource = bitmapImage;
                }
                else
                {
                    item.ImageSource = new BitmapImage(new Uri(@"/CO_IA.MonitoringCollecting;component/Images/defaultActivity.png", UriKind.RelativeOrAbsolute));
                }
                item.Header = activity.Name;
                //item.HorizontalContentAlignment = System.Windows.HorizontalAlignment.Left;
                this.listBoxActivities.Items.Add(item);
            }

            #endregion
        }
Example #2
0
        private void Init()
        {
            if (_isLoadUserInfo)
            {
                AsyncBatchOperationInvoker invoker = new AsyncBatchOperationInvoker(result =>
                {
                    gridLogin.Visibility = System.Windows.Visibility.Collapsed;
                    if (!result.IsValid)
                    {
                        StringBuilder builder = new StringBuilder();
                        builder.AppendLine("加载启动信息出错,程序将自动关闭");
                        builder.AppendLine("错误信息:");
                        builder.AppendLine(result.Exception.GetExceptionMessage());
                        MessageBox.Show(this, builder.ToString());
                        App.Current.Shutdown();
                    }
                },
                                                                                    hintInfo =>
                {
                    this.textBlockHint.Text = hintInfo;
                },
                                                                                    System.Threading.SynchronizationContext.Current);
                invoker.Add <I_CO_IA.ActivityManage.I_CO_IA_ActivityManage, DateTime>(channel =>
                {
                    return(channel.GetServerTime());
                },
                                                                                      result =>
                {
                    if (result.IsValid)
                    {
                        CO_IA.Client.Utility.RegisterLoginTime(result.Result);
                    }
                }, "正在读取服务器时间");
                #region 读取用户权限
                invoker.Add <ISubsystem, StringList>(channel =>
                {
                    return(channel.GetUsableAuthoritiesBySubsystemID(RiasPortal.Current.UserSetting.UserID, CO_IA.Public.SubSystemIDs.Rias));
                },
                                                     result =>
                {
                    if (result.IsValid)
                    {
                        var activities = result.Result;
                        RiasPortal.Current.UserSetting.UserRights = result.Result.ToArray();
                    }
                }, "正在加载用户权限");
                #endregion

                #region 加载活动列表
                invoker.Add <I_CO_IA.ActivityManage.I_CO_IA_ActivityManage, CO_IA.Data.ActivityExt[]>(channel =>
                {
                    return(channel.GetActivityWithPlacesByUserID(CO_IA.Types.ActivityStage.Execute, RiasPortal.Current.UserSetting.UserID));
                },
                                                                                                      result =>
                {
                    if (result.IsValid)
                    {
                        var activities = result.Result.OrderBy(p => p.ActivityStage).ThenByDescending(p => p.CreateTime).ToArray();
                        this.listBoxActivities.ItemsSource = activities;
                    }
                }, "正在加载活动");

                #endregion

                #region GPS配置信息
                invoker.Add <I_CO_IA.Setting.I_CO_IA_Setting, GpsDataAnalyseConfig>(channel =>
                {
                    return(channel.GetGpsDataAnalyseConfig());
                },
                                                                                    result =>
                {
                    if (result.IsValid)
                    {
                        RiasPortal.RegisterTypeSessionParam(result.Result);
                    }
                }, "读取GPS配置信息");
                #endregion

                #region 加载地图地址
                invoker.Add <I_CO_IA.Setting.I_CO_IA_Setting, MapConfig>(channel =>
                {
                    return(channel.GetMapConig());
                },
                                                                         result =>
                {
                    if (result.IsValid)
                    {
                        RiasPortal.Current.MapConfig.ElectricUrl  = result.Result.ElectricUrl;
                        RiasPortal.Current.MapConfig.SatelliteUrl = result.Result.SatelliteUrl;
                        RiasPortal.RegisterSessionParam(RiasPortal.MapDefaultArea, result.Result.DefaultGeoRange);
                    }
                }, "读取地图配置信息");
                invoker.Invoke();
                #endregion

                invoker.Invoke();
            }
        }