mirror of
https://github.com/sqlchat/sqlchat.git
synced 2025-09-25 17:15:19 +08:00
chore: update create usage data
This commit is contained in:
@ -1,5 +1,5 @@
|
|||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import { head, last } from "lodash-es";
|
import { first, head, last } from "lodash-es";
|
||||||
import { useEffect, useRef, useState } from "react";
|
import { useEffect, useRef, useState } from "react";
|
||||||
import { toast } from "react-hot-toast";
|
import { toast } from "react-hot-toast";
|
||||||
import {
|
import {
|
||||||
@ -162,7 +162,7 @@ const ConversationView = () => {
|
|||||||
}
|
}
|
||||||
usageMessageList.unshift({
|
usageMessageList.unshift({
|
||||||
id: generateUUID(),
|
id: generateUUID(),
|
||||||
createdAt: Date.now(),
|
createdAt: first(usageMessageList)?.createdAt || Date.now(),
|
||||||
creatorRole: CreatorRole.System,
|
creatorRole: CreatorRole.System,
|
||||||
content: prompt,
|
content: prompt,
|
||||||
} as Message);
|
} as Message);
|
||||||
|
@ -12,23 +12,40 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse)
|
|||||||
const conversation = req.body.conversation as Conversation;
|
const conversation = req.body.conversation as Conversation;
|
||||||
const messages = req.body.messages as Message[];
|
const messages = req.body.messages as Message[];
|
||||||
try {
|
try {
|
||||||
await prisma.chat.create({
|
const chat = await prisma.chat.findUnique({
|
||||||
data: {
|
where: {
|
||||||
id: conversation.id,
|
id: conversation.id,
|
||||||
createdAt: new Date(conversation.createdAt),
|
|
||||||
ctx: {},
|
|
||||||
messages: {
|
|
||||||
create: messages.map((message) => ({
|
|
||||||
id: message.id,
|
|
||||||
createdAt: new Date(message.createdAt),
|
|
||||||
role: message.creatorRole,
|
|
||||||
content: message.content,
|
|
||||||
upvote: true,
|
|
||||||
downvote: false,
|
|
||||||
})),
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
if (chat) {
|
||||||
|
await prisma.message.createMany({
|
||||||
|
data: messages.map((message) => ({
|
||||||
|
chatId: chat.id,
|
||||||
|
createdAt: new Date(message.createdAt),
|
||||||
|
role: message.creatorRole,
|
||||||
|
content: message.content,
|
||||||
|
upvote: true,
|
||||||
|
downvote: false,
|
||||||
|
})),
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
await prisma.chat.create({
|
||||||
|
data: {
|
||||||
|
id: conversation.id,
|
||||||
|
createdAt: new Date(conversation.createdAt),
|
||||||
|
ctx: {},
|
||||||
|
messages: {
|
||||||
|
create: messages.map((message) => ({
|
||||||
|
createdAt: new Date(message.createdAt),
|
||||||
|
role: message.creatorRole,
|
||||||
|
content: message.content,
|
||||||
|
upvote: true,
|
||||||
|
downvote: false,
|
||||||
|
})),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.error(err);
|
console.error(err);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user