package migration

import (
	"gorm.io/gorm"

	"github.com/tidbcloud/tidb-management-service/dedicated-global-service/infra/repoimpl/schema"
)

var _ = AddDBMigrateRecord(
	"20240801911010",
	func(db *gorm.DB) error {
		err := db.AutoMigrate(&schema.Region{})
		if err != nil {
			return err
		}

		// set logic name for regions
		var regions []*schema.Region
		err = db.Unscoped().Model(&schema.Region{}).Find(&regions).Error
		if err != nil {
			return err
		}

		for _, r := range regions {
			if err := db.Unscoped().Model(&schema.Region{}).Where("id = ?", r.ID).Update("region_name", r.Name).Error; err != nil {
				return err
			}
		}

		return nil
	},
)
