public async Task<IList<Shop>> GetShopsByProduct(string productId) { ProductRepository productRepository = new ProductRepository(); IList<SearchData> searchDataList = new List<SearchData>(); SearchData searchData = null; if (!string.IsNullOrEmpty(productId)) { searchData = new SearchData { SearchField = "ProductId", SearchValue = new List<string> { productId } }; searchDataList.Add(searchData); } var products = await productRepository.GetProduct(productId); var shops = await AccessDb.GetListOf<Shop>(MongoTables.ShopTableName); var shopDetails = from shop in shops join product in products on shop.ShopId equals product.ShopId select new Shop { ShopId = shop.ShopId, Address = shop.Address, EmailAddress = shop.EmailAddress, Latitude = shop.Latitude, Longitude = shop.Longitude, Pincode = shop.Pincode, ShopName = shop.ShopName }; return shopDetails.ToList(); }
public async Task<IList<Product>> GetProduct(ProductQuery productQuery) { IList<SearchData> searchDataList = new List<SearchData>(); SearchData searchData = null; if (!string.IsNullOrEmpty(productQuery.ProductName)) { searchData = new SearchData { SearchField = "ProductName", SearchValue = new List<string> {productQuery.ProductName} }; searchDataList.Add(searchData); } if (!string.IsNullOrEmpty(productQuery.ProductTypeId)) { searchData = new SearchData { SearchField = "ProductTypeId", SearchValue = new List<string> {productQuery.ProductTypeId} }; searchDataList.Add(searchData); } var result = await AccessDb.GetListWithFilter<Product>(searchDataList, MongoTables.ProductTableName); return result; }
public async Task<IList> GetShops(string shopName) { SearchData searchData = null; if (!string.IsNullOrEmpty(shopName)) { searchData = new SearchData { SearchField = "ShopName" }; searchData.SearchValue.Add(shopName); } return await AccessDb.GetListOf<BsonDocument>(searchData, MongoTables.ShopTableName); }