12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- using SqlSugar;
- using WMS.BZModels;
- using WMS.Info;
- using wms.sqlsugar.model.fj;
- using WMS.BZSqlSugar;
- using WMS.BZModels.Dto.FJ.PushInfoDtos;
- namespace WMS.BZServices.FJ
- {
- public class PushInfoService
- {
- private readonly Repository<BillPushinfo> _pushinforepository;
- public PushInfoService(Repository<BillPushinfo> pushinforepository)
- {
- _pushinforepository = pushinforepository;
- }
- public PagedInfo<PushInfoDto> GetPageList(Pagination pagination, PushInfoQueryDto pushinfoQueryDto)
- {
- var predicate = Expressionable.Create<BillPushinfo>();
- if (pushinfoQueryDto.Type == FackbeekType.InterfaceType_HJ_1F_StockIn.GetHashCode())
- {
- pushinfoQueryDto.Code = FackbeekType.InterfaceType_HJ_1F_StockIn.ToString();
- }
- else if (pushinfoQueryDto.Type == FackbeekType.InterfaceType_HJ_2F_BackStockIn.GetHashCode())
- {
- pushinfoQueryDto.Code = FackbeekType.InterfaceType_HJ_2F_BackStockIn.ToString();
- }
- predicate = predicate.AndIF(!string.IsNullOrEmpty(pushinfoQueryDto?.KeyWord), m => m.DocsNo.Contains(pushinfoQueryDto.KeyWord) || m.RFIDBarCode.Contains(pushinfoQueryDto.KeyWord)
- || m.WareCellCode.Contains(pushinfoQueryDto.KeyWord) || m.MatCode.Contains(pushinfoQueryDto.KeyWord) || m.MatName.Contains(pushinfoQueryDto.KeyWord) || m.CLBarCode.Contains(pushinfoQueryDto.KeyWord));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(pushinfoQueryDto?.DocsNo), m => m.DocsNo.Contains(pushinfoQueryDto.DocsNo));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(pushinfoQueryDto?.RFIDBarCode), m => m.RFIDBarCode.Contains(pushinfoQueryDto.RFIDBarCode));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(pushinfoQueryDto?.WareCellCode), m => m.WareCellCode.Contains(pushinfoQueryDto.WareCellCode));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(pushinfoQueryDto?.MatCode), m => m.MatCode.Contains(pushinfoQueryDto.MatCode));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(pushinfoQueryDto?.MatName), m => m.MatName.Contains(pushinfoQueryDto.MatName));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(pushinfoQueryDto?.CLBarCode), m => m.CLBarCode.Contains(pushinfoQueryDto.CLBarCode));
- predicate = predicate.AndIF(!string.IsNullOrEmpty(pushinfoQueryDto?.Code), m => m.TypeCode.Contains(pushinfoQueryDto.Code));
- predicate = predicate.AndIF(pushinfoQueryDto != null && pushinfoQueryDto.AddTimeFrom.HasValue, m => m.AddTime >= pushinfoQueryDto.AddTimeFrom);
- predicate = predicate.AndIF(pushinfoQueryDto != null && pushinfoQueryDto.AddTimeTo.HasValue, m => m.AddTime <= pushinfoQueryDto.AddTimeTo);
- predicate = predicate.AndIF(pushinfoQueryDto != null && pushinfoQueryDto.EndTimeBegin.HasValue, m => m.EditTime >= pushinfoQueryDto.EndTimeBegin);
- predicate = predicate.AndIF(pushinfoQueryDto != null && pushinfoQueryDto.EndTimeEnd.HasValue, m => m.EditTime <= pushinfoQueryDto.EndTimeEnd);
- var query = _pushinforepository.Queryable().Where(predicate.ToExpression())
- .ToPage<BillPushinfo, PushInfoDto>(pagination);
- return query;
- }
- }
- }
|