| src/main/java/cc/mrbird/febs/ai/controller/memberTalk/ApiMemberTalkStreamController.java | ●●●●● patch | view | raw | blame | history | |
| src/main/java/cc/mrbird/febs/ai/mapper/AiMemberTalkMapper.java | ●●●●● patch | view | raw | blame | history | |
| src/main/java/cc/mrbird/febs/ai/req/memberTalk/ApiMemberProductTalkPageDto.java | ●●●●● patch | view | raw | blame | history | |
| src/main/java/cc/mrbird/febs/ai/res/memberTalk/ApiMemberProductTalkVo.java | ●●●●● patch | view | raw | blame | history | |
| src/main/java/cc/mrbird/febs/ai/service/AiMemberTalkStreamService.java | ●●●●● patch | view | raw | blame | history | |
| src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberTalkStreamServiceImpl.java | ●●●●● patch | view | raw | blame | history | |
| src/main/resources/mapper/modules/AiMemberTalkMapper.xml | ●●●●● patch | view | raw | blame | history |
src/main/java/cc/mrbird/febs/ai/controller/memberTalk/ApiMemberTalkStreamController.java
@@ -1,11 +1,10 @@ package cc.mrbird.febs.ai.controller.memberTalk; import cc.mrbird.febs.ai.req.memberTalk.ApiMemberTalkItemPageDto; import cc.mrbird.febs.ai.req.memberTalk.ApiTalkMemberListDto; import cc.mrbird.febs.ai.req.memberTalk.ApiTalkReportListDto; import cc.mrbird.febs.ai.req.memberTalk.*; import cc.mrbird.febs.ai.req.memberTalkStream.*; import cc.mrbird.febs.ai.req.memberTalk.ApiMemberTalkListDto; import cc.mrbird.febs.ai.req.memberTalkStream.ApiMemberTalkStreamDto; import cc.mrbird.febs.ai.res.memberTalk.*; import cc.mrbird.febs.ai.res.memberTalk.ApiMemberProductTalkVo; import cc.mrbird.febs.ai.res.memberTalkStream.ApiMemberTalkReloadStreamVo; import cc.mrbird.febs.ai.res.memberTalkStream.ApiMemberTalkStreamV2Vo; import cc.mrbird.febs.ai.res.memberTalkStream.ApiMemberTalkStreamVo; @@ -131,6 +130,17 @@ } @ApiOperation(value = "我的陪练", notes = "我的陪练") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = ApiMemberProductTalkVo.class) }) @PostMapping(value = "/myTalkList") public FebsResponse myTalkList(@RequestBody @Validated ApiMemberProductTalkPageDto dto) { return aiMemberTalkStreamService.myTalkList(dto); } @ApiOperation(value = "陪练记录", notes = "陪练记录") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = ApiMemberTalkListVo.class) src/main/java/cc/mrbird/febs/ai/mapper/AiMemberTalkMapper.java
@@ -2,9 +2,11 @@ import cc.mrbird.febs.ai.entity.AiMemberTalk; import cc.mrbird.febs.ai.req.member.ApiMemberTalkPageDto; import cc.mrbird.febs.ai.req.memberTalk.ApiMemberProductTalkPageDto; import cc.mrbird.febs.ai.req.memberTalk.ApiMemberTalkListDto; import cc.mrbird.febs.ai.res.member.ApiMemberTalkPageVo; import cc.mrbird.febs.ai.res.memberTalk.ApiMemberTalkListVo; import cc.mrbird.febs.ai.res.memberTalk.ApiMemberProductTalkVo; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -21,4 +23,6 @@ IPage<ApiMemberTalkListVo> getPageByDto(Page<ApiMemberTalkListVo> page, @Param("record")ApiMemberTalkListDto dto); Page<ApiMemberTalkPageVo> getTalkPage(Page<ApiMemberTalkPageVo> page, @Param("record")ApiMemberTalkPageDto dto); Page<ApiMemberProductTalkVo> getPageMyTalkListByQuery(Page<ApiMemberProductTalkVo> page, @Param("record")ApiMemberProductTalkPageDto dto); } src/main/java/cc/mrbird/febs/ai/req/memberTalk/ApiMemberProductTalkPageDto.java
New file @@ -0,0 +1,29 @@ package cc.mrbird.febs.ai.req.memberTalk; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import javax.validation.constraints.NotNull; /** * @author Administrator */ @Data @ApiModel(value = "ApiMemberProductTalkPageDto", description = "参数") public class ApiMemberProductTalkPageDto { @NotNull(message = "页码不能为空") @ApiModelProperty(value = "页码", example = "1") private Integer pageNow; @NotNull(message = "每页数量不能为空") @ApiModelProperty(value = "每页数量", example = "10") private Integer pageSize; @ApiModelProperty(hidden = true) private String memberUuid; @ApiModelProperty(hidden = true) private String companyId; } src/main/java/cc/mrbird/febs/ai/res/memberTalk/ApiMemberProductTalkVo.java
New file @@ -0,0 +1,34 @@ package cc.mrbird.febs.ai.res.memberTalk; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; /** * @author Administrator */ @Data @ApiModel(value = "ApiMemberProductTalkVo", description = "参数") public class ApiMemberProductTalkVo { @ApiModelProperty(value = "ID") private String id; /** * 名称 */ @ApiModelProperty(value = "名称") private String name; /** * 目标 */ @ApiModelProperty(value = "目标") private String target; @ApiModelProperty(value = "时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date createdTime; } src/main/java/cc/mrbird/febs/ai/service/AiMemberTalkStreamService.java
@@ -1,11 +1,9 @@ package cc.mrbird.febs.ai.service; import cc.mrbird.febs.ai.entity.AiMemberTalk; import cc.mrbird.febs.ai.req.memberTalk.ApiMemberTalkItemPageDto; import cc.mrbird.febs.ai.req.memberTalk.ApiTalkMemberListDto; import cc.mrbird.febs.ai.req.memberTalk.ApiTalkReportListDto; import cc.mrbird.febs.ai.req.memberTalk.*; import cc.mrbird.febs.ai.req.memberTalkStream.*; import cc.mrbird.febs.ai.req.memberTalk.ApiMemberTalkListDto; import cc.mrbird.febs.ai.req.memberTalkStream.ApiMemberTalkStreamDto; import cc.mrbird.febs.common.entity.FebsResponse; import com.baomidou.mybatisplus.extension.service.IService; import reactor.core.publisher.Flux; @@ -22,6 +20,8 @@ Flux<FebsResponse> startV2(ApiMemberTalkStreamV2Dto dto); FebsResponse myTalkList(ApiMemberProductTalkPageDto dto); FebsResponse talkList(ApiMemberTalkListDto dto); FebsResponse talkMemberList(ApiTalkMemberListDto dto); src/main/java/cc/mrbird/febs/ai/service/impl/AiMemberTalkStreamServiceImpl.java
@@ -4,12 +4,11 @@ import cc.mrbird.febs.ai.enumerates.AiTalkOutputEnum; import cc.mrbird.febs.ai.enumerates.AiTypeEnum; import cc.mrbird.febs.ai.mapper.AiMemberTalkMapper; import cc.mrbird.febs.ai.req.memberTalk.ApiMemberTalkItemPageDto; import cc.mrbird.febs.ai.req.memberTalk.ApiTalkMemberListDto; import cc.mrbird.febs.ai.req.memberTalk.ApiTalkReportListDto; import cc.mrbird.febs.ai.req.memberTalk.*; import cc.mrbird.febs.ai.req.memberTalkStream.*; import cc.mrbird.febs.ai.req.memberTalk.ApiMemberTalkListDto; import cc.mrbird.febs.ai.req.memberTalkStream.ApiMemberTalkStreamDto; import cc.mrbird.febs.ai.res.memberTalk.ApiMemberTalkMemberAnswerSavaVo; import cc.mrbird.febs.ai.res.memberTalk.ApiMemberProductTalkVo; import cc.mrbird.febs.ai.res.memberTalkStream.ApiMemberTalkReloadStreamVo; import cc.mrbird.febs.ai.res.memberTalkStream.ApiMemberTalkStreamVo; import cc.mrbird.febs.ai.service.*; @@ -27,6 +26,7 @@ import com.alibaba.dashscope.common.Role; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -167,6 +167,22 @@ } @Override public FebsResponse myTalkList(ApiMemberProductTalkPageDto dto) { String memberUuid = LoginUserUtil.getLoginUser().getMemberUuid(); dto.setMemberUuid(memberUuid); String companyId = LoginUserUtil.getLoginUser().getCompanyId(); dto.setCompanyId(companyId); // 创建分页对象,传入当前页和每页大小 Page<ApiMemberProductTalkVo> page = new Page<>(dto.getPageNow(), dto.getPageSize()); Page<ApiMemberProductTalkVo> pageListByQuery = aiMemberTalkMapper.getPageMyTalkListByQuery(page, dto); return new FebsResponse().success().data(pageListByQuery); } @Override public FebsResponse talkList(ApiMemberTalkListDto dto) { return new FebsResponse().success().data(aiMemberTalkService.getPageByDto(dto)); src/main/resources/mapper/modules/AiMemberTalkMapper.xml
@@ -35,4 +35,21 @@ order by a.CREATED_TIME desc </select> <select id="getPageMyTalkListByQuery" resultType="cc.mrbird.febs.ai.res.memberTalk.ApiMemberProductTalkVo"> select DISTINCT b.ID as id, b.name as name, b.target as target, a.CREATED_TIME as createdTime from ai_member_talk a left join ai_product b on a.product_id = b.id <where> and a.member_id = #{record.memberUuid} and a.company_id = #{record.companyId} and a.state = 1 and b.state = 1 </where> order by a.CREATED_TIME desc </select> </mapper>