예제 #1
0
        static UserInfo()
        {
            try
            {
                try
                {
                    using var adUtils = new NetLib.AD.ADUtils();
                    UserGroupsAd      = adUtils.GetCurrentUserGroups(out var fioAd);
                    IsProductUser     = UserGroupsAd.Any(g => g == "000883_Департамент продукта");
                    FioAD             = fioAd;
                }
                catch (Exception ex)
                {
                    Logger.Log.Error(ex, "adUtils");
                }

                UserData = new MongoDblib.UsersData.DbUserData().GetCurrentUser();
                SaveBackup();
            }
            catch (Exception ex)
            {
                try
                {
                    LoadBackup();
                }
                catch
                {
                    //
                }

                Logger.Log.Error(ex, "adUtils and mongo load user info");
            }
        }
예제 #2
0
        static UserInfo()
        {
            try
            {
                var task = Task.Run(() =>
                {
                    try
                    {
                        using var adUtils = new NetLib.AD.ADUtils();
                        UserGroupsAd      = adUtils.GetCurrentUserGroups(out var fioAd);
                        IsProductUser     = UserGroupsAd.Any(g => g == "000883_Департамент продукта");
                        FioAD             = fioAd;
                    }
                    catch (Exception ex)
                    {
                        Logger.Log.Error(ex, "adUtils");
                    }
                });
                task.Wait(3000);
                if (!task.IsCompleted)
                {
                    Logger.Log.Info("UserInfo Constructor - нет в доступа к ADUtils или прошло более 3000.");
                }

                task = Task.Run(() =>
                {
                    UserData = new MongoDblib.UsersData.DbUserData().GetCurrentUser();
                });
                task.Wait(3000);
                if (!task.IsCompleted)
                {
                    Logger.Log.Info("UserInfo Constructor - нет в доступа к MongoDb или прошло более 3000.");
                }
            }
            catch (Exception ex)
            {
                Logger.Log.Error(ex, "adUtils and mongo load user info");
            }

            if (UserData == null || UserGroupsAd == null)
            {
                try
                {
                    LoadBackup();
                }
                catch
                {
                    //
                }
            }

            if (UserData == null)
            {
                try
                {
                    ShowUserProfileRegister();
                }
                catch (Exception ex)
                {
                    Logger.Log.Error(ex, "ShowUserProfileRegister");
                }
            }

            SaveBackup();
        }