| Line 177... |
Line 177... |
| 177 |
|
177 |
|
| 178 |
LOGGER.info("sdCreditRequirementModel {} ", sdCreditRequirementModel);
|
178 |
LOGGER.info("sdCreditRequirementModel {} ", sdCreditRequirementModel);
|
| 179 |
|
179 |
|
| 180 |
int fofoId = sdCreditRequirementModel.getFofoId();
|
180 |
int fofoId = sdCreditRequirementModel.getFofoId();
|
| 181 |
|
181 |
|
| 182 |
SDCreditRequirement sdCreditRequirement = sdCreditRequirementRepository.selectByFofoId(sdCreditRequirementModel.getFofoId());
|
182 |
SDCreditRequirement sdCreditRequirement = sdCreditRequirementRepository.selectByFofoId(fofoId);
|
| 183 |
|
183 |
|
| 184 |
// sdCreditRequirement.setSecurityCheck(2);
|
- |
|
| 185 |
sdCreditRequirement.setSecurityCheck(sdCreditRequirementModel.getSecurityCheck());
|
184 |
sdCreditRequirement.setSecurityCheck(sdCreditRequirementModel.getSecurityCheck());
|
| 186 |
|
185 |
|
| 187 |
|
- |
|
| 188 |
LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
|
186 |
LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
|
| 189 |
boolean isTarun = loginDetails.getEmailId().equals("tarun.verma@smartdukaan.com") || loginDetails.getEmailId().equals("kamini.sharma@smartdukaan.com");
|
187 |
boolean isTarun = loginDetails.getEmailId().equals("tarun.verma@smartdukaan.com") || loginDetails.getEmailId().equals("kamini.sharma@smartdukaan.com");
|
| 190 |
sdCreditRequirement.setInterestRate(sdCreditRequirementModel.getInterest());
|
188 |
sdCreditRequirement.setInterestRate(sdCreditRequirementModel.getInterest());
|
| 191 |
sdCreditRequirement.setFreeDays(sdCreditRequirementModel.getFreeDays());
|
189 |
sdCreditRequirement.setFreeDays(sdCreditRequirementModel.getFreeDays());
|
| 192 |
BigDecimal utilizedLimit = sdCreditService.getUtilizationAmount(fofoId);
|
190 |
BigDecimal utilizedLimit = sdCreditService.getUtilizationAmount(fofoId);
|
| 193 |
BigDecimal availableLimit = sdCreditRequirement.getLimit().subtract(utilizedLimit);
|
- |
|
| 194 |
sdCreditRequirement.setUtilizedAmount(utilizedLimit);
|
191 |
sdCreditRequirement.setUtilizedAmount(utilizedLimit);
|
| - |
|
192 |
|
| 195 |
if (isTarun) {
|
193 |
if (isTarun) {
|
| 196 |
if (sdCreditRequirement.getLimit() != sdCreditRequirementModel.getLimit()) {
|
194 |
if (sdCreditRequirement.getLimit() != sdCreditRequirementModel.getLimit()) {
|
| 197 |
sdCreditRequirement.setLimit(sdCreditRequirementModel.getLimit());
|
195 |
sdCreditRequirement.setLimit(sdCreditRequirementModel.getLimit());
|
| 198 |
sdCreditRequirement.setHardLimit(true);
|
196 |
sdCreditRequirement.setHardLimit(true);
|
| 199 |
sdCreditService.updateMinInvestmentForHardLimit(sdCreditRequirement, true);
|
197 |
sdCreditService.updateMinInvestmentForHardLimit(sdCreditRequirement, true);
|
| 200 |
}
|
198 |
}
|
| - |
|
199 |
} else if (!sdCreditRequirement.isHardLimit()) {
|
| - |
|
200 |
sdCreditRequirement.setLimit(sdCreditRequirementModel.getLimit());
|
| 201 |
}
|
201 |
}
|
| 202 |
|
202 |
|
| 203 |
sdCreditRequirement.setLimit(sdCreditRequirementModel.getLimit());
|
- |
|
| 204 |
sdCreditRequirement.setCreditDays(15);
|
203 |
sdCreditRequirement.setCreditDays(15);
|
| 205 |
sdCreditRequirement.setUpdateTimestamp(LocalDateTime.now());
|
204 |
sdCreditRequirement.setUpdateTimestamp(LocalDateTime.now());
|
| 206 |
|
205 |
|
| - |
|
206 |
// Calculate availableLimit AFTER limit may have changed
|
| 207 |
if (sdCreditRequirement.getSecurityCheck() > 0) {
|
207 |
BigDecimal availableLimit = sdCreditRequirement.getLimit().subtract(utilizedLimit);
|
| 208 |
|
208 |
|
| - |
|
209 |
if (sdCreditRequirement.getSecurityCheck() > 0) {
|
| 209 |
CreditAccount creditAccount = creditAccountRepository.selectByFofoIdAndGateway(sdCreditRequirementModel.getFofoId(), Gateway.SDDIRECT);
|
210 |
CreditAccount creditAccount = creditAccountRepository.selectByFofoIdAndGateway(fofoId, Gateway.SDDIRECT);
|
| 210 |
if (creditAccount == null) {
|
211 |
if (creditAccount == null) {
|
| 211 |
creditAccount = new CreditAccount();
|
212 |
creditAccount = new CreditAccount();
|
| 212 |
creditAccount.setFofoId(sdCreditRequirementModel.getFofoId());
|
213 |
creditAccount.setFofoId(fofoId);
|
| 213 |
creditAccount.setGateway(Gateway.SDDIRECT);
|
214 |
creditAccount.setGateway(Gateway.SDDIRECT);
|
| 214 |
creditAccount.setCreditStatus(CreditStatus.SANCTIONED);
|
215 |
creditAccount.setCreditStatus(CreditStatus.SANCTIONED);
|
| 215 |
creditAccount.setActive(false);
|
216 |
creditAccount.setActive(false);
|
| 216 |
|
- |
|
| 217 |
creditAccount.setUpdatedOn(LocalDateTime.now());
|
217 |
creditAccount.setUpdatedOn(LocalDateTime.now());
|
| 218 |
|
- |
|
| 219 |
creditAccountRepository.persist(creditAccount);
|
218 |
creditAccountRepository.persist(creditAccount);
|
| 220 |
}
|
219 |
}
|
| 221 |
creditAccount.setInterestRate(sdCreditRequirement.getInterestRate().floatValue());
|
220 |
creditAccount.setInterestRate(sdCreditRequirement.getInterestRate().floatValue());
|
| 222 |
creditAccount.setSanctionedAmount(sdCreditRequirement.getLimit().floatValue());
|
221 |
creditAccount.setSanctionedAmount(sdCreditRequirement.getLimit().floatValue());
|
| 223 |
creditAccount.setAvailableAmount(availableLimit.floatValue());
|
222 |
creditAccount.setAvailableAmount(availableLimit.floatValue());
|
| 224 |
creditAccount.setFreeDays(sdCreditRequirement.getFreeDays());
|
223 |
creditAccount.setFreeDays(sdCreditRequirement.getFreeDays());
|
| 225 |
creditAccount.setUpdatedOn(LocalDateTime.now());
|
224 |
creditAccount.setUpdatedOn(LocalDateTime.now());
|
| 226 |
}
|
225 |
}
|
| 227 |
LOGGER.info("sdCreditRequirement {} ", sdCreditRequirement);
|
226 |
LOGGER.info("sdCreditRequirement {} ", sdCreditRequirement);
|
| 228 |
|
227 |
|
| 229 |
CustomRetailer customRetailer = retailerService.getFofoRetailer(sdCreditRequirementModel.getFofoId());
|
228 |
CustomRetailer customRetailer = retailerService.getFofoRetailer(fofoId);
|
| 230 |
|
- |
|
| 231 |
sdCreditRequirement = sdCreditRequirementRepository.selectByFofoId(sdCreditRequirementModel.getFofoId());
|
- |
|
| 232 |
|
229 |
|
| 233 |
Map<Integer, SDCreditRequirement> sdCreditRequirementMap = new HashMap<>();
|
230 |
Map<Integer, SDCreditRequirement> sdCreditRequirementMap = new HashMap<>();
|
| 234 |
sdCreditRequirementMap.put(sdCreditRequirement.getFofoId(), sdCreditRequirement);
|
231 |
sdCreditRequirementMap.put(sdCreditRequirement.getFofoId(), sdCreditRequirement);
|
| 235 |
model.addAttribute("sdCreditRequirementMap", sdCreditRequirementMap);
|
232 |
model.addAttribute("sdCreditRequirementMap", sdCreditRequirementMap);
|
| 236 |
model.addAttribute("customRetailer", customRetailer);
|
233 |
model.addAttribute("customRetailer", customRetailer);
|