| Line 104... |
Line 104... |
| 104 |
for (Entry<Integer, CustomRetailer> customRetailerEntry : customRetailerMap.entrySet()) {
|
104 |
for (Entry<Integer, CustomRetailer> customRetailerEntry : customRetailerMap.entrySet()) {
|
| 105 |
int fofoId = customRetailerEntry.getKey();
|
105 |
int fofoId = customRetailerEntry.getKey();
|
| 106 |
|
106 |
|
| 107 |
SDCreditRequirement sdCreditRequirement = sdCreditRequirementMap.get(customRetailerEntry.getKey());
|
107 |
SDCreditRequirement sdCreditRequirement = sdCreditRequirementMap.get(customRetailerEntry.getKey());
|
| 108 |
|
108 |
|
| - |
|
109 |
CurrentPartnerDailyInvestment currentPartnerDailyInvestment = currentPartnerDailyInvestmentMap.get(fofoId);
|
| - |
|
110 |
BigDecimal suggestedAmount = BigDecimal.ZERO;
|
| 109 |
if (sdCreditRequirement != null) {
|
111 |
if (currentPartnerDailyInvestment != null) {
|
| 110 |
|
- |
|
| 111 |
BigDecimal utilizedLimit = new BigDecimal(sdCreditService.getUtilizationAmount(fofoId));
|
112 |
suggestedAmount = BigDecimal.valueOf(currentPartnerDailyInvestment.getTotalInvestment() * 0.1);
|
| - |
|
113 |
}
|
| 112 |
|
114 |
|
| 113 |
BigDecimal availableLimit = sdCreditRequirement.getLimit().subtract(utilizedLimit);
|
115 |
if (suggestedAmount.doubleValue() > 200000) {
|
| 114 |
|
116 |
|
| 115 |
LOGGER.info("utilizedLimit {} ", utilizedLimit);
|
117 |
suggestedAmount = BigDecimal.valueOf(200000);
|
| 116 |
|
118 |
|
| 117 |
LOGGER.info("availableLimit {} ", availableLimit);
|
- |
|
| - |
|
119 |
}
|
| 118 |
|
120 |
|
| - |
|
121 |
if (suggestedAmount.doubleValue() < 0) {
|
| 119 |
sdCreditRequirement.setUtilizedAmount(utilizedLimit);
|
122 |
suggestedAmount = BigDecimal.ZERO;
|
| - |
|
123 |
}
|
| 120 |
|
124 |
|
| 121 |
sdCreditRequirement.setAvailableLimit(availableLimit);
|
125 |
LOGGER.info("suggestedAmount {} ", suggestedAmount);
|
| 122 |
|
126 |
|
| - |
|
127 |
if (sdCreditRequirement == null) {
|
| - |
|
128 |
sdCreditRequirement = new SDCreditRequirement();
|
| - |
|
129 |
sdCreditRequirement.setFofoId(fofoId);
|
| - |
|
130 |
sdCreditRequirement.setCreditDays(15);
|
| - |
|
131 |
sdCreditRequirement.setRisk(CreditRisk.NO_RISK)
|
| - |
|
132 |
sdCreditRequirement.setInterestRate(BigDecimal.valueOf(0.05));
|
| - |
|
133 |
sdCreditRequirement.setSuggestedLimit(suggestedAmount);
|
| - |
|
134 |
sdCreditRequirement.setLimit(suggestedAmount);
|
| - |
|
135 |
sdCreditRequirement.setUtilizedAmount(BigDecimal.ZERO);
|
| - |
|
136 |
sdCreditRequirement.setAvailableLimit(suggestedAmount);
|
| - |
|
137 |
sdCreditRequirement.setCreateTimestamp(LocalDateTime.now());
|
| 123 |
sdCreditRequirement.setUpdateTimestamp(LocalDateTime.now());
|
138 |
sdCreditRequirement.setUpdateTimestamp(LocalDateTime.now());
|
| - |
|
139 |
sdCreditRequirementRepository.persist(sdCreditRequirement);
|
| 124 |
}
|
140 |
}
|
| 125 |
|
141 |
|
| - |
|
142 |
sdCreditRequirement.setSuggestedLimit(suggestedAmount);
|
| - |
|
143 |
sdCreditRequirement.setLimit(suggestedAmount);
|
| - |
|
144 |
BigDecimal utilizedLimit = new BigDecimal(sdCreditService.getUtilizationAmount(fofoId));
|
| - |
|
145 |
|
| - |
|
146 |
BigDecimal availableLimit = sdCreditRequirement.getLimit().subtract(utilizedLimit);
|
| - |
|
147 |
|
| - |
|
148 |
LOGGER.info("utilizedLimit {} ", utilizedLimit);
|
| - |
|
149 |
|
| - |
|
150 |
LOGGER.info("availableLimit {} ", availableLimit);
|
| - |
|
151 |
|
| - |
|
152 |
sdCreditRequirement.setUtilizedAmount(utilizedLimit);
|
| - |
|
153 |
|
| - |
|
154 |
sdCreditRequirement.setAvailableLimit(availableLimit);
|
| - |
|
155 |
|
| - |
|
156 |
sdCreditRequirement.setUpdateTimestamp(LocalDateTime.now());
|
| - |
|
157 |
|
| 126 |
}
|
158 |
}
|
| 127 |
|
159 |
|
| 128 |
model.addAttribute("customRetailerMap", customRetailerMap);
|
- |
|
| - |
|
160 |
}
|
| - |
|
161 |
|
| 129 |
model.addAttribute("sdCreditRequirementMap", sdCreditRequirementMap);
|
162 |
model.addAttribute("customRetailerMap",customRetailerMap);model.addAttribute("sdCreditRequirementMap",sdCreditRequirementMap);return"sd-credit";
|
| 130 |
return "sd-credit";
|
- |
|
| - |
|
163 |
|
| 131 |
}
|
164 |
}
|
| 132 |
|
165 |
|
| 133 |
@RequestMapping(value = "/creditRequirement", method = RequestMethod.POST)
|
166 |
@RequestMapping(value = "/creditRequirement", method = RequestMethod.POST)
|
| 134 |
public String sdCredit(HttpServletRequest request, @RequestBody SdCreditRequirementModel sdCreditRequirementModel,
|
167 |
public String sdCredit(HttpServletRequest request, @RequestBody SdCreditRequirementModel sdCreditRequirementModel,
|
| 135 |
Model model) throws Exception {
|
168 |
Model model) throws Exception {
|