package com.emotion.service; import com.baomidou.mybatisplus.extension.service.IService; import com.emotion.common.PageResult; import com.emotion.dto.request.UserStatsCreateRequest; import com.emotion.dto.request.UserStatsIncrementRequest; import com.emotion.dto.request.UserStatsPageRequest; import com.emotion.dto.request.UserStatsUpdateValueRequest; import com.emotion.dto.response.UserStatsResponse; import com.emotion.entity.UserStats; import java.util.List; /** * 用户统计服务接口 * * @author huazhongmin * @date 2025-07-23 */ public interface UserStatsService extends IService { /** * 分页查询用户统计响应 */ PageResult getPageWithResponse(UserStatsPageRequest request); /** * 更新用户统计值 */ boolean updateStatsValue(UserStatsUpdateValueRequest request); /** * 增加用户统计值 */ boolean incrementStatsValue(UserStatsIncrementRequest request); /** * 重新计算用户统计 */ boolean recalculateUserStats(String userId); /** * 重新计算所有用户统计 */ boolean recalculateAllUserStats(); /** * 创建或更新用户统计响应 */ UserStatsResponse createOrUpdateUserStatsWithResponse(UserStatsCreateRequest request); /** * 删除过期的统计数据 */ boolean deleteExpiredStats(Integer days); }