123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- using Mapster;
- using SqlSugar;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using wms.sqlsugar.model.cp;
- using WMS.BZModels;
- using WMS.BZModels.Dto.CP.BillInventoryReportDtos;
- using WMS.BZSqlSugar;
- using WMS.Info;
- namespace WMS.BZServices.CP
- {
- public class BillInventoryReportService
- {
- private readonly Repository<BillInventoryReport> _billInventoryReportRepository;
- public BillInventoryReportService(Repository<BillInventoryReport> billInventoryReportRepository)
- {
- _billInventoryReportRepository = billInventoryReportRepository;
- }
- public PagedInfo<BillInventoryReportDto> GetPageList(Pagination pagination, BillInventoryReportQueryDto billInvNowQueryDto)
- {
- ISugarQueryable<BillInventoryReport> sugarQueryable = GetQueryable(billInvNowQueryDto);
- var list = sugarQueryable. ToPage<BillInventoryReport, BillInventoryReportDto>(pagination);
- return list;
- }
- public IList<BillInventoryReportDto> GetList(BillInventoryReportQueryDto billInvNowQueryDto)
- {
- ISugarQueryable<BillInventoryReport> sugarQueryable = GetQueryable(billInvNowQueryDto);
- var list = sugarQueryable.ToList().Adapt<List<BillInventoryReportDto>>();
- return list;
- }
- private ISugarQueryable<BillInventoryReport> GetQueryable(BillInventoryReportQueryDto billInventoryReportQueryDto)
- {
- var predicate = Expressionable.Create<BillInventoryReport>();
-
- predicate = predicate.AndIF(!string.IsNullOrEmpty(billInventoryReportQueryDto?.KeyWord), m => m.DateMonth.Contains(billInventoryReportQueryDto.KeyWord));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(billInventoryReportQueryDto?.DateMonth), m => m.DateMonth.Contains(billInventoryReportQueryDto.DateMonth));
- predicate = predicate.AndIF(billInventoryReportQueryDto != null && billInventoryReportQueryDto.StartTimeBegin.HasValue, m => m.StartTime >= billInventoryReportQueryDto.StartTimeBegin);
- predicate = predicate.AndIF(billInventoryReportQueryDto != null && billInventoryReportQueryDto.StartTimeEnd.HasValue, m => m.StartTime <= billInventoryReportQueryDto.StartTimeEnd);
- predicate = predicate.AndIF(billInventoryReportQueryDto != null && billInventoryReportQueryDto.EndTimeBegin.HasValue, m => m.EndTime >= billInventoryReportQueryDto.EndTimeBegin);
- predicate = predicate.AndIF(billInventoryReportQueryDto != null && billInventoryReportQueryDto.EndTimeEnd.HasValue, m => m.EndTime <= billInventoryReportQueryDto.EndTimeEnd);
- var sugarQueryable = _billInventoryReportRepository.Queryable().Where(predicate.ToExpression());
- return sugarQueryable;
- }
- }
- }
|