Subversion Repositories SmartDukaan

Rev

Rev 32171 | Rev 32822 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
30859 tejbeer 1
package com.spice.profitmandi.service.transaction;
2
 
3
import java.math.BigDecimal;
4
import java.time.LocalDate;
5
import java.time.LocalDateTime;
30936 tejbeer 6
import java.util.List;
30859 tejbeer 7
import java.util.Map;
8
 
32172 jai.hind 9
import com.spice.profitmandi.dao.entity.transaction.LoanAggregation;
10
import com.spice.profitmandi.dao.entity.transaction.LoanSummary;
30859 tejbeer 11
import org.springframework.stereotype.Service;
12
 
13
import com.spice.profitmandi.common.exception.ProfitMandiBusinessException;
14
import com.spice.profitmandi.dao.entity.fofo.FofoPayment;
15
import com.spice.profitmandi.dao.entity.transaction.Loan;
30936 tejbeer 16
import com.spice.profitmandi.dao.entity.transaction.SDCreditRequirement;
17
import com.spice.profitmandi.dao.enumuration.transaction.CreditRisk;
30859 tejbeer 18
import com.spice.profitmandi.dao.enumuration.transaction.LoanReferenceType;
19
import com.spice.profitmandi.dao.model.CartResponse;
20
import com.spice.profitmandi.dao.model.SDCreditResponseOut;
21
import com.spice.profitmandi.dao.model.UserCart;
22
 
32172 jai.hind 23
import javax.persistence.Cacheable;
24
 
30859 tejbeer 25
@Service
26
public interface SDCreditService {
27
 
31518 amit.gupta 28
	int createSDDirectOrder(UserCart userCart, CartResponse cartValidationResponse)
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
 
31518 amit.gupta 40
	SDCreditResponseOut sdDirectService(int retailerId);
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
 
31518 amit.gupta 48
	List<Loan> getDefaultLoan();
30936 tejbeer 49
 
31399 tejbeer 50
	public List<Loan> getDueDateCrossLoan();
51
 
30936 tejbeer 52
	public boolean isDefaultLoan(int loanId, LocalDate time);
31020 tejbeer 53
 
32172 jai.hind 54
 
55
		LoanSummary getLoanSummary();
30859 tejbeer 56
}