0.0.8.5
This commit is contained in:
@@ -0,0 +1,2 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "FamilyMember" ADD COLUMN "isFounder" BOOLEAN NOT NULL DEFAULT false;
|
||||
@@ -0,0 +1,26 @@
|
||||
-- CreateTable
|
||||
CREATE TABLE "MemberHistory" (
|
||||
"id" TEXT NOT NULL,
|
||||
"memberId" TEXT NOT NULL,
|
||||
"treeId" TEXT NOT NULL,
|
||||
"version" INTEGER NOT NULL,
|
||||
"snapshot" JSONB NOT NULL,
|
||||
"changedBy" TEXT NOT NULL,
|
||||
"changedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"changeType" "Action" NOT NULL,
|
||||
"changes" JSONB,
|
||||
|
||||
CONSTRAINT "MemberHistory_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "MemberHistory_memberId_idx" ON "MemberHistory"("memberId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "MemberHistory_treeId_idx" ON "MemberHistory"("treeId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "MemberHistory_changedAt_idx" ON "MemberHistory"("changedAt");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "MemberHistory_memberId_version_key" ON "MemberHistory"("memberId", "version");
|
||||
@@ -1,3 +1,3 @@
|
||||
# Please do not edit this file manually
|
||||
# It should be added in your version-control system (e.g., Git)
|
||||
provider = "postgresql"
|
||||
# It should be added in your version-control system (i.e. Git)
|
||||
provider = "postgresql"
|
||||
@@ -88,6 +88,7 @@ model FamilyMember {
|
||||
artName String?
|
||||
posthumousName String?
|
||||
rank Int?
|
||||
isFounder Boolean @default(false)
|
||||
|
||||
// 日期
|
||||
birthDate String?
|
||||
@@ -174,3 +175,25 @@ enum EntityType {
|
||||
STORY
|
||||
SETTINGS
|
||||
}
|
||||
|
||||
// 成员历史版本表
|
||||
model MemberHistory {
|
||||
id String @id @default(cuid())
|
||||
memberId String
|
||||
treeId String
|
||||
version Int // 版本号
|
||||
|
||||
// 保存成员的完整快照
|
||||
snapshot Json // 成员的所有字段
|
||||
|
||||
// 变更信息
|
||||
changedBy String // 修改者ID
|
||||
changedAt DateTime @default(now())
|
||||
changeType Action // CREATE, UPDATE, DELETE
|
||||
changes Json? // 具体变更的字段 { field: { old: ..., new: ... } }
|
||||
|
||||
@@index([memberId])
|
||||
@@index([treeId])
|
||||
@@index([changedAt])
|
||||
@@unique([memberId, version])
|
||||
}
|
||||
|
||||
+4
-2
@@ -59,12 +59,13 @@ async function main() {
|
||||
gender: 'MALE',
|
||||
generation: 1,
|
||||
generationName: '德',
|
||||
isFounder: true,
|
||||
birthDate: '1880-03-15',
|
||||
deathDate: '1955-08-20',
|
||||
ancestralHome: '山东省济南市',
|
||||
birthPlace: '山东省济南市历城区',
|
||||
bio: '王氏家族始祖,清末秀才,以教书为业。',
|
||||
tags: ['始祖', '教书先生'],
|
||||
tags: ['教书先生'],
|
||||
},
|
||||
})
|
||||
|
||||
@@ -739,12 +740,13 @@ async function main() {
|
||||
gender: 'MALE',
|
||||
generation: 1,
|
||||
generationName: '文',
|
||||
isFounder: true,
|
||||
birthDate: '1885-07-08',
|
||||
deathDate: '1960-11-15',
|
||||
ancestralHome: '浙江省杭州市',
|
||||
birthPlace: '浙江省杭州市西湖区',
|
||||
bio: '虞氏家族始祖,清末举人,民国时期从商。',
|
||||
tags: ['始祖', '商人'],
|
||||
tags: ['商人'],
|
||||
},
|
||||
})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user