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 { /** * 创建渠道外部导入日志 * * @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 importTotal(ChannelReportDto reportDto); /** * 入口流量明细 * * @param reportDto * @param pageRequest * @return */ IPage importDetail(ChannelReportDetailDto reportDto, PageRequest pageRequest); /** * 出口流量统计 * * @param reportDto * @return */ List exportTotal(ChannelReportDto reportDto); /** * 出口流量明细 * * @param reportDto * @param pageRequest * @return */ IPage exportDetail(ChannelReportDetailDto reportDto, PageRequest pageRequest); /** * 获取启用的渠道列表 * * @param type * @return */ List channelList(Integer type); /** * 新增戒易贷贷超访问记录 * * @param loanMarkId * @param userDetail */ void addJYDLoanMarketRecord(Long loanMarkId, UserDetail userDetail); /** * 查看渠道占比 * * @param channelProportionDto * @return */ List getChannelProportion(ChannelProportionDto channelProportionDto); /** * 获取贷超贷超统计报表 * * @param supermarketStatisticsDto * @return */ List getLoanSupermarketStatistics(LoanSupermarketStatisticsDto supermarketStatisticsDto); /** * 查看联登渠道统计报表 * * @param autoStatisticsDto */ List getAutoStatistics(AutoStatisticsDto autoStatisticsDto); /** * 获取全流程报表 * * @param wholeProcessStatisticsDto * @return */ List getWholeProcessStatistics(WholeProcessStatisticsDto wholeProcessStatisticsDto); /** * 查看入口流量占比 * * @param inletFlowProportionDto * @return */ List 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 channelStatistics(ChannelStatisticsDto channelStatisticsDto); /** * 盈利分析报表 * * @param profitAnalysisReportDto * @return */ List profitAnalysisReport(@RequestBody ProfitAnalysisReportDto profitAnalysisReportDto); }