Exemple #1
0
        private void SaveItem()
        {
            powers item = new  powers();

            item.Name      = tbxName.Text.Trim();
            item.GroupName = tbxGroupName.Text.Trim();
            item.Title     = tbxTitle.Text.Trim();
            item.Remark    = tbxRemark.Text.Trim();
            Core.Container.Instance.Resolve <IServicePowers>().Create(item);
        }
        protected void btnSaveClose_Click(object sender, EventArgs e)
        {
            int    id   = GetQueryIntValue("id");
            powers item = Core.Container.Instance.Resolve <IServicePowers>().GetEntity(id);

            item.Name      = tbxName.Text.Trim();
            item.GroupName = tbxGroupName.Text.Trim();
            item.Title     = tbxTitle.Text.Trim();
            item.Remark    = tbxRemark.Text.Trim();
            Core.Container.Instance.Resolve <IServicePowers>().Update(item);

            //FineUIPro.Alert.Show("保存成功!", String.Empty, FineUIPro.Alert.DefaultIcon, FineUIPro.ActiveWindow.GetHidePostBackReference());
            PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
        }
Exemple #3
0
        private static void InitMenus()
        {
            _menus = new List <menus>();

            List <menus> dbMenus = Core.Container.Instance.Resolve <IServiceMenus>().GetAll().ToList().OrderBy(a => a.SortIndex).ToList();

            // List<Menu> dbMenus = PageBase.DB.Menus.Include(m => m.ViewPower).OrderBy(m => m.SortIndex).ToList();
            foreach (menus menu in dbMenus)
            {
                if (menu.ViewPowerID > 0)
                {
                    powers entity = Core.Container.Instance.Resolve <IServicePowers>().GetEntity(menu.ViewPowerID);
                    menu.ViewPowerName = entity != null ? entity.Name : "";
                }
            }
            ResolveMenuCollection(dbMenus, 0, 0);
        }
        protected void btnSaveClose_Click(object sender, EventArgs e)
        {
            int id = GetQueryIntValue("id");
            //Menu item = DB.Menus
            //    .Include(m => m.Parent).Include(m => m.ViewPower)
            //    .Where(m => m.ID == id).FirstOrDefault();
            menus item = Core.Container.Instance.Resolve <IServiceMenus>().GetEntity(id);

            if (item != null)
            {
                item.Name        = tbxName.Text.Trim();
                item.NavigateUrl = tbxUrl.Text.Trim();
                item.SortIndex   = Convert.ToInt32(tbxSortIndex.Text.Trim());
                item.ImageUrl    = tbxIcon.Text;
                item.Remark      = tbxRemark.Text.Trim();

                int parentID = Convert.ToInt32(ddlParent.SelectedValue);
                if (parentID == -1)
                {
                    item.ParentID = 0;
                }
                else
                {
                    item.ParentID = parentID;
                }

                string viewPowerName = tbxViewPower.Text.Trim();
                if (String.IsNullOrEmpty(viewPowerName))
                {
                    item.ViewPowerID = 0;
                }
                else
                {
                    //获取权限信息
                    IList <ICriterion> qryList = new List <ICriterion>();
                    qryList.Add(Expression.Eq("Name", viewPowerName));
                    powers entity = Core.Container.Instance.Resolve <IServicePowers>().GetEntityByFields(qryList);

                    item.ViewPowerID = entity != null ? entity.ID : 0;
                }
                Core.Container.Instance.Resolve <IServiceMenus>().Update(item);
            }
            //FineUIPro.Alert.Show("保存成功!", String.Empty, FineUIPro.Alert.DefaultIcon, FineUIPro.ActiveWindow.GetHidePostBackReference());
            PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
        }
        private void LoadData()
        {
            btnClose.OnClientClick = ActiveWindow.GetHideReference();

            int id = GetQueryIntValue("id");
            //Menu current = DB.Menus
            //    .Include(m => m.Parent).Include(m => m.ViewPower)
            //    .Where(m => m.ID == id).FirstOrDefault();
            menus current = Core.Container.Instance.Resolve <IServiceMenus>().GetEntity(id);

            if (current == null)
            {
                // 参数错误,首先弹出Alert对话框然后关闭弹出窗口
                Alert.Show("参数错误!", String.Empty, ActiveWindow.GetHideReference());
                return;
            }

            tbxName.Text      = current.Name;
            tbxUrl.Text       = current.NavigateUrl;
            tbxSortIndex.Text = current.SortIndex.ToString();
            tbxIcon.Text      = current.ImageUrl;
            tbxRemark.Text    = current.Remark;
            if (current.ViewPowerID != 0)
            {
                powers power = Core.Container.Instance.Resolve <IServicePowers>().GetEntity(current.ViewPowerID);
                //获取权限信息
                if (power != null)
                {
                    tbxViewPower.Text = power.Name;
                }
            }


            // 绑定上级菜单下拉列表
            BindDDL(current);

            // 预置图标列表
            InitIconList(iconList);

            if (!String.IsNullOrEmpty(current.ImageUrl))
            {
                iconList.SelectedValue = current.ImageUrl;
            }
        }
        private void LoadData()
        {
            btnClose.OnClientClick = ActiveWindow.GetHideReference();

            int    id      = GetQueryIntValue("id");
            powers current = Core.Container.Instance.Resolve <IServicePowers>().GetEntity(id);

            if (current == null)
            {
                // 参数错误,首先弹出Alert对话框然后关闭弹出窗口
                Alert.Show("参数错误!", String.Empty, ActiveWindow.GetHideReference());
                return;
            }

            tbxName.Text      = current.Name;
            tbxGroupName.Text = current.GroupName;
            tbxTitle.Text     = current.Title;
            tbxRemark.Text    = current.Remark;
        }
