示例#1
0
文件: PageUser.cs 项目: wl147/mycms
        void rptContents_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                var userName     = SqlUtils.EvalString(e.Item.DataItem, "UserName");
                var displayName  = SqlUtils.EvalString(e.Item.DataItem, "DisplayName");
                var mobile       = SqlUtils.EvalString(e.Item.DataItem, "Mobile");
                var departmentId = SqlUtils.EvalInt(e.Item.DataItem, "DepartmentID");
                var areaId       = SqlUtils.EvalInt(e.Item.DataItem, "AreaID");
                if (string.IsNullOrEmpty(displayName))
                {
                    displayName = userName;
                }
                var departmentName = string.Empty;
                if (_departmentInfo != null)
                {
                    departmentName = _departmentInfo.DepartmentName;
                }
                else if (departmentId > 0)
                {
                    departmentName = DepartmentManager.GetDepartmentName(departmentId);
                }
                var countOfFailedLogin = SqlUtils.EvalInt(e.Item.DataItem, "CountOfFailedLogin");
                var isLockedOut        = SqlUtils.EvalBool(e.Item.DataItem, "IsLockedOut");
                var lastActivityDate   = SqlUtils.EvalDateTime(e.Item.DataItem, "LastActivityDate");

                var ltlUserName      = (Literal)e.Item.FindControl("ltlUserName");
                var ltlDisplayName   = (Literal)e.Item.FindControl("ltlDisplayName");
                var ltlMobile        = (Literal)e.Item.FindControl("ltlMobile");
                var ltlDepartment    = (Literal)e.Item.FindControl("ltlDepartment");
                var ltlArea          = (Literal)e.Item.FindControl("ltlArea");
                var ltlEdit          = (Literal)e.Item.FindControl("ltlEdit");
                var hlChangePassword = (HyperLink)e.Item.FindControl("hlChangePassword");
                var ltlRole          = (Literal)e.Item.FindControl("ltlRole");
                var ltlSelect        = (Literal)e.Item.FindControl("ltlSelect");

                ltlUserName.Text    = GetUserNameHtml(userName, countOfFailedLogin, isLockedOut, lastActivityDate);
                ltlDisplayName.Text = displayName;
                ltlMobile.Text      = mobile;
                ltlDepartment.Text  = departmentName;
                ltlArea.Text        = AreaManager.GetAreaName(areaId);

                var urlEdit = PageAdministratorAdd.GetRedirectUrlToEdit(departmentId, userName);
                ltlEdit.Text = $@"<a href=""{urlEdit}"">修改属性</a>";
                hlChangePassword.Attributes.Add("onclick", ModalAdminPassword.GetOpenWindowString(userName));

                if (Body.AdministratorName != userName)
                {
                    var openWindowString = ModalPermissionsSet.GetOpenWindowString(userName);
                    ltlRole.Text   = $@"<a href=""javascript:;"" onclick=""{openWindowString}"">权限设置</a>";
                    ltlSelect.Text = $@"<input type=""checkbox"" name=""UserNameCollection"" value=""{userName}"" />";
                }
            }
        }
