public List <PendingVoucherRequest> Get2(String id) { List <PendingVoucherRequest> l1 = new List <PendingVoucherRequest>(); int did = Convert.ToInt32(id); l1 = new VoucherRepo().ListPendingVoucherRequests(did); return(l1); }
private IQueryable <Olma.Voucher> BuildVoucherSearchQuery() { var query = VoucherRepo .FindAll() .AsNoTracking() .Where(i => i.IsDeleted == false); //var postingAccountIds = AuthData.GetPostingAccountIds().ToArray(); if (VouchersSearchRequest.CustomerId?.Count > 0) { var predicate = PredicateBuilder.New <Olma.Voucher>(v => VouchersSearchRequest.CustomerId.Contains(v.CustomerDivision.CustomerId)); predicate.Or(v => v.ReceivingCustomerId != null && VouchersSearchRequest.CustomerId.Contains(v.ReceivingCustomerId.Value)); query = query.Where(predicate); } if (VouchersSearchRequest.Type != null) { query = query.Where(v => v.Type == VouchersSearchRequest.Type); } if (!string.IsNullOrEmpty(VouchersSearchRequest.DocumentNumber)) { query = query.Where(v => v.Document.Number.Contains(VouchersSearchRequest.DocumentNumber)); //TODO compare as SQL LIKE } if (VouchersSearchRequest.FromIssueDate != null) { query = query.Where(v => v.Document.IssuedDateTime >= VouchersSearchRequest.FromIssueDate.Value.Date); } if (VouchersSearchRequest.ToIssueDate != null) { query = query.Where(v => v.Document.IssuedDateTime <= VouchersSearchRequest.ToIssueDate.Value.Date); } if (VouchersSearchRequest.States != null) { query = query.Where(i => VouchersSearchRequest.States.Contains(i.Status)); } if (VouchersSearchRequest.ReasonTypes?.Count > 0) { query = query.Where(i => VouchersSearchRequest.ReasonTypes.Contains(i.ReasonTypeId)); } if (VouchersSearchRequest.LoadCarrierTypes?.Count > 0) { query = query.Where(i => i.Positions.Any(p => VouchersSearchRequest.LoadCarrierTypes.Contains(p.LoadCarrier.TypeId))); } if (!string.IsNullOrEmpty(VouchersSearchRequest.Shipper)) { query = query.Where(v => v.Shipper != null && v.Shipper.CompanyName.Contains(VouchersSearchRequest.Shipper)); } if (!string.IsNullOrEmpty(VouchersSearchRequest.SubShipper)) { query = query.Where(v => v.SubShipper != null && v.SubShipper.CompanyName.Contains(VouchersSearchRequest.SubShipper)); } if (!string.IsNullOrEmpty(VouchersSearchRequest.Recipient)) { query = query.Where(v => v.Recipient != null && v.Recipient.CompanyName.Contains(VouchersSearchRequest.Recipient)); } if (VouchersSearchRequest.RecipientType != null) { query = query.Where(v => v.RecipientType == VouchersSearchRequest.RecipientType); } if (VouchersSearchRequest.ValidFrom != null) { query = query.Where(v => v.ValidUntil >= VouchersSearchRequest.ValidFrom.Value.Date); } if (VouchersSearchRequest.ValidTo != null) { query = query.Where(v => v.ValidUntil <= VouchersSearchRequest.ValidTo.Value.Date); } if (VouchersSearchRequest.QuantityFrom != null) { query = query.Where(v => v.Positions.Any(p => p.LoadCarrierQuantity >= VouchersSearchRequest.QuantityFrom)); } if (VouchersSearchRequest.QuantityTo != null) { query = query.Where(v => v.Positions.Any(p => p.LoadCarrierQuantity <= VouchersSearchRequest.QuantityTo)); } if (!string.IsNullOrEmpty(VouchersSearchRequest.Supplier)) { query = query.Where(v => v.Supplier != null && v.Supplier.CompanyName.Contains(VouchersSearchRequest.Supplier)); } if (VouchersSearchRequest.HasDplNote.HasValue) { query = query.Where(v => v.DplNotes.Any() == VouchersSearchRequest.HasDplNote.Value); } if (!string.IsNullOrEmpty(VouchersSearchRequest.CustomerReference)) { query = query.Where(v => v.CustomerReference.Contains(VouchersSearchRequest.CustomerReference)); } return(query); }