diff --git a/src/BarCode.Web.Repositories/SGenerateRecordRepositories.cs b/src/BarCode.Web.Repositories/SGenerateRecordRepositories.cs index f2b17f3..b3e9088 100644 --- a/src/BarCode.Web.Repositories/SGenerateRecordRepositories.cs +++ b/src/BarCode.Web.Repositories/SGenerateRecordRepositories.cs @@ -192,6 +192,8 @@ namespace BarCode.Web.Repositories int companyId = loginInfo.UserInfo.CompanyId; List mNumber = new List(); + List mSpec = new List(); + List mName = new List(); var materials_result = await _erpService.BillQueryForMaterial(); List materials = new List(); if (materials_result.IsSuccess) @@ -200,11 +202,22 @@ namespace BarCode.Web.Repositories if (!string.IsNullOrEmpty(dto.MaterialNumber)) { if (materials != null) + { mNumber = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber) || w.MaterialName.Contains(dto.MaterialNumber) || w.Specifications.Contains(dto.MaterialNumber) ).Select(s => s.MaterialNumber).ToList(); + mSpec = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber) + || w.MaterialName.Contains(dto.MaterialNumber) + || w.Specifications.Contains(dto.MaterialNumber) + ).Select(s => s.Specifications).ToList(); + mName = materials.Where(w => w.MaterialNumber.Contains(dto.MaterialNumber) + || w.MaterialName.Contains(dto.MaterialNumber) + || w.Specifications.Contains(dto.MaterialNumber) + ).Select(s => s.MaterialName).ToList(); + } } + List cr_ids = new List(); if (!string.IsNullOrEmpty(dto.CreateUser)) { @@ -277,6 +290,11 @@ namespace BarCode.Web.Repositories } if (!string.IsNullOrEmpty(dto.MaterialNumber)) query = query.Where(w => mNumber.Contains(w.MaterialNumber)); + if (!string.IsNullOrEmpty(dto.MaterialNumber)) + query = query.Where(w => (mSpec.Contains(w.Specifications)|| mName.Contains(w.MaterialName))); + + + if (dto.CreateBeginDate != null) query = query.Where(w => w.GenerateCompleteTime >= dto.CreateBeginDate); if (dto.CreateEndDate != null) @@ -296,6 +314,7 @@ namespace BarCode.Web.Repositories query = query.Where(w => dto.GenerateComplete == w.IsGenerateComplete); if (!string.IsNullOrEmpty(dto.CreateUser)) query = query.Where(w => cr_ids.Contains(w.CreatorId)); + if (dto.IsUpdateMaterial != null) { if (dto.IsUpdateMaterial == true)