Subversion Repositories SmartDukaan

Rev

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

Rev 32197 Rev 32439
Line 65... Line 65...
65
@Transactional(rollbackOn = Throwable.class)
65
@Transactional(rollbackOn = Throwable.class)
66
public class SDCreditController {
66
public class SDCreditController {
67
 
67
 
68
    @Autowired
68
    @Autowired
69
    private RetailerService retailerService;
69
    private RetailerService retailerService;
-
 
70
 
70
    @Autowired
71
    @Autowired
71
    private UserService userService;
72
    private UserService userService;
72
 
73
 
73
    @Autowired
74
    @Autowired
74
    SDCreditRequirementRepository sdCreditRequirementRepository;
75
    SDCreditRequirementRepository sdCreditRequirementRepository;
Line 408... Line 409...
408
        model.addAttribute("loanCountMap", loanCountMap);
409
        model.addAttribute("loanCountMap", loanCountMap);
409
        model.addAttribute("customRetailerMap", customRetailerMap);
410
        model.addAttribute("customRetailerMap", customRetailerMap);
410
        return "loan-summary";
411
        return "loan-summary";
411
 
412
 
412
    }
413
    }
-
 
414
 
413
    @RequestMapping(value = "/getPartnerWiseLoanSummary", method = RequestMethod.GET)
415
    @RequestMapping(value = "/getPartnerWiseLoanSummary", method = RequestMethod.GET)
414
    public String getPartnerWiseLoanSummary(HttpServletRequest request, @RequestParam LoanSummaryType loanSummaryType, Model model) throws ProfitMandiBusinessException {
416
    public String getPartnerWiseLoanSummary(HttpServletRequest request, @RequestParam LoanSummaryType loanSummaryType, Model model) throws ProfitMandiBusinessException {
415
        Map<Integer, FofoReportingModel> fofoReportingModelMap = csService.getPartnerIdSalesHeaders();
417
        Map<Integer, FofoReportingModel> fofoReportingModelMap = csService.getPartnerIdSalesHeaders();
416
        List<Loan> loans = new ArrayList<>();
418
        List<Loan> loans = new ArrayList<>();
417
        List<Loan> activeLoans = loanRepository.selectAllActiveLoan();
419
        List<Loan> activeLoans = loanRepository.selectAllActiveLoan();
Line 431... Line 433...
431
                if (noOfdaysBetween <= 15 && noOfdaysBetween >= 0) {
433
                if (noOfdaysBetween <= 15 && noOfdaysBetween >= 0) {
432
                    loans.add(loan);
434
                    loans.add(loan);
433
                }
435
                }
434
            }
436
            }
435
        }
437
        }
436
        List<Integer> fofoIds =  loans.stream().map(x -> x.getFofoId()).collect(Collectors.toList());
438
        List<Integer> fofoIds = loans.stream().map(x -> x.getFofoId()).collect(Collectors.toList());
437
        Map<Integer, Double> fofoIdLoansMap = loans.stream().collect(Collectors.groupingBy(x -> x.getFofoId(),Collectors.summingDouble(x->x.getPendingAmount().doubleValue())));
439
        Map<Integer, Double> fofoIdLoansMap = loans.stream().collect(Collectors.groupingBy(x -> x.getFofoId(), Collectors.summingDouble(x -> x.getPendingAmount().doubleValue())));
438
        Map<Integer, CustomRetailer> customRetailerMap = retailerService.getFofoRetailers(fofoIds);
440
        Map<Integer, CustomRetailer> customRetailerMap = retailerService.getFofoRetailers(fofoIds);
439
        model.addAttribute("customRetailerMap", customRetailerMap);
441
        model.addAttribute("customRetailerMap", customRetailerMap);
440
        model.addAttribute("loans", loans);
442
        model.addAttribute("loans", loans);
441
        model.addAttribute("fofoReportingModelMap", fofoReportingModelMap);
443
        model.addAttribute("fofoReportingModelMap", fofoReportingModelMap);
442
        model.addAttribute("fofoIdLoansMap", fofoIdLoansMap);
444
        model.addAttribute("fofoIdLoansMap", fofoIdLoansMap);
Line 454... Line 456...
454
 
456
 
455
        return "loan-summary-detail";
457
        return "loan-summary-detail";
456
 
458
 
457
    }
459
    }
458
 
460
 
459
    @RequestMapping(value = "/getSanctionHoldOrder", method = RequestMethod.GET)
461
    @RequestMapping(value = "/getSanctionUnholdOrder", method = RequestMethod.GET)
