public ICollection <Resource.Vendor> query(VendorQuery query) { IQueryable <DB.Models.Vendor> vendors = context.Vendor.Where(query.asExpression()); vendors = query.getOrdering(vendors).Skip(query.page * query.results).Take(query.results); return(mapper.Map <ICollection <DB.Models.Vendor>, ICollection <API.Resource.Vendor> >(vendors.ToList())); }
/// <summary> /// Test Find using the Query class /// </summary> private void Step_30_TestFindByQuery_Generated() { using (TransactionManager tm = CreateTransaction()) { //Insert Mock Instance Vendor mock = CreateMockInstance(tm); bool result = DataRepository.VendorProvider.Insert(tm, mock); Assert.IsTrue(result, "Could Not Test FindByQuery, Insert Failed"); VendorQuery query = new VendorQuery(); query.AppendEquals(VendorColumn.VendorId, mock.VendorId.ToString()); query.AppendEquals(VendorColumn.AccountNumber, mock.AccountNumber.ToString()); query.AppendEquals(VendorColumn.Name, mock.Name.ToString()); query.AppendEquals(VendorColumn.CreditRating, mock.CreditRating.ToString()); query.AppendEquals(VendorColumn.PreferredVendorStatus, mock.PreferredVendorStatus.ToString()); query.AppendEquals(VendorColumn.ActiveFlag, mock.ActiveFlag.ToString()); if (mock.PurchasingWebServiceUrl != null) { query.AppendEquals(VendorColumn.PurchasingWebServiceUrl, mock.PurchasingWebServiceUrl.ToString()); } query.AppendEquals(VendorColumn.ModifiedDate, mock.ModifiedDate.ToString()); TList <Vendor> results = DataRepository.VendorProvider.Find(tm, query); Assert.IsTrue(results.Count == 1, "Find is not working correctly. Failed to find the mock instance"); } }
public async Task Query_WhenInutIsValid_ShouldTakeAmountOfVendorsEqualToPageSize() { // Arrange var vendorQuery = new VendorQuery { PageSize = 1, PageNumber = 1 }; const string name1 = "v1"; const string name2 = "v2"; _efContext.Vendor.Add(new Vendor { Name = name2 }); _efContext.Vendor.Add(new Vendor { Name = name1 }); _efContext.SaveChanges(); foreach (var vendor in _efContext.Vendor) { _mapperMock.Setup(m => m.Map <VendorModel>(vendor)).Returns(new VendorModel { Name = vendor.Name }); } // Act var result = await _service.Query(vendorQuery); // Assert result.Vendors.Should().HaveCount(1); result.Vendors[0].Name.Should().Be(name1); }
public IHttpActionResult Get(int id) { ThrowIfUserHasNoRole(readRole); using (VendorQuery vendorQuery = new VendorQuery(Db)) { var data = vendorQuery.GetByPrimaryKey(id); SaveLog("Vendor", "Get", JsonConvert.SerializeObject(new { primaryKey = id })); return(Ok(new SuccessResponse(data))); } }
public void Query_WhenPageNumberIsLessThenOne_ShouldThrowException(int pageNumber) { // Arrange var vendorQuery = new VendorQuery { PageNumber = pageNumber, PageSize = 1 }; // Act, Assert _service.Awaiting(s => s.Query(vendorQuery)).ShouldThrow <ArgumentOutOfRangeException>(); }
public async Task Get_All_Vendors_Should_return_10() { const int expectedCount = 10; var query = new VendorQuery { AutoComplete = false, PageNumber = 1, Limit = 20 }; var result = await _vendorSearchService.SearchVendors(query); result.Count.Should().Be(expectedCount); }
public IHttpActionResult Search([FromUri] VendorSearchFilter filter) { ThrowIfUserHasNoRole(readRole); if (filter == null) { throw new KairosException("Missing search filter parameter"); } using (var vendorQuery = new VendorQuery(Db)) { var data = vendorQuery.Search(filter); return(Ok(new SuccessResponse(data))); } }
private ProjectEntryFormData CreateFormData(ProjectDTO projectDTO) { if (projectDTO == null) { return(new ProjectEntryFormData()); } ProjectEntryFormData formData = new ProjectEntryFormData(); var _operator = new OperatorQuery(this.Db).GetByPrimaryKey(projectDTO.Operator_FK); if (_operator != null) { formData.Operators.Add(_operator); } var deliveryArea = new DeliveryAreaQuery(this.Db).GetByPrimaryKey(projectDTO.DeliveryArea_FK); if (deliveryArea != null) { formData.DeliveryAreas.Add(deliveryArea); } var vendor = new VendorQuery(this.Db).GetByPrimaryKey(projectDTO.Vendor_FK); if (vendor != null) { formData.Vendors.Add(vendor); } bool projectManagerIsExist = (projectDTO.User_FK != null); if (projectManagerIsExist) { var user = new UserQuery(this.Db).GetByPrimaryKey((int)projectDTO.User_FK); if (user != null) { formData.Users.Add(user); } } return(formData); }
public async Task Query_WhenInutIsValid_ShouldSkipVendorsAccordingToToPageNumberAndPageSize() { // Arrange var vendorQuery = new VendorQuery { PageSize = 2, PageNumber = 2 }; const string name1 = "v1"; const string name2 = "v2"; const string name3 = "v3"; _efContext.Vendor.AddRange(new[] { new Vendor { Name = name3 }, new Vendor { Name = name2 }, new Vendor { Name = name1 } }); _efContext.SaveChanges(); foreach (var vendor in _efContext.Vendor) { _mapperMock.Setup(m => m.Map <VendorModel>(vendor)).Returns(new VendorModel { Name = vendor.Name }); } // Act var result = await _service.Query(vendorQuery); // Assert result.Vendors.Should().HaveCount(1); result.Vendors[0].Name.Should().Be(name3); }
public async Task Query_WhenSearchTextIsEmpty_ShouldNotFilterBySearchText() { // Arrange var vendorQuery = new VendorQuery { PageSize = 10, PageNumber = 1 }; _efContext.Vendor.Add(new Vendor { Name = "vendor 1" }); _efContext.Vendor.Add(new Vendor { Name = "vndor 1" }); _efContext.SaveChanges(); // Act var result = await _service.Query(vendorQuery); // Assert result.Vendors.Should().HaveCount(2); }
public async Task Search_vendor_By_Category() { // Arrange await SetupVendorData(); const int expectedCount = 1; const string expectedBudgetRegion = plugins.Constants.BudgetRegion.Japan; // Act var query = new VendorQuery { AutoComplete = false, PageNumber = 1, Limit = 20, BudgetRegion = expectedBudgetRegion }; var result = await _vendorSearchService.SearchVendors(query); // Assert result.Count.Should().Be(expectedCount); var expectedVendor = result.Items.First(); expectedVendor.VendorCategoryModels.Count.Should().Be(1); expectedVendor.VendorCategoryModels.First().RuleBudgetRegions.First().Should().Be(expectedBudgetRegion); }
public VendorQuery Vendor([Inject] VendorQuery entityQuery) { return(entityQuery); }
public JsonResult Get([Bind][FromQuery] VendorQuery query) { return(Json(_vendorRepo.query(query))); }
public VendorEntryDataProvider(GlobalSolusindoDb db, tblM_User user, AccessControl accessControl, VendorQuery vendorQuery) : base(db, user) { this.accessControl = accessControl; this.vendorQuery = vendorQuery; }
public VendorListDataProvider(GlobalSolusindoDb db, tblM_User user, VendorQuery vendorQuery) : base(db, user) { this.vendorQuery = vendorQuery; }
public async Task Search_Vendor_By_Category_And_BudgetRegion() { // Arrange var vendor1 = await EFContext.Vendor.FirstOrDefaultAsync(v => v.Name == "Vendor_1"); if (!vendor1.Categories.Any()) { await SetupVendorData(); } var usCurrency = await EFContext.Currency.FirstOrDefaultAsync(a => a.Symbol == "$"); vendor1.Categories.Add(new VendorCategory { Name = plugins.Constants.VendorCategory.UsageBuyoutContract, IsPreferredSupplier = false, HasDirectPayment = false, Created = DateTime.Now, Modified = DateTime.Now, Currency = usCurrency, DefaultCurrencyId = usCurrency.Id, VendorCategoryRules = new List <VendorRule> { //NORTH AMERICA AREA new VendorRule { Name = "Rule 1 Usage", Rule = new Rule { Name = "12 Film Ltd._VendorPayment_Rule 1 Usage", Created = DateTime.Now, Modified = DateTime.Now, Criteria = "{\"FieldName\":null,\"Operator\":\"And\",\"TargetValue\":null,\"Children\":[{\"FieldName\":\"BudgetRegion\",\"Operator\":\"Equal\",\"TargetValue\":\"NORTHERN AMERICA AREA\",\"Children\":[]},{\"FieldName\":\"CostType\",\"Operator\":\"Equal\",\"TargetValue\":\"Buyout\",\"Children\":[]},{\"FieldName\":\"IsAIPE\",\"Operator\":\"Equal\",\"TargetValue\":\"False\",\"Children\":[]},{\"FieldName\":\"TotalCostAmount\",\"Operator\":\"GreaterThanOrEqual\",\"TargetValue\":\"0\",\"Children\":[]}]}", Definition = "{\"DetailedSplit\":false,\"Splits\":[{\"CostTotalName\":\"CostTotal\",\"AIPESplit\":0.0,\"OESplit\":0.0,\"FPSplit\":0.0,\"FASplit\":1.0}]}", Priority = 0, Type = RuleType.VendorPayment } }, //GREATER CHINA AREA new VendorRule { Name = "Rule 2 Usage", Rule = new Rule { Name = "12 Film Ltd._VendorPayment_Rule 2 Usage", Created = DateTime.Now, Modified = DateTime.Now, Criteria = "{\"FieldName\":null,\"Operator\":\"And\",\"TargetValue\":null,\"Children\":[{\"FieldName\":\"BudgetRegion\",\"Operator\":\"Equal\",\"TargetValue\":\"GREATER CHINA AREA\",\"Children\":[]},{\"FieldName\":\"CostType\",\"Operator\":\"Equal\",\"TargetValue\":\"Buyout\",\"Children\":[]},{\"FieldName\":\"IsAIPE\",\"Operator\":\"Equal\",\"TargetValue\":\"False\",\"Children\":[]},{\"FieldName\":\"TotalCostAmount\",\"Operator\":\"GreaterThanOrEqual\",\"TargetValue\":\"0\",\"Children\":[]}]}", Definition = "{\"DetailedSplit\":false,\"Splits\":[{\"CostTotalName\":\"CostTotal\",\"AIPESplit\":0.0,\"OESplit\":0.5,\"FPSplit\":0.0,\"FASplit\":1.0}]}", Priority = 0, Type = RuleType.VendorPayment } } } }); EFContext.Update(vendor1); EFContext.SaveChanges(); await ReindexItem <VendorSearchItem, Vendor>(vendor1, Constants.ElasticSearchIndices.VendorIndexName); const int expectedCount = 1; const string expectedBudgetRegion = plugins.Constants.BudgetRegion.China; // Act var query = new VendorQuery { AutoComplete = false, PageNumber = 1, Limit = 20, BudgetRegion = expectedBudgetRegion, Category = plugins.Constants.VendorCategory.UsageBuyoutContract }; var result = await _vendorSearchService.SearchVendors(query); // Assert result.Count.Should().Be(expectedCount); var expectedVendor = result.Items.First(); expectedVendor.VendorCategoryModels.Count.Should().Be(1); expectedVendor.VendorCategoryModels.First().RuleBudgetRegions.Should().Contain(expectedBudgetRegion); }