新增小程序接口

This commit is contained in:
lindaxia
2025-07-06 07:51:38 +08:00
parent df3b687be4
commit 3786644a25
2 changed files with 148 additions and 1 deletions

View File

@@ -0,0 +1,116 @@
package org.ruoyi.domain.bo;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
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.core.domain.BaseEntity;
import java.io.Serializable;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* 聊天消息业务对象(uniapp) chat_message
*
* @author ageerle
* @date 2025-04-08
*/
@Data
public class ChatMessageForUniappBo implements Serializable {
/**
* 主键
*/
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
private Long id;
/**
* 用户id
*/
@NotNull(message = "用户id不能为空", groups = { AddGroup.class, EditGroup.class })
private Long userId;
/**
* 消息内容
*/
@NotBlank(message = "消息内容不能为空", groups = { AddGroup.class, EditGroup.class })
private String content;
/**
* 会话id
*/
private Long sessionId;
/**
* 对话角色
*/
private String role;
/**
* 扣除金额
*/
private Double deductCost;
/**
* 累计 Tokens
*/
private Integer totalTokens;
/**
* 模型名称
*/
private String modelName ;
/**
* 备注
*/
private String remark;
/**
* 搜索值
*/
private String searchValue;
/**
* 创建部门
*/
private Long createDept;
/**
* 创建者
*/
private Long createBy;
/**
* 创建时间
*/
private Date createTime;
/**
* 更新者
*/
private Long updateBy;
/**
* 更新时间
*/
private Date updateTime;
/**
* 请求参数
*/
private Map<String, Object> params = new HashMap<>();
}

View File

@@ -1,6 +1,5 @@
package org.ruoyi.chat.controller.chat;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
@@ -16,6 +15,7 @@ import org.ruoyi.common.web.core.BaseController;
import org.ruoyi.core.page.PageQuery;
import org.ruoyi.core.page.TableDataInfo;
import org.ruoyi.domain.bo.ChatMessageBo;
import org.ruoyi.domain.bo.ChatMessageForUniappBo;
import org.ruoyi.domain.vo.ChatMessageVo;
import org.ruoyi.service.IChatMessageService;
import org.springframework.validation.annotation.Validated;
@@ -66,6 +66,37 @@ public class ChatMessageController extends BaseController {
return R.ok(chatMessageService.queryById(id));
}
/**
* 查询聊天消息列表 uniapp
*/
@GetMapping("/listForUniapp")
public TableDataInfo<ChatMessageVo> list(ChatMessageForUniappBo uniappBo, PageQuery pageQuery) {
ChatMessageBo bo = new ChatMessageBo();
bo.setUserId(uniappBo.getUserId());
bo.setSessionId(Long.parseLong(uniappBo.getUserId().toString() + "2024"));
return chatMessageService.queryPageList(bo, pageQuery);
}
/**
* 新增聊天消息 uniapp
*/
@Log(title = "聊天消息", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping("/addForUniapp")
public R<Long> addForUniapp(@Validated(AddGroup.class) @RequestBody ChatMessageForUniappBo uniappBo) {
ChatMessageBo bo = new ChatMessageBo();
bo.setUserId(uniappBo.getUserId());
bo.setRole(uniappBo.getRole());
bo.setContent(uniappBo.getContent());
bo.setSessionId(Long.parseLong(uniappBo.getUserId().toString() + "2024"));
chatMessageService.insertByBo(bo);
return R.ok(uniappBo.getId());
}
/**
* 新增聊天消息
*/