Beispiel #1
0
        /// <summary>
        /// 用户管理设备范围
        /// </summary>
        /// <param name="Parameter"></param>
        /// <returns></returns>
        //public BaseResponse<bool> UserDevManagedRange(JurisdictionOfDevicesParameter Parameter)
        //{
        //    if (ValidateData<JurisdictionOfDevicesParameter>(Parameter))
        //    {
        //        return userManager.JurisdictionOfDevices(Parameter);
        //    }
        //    else
        //    {
        //        BaseResponse<bool> result = new BaseResponse<bool>();
        //        result.IsSuccessful = false;
        //        result.Code = "001241";
        //        Task.Run(() => LogHelper.WriteLog("未通过安全验证:(" + result.Code + ":" + result.Reason + ")"));
        //        return result;
        //    }
        //}

        /// <summary>
        /// 查询角色信息
        /// </summary>
        /// <param name="Parameter"></param>
        /// <returns></returns>
        public BaseResponse <RolesDataResult> RoleInfoView(QueryRolesInfoParameter Parameter)
        {
            if (ValidateData <QueryRolesInfoParameter>(Parameter))
            {
                return(roleManager.QueryRoleInfo(Parameter));
            }
            else
            {
                BaseResponse <RolesDataResult> result = new BaseResponse <RolesDataResult>();
                result.IsSuccessful = false;
                result.Code         = "001251";
                LogHelper.WriteLog(string.Format("未通过安全验证:({0}:{1}", result.Code, result.Reason));
                return(result);
            }
        }
Beispiel #2
0
        /// <summary>
        /// 查询角色信息
        /// </summary>
        /// <param name="Parameter"></param>
        /// <returns></returns>
        public BaseResponse <RolesDataResult> QueryRoleInfo(QueryRolesInfoParameter Parameter)
        {
            BaseResponse <RolesDataResult> result = new BaseResponse <RolesDataResult>();

            try
            {
                Validate validate = new Validate(userRepository, roleRepository);
                result = validate.ValidateQueryRoleInfoParams(Parameter.Sort, Parameter.Order);
                if (!result.IsSuccessful)
                {
                    return(result);
                }

                int count = 0;
                if (Parameter.Page == 0)
                {
                    Parameter.Page = 1;
                }
                using (var dataContext = new iCMSDbContext())
                {
                    IQueryable <iCMS.Frameworks.Core.DB.Models.Role> roleInfoList = null;
                    ListSortDirection       sortOrder = Parameter.Order.ToLower().Equals("asc") ? ListSortDirection.Ascending : ListSortDirection.Descending;
                    PropertySortCondition[] sortList  = new PropertySortCondition[]
                    {
                        new PropertySortCondition(Parameter.Sort, sortOrder),
                        new PropertySortCondition("RoleID", sortOrder),
                    };
                    if (Parameter.IsSuperAdmin)
                    {
                        roleInfoList = dataContext.Role.OrderBy(sortList);
                    }
                    else
                    {
                        roleInfoList = dataContext.Role.Where(t => t.IsShow == 1).OrderBy(sortList);
                    }
                    count = roleInfoList.Count();
                    if (Parameter.Page > -1)
                    {
                        roleInfoList = roleInfoList
                                       .Skip((Parameter.Page - 1) * Parameter.PageSize)
                                       .Take(Parameter.PageSize);
                    }
                    var tempRoleInfoList = roleInfoList
                                           .ToArray()
                                           .Select(role =>
                    {
                        var roleModuleObj =
                            (from roleModule in dataContext.RoleModule
                             join module in dataContext.Module on roleModule.ModuleCode equals module.Code
                             where roleModule.RoleCode == role.RoleCode && module.IsUsed == 1
                             select new
                        {
                            module.Code,
                            module.ModuleName,
                        })
                            .ToArray();
                        return(new RoleInfo
                        {
                            RoleID = role.RoleID,
                            RoleCode = role.RoleCode,
                            RoleName = role.RoleName,
                            AddDate = role.AddDate.ToString("yyyy-MM-dd HH:mm:ss"),
                            ModuleCode = string.Join("|", roleModuleObj.Select(p => p.Code)),
                            ModuleName = string.Join("|", roleModuleObj.Select(p => p.ModuleName)),
                            IsShow = role.IsShow,
                            IsDeault = role.IsDeault,    //王颖辉添加 2016-08-25
                        });
                    })
                                           .ToList();
                    result.Result = new RolesDataResult
                    {
                        Total    = count,
                        RoleInfo = tempRoleInfoList,
                    };
                    result.IsSuccessful = true;
                    return(result);
                }
            }
            catch (Exception e)
            {
                LogHelper.WriteLog(e);
                result.IsSuccessful = false;
                result.Code         = "003951";
                result.Result       = null;
                return(result);
            }
        }