78 lines
2.8 KiB
Plaintext
78 lines
2.8 KiB
Plaintext
|
||
/// 申请单(“易耗品临时申请”)
|
||
model v2_ConsumableTempRequest {
|
||
id String @id @default(cuid())
|
||
applicantName String? // 申请人姓名(可选)
|
||
applicantPhone String // 申请人手机号
|
||
department String? // 部门(可选)
|
||
reason String? // 申请事由(可选)
|
||
neededAt DateTime? // 期望领用时间(可选)
|
||
|
||
status v2_ConsumableTempRequestStatus @default(PENDING)
|
||
approverId String? // 审批人(可选:员工ID/账号)
|
||
approvedAt DateTime? // 审批时间(可选)
|
||
remark String? // 备注(可选)
|
||
|
||
// 一对多:申请单包含多条物料明细
|
||
items v2_ConsumableTempRequestItem[]
|
||
|
||
createdAt DateTime @default(now())
|
||
updatedAt DateTime @updatedAt
|
||
|
||
@@index([applicantPhone, createdAt])
|
||
@@index([status, createdAt])
|
||
|
||
// 如需将表名映射为中文(或你既有库的真实表名),取消下一行注释:
|
||
@@map("易耗品临时申请")
|
||
}
|
||
|
||
/// 申请明细(易耗品条目)
|
||
model v2_ConsumableTempRequestItem {
|
||
id String @id @default(cuid())
|
||
|
||
requestId String
|
||
request v2_ConsumableTempRequest @relation(fields: [requestId], references: [id], onDelete: Cascade)
|
||
|
||
name String // 物料名称(如“打印纸”)
|
||
spec String? // 规格/型号(如“A4 70g”)
|
||
quantity Int // 数量
|
||
unit String? // 单位(如“包/箱/个”)
|
||
estimatedUnitCost Decimal? // 预估单价(可选)
|
||
remark String? // 明细备注(可选)
|
||
|
||
// 如果你有物料目录表,可在此做可选关联(下面给了 Catalog 模型)
|
||
catalogId String?
|
||
catalog v2_ConsumableTempCatalog? @relation(fields: [catalogId], references: [id])
|
||
|
||
createdAt DateTime @default(now())
|
||
updatedAt DateTime @updatedAt
|
||
|
||
@@index([requestId])
|
||
@@index([name])
|
||
// 如需把表名映射为既有库命名,取消注释并替换:
|
||
// @@map("易耗品临时申请_明细")
|
||
}
|
||
|
||
/// 可选:物料目录(如你已有标准物料清单,便于下拉选择)
|
||
model v2_ConsumableTempCatalog {
|
||
id String @id @default(cuid())
|
||
name String
|
||
spec String?
|
||
unit String?
|
||
isActive Boolean @default(true)
|
||
|
||
// 反向关系:哪些申请明细引用了该条目录
|
||
requestItems v2_ConsumableTempRequestItem[]
|
||
|
||
@@unique([name, spec, unit])
|
||
@@index([isActive])
|
||
// @@map("易耗品目录")
|
||
}
|
||
|
||
enum v2_ConsumableTempRequestStatus {
|
||
PENDING // 待审批
|
||
APPROVED // 通过
|
||
REJECTED // 驳回
|
||
CANCELLED // 取消
|
||
COMPLETED // 已完成(已领用)
|
||
} |