public async override Task <PagedResultDto <TEntityDto> > GetAll(PagedResultRequestInput input) { CheckGetAllPermission(); var query = _repository.DynamicQuery(input); var tasksCount = await query.CountAsync(); var taskList = query.PageBy(input).ToList(); return(new PagedResultDto <TEntityDto>(tasksCount, ObjectMapper.Map <List <TEntityDto> >(taskList))); }
public async override Task <PagedResultDto <ReelMoveMethodDto> > GetAll(PagedResultRequestInput input) { CheckGetAllPermission(); var query = _repository.DynamicQuery(input).Include(r => r.OutStorages); var tasksCount = await query.CountAsync(); var taskList = query.PageBy(input).ToList(); return(new PagedResultDto <ReelMoveMethodDto>(tasksCount, ObjectMapper.Map <List <ReelMoveMethodDto> >(taskList))); }
public async Task <PagedResultDto <ReelOutLifeDto> > GetOutLifeReel(PagedResultRequestInput input) { // 查询仓库超期物料 // var overdueDaySet = SettingManager.GetSettingValueForTenant<double>("overdueDay", AbpSession.TenantId.Value);// (await _repositoryT.FirstOrDefaultAsync(c => c.TenantId == AbpSession.TenantId && c.Name == "overdueDay")).Value; double overdueDay = SettingManager.GetSettingValueForTenant <double>("overdueDay", AbpSession.TenantId.Value); //Logger.Info(overdueDay.ToString()); DateTime dt = DateTime.Now.AddDays(overdueDay); var outLifeReelsIQ = _repository.GetAllIncluding(r => r.PartNo).Where(r => r.MakeDate <= dt.AddDays((r.ExtendShelfLife + r.PartNo.ShelfLife) * -1) && r.StorageLocationId.Length > 0); //var sql = outLifeReelsIQ.ToSql(); //Logger.Info(outLifeReelsIQ.ToSql()); // (double)(r.PartNo.ShelfLife + r.ExtendShelfLife) .AddDays((r.PartNo.ShelfLife + r.ExtendShelfLife) * -1) var outLifeReels = await outLifeReelsIQ.ToListAsync(); var config = new MapperConfiguration(cfg => { cfg.CreateMap <Reel, ReelOutLifeDto>() .ForMember(x => x.ShelfLife, opt => opt.MapFrom(x => x.PartNo.ShelfLife)) .ForMember(x => x.WarningDay, opt => opt.MapFrom(x => overdueDay)) .ForMember(x => x.OutLifeDate, opt => opt.MapFrom(x => x.MakeDate.AddDays(x.ExtendShelfLife + x.PartNo.ShelfLife))) .ForMember(x => x.OutLifeDay, opt => opt.MapFrom(x => (DateTime.Now.Date - x.MakeDate.AddDays(x.ExtendShelfLife + x.PartNo.ShelfLife)).Days)) .ForMember(x => x.WarnLifeDate, opt => opt.MapFrom(x => x.MakeDate.AddDays(x.ExtendShelfLife + x.PartNo.ShelfLife - overdueDay))) .ForMember(x => x.WarnLifeDay, opt => opt.MapFrom(x => (DateTime.Now.Date - x.MakeDate.AddDays(x.ExtendShelfLife + x.PartNo.ShelfLife - overdueDay)).Days)) .ForMember(x => x.OutLifeType, opt => opt.MapFrom(x => (x.MakeDate > DateTime.Now.AddDays((x.ExtendShelfLife + x.PartNo.ShelfLife) * -1)) ? OutLifeType.Warning : OutLifeType.OutLife)) ; } ); var query = config.CreateMapper().Map <List <ReelOutLifeDto> >(outLifeReels).AsQueryable().DynamicQuery(input); var tasksCount = query.Count(); //默认的分页方式 //var taskList = query.Skip(input.SkipCount).Take(input.MaxResultCount).ToList(); //ABP提供了扩展方法PageBy分页方式 var taskList = query.PageBy(input).ToList(); return(new PagedResultDto <ReelOutLifeDto>(tasksCount, taskList)); }
public async Task <PagedResultDto <GroupReelDto> > GetGroupReel(PagedResultRequestInput input) { // 先按参数查询数据 var query = _repository.DynamicQuery(input); var res = query.GroupBy(r => new { r.PartNoId, r.StorageId }).Select(r => new GroupReelDto() { PartNoId = r.Key.PartNoId, StorageId = r.Key.StorageId, ReelCount = r.Count(), TotalQty = r.Sum(reel => reel.Qty) }); var tasksCount = await res.CountAsync(); var taskList = res.PageBy(input).ToList(); return(new PagedResultDto <GroupReelDto>(tasksCount, taskList)); }
public PagedResultDto <BOMDto> GetItemsById(string Id, PagedResultRequestInput input) { // 查询 // var query = _repository.GetAll().Where(m => m.ProductId == Id); var query = config.CreateMapper().Map <List <BOM>, List <BOMDto> >( _repository.GetAll().Where(m => m.ProductId == Id).ToList()); var res = query.AsQueryable().DynamicQuery(input); var tasksCount = res.Count(); //默认的分页方式 //var taskList = query.Skip(input.SkipCount).Take(input.MaxResultCount).ToList(); //ABP提供了扩展方法PageBy分页方式 var taskList = res.PageBy(input).ToList(); return(new PagedResultDto <BOMDto>(tasksCount, taskList)); }
public async override Task <PagedResultDto <ProductDto> > GetAll(PagedResultRequestInput input) { // 查询 添加组件查询 // var query = _repositoryMPN.GetAll().Where(m => m.MPNHierarchy == MPNHierarchy.组件); input.RequestWMSDtos.Add(new RequestWMSDto() { LinkOperation = LinkOperation.And, Operation = Operation.Equal, PropertyName = "MPNHierarchy", QueryValue = 0 }); //获取总数 var query = _repositoryMPN.DynamicQuery(input); var tasksCount = await query.CountAsync(); //默认的分页方式 //var taskList = query.Skip(input.SkipCount).Take(input.MaxResultCount).ToList(); //ABP提供了扩展方法PageBy分页方式 var taskList = query.PageBy(input).ToList(); return(new PagedResultDto <ProductDto>(tasksCount, config.CreateMapper().Map <List <MPN>, List <ProductDto> >(taskList))); }
public IQueryable <TEntity> DynamicQuery(PagedResultRequestInput input) { var sourceData = GetAll(); return(sourceData.DynamicQuery(input)); }
public async Task <PagedResultDto <ReadyMBillDetailedReportDto> > GetAllAsync(string readyBillId, PagedResultRequestInput input) { var resS = await Task.Factory.StartNew(() => { // 获取输入备料单的记账备料单 var readyBill = _repositoryReadyMBill.FirstOrDefault(readyBillId); if (readyBill == null) { return(new PagedResultDto <ReadyMBillDetailedReportDto>(0, new List <ReadyMBillDetailedReportDto>())); } // 获取筛选条件中的 备料单 合集 var readyBills = _repositoryReadyMBill.GetAll().Where(s => s.ReReadyMBillId == readyBill.ReReadyMBillId).Include(r => r.WorkBills).ThenInclude(s => s.WorkBill).ToList(); // 查询记账备料单的相信信息 var ReadyMBillds = _repositoryReadyMBilld.GetAll().Where(s => readyBills.Select(r => r.Id).Contains(s.ReadyMBillId)).ToList(); var toList = new Func <IEnumerable <IEnumerable <string> >, string>(i => { var list = new List <string>(); foreach (var item in i) { foreach (var str in item) { list.Add(str); } } return(string.Join('|', list.Distinct())); }); // 分组 var res = ReadyMBillds.GroupBy(r => r.PartNoId).Select(s => new ReadyMBillDetailedReportDto() { ReReadyMBillId = readyBill.ReReadyMBillId, WorkBillIds = toList(readyBills.Select(r => r.WorkBills).Select(w => w.Select(wo => wo.WorkBillId + ":" + wo.Qty)).Distinct()), Products = toList(readyBills.Select(r => r.WorkBills).Select(w => w.Select(wo => wo.WorkBill.ProductId)).Distinct()), Lines = toList(readyBills.Select(r => r.WorkBills).Select(w => w.Select(wo => wo.WorkBill.LineId)).Distinct()), DemandQty = s.Sum(r => r.Qty), SendQty = s.Sum(r => r.SendQty), PartNoId = s.Key, FollowQty = s.Sum(r => r.FollowQty), ReadyMBillIds = string.Join('|', readyBills.Select(r => r.Id)), ReelMoveMethodId = s.FirstOrDefault().ReelMoveMethodId, ReturnQty = s.Sum(r => r.ReturnQty), MoreSendQty = s.Sum(r => r.SendQty) - s.Sum(r => r.Qty) - s.Sum(r => r.ReturnQty), NoFollowQty = s.Sum(r => r.SendQty) - s.Sum(r => r.FollowQty), RealSendQty = s.Sum(r => r.SendQty) - s.Sum(r => r.ReturnQty) }); var query = res.AsQueryable().DynamicQuery(input); var tasksCount = query.Count(); //默认的分页方式 //var taskList = query.Skip(input.SkipCount).Take(input.MaxResultCount).ToList(); //ABP提供了扩展方法PageBy分页方式 var taskList = query.PageBy(input).ToList(); return(new PagedResultDto <ReadyMBillDetailedReportDto>(tasksCount, taskList)); }); return(resS); }
protected override IQueryable <User> ApplySorting(IQueryable <User> query, PagedResultRequestInput input) { return(query.OrderBy(r => r.UserName)); }
protected override IQueryable <User> CreateFilteredQuery(PagedResultRequestInput input) { return(Repository.GetAllIncluding(x => x.Roles)); }
public async Task <PagedResultDto <ReelMoveLogDto> > GetAllByRMId(string reelMoveMethodId, PagedResultRequestInput input) { input.RequestWMSDtos.Add(new RequestWMSDto() { PropertyName = "ReelMoveMethodId", Operation = Operation.Equal, LinkOperation = LinkOperation.And, QueryValue = reelMoveMethodId }); var res = await GetAll(input); return(res); }
protected override IQueryable <Role> ApplySorting(IQueryable <Role> query, PagedResultRequestInput input) { return(query.OrderBy(r => r.DisplayName)); }