Exemple #7
0
        /// <summary>
        /// 获取当前登录用户拥有的全部权限列表
        /// </summary>
        /// <param name="roleIDs"></param>
        /// <returns></returns>
        protected List <string> GetRolePowerNames()
        {
            // 将用户拥有的权限列表保存在Session中,这样就避免每个请求多次查询数据库
            if (Session["UserPowerList"] == null)
            {
                List <string> rolePowerNames = new List <string>();

                // 超级管理员拥有所有权限
                if (GetIdentityName() == "administrator")
                {
                    rolePowerNames = Core.Container.Instance.Resolve <IServicePowers>().GetAll().Select(p => p.Name).ToList();
                }
                else
                {
                    List <int> roleIDs = GetIdentityRoleIDs();

                    //foreach (var role in DB.Roles.Include(r => r.Powers).Where(r => roleIDs.Contains(r.ID)))
                    //{
                    foreach (var roleid in roleIDs)
                    {
                        //获取角色权限列表
                        IList <ICriterion> qryList = new List <ICriterion>();
                        qryList.Add(Expression.Eq("RoleID", roleid));
                        IList <rolepowers> powerList = Core.Container.Instance.Resolve <IServiceRolePowers>().GetAllByKeys(qryList);

                        foreach (rolepowers rolepower in powerList)
                        {
                            powers power = Core.Container.Instance.Resolve <IServicePowers>().GetEntity(rolepower.PowerID);
                            if (!rolePowerNames.Contains(power.Name))
                            {
                                rolePowerNames.Add(power.Name);
                            }
                        }
                    }
                }

                Session["UserPowerList"] = rolePowerNames;
            }
            return((List <string>)Session["UserPowerList"]);
        }
        private void SaveItem()
        {
            menus item = new menus();

            item.Name        = tbxName.Text.Trim();
            item.NavigateUrl = tbxUrl.Text.Trim();
            item.SortIndex   = Convert.ToInt32(tbxSortIndex.Text.Trim());
            item.Remark      = tbxRemark.Text.Trim();
            item.ImageUrl    = tbxIcon.Text;

            int parentID = Convert.ToInt32(ddlParent.SelectedValue);

            if (parentID == -1)
            {
                item.ParentID = 0;
            }
            else
            {
                item.ParentID = parentID;
            }

            string viewPowerName = tbxViewPower.Text.Trim();

            if (String.IsNullOrEmpty(viewPowerName))
            {
                item.ViewPowerID = 0;
            }
            else
            {
                //获取权限信息
                IList <ICriterion> qryList = new List <ICriterion>();
                qryList.Add(Expression.Eq("Name", viewPowerName));
                powers entity = Core.Container.Instance.Resolve <IServicePowers>().GetEntityByFields(qryList);

                item.ViewPowerID = entity != null ? entity.ID : 0;
            }
            Core.Container.Instance.Resolve <IServiceMenus>().Create(item);
            //DB.SaveChanges();
        }
        private void BindGrid2()
        {
            int roleId = GetSelectedDataKeyID(Grid1);

            if (roleId == -1)
            {
                Grid2.DataSource = null;
                Grid2.DataBind();
            }
            else
            {
                // 当前选中角色拥有的权限列表
                _currentRolePowers.Clear();

                IList <ICriterion> qryList = new List <ICriterion>();
                qryList.Add(Expression.Eq("RoleID", roleId));
                IList <rolepowers> rpowersList = Core.Container.Instance.Resolve <IServiceRolePowers>().GetAllByKeys(qryList);
                foreach (rolepowers rpower in rpowersList)
                {
                    powers power = Core.Container.Instance.Resolve <IServicePowers>().GetEntity(rpower.PowerID);
                    if (power != null)
                    {
                        string powerName = power.Name;
                        if (!_currentRolePowers.ContainsKey(powerName))
                        {
                            _currentRolePowers.Add(powerName, true);
                        }
                    }
                }
                //Role role = DB.Roles.Include(r => r.Powers).Where(r => r.ID == roleId).FirstOrDefault();
                // foreach (var power in role.Powers)
                //{
                //    string powerName = power.Name;
                //    if (!_currentRolePowers.ContainsKey(powerName))
                //    {
                //        _currentRolePowers.Add(powerName, true);
                //    }
                //}

                IList <powers> powerList = Core.Container.Instance.Resolve <IServicePowers>().GetAll();
                var            q         = powerList.GroupBy(p => p.GroupName);

                if (Grid2.SortField == "GroupName")
                {
                    if (Grid2.SortDirection == "ASC")
                    {
                        q = q.OrderBy(g => g.Key);
                    }
                    else
                    {
                        q = q.OrderByDescending(g => g.Key);
                    }
                }

                var powers = q.Select(g => new
                {
                    GroupName = g.Key,
                    Powers    = g
                });


                Grid2.DataSource = powers;
                Grid2.DataBind();
            }
        }