✨ add face recognition
This commit is contained in:
@@ -99,9 +99,41 @@ func main() {
|
||||
fieldOpts := []gen.ModelOpt{jsonField, idField, autoUpdateTimeField, autoCreateTimeField, softDeleteField, versionField}
|
||||
|
||||
// 创建全部模型文件, 并覆盖前面创建的同名模型
|
||||
allModel := g.GenerateAllTable(fieldOpts...)
|
||||
scaAuthMenu := g.GenerateModel("sca_auth_menu", fieldOpts...)
|
||||
scaAuthPermissionRule := g.GenerateModel("sca_auth_permission_rule", fieldOpts...)
|
||||
scaAuthRole := g.GenerateModel("sca_auth_role", fieldOpts...)
|
||||
scaAuthUser := g.GenerateModel("sca_auth_user", fieldOpts...)
|
||||
scaAuthUserDevice := g.GenerateModel("sca_auth_user_device", fieldOpts...)
|
||||
scaAuthUserSocial := g.GenerateModel("sca_auth_user_social", fieldOpts...)
|
||||
scaCommentReply := g.GenerateModel("sca_comment_reply", fieldOpts...)
|
||||
scaCommentLikes := g.GenerateModel("sca_comment_likes", fieldOpts...)
|
||||
scaMessageReport := g.GenerateModel("sca_message_report", fieldOpts...)
|
||||
scaStorageConfig := g.GenerateModel("sca_storage_config", fieldOpts...)
|
||||
scaStorageInfo := g.GenerateModel("sca_storage_info", fieldOpts...)
|
||||
scaStorageTag := g.GenerateModel("sca_storage_tag", fieldOpts...)
|
||||
scaStorageTagInfo := g.GenerateModel("sca_storage_tag_info", fieldOpts...)
|
||||
scaUserFollows := g.GenerateModel("sca_user_follows", fieldOpts...)
|
||||
scaUserLevel := g.GenerateModel("sca_user_level", fieldOpts...)
|
||||
scaUserMessage := g.GenerateModel("sca_user_message", fieldOpts...)
|
||||
|
||||
g.ApplyBasic(allModel...)
|
||||
g.ApplyBasic(
|
||||
scaAuthMenu,
|
||||
scaAuthPermissionRule,
|
||||
scaAuthRole,
|
||||
scaAuthUser,
|
||||
scaAuthUserDevice,
|
||||
scaAuthUserSocial,
|
||||
scaCommentReply,
|
||||
scaCommentLikes,
|
||||
scaMessageReport,
|
||||
scaStorageConfig,
|
||||
scaStorageInfo,
|
||||
scaStorageTag,
|
||||
scaStorageTagInfo,
|
||||
scaUserFollows,
|
||||
scaUserLevel,
|
||||
scaUserMessage,
|
||||
)
|
||||
|
||||
g.Execute()
|
||||
}
|
||||
|
@@ -14,24 +14,29 @@ const TableNameScaStorageInfo = "sca_storage_info"
|
||||
|
||||
// ScaStorageInfo mapped from table <sca_storage_info>
|
||||
type ScaStorageInfo struct {
|
||||
ID int64 `gorm:"column:id;type:bigint(20);primaryKey;autoIncrement:true;comment:主键;primary_key" json:"id,string"` // 主键
|
||||
UserID string `gorm:"column:user_id;type:varchar(50);not null;comment:用户ID" json:"user_id"` // 用户ID
|
||||
Storage string `gorm:"column:storage;type:varchar(50);comment:存储空间" json:"storage"` // 存储空间
|
||||
Bucket string `gorm:"column:bucket;type:varchar(50);comment:存储桶" json:"bucket"` // 存储桶
|
||||
Type string `gorm:"column:type;type:varchar(50);comment:类型" json:"type"` // 类型
|
||||
Path string `gorm:"column:path;type:varchar(255);comment:路径" json:"path"` // 路径
|
||||
FileName string `gorm:"column:file_name;type:varchar(100);comment:名称" json:"file_name"` // 名称
|
||||
Category string `gorm:"column:category;type:varchar(50);comment:分类" json:"category"` // 分类
|
||||
Loaction string `gorm:"column:loaction;type:varchar(100);comment:地址" json:"loaction"` // 地址
|
||||
Hash string `gorm:"column:hash;type:varchar(255);comment:哈希值" json:"hash"` // 哈希值
|
||||
Anime string `gorm:"column:anime;type:varchar(50);comment:是否是动漫图片" json:"anime"` // 是否是动漫图片
|
||||
HasFace string `gorm:"column:has_face;type:varchar(50);comment:是否人像" json:"has_face"` // 是否人像
|
||||
FaceID int64 `gorm:"column:face_id;type:bigint(20);comment:人像ID" json:"face_id"` // 人像ID
|
||||
Landscape string `gorm:"column:landscape;type:varchar(50);comment:风景类型" json:"landscape"` // 风景类型
|
||||
Objects string `gorm:"column:objects;type:varchar(50);comment:对象识别" json:"objects"` // 对象识别
|
||||
CreatedAt time.Time `gorm:"column:created_at;type:timestamp;autoCreateTime;comment:创建时间" json:"created_at"` // 创建时间
|
||||
UpdatedAt time.Time `gorm:"column:updated_at;type:timestamp;autoUpdateTime;comment:更新时间" json:"updated_at"` // 更新时间
|
||||
DeletedAt gorm.DeletedAt `gorm:"column:deleted_at;type:timestamp;comment:删除时间" json:"deleted_at"` // 删除时间
|
||||
ID int64 `gorm:"column:id;type:bigint(20);primaryKey;autoIncrement:true;comment:主键;primary_key" json:"id,string"` // 主键
|
||||
UserID string `gorm:"column:user_id;type:varchar(50);not null;comment:用户ID" json:"user_id"` // 用户ID
|
||||
Provider string `gorm:"column:provider;type:varchar(50);comment:供应商" json:"provider"` // 供应商
|
||||
Bucket string `gorm:"column:bucket;type:varchar(50);comment:存储桶" json:"bucket"` // 存储桶
|
||||
Path string `gorm:"column:path;type:varchar(255);comment:路径" json:"path"` // 路径
|
||||
FileName string `gorm:"column:file_name;type:varchar(100);comment:文件名称" json:"file_name"` // 文件名称
|
||||
FileSize string `gorm:"column:file_size;type:varchar(50);comment:文件大小" json:"file_size"` // 文件大小
|
||||
FileType string `gorm:"column:file_type;type:varchar(50);comment:文件类型" json:"file_type"` // 文件类型
|
||||
Category string `gorm:"column:category;type:varchar(50);comment:分类" json:"category"` // 分类
|
||||
Tags string `gorm:"column:tags;type:varchar(255);comment:标签" json:"tags"` // 标签
|
||||
Location string `gorm:"column:location;type:varchar(100);comment:地址" json:"location"` // 地址
|
||||
Hash string `gorm:"column:hash;type:varchar(255);comment:哈希值" json:"hash"` // 哈希值
|
||||
Anime string `gorm:"column:anime;type:varchar(50);comment:是否是动漫图片" json:"anime"` // 是否是动漫图片
|
||||
FaceID int64 `gorm:"column:face_id;type:bigint(20);comment:人像ID" json:"face_id"` // 人像ID
|
||||
Landscape string `gorm:"column:landscape;type:varchar(50);comment:风景类型" json:"landscape"` // 风景类型
|
||||
Objects string `gorm:"column:objects;type:varchar(50);comment:对象识别" json:"objects"` // 对象识别
|
||||
OriginalTime string `gorm:"column:original_time;type:varchar(50);comment:拍摄时间" json:"original_time"` // 拍摄时间
|
||||
Gps string `gorm:"column:gps;type:varchar(255);comment:GPS" json:"gps"` // GPS
|
||||
Screenshot string `gorm:"column:screenshot;type:varchar(50);comment:是否是截图" json:"screenshot"` // 是否是截图
|
||||
Exif string `gorm:"column:exif;type:json;comment:exif 信息" json:"exif"` // exif 信息
|
||||
CreatedAt time.Time `gorm:"column:created_at;type:timestamp;autoCreateTime;comment:创建时间" json:"created_at"` // 创建时间
|
||||
UpdatedAt time.Time `gorm:"column:updated_at;type:timestamp;autoUpdateTime;comment:更新时间" json:"updated_at"` // 更新时间
|
||||
DeletedAt gorm.DeletedAt `gorm:"column:deleted_at;type:timestamp;comment:删除时间" json:"deleted_at"` // 删除时间
|
||||
}
|
||||
|
||||
// TableName ScaStorageInfo's table name
|
||||
|
@@ -29,19 +29,24 @@ func newScaStorageInfo(db *gorm.DB, opts ...gen.DOOption) scaStorageInfo {
|
||||
_scaStorageInfo.ALL = field.NewAsterisk(tableName)
|
||||
_scaStorageInfo.ID = field.NewInt64(tableName, "id")
|
||||
_scaStorageInfo.UserID = field.NewString(tableName, "user_id")
|
||||
_scaStorageInfo.Storage = field.NewString(tableName, "storage")
|
||||
_scaStorageInfo.Provider = field.NewString(tableName, "provider")
|
||||
_scaStorageInfo.Bucket = field.NewString(tableName, "bucket")
|
||||
_scaStorageInfo.Type = field.NewString(tableName, "type")
|
||||
_scaStorageInfo.Path = field.NewString(tableName, "path")
|
||||
_scaStorageInfo.FileName = field.NewString(tableName, "file_name")
|
||||
_scaStorageInfo.FileSize = field.NewString(tableName, "file_size")
|
||||
_scaStorageInfo.FileType = field.NewString(tableName, "file_type")
|
||||
_scaStorageInfo.Category = field.NewString(tableName, "category")
|
||||
_scaStorageInfo.Loaction = field.NewString(tableName, "loaction")
|
||||
_scaStorageInfo.Tags = field.NewString(tableName, "tags")
|
||||
_scaStorageInfo.Location = field.NewString(tableName, "location")
|
||||
_scaStorageInfo.Hash = field.NewString(tableName, "hash")
|
||||
_scaStorageInfo.Anime = field.NewString(tableName, "anime")
|
||||
_scaStorageInfo.HasFace = field.NewString(tableName, "has_face")
|
||||
_scaStorageInfo.FaceID = field.NewInt64(tableName, "face_id")
|
||||
_scaStorageInfo.Landscape = field.NewString(tableName, "landscape")
|
||||
_scaStorageInfo.Objects = field.NewString(tableName, "objects")
|
||||
_scaStorageInfo.OriginalTime = field.NewString(tableName, "original_time")
|
||||
_scaStorageInfo.Gps = field.NewString(tableName, "gps")
|
||||
_scaStorageInfo.Screenshot = field.NewString(tableName, "screenshot")
|
||||
_scaStorageInfo.Exif = field.NewString(tableName, "exif")
|
||||
_scaStorageInfo.CreatedAt = field.NewTime(tableName, "created_at")
|
||||
_scaStorageInfo.UpdatedAt = field.NewTime(tableName, "updated_at")
|
||||
_scaStorageInfo.DeletedAt = field.NewField(tableName, "deleted_at")
|
||||
@@ -54,25 +59,30 @@ func newScaStorageInfo(db *gorm.DB, opts ...gen.DOOption) scaStorageInfo {
|
||||
type scaStorageInfo struct {
|
||||
scaStorageInfoDo
|
||||
|
||||
ALL field.Asterisk
|
||||
ID field.Int64 // 主键
|
||||
UserID field.String // 用户ID
|
||||
Storage field.String // 存储空间
|
||||
Bucket field.String // 存储桶
|
||||
Type field.String // 类型
|
||||
Path field.String // 路径
|
||||
FileName field.String // 名称
|
||||
Category field.String // 分类
|
||||
Loaction field.String // 地址
|
||||
Hash field.String // 哈希值
|
||||
Anime field.String // 是否是动漫图片
|
||||
HasFace field.String // 是否人像
|
||||
FaceID field.Int64 // 人像ID
|
||||
Landscape field.String // 风景类型
|
||||
Objects field.String // 对象识别
|
||||
CreatedAt field.Time // 创建时间
|
||||
UpdatedAt field.Time // 更新时间
|
||||
DeletedAt field.Field // 删除时间
|
||||
ALL field.Asterisk
|
||||
ID field.Int64 // 主键
|
||||
UserID field.String // 用户ID
|
||||
Provider field.String // 供应商
|
||||
Bucket field.String // 存储桶
|
||||
Path field.String // 路径
|
||||
FileName field.String // 文件名称
|
||||
FileSize field.String // 文件大小
|
||||
FileType field.String // 文件类型
|
||||
Category field.String // 分类
|
||||
Tags field.String // 标签
|
||||
Location field.String // 地址
|
||||
Hash field.String // 哈希值
|
||||
Anime field.String // 是否是动漫图片
|
||||
FaceID field.Int64 // 人像ID
|
||||
Landscape field.String // 风景类型
|
||||
Objects field.String // 对象识别
|
||||
OriginalTime field.String // 拍摄时间
|
||||
Gps field.String // GPS
|
||||
Screenshot field.String // 是否是截图
|
||||
Exif field.String // exif 信息
|
||||
CreatedAt field.Time // 创建时间
|
||||
UpdatedAt field.Time // 更新时间
|
||||
DeletedAt field.Field // 删除时间
|
||||
|
||||
fieldMap map[string]field.Expr
|
||||
}
|
||||
@@ -91,19 +101,24 @@ func (s *scaStorageInfo) updateTableName(table string) *scaStorageInfo {
|
||||
s.ALL = field.NewAsterisk(table)
|
||||
s.ID = field.NewInt64(table, "id")
|
||||
s.UserID = field.NewString(table, "user_id")
|
||||
s.Storage = field.NewString(table, "storage")
|
||||
s.Provider = field.NewString(table, "provider")
|
||||
s.Bucket = field.NewString(table, "bucket")
|
||||
s.Type = field.NewString(table, "type")
|
||||
s.Path = field.NewString(table, "path")
|
||||
s.FileName = field.NewString(table, "file_name")
|
||||
s.FileSize = field.NewString(table, "file_size")
|
||||
s.FileType = field.NewString(table, "file_type")
|
||||
s.Category = field.NewString(table, "category")
|
||||
s.Loaction = field.NewString(table, "loaction")
|
||||
s.Tags = field.NewString(table, "tags")
|
||||
s.Location = field.NewString(table, "location")
|
||||
s.Hash = field.NewString(table, "hash")
|
||||
s.Anime = field.NewString(table, "anime")
|
||||
s.HasFace = field.NewString(table, "has_face")
|
||||
s.FaceID = field.NewInt64(table, "face_id")
|
||||
s.Landscape = field.NewString(table, "landscape")
|
||||
s.Objects = field.NewString(table, "objects")
|
||||
s.OriginalTime = field.NewString(table, "original_time")
|
||||
s.Gps = field.NewString(table, "gps")
|
||||
s.Screenshot = field.NewString(table, "screenshot")
|
||||
s.Exif = field.NewString(table, "exif")
|
||||
s.CreatedAt = field.NewTime(table, "created_at")
|
||||
s.UpdatedAt = field.NewTime(table, "updated_at")
|
||||
s.DeletedAt = field.NewField(table, "deleted_at")
|
||||
@@ -123,22 +138,27 @@ func (s *scaStorageInfo) GetFieldByName(fieldName string) (field.OrderExpr, bool
|
||||
}
|
||||
|
||||
func (s *scaStorageInfo) fillFieldMap() {
|
||||
s.fieldMap = make(map[string]field.Expr, 18)
|
||||
s.fieldMap = make(map[string]field.Expr, 23)
|
||||
s.fieldMap["id"] = s.ID
|
||||
s.fieldMap["user_id"] = s.UserID
|
||||
s.fieldMap["storage"] = s.Storage
|
||||
s.fieldMap["provider"] = s.Provider
|
||||
s.fieldMap["bucket"] = s.Bucket
|
||||
s.fieldMap["type"] = s.Type
|
||||
s.fieldMap["path"] = s.Path
|
||||
s.fieldMap["file_name"] = s.FileName
|
||||
s.fieldMap["file_size"] = s.FileSize
|
||||
s.fieldMap["file_type"] = s.FileType
|
||||
s.fieldMap["category"] = s.Category
|
||||
s.fieldMap["loaction"] = s.Loaction
|
||||
s.fieldMap["tags"] = s.Tags
|
||||
s.fieldMap["location"] = s.Location
|
||||
s.fieldMap["hash"] = s.Hash
|
||||
s.fieldMap["anime"] = s.Anime
|
||||
s.fieldMap["has_face"] = s.HasFace
|
||||
s.fieldMap["face_id"] = s.FaceID
|
||||
s.fieldMap["landscape"] = s.Landscape
|
||||
s.fieldMap["objects"] = s.Objects
|
||||
s.fieldMap["original_time"] = s.OriginalTime
|
||||
s.fieldMap["gps"] = s.Gps
|
||||
s.fieldMap["screenshot"] = s.Screenshot
|
||||
s.fieldMap["exif"] = s.Exif
|
||||
s.fieldMap["created_at"] = s.CreatedAt
|
||||
s.fieldMap["updated_at"] = s.UpdatedAt
|
||||
s.fieldMap["deleted_at"] = s.DeletedAt
|
||||
|
Reference in New Issue
Block a user