Ejemplo n.º 1
0
        /// <summary>
        /// 商品列表
        /// </summary>
        /// <param name="search"></param>
        /// <returns></returns>
        public async Task <List <ProductDto> > GetListAsync(ProductSearchListDto search)
        {
            var whereCondition = ExpressionCreator
                                 .New <Product>()
                                 .AndIf(search.Ids.IsNotNullOrEmpty(), x => (search.Ids.Select(x => x).Distinct()).Contains(x.Id))
                                 .AndIf(search.StatusCode > 0, x => (int)x.Status.Code == search.StatusCode);

            var products = await _productRepo.Where(whereCondition).ToListAsync();

            var productsDto = Mapper.Map <List <ProductDto> >(products);

            return(productsDto);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 商品列表
        /// </summary>
        /// <param name="search"></param>
        /// <returns></returns>
        public async Task <List <ProductDto> > GetListAsync(ProductSearchListDto search)
        {
            Expression <Func <Product, bool> > whereCondition = x => true;

            if (!search.Ids.IsNullOrEmpty())
            {
                var ids = search.Ids.Where(x => x.IsNullOrEmpty()).Select(x => x.ToLong().Value);

                whereCondition = whereCondition.And(x => ids.Contains(x.Id));
            }
            var products = await _productRepo.Where(whereCondition).ToListAsync();

            var productsDto = _mapper.Map <List <ProductDto> >(products);

            return(productsDto);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 商品列表
        /// </summary>
        /// <param name="search"></param>
        /// <returns></returns>
        public async Task <List <ProductDto> > GetListAsync(ProductSearchListDto search)
        {
            var whereCondition = ExpressionExtension.True <Product>();

            if (!search.Ids.IsNullOrEmpty())
            {
                var ids = search.Ids.Where(x => x.IsNotNullOrEmpty()).Select(x => x.ToLong().Value).Distinct();

                whereCondition = whereCondition.And(x => ids.Contains(x.Id));
            }
            if (search.StatusCode > 0)
            {
                whereCondition = whereCondition.And(x => (int)x.Status.Code == search.StatusCode);
            }

            var products = await _productRepo.Where(whereCondition).ToListAsync();

            var productsDto = _mapper.Map <List <ProductDto> >(products);

            return(productsDto);
        }
Ejemplo n.º 4
0
 public async Task <ActionResult <List <ProductDto> > > GetListAsync([FromQuery] ProductSearchListDto search)
 {
     return(await _productSrv.GetListAsync(search));
 }