fonchain-approval-fork/pkg/model/migration.go
2023-03-01 18:53:47 +08:00

52 lines
986 B
Go

package model
import (
"fmt"
)
//类型迁移
func migration() {
//自动迁移模式
addTable(&ApprovalTypeGroup{})
addTable(&BundlePayPrice{})
//增加字段
addColumn(&ApprovalType{}, "is_normal")
addColumn(&ApprovalType{}, "key_json")
addColumn(&ApprovalType{}, "group_id")
addColumn(&Exhibition{}, "apply_id")
addColumn(&ApprovalExhibition{}, "package_id")
addColumn(&ApprovalExhibition{}, "show_date")
addColumn(&ApprovalWork{}, "artist_uid")
addColumn(&ApprovalWork{}, "show_seq")
addColumn(&Work{}, "artist_uid")
addColumn(&Approval{}, "value_json")
addColumn(&BundlePayPrice{}, "status")
}
//数据迁移
func addColumn(dst interface{}, column string) {
exist := DB.Migrator().HasColumn(dst, column)
if !exist {
err := DB.Migrator().AddColumn(dst, column)
if err != nil {
fmt.Println(err.Error())
}
}
return
}
func addTable(dst interface{}) {
if DB.Migrator().HasTable(dst) == false {
_ = DB.Migrator().CreateTable(dst)
}
return
}