Added SSE function and add readAt for notification

This commit is contained in:
2026-02-21 22:34:29 +07:00
parent fa689ea4aa
commit ab745e6a2f
17 changed files with 349 additions and 43 deletions

View File

@@ -15,3 +15,14 @@ export const settingsData = [
description: 'The keywords of the site',
},
];
export const userData = [
{
name: 'Raysam',
email: 'raysam024@gmail.com',
},
{
name: 'Raysam',
email: 'juines.liu@gmail.com',
},
];

View File

@@ -48,7 +48,10 @@ CREATE TABLE "notification" (
);
-- CreateIndex
CREATE INDEX "notification_userId_idx" ON "notification"("userId");
CREATE INDEX "notification_userId_readAt_idx" ON "notification"("userId", "readAt");
-- CreateIndex
CREATE INDEX "notification_readAt_idx" ON "notification"("readAt");
-- AddForeignKey
ALTER TABLE "notification" ADD CONSTRAINT "notification_userId_fkey" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE CASCADE;

View File

@@ -176,6 +176,7 @@ model Notification {
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
@@index([userId])
@@index([userId, readAt])
@@index([readAt])
@@map("notification")
}

View File

@@ -1,7 +1,7 @@
import { auth } from '@lib/auth';
import { PrismaPg } from '@prisma/adapter-pg';
import { PrismaClient } from '../src/generated/prisma/client.js';
import { settingsData } from './data.js';
import { settingsData, userData } from './data.js';
const adapter = new PrismaPg({
connectionString: process.env.DATABASE_URL!,
@@ -32,6 +32,19 @@ async function main() {
}
console.log('---------------Created admin user-----------------');
userData.map(async (user) => {
await auth.api.createUser({
body: {
email: user.email,
password: 'Th@m!S@m!040390',
name: user.name,
role: 'user',
},
});
});
console.log('---------------Created member user-----------------');
await prisma.setting.deleteMany();
const listSettings = [