PalletizingService.cs 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using SqlSugar;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using wms.sqlsugar.model.sx;
  8. using WMS.BZModels;
  9. using WMS.BZModels.Dto.SX.PalletizingDtos;
  10. using WMS.BZSqlSugar;
  11. using WMS.Info;
  12. using WMS.Util;
  13. namespace WMS.BZServices.SX
  14. {
  15. public class PalletizingService
  16. {
  17. private readonly Repository<Palletizing> _palletizingRepository;
  18. public PalletizingService(Repository<Palletizing> palletizingRepository)
  19. {
  20. _palletizingRepository = palletizingRepository;
  21. }
  22. public PagedInfo<PalletizingDto> GetPageList(Pagination pagination, PalletizingQueryDto palletizingQueryDto)
  23. {
  24. var predicate = Expressionable.Create<Palletizing>();
  25. predicate = predicate.AndIF(!string.IsNullOrEmpty(palletizingQueryDto?.KeyWord), m => m.TaskNum.ToString().Contains(palletizingQueryDto.KeyWord)
  26. || m.Id.ToString().Contains(palletizingQueryDto.KeyWord) );
  27. predicate = predicate.AndIF(!string.IsNullOrEmpty(palletizingQueryDto?.Equip), m => m.Equip.Contains(palletizingQueryDto.Equip));
  28. predicate = predicate.AndIF(!string.IsNullOrEmpty(palletizingQueryDto?.Id), m => m.Id.ToString().Contains(palletizingQueryDto.Id));
  29. predicate = predicate.AndIF( palletizingQueryDto!=null && palletizingQueryDto.PalletizState.HasValue , m => m.PalletizState.Equals(palletizingQueryDto.PalletizState));
  30. predicate = predicate.AndIF(palletizingQueryDto != null && palletizingQueryDto.TaskNum.HasValue, m => m.TaskNum.Equals(palletizingQueryDto.TaskNum));
  31. predicate = predicate.AndIF(palletizingQueryDto != null && palletizingQueryDto.AddTimeFrom.HasValue, m => m.AddTime >= palletizingQueryDto.AddTimeFrom);
  32. predicate = predicate.AndIF(palletizingQueryDto != null && palletizingQueryDto.AddTimeTo.HasValue, m => m.AddTime <= palletizingQueryDto.AddTimeTo);
  33. var list = _palletizingRepository.Queryable().Where(predicate.ToExpression())
  34. .ToPage<Palletizing, PalletizingDto>(pagination);
  35. return list;
  36. }
  37. }
  38. }