Exemple #1
0
 protected void UpdateUserRole(RoleSelection roleSelectionItem)
 {
     if (currentUser.UserName.ToLower() != DefaultUserNames.Administrator || roleSelectionItem.Name != DefaultRoleNames.Administrator)
     {
         roleSelectionItem.IsSelected = !roleSelectionItem.IsSelected;
     }
 }
 public void notifyRoleShowDone(RoleSelection role)
 {
     // 如果最后一个选项已经显示完毕,则设置布局显示完毕
     if (role == mRoleSelectionList[mRoleSelectionList.Count - 1])
     {
         showDone();
     }
 }
 public override void assignWindow()
 {
     newObject(out mSelectionRoleTitle, "SelectionRoleTitle", 0);
     for (int i = 0; i < GameDefine.ROLE_COUNT; ++i)
     {
         RoleSelection selection = new RoleSelection(this);
         selection.assignWindow("RoleRoot" + i);
         mRoleSelectionList.Add(selection);
     }
 }
    public void notifyRoleHideDone(RoleSelection role)
    {
        // 如果所有选项都已经隐藏完毕,则隐藏布局
        bool allHideDone = true;
        int  count       = mRoleSelectionList.Count;

        for (int i = 0; i < count; ++i)
        {
            if (!mRoleSelectionList[i].mHideDone)
            {
                allHideDone = false;
                break;
            }
        }
        if (allHideDone)
        {
            hideDone();
        }
    }
