录音时长统计相关代码
This commit is contained in:
@@ -89,4 +89,32 @@ public interface AudioManagementStatisticsMapper extends BaseMapper<AudioManagem
|
||||
* @return 删除的记录数
|
||||
*/
|
||||
int deleteByStatisticsDate(@Param("date") LocalDate date);
|
||||
|
||||
/**
|
||||
* 根据销售人员和日期范围聚合查询总录音时长和平均录音时长
|
||||
* @param salesId 销售人员ID
|
||||
* @param startDate 开始日期
|
||||
* @param endDate 结束日期
|
||||
* @return 聚合统计结果(包含总录音时长、总录音数量、平均录音时长、销售人员姓名)
|
||||
*/
|
||||
@Select("SELECT " +
|
||||
"sales_id, " +
|
||||
"MAX(sales_name) as sales_name, " +
|
||||
"SUM(sales_total_duration) as total_duration, " +
|
||||
"SUM(sales_recording_count) as total_count, " +
|
||||
"CASE " +
|
||||
" WHEN SUM(sales_recording_count) > 0 THEN " +
|
||||
" ROUND(SUM(sales_total_duration) / SUM(sales_recording_count), 2) " +
|
||||
" ELSE 0 " +
|
||||
"END as avg_duration " +
|
||||
"FROM audio_management_statistics " +
|
||||
"WHERE sales_id = #{salesId} " +
|
||||
"AND statistics_date >= #{startDate} " +
|
||||
"AND statistics_date <= #{endDate} " +
|
||||
"AND sales_id IS NOT NULL " +
|
||||
"AND sales_id != '' " +
|
||||
"GROUP BY sales_id")
|
||||
Map<String, Object> getSalesAggregateStatistics(@Param("salesId") String salesId,
|
||||
@Param("startDate") LocalDate startDate,
|
||||
@Param("endDate") LocalDate endDate);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user