예제 #1
0
        public async Task <ActionResult> Index(EnumAdminMessageId?message)
        {
            this.Authorize();

            // 色々な結果メッセージの設定
            ViewBag.StatusMessage =
                message == EnumAdminMessageId.DoNotHaveOwnershipOfTheObject ? Resources.AdminController.DoNotHaveOwnershipOfTheObject
                : message == EnumAdminMessageId.AddSuccess ? Resources.AdminController.AddSuccess
                : message == EnumAdminMessageId.Error ? Resources.AdminController.Error
                : message == EnumAdminMessageId.EditSuccess ? Resources.AdminController.EditSuccess
                : message == EnumAdminMessageId.DeleteSuccess ? Resources.AdminController.DeleteSuccess
                : "";

            // ユーザ一覧表示
            // マルチテナント化 : ASP.NET Identity上に分割キーを渡すI/Fが無いので已む無くSession。
            ApplicationUser user = await UserManager.FindByIdAsync(User.Identity.GetUserId());

            Session["ParentId"]      = user.ParentId;                                                     // 分割キー
            Session["IsSystemAdmin"] = CheckRole.IsSystemAdmin(await UserManager.GetRolesAsync(user.Id)); // 「管理者ユーザ」か否か。
            //(user.UserName == ASPNETIdentityConfig.AdministratorUID); // 「既定の管理者ユーザ」か否か。

            // Usersへのアクセスを非同期化出来ず
            UsersAdminSearchViewModel model = new UsersAdminSearchViewModel();

            model.UserNameforSearch = "";
            model.Users             = UserManager.Users.AsEnumerable();

            return(View(model));
        }
예제 #2
0
        public async Task <ActionResult> Index(EnumAdminMessageId?message)
        {
            this.Authorize();

            // 色々な結果メッセージの設定
            ViewBag.StatusMessage =
                message == EnumAdminMessageId.DoNotHaveOwnershipOfTheObject ? Resources.AdminController.DoNotHaveOwnershipOfTheObject
                : message == EnumAdminMessageId.AddSuccess ? Resources.AdminController.AddSuccess
                : message == EnumAdminMessageId.Error ? Resources.AdminController.Error
                : message == EnumAdminMessageId.EditSuccess ? Resources.AdminController.EditSuccess
                : message == EnumAdminMessageId.DeleteSuccess ? Resources.AdminController.DeleteSuccess
                : "";

            // ユーザ一覧表示
            // マルチテナント化 : ASP.NET Identity上に分割キーを渡すI/Fが無いので已む無くSession。
            ApplicationUser user = await UserManager.FindByIdAsync(User.Identity.GetUserId());

            // Usersへのアクセスを非同期化出来ず
            UsersAdminSearchViewModel model = new UsersAdminSearchViewModel
            {
                UserNameforSearch = "",
                Users             = UserManager.Users.AsEnumerable()
            };

            return(View(model));
        }
예제 #3
0
        public async Task <ActionResult> List(UsersAdminSearchViewModel model)
        {
            this.Authorize();

            // ユーザ一覧表示
            // マルチテナント化 : ASP.NET Identity上に分割キーを渡すI/Fが無いので已む無くSession。
            ApplicationUser user = await UserManager.FindByIdAsync(User.Identity.GetUserId());

            Session["SearchConditionOfUsers"] = model.UserNameforSearch; // ユーザ一覧の検索条件

            // Usersへのアクセスを非同期化出来ず
            model.Users = UserManager.Users.AsEnumerable();

            return(View("Index", model));
        }
예제 #4
0
        public async Task <ActionResult> List(UsersAdminSearchViewModel model)
        {
            this.Authorize();

            // ユーザ一覧表示
            // マルチテナント化 : ASP.NET Identity上に分割キーを渡すI/Fが無いので已む無くSession。
            ApplicationUser user = await UserManager.FindByIdAsync(User.Identity.GetUserId());

            Session["ParentId"]      = user.ParentId;                                                     // 分割キー
            Session["IsSystemAdmin"] = CheckRole.IsSystemAdmin(await UserManager.GetRolesAsync(user.Id)); // 「管理者ユーザ」か否か。
            //(user.UserName == ASPNETIdentityConfig.AdministratorUID); // 「既定の管理者ユーザ」か否か。
            Session["SearchConditionOfUsers"] = model.UserNameforSearch;                                  // ユーザ一覧の検索条件

            // Usersへのアクセスを非同期化出来ず
            //model.UserNameforSearch = "";
            model.Users = UserManager.Users.AsEnumerable();

            return(View("Index", model));
        }