Exemple #5
0
        public async Task <IActionResult> Manage(string id)
        {
            var user = await _context.Users.Include(u => u.Team).FirstOrDefaultAsync(u => u.Id == id);

            if (user == null)
            {
                ViewBag.ErrorMessage = $"User with Id = {id} cannot be found";
                return(NotFound());
            }
            var model = new ManageUserViewModel
            {
                UserId      = user.Id,
                TeamModelId = user.Team.TeamModelId
            };

            ViewBag.Teams    = new SelectList(await _context.Teams.ToListAsync(), "TeamModelId", "TeamName", model.TeamModelId ?? default(int));
            ViewBag.UserName = user.UserName;


            foreach (var role in _roleManager.Roles.ToList())
            {
                var roleSelection = new RoleSelection
                {
                    RoleId   = role.Id,
                    RoleName = role.Name
                };

                if (await _userManager.IsInRoleAsync(user, role.Name))
                {
                    roleSelection.Selected = true;
                }
                else
                {
                    roleSelection.Selected = false;
                }

                model.RoleSelections.Add(roleSelection);
            }

            return(View(model));
        }
 public override void onHide(bool immediately, string param)
 {
     if (immediately)
     {
         hideDone();
         return;
     }
     // 所有选项显示完成 才能正常隐藏 否则就强制隐藏
     if (isShowDone())
     {
         // 先隐藏选中的项
         RoleSelection selection = null;
         int           count     = mRoleSelectionList.Count;
         for (int i = 0; i < count; ++i)
         {
             if (mRoleSelectionList[i].mSelected == 1)
             {
                 selection = mRoleSelectionList[i];
                 break;
             }
         }
         if (selection != null)
         {
             selection.hideSelection();
         }
         // 如果没有选中的项,则直接开始隐藏布局
         else
         {
             notifySelectionHideDone();
         }
     }
     else
     {
         hideDone();
         return;
     }
 }
        private void simpleButton6_Click(object sender, EventArgs e)
        {
            if (sender != null)
            {
                textEdit4.Focus();
            }
            try
            {
                using (EntityTransaction tr =
                           new EntityTransaction(BaseWinSecurity.DataPersistance))
                {
                    if (simpleButton3.Enabled == false) // Peran Baru
                    {
                        string RoleName = textEdit4.Text;
                        BaseSecurity.CurrentLogin.Admin.Role.Add(RoleName,
                                                                 checkEdit4.Checked, checkEdit5.Checked,
                                                                 dateEdit4.DateTime, dateEdit3.DateTime);

                        string SelUser    = listBoxControl1.Text;
                        bool   AddSelUser = false;

                        BaseSecurity.CurrentLogin.Admin.RoleUser.DeleteRole(RoleName);
                        foreach (UserSelection us in ListUser)
                        {
                            if (us.Select)
                            {
                                if (us.UserName == SelUser)
                                {
                                    AddSelUser = true;
                                }
                                BaseSecurity.CurrentLogin.Admin.RoleUser.Add(
                                    RoleName, us.UserName);
                            }
                        }
                        foreach (clsModule mdl in ListModule.Values)
                        {
                            BaseSecurity.CurrentLogin.Admin
                            .RoleModule.Add(RoleName,
                                            mdl.Ma.ModuleName,
                                            BaseUtility.Dictionary2String(
                                                mdl.Ma.Variables), mdl.AllDocumentData);
                            foreach (ModuleDataField mdf in mdl.Ma.ListDataField)
                            {
                                BaseSecurity.CurrentLogin.Admin
                                .RoleModule.UpdateDocumentVariable(
                                    RoleName, mdl.Ma.ModuleName,
                                    mdf.DataFieldName, mdf.DocumentName,
                                    mdl.ListKey[mdf.DataFieldName]);
                            }
                        }

                        RoleSelection rs = new RoleSelection(RoleName);
                        if (AddSelUser)
                        {
                            rs.Select = true;
                        }
                        ListRole.Add(rs);
                        PeranGrid.RefreshDataSource();
                        OnAddRole = true;
                        try
                        {
                            listBoxControl2.Items.Add(RoleName);
                        }
                        finally
                        {
                            OnAddRole = false;
                        }
                        //Peran Baru...
                        if (sender != null)
                        {
                            simpleButton4_Click(null, null);
                        }
                    }
                    else // Peran Lama
                    {
                        string RoleName = textEdit4.Text;
                        BaseSecurity.CurrentLogin.Admin.RoleUser.DeleteRole(CurrentRole);

                        BaseSecurity.CurrentLogin.Admin.Role.Update(CurrentRole,
                                                                    RoleName, checkEdit4.Checked, checkEdit5.Checked,
                                                                    dateEdit4.DateTime, dateEdit3.DateTime);

                        string SelUser       = listBoxControl1.Text;
                        bool   UpdateSelUser = false;

                        foreach (UserSelection us in ListUser)
                        {
                            if (us.Select)
                            {
                                if (us.UserName == SelUser)
                                {
                                    UpdateSelUser = true;
                                }
                                BaseSecurity.CurrentLogin.Admin.RoleUser.Add(
                                    RoleName, us.UserName);
                            }
                        }

                        foreach (RoleSelection rs in ListRole)
                        {
                            if (rs.RoleName == CurrentRole)
                            {
                                rs.Select   = UpdateSelUser;
                                rs.RoleName = RoleName;
                                break;
                            }
                        }
                        foreach (clsModule mdl in ListModule.Values)
                        {
                            string newSecurityData = BaseUtility.Dictionary2String(
                                mdl.Ma.Variables);

                            BaseSecurity.CurrentLogin.Admin
                            .RoleModule.Update(RoleName,
                                               mdl.Ma.ModuleName, newSecurityData, mdl.AllDocumentData);

                            foreach (ModuleDataField mdf in mdl.Ma.ListDataField)
                            {
                                BaseSecurity.CurrentLogin.Admin
                                .RoleModule.UpdateDocumentVariable(
                                    RoleName, mdl.Ma.ModuleName,
                                    mdf.DataFieldName, mdf.DocumentName,
                                    mdl.ListKey[mdf.DataFieldName]);
                            }
                        }

                        PeranGrid.RefreshDataSource();

                        if (CurrentRole != RoleName)
                        {
                            listBoxControl2.Items[listBoxControl2.SelectedIndex] = RoleName;
                        }

                        CurrentRole = RoleName;
                        textEdit4.Focus();
                    }
                    tr.CommitTransaction();
                }
            }
            catch (Exception ex)
            {
                XtraMessageBox.Show(ex.Message, "Error Simpan Peran",
                                    MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }