37 lines
1.4 KiB
PL/PgSQL
37 lines
1.4 KiB
PL/PgSQL
/*
|
|
Warnings:
|
|
|
|
- The values [PaymentWait] on the enum `QuotationStatus` will be removed. If these variants are still used in the database, this will fail.
|
|
|
|
*/
|
|
-- CreateEnum
|
|
CREATE TYPE "PaymentStatus" AS ENUM ('PaymentWait', 'PaymentSuccess');
|
|
|
|
-- AlterEnum
|
|
BEGIN;
|
|
CREATE TYPE "QuotationStatus_new" AS ENUM ('PaymentPending', 'PaymentInProcess', 'PaymentSuccess', 'ProcessComplete', 'Canceled');
|
|
ALTER TABLE "Quotation" ALTER COLUMN "quotationStatus" DROP DEFAULT;
|
|
ALTER TABLE "Quotation" ALTER COLUMN "quotationStatus" TYPE "QuotationStatus_new" USING ("quotationStatus"::text::"QuotationStatus_new");
|
|
ALTER TYPE "QuotationStatus" RENAME TO "QuotationStatus_old";
|
|
ALTER TYPE "QuotationStatus_new" RENAME TO "QuotationStatus";
|
|
DROP TYPE "QuotationStatus_old";
|
|
ALTER TABLE "Quotation" ALTER COLUMN "quotationStatus" SET DEFAULT 'PaymentPending';
|
|
COMMIT;
|
|
|
|
-- AlterTable
|
|
ALTER TABLE "Quotation" ALTER COLUMN "quotationStatus" SET DEFAULT 'PaymentPending';
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "QuotationPayment" (
|
|
"id" TEXT NOT NULL,
|
|
"paymentStatus" "PaymentStatus" NOT NULL,
|
|
"date" TIMESTAMP(3) NOT NULL,
|
|
"amount" DOUBLE PRECISION NOT NULL,
|
|
"remark" TEXT,
|
|
"quotationId" TEXT NOT NULL,
|
|
|
|
CONSTRAINT "QuotationPayment_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "QuotationPayment" ADD CONSTRAINT "QuotationPayment_quotationId_fkey" FOREIGN KEY ("quotationId") REFERENCES "Quotation"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
|