460
    public String getSanctionHoldOrder(HttpServletRequest request, Model model) throws ProfitMandiBusinessException {
462
    public String getSanctionUnholdOrder(HttpServletRequest request, Model model) throws ProfitMandiBusinessException {
461
 
463
 
462
        List<Order> allOrders = orderRepository.selectHoldOrder();
464
        List<Order> allOrders = orderRepository.selectHoldOrder();
463
 
465
 
464
        LOGGER.info("allOrders {}", allOrders);
466
        List<SanctionRequest> sanctionRequests = sanctionRequestRepository.selectHoldSanction();
465
 
467
 
466
        if (!allOrders.isEmpty()) {
468
        if (!allOrders.isEmpty()) {
467
            Map<Integer, Double> transactionAmountMap = allOrders.stream().collect(
469
            Map<Integer, Double> transactionAmountMap = allOrders.stream().collect(
468
                    Collectors.groupingBy(Order::getTransactionId, Collectors.summingDouble(x -> x.getTotalAmount())));
470
                    Collectors.groupingBy(Order::getTransactionId, Collectors.summingDouble(x -> x.getTotalAmount())));
469
 
471
 
470
            Map<Integer, List<Order>> transactionOrdersMap = allOrders.stream().collect(Collectors.groupingBy(Order::getTransactionId, Collectors.toList()));
472
            Map<Integer, List<Order>> transactionOrdersMap = allOrders.stream().collect(Collectors.groupingBy(Order::getTransactionId, Collectors.toList()));
471
 
473
 
472
            List<SanctionRequest> sanctionRequests = sanctionRequestRepository.selectByTransactionId(new ArrayList<>(transactionAmountMap.keySet()));
-
 
473
 
474
 
474
            model.addAttribute("transactionAmountMap", transactionAmountMap);
475
            model.addAttribute("transactionAmountMap", transactionAmountMap);
475
 
476
 
476
            model.addAttribute("transactionOrdersMap", transactionOrdersMap);
477
            model.addAttribute("transactionOrdersMap", transactionOrdersMap);
477
 
478
 
-
 
479
        }
478
            model.addAttribute("sanctionRequests", sanctionRequests);
480
        model.addAttribute("sanctionRequests", sanctionRequests);
479
 
481
 
480
            Map<Integer, Double> transactionCreditMap = new HashMap<>();
-
 
481
            for (Entry<Integer, List<Order>> transactionOrderEntry : transactionOrdersMap.entrySet()) {
-
 
482
 
482
 
483
                List<Order> orders = transactionOrderEntry.getValue();
483
        return "sanction-order-unhold";
484
 
484
 
485
                LocalDateTime createDate = orders.get(0).getCreateTimestamp();
-
 
-
 
485
    }
486
 
486
 
487
                int fofoId = orders.get(0).getRetailerId();
-
 
488
 
487
 
-
 
488
    @RequestMapping(value = "/getSanctionHoldOrder", method = RequestMethod.GET)
489
                double loanSettleAmount = loanStatementRepository.selectByDateAndFofoId(createDate, fofoId).stream().filter(x -> x.getAmount().doubleValue() > 0).collect(Collectors.summingDouble(x -> x.getAmount().doubleValue()));
489
    public String getSanctionHoldOrder(HttpServletRequest request, Model model) throws ProfitMandiBusinessException {
490
 
490
 
491
                transactionCreditMap.put(transactionOrderEntry.getKey(), loanSettleAmount);
491
        List<Order> allOrders = orderRepository.selectHoldOrder();
492
 
492
 
-
 
493
        List<SanctionRequest> sanctionRequests = sanctionRequestRepository.selectHoldSanction();
-
 
494
 
493
            }
495
        if (!allOrders.isEmpty()) {
-
 
496
            Map<Integer, Double> transactionAmountMap = allOrders.stream().collect(
-
 
497
                    Collectors.groupingBy(Order::getTransactionId, Collectors.summingDouble(x -> x.getTotalAmount())));
-
 
498
 
-
 
499
            Map<Integer, List<Order>> transactionOrdersMap = allOrders.stream().collect(Collectors.groupingBy(Order::getTransactionId, Collectors.toList()));
494
 
500
 
-
 
501
 
495
            model.addAttribute("transactionCreditMap", transactionCreditMap);
502
            model.addAttribute("transactionAmountMap", transactionAmountMap);
-
 
503
 
-
 
504
            model.addAttribute("transactionOrdersMap", transactionOrdersMap);
496
 
505
 
497
        }
506
        }
-
 
507
        model.addAttribute("sanctionRequests", sanctionRequests);
-
 
508
 
498
 
509
 
499
        return "sanction-order-hold";
510
        return "sanction-order-hold";
500
 
511
 
501
    }
512
    }
502
 
513