Subversion Repositories SmartDukaan

Rev

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

Rev 32117 Rev 32145
Line 1552... Line 1552...
1552
                    LOGGER.error("Cannot found state named {}", customerAddress.getState());
1552
                    LOGGER.error("Cannot found state named {}", customerAddress.getState());
1553
                    continue;
1553
                    continue;
1554
                }
1554
                }
1555
            }
1555
            }
1556
            Map<Integer, GstRate> itemIdStateTaxRateMap = null;
1556
            Map<Integer, GstRate> itemIdStateTaxRateMap = null;
1557
            Map<Integer, Float> itemIdIgstTaxRateMap = null;
-
 
1558
 
1557
 
1559
            List<FofoOrderItem> fofoOrderItems = fofoOrderItemRepository.selectByOrderId(fofoOrder.getId());
1558
            List<FofoOrderItem> fofoOrderItems = fofoOrderItemRepository.selectByOrderId(fofoOrder.getId());
1560
            List<Integer> itemIds = fofoOrderItems.stream().map(x -> x.getItemId()).collect(Collectors.toList());
1559
            List<Integer> itemIds = fofoOrderItems.stream().map(x -> x.getItemId()).collect(Collectors.toList());
1561
            if (stateId != null) {
1560
            if (stateId != null) {
1562
                itemIdStateTaxRateMap = stateGstRateRepository.getStateTaxRate(itemIds, stateId);
1561
                itemIdStateTaxRateMap = stateGstRateRepository.getStateTaxRate(itemIds, stateId);
1563
            } else {
1562
            } else {
1564
                itemIdIgstTaxRateMap = stateGstRateRepository.getIgstTaxRate(itemIds);
1563
                itemIdStateTaxRateMap = stateGstRateRepository.getIgstTaxRate(itemIds);
1565
            }
1564
            }
1566
 
1565
 
1567
            for (FofoOrderItem foi : fofoOrderItems) {
1566
            for (FofoOrderItem foi : fofoOrderItems) {
1568
                float sgstRate = foi.getSgstRate();
1567
                float sgstRate = foi.getSgstRate();
1569
                float cgstRate = foi.getCgstRate();
1568
                float cgstRate = foi.getCgstRate();
1570
                float igstRate = foi.getIgstRate();
1569
                float igstRate = foi.getIgstRate();
-
 
1570
                foi.setCgstRate(itemIdStateTaxRateMap.get(foi.getItemId()).getCgstRate());
-
 
1571
                foi.setSgstRate(itemIdStateTaxRateMap.get(foi.getItemId()).getSgstRate());
1571
                if (stateId == null && igstRate == 0) {
1572
                foi.setIgstRate(itemIdStateTaxRateMap.get(foi.getItemId()).getIgstRate());
-
 
1573
 
-
 
1574
                LOGGER.info("Invoice {}, Date {}", fofoOrder.getInvoiceNumber(), fofoOrder.getCreateTimestamp());
-
 
1575
                LOGGER.info("customerAddress.getState() {}, retailerAddress.getState() {}", customerAddress.getState(), retailerAddress.getState());
-
 
1576
                LOGGER.info("Rates getIgstRate() {}", itemIdStateTaxRateMap.get(foi.getItemId()).getIgstRate());
-
 
1577
                LOGGER.info("Rates getCgstRate() {}, getSgstRate() {}", itemIdStateTaxRateMap.get(foi.getItemId()).getCgstRate(), itemIdStateTaxRateMap.get(foi.getItemId()).getSgstRate());
1572
 
1578
 
1573
                    foi.setSgstRate(0);
-
 
1574
                    foi.setCgstRate(0);
-
 
1575
                    foi.setIgstRate(itemIdIgstTaxRateMap.get(foi.getItemId()));
-
 
1576
 
1579
 
1577
                    LOGGER.info("Invoice {}, Date {}", fofoOrder.getInvoiceNumber(), fofoOrder.getCreateTimestamp());
-
 
1578
                    LOGGER.info("customerAddress.getState() {}, retailerAddress.getState() {}", customerAddress.getState(), retailerAddress.getState());
-
 
1579
                    LOGGER.info("Rates getIgstRate() {}", itemIdIgstTaxRateMap.get(foi.getItemId()));
-
 
1580
 
-
 
1581
                } else if (stateId != null && sgstRate == 0 && cgstRate == 0) {
-
 
1582
 
-
 
1583
                    foi.setIgstRate(0);
-
 
1584
                    foi.setCgstRate(itemIdStateTaxRateMap.get(foi.getItemId()).getCgstRate());
-
 
1585
                    foi.setSgstRate(itemIdStateTaxRateMap.get(foi.getItemId()).getSgstRate());
-
 
1586
 
-
 
1587
                    LOGGER.info("Invoice {}, Date {}", fofoOrder.getInvoiceNumber(), fofoOrder.getCreateTimestamp());
-
 
1588
                    LOGGER.info("customerAddress.getState() {}, retailerAddress.getState() {}", customerAddress.getState(), retailerAddress.getState());
-
 
1589
                    LOGGER.info("Rates getCgstRate() {}, getSgstRate() {}", itemIdStateTaxRateMap.get(foi.getItemId()).getCgstRate(), itemIdStateTaxRateMap.get(foi.getItemId()).getSgstRate());
-
 
1590
                }
-
 
1591
            }
1580
            }
