refactor: reorganize modules and add Linux build tooling

This commit is contained in:
2026-08-09 12:41:08 +08:00
parent 86024fa81d
commit 5cc5fd92ed
1461 changed files with 4054 additions and 4724 deletions

View File

@@ -0,0 +1,26 @@
// Package models 数据模型包,定义反馈相关的数据库模型
package models
import (
"git.apinb.com/bsm-sdk/core/database"
"git.apinb.com/bsm-sdk/core/types"
)
// FeedbackAccessory 反馈附件模型
// 用于存储反馈记录关联的附件信息
type FeedbackAccessory struct {
types.Std_IICUDS // 标准IICUDS字段ID、Identity、CreatedAt、UpdatedAt、Status
ItemIdentity string `gorm:"column:item_identity;type:varchar(36);default:'';" json:"item_identity"` // 关联的反馈记录ID
Title string `gorm:"column:title;type:varchar(255);default:''" json:"title"` // 附件标题
FilePath string `gorm:"column:file_path;type:varchar(500);not null" json:"file_path"` // 附件文件地址
}
func init() {
// 注册模型到数据库迁移表
database.MigrateTables = append(database.MigrateTables, &FeedbackAccessory{})
}
// TableName 返回数据库表名
func (c *FeedbackAccessory) TableName() string {
return "feedback_accessory" // 对应数据库表名
}

View File

@@ -0,0 +1,25 @@
// Package models 数据模型包,定义反馈相关的数据库模型
package models
import (
"git.apinb.com/bsm-sdk/core/database"
"git.apinb.com/bsm-sdk/core/types"
)
// FeedbackImage 反馈图片模型
// 用于存储反馈记录关联的图片信息
type FeedbackImage struct {
types.Std_IICUDS // 标准IICUDS字段ID、Identity、CreatedAt、UpdatedAt、Status
ItemIdentity string `gorm:"column:item_identity;type:varchar(36);default:'';" json:"item_identity"` // 关联的反馈记录ID
URL string `gorm:"column:url;type:varchar(255);default:'';" json:"url"` // 图片URL地址
}
func init() {
// 注册模型到数据库迁移表
database.MigrateTables = append(database.MigrateTables, &FeedbackImage{})
}
// TableName 返回数据库表名
func (FeedbackImage) TableName() string {
return "feedback_images" // 对应数据库表名
}

View File

@@ -0,0 +1,35 @@
// Package models 数据模型包,定义反馈相关的数据库模型
package models
import (
"git.apinb.com/bsm-sdk/core/database"
"git.apinb.com/bsm-sdk/core/types"
)
// FeedbackItem 反馈记录模型
// 用于存储用户反馈的基本信息和关联数据
type FeedbackItem struct {
types.Std_IICUDS // 标准IICUDS字段ID、Identity、CreatedAt、UpdatedAt、Status
types.Std_Passport // 标准Passport字段用户身份信息
Category string `gorm:"column:category;type:varchar(255);default:'';" json:"category"` // 分类
UserName string `gorm:"column:user_name;type:varchar(20);default:'';" json:"user_name"` // 用户名
Email string `gorm:"column:email;type:varchar(255);default:'';" json:"email"` // 邮箱
Phone string `gorm:"column:phone;type:varchar(20);default:'';" json:"phone"` // 手机号码
Status int32 `gorm:"column:status;default:1;" json:"status"` // 状态,1未处理,2已处理,也可以调用方自行设置,如果未设置则默认是1
Title string `gorm:"column:title;type:varchar(255);default:'';" json:"title"` // 标题
Content string `gorm:"column:content;type:varchar(500);" json:"content"` // 内容
Remark string `gorm:"column:remark;type:varchar(500);" json:"remark"` // 备注
Agency string `gorm:"column:agency;type:varchar(255);default:'';" json:"agency"` // 机构
Images []FeedbackImage `gorm:"foreignKey:ItemIdentity;references:Identity" json:"images"` // 图片列表
Accessories []FeedbackAccessory `gorm:"foreignKey:ItemIdentity;references:Identity" json:"accessories"` // 附件列表
}
func init() {
// 注册模型到数据库迁移表
database.MigrateTables = append(database.MigrateTables, &FeedbackItem{})
}
// TableName 返回数据库表名
func (FeedbackItem) TableName() string {
return "feedback_item" // 对应数据库表名
}