Product search

Implementing product search functionality

Implementation is REQUIRED

Implementation

You only need to create a new class, implement ProductSearchAdapter interface and fill all required methods. API endpoints for product search are created automatically and secured with token.

It is important to add @Component annotation on top of the class. There is no restriction for class name or location in your project. Our SDK will find your implementation based on the interface (DI).

import ee.smarts.common.v1.Entities.product.Product;
import ee.smarts.common.v1.requests.ProductSearchRequest;
import ee.smarts.starter.adapter.ProductSearchAdapter;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
public class ProductSearchImpl implements ProductSearchAdapter {
@Override
public Product searchByBarcode(ProductSearchRequest request) {
// implement this method
return null;
}
@Override
public List<Product> searchByName(ProductSearchRequest request) {
// implement this method
return null;
}
@Override
public Pageable<Product> findAll(PageRequest<ProductSearchRequest> productSearchRequest){
// implement this method
return null;
}
@Override
public List<Category> findProductCategories(InstitutionRequest institutionRequest){
// implement this method
return null;
}
}

Methods description

searchByBarcode

Method used to request product details based on product SKU code. Used for: adding product to shopping cart, adding product to shopping list, purchase check validation.

searchByName

Method used to request products which contains in the name requested string. Used for: adding product to shopping cart from catalog, adding product to pickup order from catalog.

findAll

Method used to display products in product catalog.

findProductCategories

Method used to display product categories in product catalog.