CASHV 增加付款批次银行回单附件

这个提交包含在:
2026-05-17 09:35:37 +08:00
父节点 94d2cc8bf9
当前提交 ab80d481cb
共修改 11 个文件,包含 891 行新增和 16 行删除
@@ -0,0 +1,33 @@
-- CASHV: 付款批次银行回单附件。用于记录网银/银行侧付款完成后的回单证据,不接真实支付接口。
CREATE TABLE "payment_batch_receipt_attachments" (
"id" UUID NOT NULL,
"payment_batch_id" UUID NOT NULL,
"storage_path" TEXT NOT NULL,
"original_name" TEXT NOT NULL,
"mime_type" TEXT NOT NULL,
"file_size" INTEGER NOT NULL,
"file_sha256" TEXT NOT NULL,
"uploaded_by" UUID NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT "payment_batch_receipt_attachments_pkey" PRIMARY KEY ("id")
);
CREATE INDEX "idx_payment_batch_receipts_batch_created"
ON "payment_batch_receipt_attachments"("payment_batch_id", "created_at");
CREATE INDEX "idx_payment_batch_receipts_uploader"
ON "payment_batch_receipt_attachments"("uploaded_by");
CREATE INDEX "idx_payment_batch_receipts_file_sha256"
ON "payment_batch_receipt_attachments"("file_sha256");
ALTER TABLE "payment_batch_receipt_attachments"
ADD CONSTRAINT "payment_batch_receipt_attachments_payment_batch_id_fkey"
FOREIGN KEY ("payment_batch_id") REFERENCES "payment_batches"("id")
ON DELETE CASCADE ON UPDATE CASCADE;
ALTER TABLE "payment_batch_receipt_attachments"
ADD CONSTRAINT "payment_batch_receipt_attachments_uploaded_by_fkey"
FOREIGN KEY ("uploaded_by") REFERENCES "employees"("id")
ON DELETE RESTRICT ON UPDATE CASCADE;
+22
查看文件
@@ -601,6 +601,7 @@ model Employee {
owned_reimbursements ReimbursementForm[] @relation("ReimbursementOwner")
paid_reimbursements ReimbursementForm[] @relation("ReimbursementPaidBy")
reimbursement_attachments_uploaded ReimbursementAttachment[] @relation("ReimbursementAttachmentUploader")
payment_batch_receipts_uploaded PaymentBatchReceiptAttachment[] @relation("PaymentBatchReceiptAttachmentUploader")
leave_requests LeaveRequest[]
leave_ledgers LeaveLedger[]
owned_cost_centers CostCenter[] @relation("CostCenterOwner")
@@ -1741,6 +1742,7 @@ model PaymentBatch {
updated_by String? @db.Uuid
items PaymentBatchItem[]
receipt_attachments PaymentBatchReceiptAttachment[]
@@index([entity_type, status, created_at], map: "idx_payment_batches_entity_status_created")
@@map("payment_batches")
@@ -1770,6 +1772,26 @@ model PaymentBatchItem {
@@map("payment_batch_items")
}
model PaymentBatchReceiptAttachment {
id String @id @default(uuid()) @db.Uuid
payment_batch_id String @db.Uuid
storage_path String
original_name String
mime_type String
file_size Int
file_sha256 String
uploaded_by String @db.Uuid
created_at DateTime @default(now())
payment_batch PaymentBatch @relation(fields: [payment_batch_id], references: [id], onDelete: Cascade)
uploader Employee @relation("PaymentBatchReceiptAttachmentUploader", fields: [uploaded_by], references: [id], onDelete: Restrict)
@@index([payment_batch_id, created_at], map: "idx_payment_batch_receipts_batch_created")
@@index([uploaded_by], map: "idx_payment_batch_receipts_uploader")
@@index([file_sha256], map: "idx_payment_batch_receipts_file_sha256")
@@map("payment_batch_receipt_attachments")
}
model PortalAnnouncement {
id String @id @default(uuid()) @db.Uuid
title String