예제 #1
0
        /// <summary>
        /// 加载其它数据
        /// </summary>
        /// <param name="operations">操作信息</param>
        /// <param name="query">查询对象</param>
        /// <returns>返回操作功能列表</returns>
        List <Operation> LoadOtherData(IEnumerable <Operation> operations, IQuery query)
        {
            if (operations.IsNullOrEmpty())
            {
                return(new List <Operation>(0));
            }
            if (query == null)
            {
                return(operations.ToList());
            }

            #region 操作分组

            List <OperationGroup> groupList = null;
            if (query.AllowLoad <Operation>(c => c.Group))
            {
                var groupIds = operations.Select(c => c.Group?.Id ?? 0).Distinct().ToList();
                groupList = operationGroupService.GetList(groupIds);
            }

            #endregion

            foreach (var operation in operations)
            {
                if (operation == null)
                {
                    continue;
                }
                if (!groupList.IsNullOrEmpty())
                {
                    operation.SetGroup(groupList.FirstOrDefault(c => c.Id == operation.Group?.Id));
                }
            }
            return(operations.ToList());
        }
예제 #2
0
        /// <summary>
        /// 获取操作分组列表
        /// </summary>
        /// <param name="filter">操作分组筛选信息</param>
        /// <returns>返回操作分组</returns>
        public List <OperationGroupDto> GetOperationGroupList(OperationGroupFilterDto filter)
        {
            var operationGroupList = operationGroupService.GetList(filter?.ConvertToFilter());

            return(operationGroupList.Select(c => c.MapTo <OperationGroupDto>()).ToList());
        }