Administrator
2025-10-21 78045ae6ac90cf5559922bca10f7f6e84fef5ff7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
package cc.mrbird.febs.ai.service;
 
import cc.mrbird.febs.ai.entity.AiMemberTalk;
import cc.mrbird.febs.ai.req.member.ApiMemberTalkPageDto;
import cc.mrbird.febs.ai.req.memberTalk.*;
import cc.mrbird.febs.ai.req.memberTalk.ApiMemberTalkListDto;
import cc.mrbird.febs.ai.res.ai.AiResponse;
import cc.mrbird.febs.ai.res.member.ApiMemberTalkPageVo;
import cc.mrbird.febs.ai.res.memberTalk.ApiMemberTalkListVo;
import cc.mrbird.febs.ai.res.memberTalk.ApiTalkMemberListVo;
import cc.mrbird.febs.common.entity.FebsResponse;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import reactor.core.publisher.Flux;
 
import java.util.Date;
import java.util.List;
import java.util.function.Consumer;
 
/**
 * AI用户对话训练记录 Service接口
 *
 * @author yourname
 * @date 2025-07-29
 */
public interface AiMemberTalkService extends IService<AiMemberTalk> {
 
 
    AiMemberTalk getById(String id);
 
    FebsResponse start(ApiMemberTalkDto dto);
 
    FebsResponse reload(ApiMemberTalkReloadDto dto);
 
    void startStream(ApiMemberTalkDto dto, Consumer<AiResponse> callback);
 
    AiMemberTalk getByQuery(LambdaQueryWrapper<AiMemberTalk> query);
 
    void updateTimeUpdate(Date nowTime, String id);
 
    FebsResponse answer(ApiMemberTalkAnswerDto dto);
 
    AiMemberTalk add(String memberUuid,String companyId, String productId, Date nowTime,Integer questionCount);
 
    FebsResponse historyPage(ApiMemberTalkItemPageDto dto);
 
    Flux<FebsResponse> answerStream(String question);
 
    List<AiMemberTalk> getListByCompanyId(String companyId);
 
    List<AiMemberTalk> getListByCompanyIdAndMemberUuid(String companyId, String memberUuid);
 
    IPage<ApiMemberTalkListVo> getPageByDto(ApiMemberTalkListDto dto);
 
    Page<ApiMemberTalkPageVo> getTalkPage(Page<ApiMemberTalkPageVo> page, ApiMemberTalkPageDto dto);
}