Subversion Repositories SmartDukaan

Rev

Rev 37149 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 37149 Rev 37206
Line 2... Line 2...
2
 
2
 
3
import com.spice.profitmandi.common.exception.ProfitMandiBusinessException;
3
import com.spice.profitmandi.common.exception.ProfitMandiBusinessException;
4
import com.spice.profitmandi.dao.model.ContentPojo;
4
import com.spice.profitmandi.dao.model.ContentPojo;
5
import com.spice.profitmandi.dao.model.external.CatalogContentModel;
5
import com.spice.profitmandi.dao.model.external.CatalogContentModel;
6
import com.spice.profitmandi.dao.model.external.CatalogSkuModel;
6
import com.spice.profitmandi.dao.model.external.CatalogSkuModel;
-
 
7
import com.spice.profitmandi.dao.model.external.ExternalCategoryModel;
7
import com.spice.profitmandi.dao.model.external.ExternalPage;
8
import com.spice.profitmandi.dao.model.external.ExternalPage;
8
import com.spice.profitmandi.dao.model.external.ExternalStoreModel;
9
import com.spice.profitmandi.dao.model.external.ExternalStoreModel;
9
import com.spice.profitmandi.dao.model.external.StoreSkuModel;
10
import com.spice.profitmandi.dao.model.external.StoreSkuModel;
10
 
11
 
11
import java.util.Collection;
12
import java.util.Collection;
12
import java.util.List;
13
import java.util.List;
13
import java.util.Map;
14
import java.util.Map;
14
 
15
 
15
/**
16
/**
16
 * Backing service for the third-party /external/v1 APIs. Store scoping is
17
 * Backing service for the third-party /external/v1 APIs. Store AND category
17
 * enforced here: every stock/store read is intersected with the calling
18
 * scoping are enforced here: every read is intersected with the calling
18
 * client's mapped stores.
19
 * client's mapped stores and exposed categories.
19
 */
20
 */
20
public interface ExternalApiService {
21
public interface ExternalApiService {
21
 
22
 
22
    ExternalPage<CatalogContentModel> getCatalogMaster(Long updatedSince, int offset, int limit);
23
    List<ExternalCategoryModel> getCategoryMaster(int apiClientId);
23
 
24
 
-
 
25
    ExternalPage<CatalogContentModel> getCatalogMaster(int apiClientId, Long updatedSince, int offset, int limit);
-
 
26
 
24
    ExternalPage<CatalogSkuModel> getCatalogSkuMaster(Long updatedSince, int offset, int limit);
27
    ExternalPage<CatalogSkuModel> getCatalogSkuMaster(int apiClientId, Long updatedSince, int offset, int limit);
25
 
28
 
26
    ExternalPage<StoreSkuModel> getSkuMaster(int apiClientId, Integer storeId, Long updatedSince, int offset,
29
    ExternalPage<StoreSkuModel> getSkuMaster(int apiClientId, Integer storeId, Long updatedSince, int offset,
27
            int limit) throws ProfitMandiBusinessException;
30
            int limit) throws ProfitMandiBusinessException;
28
 
31
 
29
    List<ExternalStoreModel> getStoreMaster(int apiClientId);
32
    List<ExternalStoreModel> getStoreMaster(int apiClientId);
30
 
33
 
31
    Map<Long, ContentPojo> getCatalogsByIds(List<Long> catalogIds);
34
    Map<Long, ContentPojo> getCatalogsByIds(int apiClientId, List<Long> catalogIds);
32
 
35
 
33
    List<CatalogSkuModel> getCatalogSkusByIds(List<Integer> catalogIds);
36
    List<CatalogSkuModel> getCatalogSkusByIds(int apiClientId, List<Integer> catalogIds);
34
 
37
 
35
    List<StoreSkuModel> getStock(int apiClientId, int storeId, Collection<Integer> itemIds)
38
    List<StoreSkuModel> getStock(int apiClientId, int storeId, Collection<Integer> itemIds)
36
            throws ProfitMandiBusinessException;
39
            throws ProfitMandiBusinessException;
-
 
40
 
-
 
41
    ExternalPage<StoreSkuModel> getStockPage(int apiClientId, int storeId, int offset, int limit)
-
 
42
            throws ProfitMandiBusinessException;
37
}
43
}