Subversion Repositories SmartDukaan

Rev

Rev 36103 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
22925 ashik.ali 1
package com.spice.profitmandi.service.inventory;
22471 ashik.ali 2
 
22925 ashik.ali 3
import com.spice.profitmandi.common.exception.ProfitMandiBusinessException;
24995 amit.gupta 4
import com.spice.profitmandi.common.model.BrandStockPrice;
22925 ashik.ali 5
import com.spice.profitmandi.common.model.CustomCurrentInventorySnapshot;
22471 ashik.ali 6
import com.spice.profitmandi.common.model.InventoryItemAgingModel;
26299 amit.gupta 7
import com.spice.profitmandi.common.model.ItemDescriptionModel;
30493 amit.gupta 8
import com.spice.profitmandi.dao.entity.catalog.Category;
23650 amit.gupta 9
import com.spice.profitmandi.dao.entity.fofo.CustomerReturnItem;
23638 amit.gupta 10
import com.spice.profitmandi.dao.entity.fofo.DebitNote;
23884 amit.gupta 11
import com.spice.profitmandi.dao.entity.fofo.InventoryItem;
23638 amit.gupta 12
import com.spice.profitmandi.dao.entity.fofo.PurchaseReturnItem;
30493 amit.gupta 13
import org.springframework.cache.annotation.Cacheable;
30148 amit.gupta 14
import org.springframework.stereotype.Service;
23796 amit.gupta 15
 
30148 amit.gupta 16
import java.time.LocalDate;
17
import java.time.LocalDateTime;
18
import java.util.List;
19
import java.util.Map;
20
import java.util.Set;
21
 
