| Line 611... |
Line 611... |
| 611 |
|
611 |
|
| 612 |
CustomerAddress customerAddress = null;
|
612 |
CustomerAddress customerAddress = null;
|
| 613 |
if (customCustomer.getCustomerAddressId() != 0) {
|
613 |
if (customCustomer.getCustomerAddressId() != 0) {
|
| 614 |
customerAddress = customer.getCustomerAddress().stream().filter(x -> x.getId() == customCustomer.getCustomerAddressId()).findFirst().get();
|
614 |
customerAddress = customer.getCustomerAddress().stream().filter(x -> x.getId() == customCustomer.getCustomerAddressId()).findFirst().get();
|
| 615 |
}
|
615 |
}
|
| 616 |
FofoOrder fofoOrder = this.createAndGetFofoOrder(customer.getId(), customCustomer.getGstNumber(), fofoId, documentNumber, totalAmount, customCustomer.getCustomerAddressId());
|
616 |
FofoOrder fofoOrder = this.createAndGetFofoOrder(customer.getId(), customCustomer.getGstNumber(), fofoId, documentNumber, totalAmount, customCustomer.getCustomerAddressId(), createOrderRequest.getPoId());
|
| 617 |
|
617 |
|
| 618 |
this.createPaymentOptions(fofoOrder, createOrderRequest.getPaymentOptions());
|
618 |
this.createPaymentOptions(fofoOrder, createOrderRequest.getPaymentOptions());
|
| 619 |
|
619 |
|
| 620 |
int retailerAddressId = retailerRegisteredAddressRepository.selectAddressIdByRetailerId(fofoId);
|
620 |
int retailerAddressId = retailerRegisteredAddressRepository.selectAddressIdByRetailerId(fofoId);
|
| 621 |
|
621 |
|
| Line 696... |
Line 696... |
| 696 |
PendingOrderItem poi = pendingOrderItemRepository.selectById(cfoi.getPoiId());
|
696 |
PendingOrderItem poi = pendingOrderItemRepository.selectById(cfoi.getPoiId());
|
| 697 |
poi.setStatus(OrderStatus.BILLED);
|
697 |
poi.setStatus(OrderStatus.BILLED);
|
| 698 |
poi.setBilledTimestamp(LocalDateTime.now());
|
698 |
poi.setBilledTimestamp(LocalDateTime.now());
|
| 699 |
}
|
699 |
}
|
| 700 |
po.setStatus(OrderStatus.BILLED);
|
700 |
po.setStatus(OrderStatus.BILLED);
|
| 701 |
|
- |
|
| 702 |
}
|
701 |
}
|
| 703 |
//Process scratch
|
702 |
//Process scratch
|
| 704 |
this.processScratchOffer(fofoOrder);
|
703 |
this.processScratchOffer(fofoOrder);
|
| 705 |
|
704 |
|
| 706 |
// persist the data of upgrade offer table
|
705 |
// persist the data of upgrade offer table
|
| Line 1785... |
Line 1784... |
| 1785 |
ProfitMandiBusinessException {
|
1784 |
ProfitMandiBusinessException {
|
| 1786 |
FofoOrderItem fofoOrderItem = new FofoOrderItem();
|
1785 |
FofoOrderItem fofoOrderItem = new FofoOrderItem();
|
| 1787 |
fofoOrderItem.setItemId(customFofoOrderItem.getItemId());
|
1786 |
fofoOrderItem.setItemId(customFofoOrderItem.getItemId());
|
| 1788 |
fofoOrderItem.setQuantity(customFofoOrderItem.getQuantity());
|
1787 |
fofoOrderItem.setQuantity(customFofoOrderItem.getQuantity());
|
| 1789 |
fofoOrderItem.setSellingPrice(customFofoOrderItem.getSellingPrice());
|
1788 |
fofoOrderItem.setSellingPrice(customFofoOrderItem.getSellingPrice());
|
| - |
|
1789 |
fofoOrderItem.setPendingOrderItemId(customFofoOrderItem.getPoiId());
|
| 1790 |
fofoOrderItem.setOrderId(fofoOrderId);
|
1790 |
fofoOrderItem.setOrderId(fofoOrderId);
|
| 1791 |
TagListing tl = tagListingRepository.selectByItemId(customFofoOrderItem.getItemId());
|
1791 |
TagListing tl = tagListingRepository.selectByItemId(customFofoOrderItem.getItemId());
|
| 1792 |
// In case listing gets removed rebill it using the selling price
|
1792 |
// In case listing gets removed rebill it using the selling price
|
| 1793 |
if (tl != null) {
|
1793 |
if (tl != null) {
|
| 1794 |
fofoOrderItem.setDp(tl.getSellingPrice());
|
1794 |
fofoOrderItem.setDp(tl.getSellingPrice());
|
| Line 1892... |
Line 1892... |
| 1892 |
}
|
1892 |
}
|
| 1893 |
}
|
1893 |
}
|
| 1894 |
}
|
1894 |
}
|
| 1895 |
|
1895 |
|
| 1896 |
private FofoOrder createAndGetFofoOrder(int customerId, String customerGstNumber, int fofoId, String
|
1896 |
private FofoOrder createAndGetFofoOrder(int customerId, String customerGstNumber, int fofoId, String
|
| 1897 |
documentNumber, float totalAmount, int customerAddressId) {
|
1897 |
documentNumber, float totalAmount, int customerAddressId, int poId) {
|
| 1898 |
FofoOrder fofoOrder = new FofoOrder();
|
1898 |
FofoOrder fofoOrder = new FofoOrder();
|
| 1899 |
fofoOrder.setCustomerGstNumber(customerGstNumber);
|
1899 |
fofoOrder.setCustomerGstNumber(customerGstNumber);
|
| 1900 |
fofoOrder.setCustomerId(customerId);
|
1900 |
fofoOrder.setCustomerId(customerId);
|
| 1901 |
fofoOrder.setFofoId(fofoId);
|
1901 |
fofoOrder.setFofoId(fofoId);
|
| - |
|
1902 |
fofoOrder.setPendingOrderId(poId);
|
| 1902 |
fofoOrder.setInvoiceNumber(documentNumber);
|
1903 |
fofoOrder.setInvoiceNumber(documentNumber);
|
| 1903 |
fofoOrder.setTotalAmount(totalAmount);
|
1904 |
fofoOrder.setTotalAmount(totalAmount);
|
| 1904 |
fofoOrder.setCustomerAddressId(customerAddressId);
|
1905 |
fofoOrder.setCustomerAddressId(customerAddressId);
|
| 1905 |
fofoOrderRepository.persist(fofoOrder);
|
1906 |
fofoOrderRepository.persist(fofoOrder);
|
| 1906 |
return fofoOrder;
|
1907 |
return fofoOrder;
|
| Line 2377... |
Line 2378... |
| 2377 |
public void reverseScheme(FofoOrder fofoOrder) throws ProfitMandiBusinessException {
|
2378 |
public void reverseScheme(FofoOrder fofoOrder) throws ProfitMandiBusinessException {
|
| 2378 |
String reversalReason = "Order Rolledback/Cancelled/Returned for Invoice #" + fofoOrder.getInvoiceNumber();
|
2379 |
String reversalReason = "Order Rolledback/Cancelled/Returned for Invoice #" + fofoOrder.getInvoiceNumber();
|
| 2379 |
List<FofoOrderItem> fois = fofoOrderItemRepository.selectByOrderId(fofoOrder.getId());
|
2380 |
List<FofoOrderItem> fois = fofoOrderItemRepository.selectByOrderId(fofoOrder.getId());
|
| 2380 |
Set<Integer> inventoryItemIds = fois.stream().flatMap(x -> x.getFofoLineItems().stream().map(y -> y.getInventoryItemId())).collect(Collectors.toSet());
|
2381 |
Set<Integer> inventoryItemIds = fois.stream().flatMap(x -> x.getFofoLineItems().stream().map(y -> y.getInventoryItemId())).collect(Collectors.toSet());
|
| 2381 |
List<InventoryItem> inventoryItems = inventoryItemRepository.selectByIds(inventoryItemIds);
|
2382 |
List<InventoryItem> inventoryItems = inventoryItemRepository.selectByIds(inventoryItemIds);
|
| 2382 |
schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason, SchemeType.OUT_SCHEME_TYPES);
|
2383 |
//schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason, SchemeService.OUT_SCHEME_TYPES);
|
| 2383 |
schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason, Arrays.asList(SchemeType.INVESTMENT));
|
2384 |
schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason, Arrays.asList(SchemeType.INVESTMENT));
|
| 2384 |
//schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason, Arrays.asList(SchemeType.ACTIVATION));
|
2385 |
//schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason, Arrays.asList(SchemeType.ACTIVATION));
|
| 2385 |
schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason, Arrays.asList(SchemeType.SPECIAL_SUPPORT));
|
2386 |
schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason, Arrays.asList(SchemeType.SPECIAL_SUPPORT));
|
| 2386 |
|
2387 |
|
| 2387 |
}
|
2388 |
}
|