Merge branch 'dev-0.2.1' into dev-0.2
# Conflicts: # generated/prisma/internal/class.ts # generated/prisma/internal/prismaNamespace.ts # generated/prisma/internal/prismaNamespaceBrowser.ts # generated/prisma/models/BoardColumn.ts # generated/prisma/models/Project.ts # generated/prisma/models/ProjectMember.ts # generated/prisma/models/Task.ts # generated/prisma/models/TaskMember.ts # generated/prisma/models/TaskTag.ts # generated/prisma/models/User.ts # server/routes/projects.js # server/routes/tasks.js # src/api/task.js
This commit is contained in:
+23
-6
@@ -9,7 +9,7 @@ generator client {
|
||||
}
|
||||
|
||||
datasource db {
|
||||
provider = "mysql"
|
||||
provider = "postgresql"
|
||||
}
|
||||
|
||||
model User {
|
||||
@@ -388,6 +388,8 @@ model CheckListTemplate {
|
||||
|
||||
model Project {
|
||||
id Int @id @default(autoincrement())
|
||||
uuid String @unique @db.VarChar(36) // 同步标识: 客户端生成 (0.2.1 离线编辑, 见 docs/V0.2/离线编辑模块)
|
||||
code String @unique @db.VarChar(8) // 项目短编号: 用户自拟 2~8 位前缀, 全局唯一, 服务端分配
|
||||
name String @db.VarChar(50)
|
||||
ownerId Int
|
||||
owner User @relation("ProjectOwner", fields: [ownerId], references: [id], onDelete: Cascade)
|
||||
@@ -409,8 +411,10 @@ model Project {
|
||||
}
|
||||
|
||||
model ProjectMember {
|
||||
id Int @id @default(autoincrement())
|
||||
projectId Int
|
||||
id Int @id @default(autoincrement())
|
||||
uuid String @unique @db.VarChar(36) // 同步标识: 客户端生成 (0.2.1 离线编辑)
|
||||
projectUuid String? @db.VarChar(36) // 外键 uuid 镜像 (触发器维护, 库级 NOT NULL)
|
||||
projectId Int
|
||||
project Project @relation(fields: [projectId], references: [id], onDelete: Cascade)
|
||||
userId Int
|
||||
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
||||
@@ -423,6 +427,8 @@ model ProjectMember {
|
||||
|
||||
model BoardColumn {
|
||||
id Int @id @default(autoincrement())
|
||||
uuid String @unique @db.VarChar(36) // 同步标识: 客户端生成 (0.2.1 离线编辑)
|
||||
projectUuid String? @db.VarChar(36) // projectId 的 uuid 镜像 (触发器维护, 库级 NOT NULL; Prisma 侧可空以便触发器填充)
|
||||
projectId Int
|
||||
project Project @relation(fields: [projectId], references: [id], onDelete: Cascade)
|
||||
name String @db.VarChar(20)
|
||||
@@ -440,6 +446,10 @@ model BoardColumn {
|
||||
|
||||
model Task {
|
||||
id Int @id @default(autoincrement())
|
||||
uuid String @unique @db.VarChar(36) // 同步标识: 客户端生成 (0.2.1 离线编辑)
|
||||
projectUuid String? @db.VarChar(36) // 外键 uuid 镜像 (触发器维护, 库级 NOT NULL)
|
||||
columnUuid String? @db.VarChar(36)
|
||||
parentUuid String? @db.VarChar(36)
|
||||
projectId Int
|
||||
project Project @relation(fields: [projectId], references: [id], onDelete: Cascade)
|
||||
columnId Int
|
||||
@@ -471,6 +481,9 @@ model Task {
|
||||
members TaskMember[]
|
||||
tags TaskTag[]
|
||||
|
||||
number Int? // 项目内自增编号 (服务端分配, 展示为 `code-number`); 本地未定号的离线新建任务为空
|
||||
|
||||
@@unique([projectId, number])
|
||||
@@index([projectId, columnId])
|
||||
@@index([projectId, status])
|
||||
@@index([parentId])
|
||||
@@ -480,7 +493,9 @@ model Task {
|
||||
}
|
||||
|
||||
model TaskMember {
|
||||
id Int @id @default(autoincrement())
|
||||
id Int @id @default(autoincrement())
|
||||
uuid String @unique @db.VarChar(36) // 同步标识: 客户端生成 (0.2.1 离线编辑)
|
||||
taskUuid String? @db.VarChar(36) // 外键 uuid 镜像 (触发器维护, 库级 NOT NULL)
|
||||
taskId Int
|
||||
task Task @relation(fields: [taskId], references: [id], onDelete: Cascade)
|
||||
userId Int
|
||||
@@ -490,8 +505,10 @@ model TaskMember {
|
||||
}
|
||||
|
||||
model TaskTag {
|
||||
id Int @id @default(autoincrement())
|
||||
taskId Int
|
||||
id Int @id @default(autoincrement())
|
||||
uuid String @unique @db.VarChar(36) // 同步标识: 客户端生成 (0.2.1 离线编辑)
|
||||
taskUuid String? @db.VarChar(36) // 外键 uuid 镜像 (触发器维护, 库级 NOT NULL)
|
||||
taskId Int
|
||||
task Task @relation(fields: [taskId], references: [id], onDelete: Cascade)
|
||||
name String @db.VarChar(20)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user