22471 ashik.ali 22
@Service
22925 ashik.ali 23
public interface InventoryService {
33245 ranu 24
    public Map<Integer, String> getItemIdDescriptionMap(Set<Integer> itemIds) throws ProfitMandiBusinessException;
27529 tejbeer 25
 
24083 amit.gupta 26
	public Map<Integer, String> getCatalogItemDescriptionMap(String brand, int categoryId);
27529 tejbeer 27
 
23418 ashik.ali 28
	public Set<String> getAllTagListingBrands();
27529 tejbeer 29
 
23443 amit.gupta 30
	public Set<String> getAllTagListingBrands(int categoryId);
27529 tejbeer 31
 
30493 amit.gupta 32
	@Cacheable(value = "catalog.categories", cacheManager = "thirtyMinsTimeOutCacheManager")
33245 ranu 33
    List<Category> getAllCategories() throws ProfitMandiBusinessException;
30493 amit.gupta 34
 
33245 ranu 35
    public Map<Integer, String> getModelDescriptionMap(String brand) throws ProfitMandiBusinessException;
27529 tejbeer 36
 
30148 amit.gupta 37
	public Map<Integer, String> getModelDescriptionMap(Set<String> brands) throws Exception;
27529 tejbeer 38
 
30500 amit.gupta 39
	public Map<Integer, String> getModelDescriptionMap(int categoryId, List<String> brands) throws Exception;
40
 
33245 ranu 41
    public Map<String, Object> getCurrentInventorySnapshot(int fofoId, int offset, int limit, String searchTerm) throws ProfitMandiBusinessException;
27529 tejbeer 42
 
22925 ashik.ali 43
	public Map<String, Object> getBadInventorySnapshot(int fofoId, int offset, int limit, String searchTerm);
27529 tejbeer 44
 
45
	public Map<String, Object> getPaginatedCurrentInventorySnapshot(int fofoId, int offset, int limit,
33245 ranu 46
                                                                    String searchTerm) throws ProfitMandiBusinessException;
27529 tejbeer 47
 
30197 tejbeer 48
	public Map<String, Object> getCatalog(int fofoId, int offset, int limit, String searchTerm, int catalogItemId,
30500 amit.gupta 49
										  String brand, boolean accesories) throws ProfitMandiBusinessException;
27529 tejbeer 50
 
30197 tejbeer 51
	public Map<String, Object> getPaginatedCatalog(int fofoId, int offset, int limit, String searchTerm, int itemId,
52
			String brand, boolean accesories) throws ProfitMandiBusinessException;
27529 tejbeer 53
 
54
	public CustomCurrentInventorySnapshot checkItemAvailability(int itemId, int fofoId)
55
			throws ProfitMandiBusinessException;
56
 
57
	public Map<String, Object> getGrnHistory(int fofoId, LocalDateTime startTime, LocalDateTime endTime, int offset,
58
			int limit, String purchaseReference, String searchType) throws ProfitMandiBusinessException;
59
 
60
	public Map<String, Object> getPaginatedGrnHistory(int fofoId, LocalDateTime startTime, LocalDateTime endTime,
61
			int offset, int limit) throws ProfitMandiBusinessException;
62
 
63
	public Map<String, Object> getGrnHistoryDetail(int fofoId, int purchaseId, String host, int port, String webapp)
64
			throws ProfitMandiBusinessException;
65
 
66
	public Map<String, Object> getGrnHistoryDetail(int fofoId, String purchaseReference, String host, int port,
67
			String webapp) throws ProfitMandiBusinessException;
68
 
69
	public List<InventoryItemAgingModel> getItemAgingByInterval(int fofoId, List<Integer> intervals)
70
			throws ProfitMandiBusinessException;
71
 
72
	public Map<String, Object> getPaginatedItemAgingByInterval(int fofoId, List<Integer> intervals,
73
			String searchContent, int offset, int limit) throws ProfitMandiBusinessException;
74
 
22925 ashik.ali 75
	public Map<String, Object> addToCart(String cartJson, int fofoId) throws ProfitMandiBusinessException;
27529 tejbeer 76
 
22925 ashik.ali 77
	public Map<String, Object> validateCart(String cartJson, int fofoId) throws ProfitMandiBusinessException;
27529 tejbeer 78
 
23650 amit.gupta 79
	public void saleReturnInventoryItem(CustomerReturnItem customerReturnItem) throws ProfitMandiBusinessException;
27529 tejbeer 80
 
24995 amit.gupta 81
	public Map<String, BrandStockPrice> getBrandWiseStockValue(int fofoId);
27529 tejbeer 82
 
83
	public void returnInventory(PurchaseReturnItem purchaseReturnItem);
84
 
85
	// public void returnInventoryItems(List<InventoryItem> inventoryItems,
86
	// DebitNote debitNote);
23638 amit.gupta 87
	public void returnItems(DebitNote debitNote) throws Exception;
27529 tejbeer 88
 
36103 amit 89
	public void restoreReturnedItems(DebitNote debitNote) throws Exception;
90
 
23884 amit.gupta 91
	float getTotalAmountInStock(int fofoId);
27529 tejbeer 92
 
23884 amit.gupta 93
	List<InventoryItem> getInventoryInStock();
27529 tejbeer 94
 
23884 amit.gupta 95
	List<InventoryItem> getInventoryInStock(int fofoId, int itemId);
27529 tejbeer 96
 
23884 amit.gupta 97
	List<InventoryItem> getInventoryInStock(int fofoId, int itemId, LocalDateTime date);
27529 tejbeer 98
 
23884 amit.gupta 99
	List<InventoryItem> getInventoryInStock(int itemId, LocalDateTime date);
27529 tejbeer 100
 
23968 amit.gupta 101
	public void updatePriceDrop(List<InventoryItem> inventoryItems, float amount);
27529 tejbeer 102
 
33245 ranu 103
    public Map<Integer, String> getCatalogIdDescriptionMap(Set<Integer> catalogIds) throws ProfitMandiBusinessException;
27529 tejbeer 104
 
24264 amit.gupta 105
	public void rollbackInventory(int inventoryItemId, int rollbackQuantity, int orderId);
27529 tejbeer 106
 
35191 amit 107
    double getActivatedStockAmount(int fofoId) throws ProfitMandiBusinessException;
27529 tejbeer 108
 
27618 tejbeer 109
	public List<ItemDescriptionModel> getAllPartnerItemStringDescription(boolean anyColor);
27529 tejbeer 110
 
26299 amit.gupta 111
	public void addActivatedImeis(Map<String, LocalDateTime> imeisActivationMap);
27529 tejbeer 112
 
33952 aman.kumar 113
	public void addActivatedImeis(Map<String, LocalDateTime> imeisActivationMap, int authId);
114
 
27529 tejbeer 115
	Map<Integer, List<InventoryItemAgingModel>> getItemAgingByInterval(List<Integer> intervals)
116
			throws ProfitMandiBusinessException;
117
 
30197 tejbeer 118
	void getItemAvailabilityAndIndent() throws Exception;
27583 tejbeer 119
 
120
	public Map<Integer, AvailabilityModel> getStoreAndOurStock(int storeId, List<Integer> itemIds);
121
}