From 48bfa5a490da8433419d19a03f710233636a4ed3 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Wed, 18 Mar 2026 11:30:59 +0800
Subject: [PATCH] feat(yinhe): 实现系统代理列表分页功能
---
src/main/java/cc/mrbird/febs/yinhe/service/impl/YhAiServiceImpl.java | 27 ++++++---------------------
src/main/java/cc/mrbird/febs/yinhe/mapper/YHSysAgentMapper.java | 7 +++++++
src/main/resources/mapper/modules/YHSysAgentMapper.xml | 25 +++++++++++++++++++++++++
3 files changed, 38 insertions(+), 21 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/yinhe/mapper/YHSysAgentMapper.java b/src/main/java/cc/mrbird/febs/yinhe/mapper/YHSysAgentMapper.java
index 5e7aa9f..c5438de 100644
--- a/src/main/java/cc/mrbird/febs/yinhe/mapper/YHSysAgentMapper.java
+++ b/src/main/java/cc/mrbird/febs/yinhe/mapper/YHSysAgentMapper.java
@@ -1,7 +1,14 @@
package cc.mrbird.febs.yinhe.mapper;
import cc.mrbird.febs.yinhe.entity.YHSysAgent;
+import cc.mrbird.febs.yinhe.req.YHSysAgentDto;
+import cc.mrbird.febs.yinhe.res.YHSysAgentVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.ibatis.annotations.Param;
public interface YHSysAgentMapper extends BaseMapper<YHSysAgent> {
+
+ Page<YHSysAgentVo> getPageListByQuery(Page<YHSysAgentVo> page, @Param("record")YHSysAgentDto dto);
+
}
diff --git a/src/main/java/cc/mrbird/febs/yinhe/service/impl/YhAiServiceImpl.java b/src/main/java/cc/mrbird/febs/yinhe/service/impl/YhAiServiceImpl.java
index 1c55aef..e383f6c 100644
--- a/src/main/java/cc/mrbird/febs/yinhe/service/impl/YhAiServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/yinhe/service/impl/YhAiServiceImpl.java
@@ -1,5 +1,6 @@
package cc.mrbird.febs.yinhe.service.impl;
+import cc.mrbird.febs.ai.res.product.ApiProductVo;
import cc.mrbird.febs.ai.strategy.LlmStrategyFactory;
import cc.mrbird.febs.ai.strategy.enumerates.LlmStrategyEnum;
import cc.mrbird.febs.ai.utils.UUID;
@@ -22,6 +23,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;
@@ -196,27 +198,10 @@
@Override
public FebsResponse agentSysList(YHSysAgentDto dto) {
- ArrayList<YHSysAgentVo> vos = new ArrayList<>();
- LambdaQueryWrapper<YHSysAgent> query = Wrappers.lambdaQuery(YHSysAgent.class);
- query.eq(YHSysAgent::getState,1);
- if (ObjectUtil.isNotEmpty(dto.getAgentCategoryId())){
- query.eq(YHSysAgent::getAgentCategoryId,dto.getAgentCategoryId());
- }
- query.orderByDesc(YHSysAgent::getCreateTime);
-
- List<YHSysAgent> list = yhSysAgentMapper.selectList(query);
- if (CollUtil.isNotEmpty(list)){
-
- for (YHSysAgent entity : list) {
- YHSysAgentVo vo = new YHSysAgentVo();
- vo.setId(entity.getId());
- vo.setName(entity.getName());
- vo.setDescription(entity.getDescription());
- vo.setIconImg(entity.getIconImg());
- vos.add(vo);
- }
- }
- return new FebsResponse().success().data(vos);
+ // 创建分页对象,传入当前页和每页大小
+ Page<YHSysAgentVo> page = new Page<>(dto.getPageNow(), dto.getPageSize());
+ Page<YHSysAgentVo> pageListByQuery = yhSysAgentMapper.getPageListByQuery(page, dto);
+ return new FebsResponse().success().data(pageListByQuery);
}
@Override
diff --git a/src/main/resources/mapper/modules/YHSysAgentMapper.xml b/src/main/resources/mapper/modules/YHSysAgentMapper.xml
new file mode 100644
index 0000000..29a02d4
--- /dev/null
+++ b/src/main/resources/mapper/modules/YHSysAgentMapper.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="cc.mrbird.febs.yinhe.mapper.YHSysAgentMapper">
+
+ <select id="getPageListByQuery" resultType="cc.mrbird.febs.yinhe.res.YHSysAgentVo">
+ select
+ a.id as id,
+ a.name as name,
+ a.icon_img as iconImg,
+ a.description as description
+ from sys_agent a
+ <where>
+ a.state = 1
+ <if test="record != null">
+ <if test="record.agentCategoryId != null and record.agentCategoryId != ''">
+ and a.agent_category_id = #{record.agentCategoryId}
+ </if>
+ </if>
+ </where>
+ order by a.create_time desc
+ </select>
+
+
+
+</mapper>
\ No newline at end of file
--
Gitblit v1.9.1