Subversion Repositories SmartDukaan

Rev

Rev 31020 | Rev 31399 | Go to most recent revision | View as "text/plain" | Blame | Compare with Previous | Last modification | View Log | RSS feed

package com.spice.profitmandi.service.transaction;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;

import org.springframework.stereotype.Service;

import com.spice.profitmandi.common.exception.ProfitMandiBusinessException;
import com.spice.profitmandi.dao.entity.fofo.FofoPayment;
import com.spice.profitmandi.dao.entity.transaction.Loan;
import com.spice.profitmandi.dao.entity.transaction.SDCreditRequirement;
import com.spice.profitmandi.dao.enumuration.transaction.CreditRisk;
import com.spice.profitmandi.dao.enumuration.transaction.LoanReferenceType;
import com.spice.profitmandi.dao.model.CartResponse;
import com.spice.profitmandi.dao.model.SDCreditResponseOut;
import com.spice.profitmandi.dao.model.UserCart;

@Service
public interface SDCreditService {

        public int createSDDirectOrder(UserCart userCart, CartResponse cartValidationResponse)
                        throws ProfitMandiBusinessException;

        public BigDecimal getAvailableAmount(int fofoId);

        public long getUtilizationAmount(int fofoId);

        public void createLoanStatement(LoanReferenceType interest, BigDecimal interestAccrued, int fofoId, int loanId,
                        String description, LocalDateTime businessDate);

        public void addInterest(LocalDate from, LocalDate to, Loan loan, Map<LoanReferenceType, Double> loanStatusAmount);

        public SDCreditResponseOut sdDirectService(int retailerId);

        public CreditRisk getCurrentRisk(SDCreditRequirement sdCreditRequirement, LocalDateTime firstBillingDate);

        public boolean isDefaultPartner(int fofoId);

        public void updateRisk();

        public List<Loan> getDefaultLoan();

        public boolean isDefaultLoan(int loanId, LocalDate time);

}