客户统计的代码框架

This commit is contained in:
2026-02-08 17:10:25 +08:00
parent 6350261a55
commit c003cbb11c
9 changed files with 584 additions and 2 deletions

View File

@@ -0,0 +1,88 @@
package com.rj.mapper;
import com.rj.entity.CustomerManagementStatistics;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.time.LocalDate;
import java.util.List;
import java.util.Map;
/**
* <p>
* 客户统计表 Mapper 接口
* </p>
*
* @author 李中华 ,spllzh
* @since 2025-08-07
*/
@Mapper
public interface CustomerManagementStatisticsMapper extends BaseMapper<CustomerManagementStatistics> {
/**
* 按经销商统计指定日期的客户数据
* @param date 统计日期
* @return 经销商统计结果列表
*/
@Select("SELECT " +
"dealership_id, " +
"dealership_name, " +
"COUNT(*) as count_by_dealership " +
"FROM customer_management " +
"WHERE DATE(create_time) = #{date} " +
"AND dealership_id IS NOT NULL " +
"AND dealership_id != '' " +
"GROUP BY dealership_id, dealership_name")
List<Map<String, Object>> getDealershipStatisticsByDate(@Param("date") LocalDate date);
/**
* 按销售统计指定日期的客户数据
* @param date 统计日期
* @return 销售统计结果列表
*/
@Select("SELECT " +
"sales_id, " +
"COUNT(*) as count_by_sales " +
"FROM customer_management " +
"WHERE DATE(create_time) = #{date} " +
"AND sales_id IS NOT NULL " +
"AND sales_id != '' " +
"GROUP BY sales_id")
List<Map<String, Object>> getSalesStatisticsByDate(@Param("date") LocalDate date);
/**
* 按项目统计指定日期的客户数据
* @param date 统计日期
* @return 项目统计结果列表
*/
@Select("SELECT " +
"dealership_id, " +
"sales_id, " +
"COUNT(*) as count_by_project " +
"FROM customer_management " +
"WHERE DATE(create_time) = #{date} " +
"AND dealership_id IS NOT NULL " +
"AND dealership_id != '' " +
"AND sales_id IS NOT NULL " +
"AND sales_id != '' " +
"GROUP BY dealership_id, sales_id")
List<Map<String, Object>> getProjectStatisticsByDate(@Param("date") LocalDate date);
/**
* 检查指定日期的统计数据是否已存在
* @param date 统计日期
* @return 统计记录数量
*/
@Select("SELECT COUNT(*) FROM customer_management_statistics WHERE statistics_date = #{date}")
int countByStatisticsDate(@Param("date") LocalDate date);
/**
* 删除指定日期的统计数据
* @param date 统计日期
* @return 删除的记录数
*/
int deleteByStatisticsDate(@Param("date") LocalDate date);
}