mirror of
https://gitcode.com/ageerle/ruoyi-ai.git
synced 2026-03-21 16:43:47 +08:00
feat: ruoyi-chat-api模块调整
This commit is contained in:
@@ -0,0 +1,86 @@
|
||||
package org.ruoyi.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 智能体管理对象 chat_agent_manage
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("chat_agent_manage")
|
||||
public class ChatAgentManage extends BaseEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 应用名称
|
||||
*/
|
||||
private String appName;
|
||||
|
||||
/**
|
||||
* 应用类型
|
||||
*/
|
||||
private String appType;
|
||||
|
||||
/**
|
||||
* 应用头像
|
||||
*/
|
||||
private String appIcon;
|
||||
|
||||
/**
|
||||
* 应用描述
|
||||
*/
|
||||
private String appDescription;
|
||||
|
||||
/**
|
||||
* 开场介绍
|
||||
*/
|
||||
private String introduction;
|
||||
|
||||
/**
|
||||
* 模型
|
||||
*/
|
||||
private String model;
|
||||
|
||||
/**
|
||||
* 对话可选模型
|
||||
*/
|
||||
private String conversationModel;
|
||||
|
||||
/**
|
||||
* 应用设定
|
||||
*/
|
||||
private String applicationSettings;
|
||||
|
||||
/**
|
||||
* 插件id
|
||||
*/
|
||||
private String pluginId;
|
||||
|
||||
/**
|
||||
* 知识库id
|
||||
*/
|
||||
private Long knowledgeId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -1,7 +1,6 @@
|
||||
package org.ruoyi.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
@@ -9,10 +8,10 @@ import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 应用市场
|
||||
* 应用商店对象 chat_app_store
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-03-19
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@@ -23,7 +22,7 @@ public class ChatAppStore extends BaseEntity {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
* id
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
@@ -39,16 +38,15 @@ public class ChatAppStore extends BaseEntity {
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 头像
|
||||
* logo
|
||||
*/
|
||||
private String avatar;
|
||||
|
||||
/**
|
||||
* 应用地址
|
||||
* 地址
|
||||
*/
|
||||
private String appUrl;
|
||||
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
|
||||
@@ -1,21 +1,18 @@
|
||||
package org.ruoyi.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
import org.ruoyi.common.sensitive.annotation.Sensitive;
|
||||
import org.ruoyi.common.sensitive.core.SensitiveStrategy;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 对话配置信息对象 chat_config
|
||||
* 配置信息对象 chat_config
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-04-13
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@@ -44,7 +41,6 @@ public class ChatConfig extends BaseEntity {
|
||||
/**
|
||||
* 配置值
|
||||
*/
|
||||
@Sensitive(strategy = SensitiveStrategy.SKY)
|
||||
private String configValue;
|
||||
|
||||
/**
|
||||
@@ -57,6 +53,12 @@ public class ChatConfig extends BaseEntity {
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 版本
|
||||
*/
|
||||
@Version
|
||||
private Long version;
|
||||
|
||||
/**
|
||||
* 删除标志(0代表存在 1代表删除)
|
||||
*/
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
package org.ruoyi.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.Version;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
@@ -11,10 +8,10 @@ import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* gpts管理对象 chat_gpts
|
||||
* 应用管理对象 chat_gpts
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-07-09
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@@ -63,12 +60,12 @@ public class ChatGpts extends BaseEntity {
|
||||
/**
|
||||
* 点赞
|
||||
*/
|
||||
private String useCnt;
|
||||
private Long useCnt;
|
||||
|
||||
/**
|
||||
* 差评
|
||||
*/
|
||||
private String bad;
|
||||
private Long bad;
|
||||
|
||||
/**
|
||||
* 类型
|
||||
@@ -97,15 +94,5 @@ public class ChatGpts extends BaseEntity {
|
||||
*/
|
||||
private String updateIp;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
private String modelName;
|
||||
|
||||
|
||||
/**
|
||||
* 模型system
|
||||
*/
|
||||
private String systemPrompt;
|
||||
|
||||
}
|
||||
|
||||
@@ -1,21 +1,19 @@
|
||||
package org.ruoyi.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.core.validate.AddGroup;
|
||||
import org.ruoyi.common.core.validate.EditGroup;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 聊天消息对象 chat_message
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2023-11-26
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@@ -28,49 +26,45 @@ public class ChatMessage extends BaseEntity {
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
* 用户id
|
||||
*/
|
||||
@NotBlank(message = "用户ID", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long UserId;
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 消息内容
|
||||
*/
|
||||
private String content;
|
||||
|
||||
/**
|
||||
* 对话角色
|
||||
*/
|
||||
private String role;
|
||||
|
||||
|
||||
/**
|
||||
* 消息内容
|
||||
*/
|
||||
@NotBlank(message = "消息内容不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String content;
|
||||
* 扣除金额
|
||||
|
||||
|
||||
/**
|
||||
* 扣除费用
|
||||
*/
|
||||
private Double deductCost;
|
||||
private BigDecimal deductCost;
|
||||
|
||||
/**
|
||||
* 累计 Tokens
|
||||
*/
|
||||
@NotNull(message = "累计 Tokens不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Integer totalTokens;
|
||||
private Long totalTokens;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
@NotBlank(message = "模型名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String modelName;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,82 @@
|
||||
package org.ruoyi.domain;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 聊天模型对象 chat_model
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("chat_model")
|
||||
public class ChatModel extends BaseEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 模型分类
|
||||
*/
|
||||
private String category;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
private String modelName;
|
||||
|
||||
/**
|
||||
* 模型描述
|
||||
*/
|
||||
private String modelDescribe;
|
||||
|
||||
/**
|
||||
* 模型价格
|
||||
*/
|
||||
private Long modelPrice;
|
||||
|
||||
/**
|
||||
* 计费类型
|
||||
*/
|
||||
private String modelType;
|
||||
|
||||
/**
|
||||
* 是否显示
|
||||
*/
|
||||
private String modelShow;
|
||||
|
||||
/**
|
||||
* 系统提示词
|
||||
*/
|
||||
private String systemPrompt;
|
||||
|
||||
/**
|
||||
* 请求地址
|
||||
*/
|
||||
private String apiHost;
|
||||
|
||||
/**
|
||||
* 密钥
|
||||
*/
|
||||
private String apiKey;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
package org.ruoyi.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 套餐管理对象 chat_package_plan
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("chat_package_plan")
|
||||
public class ChatPackagePlan extends BaseEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 套餐名称
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 套餐价格
|
||||
*/
|
||||
private BigDecimal price;
|
||||
|
||||
/**
|
||||
* 有效时间
|
||||
*/
|
||||
private Long duration;
|
||||
|
||||
/**
|
||||
* 计划详情
|
||||
*/
|
||||
private String planDetail;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
package org.ruoyi.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 支付订单对象 chat_pay_order
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("chat_pay_order")
|
||||
public class ChatPayOrder extends BaseEntity {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 订单编号
|
||||
*/
|
||||
private String orderNo;
|
||||
|
||||
/**
|
||||
* 订单名称
|
||||
*/
|
||||
private String orderName;
|
||||
|
||||
/**
|
||||
* 金额
|
||||
*/
|
||||
private BigDecimal amount;
|
||||
|
||||
/**
|
||||
* 支付状态
|
||||
*/
|
||||
private String paymentStatus;
|
||||
|
||||
/**
|
||||
* 支付方式
|
||||
*/
|
||||
private String paymentMethod;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -1,7 +1,6 @@
|
||||
package org.ruoyi.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
@@ -12,7 +11,7 @@ import java.io.Serial;
|
||||
* 插件管理对象 chat_plugin
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-03-30
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
package org.ruoyi.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* 用户兑换记录对象 chat_voucher
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-05-03
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@@ -29,11 +29,6 @@ public class ChatVoucher extends BaseEntity {
|
||||
@TableId(value = "id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 兑换码
|
||||
*/
|
||||
@@ -44,6 +39,11 @@ public class ChatVoucher extends BaseEntity {
|
||||
*/
|
||||
private BigDecimal amount;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 兑换状态
|
||||
*/
|
||||
|
||||
@@ -0,0 +1,96 @@
|
||||
package org.ruoyi.domain.bo;
|
||||
|
||||
import org.ruoyi.common.core.validate.AddGroup;
|
||||
import org.ruoyi.common.core.validate.EditGroup;
|
||||
import org.ruoyi.system.domain.ChatAgentManage;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
/**
|
||||
* 智能体管理业务对象 chat_agent_manage
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = ChatAgentManage.class, reverseConvertGenerate = false)
|
||||
public class ChatAgentManageBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@NotNull(message = "主键id不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 应用名称
|
||||
*/
|
||||
@NotBlank(message = "应用名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String appName;
|
||||
|
||||
/**
|
||||
* 应用类型
|
||||
*/
|
||||
@NotBlank(message = "应用类型不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String appType;
|
||||
|
||||
/**
|
||||
* 应用头像
|
||||
*/
|
||||
@NotBlank(message = "应用头像不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String appIcon;
|
||||
|
||||
/**
|
||||
* 应用描述
|
||||
*/
|
||||
@NotBlank(message = "应用描述不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String appDescription;
|
||||
|
||||
/**
|
||||
* 开场介绍
|
||||
*/
|
||||
@NotBlank(message = "开场介绍不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String introduction;
|
||||
|
||||
/**
|
||||
* 模型
|
||||
*/
|
||||
@NotBlank(message = "模型不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String model;
|
||||
|
||||
/**
|
||||
* 对话可选模型
|
||||
*/
|
||||
@NotBlank(message = "对话可选模型不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String conversationModel;
|
||||
|
||||
/**
|
||||
* 应用设定
|
||||
*/
|
||||
@NotBlank(message = "应用设定不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String applicationSettings;
|
||||
|
||||
/**
|
||||
* 插件id
|
||||
*/
|
||||
@NotBlank(message = "插件id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String pluginId;
|
||||
|
||||
/**
|
||||
* 知识库id
|
||||
*/
|
||||
@NotNull(message = "知识库id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long knowledgeId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -1,19 +1,19 @@
|
||||
package org.ruoyi.domain.bo;
|
||||
|
||||
import org.ruoyi.common.core.validate.AddGroup;
|
||||
import org.ruoyi.common.core.validate.EditGroup;
|
||||
import org.ruoyi.system.domain.ChatAppStore;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
import org.ruoyi.domain.ChatAppStore;
|
||||
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
/**
|
||||
* 应用市场业务对象 voice_role
|
||||
* 应用商店业务对象 chat_app_store
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-03-19
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@@ -23,37 +23,37 @@ public class ChatAppStoreBo extends BaseEntity {
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
@NotNull(message = "id不能为空")
|
||||
@NotNull(message = "id不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 角色名称
|
||||
* 名称
|
||||
*/
|
||||
@NotBlank(message = "名称不能为空")
|
||||
@NotBlank(message = "名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 角色描述
|
||||
* 描述
|
||||
*/
|
||||
@NotBlank(message = "描述不能为空")
|
||||
@NotBlank(message = "描述不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 头像
|
||||
* logo
|
||||
*/
|
||||
@NotBlank(message = "头像不能为空")
|
||||
@NotBlank(message = "logo不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String avatar;
|
||||
|
||||
/**
|
||||
* 音频地址
|
||||
* 地址
|
||||
*/
|
||||
@NotBlank(message = "应用地址不能为空")
|
||||
@NotBlank(message = "地址不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String appUrl;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@NotBlank(message = "备注不能为空")
|
||||
@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String remark;
|
||||
|
||||
|
||||
|
||||
@@ -1,24 +1,19 @@
|
||||
package org.ruoyi.domain.bo;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.core.validate.AddGroup;
|
||||
import org.ruoyi.common.core.validate.EditGroup;
|
||||
import org.ruoyi.system.domain.ChatConfig;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
import org.ruoyi.common.sensitive.annotation.Sensitive;
|
||||
import org.ruoyi.common.sensitive.core.SensitiveStrategy;
|
||||
import org.ruoyi.domain.ChatConfig;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
/**
|
||||
* 对话配置信息
|
||||
业务对象 chat_config
|
||||
* 配置信息业务对象 chat_config
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-04-13
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@@ -46,14 +41,13 @@ public class ChatConfigBo extends BaseEntity {
|
||||
/**
|
||||
* 配置值
|
||||
*/
|
||||
@Sensitive(strategy = SensitiveStrategy.SKY)
|
||||
@NotBlank(message = "配置值不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String configValue;
|
||||
|
||||
/**
|
||||
* 说明
|
||||
*/
|
||||
@NotBlank(message = "参数说明不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
@NotBlank(message = "说明不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String configDict;
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,20 +1,19 @@
|
||||
package org.ruoyi.domain.bo;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.core.validate.AddGroup;
|
||||
import org.ruoyi.common.core.validate.EditGroup;
|
||||
import org.ruoyi.system.domain.ChatGpts;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
import org.ruoyi.domain.ChatGpts;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
/**
|
||||
* gpts管理业务对象 chat_gpts
|
||||
* 应用管理业务对象 chat_gpts
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-07-09
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@@ -42,56 +41,56 @@ public class ChatGptsBo extends BaseEntity {
|
||||
/**
|
||||
* gpts图标
|
||||
*/
|
||||
@NotBlank(message = "gpts图标不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String logo;
|
||||
|
||||
/**
|
||||
* gpts描述
|
||||
*/
|
||||
@NotBlank(message = "gpts描述不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String info;
|
||||
|
||||
/**
|
||||
* 作者id
|
||||
*/
|
||||
@NotBlank(message = "作者id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String authorId;
|
||||
|
||||
/**
|
||||
* 作者名称
|
||||
*/
|
||||
@NotBlank(message = "作者名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String authorName;
|
||||
|
||||
/**
|
||||
* 点赞
|
||||
*/
|
||||
private String useCnt;
|
||||
@NotNull(message = "点赞不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long useCnt;
|
||||
|
||||
/**
|
||||
* 差评
|
||||
*/
|
||||
private String bad;
|
||||
@NotNull(message = "差评不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long bad;
|
||||
|
||||
/**
|
||||
* 类型
|
||||
*/
|
||||
@NotBlank(message = "类型不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String type;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 更新IP
|
||||
*/
|
||||
@NotBlank(message = "更新IP不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String updateIp;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
private String modelName;
|
||||
|
||||
/**
|
||||
* 模型system
|
||||
*/
|
||||
private String systemPrompt;
|
||||
|
||||
}
|
||||
|
||||
@@ -1,21 +1,20 @@
|
||||
package org.ruoyi.domain.bo;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.core.validate.AddGroup;
|
||||
import org.ruoyi.common.core.validate.EditGroup;
|
||||
import org.ruoyi.system.domain.ChatMessage;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
import org.ruoyi.domain.ChatMessage;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 聊天消息业务对象 chat_message
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2023-11-26
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@@ -29,20 +28,11 @@ public class ChatMessageBo extends BaseEntity {
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
* 用户id
|
||||
*/
|
||||
@NotNull(message = "用户id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 用户名称
|
||||
*/
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 对话角色
|
||||
*/
|
||||
private String role;
|
||||
|
||||
/**
|
||||
* 消息内容
|
||||
*/
|
||||
@@ -50,23 +40,36 @@ public class ChatMessageBo extends BaseEntity {
|
||||
private String content;
|
||||
|
||||
/**
|
||||
* 扣除费用
|
||||
* 对话角色
|
||||
*/
|
||||
private Double deductCost;
|
||||
@NotBlank(message = "对话角色不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String role;
|
||||
|
||||
/**
|
||||
* 扣除金额
|
||||
|
||||
|
||||
*/
|
||||
@NotNull(message = "扣除金额不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private BigDecimal deductCost;
|
||||
|
||||
/**
|
||||
* 累计 Tokens
|
||||
*/
|
||||
private Integer totalTokens;
|
||||
@NotNull(message = "累计 Tokens不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long totalTokens;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
@NotBlank(message = "模型名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String modelName;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,90 @@
|
||||
package org.ruoyi.domain.bo;
|
||||
|
||||
import org.ruoyi.common.core.validate.AddGroup;
|
||||
import org.ruoyi.common.core.validate.EditGroup;
|
||||
import org.ruoyi.system.domain.ChatModel;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
/**
|
||||
* 聊天模型业务对象 chat_model
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = ChatModel.class, reverseConvertGenerate = false)
|
||||
public class ChatModelBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 模型分类
|
||||
*/
|
||||
@NotBlank(message = "模型分类不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String category;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
@NotBlank(message = "模型名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String modelName;
|
||||
|
||||
/**
|
||||
* 模型描述
|
||||
*/
|
||||
@NotBlank(message = "模型描述不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String modelDescribe;
|
||||
|
||||
/**
|
||||
* 模型价格
|
||||
*/
|
||||
@NotNull(message = "模型价格不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long modelPrice;
|
||||
|
||||
/**
|
||||
* 计费类型
|
||||
*/
|
||||
@NotBlank(message = "计费类型不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String modelType;
|
||||
|
||||
/**
|
||||
* 是否显示
|
||||
*/
|
||||
@NotBlank(message = "是否显示不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String modelShow;
|
||||
|
||||
/**
|
||||
* 系统提示词
|
||||
*/
|
||||
@NotBlank(message = "系统提示词不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String systemPrompt;
|
||||
|
||||
/**
|
||||
* 请求地址
|
||||
*/
|
||||
@NotBlank(message = "请求地址不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String apiHost;
|
||||
|
||||
/**
|
||||
* 密钥
|
||||
*/
|
||||
@NotBlank(message = "密钥不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String apiKey;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package org.ruoyi.domain.bo;
|
||||
|
||||
import org.ruoyi.common.core.validate.AddGroup;
|
||||
import org.ruoyi.common.core.validate.EditGroup;
|
||||
import org.ruoyi.system.domain.ChatPackagePlan;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 套餐管理业务对象 chat_package_plan
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = ChatPackagePlan.class, reverseConvertGenerate = false)
|
||||
public class ChatPackagePlanBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 套餐名称
|
||||
*/
|
||||
@NotBlank(message = "套餐名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 套餐价格
|
||||
*/
|
||||
@NotNull(message = "套餐价格不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private BigDecimal price;
|
||||
|
||||
/**
|
||||
* 有效时间
|
||||
*/
|
||||
@NotNull(message = "有效时间不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long duration;
|
||||
|
||||
/**
|
||||
* 计划详情
|
||||
*/
|
||||
@NotBlank(message = "计划详情不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String planDetail;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package org.ruoyi.domain.bo;
|
||||
|
||||
import org.ruoyi.common.core.validate.AddGroup;
|
||||
import org.ruoyi.common.core.validate.EditGroup;
|
||||
import org.ruoyi.system.domain.ChatPayOrder;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 支付订单业务对象 chat_pay_order
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@AutoMapper(target = ChatPayOrder.class, reverseConvertGenerate = false)
|
||||
public class ChatPayOrderBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 订单编号
|
||||
*/
|
||||
@NotBlank(message = "订单编号不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String orderNo;
|
||||
|
||||
/**
|
||||
* 订单名称
|
||||
*/
|
||||
@NotBlank(message = "订单名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String orderName;
|
||||
|
||||
/**
|
||||
* 金额
|
||||
*/
|
||||
@NotNull(message = "金额不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private BigDecimal amount;
|
||||
|
||||
/**
|
||||
* 支付状态
|
||||
*/
|
||||
@NotBlank(message = "支付状态不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String paymentStatus;
|
||||
|
||||
/**
|
||||
* 支付方式
|
||||
*/
|
||||
@NotBlank(message = "支付方式不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String paymentMethod;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
@NotNull(message = "用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -1,21 +1,19 @@
|
||||
package org.ruoyi.domain.bo;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.core.validate.AddGroup;
|
||||
import org.ruoyi.common.core.validate.EditGroup;
|
||||
import org.ruoyi.system.domain.ChatPlugin;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
import org.ruoyi.domain.ChatPlugin;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
/**
|
||||
* 插件管理业务对象 chat_plugin
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-03-30
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
|
||||
@@ -1,22 +1,20 @@
|
||||
package org.ruoyi.domain.bo;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.ruoyi.common.core.validate.AddGroup;
|
||||
import org.ruoyi.common.core.validate.EditGroup;
|
||||
import org.ruoyi.system.domain.ChatVoucher;
|
||||
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
|
||||
import org.ruoyi.domain.ChatVoucher;
|
||||
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import jakarta.validation.constraints.*;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 用户兑换记录业务对象 chat_voucher
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-05-03
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@@ -29,14 +27,10 @@ public class ChatVoucherBo extends BaseEntity {
|
||||
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 兑换码
|
||||
*/
|
||||
@NotBlank(message = "兑换码不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String code;
|
||||
|
||||
/**
|
||||
@@ -45,24 +39,34 @@ public class ChatVoucherBo extends BaseEntity {
|
||||
@NotNull(message = "兑换金额不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private BigDecimal amount;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
@NotNull(message = "用户id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 兑换状态
|
||||
*/
|
||||
@NotBlank(message = "兑换状态不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 兑换前余额
|
||||
*/
|
||||
private Double balanceBefore;
|
||||
@NotNull(message = "兑换前余额不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private BigDecimal balanceBefore;
|
||||
|
||||
/**
|
||||
* 兑换后余额
|
||||
*/
|
||||
private Double balanceAfter;
|
||||
@NotNull(message = "兑换后余额不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private BigDecimal balanceAfter;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String remark;
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,104 @@
|
||||
package org.ruoyi.system.domain.vo;
|
||||
|
||||
import org.ruoyi.system.domain.ChatAgentManage;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import annotation.excel.common.org.ruoyi.ExcelDictFormat;
|
||||
import convert.excel.common.org.ruoyi.ExcelDictConvert;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 智能体管理视图对象 chat_agent_manage
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = ChatAgentManage.class)
|
||||
public class ChatAgentManageVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@ExcelProperty(value = "主键id")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 应用名称
|
||||
*/
|
||||
@ExcelProperty(value = "应用名称")
|
||||
private String appName;
|
||||
|
||||
/**
|
||||
* 应用类型
|
||||
*/
|
||||
@ExcelProperty(value = "应用类型")
|
||||
private String appType;
|
||||
|
||||
/**
|
||||
* 应用头像
|
||||
*/
|
||||
@ExcelProperty(value = "应用头像")
|
||||
private String appIcon;
|
||||
|
||||
/**
|
||||
* 应用描述
|
||||
*/
|
||||
@ExcelProperty(value = "应用描述")
|
||||
private String appDescription;
|
||||
|
||||
/**
|
||||
* 开场介绍
|
||||
*/
|
||||
@ExcelProperty(value = "开场介绍")
|
||||
private String introduction;
|
||||
|
||||
/**
|
||||
* 模型
|
||||
*/
|
||||
@ExcelProperty(value = "模型")
|
||||
private String model;
|
||||
|
||||
/**
|
||||
* 对话可选模型
|
||||
*/
|
||||
@ExcelProperty(value = "对话可选模型")
|
||||
private String conversationModel;
|
||||
|
||||
/**
|
||||
* 应用设定
|
||||
*/
|
||||
@ExcelProperty(value = "应用设定")
|
||||
private String applicationSettings;
|
||||
|
||||
/**
|
||||
* 插件id
|
||||
*/
|
||||
@ExcelProperty(value = "插件id")
|
||||
private String pluginId;
|
||||
|
||||
/**
|
||||
* 知识库id
|
||||
*/
|
||||
@ExcelProperty(value = "知识库id")
|
||||
private Long knowledgeId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -1,23 +1,23 @@
|
||||
package org.ruoyi.domain.vo;
|
||||
|
||||
package org.ruoyi.system.domain.vo;
|
||||
|
||||
import org.ruoyi.system.domain.ChatAppStore;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import org.ruoyi.domain.ChatAppStore;
|
||||
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 应用市场视图对象
|
||||
* 应用商店视图对象 chat_app_store
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-03-19
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@@ -34,27 +34,27 @@ public class ChatAppStoreVo implements Serializable {
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 角色名称
|
||||
* 名称
|
||||
*/
|
||||
@ExcelProperty(value = "名称")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 角色描述
|
||||
* 描述
|
||||
*/
|
||||
@ExcelProperty(value = "描述")
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 头像
|
||||
* logo
|
||||
*/
|
||||
@ExcelProperty(value = "头像")
|
||||
@ExcelProperty(value = "logo")
|
||||
private String avatar;
|
||||
|
||||
/**
|
||||
* 音频地址
|
||||
* 地址
|
||||
*/
|
||||
@ExcelProperty(value = "应用地址")
|
||||
@ExcelProperty(value = "地址")
|
||||
private String appUrl;
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,25 +1,23 @@
|
||||
package org.ruoyi.domain.vo;
|
||||
|
||||
import org.ruoyi.system.domain.ChatConfig;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import org.ruoyi.common.sensitive.annotation.Sensitive;
|
||||
import org.ruoyi.common.sensitive.core.SensitiveStrategy;
|
||||
import org.ruoyi.domain.ChatConfig;
|
||||
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 对话配置信息
|
||||
视图对象 chat_config
|
||||
* 配置信息视图对象 chat_config
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-04-13
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@@ -51,7 +49,6 @@ public class ChatConfigVo implements Serializable {
|
||||
* 配置值
|
||||
*/
|
||||
@ExcelProperty(value = "配置值")
|
||||
@Sensitive(strategy = SensitiveStrategy.SKY)
|
||||
private String configValue;
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,21 +1,23 @@
|
||||
package org.ruoyi.domain.vo;
|
||||
|
||||
import org.ruoyi.system.domain.ChatGpts;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import org.ruoyi.domain.ChatGpts;
|
||||
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* gpts管理视图对象 chat_gpts
|
||||
* 应用管理视图对象 chat_gpts
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-07-09
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@@ -71,13 +73,13 @@ public class ChatGptsVo implements Serializable {
|
||||
* 点赞
|
||||
*/
|
||||
@ExcelProperty(value = "点赞")
|
||||
private String useCnt;
|
||||
private Long useCnt;
|
||||
|
||||
/**
|
||||
* 差评
|
||||
*/
|
||||
@ExcelProperty(value = "差评")
|
||||
private String bad;
|
||||
private Long bad;
|
||||
|
||||
/**
|
||||
* 类型
|
||||
@@ -97,16 +99,5 @@ public class ChatGptsVo implements Serializable {
|
||||
@ExcelProperty(value = "更新IP")
|
||||
private String updateIp;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
@ExcelProperty(value = "模型名称")
|
||||
private String modelName;
|
||||
|
||||
/**
|
||||
* 模型system
|
||||
*/
|
||||
private String systemPrompt;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1,25 +1,24 @@
|
||||
package org.ruoyi.domain.vo;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import org.ruoyi.system.domain.ChatMessage;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
import org.ruoyi.common.core.validate.AddGroup;
|
||||
import org.ruoyi.common.core.validate.EditGroup;
|
||||
import org.ruoyi.domain.ChatMessage;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 聊天消息视图对象 chat_message
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2023-11-26
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@@ -32,60 +31,50 @@ public class ChatMessageVo implements Serializable {
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
|
||||
@ExcelProperty(value = "主键")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
* 用户id
|
||||
*/
|
||||
@NotBlank(message = "用户ID", groups = { AddGroup.class, EditGroup.class })
|
||||
@ExcelProperty(value = "用户id")
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 用户名称
|
||||
*/
|
||||
@NotBlank(message = "用户名称")
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 对话角色
|
||||
*/
|
||||
private String role;
|
||||
|
||||
|
||||
/**
|
||||
* 消息内容
|
||||
*/
|
||||
@NotBlank(message = "消息内容不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
@ExcelProperty(value = "消息内容")
|
||||
private String content;
|
||||
|
||||
/**
|
||||
* 对话角色
|
||||
*/
|
||||
@ExcelProperty(value = "对话角色")
|
||||
private String role;
|
||||
|
||||
/**
|
||||
* 扣除费用
|
||||
* 扣除金额
|
||||
*/
|
||||
private Double deductCost;
|
||||
@ExcelProperty(value = "扣除金额")
|
||||
private BigDecimal deductCost;
|
||||
|
||||
/**
|
||||
* 累计 Tokens
|
||||
*/
|
||||
@NotNull(message = "累计 Tokens不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Integer totalTokens;
|
||||
@ExcelProperty(value = "累计 Tokens")
|
||||
private Long totalTokens;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
@NotBlank(message = "模型名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
@ExcelProperty(value = "模型名称")
|
||||
private String modelName;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date createTime;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,97 @@
|
||||
package org.ruoyi.domain.vo;
|
||||
|
||||
import org.ruoyi.system.domain.ChatModel;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 聊天模型视图对象 chat_model
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = ChatModel.class)
|
||||
public class ChatModelVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@ExcelProperty(value = "主键")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 模型分类
|
||||
*/
|
||||
@ExcelProperty(value = "模型分类")
|
||||
private String category;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
@ExcelProperty(value = "模型名称")
|
||||
private String modelName;
|
||||
|
||||
/**
|
||||
* 模型描述
|
||||
*/
|
||||
@ExcelProperty(value = "模型描述")
|
||||
private String modelDescribe;
|
||||
|
||||
/**
|
||||
* 模型价格
|
||||
*/
|
||||
@ExcelProperty(value = "模型价格")
|
||||
private Long modelPrice;
|
||||
|
||||
/**
|
||||
* 计费类型
|
||||
*/
|
||||
@ExcelProperty(value = "计费类型")
|
||||
private String modelType;
|
||||
|
||||
/**
|
||||
* 是否显示
|
||||
*/
|
||||
@ExcelProperty(value = "是否显示")
|
||||
private String modelShow;
|
||||
|
||||
/**
|
||||
* 系统提示词
|
||||
*/
|
||||
@ExcelProperty(value = "系统提示词")
|
||||
private String systemPrompt;
|
||||
|
||||
/**
|
||||
* 请求地址
|
||||
*/
|
||||
@ExcelProperty(value = "请求地址")
|
||||
private String apiHost;
|
||||
|
||||
/**
|
||||
* 密钥
|
||||
*/
|
||||
@ExcelProperty(value = "密钥")
|
||||
private String apiKey;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
package org.ruoyi.domain.vo;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import org.ruoyi.system.domain.ChatPackagePlan;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 套餐管理视图对象 chat_package_plan
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = ChatPackagePlan.class)
|
||||
public class ChatPackagePlanVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@ExcelProperty(value = "主键")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 套餐名称
|
||||
*/
|
||||
@ExcelProperty(value = "套餐名称")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 套餐价格
|
||||
*/
|
||||
@ExcelProperty(value = "套餐价格")
|
||||
private BigDecimal price;
|
||||
|
||||
/**
|
||||
* 有效时间
|
||||
*/
|
||||
@ExcelProperty(value = "有效时间")
|
||||
private Long duration;
|
||||
|
||||
/**
|
||||
* 计划详情
|
||||
*/
|
||||
@ExcelProperty(value = "计划详情")
|
||||
private String planDetail;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
package org.ruoyi.domain.vo;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import org.ruoyi.system.domain.ChatPayOrder;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 支付订单视图对象 chat_pay_order
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@AutoMapper(target = ChatPayOrder.class)
|
||||
public class ChatPayOrderVo implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@ExcelProperty(value = "主键")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 订单编号
|
||||
*/
|
||||
@ExcelProperty(value = "订单编号")
|
||||
private String orderNo;
|
||||
|
||||
/**
|
||||
* 订单名称
|
||||
*/
|
||||
@ExcelProperty(value = "订单名称")
|
||||
private String orderName;
|
||||
|
||||
/**
|
||||
* 金额
|
||||
*/
|
||||
@ExcelProperty(value = "金额")
|
||||
private BigDecimal amount;
|
||||
|
||||
/**
|
||||
* 支付状态
|
||||
*/
|
||||
@ExcelProperty(value = "支付状态")
|
||||
private String paymentStatus;
|
||||
|
||||
/**
|
||||
* 支付方式
|
||||
*/
|
||||
@ExcelProperty(value = "支付方式")
|
||||
private String paymentMethod;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
@ExcelProperty(value = "用户ID")
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -1,20 +1,23 @@
|
||||
package org.ruoyi.domain.vo;
|
||||
|
||||
import org.ruoyi.system.domain.ChatPlugin;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import org.ruoyi.domain.ChatPlugin;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 插件管理视图对象 chat_plugin
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-03-30
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
package org.ruoyi.domain.vo;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import org.ruoyi.system.domain.ChatVoucher;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
|
||||
import io.github.linpeilie.annotations.AutoMapper;
|
||||
import lombok.Data;
|
||||
import org.ruoyi.domain.ChatVoucher;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
@@ -14,8 +16,8 @@ import java.io.Serializable;
|
||||
/**
|
||||
* 用户兑换记录视图对象 chat_voucher
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-05-03
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
@@ -31,18 +33,6 @@ public class ChatVoucherVo implements Serializable {
|
||||
@ExcelProperty(value = "主键")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
@ExcelProperty(value = "用户id")
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 用户名称
|
||||
*/
|
||||
@ExcelProperty(value = "用户名称")
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 兑换码
|
||||
*/
|
||||
@@ -53,7 +43,13 @@ public class ChatVoucherVo implements Serializable {
|
||||
* 兑换金额
|
||||
*/
|
||||
@ExcelProperty(value = "兑换金额")
|
||||
private Double amount;
|
||||
private BigDecimal amount;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
@ExcelProperty(value = "用户id")
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 兑换状态
|
||||
@@ -65,13 +61,13 @@ public class ChatVoucherVo implements Serializable {
|
||||
* 兑换前余额
|
||||
*/
|
||||
@ExcelProperty(value = "兑换前余额")
|
||||
private Double balanceBefore;
|
||||
private BigDecimal balanceBefore;
|
||||
|
||||
/**
|
||||
* 兑换后余额
|
||||
*/
|
||||
@ExcelProperty(value = "兑换后余额")
|
||||
private Double balanceAfter;
|
||||
private BigDecimal balanceAfter;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
@@ -79,8 +75,5 @@ public class ChatVoucherVo implements Serializable {
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
@ExcelProperty(value = "创建时间")
|
||||
private String createTime;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
package org.ruoyi.mapper;
|
||||
|
||||
|
||||
import org.ruoyi.domain.ChatAgentManage;
|
||||
import org.ruoyi.system.domain.vo.ChatAgentManageVo;
|
||||
import org.ruoyi.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
/**
|
||||
* 智能体管理Mapper接口
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface ChatAgentManageMapper extends BaseMapperPlus<ChatAgentManage, ChatAgentManageVo> {
|
||||
|
||||
}
|
||||
@@ -1,15 +1,15 @@
|
||||
package org.ruoyi.mapper;
|
||||
|
||||
import org.ruoyi.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
import org.ruoyi.domain.ChatAppStore;
|
||||
import org.ruoyi.domain.vo.ChatAppStoreVo;
|
||||
|
||||
import org.ruoyi.domain.ChatAppStore;
|
||||
import org.ruoyi.system.domain.vo.ChatAppStoreVo;
|
||||
import org.ruoyi.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
/**
|
||||
* 应用市场Mapper接口
|
||||
* 应用商店Mapper接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-03-19
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface ChatAppStoreMapper extends BaseMapperPlus<ChatAppStore, ChatAppStoreVo> {
|
||||
|
||||
|
||||
@@ -1,17 +1,16 @@
|
||||
package org.ruoyi.mapper;
|
||||
|
||||
|
||||
import org.ruoyi.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
import org.ruoyi.domain.ChatConfig;
|
||||
import org.ruoyi.domain.vo.ChatConfigVo;
|
||||
|
||||
|
||||
/**
|
||||
* 对话配置信息Mapper接口
|
||||
* 配置信息Mapper接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-04-13
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface ChatConfigMapper extends BaseMapperPlus<ChatConfig, ChatConfigVo> {
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -4,12 +4,11 @@ import org.ruoyi.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
import org.ruoyi.domain.ChatGpts;
|
||||
import org.ruoyi.domain.vo.ChatGptsVo;
|
||||
|
||||
|
||||
/**
|
||||
* gpts管理Mapper接口
|
||||
* 应用管理Mapper接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-07-09
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface ChatGptsMapper extends BaseMapperPlus<ChatGpts, ChatGptsVo> {
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
package org.ruoyi.mapper;
|
||||
|
||||
|
||||
import org.ruoyi.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
import org.ruoyi.domain.ChatMessage;
|
||||
import org.ruoyi.domain.vo.ChatMessageVo;
|
||||
|
||||
|
||||
/**
|
||||
* 聊天消息Mapper接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2023-11-26
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface ChatMessageMapper extends BaseMapperPlus<ChatMessage, ChatMessageVo> {
|
||||
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
package org.ruoyi.mapper;
|
||||
|
||||
import org.ruoyi.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
import org.ruoyi.domain.ChatModel;
|
||||
import org.ruoyi.domain.vo.ChatModelVo;
|
||||
|
||||
/**
|
||||
* 聊天模型Mapper接口
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface ChatModelMapper extends BaseMapperPlus<ChatModel, ChatModelVo> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package org.ruoyi.mapper;
|
||||
|
||||
|
||||
import org.ruoyi.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
import org.ruoyi.domain.ChatPackagePlan;
|
||||
import org.ruoyi.domain.vo.ChatPackagePlanVo;
|
||||
|
||||
/**
|
||||
* 套餐管理Mapper接口
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface ChatPackagePlanMapper extends BaseMapperPlus<ChatPackagePlan, ChatPackagePlanVo> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package org.ruoyi.mapper;
|
||||
|
||||
|
||||
import org.ruoyi.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
import org.ruoyi.domain.ChatPayOrder;
|
||||
import org.ruoyi.domain.vo.ChatPayOrderVo;
|
||||
|
||||
/**
|
||||
* 支付订单Mapper接口
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface ChatPayOrderMapper extends BaseMapperPlus<ChatPayOrder, ChatPayOrderVo> {
|
||||
|
||||
}
|
||||
@@ -1,15 +1,15 @@
|
||||
package org.ruoyi.mapper;
|
||||
|
||||
|
||||
import org.ruoyi.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
import org.ruoyi.domain.ChatPlugin;
|
||||
import org.ruoyi.domain.vo.ChatPluginVo;
|
||||
|
||||
|
||||
/**
|
||||
* 插件管理Mapper接口
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-03-30
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface ChatPluginMapper extends BaseMapperPlus<ChatPlugin, ChatPluginVo> {
|
||||
|
||||
|
||||
@@ -4,12 +4,11 @@ import org.ruoyi.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
import org.ruoyi.domain.ChatVoucher;
|
||||
import org.ruoyi.domain.vo.ChatVoucherVo;
|
||||
|
||||
|
||||
/**
|
||||
* 用户兑换记录Mapper接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-05-03
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface ChatVoucherMapper extends BaseMapperPlus<ChatVoucher, ChatVoucherVo> {
|
||||
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
package org.ruoyi.service;
|
||||
|
||||
|
||||
import org.ruoyi.domain.bo.ChatAgentManageBo;
|
||||
import org.ruoyi.system.domain.vo.ChatAgentManageVo;
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 智能体管理Service接口
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface IChatAgentManageService {
|
||||
|
||||
/**
|
||||
* 查询智能体管理
|
||||
*/
|
||||
ChatAgentManageVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 查询智能体管理列表
|
||||
*/
|
||||
TableDataInfo<ChatAgentManageVo> queryPageList(ChatAgentManageBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询智能体管理列表
|
||||
*/
|
||||
List<ChatAgentManageVo> queryList(ChatAgentManageBo bo);
|
||||
|
||||
/**
|
||||
* 新增智能体管理
|
||||
*/
|
||||
Boolean insertByBo(ChatAgentManageBo bo);
|
||||
|
||||
/**
|
||||
* 修改智能体管理
|
||||
*/
|
||||
Boolean updateByBo(ChatAgentManageBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除智能体管理信息
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -1,47 +1,49 @@
|
||||
package org.ruoyi.service;
|
||||
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.domain.bo.ChatAppStoreBo;
|
||||
import org.ruoyi.domain.vo.ChatAppStoreVo;
|
||||
|
||||
import org.ruoyi.domain.bo.ChatAppStoreBo;
|
||||
import org.ruoyi.system.domain.vo.ChatAppStoreVo;
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 应用市场Service接口
|
||||
* 应用商店Service接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-03-19
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface IChatAppStoreService {
|
||||
|
||||
/**
|
||||
* 查询应用市场
|
||||
* 查询应用商店
|
||||
*/
|
||||
ChatAppStoreVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 查询应用市场列表
|
||||
* 查询应用商店列表
|
||||
*/
|
||||
TableDataInfo<ChatAppStoreVo> queryPageList(ChatAppStoreBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询应用市场列表
|
||||
* 查询应用商店列表
|
||||
*/
|
||||
List<ChatAppStoreVo> queryList(ChatAppStoreBo bo);
|
||||
|
||||
/**
|
||||
* 新增应用商店
|
||||
*/
|
||||
Boolean insertByBo(ChatAppStoreBo bo);
|
||||
|
||||
/**
|
||||
* 修改应用市场
|
||||
* 修改应用商店
|
||||
*/
|
||||
Boolean updateByBo(ChatAppStoreBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除应用市场信息
|
||||
* 校验并批量删除应用商店信息
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
package org.ruoyi.service;
|
||||
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import org.ruoyi.domain.bo.ChatConfigBo;
|
||||
import org.ruoyi.domain.vo.ChatConfigVo;
|
||||
|
||||
@@ -9,14 +10,15 @@ import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 对话配置信息Service接口
|
||||
* @date 2024-04-13
|
||||
* 配置信息Service接口
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface IChatConfigService {
|
||||
|
||||
/**
|
||||
* 查询配置信息
|
||||
|
||||
*/
|
||||
ChatConfigVo queryById(Long id);
|
||||
|
||||
@@ -32,7 +34,6 @@ public interface IChatConfigService {
|
||||
|
||||
/**
|
||||
* 新增配置信息
|
||||
|
||||
*/
|
||||
Boolean insertByBo(ChatConfigBo bo);
|
||||
|
||||
@@ -45,9 +46,4 @@ public interface IChatConfigService {
|
||||
* 校验并批量删除配置信息信息
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
|
||||
/**
|
||||
* 查询系统参数
|
||||
*/
|
||||
List<ChatConfigVo> getSysConfigValue(String category);
|
||||
}
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
package org.ruoyi.service;
|
||||
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import org.ruoyi.domain.bo.ChatGptsBo;
|
||||
import org.ruoyi.domain.vo.ChatGptsVo;
|
||||
|
||||
@@ -9,40 +10,40 @@ import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* gpts管理Service接口
|
||||
* 应用管理Service接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-07-09
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface IChatGptsService {
|
||||
|
||||
/**
|
||||
* 查询gpts管理
|
||||
* 查询应用管理
|
||||
*/
|
||||
ChatGptsVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 查询gpts管理列表
|
||||
* 查询应用管理列表
|
||||
*/
|
||||
TableDataInfo<ChatGptsVo> queryPageList(ChatGptsBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询gpts管理列表
|
||||
* 查询应用管理列表
|
||||
*/
|
||||
List<ChatGptsVo> queryList(ChatGptsBo bo);
|
||||
|
||||
/**
|
||||
* 新增gpts管理
|
||||
* 新增应用管理
|
||||
*/
|
||||
Boolean insertByBo(ChatGptsBo bo);
|
||||
|
||||
/**
|
||||
* 修改gpts管理
|
||||
* 修改应用管理
|
||||
*/
|
||||
Boolean updateByBo(ChatGptsBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除gpts管理信息
|
||||
* 校验并批量删除应用管理信息
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
package org.ruoyi.service;
|
||||
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import org.ruoyi.domain.bo.ChatMessageBo;
|
||||
import org.ruoyi.domain.vo.ChatMessageVo;
|
||||
|
||||
@@ -11,8 +12,8 @@ import java.util.List;
|
||||
/**
|
||||
* 聊天消息Service接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2023-11-26
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface IChatMessageService {
|
||||
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
package org.ruoyi.service;
|
||||
|
||||
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import org.ruoyi.domain.bo.ChatModelBo;
|
||||
import org.ruoyi.domain.vo.ChatModelVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 聊天模型Service接口
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface IChatModelService {
|
||||
|
||||
/**
|
||||
* 查询聊天模型
|
||||
*/
|
||||
ChatModelVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 查询聊天模型列表
|
||||
*/
|
||||
TableDataInfo<ChatModelVo> queryPageList(ChatModelBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询聊天模型列表
|
||||
*/
|
||||
List<ChatModelVo> queryList(ChatModelBo bo);
|
||||
|
||||
/**
|
||||
* 新增聊天模型
|
||||
*/
|
||||
Boolean insertByBo(ChatModelBo bo);
|
||||
|
||||
/**
|
||||
* 修改聊天模型
|
||||
*/
|
||||
Boolean updateByBo(ChatModelBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除聊天模型信息
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
package org.ruoyi.service;
|
||||
|
||||
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import org.ruoyi.domain.bo.ChatPackagePlanBo;
|
||||
import org.ruoyi.domain.vo.ChatPackagePlanVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 套餐管理Service接口
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface IChatPackagePlanService {
|
||||
|
||||
/**
|
||||
* 查询套餐管理
|
||||
*/
|
||||
ChatPackagePlanVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 查询套餐管理列表
|
||||
*/
|
||||
TableDataInfo<ChatPackagePlanVo> queryPageList(ChatPackagePlanBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询套餐管理列表
|
||||
*/
|
||||
List<ChatPackagePlanVo> queryList(ChatPackagePlanBo bo);
|
||||
|
||||
/**
|
||||
* 新增套餐管理
|
||||
*/
|
||||
Boolean insertByBo(ChatPackagePlanBo bo);
|
||||
|
||||
/**
|
||||
* 修改套餐管理
|
||||
*/
|
||||
Boolean updateByBo(ChatPackagePlanBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除套餐管理信息
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
package org.ruoyi.service;
|
||||
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import org.ruoyi.domain.bo.ChatPayOrderBo;
|
||||
import org.ruoyi.domain.vo.ChatPayOrderVo;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 支付订单Service接口
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface IChatPayOrderService {
|
||||
|
||||
/**
|
||||
* 查询支付订单
|
||||
*/
|
||||
ChatPayOrderVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 查询支付订单列表
|
||||
*/
|
||||
TableDataInfo<ChatPayOrderVo> queryPageList(ChatPayOrderBo bo, PageQuery pageQuery);
|
||||
|
||||
/**
|
||||
* 查询支付订单列表
|
||||
*/
|
||||
List<ChatPayOrderVo> queryList(ChatPayOrderBo bo);
|
||||
|
||||
/**
|
||||
* 新增支付订单
|
||||
*/
|
||||
Boolean insertByBo(ChatPayOrderBo bo);
|
||||
|
||||
/**
|
||||
* 修改支付订单
|
||||
*/
|
||||
Boolean updateByBo(ChatPayOrderBo bo);
|
||||
|
||||
/**
|
||||
* 校验并批量删除支付订单信息
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
}
|
||||
@@ -1,7 +1,8 @@
|
||||
package org.ruoyi.service;
|
||||
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import org.ruoyi.domain.bo.ChatPluginBo;
|
||||
import org.ruoyi.domain.vo.ChatPluginVo;
|
||||
|
||||
@@ -12,7 +13,7 @@ import java.util.List;
|
||||
* 插件管理Service接口
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-03-30
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface IChatPluginService {
|
||||
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
package org.ruoyi.service;
|
||||
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import org.ruoyi.domain.bo.ChatVoucherBo;
|
||||
import org.ruoyi.domain.vo.ChatVoucherVo;
|
||||
|
||||
@@ -11,8 +12,8 @@ import java.util.List;
|
||||
/**
|
||||
* 用户兑换记录Service接口
|
||||
*
|
||||
* @author Lion Li
|
||||
* @date 2024-05-03
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
public interface IChatVoucherService {
|
||||
|
||||
@@ -45,9 +46,4 @@ public interface IChatVoucherService {
|
||||
* 校验并批量删除用户兑换记录信息
|
||||
*/
|
||||
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
|
||||
|
||||
/**
|
||||
* 兑换卡密
|
||||
*/
|
||||
Boolean redeem(ChatVoucherBo bo);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,120 @@
|
||||
package org.ruoyi.service.impl;
|
||||
|
||||
import org.ruoyi.common.core.utils.MapstructUtils;
|
||||
import org.ruoyi.common.core.utils.StringUtils;
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.ruoyi.domain.ChatAgentManage;
|
||||
import org.ruoyi.domain.bo.ChatAgentManageBo;
|
||||
import org.ruoyi.mapper.ChatAgentManageMapper;
|
||||
import org.ruoyi.service.IChatAgentManageService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import org.ruoyi.system.domain.vo.ChatAgentManageVo;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 智能体管理Service业务层处理
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class ChatAgentManageServiceImpl implements IChatAgentManageService {
|
||||
|
||||
private final ChatAgentManageMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询智能体管理
|
||||
*/
|
||||
@Override
|
||||
public ChatAgentManageVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询智能体管理列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<ChatAgentManageVo> queryPageList(ChatAgentManageBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<ChatAgentManage> lqw = buildQueryWrapper(bo);
|
||||
Page<ChatAgentManageVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询智能体管理列表
|
||||
*/
|
||||
@Override
|
||||
public List<ChatAgentManageVo> queryList(ChatAgentManageBo bo) {
|
||||
LambdaQueryWrapper<ChatAgentManage> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<ChatAgentManage> buildQueryWrapper(ChatAgentManageBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<ChatAgentManage> lqw = Wrappers.lambdaQuery();
|
||||
lqw.like(StringUtils.isNotBlank(bo.getAppName()), ChatAgentManage::getAppName, bo.getAppName());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getAppType()), ChatAgentManage::getAppType, bo.getAppType());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getAppIcon()), ChatAgentManage::getAppIcon, bo.getAppIcon());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getAppDescription()), ChatAgentManage::getAppDescription, bo.getAppDescription());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getIntroduction()), ChatAgentManage::getIntroduction, bo.getIntroduction());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getModel()), ChatAgentManage::getModel, bo.getModel());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getConversationModel()), ChatAgentManage::getConversationModel, bo.getConversationModel());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getApplicationSettings()), ChatAgentManage::getApplicationSettings, bo.getApplicationSettings());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getPluginId()), ChatAgentManage::getPluginId, bo.getPluginId());
|
||||
lqw.eq(bo.getKnowledgeId() != null, ChatAgentManage::getKnowledgeId, bo.getKnowledgeId());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增智能体管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(ChatAgentManageBo bo) {
|
||||
ChatAgentManage add = MapstructUtils.convert(bo, ChatAgentManage.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改智能体管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(ChatAgentManageBo bo) {
|
||||
ChatAgentManage update = MapstructUtils.convert(bo, ChatAgentManage.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(ChatAgentManage entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除智能体管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,113 @@
|
||||
package org.ruoyi.service.impl;
|
||||
|
||||
import org.ruoyi.common.core.utils.MapstructUtils;
|
||||
import org.ruoyi.common.core.utils.StringUtils;
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.ruoyi.domain.ChatAppStore;
|
||||
import org.ruoyi.domain.bo.ChatAppStoreBo;
|
||||
import org.ruoyi.mapper.ChatAppStoreMapper;
|
||||
import org.ruoyi.service.IChatAppStoreService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import org.ruoyi.system.domain.vo.ChatAppStoreVo;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 应用商店Service业务层处理
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class ChatAppStoreServiceImpl implements IChatAppStoreService {
|
||||
|
||||
private final ChatAppStoreMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询应用商店
|
||||
*/
|
||||
@Override
|
||||
public ChatAppStoreVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询应用商店列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<ChatAppStoreVo> queryPageList(ChatAppStoreBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<ChatAppStore> lqw = buildQueryWrapper(bo);
|
||||
Page<ChatAppStoreVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询应用商店列表
|
||||
*/
|
||||
@Override
|
||||
public List<ChatAppStoreVo> queryList(ChatAppStoreBo bo) {
|
||||
LambdaQueryWrapper<ChatAppStore> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<ChatAppStore> buildQueryWrapper(ChatAppStoreBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<ChatAppStore> lqw = Wrappers.lambdaQuery();
|
||||
lqw.like(StringUtils.isNotBlank(bo.getName()), ChatAppStore::getName, bo.getName());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getDescription()), ChatAppStore::getDescription, bo.getDescription());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getAvatar()), ChatAppStore::getAvatar, bo.getAvatar());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getAppUrl()), ChatAppStore::getAppUrl, bo.getAppUrl());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增应用商店
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(ChatAppStoreBo bo) {
|
||||
ChatAppStore add = MapstructUtils.convert(bo, ChatAppStore.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改应用商店
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(ChatAppStoreBo bo) {
|
||||
ChatAppStore update = MapstructUtils.convert(bo, ChatAppStore.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(ChatAppStore entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除应用商店
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,114 @@
|
||||
package org.ruoyi.service.impl;
|
||||
|
||||
import org.ruoyi.common.core.utils.MapstructUtils;
|
||||
import org.ruoyi.common.core.utils.StringUtils;
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.ruoyi.domain.ChatConfig;
|
||||
import org.ruoyi.domain.bo.ChatConfigBo;
|
||||
import org.ruoyi.domain.vo.ChatConfigVo;
|
||||
import org.ruoyi.mapper.ChatConfigMapper;
|
||||
import org.ruoyi.service.IChatConfigService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 配置信息Service业务层处理
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class ChatConfigServiceImpl implements IChatConfigService {
|
||||
|
||||
private final ChatConfigMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询配置信息
|
||||
*/
|
||||
@Override
|
||||
public ChatConfigVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询配置信息列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<ChatConfigVo> queryPageList(ChatConfigBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<ChatConfig> lqw = buildQueryWrapper(bo);
|
||||
Page<ChatConfigVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询配置信息列表
|
||||
*/
|
||||
@Override
|
||||
public List<ChatConfigVo> queryList(ChatConfigBo bo) {
|
||||
LambdaQueryWrapper<ChatConfig> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<ChatConfig> buildQueryWrapper(ChatConfigBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<ChatConfig> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getCategory()), ChatConfig::getCategory, bo.getCategory());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getConfigName()), ChatConfig::getConfigName, bo.getConfigName());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getConfigValue()), ChatConfig::getConfigValue, bo.getConfigValue());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getConfigDict()), ChatConfig::getConfigDict, bo.getConfigDict());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getUpdateIp()), ChatConfig::getUpdateIp, bo.getUpdateIp());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增配置信息
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(ChatConfigBo bo) {
|
||||
ChatConfig add = MapstructUtils.convert(bo, ChatConfig.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改配置信息
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(ChatConfigBo bo) {
|
||||
ChatConfig update = MapstructUtils.convert(bo, ChatConfig.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(ChatConfig entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除配置信息
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,119 @@
|
||||
package org.ruoyi.service.impl;
|
||||
|
||||
import org.ruoyi.common.core.utils.MapstructUtils;
|
||||
import org.ruoyi.common.core.utils.StringUtils;
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.ruoyi.domain.ChatGpts;
|
||||
import org.ruoyi.domain.bo.ChatGptsBo;
|
||||
import org.ruoyi.domain.vo.ChatGptsVo;
|
||||
import org.ruoyi.mapper.ChatGptsMapper;
|
||||
import org.ruoyi.service.IChatGptsService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 应用管理Service业务层处理
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class ChatGptsServiceImpl implements IChatGptsService {
|
||||
|
||||
private final ChatGptsMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询应用管理
|
||||
*/
|
||||
@Override
|
||||
public ChatGptsVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询应用管理列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<ChatGptsVo> queryPageList(ChatGptsBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<ChatGpts> lqw = buildQueryWrapper(bo);
|
||||
Page<ChatGptsVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询应用管理列表
|
||||
*/
|
||||
@Override
|
||||
public List<ChatGptsVo> queryList(ChatGptsBo bo) {
|
||||
LambdaQueryWrapper<ChatGpts> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<ChatGpts> buildQueryWrapper(ChatGptsBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<ChatGpts> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getGid()), ChatGpts::getGid, bo.getGid());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getName()), ChatGpts::getName, bo.getName());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getLogo()), ChatGpts::getLogo, bo.getLogo());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getInfo()), ChatGpts::getInfo, bo.getInfo());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getAuthorId()), ChatGpts::getAuthorId, bo.getAuthorId());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getAuthorName()), ChatGpts::getAuthorName, bo.getAuthorName());
|
||||
lqw.eq(bo.getUseCnt() != null, ChatGpts::getUseCnt, bo.getUseCnt());
|
||||
lqw.eq(bo.getBad() != null, ChatGpts::getBad, bo.getBad());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getType()), ChatGpts::getType, bo.getType());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getUpdateIp()), ChatGpts::getUpdateIp, bo.getUpdateIp());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增应用管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(ChatGptsBo bo) {
|
||||
ChatGpts add = MapstructUtils.convert(bo, ChatGpts.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改应用管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(ChatGptsBo bo) {
|
||||
ChatGpts update = MapstructUtils.convert(bo, ChatGpts.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(ChatGpts entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除应用管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,115 @@
|
||||
package org.ruoyi.service.impl;
|
||||
|
||||
import org.ruoyi.common.core.utils.MapstructUtils;
|
||||
import org.ruoyi.common.core.utils.StringUtils;
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.ruoyi.domain.ChatMessage;
|
||||
import org.ruoyi.domain.bo.ChatMessageBo;
|
||||
import org.ruoyi.domain.vo.ChatMessageVo;
|
||||
import org.ruoyi.mapper.ChatMessageMapper;
|
||||
import org.ruoyi.service.IChatMessageService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 聊天消息Service业务层处理
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class ChatMessageServiceImpl implements IChatMessageService {
|
||||
|
||||
private final ChatMessageMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询聊天消息
|
||||
*/
|
||||
@Override
|
||||
public ChatMessageVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询聊天消息列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<ChatMessageVo> queryPageList(ChatMessageBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<ChatMessage> lqw = buildQueryWrapper(bo);
|
||||
Page<ChatMessageVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询聊天消息列表
|
||||
*/
|
||||
@Override
|
||||
public List<ChatMessageVo> queryList(ChatMessageBo bo) {
|
||||
LambdaQueryWrapper<ChatMessage> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<ChatMessage> buildQueryWrapper(ChatMessageBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<ChatMessage> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(bo.getUserId() != null, ChatMessage::getUserId, bo.getUserId());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getContent()), ChatMessage::getContent, bo.getContent());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getRole()), ChatMessage::getRole, bo.getRole());
|
||||
lqw.eq(bo.getDeductCost() != null, ChatMessage::getDeductCost, bo.getDeductCost());
|
||||
lqw.eq(bo.getTotalTokens() != null, ChatMessage::getTotalTokens, bo.getTotalTokens());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getModelName()), ChatMessage::getModelName, bo.getModelName());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增聊天消息
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(ChatMessageBo bo) {
|
||||
ChatMessage add = MapstructUtils.convert(bo, ChatMessage.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改聊天消息
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(ChatMessageBo bo) {
|
||||
ChatMessage update = MapstructUtils.convert(bo, ChatMessage.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(ChatMessage entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除聊天消息
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,118 @@
|
||||
package org.ruoyi.service.impl;
|
||||
|
||||
import org.ruoyi.common.core.utils.MapstructUtils;
|
||||
import org.ruoyi.common.core.utils.StringUtils;
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.ruoyi.domain.ChatModel;
|
||||
import org.ruoyi.domain.bo.ChatModelBo;
|
||||
import org.ruoyi.domain.vo.ChatModelVo;
|
||||
import org.ruoyi.mapper.ChatModelMapper;
|
||||
import org.ruoyi.service.IChatModelService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 聊天模型Service业务层处理
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class ChatModelServiceImpl implements IChatModelService {
|
||||
|
||||
private final ChatModelMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询聊天模型
|
||||
*/
|
||||
@Override
|
||||
public ChatModelVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询聊天模型列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<ChatModelVo> queryPageList(ChatModelBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<ChatModel> lqw = buildQueryWrapper(bo);
|
||||
Page<ChatModelVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询聊天模型列表
|
||||
*/
|
||||
@Override
|
||||
public List<ChatModelVo> queryList(ChatModelBo bo) {
|
||||
LambdaQueryWrapper<ChatModel> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<ChatModel> buildQueryWrapper(ChatModelBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<ChatModel> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getCategory()), ChatModel::getCategory, bo.getCategory());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getModelName()), ChatModel::getModelName, bo.getModelName());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getModelDescribe()), ChatModel::getModelDescribe, bo.getModelDescribe());
|
||||
lqw.eq(bo.getModelPrice() != null, ChatModel::getModelPrice, bo.getModelPrice());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getModelType()), ChatModel::getModelType, bo.getModelType());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getModelShow()), ChatModel::getModelShow, bo.getModelShow());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getSystemPrompt()), ChatModel::getSystemPrompt, bo.getSystemPrompt());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getApiHost()), ChatModel::getApiHost, bo.getApiHost());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getApiKey()), ChatModel::getApiKey, bo.getApiKey());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增聊天模型
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(ChatModelBo bo) {
|
||||
ChatModel add = MapstructUtils.convert(bo, ChatModel.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改聊天模型
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(ChatModelBo bo) {
|
||||
ChatModel update = MapstructUtils.convert(bo, ChatModel.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(ChatModel entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除聊天模型
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,113 @@
|
||||
package org.ruoyi.service.impl;
|
||||
|
||||
import org.ruoyi.common.core.utils.MapstructUtils;
|
||||
import org.ruoyi.common.core.utils.StringUtils;
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.ruoyi.domain.ChatPackagePlan;
|
||||
import org.ruoyi.domain.bo.ChatPackagePlanBo;
|
||||
import org.ruoyi.domain.vo.ChatPackagePlanVo;
|
||||
import org.ruoyi.mapper.ChatPackagePlanMapper;
|
||||
import org.ruoyi.service.IChatPackagePlanService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 套餐管理Service业务层处理
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class ChatPackagePlanServiceImpl implements IChatPackagePlanService {
|
||||
|
||||
private final ChatPackagePlanMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询套餐管理
|
||||
*/
|
||||
@Override
|
||||
public ChatPackagePlanVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询套餐管理列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<ChatPackagePlanVo> queryPageList(ChatPackagePlanBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<ChatPackagePlan> lqw = buildQueryWrapper(bo);
|
||||
Page<ChatPackagePlanVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询套餐管理列表
|
||||
*/
|
||||
@Override
|
||||
public List<ChatPackagePlanVo> queryList(ChatPackagePlanBo bo) {
|
||||
LambdaQueryWrapper<ChatPackagePlan> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<ChatPackagePlan> buildQueryWrapper(ChatPackagePlanBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<ChatPackagePlan> lqw = Wrappers.lambdaQuery();
|
||||
lqw.like(StringUtils.isNotBlank(bo.getName()), ChatPackagePlan::getName, bo.getName());
|
||||
lqw.eq(bo.getPrice() != null, ChatPackagePlan::getPrice, bo.getPrice());
|
||||
lqw.eq(bo.getDuration() != null, ChatPackagePlan::getDuration, bo.getDuration());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getPlanDetail()), ChatPackagePlan::getPlanDetail, bo.getPlanDetail());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增套餐管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(ChatPackagePlanBo bo) {
|
||||
ChatPackagePlan add = MapstructUtils.convert(bo, ChatPackagePlan.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改套餐管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(ChatPackagePlanBo bo) {
|
||||
ChatPackagePlan update = MapstructUtils.convert(bo, ChatPackagePlan.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(ChatPackagePlan entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除套餐管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,115 @@
|
||||
package org.ruoyi.service.impl;
|
||||
|
||||
import org.ruoyi.common.core.utils.MapstructUtils;
|
||||
import org.ruoyi.common.core.utils.StringUtils;
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.ruoyi.domain.ChatPayOrder;
|
||||
import org.ruoyi.domain.bo.ChatPayOrderBo;
|
||||
import org.ruoyi.domain.vo.ChatPayOrderVo;
|
||||
import org.ruoyi.mapper.ChatPayOrderMapper;
|
||||
import org.ruoyi.service.IChatPayOrderService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 支付订单Service业务层处理
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class ChatPayOrderServiceImpl implements IChatPayOrderService {
|
||||
|
||||
private final ChatPayOrderMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询支付订单
|
||||
*/
|
||||
@Override
|
||||
public ChatPayOrderVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询支付订单列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<ChatPayOrderVo> queryPageList(ChatPayOrderBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<ChatPayOrder> lqw = buildQueryWrapper(bo);
|
||||
Page<ChatPayOrderVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询支付订单列表
|
||||
*/
|
||||
@Override
|
||||
public List<ChatPayOrderVo> queryList(ChatPayOrderBo bo) {
|
||||
LambdaQueryWrapper<ChatPayOrder> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<ChatPayOrder> buildQueryWrapper(ChatPayOrderBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<ChatPayOrder> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getOrderNo()), ChatPayOrder::getOrderNo, bo.getOrderNo());
|
||||
lqw.like(StringUtils.isNotBlank(bo.getOrderName()), ChatPayOrder::getOrderName, bo.getOrderName());
|
||||
lqw.eq(bo.getAmount() != null, ChatPayOrder::getAmount, bo.getAmount());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getPaymentStatus()), ChatPayOrder::getPaymentStatus, bo.getPaymentStatus());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getPaymentMethod()), ChatPayOrder::getPaymentMethod, bo.getPaymentMethod());
|
||||
lqw.eq(bo.getUserId() != null, ChatPayOrder::getUserId, bo.getUserId());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增支付订单
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(ChatPayOrderBo bo) {
|
||||
ChatPayOrder add = MapstructUtils.convert(bo, ChatPayOrder.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改支付订单
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(ChatPayOrderBo bo) {
|
||||
ChatPayOrder update = MapstructUtils.convert(bo, ChatPayOrder.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(ChatPayOrder entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除支付订单
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,110 @@
|
||||
package org.ruoyi.service.impl;
|
||||
|
||||
import org.ruoyi.common.core.utils.MapstructUtils;
|
||||
import org.ruoyi.common.core.utils.StringUtils;
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.ruoyi.domain.ChatPlugin;
|
||||
import org.ruoyi.domain.bo.ChatPluginBo;
|
||||
import org.ruoyi.domain.vo.ChatPluginVo;
|
||||
import org.ruoyi.mapper.ChatPluginMapper;
|
||||
import org.ruoyi.service.IChatPluginService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 插件管理Service业务层处理
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class ChatPluginServiceImpl implements IChatPluginService {
|
||||
|
||||
private final ChatPluginMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询插件管理
|
||||
*/
|
||||
@Override
|
||||
public ChatPluginVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询插件管理列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<ChatPluginVo> queryPageList(ChatPluginBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<ChatPlugin> lqw = buildQueryWrapper(bo);
|
||||
Page<ChatPluginVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询插件管理列表
|
||||
*/
|
||||
@Override
|
||||
public List<ChatPluginVo> queryList(ChatPluginBo bo) {
|
||||
LambdaQueryWrapper<ChatPlugin> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<ChatPlugin> buildQueryWrapper(ChatPluginBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<ChatPlugin> lqw = Wrappers.lambdaQuery();
|
||||
lqw.like(StringUtils.isNotBlank(bo.getName()), ChatPlugin::getName, bo.getName());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getCode()), ChatPlugin::getCode, bo.getCode());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增插件管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(ChatPluginBo bo) {
|
||||
ChatPlugin add = MapstructUtils.convert(bo, ChatPlugin.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改插件管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(ChatPluginBo bo) {
|
||||
ChatPlugin update = MapstructUtils.convert(bo, ChatPlugin.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(ChatPlugin entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除插件管理
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,114 @@
|
||||
package org.ruoyi.service.impl;
|
||||
|
||||
import org.ruoyi.common.core.utils.MapstructUtils;
|
||||
import org.ruoyi.common.core.utils.StringUtils;
|
||||
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
|
||||
import org.ruoyi.common.mybatis.core.page.PageQuery;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.ruoyi.domain.ChatVoucher;
|
||||
import org.ruoyi.domain.bo.ChatVoucherBo;
|
||||
import org.ruoyi.domain.vo.ChatVoucherVo;
|
||||
import org.ruoyi.mapper.ChatVoucherMapper;
|
||||
import org.ruoyi.service.IChatVoucherService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* 用户兑换记录Service业务层处理
|
||||
*
|
||||
* @author ageerle
|
||||
* @date 2025-04-08
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class ChatVoucherServiceImpl implements IChatVoucherService {
|
||||
|
||||
private final ChatVoucherMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 查询用户兑换记录
|
||||
*/
|
||||
@Override
|
||||
public ChatVoucherVo queryById(Long id){
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询用户兑换记录列表
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<ChatVoucherVo> queryPageList(ChatVoucherBo bo, PageQuery pageQuery) {
|
||||
LambdaQueryWrapper<ChatVoucher> lqw = buildQueryWrapper(bo);
|
||||
Page<ChatVoucherVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询用户兑换记录列表
|
||||
*/
|
||||
@Override
|
||||
public List<ChatVoucherVo> queryList(ChatVoucherBo bo) {
|
||||
LambdaQueryWrapper<ChatVoucher> lqw = buildQueryWrapper(bo);
|
||||
return baseMapper.selectVoList(lqw);
|
||||
}
|
||||
|
||||
private LambdaQueryWrapper<ChatVoucher> buildQueryWrapper(ChatVoucherBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<ChatVoucher> lqw = Wrappers.lambdaQuery();
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getCode()), ChatVoucher::getCode, bo.getCode());
|
||||
lqw.eq(bo.getAmount() != null, ChatVoucher::getAmount, bo.getAmount());
|
||||
lqw.eq(bo.getUserId() != null, ChatVoucher::getUserId, bo.getUserId());
|
||||
lqw.eq(StringUtils.isNotBlank(bo.getStatus()), ChatVoucher::getStatus, bo.getStatus());
|
||||
lqw.eq(bo.getBalanceBefore() != null, ChatVoucher::getBalanceBefore, bo.getBalanceBefore());
|
||||
lqw.eq(bo.getBalanceAfter() != null, ChatVoucher::getBalanceAfter, bo.getBalanceAfter());
|
||||
return lqw;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增用户兑换记录
|
||||
*/
|
||||
@Override
|
||||
public Boolean insertByBo(ChatVoucherBo bo) {
|
||||
ChatVoucher add = MapstructUtils.convert(bo, ChatVoucher.class);
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
bo.setId(add.getId());
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改用户兑换记录
|
||||
*/
|
||||
@Override
|
||||
public Boolean updateByBo(ChatVoucherBo bo) {
|
||||
ChatVoucher update = MapstructUtils.convert(bo, ChatVoucher.class);
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存前的数据校验
|
||||
*/
|
||||
private void validEntityBeforeSave(ChatVoucher entity){
|
||||
//TODO 做一些数据校验,如唯一约束
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除用户兑换记录
|
||||
*/
|
||||
@Override
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
}
|
||||
return baseMapper.deleteBatchIds(ids) > 0;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
<?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="org.ruoyi.mapper.ChatAgentManageMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,7 @@
|
||||
<?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="org.ruoyi.mapper.ChatAppStoreMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,7 @@
|
||||
<?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="org.ruoyi.mapper.ChatGptsMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,7 @@
|
||||
<?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="org.ruoyi.mapper.ChatMessageMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,7 @@
|
||||
<?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="org.ruoyi.mapper.ChatModelMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,7 @@
|
||||
<?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="org.ruoyi.mapper.ChatPackagePlanMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,7 @@
|
||||
<?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="org.ruoyi.mapper.ChatPayOrderMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,7 @@
|
||||
<?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="org.ruoyi.mapper.ChatPluginMapper">
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,7 @@
|
||||
<?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="org.ruoyi.mapper.ChatVoucherMapper">
|
||||
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user