wujianwei
2026-03-27 279366f14d6e1361b6caf7c05b74f0cea4227a36
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
package com.ruoyi.cwgl.service;
 
import java.util.List;
 
import com.ruoyi.cwgl.domain.ReceivableBillCustomerSummary;
import com.ruoyi.cwgl.domain.ReceivableBillManagement;
import com.ruoyi.cwgl.domain.vo.ReceivableBillAgingAnalysisVo;
import com.ruoyi.cwgl.domain.vo.ReceivableBillAccountAnalysisVo;
import com.baomidou.mybatisplus.extension.service.IService;
import org.apache.ibatis.annotations.Param;
 
/**
 * 应收账单管理Service接口
 * 
 * @author ruoyi
 * @date 2025-12-17
 */
public interface IReceivableBillManagementService extends IService<ReceivableBillManagement>
{
    /**
     * 查询应收账单管理
     * 
     * @param id 应收账单管理ID
     * @return 应收账单管理
     */
    public ReceivableBillManagement selectReceivableBillManagementById(Integer id);
 
    /**
     * 查询应收账单管理 记录数
     *
     * @param receivableBillManagement 应收账单管理
     * @return 应收账单管理集合
     */
    public int selectReceivableBillManagementCount(ReceivableBillManagement receivableBillManagement);
 
    /**
     * 查询应收账单管理列表
     * 
     * @param receivableBillManagement 应收账单管理
     * @return 应收账单管理集合
     */
    public List<ReceivableBillManagement> selectReceivableBillManagementList(ReceivableBillManagement receivableBillManagement);
 
    /**
     * 查询应收账单管理列表 异步 导出
     *
     * @param receivableBillManagement 应收账单管理
     * @param exportKey 导出功能的唯一标识
     * @return 应收账单管理集合
     */
    public void export(ReceivableBillManagement receivableBillManagement, String exportKey) ;
    public void customerSummaryExport(ReceivableBillManagement receivableBillManagement, String exportKey) ;
    public void agingAnalysisExport(ReceivableBillManagement receivableBillManagement, String exportKey) ;
    public void accountAnalysisExport(ReceivableBillManagement receivableBillManagement, String exportKey) ;
 
 
    /**
     * 新增应收账单管理
     * 
     * @param receivableBillManagement 应收账单管理
     * @return 结果
     */
    public int insertReceivableBillManagement(ReceivableBillManagement receivableBillManagement);
 
    /**
     * 新增应收账单管理[批量]
     *
     * @param receivableBillManagements 应收账单管理
     * @return 结果
     */
    public int insertReceivableBillManagementBatch(List<ReceivableBillManagement> receivableBillManagements);
 
    /**
     * 修改应收账单管理
     * 
     * @param receivableBillManagement 应收账单管理
     * @return 结果
     */
    public int updateReceivableBillManagement(ReceivableBillManagement receivableBillManagement);
    public int aging(ReceivableBillManagement receivableBillManagement);
    public int account(ReceivableBillManagement receivableBillManagement);
 
    /**
     * 修改应收账单管理[批量]
     *
     * @param receivableBillManagements 应收账单管理
     * @return 结果
     */
    public int updateReceivableBillManagementBatch(List<ReceivableBillManagement> receivableBillManagements);
    /**
     * 批量删除应收账单管理
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteReceivableBillManagementByIds(String ids);
 
    /**
     * 批量删除应收账单管理
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteReceivableBillManagementByIds(Integer[] ids);
 
    /**
     * 删除应收账单管理信息
     * 
     * @param id 应收账单管理ID
     * @return 结果
     */
    public int deleteReceivableBillManagementById(Integer id);
    
    /**
     * 作废应收账单管理记录
     * 
     * @param id 应收账单管理ID
     * @return 结果
     */
    public int voidReceivableBillManagement(Integer id);
    
    /**
     * 根据系统编号查询应收账单管理
     * 
     * @param systemNo 系统编号
     * @return 应收账单管理
     */
    public ReceivableBillManagement selectReceivableBillManagementBySystemNo(String systemNo);
    
    /**
     * 查询应收账单客户汇总列表
     * 
     * @param receivableBillManagement 查询条件
     * @return 应收账单客户汇总列表
     */
    public List<ReceivableBillCustomerSummary> selectReceivableBillCustomerSummaryList(@Param("receivableBillManagement") ReceivableBillManagement receivableBillManagement);
    
    /**
     * 查询应收账单账龄分析列表
     * 
     * @param receivableBillManagement 查询条件
     * @return 应收账单账龄分析列表
     */
    public List<ReceivableBillAgingAnalysisVo> selectReceivableBillAgingAnalysisList(@Param("receivableBillManagement") ReceivableBillManagement receivableBillManagement);
    
    /**
     * 批量更新应收账单账龄分析数据
     * 直接在数据库层面计算账龄分段,避免查询大量数据到应用层
     * 
     * @return 更新的记录数
     */
    public int batchUpdateAgingAnalysisData();
    
    /**
     * 查询应收账单账款分析列表
     * 
     * @param receivableBillManagement 查询条件
     * @return 应收账单账款分析列表
     */
    public List<ReceivableBillAccountAnalysisVo> selectReceivableBillAccountAnalysisList(@Param("receivableBillManagement") ReceivableBillManagement receivableBillManagement);
}