示例#2
0
文件: PageUser.cs 项目: wl147/mycms
        public void Page_Load(object sender, EventArgs e)
        {
            if (IsForbidden)
            {
                return;
            }

            var permissioins = PermissionsManager.GetPermissions(Body.AdministratorName);

            _departmentId = Body.GetQueryInt("departmentID");
            var areaId = Body.GetQueryInt("areaID");

            if (_departmentId > 0)
            {
                _departmentInfo = DepartmentManager.GetDepartmentInfo(_departmentId);
            }

            if (Body.IsQueryExists("Delete"))
            {
                var userNameCollection = Body.GetQueryString("UserNameCollection");
                try
                {
                    var userNameArrayList = TranslateUtils.StringCollectionToStringList(userNameCollection);
                    foreach (var userName in userNameArrayList)
                    {
                        BaiRongDataProvider.AdministratorDao.Delete(userName);
                    }

                    Body.AddAdminLog("删除管理员", $"管理员:{userNameCollection}");

                    SuccessDeleteMessage();
                }
                catch (Exception ex)
                {
                    FailDeleteMessage(ex);
                }
            }
            else if (Body.IsQueryExists("Lock"))
            {
                var userNameCollection = Body.GetQueryString("UserNameCollection");
                try
                {
                    var userNameList = TranslateUtils.StringCollectionToStringList(userNameCollection);
                    BaiRongDataProvider.AdministratorDao.Lock(userNameList);

                    Body.AddAdminLog("锁定管理员", $"管理员:{userNameCollection}");

                    SuccessMessage("成功锁定所选管理员!");
                }
                catch (Exception ex)
                {
                    FailMessage(ex, "锁定所选管理员失败!");
                }
            }
            else if (Body.IsQueryExists("UnLock"))
            {
                var userNameCollection = Body.GetQueryString("UserNameCollection");
                try
                {
                    var userNameList = TranslateUtils.StringCollectionToStringList(userNameCollection);
                    BaiRongDataProvider.AdministratorDao.UnLock(userNameList);

                    Body.AddAdminLog("解除锁定管理员", $"管理员:{userNameCollection}");

                    SuccessMessage("成功解除锁定所选管理员!");
                }
                catch (Exception ex)
                {
                    FailMessage(ex, "解除锁定所选管理员失败!");
                }
            }

            spContents.ControlToPaginate = rptContents;
            spContents.ItemsPerPage      = StringUtils.Constants.PageSize;

            if (string.IsNullOrEmpty(Body.GetQueryString("PageNum")))
            {
                spContents.ItemsPerPage = TranslateUtils.ToInt(PageNum.SelectedValue) == 0 ? StringUtils.Constants.PageSize : TranslateUtils.ToInt(PageNum.SelectedValue);

                spContents.SelectCommand = BaiRongDataProvider.AdministratorDao.GetSelectCommandSite(permissioins.IsConsoleAdministrator, Body.AdministratorName, _departmentId, Body.AdministratorInfo.PublishmentSystemId);
                spContents.SortField     = BaiRongDataProvider.AdministratorDao.GetSortFieldName();
                spContents.SortMode      = SortMode.ASC;
            }
            else
            {
                spContents.ItemsPerPage  = Body.GetQueryInt("PageNum") == 0 ? StringUtils.Constants.PageSize : Body.GetQueryInt("PageNum");
                spContents.SelectCommand = BaiRongDataProvider.AdministratorDao.GetSelectCommand(Body.GetQueryString("Keyword"), Body.GetQueryString("RoleName"), Body.GetQueryInt("LastActivityDate"), permissioins.IsConsoleAdministrator, Body.AdministratorName, _departmentId, Body.GetQueryInt("AreaID"));
                spContents.SortField     = Body.GetQueryString("Order");
                spContents.SortMode      = StringUtils.EqualsIgnoreCase(spContents.SortField, "UserName") ? SortMode.ASC : SortMode.DESC;
            }

            rptContents.ItemDataBound += rptContents_ItemDataBound;

            _lockType = EUserLockTypeUtils.GetEnumType(ConfigManager.SystemConfigInfo.LoginLockingType);

            if (IsPostBack)
            {
                return;
            }

            BreadCrumbAdmin(AppManager.Admin.LeftMenu.AdminManagement, "管理员管理", AppManager.Admin.Permission.AdminManagement);

            var theListItem = new ListItem("全部", string.Empty)
            {
                Selected = true
            };

            var allRoles = permissioins.IsConsoleAdministrator ? BaiRongDataProvider.RoleDao.GetAllRoles() : BaiRongDataProvider.RoleDao.GetAllRolesByCreatorUserName(Body.AdministratorName);

            var allPredefinedRoles = EPredefinedRoleUtils.GetAllPredefinedRoleName();


            ddlAreaID.Items.Add(new ListItem("<全部区域>", "0"));
            var areaIdList = AreaManager.GetAreaIdList();
            var count      = areaIdList.Count;

            _isLastNodeArrayOfArea = new bool[count];
            foreach (var theAreaId in areaIdList)
            {
                var areaInfo = AreaManager.GetAreaInfo(theAreaId);
                var listitem = new ListItem(GetArea(areaInfo.AreaId, areaInfo.AreaName, areaInfo.ParentsCount, areaInfo.IsLastNode), theAreaId.ToString());
                if (areaId == theAreaId)
                {
                    listitem.Selected = true;
                }
                ddlAreaID.Items.Add(listitem);
            }

            if (Body.IsQueryExists("PageNum"))
            {
                ControlUtils.SelectListItems(PageNum, Body.GetQueryString("PageNum"));
                Keyword.Text = Body.GetQueryString("Keyword");
                ControlUtils.SelectListItems(ddlAreaID, Body.GetQueryString("AreaID"));
                ControlUtils.SelectListItems(LastActivityDate, Body.GetQueryString("LastActivityDate"));
                ControlUtils.SelectListItems(Order, Body.GetQueryString("Order"));
            }

            var urlAdd = PageAdministratorAdd.GetRedirectUrlToAdd(_departmentId);

            AddButton.Attributes.Add("onclick", $@"location.href='{urlAdd}';return false;");

            var urlAdministrator = GetRedirectUrl(_departmentId);

            Lock.Attributes.Add("onclick", PageUtils.GetRedirectStringWithCheckBoxValueAndAlert(urlAdministrator + "&Lock=True", "UserNameCollection", "UserNameCollection", "请选择需要锁定的管理员!", "此操作将锁定所选管理员,确认吗?"));

            UnLock.Attributes.Add("onclick", PageUtils.GetRedirectStringWithCheckBoxValueAndAlert(urlAdministrator + "&UnLock=True", "UserNameCollection", "UserNameCollection", "请选择需要解除锁定的管理员!", "此操作将解除锁定所选管理员,确认吗?"));

            Delete.Attributes.Add("onclick", PageUtils.GetRedirectStringWithCheckBoxValueAndAlert(urlAdministrator + "&Delete=True", "UserNameCollection", "UserNameCollection", "请选择需要删除的管理员!", "此操作将删除所选管理员,确认吗?"));

            spContents.DataBind();
        }