| Line 309... |
Line 309... |
| 309 |
}
|
309 |
}
|
| 310 |
}
|
310 |
}
|
| 311 |
|
311 |
|
| 312 |
private void processPreviousPurchases(Scheme scheme) throws ProfitMandiBusinessException{
|
312 |
private void processPreviousPurchases(Scheme scheme) throws ProfitMandiBusinessException{
|
| 313 |
List<InventoryItem> inventoryItems = inventoryItemRepository.selectBetweenDates(scheme.getStartDateTime(), LocalDateTime.now());
|
313 |
List<InventoryItem> inventoryItems = inventoryItemRepository.selectBetweenDates(scheme.getStartDateTime(), LocalDateTime.now());
|
| - |
|
314 |
if(inventoryItems.isEmpty()) {
|
| - |
|
315 |
return;
|
| - |
|
316 |
}
|
| 314 |
List<Integer> itemIds = schemeItemRepository.selectItemIdsBySchemeId(scheme.getId());
|
317 |
List<Integer> itemIds = schemeItemRepository.selectItemIdsBySchemeId(scheme.getId());
|
| - |
|
318 |
if(itemIds.isEmpty()) {
|
| - |
|
319 |
return;
|
| - |
|
320 |
}
|
| 315 |
List<Item> items = itemRepository.selectByIds(new HashSet<>(itemIds));
|
321 |
List<Item> items = itemRepository.selectByIds(new HashSet<>(itemIds));
|
| 316 |
Map<Integer, String> itemStringMap = this.toItemStringMap(items);
|
322 |
Map<Integer, String> itemStringMap = this.toItemStringMap(items);
|
| 317 |
List<InventoryItem> completedInventoryItems = this.toFilteredPurchaseCompletedInventoryItems(inventoryItems, itemIds, true);
|
323 |
List<InventoryItem> completedInventoryItems = this.toFilteredPurchaseCompletedInventoryItems(inventoryItems, itemIds, true);
|
| - |
|
324 |
if(completedInventoryItems.isEmpty()) {
|
| - |
|
325 |
return;
|
| 318 |
|
326 |
}
|
| 319 |
if(scheme.isRetailerAll()){
|
327 |
if(scheme.isRetailerAll()){
|
| 320 |
for(InventoryItem inventoryItem : completedInventoryItems){
|
328 |
for(InventoryItem inventoryItem : completedInventoryItems){
|
| 321 |
float cashback = this.createSchemeInOut(scheme, inventoryItem);
|
329 |
float cashback = this.createSchemeInOut(scheme, inventoryItem);
|
| 322 |
walletService.addAmountToWallet(inventoryItem.getFofoId(), inventoryItem.getPurchaseId(), WalletReferenceType.SCHEME_IN, "Added SCHEME_IN for item "+itemStringMap.get(inventoryItem.getItemId())+" against invoiceNumber ["+inventoryItem.getPurchase().getPurchaseReference() +"]", cashback);
|
330 |
walletService.addAmountToWallet(inventoryItem.getFofoId(), inventoryItem.getPurchaseId(), WalletReferenceType.SCHEME_IN, "Added SCHEME_IN for item "+itemStringMap.get(inventoryItem.getItemId())+" against invoiceNumber ["+inventoryItem.getPurchase().getPurchaseReference() +"]", cashback);
|
| 323 |
}
|
331 |
}
|
| Line 347... |
Line 355... |
| 347 |
}
|
355 |
}
|
| 348 |
|
356 |
|
| 349 |
private void processPreviousSales(Scheme scheme) throws ProfitMandiBusinessException{
|
357 |
private void processPreviousSales(Scheme scheme) throws ProfitMandiBusinessException{
|
| 350 |
List<FofoOrderItem> fofoOrderItems = fofoOrderItemRepository.selectBetweenDates(scheme.getStartDateTime(), LocalDateTime.now());
|
358 |
List<FofoOrderItem> fofoOrderItems = fofoOrderItemRepository.selectBetweenDates(scheme.getStartDateTime(), LocalDateTime.now());
|
| 351 |
|
359 |
|
| - |
|
360 |
if(fofoOrderItems.isEmpty()){
|
| - |
|
361 |
return;
|
| - |
|
362 |
}
|
| - |
|
363 |
|
| 352 |
Map<Integer, FofoOrderItem> fofoOrderItemIdFofoOrderItemMap = this.toFofoOrderItemIdFofoOrderItemMap(fofoOrderItems);
|
364 |
Map<Integer, FofoOrderItem> fofoOrderItemIdFofoOrderItemMap = this.toFofoOrderItemIdFofoOrderItemMap(fofoOrderItems);
|
| 353 |
|
365 |
|
| 354 |
List<FofoLineItem> fofoLineItems = fofoLineItemRepository.selectByFofoOrderItemIds(fofoOrderItemIdFofoOrderItemMap.keySet());
|
366 |
List<FofoLineItem> fofoLineItems = fofoLineItemRepository.selectByFofoOrderItemIds(fofoOrderItemIdFofoOrderItemMap.keySet());
|
| 355 |
|
367 |
|
| - |
|
368 |
if(fofoLineItems.isEmpty()) {
|
| - |
|
369 |
return;
|
| - |
|
370 |
}
|
| - |
|
371 |
|
| 356 |
Map<Integer, Integer> inventoryItemIdFofoOrderIdMap = this.toInventoryItemIdFofoOrderIdMap(fofoLineItems, fofoOrderItemIdFofoOrderItemMap);
|
372 |
Map<Integer, Integer> inventoryItemIdFofoOrderIdMap = this.toInventoryItemIdFofoOrderIdMap(fofoLineItems, fofoOrderItemIdFofoOrderItemMap);
|
| 357 |
|
373 |
|
| 358 |
List<InventoryItem> inventoryItems = inventoryItemRepository.selectByIds(inventoryItemIdFofoOrderIdMap.keySet());
|
374 |
List<InventoryItem> inventoryItems = inventoryItemRepository.selectByIds(inventoryItemIdFofoOrderIdMap.keySet());
|
| 359 |
|
375 |
|
| - |
|
376 |
if(inventoryItems.isEmpty()) {
|
| - |
|
377 |
return;
|
| - |
|
378 |
}
|
| - |
|
379 |
|
| 360 |
List<Integer> itemIds = schemeItemRepository.selectItemIdsBySchemeId(scheme.getId());
|
380 |
List<Integer> itemIds = schemeItemRepository.selectItemIdsBySchemeId(scheme.getId());
|
| 361 |
|
381 |
|
| - |
|
382 |
if(itemIds.isEmpty()) {
|
| - |
|
383 |
return;
|
| - |
|
384 |
}
|
| - |
|
385 |
|
| 362 |
List<InventoryItem> completedInventoryItems = this.toFilteredPurchaseCompletedInventoryItems(inventoryItems, itemIds, false);
|
386 |
List<InventoryItem> completedInventoryItems = this.toFilteredPurchaseCompletedInventoryItems(inventoryItems, itemIds, false);
|
| 363 |
|
387 |
|
| 364 |
|
388 |
|
| 365 |
if(scheme.isRetailerAll()){
|
389 |
if(scheme.isRetailerAll()){
|
| 366 |
for(InventoryItem inventoryItem : completedInventoryItems){
|
390 |
for(InventoryItem inventoryItem : completedInventoryItems){
|