Subversion Repositories SmartDukaan

Rev

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

Rev 35165 Rev 35177
Line 1125... Line 1125...
1125
 
1125
 
1126
    }
1126
    }
1127
 
1127
 
1128
    public void test() throws Exception {
1128
    public void test() throws Exception {
1129
        //runOnceTasks.checkRewardsEligibility();
1129
        //runOnceTasks.checkRewardsEligibility();
1130
        runOnceTasks.migrateLimit();
1130
        //runOnceTasks.migrateLimit();866009067657118
-
 
1131
        //TODO -- Sales Return Pending
-
 
1132
        //runOnceTasks.moveSaleReturnScanToDoa("866009067657118");
-
 
1133
        runOnceTasks.sendCreditExposureReport();
-
 
1134
        //runOnceTasks.moveDoaScanToSaleReturn("868770072438608");
1131
        //runOnceTasks.purchasePolicy();
1135
        //runOnceTasks.purchasePolicy();
1132
        //purSaleService.moreThen10DaysEgedStockReport();
1136
        //purSaleService.moreThen10DaysEgedStockReport();
1133
        //System.out.println(schemeService.testRedis(1, 2L));
1137
        //System.out.println(schemeService.testRedis(1, 2L));
1134
        //System.out.println(schemeService.testRedis(1, null));
1138
        //System.out.println(schemeService.testRedis(1, null));
1135
       // abmReportSender.sendAbmSmartCartReport();
1139
        // abmReportSender.sendAbmSmartCartReport();
1136
            //this.sendOverDueReport();
1140
        //this.sendOverDueReport();
1137
        /*List<Integer> orderIds = Arrays.asList(1929879,1932372,1932377,1932386,1932396,1935221,1935563,1935564,1945144,1955256,1955271,1955294,1961255,1961256,1972821,1972823,1972824,1972825,1972826,1974250,1974252,1974253,1974254,1974255,1974256,1974242,1974244,1974245,1974246,1974247,1974248,1976610,1978095,1978136,1978130,1978174,1978156,1978158,1978167,1978169,1978160,1978179,1978175,1978180,1978201,1978200,1978202,1978192,1978198,1978207,1978204,1978457,1979781,1979783,1979784,1979787,1982412,1982413,1986531,1986532,1986533,1991006,1991628,1991629,2016001,2018921,2042948,2047031,2058500,2058522,2058519,2058520,2058546,2058559,2058568,2058575,2058574,2058598,2058594,2058618,2058633,2066491,2067110,2067113,2067118,2067120,2067123,2067132,2067125,2067127,2069974,2069970,2069976,2069985,2069987);
1141
        /*List<Integer> orderIds = Arrays.asList(1929879,1932372,1932377,1932386,1932396,1935221,1935563,1935564,1945144,1955256,1955271,1955294,1961255,1961256,1972821,1972823,1972824,1972825,1972826,1974250,1974252,1974253,1974254,1974255,1974256,1974242,1974244,1974245,1974246,1974247,1974248,1976610,1978095,1978136,1978130,1978174,1978156,1978158,1978167,1978169,1978160,1978179,1978175,1978180,1978201,1978200,1978202,1978192,1978198,1978207,1978204,1978457,1979781,1979783,1979784,1979787,1982412,1982413,1986531,1986532,1986533,1991006,1991628,1991629,2016001,2018921,2042948,2047031,2058500,2058522,2058519,2058520,2058546,2058559,2058568,2058575,2058574,2058598,2058594,2058618,2058633,2066491,2067110,2067113,2067118,2067120,2067123,2067132,2067125,2067127,2069974,2069970,2069976,2069985,2069987);
1138
        for (Integer orderId : orderIds) {
1142
        for (Integer orderId : orderIds) {
1139
            System.out.println("Refund Started - " + orderId);
1143
            System.out.println("Refund Started - " + orderId);
1140
            orderRepository.refundOrder(orderId, "vinay.p", "Long awaited cancellation", OrderStatus.CANCELLED_DUE_TO_LOW_INVENTORY);
1144
            orderRepository.refundOrder(orderId, "vinay.p", "Long awaited cancellation", OrderStatus.CANCELLED_DUE_TO_LOW_INVENTORY);
1141
            System.out.println("Refund Ended");
1145
            System.out.println("Refund Ended");
Line 3716... Line 3720...
3716
        Map<Integer, CustomRetailer> customRetailerMap = retailerService.getFofoRetailers(true);
3720
        Map<Integer, CustomRetailer> customRetailerMap = retailerService.getFofoRetailers(true);
3717
        Map<Integer, BigDecimal> fofoSidbiLimitMap = sidbiService.getSuggestedLimitMap();
3721
        Map<Integer, BigDecimal> fofoSidbiLimitMap = sidbiService.getSuggestedLimitMap();
3718
        Map<Integer, SDCreditRequirement> sdCreditRequirementMap = sdCreditRequirementRepository.selectAll().stream().collect(Collectors.toMap(x -> x.getFofoId(), x -> x));
3722
        Map<Integer, SDCreditRequirement> sdCreditRequirementMap = sdCreditRequirementRepository.selectAll().stream().collect(Collectors.toMap(x -> x.getFofoId(), x -> x));
3719
        Map<Integer, CreditAccount> creditAccountMap = creditAccountRepository.selectAllByGateways(Arrays.asList(Gateway.SIDBI, Gateway.SDDIRECT))
3723
        Map<Integer, CreditAccount> creditAccountMap = creditAccountRepository.selectAllByGateways(Arrays.asList(Gateway.SIDBI, Gateway.SDDIRECT))
3720
                .stream().filter(x -> x.isActive()).collect(Collectors.toMap(x -> x.getFofoId(), x -> x));
3724
                .stream().filter(x -> x.isActive()).collect(Collectors.toMap(x -> x.getFofoId(), x -> x));
3721
        Map<Integer, CurrentPartnerDailyInvestment> currentPartnerDailyInvestmentMap = currentPartnerDailyInvestmentRepository.selectAll().stream().collect(Collectors.toMap(x -> x.getFofoId(), x -> x));
-
 
3722
        for (Entry<Integer, CustomRetailer> customRetailerEntry : customRetailerMap.entrySet()) {
3725
        for (Entry<Integer, CustomRetailer> customRetailerEntry : customRetailerMap.entrySet()) {
3723
            int fofoId = customRetailerEntry.getKey();
3726
            int fofoId = customRetailerEntry.getKey();
3724
            LocalDateTime firstBillingDate = transactionRepository.getFirstBillingDate(fofoId);
3727
            LocalDateTime firstBillingDate = transactionRepository.getFirstBillingDate(fofoId);
3725
 
3728
 
3726
            CreditAccount creditAccount = creditAccountMap.get(fofoId);
3729
            CreditAccount creditAccount = creditAccountMap.get(fofoId);
3727
            long utilizationAmount = sdCreditService.getUtilizationAmount(fofoId);
3730
            long utilizationAmount = sdCreditService.getUtilizationAmount(fofoId);
3728
            CurrentPartnerDailyInvestment currentPartnerDailyInvestment = currentPartnerDailyInvestmentMap.get(fofoId);
3731
            PartnerDailyInvestment partnerDailyInvestment = partnerInvestmentService.getInvestment(fofoId, 0);
3729
            BigDecimal suggestedAmount = this.getSuggestedAmount(creditAccount, currentPartnerDailyInvestment, utilizationAmount, fofoSidbiLimitMap.get(fofoId));
3732
            BigDecimal suggestedAmount = this.getSuggestedAmount(creditAccount, partnerDailyInvestment, utilizationAmount, fofoSidbiLimitMap.get(fofoId));
3730
            SDCreditRequirement sdCreditRequirement = sdCreditRequirementMap.get(fofoId);
3733
            SDCreditRequirement sdCreditRequirement = sdCreditRequirementMap.get(fofoId);
3731
 
3734
 
3732
            LOGGER.info("suggestedAmount {} ", suggestedAmount);
3735
            LOGGER.info("suggestedAmount {} ", suggestedAmount);
3733
 
3736
 
3734
            if (sdCreditRequirement == null) {
3737
            if (sdCreditRequirement == null) {
Line 3799... Line 3802...
3799
            175139815,
3802
            175139815,
3800
            175139844,
3803
            175139844,
3801
            175140101
3804
            175140101
3802
    );
3805
    );
3803
 
3806
 
3804
    private BigDecimal getSuggestedAmount(CreditAccount creditAccount, CurrentPartnerDailyInvestment
3807
    private BigDecimal getSuggestedAmount(CreditAccount creditAccount, PartnerDailyInvestment
3805
            currentPartnerDailyInvestment, long utilizationAmount, BigDecimal sidbiLimit) {
3808
            partnerDailyInvestment, long utilizationAmount, BigDecimal sidbiLimit) {
3806
        BigDecimal suggestedAmount = BigDecimal.ZERO;
3809
        BigDecimal suggestedAmount = BigDecimal.ZERO;
3807
        //1 LAC
3810
        //1 LAC
3808
        if (creditAccount == null || creditAccount.getGateway().equals(Gateway.SDDIRECT)) {
3811
        if (creditAccount == null || creditAccount.getGateway().equals(Gateway.SDDIRECT)) {
3809
 
3812
 
3810
            if (currentPartnerDailyInvestment != null) {
3813
            if (partnerDailyInvestment != null) {
3811
                if (hundredPercentLimitPartnerIds.contains(currentPartnerDailyInvestment.getFofoId())) {
3814
                if (hundredPercentLimitPartnerIds.contains(partnerDailyInvestment.getFofoId())) {
3812
                    suggestedAmount = getSuggestedAmount(currentPartnerDailyInvestment.getTotalInvestment() - utilizationAmount, 1);
3815
                    suggestedAmount = getSuggestedAmount(partnerDailyInvestment.getTotalInvestment() - utilizationAmount, 1);
3813
                    suggestedAmount = suggestedAmount.min(BigDecimal.valueOf(1500000));
3816
                    suggestedAmount = suggestedAmount.min(BigDecimal.valueOf(1500000));
3814
                } else {
3817
                } else {
3815
                    suggestedAmount = getSuggestedLimit(currentPartnerDailyInvestment.getTotalInvestment() - utilizationAmount);
3818
                    suggestedAmount = getSuggestedLimit(partnerDailyInvestment.getTotalInvestment() - utilizationAmount);
3816
                }
3819
                }
3817
            }
3820
            }
3818
            if (suggestedAmount.doubleValue() < 0) {
3821
            if (suggestedAmount.doubleValue() < 0) {
3819
                suggestedAmount = BigDecimal.ZERO;
3822
                suggestedAmount = BigDecimal.ZERO;
3820
            }
3823
            }
3821
        } else if (creditAccount.getGateway().equals(Gateway.SIDBI) && sidbiLimit != null) {
3824
        } else if (creditAccount.getGateway().equals(Gateway.SIDBI) && sidbiLimit != null) {
3822
            suggestedAmount = getSuggestedLimit(currentPartnerDailyInvestment.getTotalInvestment() - utilizationAmount);
3825
            suggestedAmount = getSuggestedLimit(partnerDailyInvestment.getTotalInvestment() - utilizationAmount);
3823
            suggestedAmount = suggestedAmount.max(sidbiLimit);
3826
            suggestedAmount = suggestedAmount.max(sidbiLimit);
3824
 
3827
 
3825
 
3828
 
3826
        }
3829
        }
3827
        return suggestedAmount;
3830
        return suggestedAmount;