72 lines
2.2 KiB
Go
72 lines
2.2 KiB
Go
package types
|
||
|
||
import (
|
||
"time"
|
||
|
||
"gorm.io/gorm"
|
||
)
|
||
|
||
type (
|
||
|
||
// sql options
|
||
SqlOptions struct {
|
||
MaxIdleConns int
|
||
MaxOpenConns int
|
||
ConnMaxLifetime time.Duration
|
||
|
||
LogStdout bool
|
||
Debug bool
|
||
}
|
||
|
||
// standard ID,Identity definition.
|
||
Std_IDIdentity struct {
|
||
ID uint `gorm:"primarykey;" json:"id"`
|
||
Identity string `gorm:"column:identity;type:varchar(36);uniqueIndex;" json:"identity"` // 唯一标识,24位NanoID,36位为ULID
|
||
}
|
||
|
||
// standard ID,Created,Updated,Deleted definition.
|
||
Std_IICUDS struct {
|
||
ID uint `gorm:"primarykey;" json:"id"`
|
||
Identity string `gorm:"column:identity;type:varchar(36);uniqueIndex;" json:"identity"` // 唯一标识,24位NanoID,36位为ULID
|
||
CreatedAt time.Time `json:"created_at"`
|
||
UpdatedAt time.Time `json:"updated_at"`
|
||
DeletedAt gorm.DeletedAt `gorm:"index;" json:"deleted_at"`
|
||
Status int8 `gorm:"default:0;index;" json:"status"` // 状态:默认为0,-1禁止,1为正常
|
||
}
|
||
|
||
// standard ID,Identity,Created,Updated,Deleted,Status definition.
|
||
Std_ICUD struct {
|
||
ID uint `gorm:"primarykey;" json:"id"`
|
||
CreatedAt time.Time `json:"created_at"`
|
||
UpdatedAt time.Time `json:"updated_at"`
|
||
DeletedAt gorm.DeletedAt `gorm:"index;" json:"deleted_at"`
|
||
}
|
||
|
||
// standard ID,Created definition.
|
||
Std_IdCreated struct {
|
||
ID uint `gorm:"primarykey;" json:"id"`
|
||
CreatedAt time.Time `json:"created_at"`
|
||
}
|
||
|
||
// standard PassportID,PassportIdentity definition.
|
||
Std_Passport struct {
|
||
PassportID uint `gorm:"column:passport_id;Index;" json:"passport_id"`
|
||
PassportIdentity string `gorm:"column:passport_identity;type:varchar(36);Index;" json:"passport_identity"` // 用户唯一标识,24位NanoID,36位为ULID
|
||
}
|
||
|
||
// standard ID definition.
|
||
Std_ID struct {
|
||
ID uint `gorm:"primarykey;" json:"id"`
|
||
}
|
||
|
||
// standard Identity definition.
|
||
Std_Identity struct {
|
||
Identity string `gorm:"column:identity;type:varchar(36);uniqueIndex;" json:"identity"` // 唯一标识,24位NanoID,36位为ULID
|
||
}
|
||
|
||
// standard Status definition.
|
||
Std_Status struct {
|
||
Status int8 `gorm:"default:0;index;" json:"status"` // 状态:默认为0,-1禁止,1为正常
|
||
}
|
||
)
|