| Line 4760... |
Line 4760... |
| 4760 |
private SmartCartService smartCartService;
|
4760 |
private SmartCartService smartCartService;
|
| 4761 |
|
4761 |
|
| 4762 |
public void createOpeningStockPartyWise() throws Exception {
|
4762 |
public void createOpeningStockPartyWise() throws Exception {
|
| 4763 |
// Get all partner stock data
|
4763 |
// Get all partner stock data
|
| 4764 |
Map<Integer, List<PartnerOpeningStockByTodayModel>> partnerOpeningStockByTodayMap = currentInventorySnapshotRepository.getAllPartnerTodayStock();
|
4764 |
Map<Integer, List<PartnerOpeningStockByTodayModel>> partnerOpeningStockByTodayMap = currentInventorySnapshotRepository.getAllPartnerTodayStock();
|
| 4765 |
// Map<Integer, Map<Integer, Integer>> activatedButNotBilledCatalogQtyMap = smartCartService.activatedButNotBilledCatalogQtyMap();
|
4765 |
Map<Integer, Map<Integer, Integer>> activatedButNotBilledCatalogQtyMap = smartCartService.activatedButNotBilledCatalogQtyMap();
|
| 4766 |
LOGGER.info("PartnerOpeningStockByTodayModel {}",partnerOpeningStockByTodayMap);
|
4766 |
LOGGER.info("PartnerOpeningStockByTodayModel {}",partnerOpeningStockByTodayMap);
|
| 4767 |
for (Map.Entry<Integer, List<PartnerOpeningStockByTodayModel>> entry : partnerOpeningStockByTodayMap.entrySet()) {
|
4767 |
for (Map.Entry<Integer, List<PartnerOpeningStockByTodayModel>> entry : partnerOpeningStockByTodayMap.entrySet()) {
|
| 4768 |
int fofoId = entry.getKey();
|
4768 |
int fofoId = entry.getKey();
|
| 4769 |
List<PartnerOpeningStockByTodayModel> partnerStockList = entry.getValue();
|
4769 |
List<PartnerOpeningStockByTodayModel> partnerStockList = entry.getValue();
|
| 4770 |
// Get the sold (activated-but-not-billed) quantity for this fofo and catalog
|
4770 |
// Get the sold (activated-but-not-billed) quantity for this fofo and catalog
|
| 4771 |
//Map<Integer, Integer> activatedButNotBilledQtyMap = activatedButNotBilledCatalogQtyMap.getOrDefault(fofoId, Collections.emptyMap());
|
4771 |
Map<Integer, Integer> activatedButNotBilledQtyMap = activatedButNotBilledCatalogQtyMap.getOrDefault(fofoId, Collections.emptyMap());
|
| 4772 |
|
4772 |
|
| 4773 |
// if stock is avaialble in snapshot
|
4773 |
// if stock is avaialble in snapshot
|
| 4774 |
for (PartnerOpeningStockByTodayModel partnerStock : partnerStockList) {
|
4774 |
for (PartnerOpeningStockByTodayModel partnerStock : partnerStockList) {
|
| 4775 |
int catalogId = partnerStock.getCatalogId();
|
4775 |
int catalogId = partnerStock.getCatalogId();
|
| 4776 |
int stockCurrentQty = partnerStock.getOpeningQty();
|
4776 |
int stockCurrentQty = partnerStock.getOpeningQty();
|
| 4777 |
LocalDate openingDate = partnerStock.getOpeningDate();
|
4777 |
LocalDate openingDate = partnerStock.getOpeningDate();
|
| 4778 |
|
4778 |
|
| 4779 |
//int soldButNotBilledQty = activatedButNotBilledQtyMap.getOrDefault(catalogId, 0);
|
4779 |
int soldButNotBilledQty = activatedButNotBilledQtyMap.getOrDefault(catalogId, 0);
|
| 4780 |
|
4780 |
|
| 4781 |
// Subtract soldQty from partnerCurrentQty
|
4781 |
// Subtract soldQty from partnerCurrentQty
|
| 4782 |
int partnerCurrentQty = Math.max(stockCurrentQty - 0, 0); // Ensure it doesn't go negative
|
4782 |
int partnerCurrentQty = Math.max(stockCurrentQty - soldButNotBilledQty, 0); // Ensure it doesn't go negative
|
| 4783 |
|
4783 |
|
| 4784 |
|
4784 |
|
| 4785 |
// Check if an entry already exists in the FofoOpeningStock table
|
4785 |
// Check if an entry already exists in the FofoOpeningStock table
|
| 4786 |
FofoOpeningStock existingStock = fofoOpeningStockRepository.findByFofoIdAndCatalogId(fofoId, catalogId);
|
4786 |
FofoOpeningStock existingStock = fofoOpeningStockRepository.findByFofoIdAndCatalogId(fofoId, catalogId);
|
| 4787 |
|
4787 |
|