Apps, web, i18n, UI, partners, payouts, backoffice, bariki, prod infra
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
45d7512d2b
commit
3489e0b816
319 files changed
+45483
-121
No files matched your search
@@ -0,0 +1,106 @@
|
||||
-- CreateEnum
|
||||
CREATE TYPE "ClientSegment" AS ENUM ('MOVING', 'LIVING');
|
||||
|
||||
-- CreateEnum
|
||||
CREATE TYPE "LeadStepStatus" AS ENUM ('TODO', 'IN_PROGRESS', 'DONE', 'SKIPPED');
|
||||
|
||||
-- CreateEnum
|
||||
CREATE TYPE "ClientRequestKind" AS ENUM ('SUBSCRIPTION', 'SERVICE');
|
||||
|
||||
-- CreateEnum
|
||||
CREATE TYPE "ClientRequestStatus" AS ENUM ('NEW', 'DONE', 'CANCELLED');
|
||||
|
||||
-- CreateEnum
|
||||
CREATE TYPE "ConciergeAuthor" AS ENUM ('CLIENT', 'OPERATOR');
|
||||
|
||||
-- AlterEnum
|
||||
ALTER TYPE "SubscriptionPlan" ADD VALUE 'ELITE';
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Category" ADD COLUMN "eliteDiscountPct" INTEGER NOT NULL DEFAULT 0;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Client" ADD COLUMN "segment" "ClientSegment";
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Lead" ADD COLUMN "checklist" TEXT[] DEFAULT ARRAY[]::TEXT[],
|
||||
ADD COLUMN "clientId" TEXT;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "LeadStep" (
|
||||
"id" TEXT NOT NULL,
|
||||
"leadId" TEXT NOT NULL,
|
||||
"code" TEXT NOT NULL,
|
||||
"sortOrder" INTEGER NOT NULL,
|
||||
"status" "LeadStepStatus" NOT NULL DEFAULT 'TODO',
|
||||
"note" TEXT,
|
||||
"updatedAt" TIMESTAMP(3) NOT NULL,
|
||||
|
||||
CONSTRAINT "LeadStep_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "ClientRequest" (
|
||||
"id" TEXT NOT NULL,
|
||||
"number" SERIAL NOT NULL,
|
||||
"clientId" TEXT NOT NULL,
|
||||
"kind" "ClientRequestKind" NOT NULL,
|
||||
"plan" "SubscriptionPlan",
|
||||
"serviceCode" TEXT,
|
||||
"comment" TEXT,
|
||||
"status" "ClientRequestStatus" NOT NULL DEFAULT 'NEW',
|
||||
"adminNote" TEXT,
|
||||
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"updatedAt" TIMESTAMP(3) NOT NULL,
|
||||
|
||||
CONSTRAINT "ClientRequest_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "ConciergeMessage" (
|
||||
"id" TEXT NOT NULL,
|
||||
"clientId" TEXT NOT NULL,
|
||||
"author" "ConciergeAuthor" NOT NULL,
|
||||
"adminUserId" TEXT,
|
||||
"text" TEXT NOT NULL,
|
||||
"readAt" TIMESTAMP(3),
|
||||
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
|
||||
CONSTRAINT "ConciergeMessage_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "LeadStep_leadId_code_key" ON "LeadStep"("leadId", "code");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "ClientRequest_number_key" ON "ClientRequest"("number");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "ClientRequest_status_createdAt_idx" ON "ClientRequest"("status", "createdAt");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "ClientRequest_clientId_idx" ON "ClientRequest"("clientId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "ConciergeMessage_clientId_createdAt_idx" ON "ConciergeMessage"("clientId", "createdAt");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "ConciergeMessage_author_readAt_idx" ON "ConciergeMessage"("author", "readAt");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "Lead_clientId_idx" ON "Lead"("clientId");
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Lead" ADD CONSTRAINT "Lead_clientId_fkey" FOREIGN KEY ("clientId") REFERENCES "Client"("id") ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "LeadStep" ADD CONSTRAINT "LeadStep_leadId_fkey" FOREIGN KEY ("leadId") REFERENCES "Lead"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "ClientRequest" ADD CONSTRAINT "ClientRequest_clientId_fkey" FOREIGN KEY ("clientId") REFERENCES "Client"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "ConciergeMessage" ADD CONSTRAINT "ConciergeMessage_clientId_fkey" FOREIGN KEY ("clientId") REFERENCES "Client"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
|
||||
|
||||
-- Elite: скидки по направлениям как на главной («до −35%»)
|
||||
UPDATE "Category" SET "eliteDiscountPct" = 35 WHERE "code" IN ('HOME', 'DOCS', 'LEARNING');
|
||||
Reference in new issue
Block a user