yujian
2020-04-15 7b3994d42861437494156d7d7b4e987068f3682c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
package com.yeshi.fanli.service.inter.money;
 
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
 
import com.yeshi.fanli.entity.money.InviteOrderSubsidyDebt;
import com.yeshi.fanli.exception.money.InviteOrderSubsidyDebtException;
 
public interface InviteOrderSubsidyDebtService {
 
    /**
     * 添加债务
     * 
     * @param debt
     * @throws InviteOrderSubsidyDebtException
     */
    public void addDebt(InviteOrderSubsidyDebt debt) throws InviteOrderSubsidyDebtException;
 
    /**
     * 偿还债务
     * 
     * @param debtId
     * @param money
     */
    public void repayDebt(Long debtId, BigDecimal money) throws InviteOrderSubsidyDebtException;
 
    /**
     * 还款
     * 
     * @param uid
     * @param money
     * @return 还剩下的资金
     * @throws InviteOrderSubsidyDebtException
     */
    public BigDecimal repayDebtByUid(Long uid,Date maxEstimatePayTime, BigDecimal money) throws InviteOrderSubsidyDebtException;
 
    /**
     * 检索需要偿还的债务
     * 
     * @param uid
     * @param page
     * @param count
     * @return
     */
    public List<InviteOrderSubsidyDebt> listNeedRepayDebt(Long uid,Date maxEstimatePayTime, int page, int count);
 
    /**
     * 检索需要偿还的债务
     * 
     * @param uid
     * @return
     */
    public long countNeedRepayDebt(Long uid,Date maxEstimatePayTime);
 
    /**
     * 获取总共欠钱金额
     * 
     * @param uid
     * @return
     */
    public BigDecimal getTotalDebtMoney(Long uid,Date maxEstimatePayTime);
 
    /**
     * 根据补贴id查询
     * @param sourceId
     * @return
     */
    public InviteOrderSubsidyDebt getBySourceId(Long sourceId);
 
}