Files
alibb-server/backend/prisma/migrations/20260713103324_init/migration.sql
T
2026-08-27 16:11:49 +08:00

84 lines
3.3 KiB
SQL

-- CreateTable
CREATE TABLE `customers` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`customer_id` VARCHAR(64) NOT NULL,
`name` VARCHAR(128) NULL,
`country` VARCHAR(64) NULL,
`email` VARCHAR(128) NULL,
`company` VARCHAR(255) NULL,
`register_time` DATETIME(3) NULL,
`avatar_url` VARCHAR(512) NULL,
`buyer_tags` VARCHAR(255) NULL,
`buyer_features` VARCHAR(255) NULL,
`behavior_product_views` INTEGER NULL,
`behavior_valid_inquiries` INTEGER NULL,
`behavior_valid_rfq` INTEGER NULL,
`behavior_login_days` INTEGER NULL,
`behavior_spam_inquiries` INTEGER NULL,
`behavior_top_industry` VARCHAR(255) NULL,
`created_at` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updated_at` DATETIME(3) NOT NULL,
UNIQUE INDEX `customers_customer_id_key`(`customer_id`),
INDEX `customers_country_idx`(`country`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- CreateTable
CREATE TABLE `inquiries` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`inquiry_id` VARCHAR(32) NOT NULL,
`customer_id` VARCHAR(64) NULL,
`manager` VARCHAR(128) NULL,
`create_time` DATETIME(3) NOT NULL,
`update_time` DATETIME(3) NOT NULL,
`status` VARCHAR(64) NULL,
`msg_preview` VARCHAR(512) NULL,
`is_flagged` BOOLEAN NOT NULL DEFAULT false,
`messages_count` INTEGER NOT NULL DEFAULT 0,
`last_send_time` DATETIME(3) NULL,
`has_failed_batches` BOOLEAN NOT NULL DEFAULT false,
`created_at` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
`updated_at` DATETIME(3) NOT NULL,
UNIQUE INDEX `inquiries_inquiry_id_key`(`inquiry_id`),
INDEX `inquiries_customer_id_idx`(`customer_id`),
INDEX `inquiries_manager_idx`(`manager`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- CreateTable
CREATE TABLE `chat_messages` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`message_id` VARCHAR(64) NOT NULL,
`inquiry_id` VARCHAR(32) NOT NULL,
`sender` VARCHAR(128) NULL,
`direction` ENUM('incoming', 'outgoing', 'system') NOT NULL,
`send_time` DATETIME(3) NOT NULL,
`content` MEDIUMTEXT NOT NULL,
`translation` TEXT NULL,
`created_at` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
UNIQUE INDEX `chat_messages_message_id_key`(`message_id`),
INDEX `chat_messages_inquiry_id_send_time_message_id_idx`(`inquiry_id`, `send_time`, `message_id`),
INDEX `chat_messages_inquiry_id_idx`(`inquiry_id`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- CreateTable
CREATE TABLE `users` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`username` VARCHAR(191) NOT NULL,
`password_hash` VARCHAR(191) NOT NULL,
`created_at` DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
UNIQUE INDEX `users_username_key`(`username`),
PRIMARY KEY (`id`)
) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- AddForeignKey
ALTER TABLE `inquiries` ADD CONSTRAINT `inquiries_customer_id_fkey` FOREIGN KEY (`customer_id`) REFERENCES `customers`(`customer_id`) ON DELETE SET NULL ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE `chat_messages` ADD CONSTRAINT `chat_messages_inquiry_id_fkey` FOREIGN KEY (`inquiry_id`) REFERENCES `inquiries`(`inquiry_id`) ON DELETE RESTRICT ON UPDATE CASCADE;