package migrate

import (
	"github.com/pingcap/log"
	"go.uber.org/zap"
	"gorm.io/gorm"
)

var _ = AddDBMigrateRecord(
	"202403081506",
	func(db *gorm.DB) error {
		ddl := "CREATE TABLE `uploads` (" +
			"`id` varchar(191) NOT NULL," +
			"`created_at` timestamp NOT NULL," +
			"`updated_at` timestamp NULL DEFAULT NULL," +
			"`status` ENUM('created', 'canceled', 'completed') NOT NULL," +
			"`multipart` boolean NOT NULL," +
			"`aws_upload_id` varchar(255)," +
			"`file_name` varchar(255) NOT NULL," +
			"`bucket_key` varchar(255) NOT NULL," +
			"`tenant_id` bigint unsigned NOT NULL," +
			"`cluster_id` bigint unsigned NOT NULL," +
			"`region_name` varchar(255) NOT NULL," +
			"PRIMARY KEY (`id`))"
		err := db.Exec(ddl).Error
		if err != nil {
			log.Error("create table uploads failed", zap.Error(err))
		}
		return nil
	},
)
