|
|
@@ -1,4 +1,5 @@
|
|
|
import { z } from '@hono/zod-openapi';
|
|
|
+import { FileSchema } from '@/server/modules/files/file.schema';
|
|
|
|
|
|
// 基础消息Schema
|
|
|
export const ChatMessageSchema = z.object({
|
|
|
@@ -30,6 +31,13 @@ export const ChatMessageSchema = z.object({
|
|
|
example: 1704067200000,
|
|
|
description: '消息时间戳'
|
|
|
}),
|
|
|
+ fileId: z.number().int().positive().nullable().openapi({
|
|
|
+ example: 1,
|
|
|
+ description: '关联文件ID(用于图片消息)'
|
|
|
+ }),
|
|
|
+ file: FileSchema.nullable().optional().openapi({
|
|
|
+ description: '关联文件信息(用于图片消息)'
|
|
|
+ }),
|
|
|
createdBy: z.number().int().positive().nullable().openapi({
|
|
|
example: 1,
|
|
|
description: '创建用户ID'
|
|
|
@@ -73,6 +81,10 @@ export const CreateChatMessageDto = z.object({
|
|
|
timestamp: z.coerce.number().int().positive().openapi({
|
|
|
example: 1704067200000,
|
|
|
description: '消息时间戳(毫秒)'
|
|
|
+ }),
|
|
|
+ fileId: z.coerce.number().int().positive().nullable().optional().openapi({
|
|
|
+ example: 1,
|
|
|
+ description: '关联文件ID(用于图片消息)'
|
|
|
})
|
|
|
});
|
|
|
|
|
|
@@ -101,6 +113,10 @@ export const UpdateChatMessageDto = z.object({
|
|
|
timestamp: z.coerce.number().int().positive().optional().openapi({
|
|
|
example: 1704067200000,
|
|
|
description: '消息时间戳'
|
|
|
+ }),
|
|
|
+ fileId: z.coerce.number().int().positive().nullable().optional().openapi({
|
|
|
+ example: 1,
|
|
|
+ description: '关联文件ID(用于图片消息)'
|
|
|
})
|
|
|
});
|
|
|
|