A2/A4/A6 实现员工头像后端、组织架构接口与合同模型

这个提交包含在:
2026-03-29 11:29:17 +08:00
父节点 92163e0af2
当前提交 6f9e1d30a2
共修改 8 个文件,包含 1120 行新增和 61 行删除
@@ -0,0 +1,35 @@
-- AlterTable
ALTER TABLE "employees" ADD COLUMN "avatar_path" TEXT;
-- CreateEnum
CREATE TYPE "EmployeeContractType" AS ENUM ('labor', 'nda', 'non_compete', 'internship');
-- CreateTable
CREATE TABLE "employee_contracts" (
"id" UUID NOT NULL,
"employee_id" UUID NOT NULL,
"contract_no" TEXT NOT NULL,
"contract_type" "EmployeeContractType" NOT NULL,
"start_date" DATE NOT NULL,
"end_date" DATE NOT NULL,
"terminated_date" DATE,
"attachment_path" TEXT,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"created_by" UUID,
"updated_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_by" UUID,
CONSTRAINT "employee_contracts_pkey" PRIMARY KEY ("id")
);
-- CreateIndex
CREATE UNIQUE INDEX "employee_contracts_employee_contract_no_ux" ON "employee_contracts"("employee_id", "contract_no");
-- CreateIndex
CREATE INDEX "idx_employee_contracts_employee_start" ON "employee_contracts"("employee_id", "start_date");
-- CreateIndex
CREATE INDEX "idx_employee_contracts_employee_end" ON "employee_contracts"("employee_id", "end_date");
-- AddForeignKey
ALTER TABLE "employee_contracts" ADD CONSTRAINT "employee_contracts_employee_id_fkey" FOREIGN KEY ("employee_id") REFERENCES "employees"("id") ON DELETE CASCADE ON UPDATE CASCADE;