72 lines
1.7 KiB
Java
72 lines
1.7 KiB
Java
package com.emotion.service;
|
|
|
|
import com.baomidou.mybatisplus.extension.service.IService;
|
|
import com.emotion.common.PageResult;
|
|
import com.emotion.dto.request.coze.CozeApiCallPageRequest;
|
|
import com.emotion.dto.request.coze.CozeApiCallCreateRequest;
|
|
import com.emotion.dto.request.coze.CozeApiCallUpdateRequest;
|
|
import com.emotion.dto.response.coze.CozeApiCallResponse;
|
|
import com.emotion.entity.CozeApiCall;
|
|
|
|
import java.math.BigDecimal;
|
|
import java.time.LocalDateTime;
|
|
import java.util.List;
|
|
|
|
/**
|
|
* Coze API调用记录服务接口
|
|
*
|
|
* @author emotion-museum
|
|
* @date 2025-07-23
|
|
*/
|
|
public interface CozeApiCallService extends IService<CozeApiCall> {
|
|
|
|
/**
|
|
* 分页查询API调用记录
|
|
*/
|
|
PageResult<CozeApiCallResponse> getPage(CozeApiCallPageRequest request);
|
|
|
|
/**
|
|
* 根据ID获取API调用记录
|
|
*/
|
|
CozeApiCallResponse getById(String id);
|
|
|
|
/**
|
|
* 创建API调用记录
|
|
*/
|
|
CozeApiCallResponse create(CozeApiCallCreateRequest request);
|
|
|
|
/**
|
|
* 更新API调用记录
|
|
*/
|
|
CozeApiCallResponse update(CozeApiCallUpdateRequest request);
|
|
|
|
/**
|
|
* 删除API调用记录
|
|
*/
|
|
boolean delete(String id);
|
|
|
|
/**
|
|
* 统计用户的API调用次数
|
|
*/
|
|
Long countByUserId(String userId);
|
|
|
|
/**
|
|
* 统计Bot的API调用次数
|
|
*/
|
|
Long countByBotId(String botId);
|
|
|
|
/**
|
|
* 统计指定状态的API调用次数
|
|
*/
|
|
Long countByStatus(String status);
|
|
|
|
/**
|
|
* 统计用户的Token使用量
|
|
*/
|
|
Long sumTokensByUserId(String userId);
|
|
|
|
/**
|
|
* 统计用户的API调用费用
|
|
*/
|
|
BigDecimal sumCostByUserId(String userId);
|
|
} |