Ejemplo n.º 1
0
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="pc">pc</param>
        /// <returns>影响的记录行数</returns>
        public int DeleteMultiple(ParameterCollection pc)
        {
            int ret = 0;

            RelRoleActionModel relroleaction = new RelRoleActionModel();

            ret = DbUtil.Current.DeleteMultiple(relroleaction, pc);

            return(ret);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 删除
        /// </summary>
        /// <returns>影响的记录行数</returns>
        public int Delete()
        {
            int ret = 0;

            RelRoleActionModel relroleaction = new RelRoleActionModel();

            ret = DbUtil.Current.Delete(relroleaction);

            return(ret);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 更新
        /// </summary>
        /// <param name="relroleaction">实体</param>
        /// <param name="pc">pc</param>
        /// <returns>影响的记录行数</returns>
        public int UpdateMultiple(RelRoleActionModel relroleaction, ParameterCollection pc)
        {
            int ret = 0;

            relroleaction.ModifiedBy = SessionUtil.Current.UserId;
            relroleaction.ModifiedOn = DateTime.Now;

            ret = DbUtil.Current.UpdateMultiple(relroleaction, pc);

            return(ret);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 更新
        /// </summary>
        /// <param name="relroleaction">实体</param>
        /// <returns>影响的记录行数</returns>
        public int Update(RelRoleActionModel relroleaction)
        {
            int ret = 0;

            relroleaction.ModifiedBy = SessionUtil.Current.UserId;
            relroleaction.ModifiedOn = DateTime.Now;

            ret = DbUtil.Current.Update(relroleaction);

            return(ret);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 根据主键获取实体
        /// </summary>
        /// <returns>实体</returns>
        public RelRoleActionModel Retrieve()
        {
            RelRoleActionModel relroleaction = new RelRoleActionModel();

            DataTable dt = DbUtil.Current.Retrieve(relroleaction);

            if (dt.Rows.Count < 1)
            {
                return(null);
            }

            relroleaction.ConvertFrom(dt);

            return(relroleaction);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// 根据条件获取实体集合
        /// </summary>
        /// <param name="pc">pc</param>
        /// <param name="obc">obc</param>
        /// <returns>实体</returns>
        public List <RelRoleActionModel> RetrieveMultiple(ParameterCollection pc, OrderByCollection obc)
        {
            List <RelRoleActionModel> relroleactions = new List <RelRoleActionModel>();

            RelRoleActionModel relroleaction = new RelRoleActionModel();
            DataTable          dt            = DbUtil.Current.RetrieveMultiple(relroleaction, pc, obc);

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                relroleaction = new RelRoleActionModel();
                relroleaction.ConvertFrom(dt, i);
                relroleactions.Add(relroleaction);
            }

            return(relroleactions);
        }
Ejemplo n.º 7
0
        /// <summary>
        /// 创建角色权限信息。
        /// </summary>
        /// <param name="roleId"></param>
        /// <param name="roleActionList"></param>
        /// <returns></returns>
        public bool CreateRolePremissions(string roleId, List <string> roleActionList)
        {
            bool result = false;

            if (roleActionList == null || roleActionList.Count == 0)
            {
                return(false);
            }

            #region 如果最子级菜单被选中,其上级菜单也将被选中

            List <string> insAction = new List <string>();
            for (int i = 0; i < roleActionList.Count; i++)
            {
                insAction.Add(roleActionList[i]);
            }

            List <ActionDomainModel> actList = new List <ActionDomainModel>();
            DataTable actionTable            = PermissionService.GetActionTableFromDatabase();

            for (int i = 0; i < insAction.Count; i++)
            {
                PermissionService.GetActionParentActionList(insAction[i], null, actionTable, actList);
            }

            for (int i = 0; i < actList.Count; i++)
            {
                if (!roleActionList.Contains(actList[i].ActionId))
                {
                    roleActionList.Add(actList[i].ActionId);
                }
            }

            #endregion

            try
            {
                BeginTransaction();

                if (RemoveRoleAction(roleId, null))
                {
                    RelRoleActionModel model = null;
                    for (int i = 0; i < roleActionList.Count; i++)
                    {
                        model          = new RelRoleActionModel();
                        model.ActionId = roleActionList[i];
                        model.RoleId   = roleId;

                        if (RelRoleActionService.Instance.Create(model) < 1)
                        {
                            RollbackTransaction();
                            return(false);
                        }
                    }

                    model          = new RelRoleActionModel();
                    model.ActionId = "7AE55462-7727-4F6D-8989-FE15CAF4DDC0";
                    model.RoleId   = roleId;

                    if (RelRoleActionService.Instance.Create(model) < 1)
                    {
                        RollbackTransaction();
                        return(false);
                    }

                    CommitTransaction();
                    PermissionService.InitRolePermissions(true);

                    result = true;
                }
            }
            catch (Exception ex)
            {
                RollbackTransaction();
                LogUtil.Error("插入角色关联操作信息至rel_role_action表异常", ex);
                throw ex;
            }

            return(result);
        }