| Line 676... |
Line 676... |
| 676 |
model.addAttribute("loanCountMap", loanCountMap);
|
676 |
model.addAttribute("loanCountMap", loanCountMap);
|
| 677 |
return "partner-wise-loan-summary";
|
677 |
return "partner-wise-loan-summary";
|
| 678 |
}
|
678 |
}
|
| 679 |
|
679 |
|
| 680 |
@RequestMapping(value = "/getPartnerStateWiseLoanSummary", method = RequestMethod.GET)
|
680 |
@RequestMapping(value = "/getPartnerStateWiseLoanSummary", method = RequestMethod.GET)
|
| 681 |
public String getPartnerStateWiseLoanSummary(HttpServletRequest request, @RequestParam LoanSummaryType loanSummaryType, @RequestParam String stateName, @RequestParam(required = false) Integer days, Model model) throws ProfitMandiBusinessException {
|
681 |
public String getPartnerStateWiseLoanSummary(HttpServletRequest request, @RequestParam LoanSummaryType loanSummaryType, @RequestParam String stateName, @RequestParam(required = false) Integer fromDays, @RequestParam(required = false) Integer toDays, Model model) throws ProfitMandiBusinessException {
|
| 682 |
Map<Integer, FofoReportingModel> fofoReportingModelMap = csService.getPartnerIdSalesHeaders();
|
682 |
Map<Integer, FofoReportingModel> fofoReportingModelMap = csService.getPartnerIdSalesHeaders();
|
| 683 |
List<Loan> loans = loanRepository.selectAllStateWiseActiveLoan(stateName);
|
683 |
List<Loan> loans = loanRepository.selectAllStateWiseActiveLoan(stateName);
|
| 684 |
if (loanSummaryType.equals(LoanSummaryType.DEFAULT_LOAN)) {
|
684 |
if (loanSummaryType.equals(LoanSummaryType.DEFAULT_LOAN)) {
|
| 685 |
loans = loans.stream().filter(x -> x.isDefault()).collect(Collectors.toList());
|
685 |
loans = loans.stream().filter(x -> x.isDefault()).collect(Collectors.toList());
|
| 686 |
} else if (loanSummaryType.equals(LoanSummaryType.DUE_LOAN)) {
|
686 |
} else if (loanSummaryType.equals(LoanSummaryType.DUE_LOAN)) {
|
| 687 |
loans = loans.stream().filter(x -> x.isOverdue()).collect(Collectors.toList());
|
687 |
loans = loans.stream().filter(x -> x.isOverdue()).collect(Collectors.toList());
|
| 688 |
}
|
688 |
}
|
| 689 |
|
689 |
|
| 690 |
if (days != null) {
|
690 |
// Apply aging filter
|
| - |
|
691 |
if (fromDays != null && toDays != null) {
|
| 691 |
loans = loans.stream()
|
692 |
loans = loans.stream()
|
| 692 |
.filter(x -> x.getLoanAgeInDays() >= days) // your logic
|
693 |
.filter(x -> x.getLoanAgeInDays() >= fromDays &&
|
| - |
|
694 |
x.getLoanAgeInDays() <= toDays)
|
| 693 |
.collect(Collectors.toList());
|
695 |
.collect(Collectors.toList());
|
| - |
|
696 |
|
| - |
|
697 |
} else if (fromDays != null) {
|
| - |
|
698 |
loans = loans.stream()
|
| - |
|
699 |
.filter(x -> x.getLoanAgeInDays() >= fromDays)
|
| - |
|
700 |
.collect(Collectors.toList());
|
| - |
|
701 |
|
| 694 |
}
|
702 |
}
|
| 695 |
|
703 |
|
| 696 |
List<Integer> fofoIds = loans.stream().map(x -> x.getFofoId()).collect(Collectors.toList());
|
704 |
List<Integer> fofoIds = loans.stream().map(x -> x.getFofoId()).collect(Collectors.toList());
|
| 697 |
Map<Integer, Double> fofoIdLoansMap = loans.stream().collect(Collectors.groupingBy(x -> x.getFofoId(), Collectors.summingDouble(x -> x.getPendingAmount().doubleValue())));
|
705 |
Map<Integer, Double> fofoIdLoansMap = loans.stream().collect(Collectors.groupingBy(x -> x.getFofoId(), Collectors.summingDouble(x -> x.getPendingAmount().doubleValue())));
|
| 698 |
Map<Integer, CustomRetailer> customRetailerMap = retailerService.getFofoRetailers(fofoIds);
|
706 |
Map<Integer, CustomRetailer> customRetailerMap = retailerService.getFofoRetailers(fofoIds);
|