1592
        }
1581
        }
1593
 
1582
 
1594
    }
1583
    }
1595
 
1584
 
Line 3513... Line 3502...
3513
                            settledLoanStatement(LoanReferenceType.PRINCIPAL, BigDecimal.valueOf(principalAmount), loan.getFofoId(), loan.getId(), "Amount adjusted against loan", LocalDateTime.now());
3502
                            settledLoanStatement(LoanReferenceType.PRINCIPAL, BigDecimal.valueOf(principalAmount), loan.getFofoId(), loan.getId(), "Amount adjusted against loan", LocalDateTime.now());
3514
                            double amount = userWalletAmount - Math.abs(principalAmount);
3503
                            double amount = userWalletAmount - Math.abs(principalAmount);
3515
 
3504
 
3516
                            paidAmount += Math.abs(principalAmount);
3505
                            paidAmount += Math.abs(principalAmount);
3517
 
3506
 
3518
                           // userWallet.setAmount((int) amount);
3507
                            // userWallet.setAmount((int) amount);
3519
 
3508
 
3520
                            BigDecimal utilizationAmount = sdCreditRequirement.getUtilizedAmount().subtract(BigDecimal.valueOf(principalAmount).abs());
3509
                            BigDecimal utilizationAmount = sdCreditRequirement.getUtilizedAmount().subtract(BigDecimal.valueOf(principalAmount).abs());
3521
 
3510
 
3522
                            sdCreditRequirement.setUtilizedAmount(utilizationAmount);
3511
                            sdCreditRequirement.setUtilizedAmount(utilizationAmount);
3523
 
3512
 
Line 3551... Line 3540...
3551
 
3540
 
3552
                        }
3541
                        }
3553
 
3542
 
3554
                        walletService.consumeAmountFromWallet(userWallet.getUserId(), loan.getId(), WalletReferenceType.LOAN_REPAYMENT, "Amount adjusted against loan", (float) Math.abs(paidAmount), LocalDateTime.now());
3543
                        walletService.consumeAmountFromWallet(userWallet.getUserId(), loan.getId(), WalletReferenceType.LOAN_REPAYMENT, "Amount adjusted against loan", (float) Math.abs(paidAmount), LocalDateTime.now());
3555
 
3544
 
3556
                       // createUserWalletHistory(userWallet.getId(), userWallet.getUserId(), WalletReferenceType.LOAN_REPAYMENT, loan.getId(), Math.abs(paidAmount));
3545
                        // createUserWalletHistory(userWallet.getId(), userWallet.getUserId(), WalletReferenceType.LOAN_REPAYMENT, loan.getId(), Math.abs(paidAmount));
3557
 
3546
 
3558
                    } else {
3547
                    } else {
3559
 
3548
 
3560
                        settledLoanStatement(LoanReferenceType.INTEREST, BigDecimal.valueOf(userWallet.getAmount()), loan.getFofoId(), loan.getId(), "Amount adjusted against loan", LocalDateTime.now());
3549
                        settledLoanStatement(LoanReferenceType.INTEREST, BigDecimal.valueOf(userWallet.getAmount()), loan.getFofoId(), loan.getId(), "Amount adjusted against loan", LocalDateTime.now());
3561
 
3550