コード例 #1
0
        /// <summary>
        /// 加载列表
        /// </summary>
        public async Task <TableData> Load(QueryWmsInboundOrderDtblListReq request)
        {
            var loginContext = _auth.GetCurrentUser();

            if (loginContext == null)
            {
                throw new CommonException("登录已过期", Define.INVALID_TOKEN);
            }

            //todo:普通账号如何分配明细的字段????先写死😰

            var properties = _dbExtension.GetProperties("WmsInboundOrderDtbl");

            var result = new TableData();
            var objs   = UnitWork.Find <WmsInboundOrderDtbl>(null);

            if (!string.IsNullOrEmpty(request.InboundOrderId))
            {
                objs = objs.Where(u => u.OrderId == request.InboundOrderId);
            }

            if (!string.IsNullOrEmpty(request.key))
            {
                objs = objs.Where(u => u.GoodsId.Contains(request.key));
            }

            var propertyStr = string.Join(',', properties.Select(u => u.Key));

            result.columnHeaders = properties;
            result.data          = objs.OrderBy(u => u.Id)
                                   .Skip((request.page - 1) * request.limit)
                                   .Take(request.limit).Select($"new ({propertyStr})");
            result.count = objs.Count();
            return(result);
        }
コード例 #2
0
        /// <summary>
        /// 获取用户可访问的字段列表
        /// </summary>
        /// <param name="moduleCode">模块的code</param>
        /// <returns></returns>
        public List <KeyDescription> GetProperties(string moduleCode)
        {
            var allprops = _dbExtension.GetProperties(moduleCode);
            var props    = UnitWork.Find <Relevance>(u =>
                                                     u.Key == Define.ROLEDATAPROPERTY && _userRoleIds.Contains(u.FirstId) && u.SecondId == moduleCode)
                           .Select(u => u.ThirdId);

            return(allprops.Where(u => props.Contains(u.Key)).ToList());
        }
コード例 #3
0
        public List <KeyDescription> GetProperties(string moduleCode)
        {
//            var module = UnitWork.FindSingle<Module>(u =>u.Code == moduleCode);
//            if(module == null)
//            {
//                throw new Exception("该模块不存在");
//            }
//            if(module.IsSys){
//                throw new Exception("系统内置模块,不能进行字段分配");
//            }
            return(_dbExtension.GetProperties(moduleCode));
        }
コード例 #4
0
        /// <summary>
        /// 获取用户可访问的字段列表
        /// </summary>
        /// <param name="moduleCode">模块的code</param>
        /// <returns></returns>
        public List <KeyDescription> GetProperties(string moduleCode)
        {
            var allprops = _dbExtension.GetProperties(moduleCode);

            //如果是系统模块,直接返回所有字段。防止开发者把模块配置成系统模块,还在外层调用loginContext.GetProperties("xxxx");
            bool?isSysModule = UnitWork.FirstOrDefault <Module>(u => u.Code == moduleCode)?.IsSys;

            if (isSysModule != null && isSysModule.Value)
            {
                return(allprops);
            }

            var props = UnitWork.Find <Relevance>(u =>
                                                  u.Key == Define.ROLEDATAPROPERTY && _userRoleIds.Contains(u.FirstId) && u.SecondId == moduleCode)
                        .Select(u => u.ThirdId);

            return(allprops.Where(u => props.Contains(u.Key)).ToList());
        }
コード例 #5
0
        /// <summary>
        /// 获取用户可访问的字段列表
        /// </summary>
        /// <param name="moduleCode">模块的code</param>
        /// <returns></returns>
        public List <KeyDescription> GetProperties(string moduleCode)
        {
//            //和部分逻辑冲突,需要屏蔽掉
//            var module = UnitWork.FindSingle<Module>(u =>u.Code == moduleCode);
//             if(module == null)
//            {
//                throw new Exception("该模块不存在");
//            }
//            if(module.IsSys){
//                throw new Exception("系统内置模块,不能进行字段分配");
//            }

            var allprops = _dbExtension.GetProperties(moduleCode);
            var props    = UnitWork.Find <Relevance>(u =>
                                                     u.Key == Define.ROLEDATAPROPERTY && _userRoleIds.Contains(u.FirstId) && u.SecondId == moduleCode)
                           .Select(u => u.ThirdId);

            return(allprops.Where(u => props.Contains(u.Key)).ToList());
        }
コード例 #6
0
 public List <KeyDescription> GetProperties(string moduleCode)
 {
     return(_dbExtension.GetProperties(moduleCode));
 }