| 30859 |
tejbeer |
1 |
package com.spice.profitmandi.service.transaction;
|
|
|
2 |
|
|
|
3 |
import com.spice.profitmandi.common.exception.ProfitMandiBusinessException;
|
|
|
4 |
import com.spice.profitmandi.dao.entity.transaction.Loan;
|
| 34288 |
ranu |
5 |
import com.spice.profitmandi.dao.entity.transaction.LoanSummary;
|
| 30936 |
tejbeer |
6 |
import com.spice.profitmandi.dao.entity.transaction.SDCreditRequirement;
|
| 35316 |
ranu |
7 |
import com.spice.profitmandi.dao.entity.transaction.StateWiseLoanSummary;
|
| 30936 |
tejbeer |
8 |
import com.spice.profitmandi.dao.enumuration.transaction.CreditRisk;
|
| 30859 |
tejbeer |
9 |
import com.spice.profitmandi.dao.enumuration.transaction.LoanReferenceType;
|
|
|
10 |
import com.spice.profitmandi.dao.model.SDCreditResponseOut;
|
|
|
11 |
|
| 34288 |
ranu |
12 |
import java.math.BigDecimal;
|
|
|
13 |
import java.time.LocalDate;
|
|
|
14 |
import java.time.LocalDateTime;
|
|
|
15 |
import java.util.List;
|
|
|
16 |
import java.util.Map;
|
|
|
17 |
|
| 35131 |
amit |
18 |
|
| 30859 |
tejbeer |
19 |
public interface SDCreditService {
|
|
|
20 |
|
| 33297 |
amit.gupta |
21 |
void fundWallet(int fofoId) throws ProfitMandiBusinessException;
|
|
|
22 |
|
| 34731 |
amit.gupta |
23 |
void fundWallet(int fofoId, double amountToFund, String reasonToFund) throws ProfitMandiBusinessException;
|
|
|
24 |
|
| 33339 |
amit.gupta |
25 |
//This will create loan irrespective of sanctions and increases the overall ultization
|
| 33696 |
amit.gupta |
26 |
Loan createLoan(int fofoId, double creditAmountRequired, int freeDays, String creditReason) throws ProfitMandiBusinessException;
|
| 33339 |
amit.gupta |
27 |
|
| 34661 |
ranu |
28 |
BlockLoanIdSanctionId createSDDirectOrder(int userId, double amountRequired, int freeCreditDays)
|
| 30859 |
tejbeer |
29 |
throws ProfitMandiBusinessException;
|
|
|
30 |
|
| 31518 |
amit.gupta |
31 |
BigDecimal getAvailableAmount(int fofoId);
|
| 30859 |
tejbeer |
32 |
|
| 31518 |
amit.gupta |
33 |
long getUtilizationAmount(int fofoId);
|
| 30859 |
tejbeer |
34 |
|
| 31518 |
amit.gupta |
35 |
void createLoanStatement(LoanReferenceType interest, BigDecimal interestAccrued, int fofoId, int loanId,
|
| 30859 |
tejbeer |
36 |
String description, LocalDateTime businessDate);
|
|
|
37 |
|
| 31518 |
amit.gupta |
38 |
void addInterest(LocalDate from, LocalDate to, Loan loan, Map<LoanReferenceType, Double> loanStatusAmount);
|
| 30859 |
tejbeer |
39 |
|
| 34453 |
amit.gupta |
40 |
SDCreditResponseOut sdDirectService(int retailerId) throws ProfitMandiBusinessException;
|
| 30859 |
tejbeer |
41 |
|
| 31518 |
amit.gupta |
42 |
CreditRisk getCurrentRisk(SDCreditRequirement sdCreditRequirement, LocalDateTime firstBillingDate);
|
| 30936 |
tejbeer |
43 |
|
| 31518 |
amit.gupta |
44 |
boolean isDefaultPartner(int fofoId);
|
| 30936 |
tejbeer |
45 |
|
| 31518 |
amit.gupta |
46 |
void updateRisk();
|
| 30936 |
tejbeer |
47 |
|
| 34727 |
amit.gupta |
48 |
List<Loan> getDefaultLoans();
|
| 30936 |
tejbeer |
49 |
|
| 34288 |
ranu |
50 |
List<Loan> getDefaultLoanWithoutLimit();
|
|
|
51 |
|
| 31399 |
tejbeer |
52 |
public List<Loan> getDueDateCrossLoan();
|
|
|
53 |
|
| 35110 |
ranu |
54 |
public List<Loan> getAllActiveLoan();
|
|
|
55 |
|
| 30936 |
tejbeer |
56 |
public boolean isDefaultLoan(int loanId, LocalDate time);
|
| 31020 |
tejbeer |
57 |
|
| 32172 |
jai.hind |
58 |
|
|
|
59 |
LoanSummary getLoanSummary();
|
| 33419 |
amit.gupta |
60 |
|
| 35316 |
ranu |
61 |
Map<String, StateWiseLoanSummary> getLoanSummaryStateWise() throws ProfitMandiBusinessException;
|
|
|
62 |
|
| 33419 |
amit.gupta |
63 |
void checkLoans();
|
| 33663 |
amit.gupta |
64 |
|
|
|
65 |
void createLoanForBilling(int transactionId, double invoiceAmount, String invoiceNumber) throws ProfitMandiBusinessException;
|
|
|
66 |
|
| 34731 |
amit.gupta |
67 |
void settleBlockedLoan(int transactionId, double amountToRelease) throws ProfitMandiBusinessException;
|
| 33663 |
amit.gupta |
68 |
|
| 33900 |
amit.gupta |
69 |
Loan getLimitFromTransactionId(int transactionId) throws ProfitMandiBusinessException;
|
|
|
70 |
|
| 33663 |
amit.gupta |
71 |
double settleLoan(Loan loan) throws ProfitMandiBusinessException;
|
| 33903 |
amit.gupta |
72 |
|
| 35295 |
amit |
73 |
void resetHardLimit() throws ProfitMandiBusinessException;
|
| 34731 |
amit.gupta |
74 |
|
|
|
75 |
void releaseBlockedLimit(Loan bloackedLoan, double limitToRelease) throws ProfitMandiBusinessException;
|
| 35131 |
amit |
76 |
|
| 35157 |
amit |
77 |
void updateMinInvestmentForHardLimit(SDCreditRequirement sdCreditRequirement, boolean useRecent) throws ProfitMandiBusinessException;
|
| 30859 |
tejbeer |
78 |
}
|