package com.bycrm.service; import com.bycrm.common.PageResult; import com.bycrm.dto.PageQuery; import com.bycrm.dto.ReportAuditDTO; import com.bycrm.dto.ReportDTO; import com.bycrm.vo.ReportVO; /** * 报备服务接口 */ public interface ReportService { /** * 分页查询报备 */ PageResult getReportPage(PageQuery query, Long dealerId, String dealerName, String customerName, Integer status, Long currentUserId); /** * 根据 ID 获取报备详情 */ ReportVO getReportById(Long id); /** * 创建报备 */ void createReport(ReportDTO reportDTO, Long currentUserId); /** * 审核报备 */ void auditReport(Long id, ReportAuditDTO auditDTO, Long currentUserId); /** * 撤回报备 */ void withdrawReport(Long id, Long currentUserId); /** * 处理过期报备(定时任务调用) */ void handleExpiredReports(); /** * 统计报备总数(根据经销商ID过滤) */ Long countByDealerId(Long dealerId); /** * 统计待审核报备数量(根据经销商ID过滤) */ Long countPendingByDealerId(Long dealerId); }