api: create sleep records
Pedro Lucas Porcellis porcellis@eletrotupi.com · 5 months ago
b2e08e2a1d4ecc40e11fff8dc28b37418463836e Browse filesParents
6b750aeChanged files
2
Additions
+26
Deletions
0
/dev/null → api/prisma/migrations/20260504231243_create_sleep_records/migration.sql
1 +
-- CreateTable
2 +
CREATE TABLE "sleep_records" (
3 +
"id" SERIAL NOT NULL,
4 +
"average" DOUBLE PRECISION NOT NULL,
5 +
"date" DATE NOT NULL,
6 +
"annotations" TEXT,
7 +
"user_id" INTEGER NOT NULL,
8 +
9 +
CONSTRAINT "sleep_records_pkey" PRIMARY KEY ("id")
10 +
);
11 +
12 +
-- AddForeignKey
13 +
ALTER TABLE "sleep_records" ADD CONSTRAINT "sleep_records_user_id_fkey" FOREIGN KEY ("user_id") REFERENCES "users"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
api/prisma/schema.prisma
1 1
generator client {
2 2
provider = "prisma-client-js"
3 3
//output = "../src/generated/prisma"
4 4
}
5 5
20 20
21 21
moods Mood[]
22 22
interventions Intervention[]
23 23
triggers Trigger[]
24 24
reminders Reminder[]
25 +
sleepRecords SleepRecord[]
25 26
26 27
@@map("users")
27 28
}
28 29
29 30
model Mood {
86 87
87 88
userId Int @map("user_id")
88 89
user User @relation(fields: [userId], references: [id])
89 90
90 91
@@map("reminders")
92 +
}
93 +
94 +
model SleepRecord {
95 +
id Int @id @default(autoincrement())
96 +
average Float
97 +
date DateTime @db.Date
98 +
annotations String? @db.Text
99 +
100 +
userId Int @map("user_id")
101 +
user User @relation(fields: [userId], references: [id])
102 +
103 +
@@map("sleep_records")
91 104
}
92 105
93 106
enum IntensityLevel {
94 107
LIGHT
95 108
MODERATE
109 122
ENVIRONMENTAL
110 123
EMOTIONAL
111 124
PHYSICAL
112 125
OTHER
113 126
}