Ejemplo n.º 1
0
        /// <summary>
        /// 获取Retailer的分页列表信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <PagedResultDto <RetailerListDto> > GetPagedRetailers(GetRetailersInput input)
        {
            var mid   = UserManager.GetControlEmployeeId();
            var query = _retailerRepository.GetAll()
                        .WhereIf(!string.IsNullOrEmpty(input.Name), r => r.Name.Contains(input.Name) || r.Code.Contains(input.Name))
                        .WhereIf(input.Scale.HasValue, r => r.Scale == input.Scale)
                        .WhereIf(input.Markets.HasValue, r => r.MarketType == input.Markets)
                        .WhereIf(input.Status.HasValue, r => r.IsAction == input.Status)
                        .WhereIf(mid.HasValue, r => r.EmployeeId == mid);

            //TODO:根据传入的参数添加过滤条件
            var retailerCount = await query.CountAsync();

            var retailers = await query
                            .OrderByDescending(r => r.CreationTime)
                            .PageBy(input)
                            .ToListAsync();

            //var retailerListDtos = ObjectMapper.Map<List <RetailerListDto>>(retailers);
            var retailerListDtos = retailers.MapTo <List <RetailerListDto> >();

            return(new PagedResultDto <RetailerListDto>(
                       retailerCount,
                       retailerListDtos
                       ));
        }
Ejemplo n.º 2
0
        public async Task <List <RetailerListDto> > GetRetailerLevelListAsync(GetRetailersInput input)
        {
            var mid   = UserManager.GetControlEmployeeId();
            var query = _retailerRepository.GetAll()
                        .WhereIf(!string.IsNullOrEmpty(input.Name), r => r.Name.Contains(input.Name) || r.Code.Contains(input.Name))
                        .WhereIf(input.Scale.HasValue, r => r.Scale == input.Scale)
                        .WhereIf(input.Markets.HasValue, r => r.MarketType == input.Markets)
                        .WhereIf(input.Status.HasValue, r => r.IsAction == input.Status)
                        .WhereIf(mid.HasValue, r => r.EmployeeId == mid);
            var retailers = await query.OrderByDescending(r => r.CreationTime).ToListAsync();

            var retailerListDtos = retailers.MapTo <List <RetailerListDto> >();

            return(retailerListDtos);
        }
Ejemplo n.º 3
0
        public async Task <APIResultDto> ExportRetailerAllExcel(GetRetailersInput input)
        {
            try
            {
                var exportData = await GetRetailerAllListAsync(input);

                var result = new APIResultDto();
                result.Code = 0;
                result.Data = SaveRetailerAllExcel("零售客户详单.xlsx", exportData);
                return(result);
            }
            catch (Exception ex)
            {
                Logger.ErrorFormat("ExportPostInfoExcel errormsg:{0} Exception:{1}", ex.Message, ex);
                return(new APIResultDto()
                {
                    Code = 901, Msg = "网络忙... 请待会重试!"
                });
            }
        }
        /// <summary>
        /// 获取Retailer的分页列表信息
        ///</summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <PagedResultDto <RetailerListDto> > GetPagedRetailerListAsync(GetRetailersInput input)
        {
            var query = _entityRepository.GetAll().Where(r => r.IsAction == input.IsAction)
                        .WhereIf(!string.IsNullOrEmpty(input.Filter), r => r.Name.Contains(input.Filter) || r.Code.Contains(input.Filter));
            var count = await query.CountAsync();

            var entityList = await query
                             .OrderBy(v => v.Id).AsNoTracking()
                             .PageBy(input)
                             .ToListAsync();

            var entityListDtos = entityList.MapTo <List <RetailerListDto> >();

            return(new PagedResultDto <RetailerListDto>(count, entityListDtos));
        }