Air
2024-11-04 a1f06d31b7b4cac569c34bdfbb68de77f2858ffe
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
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
package com.nova.sankuai.service;
 
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nova.sankuai.domain.dto.*;
import com.nova.sankuai.domain.entity.ChannelInfo;
import com.nova.sankuai.domain.entity.ChannelLog;
import com.nova.sankuai.domain.vo.*;
import com.nova.sankuai.domain.vo.channel.ChannelExportReportVo;
import com.nova.sankuai.domain.vo.channel.ChannelReportTotalVo;
import com.nova.sankuai.domain.vo.channel.ChannelImportReportVo;
import com.nova.sankuai.infra.utils.PageRequest;
import com.nova.sankuai.security.UserDetail;
import org.springframework.web.bind.annotation.RequestBody;
 
import javax.servlet.http.HttpServletResponse;
import java.util.List;
 
/**
 * @author weikangdi
 */
public interface IChannelLogService extends IService<ChannelLog> {
 
    /**
     * 创建渠道外部导入日志
     *
     * @param importObjects
     * @param customerId
     * @param source
     * @param status
     */
    void createImportLog(Integer source, Integer status, Long customerId, String importObjects);
 
    /**
     * 创建渠道外部推送日志
     *
     * @param result       出口推送结果
     * @param customerId   客户记录Id
     * @param source       入口渠道代码
     * @param status       推送结果状态 0-成功 1-失败
     * @param exportSource 出口渠道代码
     */
    void createExportLog(Integer source, Integer exportSource, Integer status, Long customerId, String result);
 
 
    /**
     * 创建渠道贷款超市记录日志
     *
     * @param supermarketId 贷款超市Id
     * @param source        入口渠道代码
     * @param customerId    客户记录Id
     */
    void createSupermarketLog(Long supermarketId, Integer source, Long customerId);
 
 
    /**
     * 入口流量统计
     *
     * @param reportDto
     * @return
     */
    List<ChannelReportTotalVo> importTotal(ChannelReportDto reportDto);
 
    /**
     * 入口流量明细
     *
     * @param reportDto
     * @param pageRequest
     * @return
     */
    IPage<ChannelImportReportVo> importDetail(ChannelReportDetailDto reportDto, PageRequest pageRequest);
 
    /**
     * 出口流量统计
     *
     * @param reportDto
     * @return
     */
    List<ChannelReportTotalVo> exportTotal(ChannelReportDto reportDto);
 
    /**
     * 出口流量明细
     *
     * @param reportDto
     * @param pageRequest
     * @return
     */
    IPage<ChannelExportReportVo> exportDetail(ChannelReportDetailDto reportDto, PageRequest pageRequest);
 
    /**
     * 获取启用的渠道列表
     *
     * @param type
     * @return
     */
    List<ChannelInfo> channelList(Integer type);
 
    /**
     * 新增戒易贷贷超访问记录
     *
     * @param loanMarkId
     * @param userDetail
     */
    void addJYDLoanMarketRecord(Long loanMarkId, UserDetail userDetail);
 
    /**
     * 查看渠道占比
     *
     * @param channelProportionDto
     * @return
     */
    List<ChannelProportionListVo> getChannelProportion(ChannelProportionDto channelProportionDto);
 
    /**
     * 获取贷超贷超统计报表
     *
     * @param supermarketStatisticsDto
     * @return
     */
    List<LoanSupermarketStatisticsVo> getLoanSupermarketStatistics(LoanSupermarketStatisticsDto supermarketStatisticsDto);
 
    /**
     * 查看联登渠道统计报表
     *
     * @param autoStatisticsDto
     */
    List<AutoStatisticsVo> getAutoStatistics(AutoStatisticsDto autoStatisticsDto);
 
    /**
     * 获取全流程报表
     *
     * @param wholeProcessStatisticsDto
     * @return
     */
    List<WholeProcessStatisticsListVo> getWholeProcessStatistics(WholeProcessStatisticsDto wholeProcessStatisticsDto);
 
    /**
     * 查看入口流量占比
     *
     * @param inletFlowProportionDto
     * @return
     */
    List<InletFlowProportionListVo> getInletFlowProportion(InletFlowProportionDto inletFlowProportionDto);
 
    /**
     * 入口流量会员购买率Excel导出
     *
     * @param response
     */
    void inletFlowProportionExport(HttpServletResponse response, InletFlowProportionDto inletFlowProportionDto);
 
    /**
     * 渠道占比统计导出excel
     *
     * @param response
     * @param channelProportionDto
     */
    void getChannelProportionExport(HttpServletResponse response, @RequestBody ChannelProportionDto channelProportionDto);
 
    /**
     * 贷超统计报表导出excel
     *
     * @param response
     * @param supermarketStatisticsDto
     */
    void getLoanSupermarketStatisticsExport(HttpServletResponse response, @RequestBody LoanSupermarketStatisticsDto supermarketStatisticsDto);
 
    /**
     * 联登统计报表导出excel
     *
     * @param response
     * @param autoStatisticsDto
     */
    void autoStatisticsExport(HttpServletResponse response, @RequestBody AutoStatisticsDto autoStatisticsDto);
 
    /**
     * 多渠道统计报表
     *
     * @param channelStatisticsDto
     */
    List<ChannelStatisticsVo> channelStatistics(ChannelStatisticsDto channelStatisticsDto);
 
    /**
     * 盈利分析报表
     *
     * @param profitAnalysisReportDto
     * @return
     */
    List<ProfitAnalysisReportVo> profitAnalysisReport(@RequestBody ProfitAnalysisReportDto profitAnalysisReportDto);
 
}