【feat】 添加postgresql数据库支持,【修复】pg数据库的代码生成功能

This commit is contained in:
PandaX
2023-11-10 10:07:38 +08:00
parent a37dace97c
commit 72ffbf38c3
15 changed files with 1323 additions and 724 deletions

View File

@@ -19,6 +19,7 @@ type DevGenTable struct {
Remark string `gorm:"remark" json:"remark"` // 备注 Remark string `gorm:"remark" json:"remark"` // 备注
PkColumn string `gorm:"pk_column;" json:"pkColumn"` PkColumn string `gorm:"pk_column;" json:"pkColumn"`
PkGoField string `gorm:"pk_go_field" json:"pkGoField"` PkGoField string `gorm:"pk_go_field" json:"pkGoField"`
PkGoType string `gorm:"pk_go_type" json:"pkGoType"`
PkJsonField string `gorm:"pk_json_field" json:"pkJsonField"` PkJsonField string `gorm:"pk_json_field" json:"pkJsonField"`
Columns []DevGenTableColumn `gorm:"-" json:"columns"` // 字段信息 Columns []DevGenTableColumn `gorm:"-" json:"columns"` // 字段信息
model.BaseModel model.BaseModel

View File

@@ -194,20 +194,19 @@ func (s *toolsGenTableColumn) GenTableInit(tableName string) entity.DevGenTable
data.FunctionAuthor = "panda" data.FunctionAuthor = "panda"
wg := sync.WaitGroup{} wg := sync.WaitGroup{}
dcs := *dbColumn for x := 0; x < len(dbColumn); x++ {
for x := 0; x < len(dcs); x++ {
index := x index := x
wg.Add(1) wg.Add(1)
go func(wg *sync.WaitGroup, y int) { go func(wg *sync.WaitGroup, y int) {
defer wg.Done() defer wg.Done()
var column entity.DevGenTableColumn var column entity.DevGenTableColumn
column.ColumnComment = dcs[y].ColumnComment column.ColumnComment = dbColumn[y].ColumnComment
column.ColumnName = dcs[y].ColumnName column.ColumnName = dbColumn[y].ColumnName
column.ColumnType = dcs[y].ColumnType column.ColumnType = dbColumn[y].ColumnType
column.Sort = y + 1 column.Sort = y + 1
column.IsPk = "0" column.IsPk = "0"
nameList := strings.Split(dcs[y].ColumnName, "_") nameList := strings.Split(dbColumn[y].ColumnName, "_")
for i := 0; i < len(nameList); i++ { for i := 0; i < len(nameList); i++ {
strStart := string([]byte(nameList[i])[:1]) strStart := string([]byte(nameList[i])[:1])
strend := string([]byte(nameList[i])[1:]) strend := string([]byte(nameList[i])[1:])
@@ -218,21 +217,13 @@ func (s *toolsGenTableColumn) GenTableInit(tableName string) entity.DevGenTable
column.JsonField += strings.ToUpper(strStart) + strend column.JsonField += strings.ToUpper(strStart) + strend
} }
} }
if strings.Contains(dcs[y].ColumnKey, "PR") {
column.IsPk = "1"
data.PkColumn = dcs[y].ColumnName
data.PkGoField = column.GoField
data.PkJsonField = column.JsonField
if dcs[y].Extra == "auto_increment" {
column.IsIncrement = "1"
}
}
if column.ColumnComment == "" { if column.ColumnComment == "" {
column.ColumnComment = column.GoField column.ColumnComment = column.GoField
} }
dataType := s.GetDbType(column.ColumnType) //dataType := s.GetDbType(column.ColumnType)
dataType := strings.ToLower(column.ColumnType)
if s.IsStringObject(dataType) { if s.IsStringObject(dataType) {
//字段为字符串类型 //字段为字符串类型
column.GoType = "string" column.GoType = "string"
@@ -249,7 +240,6 @@ func (s *toolsGenTableColumn) GenTableInit(tableName string) entity.DevGenTable
} else if s.IsNumberObject(dataType) { } else if s.IsNumberObject(dataType) {
//字段为数字类型 //字段为数字类型
column.HtmlType = "input" column.HtmlType = "input"
column.HtmlType = "input"
t := "" t := ""
if global.Conf.Server.DbType == "postgresql" { if global.Conf.Server.DbType == "postgresql" {
t = column.ColumnType t = column.ColumnType
@@ -282,6 +272,17 @@ func (s *toolsGenTableColumn) GenTableInit(tableName string) entity.DevGenTable
column.HtmlType = "switch" column.HtmlType = "switch"
} }
} }
// 是主键的时候
if strings.Contains(dbColumn[y].ColumnKey, "PR") {
column.IsPk = "1"
data.PkColumn = dbColumn[y].ColumnName
data.PkGoField = column.GoField
data.PkGoType = column.GoType
data.PkJsonField = column.JsonField
if dbColumn[y].Extra == "auto_increment" {
column.IsIncrement = "1"
}
}
//新增字段 //新增字段
if s.IsNotEdit(column.ColumnName) { if s.IsNotEdit(column.ColumnName) {
column.IsRequired = "0" column.IsRequired = "0"
@@ -346,7 +347,7 @@ func Preview(tableId int64) map[string]any {
biz.ErrIsNil(err, "service模版读取失败") biz.ErrIsNil(err, "service模版读取失败")
t3, err := template.ParseFiles("resource/template/go/api.template") t3, err := template.ParseFiles("resource/template/go/api.template")
biz.ErrIsNil(err, "api模版读取失败") biz.ErrIsNilAppendErr(err, "api模版读取失败")
t4, err := template.ParseFiles("resource/template/go/router.template") t4, err := template.ParseFiles("resource/template/go/router.template")
biz.ErrIsNil(err, "router模版读取失败") biz.ErrIsNil(err, "router模版读取失败")

View File

@@ -16,7 +16,7 @@ import (
type ( type (
SysGenTableColumnModel interface { SysGenTableColumnModel interface {
FindDbTablesColumnListPage(page, pageSize int, data entity.DBColumns) (*[]entity.DBColumns, int64) FindDbTablesColumnListPage(page, pageSize int, data entity.DBColumns) (*[]entity.DBColumns, int64)
FindDbTableColumnList(tableName string) *[]entity.DBColumns FindDbTableColumnList(tableName string) []entity.DBColumns
Insert(data entity.DevGenTableColumn) *entity.DevGenTableColumn Insert(data entity.DevGenTableColumn) *entity.DevGenTableColumn
FindList(data entity.DevGenTableColumn, exclude bool) *[]entity.DevGenTableColumn FindList(data entity.DevGenTableColumn, exclude bool) *[]entity.DevGenTableColumn
@@ -58,8 +58,8 @@ func (m *devTableColumnModelImpl) FindDbTablesColumnListPage(page, pageSize int,
return &list, total return &list, total
} }
func (m *devTableColumnModelImpl) FindDbTableColumnList(tableName string) *[]entity.DBColumns { func (m *devTableColumnModelImpl) FindDbTableColumnList(tableName string) []entity.DBColumns {
resData := make([]entity.DBColumns, 0)
if global.Conf.Server.DbType != "mysql" && global.Conf.Server.DbType != "postgresql" { if global.Conf.Server.DbType != "mysql" && global.Conf.Server.DbType != "postgresql" {
biz.ErrIsNil(errors.New("只支持mysql和postgresql数据库"), "只支持mysql和postgresql数据库") biz.ErrIsNil(errors.New("只支持mysql和postgresql数据库"), "只支持mysql和postgresql数据库")
} }
@@ -73,9 +73,58 @@ func (m *devTableColumnModelImpl) FindDbTableColumnList(tableName string) *[]ent
biz.IsTrue(tableName != "", "table name cannot be empty") biz.IsTrue(tableName != "", "table name cannot be empty")
db = db.Where("table_name = ?", tableName) db = db.Where("table_name = ?", tableName)
err := db.Find(&resData).Error resData := make([]entity.DBColumns, 0)
biz.ErrIsNil(err, "查询表字段失败") if global.Conf.Server.DbType == "mysql" {
return &resData err := db.Find(&resData).Error
biz.ErrIsNil(err, "查询表字段失败")
return resData
}
if global.Conf.Server.DbType == "postgresql" {
pr, err := getPgPR(tableName)
biz.ErrIsNil(err, "查询PG表主键字段失败")
resDataP := make([]entity.DBColumnsP, 0)
err = db.Find(&resDataP).Error
biz.ErrIsNil(err, "查询表字段失败")
for _, data := range resDataP {
dbc := entity.DBColumns{
TableSchema: data.TableSchema,
TableName: data.TableName,
ColumnName: data.ColumnName,
ColumnDefault: data.ColumnDefault,
IsNullable: data.IsNullable,
DataType: data.DataType,
CharacterMaximumLength: data.CharacterMaximumLength,
CharacterSetName: data.CharacterSetName,
ColumnType: data.ColumnType,
ColumnKey: data.ColumnKey,
Extra: data.Extra,
ColumnComment: data.ColumnComment,
}
// 设置为主键
if pr == data.ColumnName {
dbc.ColumnKey = "PRIMARY KEY"
}
resData = append(resData, dbc)
}
return resData
}
return resData
}
func getPgPR(tableName string) (string, error) {
sql := `SELECT
kcu.column_name
FROM
information_schema.table_constraints AS tc
JOIN information_schema.key_column_usage AS kcu ON tc.constraint_name = kcu.constraint_name
WHERE
tc.constraint_type = 'PRIMARY KEY'
AND tc.table_schema = 'public'
AND tc.table_name = ?;`
var pkname string
err := global.Db.Raw(sql, tableName).Scan(&pkname).Error
return pkname, err
} }
func (m *devTableColumnModelImpl) Insert(dgt entity.DevGenTableColumn) *entity.DevGenTableColumn { func (m *devTableColumnModelImpl) Insert(dgt entity.DevGenTableColumn) *entity.DevGenTableColumn {

View File

@@ -237,6 +237,9 @@ func GetDeviceToken(data *entity.Device) *model.DeviceAuth {
// 获取设备数量统计 // 获取设备数量统计
func (m *deviceModelImpl) FindDeviceCount() (result entity.DeviceCount) { func (m *deviceModelImpl) FindDeviceCount() (result entity.DeviceCount) {
sql := `SELECT COUNT(*) AS total, (SELECT COUNT(*) FROM devices WHERE DATE(create_time) = CURDATE()) AS today FROM devices` sql := `SELECT COUNT(*) AS total, (SELECT COUNT(*) FROM devices WHERE DATE(create_time) = CURDATE()) AS today FROM devices`
if global.Conf.Server.DbType == "postgresql" {
sql = `SELECT COUNT(*) AS total, (SELECT COUNT(*) FROM devices WHERE DATE(create_time) = current_date) AS today FROM devices`
}
err := global.Db.Raw(sql).Scan(&result).Error err := global.Db.Raw(sql).Scan(&result).Error
biz.ErrIsNil(err, "获取设备统计总数失败") biz.ErrIsNil(err, "获取设备统计总数失败")
return result return result

View File

@@ -101,12 +101,18 @@ func (m *alarmModelImpl) Delete(id []string) {
// 获取告警数量统计 // 获取告警数量统计
func (m *alarmModelImpl) FindAlarmCount() (count entity.DeviceCount) { func (m *alarmModelImpl) FindAlarmCount() (count entity.DeviceCount) {
sql := `SELECT COUNT(*) AS total, (SELECT COUNT(*) FROM device_alarms WHERE DATE(time) = CURDATE()) AS today FROM device_alarms` sql := `SELECT COUNT(*) AS total, (SELECT COUNT(*) FROM device_alarms WHERE DATE(time) = CURDATE()) AS today FROM device_alarms`
if global.Conf.Server.DbType == "postgresql" {
sql = `SELECT COUNT(*) AS total, (SELECT COUNT(*) FROM device_alarms WHERE DATE(time) = current_date) AS today FROM device_alarms`
}
err := global.Db.Raw(sql).Scan(&count).Error err := global.Db.Raw(sql).Scan(&count).Error
biz.ErrIsNil(err, "获取告警统计总数失败") biz.ErrIsNil(err, "获取告警统计总数失败")
return return
} }
func (m *alarmModelImpl) FindAlarmPanel() (count []entity.DeviceAlarmCount) { func (m *alarmModelImpl) FindAlarmPanel() (count []entity.DeviceAlarmCount) {
sql := `SELECT CAST(time AS DATE) AS date, COUNT(*) AS count FROM device_alarms WHERE time >= DATE_SUB(CURDATE(), INTERVAL 30 DAY) GROUP BY CAST(time AS DATE)` sql := `SELECT CAST(time AS DATE) AS date, COUNT(*) AS count FROM device_alarms WHERE time >= DATE_SUB(CURDATE(), INTERVAL 30 DAY) GROUP BY CAST(time AS DATE)`
if global.Conf.Server.DbType == "postgresql" {
sql = `SELECT CAST(time AS DATE) AS date, COUNT(*) AS count FROM device_alarms WHERE time >= CURRENT_DATE - INTERVAL '30 day' GROUP BY CAST(time AS DATE);`
}
err := global.Db.Raw(sql).Scan(&count).Error err := global.Db.Raw(sql).Scan(&count).Error
biz.ErrIsNil(err, "获取告警统计列表失败") biz.ErrIsNil(err, "获取告警统计列表失败")
return return

View File

@@ -151,6 +151,9 @@ func deleteDeviceStable(productId string) error {
// 获取产品数量统计 // 获取产品数量统计
func (m *productModelImpl) FindProductCount() (count entity.DeviceCount) { func (m *productModelImpl) FindProductCount() (count entity.DeviceCount) {
sql := `SELECT COUNT(*) AS total, (SELECT COUNT(*) FROM products WHERE DATE(create_time) = CURDATE()) AS today FROM products` sql := `SELECT COUNT(*) AS total, (SELECT COUNT(*) FROM products WHERE DATE(create_time) = CURDATE()) AS today FROM products`
if global.Conf.Server.DbType == "postgresql" {
sql = `SELECT COUNT(*) AS total, (SELECT COUNT(*) FROM products WHERE DATE(create_time) = current_date) AS today FROM products`
}
err := global.Db.Raw(sql).Scan(&count).Error err := global.Db.Raw(sql).Scan(&count).Error
biz.ErrIsNil(err, "获取产品统计总数失败") biz.ErrIsNil(err, "获取产品统计总数失败")
return return

View File

@@ -134,8 +134,13 @@ func (m *sysRoleModel) GetRoleOrganizationId(data entity.SysRole) []int64 {
func (m *sysRoleModel) FindOrganizationsByRoleId(roleId int64) (entity.SysRole, error) { func (m *sysRoleModel) FindOrganizationsByRoleId(roleId int64) (entity.SysRole, error) {
var roleData entity.SysRole var roleData entity.SysRole
err := global.Db.Table(m.table). db := global.Db.Table(m.table)
Select("sys_roles.data_scope, GROUP_CONCAT(sys_role_organizations.organization_id) as org"). if global.Conf.Server.DbType == "mysql" {
db.Select("sys_roles.data_scope, GROUP_CONCAT(sys_role_organizations.organization_id) as org")
} else {
db.Select("sys_roles.data_scope, STRING_AGG(sys_role_organizations.organization_id::text,',') as org")
}
err := db.
Joins("LEFT JOIN sys_role_organizations ON sys_roles.role_id = sys_role_organizations.role_id"). Joins("LEFT JOIN sys_role_organizations ON sys_roles.role_id = sys_role_organizations.role_id").
Where("sys_roles.role_id = ?", roleId). Where("sys_roles.role_id = ?", roleId).
Group("sys_roles.role_id"). Group("sys_roles.role_id").

View File

@@ -17,7 +17,7 @@ server:
rate: rate:
enable: true enable: true
rate-num: 100 rate-num: 100
db-type: mysql db-type: postgresql
# 是否开启数据库表初始化 # 是否开启数据库表初始化
isInitTable: false isInitTable: false
excel-dir: ./resource/excel/ excel-dir: ./resource/excel/
@@ -45,6 +45,16 @@ mysql:
password: '!MyEMS1' password: '!MyEMS1'
db-name: pandax_iot db-name: pandax_iot
config: charset=utf8&loc=Local&parseTime=true config: charset=utf8&loc=Local&parseTime=true
postgresql:
username: postgres
password: 123456
host: 127.0.0.1
port: 5432
db-name: pandax_iot
max-idle-conns: 10
max-open-conns: 10
# mini0 # mini0
oss: oss:
endpoint: 127.0.0.1:9000 endpoint: 127.0.0.1:9000

View File

@@ -36,6 +36,10 @@ var rootCmd = &cobra.Command{
dbGorm.Dsn = global.Conf.Mysql.Dsn() dbGorm.Dsn = global.Conf.Mysql.Dsn()
dbGorm.MaxIdleConns = global.Conf.Mysql.MaxIdleConns dbGorm.MaxIdleConns = global.Conf.Mysql.MaxIdleConns
dbGorm.MaxOpenConns = global.Conf.Mysql.MaxOpenConns dbGorm.MaxOpenConns = global.Conf.Mysql.MaxOpenConns
} else {
dbGorm.Dsn = global.Conf.Postgresql.PgDsn()
dbGorm.MaxIdleConns = global.Conf.Postgresql.MaxIdleConns
dbGorm.MaxOpenConns = global.Conf.Postgresql.MaxOpenConns
} }
global.Db = dbGorm.GormInit() global.Db = dbGorm.GormInit()
global.Log.Infof("%s连接成功", global.Conf.Server.DbType) global.Log.Infof("%s连接成功", global.Conf.Server.DbType)

View File

@@ -34,19 +34,20 @@ var startConfigParam *CmdConfigParam
// yaml配置文件映射对象 // yaml配置文件映射对象
type Config struct { type Config struct {
App *App `yaml:"app"` App *App `yaml:"app"`
Server *Server `yaml:"server"` Server *Server `yaml:"server"`
Queue *Queue `yaml:"queue"` Queue *Queue `yaml:"queue"`
Jwt *Jwt `yaml:"jwt"` Jwt *Jwt `yaml:"jwt"`
Redis *Redis `yaml:"redis"` Redis *Redis `yaml:"redis"`
Mysql *Mysql `yaml:"mysql"` Mysql *Mysql `yaml:"mysql"`
Oss *Oss `yaml:"oss"` Postgresql *Postgresql `yaml:"postgresql"`
Taos *Taos `yaml:"taos"` Oss *Oss `yaml:"oss"`
Mqtt *Mqtt `yaml:"mqtt"` Taos *Taos `yaml:"taos"`
Casbin *Casbin `yaml:"casbin"` Mqtt *Mqtt `yaml:"mqtt"`
Gen *Gen `yaml:"gen"` Casbin *Casbin `yaml:"casbin"`
Ys *Ys `yaml:"ys"` Gen *Gen `yaml:"gen"`
Log *Log `yaml:"log"` Ys *Ys `yaml:"ys"`
Log *Log `yaml:"log"`
} }
// 配置文件内容校验 // 配置文件内容校验

View File

@@ -392,124 +392,6 @@ CREATE TABLE `dev_gen_table_columns` (
-- ---------------------------- -- ----------------------------
-- Records of dev_gen_table_columns -- Records of dev_gen_table_columns
-- ---------------------------- -- ----------------------------
INSERT INTO `dev_gen_table_columns` VALUES (1, 1, '', 'log_id', '', 'bigint(20)', '', 'int64', 'LogId', 'logId', '', '1', '', '0', '1', '0', '1', '1', 'EQ', 'input', '', 1, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (2, 1, '', 'name', '任务名称', 'varchar(128)', '', 'string', 'Name', 'name', '', '0', '', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 2, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (3, 1, '', 'job_group', '分组', 'varchar(128)', '', 'string', 'JobGroup', 'jobGroup', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 3, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (4, 1, '', 'entry_id', '任务id', 'int(11)', '', 'int', 'EntryId', 'entryId', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 4, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (5, 1, '', 'invoke_target', '调用方法', 'varchar(128)', '', 'string', 'InvokeTarget', 'invokeTarget', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 5, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (6, 1, '', 'log_info', '日志信息', 'varchar(255)', '', 'string', 'LogInfo', 'logInfo', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 6, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (7, 1, '', 'status', '状态', 'varchar(1)', '', 'string', 'Status', 'status', '', '0', '', '1', '1', '1', '1', '1', 'EQ', 'radio', '', 7, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (8, 1, '', 'create_time', '', 'datetime', '', 'Time', 'CreateTime', 'createTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 8, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (9, 1, '', 'update_time', '', 'datetime', '', 'Time', 'UpdateTime', 'updateTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 9, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (10, 1, '', 'delete_time', '', 'datetime', '', 'Time', 'DeleteTime', 'deleteTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 10, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (27, 3, '', 'delete_time', '', 'datetime', '', 'Time', 'DeleteTime', 'deleteTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 13, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (28, 4, '', 'config_value', 'ConfigValue', 'varchar(255)', '', 'string', 'ConfigValue', 'configValue', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 4, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (29, 3, '', 'business_type', '0其它 1新增 2修改 3删除', 'varchar(1)', '', 'string', 'BusinessType', 'businessType', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'select', '', 3, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (30, 4, '', 'config_type', '是否系统内置01', 'varchar(64)', '', 'string', 'ConfigType', 'configType', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'select', '', 5, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (31, 3, '', 'method', '请求方法', 'varchar(255)', '', 'string', 'Method', 'method', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 4, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (32, 4, '', 'is_frontend', '是否前台', 'varchar(1)', '', 'string', 'IsFrontend', 'isFrontend', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 6, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (33, 3, '', 'oper_name', '操作人员', 'varchar(255)', '', 'string', 'OperName', 'operName', '', '0', '', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 5, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (34, 4, '', 'remark', 'Remark', 'varchar(128)', '', 'string', 'Remark', 'remark', '', '0', '', '0', '1', '1', '1', '0', 'EQ', 'input', '', 7, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (35, 3, '', 'oper_url', '操作url', 'varchar(255)', '', 'string', 'OperUrl', 'operUrl', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 6, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (36, 4, '', 'create_time', '', 'datetime', '', 'Time', 'CreateTime', 'createTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 8, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (37, 3, '', 'oper_ip', '操作IP', 'varchar(255)', '', 'string', 'OperIp', 'operIp', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 7, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (38, 4, '', 'update_time', '', 'datetime', '', 'Time', 'UpdateTime', 'updateTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 9, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (39, 3, '', 'create_time', '', 'datetime', '', 'Time', 'CreateTime', 'createTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 11, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (40, 3, '', 'update_time', '', 'datetime', '', 'Time', 'UpdateTime', 'updateTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 12, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (41, 3, '', 'status', '0=正常,1=异常', 'varchar(1)', '', 'string', 'Status', 'status', '', '0', '', '1', '1', '1', '1', '1', 'EQ', 'radio', '', 10, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (42, 3, '', 'oper_id', '', 'bigint(20)', '', 'int64', 'OperId', 'operId', '', '1', '', '0', '1', '0', '1', '1', 'EQ', 'input', '', 1, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (43, 5, '', 'delete_time', '', 'datetime', '', 'Time', 'DeleteTime', 'deleteTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 14, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (44, 5, '', 'category', '', 'varchar(191)', '', 'string', 'Category', 'category', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 2, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (45, 5, '', 'app_id', 'AppId', 'varchar(128)', '', 'string', 'AppId', 'appId', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 3, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (46, 5, '', 'access_key', 'accessKey', 'varchar(128)', '', 'string', 'AccessKey', 'accessKey', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 4, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (47, 5, '', 'secret_key', 'secretKey', 'varchar(128)', '', 'string', 'SecretKey', 'secretKey', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 5, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (48, 5, '', 'bucket_name', 'bucketName', 'varchar(128)', '', 'string', 'BucketName', 'bucketName', '', '0', '', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 6, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (49, 5, '', 'endpoint', 'endpoint', 'varchar(128)', '', 'string', 'Endpoint', 'endpoint', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 7, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (50, 5, '', 'oss_code', 'ossCode', 'varchar(128)', '', 'string', 'OssCode', 'ossCode', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 8, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (51, 5, '', 'region', '地址', 'varchar(128)', '', 'string', 'Region', 'region', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 9, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (52, 5, '', 'remark', '说明', 'varchar(128)', '', 'string', 'Remark', 'remark', '', '0', '', '0', '1', '1', '1', '0', 'EQ', 'input', '', 10, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (53, 5, '', 'update_time', '', 'datetime', '', 'Time', 'UpdateTime', 'updateTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 13, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (54, 5, '', 'status', '状态', 'varchar(1)', '', 'string', 'Status', 'status', '', '0', '', '1', '1', '1', '1', '1', 'EQ', 'radio', '', 11, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (55, 5, '', 'create_time', '', 'datetime', '', 'Time', 'CreateTime', 'createTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 12, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (56, 5, '', 'oss_id', '主键编码', 'bigint(20)', '', 'int64', 'OssId', 'ossId', '', '1', '1', '0', '1', '0', '1', '1', 'EQ', 'input', '', 1, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (57, 6, '', 'app_id', 'AppId', 'varchar(128)', '', 'string', 'AppId', 'appId', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 3, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (58, 6, '', 'category', '', 'varchar(191)', '', 'string', 'Category', 'category', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 2, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (59, 6, '', 'endpoint', 'endpoint', 'varchar(128)', '', 'string', 'Endpoint', 'endpoint', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 7, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (60, 6, '', 'access_key', 'accessKey', 'varchar(128)', '', 'string', 'AccessKey', 'accessKey', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 4, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (61, 6, '', 'secret_key', 'secretKey', 'varchar(128)', '', 'string', 'SecretKey', 'secretKey', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 5, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (62, 6, '', 'bucket_name', 'bucketName', 'varchar(128)', '', 'string', 'BucketName', 'bucketName', '', '0', '', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 6, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (63, 6, '', 'remark', '说明', 'varchar(128)', '', 'string', 'Remark', 'remark', '', '0', '', '0', '1', '1', '1', '0', 'EQ', 'input', '', 10, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (64, 6, '', 'oss_code', 'ossCode', 'varchar(128)', '', 'string', 'OssCode', 'ossCode', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 8, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (65, 6, '', 'region', '地址', 'varchar(128)', '', 'string', 'Region', 'region', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 9, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (66, 6, '', 'create_time', '', 'datetime', '', 'Time', 'CreateTime', 'createTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 12, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (67, 6, '', 'delete_time', '', 'datetime', '', 'Time', 'DeleteTime', 'deleteTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 14, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (68, 6, '', 'status', '状态', 'varchar(1)', '', 'string', 'Status', 'status', '', '0', '', '1', '1', '1', '1', '1', 'EQ', 'radio', '', 11, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (69, 6, '', 'update_time', '', 'datetime', '', 'Time', 'UpdateTime', 'updateTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 13, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (70, 6, '', 'oss_id', '主键编码', 'bigint(20)', '', 'int64', 'OssId', 'ossId', '', '1', '1', '0', '1', '0', '1', '1', 'EQ', 'input', '', 1, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (71, 7, '', 'delete_time', '', 'datetime', '', 'Time', 'DeleteTime', 'deleteTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 10, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (72, 7, '', 'host', '主机', 'varchar(191)', '', 'string', 'Host', 'host', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 2, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (73, 7, '', 'secret', '密码', 'varchar(191)', '', 'string', 'Secret', 'secret', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 6, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (74, 7, '', 'update_time', '', 'datetime', '', 'Time', 'UpdateTime', 'updateTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 9, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (75, 7, '', 'from', '发件人', 'varchar(191)', '', 'string', 'From', 'from', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 4, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (76, 7, '', 'is_ssl', '开启ssl', 'tinyint(1)', '', 'int', 'IsSsl', 'isSsl', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 7, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (77, 7, '', 'mail_id', '主键编码', 'bigint(20)', 'Json', 'int64', 'MailId', 'mailId', '', '1', '1', '0', '1', '0', '1', '1', 'EQ', 'input', '', 1, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (82, 9, '', 'expire_time', '过期时间', 'datetime', '', 'Time', 'ExpireTime', 'expireTime', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'datetime', '', 7, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (83, 9, '', 'delete_time', 'DeleteTime', 'datetime', '', 'Time', 'DeleteTime', 'deleteTime', '', '0', '', '0', '0', '0', '0', '0', 'EQ', 'datetime', '', 3, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (84, 9, '', 'create_time', 'CreateTime', 'datetime', '', 'Time', 'CreateTime', 'createTime', '', '0', '', '0', '0', '0', '1', '0', 'EQ', 'datetime', '', 1, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (85, 9, '', 'update_time', 'UpdateTime', 'datetime', '', 'Time', 'UpdateTime', 'updateTime', '', '0', '', '0', '0', '0', '0', '0', 'EQ', 'datetime', '', 2, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (86, 9, '', 'tenant_name', '租户名', 'varchar(255)', '', 'string', 'TenantName', 'tenantName', '', '0', '', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 5, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (87, 9, '', 'remark', '备注', 'varchar(255)', '', 'string', 'Remark', 'remark', '', '0', '', '0', '1', '1', '1', '0', 'EQ', 'input', '', 6, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (88, 9, '', 'id', 'Id', 'bigint(20)', '', 'int64', 'Id', 'id', '', '1', '1', '0', '0', '0', '1', '1', 'EQ', 'input', '', 4, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (89, 10, '', 'status', '状态', 'varchar(1)', '', 'string', 'Status', 'status', '', '0', '', '1', '1', '1', '1', '1', 'EQ', 'radio', 'sys_normal_disable', 16, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (90, 10, '', 'product_category_name', '产品类型名称', 'varchar(64)', '', 'string', 'ProductCategoryName', 'productCategoryName', '', '0', '', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 10, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (91, 10, '', 'device_type', '设备类型', 'varchar(64)', '', 'string', 'DeviceType', 'deviceType', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'select', '', 12, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (92, 10, '', 'id', 'Id', 'varchar(191)', '', 'string', 'Id', 'id', '', '1', '', '0', '0', '0', '1', '1', 'EQ', 'input', '', 1, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (93, 10, '', 'rule_chain_id', '规则链Id', 'varchar(64)', '', 'string', 'RuleChainId', 'ruleChainId', '', '0', '', '0', '0', '0', '1', '1', 'EQ', 'input', '', 15, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (94, 10, '', 'product_category_id', '产品类型Id', 'varchar(191)', '', 'string', 'ProductCategoryId', 'productCategoryId', '', '0', '', '0', '0', '0', '1', '1', 'EQ', 'input', '', 9, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (95, 10, '', 'create_time', 'CreateTime', 'datetime', '', 'Time', 'CreateTime', 'createTime', '', '0', '', '0', '0', '0', '1', '0', 'EQ', 'datetime', '', 4, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (96, 10, '', 'owner', '创建者,所有者', 'varchar(64)', '', 'string', 'Owner', 'owner', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 2, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (97, 10, '', 'protocol_name', '协议名称', 'varchar(64)', '', 'string', 'ProtocolName', 'protocolName', '', '0', '', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 11, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (98, 10, '', 'description', '产品说明', 'varchar(255)', '', 'string', 'Description', 'description', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 8, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (99, 10, '', 'name', '产品名称', 'varchar(128)', '', 'string', 'Name', 'name', '', '0', '', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 6, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (100, 10, '', 'photo_url', '图片地址', 'varchar(255)', '', 'string', 'PhotoUrl', 'photoUrl', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 7, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (101, 10, '', 'org_id', '机构ID', 'varchar(64)', '', 'string', 'OrgId', 'orgId', '', '0', '', '0', '0', '0', '1', '1', 'EQ', 'input', '', 3, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (102, 10, '', 'update_time', 'UpdateTime', 'datetime', '', 'Time', 'UpdateTime', 'updateTime', '', '0', '', '0', '0', '0', '0', '0', 'EQ', 'datetime', '', 5, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (103, 10, '', 'direct_connection', '是否直连', 'tinyint(1)', '', '', 'DirectConnection', 'directConnection', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 13, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (104, 10, '', 'self_learn', '自学习开关', 'tinyint(1)', '', '', 'SelfLearn', 'selfLearn', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 14, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (105, 11, '', 'update_time', 'UpdateTime', 'datetime', '', 'Time', 'UpdateTime', 'updateTime', '', '0', '', '0', '0', '0', '0', '0', 'EQ', 'datetime', '', 5, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (106, 11, '', 'alias', '设备别名', 'varchar(128)', '', 'string', 'Alias', 'alias', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 8, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (107, 11, '', 'ext', '拓展', 'json', '', '', 'Ext', 'ext', '', '0', '', '0', '1', '1', '1', '1', 'EQ', '', '', 14, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (108, 11, '', 'id', 'Id', 'varchar(191)', '', 'string', 'Id', 'id', '', '1', '', '0', '0', '0', '1', '1', 'EQ', 'input', '', 1, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (109, 11, '', 'token', '设备token', 'varchar(128)', '', 'string', 'Token', 'token', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 7, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (110, 11, '', 'gid', '分组Id', 'varchar(191)', '', 'string', 'Gid', 'gid', '', '0', '', '0', '0', '0', '1', '1', 'EQ', 'input', '', 10, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (111, 11, '', 'ota_version', '固件版本', 'varchar(64)', '', 'string', 'OtaVersion', 'otaVersion', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 13, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (112, 11, '', 'org_id', '机构ID', 'varchar(64)', '', 'string', 'OrgId', 'orgId', '', '0', '', '0', '0', '0', '1', '1', 'EQ', 'input', '', 3, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (113, 11, '', 'name', '设备名称', 'varchar(128)', '', 'string', 'Name', 'name', '', '0', '', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 6, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (114, 11, '', 'owner', '创建者,所有者', 'varchar(64)', '', 'string', 'Owner', 'owner', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 2, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (115, 11, '', 'description', '产品说明', 'varchar(255)', '', 'string', 'Description', 'description', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 11, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (116, 11, '', 'status', '状态', 'varchar(1)', '', 'string', 'Status', 'status', '', '0', '', '1', '1', '1', '1', '1', 'EQ', 'radio', 'sys_normal_disable', 12, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (117, 11, '', 'pid', '产品Id', 'varchar(191)', '', 'string', 'Pid', 'pid', '', '0', '', '0', '0', '0', '1', '1', 'EQ', 'input', '', 9, 'products', 'Product', 'product', 'id', 'Id', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (118, 11, '', 'create_time', 'CreateTime', 'datetime', '', 'Time', 'CreateTime', 'createTime', '', '0', '', '0', '0', '0', '1', '0', 'EQ', 'datetime', '', 4, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (119, 13, '', 'description', '说明', 'varchar(255)', '', 'string', 'Description', 'description', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 9, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (120, 12, '', 'define', '数据约束', 'json', '', '', 'Define', 'define', '', '0', '', '0', '1', '1', '1', '1', 'EQ', '', '', 11, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (121, 13, '', 'pid', '产品Id', 'varchar(191)', '', 'string', 'Pid', 'pid', '', '0', '', '0', '0', '0', '1', '1', 'EQ', 'input', '', 4, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (122, 12, '', 'update_time', 'UpdateTime', 'datetime', '', 'Time', 'UpdateTime', 'updateTime', '', '0', '', '0', '0', '0', '0', '0', 'EQ', 'datetime', '', 3, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (123, 13, '', 'id', 'Id', 'varchar(191)', '', 'string', 'Id', 'id', '', '1', '', '0', '0', '0', '1', '1', 'EQ', 'input', '', 1, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (124, 12, '', 'classify', '模型归类', 'varchar(64)', '', 'string', 'Classify', 'classify', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 6, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (125, 13, '', 'update_time', 'UpdateTime', 'datetime', '', 'Time', 'UpdateTime', 'updateTime', '', '0', '', '0', '0', '0', '0', '0', 'EQ', 'datetime', '', 3, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (126, 12, '', 'key', '标识', 'varchar(64)', '', 'string', 'Key', 'key', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 8, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (127, 13, '', 'name', '固件名称', 'varchar(64)', '', 'string', 'Name', 'name', '', '0', '', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 6, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (128, 12, '', 'p_name', '产品名称', 'varchar(64)', '', 'string', 'PName', 'pName', '', '0', '', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 5, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (129, 13, '', 'p_name', '产品名称', 'varchar(191)', '', 'string', 'PName', 'pName', '', '0', '', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 5, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (130, 12, '', 'name', '名称', 'varchar(64)', '', 'string', 'Name', 'name', '', '0', '', '1', '1', '1', '1', '1', 'LIKE', 'input', '', 7, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (131, 13, '', 'create_time', 'CreateTime', 'datetime', '', 'Time', 'CreateTime', 'createTime', '', '0', '', '0', '0', '0', '1', '0', 'EQ', 'datetime', '', 2, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (132, 12, '', 'type', '数据类型', 'varchar(64)', '', 'string', 'Type', 'type', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'select', '', 10, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (133, 13, '', 'url', '下载地址', 'varchar(128)', '', 'string', 'Url', 'url', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 8, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (134, 12, '', 'description', '属性说明', 'varchar(255)', '', 'string', 'Description', 'description', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 9, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (135, 13, '', 'version', '固件版本', 'varchar(64)', '', 'string', 'Version', 'version', '', '0', '', '0', '1', '1', '1', '1', 'EQ', 'input', '', 7, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (136, 12, '', 'pid', '产品Id', 'varchar(64)', '', 'string', 'Pid', 'pid', '', '0', '', '0', '0', '0', '1', '1', 'EQ', 'input', '', 4, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (137, 12, '', 'create_time', 'CreateTime', 'datetime', '', 'Time', 'CreateTime', 'createTime', '', '0', '', '0', '0', '0', '1', '0', 'EQ', 'datetime', '', 2, '', '', '', '', '', 2, NULL);
INSERT INTO `dev_gen_table_columns` VALUES (138, 12, '', 'id', 'Id', 'varchar(191)', '', 'string', 'Id', 'id', '', '1', '', '0', '0', '0', '1', '1', 'EQ', 'input', '', 1, '', '', '', '', '', 2, NULL);
-- ---------------------------- -- ----------------------------
-- Table structure for dev_gen_tables -- Table structure for dev_gen_tables
@@ -530,6 +412,7 @@ CREATE TABLE `dev_gen_tables` (
`remark` varchar(191) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, `remark` varchar(191) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`pk_column` varchar(191) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, `pk_column` varchar(191) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`pk_go_field` varchar(191) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, `pk_go_field` varchar(191) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`pk_go_type` varchar(191) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`pk_json_field` varchar(191) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, `pk_json_field` varchar(191) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`create_time` datetime(0) NULL DEFAULT NULL, `create_time` datetime(0) NULL DEFAULT NULL,
`update_time` datetime(0) NULL DEFAULT NULL, `update_time` datetime(0) NULL DEFAULT NULL,
@@ -542,19 +425,6 @@ CREATE TABLE `dev_gen_tables` (
-- ---------------------------- -- ----------------------------
-- Records of dev_gen_tables -- Records of dev_gen_tables
-- ---------------------------- -- ----------------------------
INSERT INTO `dev_gen_tables` VALUES (1, 'log_jobs', 'LogJobs', 'LogJobs', 'crud', 'admin', 'log-jobs', 'logJobs', 'LogJobs', 'panda', '', '', 'log_id', 'LogId', 'logId', '2022-01-06 14:44:14', '2022-01-06 14:44:14', '2022-01-10 11:58:43', 2, NULL);
INSERT INTO `dev_gen_tables` VALUES (2, 'log_logins', 'LogLogins', 'LogLogins', 'crud', 'log', 'log-logins', 'logLogins', 'logLogins', 'pandax', '', '', 'info_id', 'InfoId', 'infoId', '2022-01-06 14:44:27', '2022-01-26 14:45:46', '2022-07-16 18:24:04', 2, NULL);
INSERT INTO `dev_gen_tables` VALUES (3, 'log_opers', 'LogOpers', 'LogOpers', 'crud', 'admin', 'log-opers', 'logOpers', 'LogOpers', 'panda', '', '', 'oper_id', 'OperId', 'operId', '2022-01-06 15:02:45', '2022-01-06 15:02:45', NULL, 2, NULL);
INSERT INTO `dev_gen_tables` VALUES (4, 'sys_configs', 'SysConfigs', 'SysConfigs', 'crud', 'admin', 'sys-configs', 'sysConfigs', 'SysConfigs', 'panda', '', '', 'config_id', 'ConfigId', 'configId', '2022-01-06 15:02:45', '2022-01-06 15:02:45', '2022-01-12 15:56:49', 2, NULL);
INSERT INTO `dev_gen_tables` VALUES (5, 'res_osses', 'ResOsses', 'ResOsses', 'crud', 'resource', 'res-osses', 'oss', 'ResOsses', 'panda', '', '', 'oss_id', 'OssId', 'ossId', '2022-01-13 15:12:14', '2022-01-13 15:39:11', NULL, 2, NULL);
INSERT INTO `dev_gen_tables` VALUES (6, 'res_osses', 'ResOsses', 'ResOsses', 'crud', 'admin', 'res-osses', 'resOsses', 'ResOsses', 'panda', '', '', 'oss_id', 'OssId', 'ossId', '2022-01-13 15:12:27', '2022-01-13 15:12:27', '2022-01-13 15:12:41', 2, NULL);
INSERT INTO `dev_gen_tables` VALUES (7, 'res_emails', 'ResEmails', 'ResEmails', 'crud', 'resource', 'res-emails', 'email', 'ResEmails', 'panda', '', '', 'mail_id', 'MailId', 'mailId', '2022-01-14 15:20:27', '2022-01-26 15:56:37', NULL, 2, NULL);
INSERT INTO `dev_gen_tables` VALUES (8, 'sys_tenants', '租户', 'SysTenants', 'crud', 'system', 'sys-tenants', 'tenant', 'Tenant', 'panda', '', '', 'tenant_id', 'TenantId', 'tenantId', '2022-07-14 16:52:28', '2022-07-16 16:09:50', '2022-07-16 18:09:40', 2, NULL);
INSERT INTO `dev_gen_tables` VALUES (9, 'sys_tenants', '租户', 'SysTenants', 'crud', 'system', 'sys-tenants', 'tenants', 'Tenants', 'panda', '', '', 'id', 'Id', 'id', '2022-07-16 18:14:53', '2022-07-16 22:45:33', NULL, 2, NULL);
INSERT INTO `dev_gen_tables` VALUES (10, 'products', '产品', 'Product', 'crud', 'device', 'product', 'product', 'Product', 'panda', '', '', 'id', 'Id', 'id', '2023-06-30 08:57:48', '2023-06-30 09:35:47', NULL, 2, NULL);
INSERT INTO `dev_gen_tables` VALUES (11, 'devices', '设备', 'Device', 'crud', 'device', 'device', 'device', 'Device', 'panda', '', '', 'id', 'Id', 'id', '2023-06-30 09:19:43', '2023-06-30 09:35:20', NULL, 2, NULL);
INSERT INTO `dev_gen_tables` VALUES (12, 'product_templates', '产品模型', 'ProductTemplate', 'crud', 'device', 'product-template', 'template', 'Template', '熊猫', '', '', 'id', 'Id', 'id', '2023-06-30 09:31:58', '2023-06-30 09:33:09', NULL, 2, NULL);
INSERT INTO `dev_gen_tables` VALUES (13, 'product_ota', '产品固件', 'ProductOta', 'crud', 'device', 'product-ota', 'ota', 'Ota', 'panda', '', '', 'id', 'Id', 'id', '2023-06-30 09:31:58', '2023-06-30 09:34:09', NULL, 2, NULL);
-- ---------------------------- -- ----------------------------
-- Table structure for device_alarms -- Table structure for device_alarms
@@ -762,19 +632,6 @@ CREATE TABLE `log_logins` (
-- ---------------------------- -- ----------------------------
-- Records of log_logins -- Records of log_logins
-- ---------------------------- -- ----------------------------
INSERT INTO `log_logins` VALUES (3609, 'admin', '0', '127.0.0.1:64524', '您的IP或者域名无法解析请核实后再查询', 'Chrome 113.0.0.0', 'Windows 10', 'Windows', '2023-10-07 11:36:47', 'admin', '', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36', '登录成功', '2023-10-07 11:36:47', '2023-10-07 11:36:47', NULL);
INSERT INTO `log_logins` VALUES (3610, 'panda', '0', '127.0.0.1:64760', '您的IP或者域名无法解析请核实后再查询', 'Chrome 113.0.0.0', 'Windows 10', 'Windows', '2023-10-07 11:37:43', 'panda', '', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36', '登录成功', '2023-10-07 11:37:43', '2023-10-07 11:37:43', NULL);
INSERT INTO `log_logins` VALUES (3611, 'panda', '0', '127.0.0.1:55609', '您的IP或者域名无法解析请核实后再查询', 'Chrome 113.0.0.0', 'Windows 10', 'Windows', '2023-10-08 11:18:46', 'panda', '', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36', '登录成功', '2023-10-08 11:18:46', '2023-10-08 11:18:46', NULL);
INSERT INTO `log_logins` VALUES (3612, 'admin', '0', '127.0.0.1:62589', '您的IP或者域名无法解析请核实后再查询', 'Chrome 113.0.0.0', 'Windows 10', 'Windows', '2023-10-09 16:23:53', 'admin', '', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36', '登录成功', '2023-10-09 16:23:53', '2023-10-09 16:23:53', NULL);
INSERT INTO `log_logins` VALUES (3613, 'panda', '0', '127.0.0.1:56787', '您的IP或者域名无法解析请核实后再查询', 'Chrome 113.0.0.0', 'Windows 10', 'Windows', '2023-10-10 14:18:48', 'panda', '', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36', '登录成功', '2023-10-10 14:18:48', '2023-10-10 14:18:48', NULL);
INSERT INTO `log_logins` VALUES (3614, 'admin', '0', '127.0.0.1:62430', '您的IP或者域名无法解析请核实后再查询', 'Chrome 113.0.0.0', 'Windows 10', 'Windows', '2023-10-10 16:40:42', 'admin', '', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36', '登录成功', '2023-10-10 16:40:42', '2023-10-10 16:40:42', NULL);
INSERT INTO `log_logins` VALUES (3615, 'panda', '0', '127.0.0.1:62432', '您的IP或者域名无法解析请核实后再查询', 'Chrome 113.0.0.0', 'Windows 10', 'Windows', '2023-10-12 18:56:02', 'panda', '', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36', '登录成功', '2023-10-12 18:56:02', '2023-10-12 18:56:02', NULL);
INSERT INTO `log_logins` VALUES (3616, 'panda', '0', '127.0.0.1:59147', '您的IP或者域名无法解析请核实后再查询', 'Chrome 113.0.0.0', 'Windows 10', 'Windows', '2023-10-13 20:21:28', 'panda', '', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36', '登录成功', '2023-10-13 20:21:28', '2023-10-13 20:21:28', NULL);
INSERT INTO `log_logins` VALUES (3617, 'panda', '0', '127.0.0.1:49351', '您的IP或者域名无法解析请核实后再查询', 'Chrome 113.0.0.0', 'Windows 10', 'Windows', '2023-10-14 08:54:17', 'panda', '', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36', '登录成功', '2023-10-14 08:54:17', '2023-10-14 08:54:17', NULL);
INSERT INTO `log_logins` VALUES (3618, 'panda', '0', '127.0.0.1:65019', '您的IP或者域名无法解析请核实后再查询', 'Chrome 113.0.0.0', 'Windows 10', 'Windows', '2023-10-18 08:51:03', 'panda', '', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36', '登录成功', '2023-10-18 08:51:03', '2023-10-18 08:51:03', NULL);
INSERT INTO `log_logins` VALUES (3619, 'panda', '0', '127.0.0.1:57075', '您的IP或者域名无法解析请核实后再查询', 'Chrome 113.0.0.0', 'Windows 10', 'Windows', '2023-10-18 10:22:21', 'panda', '', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36', '登录成功', '2023-10-18 10:22:21', '2023-10-18 10:22:21', NULL);
INSERT INTO `log_logins` VALUES (3620, 'panda', '0', '127.0.0.1:56195', '您的IP或者域名无法解析请核实后再查询', 'Chrome 113.0.0.0', 'Windows 10', 'Windows', '2023-10-18 10:25:10', 'panda', '', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36', '登录成功', '2023-10-18 10:25:10', '2023-10-18 10:25:10', NULL);
INSERT INTO `log_logins` VALUES (3621, 'panda', '0', '127.0.0.1:53399', '您的IP或者域名无法解析请核实后再查询', 'Chrome 113.0.0.0', 'Windows 10', 'Windows', '2023-10-24 14:05:56', 'panda', '', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36', '登录成功', '2023-10-24 14:05:56', '2023-10-24 14:05:56', NULL);
-- ---------------------------- -- ----------------------------
-- Table structure for log_opers -- Table structure for log_opers

File diff suppressed because one or more lines are too long

View File

@@ -44,8 +44,13 @@ func (p *{{.ClassName}}Api) Get{{.ClassName}}List(rc *restfulx.ReqCtx) {
// Get{{.ClassName}} 获取{{.FunctionName}} // Get{{.ClassName}} 获取{{.FunctionName}}
func (p *{{.ClassName}}Api) Get{{.ClassName}}(rc *restfulx.ReqCtx) { func (p *{{.ClassName}}Api) Get{{.ClassName}}(rc *restfulx.ReqCtx) {
{{.PkJsonField}} := restfulx.PathParamInt(rc, "{{.PkJsonField}}") {{ if eq .PkGoType "string" -}}
rc.ResData = p.{{.ClassName}}App.FindOne(int64({{.PkJsonField}})) {{.PkJsonField}} := restfulx.PathParam(rc, "{{.PkJsonField}}")
rc.ResData = p.{{.ClassName}}App.FindOne({{.PkJsonField}})
{{- else -}}
{{.PkJsonField}} := restfulx.PathParamInt(rc, "{{.PkJsonField}}")
rc.ResData = p.{{.ClassName}}App.FindOne(int64({{.PkJsonField}}))
{{- end}}
} }
// Insert{{.ClassName}} 添加{{.FunctionName}} // Insert{{.ClassName}} 添加{{.FunctionName}}
@@ -67,6 +72,11 @@ func (p *{{.ClassName}}Api) Update{{.ClassName}}(rc *restfulx.ReqCtx) {
// Delete{{.ClassName}} 删除{{.FunctionName}} // Delete{{.ClassName}} 删除{{.FunctionName}}
func (p *{{.ClassName}}Api) Delete{{.ClassName}}(rc *restfulx.ReqCtx) { func (p *{{.ClassName}}Api) Delete{{.ClassName}}(rc *restfulx.ReqCtx) {
{{.PkJsonField}} := restfulx.PathParam(rc,"{{.PkJsonField}}") {{.PkJsonField}} := restfulx.PathParam(rc,"{{.PkJsonField}}")
{{.PkJsonField}}s := utils.IdsStrToIdsIntGroup({{.PkJsonField}})
{{ if eq .PkGoType "string" -}}
{{.PkJsonField}}s := strings.Split({{.PkJsonField}}, ",")
{{- else -}}
{{.PkJsonField}}s := utils.IdsStrToIdsIntGroup({{.PkJsonField}})
{{- end }}
p.{{.ClassName}}App.Delete({{.PkJsonField}}s) p.{{.ClassName}}App.Delete({{.PkJsonField}}s)
} }

View File

@@ -40,7 +40,7 @@ func Init{{.ClassName}}Router(container *restful.Container) {
restfulx.NewReqCtx(request, response).WithLog("获取{{.FunctionName}}信息").Handle(s.Get{{.ClassName}}) restfulx.NewReqCtx(request, response).WithLog("获取{{.FunctionName}}信息").Handle(s.Get{{.ClassName}})
}). }).
Doc("获取{{.FunctionName}}信息"). Doc("获取{{.FunctionName}}信息").
Param(ws.PathParameter("{{.PkJsonField}}", "Id").DataType("int")). Param(ws.PathParameter("{{.PkJsonField}}", "Id").DataType("{{.PkGoType}}")).
Metadata(restfulspec.KeyOpenAPITags, tags). Metadata(restfulspec.KeyOpenAPITags, tags).
Writes(entity.{{.ClassName}}{}). // on the response Writes(entity.{{.ClassName}}{}). // on the response
Returns(200, "OK", entity.{{.ClassName}}{}). Returns(200, "OK", entity.{{.ClassName}}{}).

View File

@@ -15,11 +15,11 @@ import (
type ( type (
{{.ClassName}}Model interface { {{.ClassName}}Model interface {
Insert(data entity.{{.ClassName}}) *entity.{{.ClassName}} Insert(data entity.{{.ClassName}}) *entity.{{.ClassName}}
FindOne({{.PkJsonField}} int64) *entity.{{.ClassName}} FindOne({{.PkJsonField}} {{.PkGoType}}) *entity.{{.ClassName}}
FindListPage(page, pageSize int, data entity.{{.ClassName}}) (*[]entity.{{.ClassName}}, int64) FindListPage(page, pageSize int, data entity.{{.ClassName}}) (*[]entity.{{.ClassName}}, int64)
FindList(data entity.{{ .ClassName }}) *[]entity.{{.ClassName}} FindList(data entity.{{ .ClassName }}) *[]entity.{{.ClassName}}
Update(data entity.{{.ClassName}}) *entity.{{.ClassName}} Update(data entity.{{.ClassName}}) *entity.{{.ClassName}}
Delete({{.PkJsonField}}s []int64) Delete({{.PkJsonField}}s []{{.PkGoType}})
} }
{{.BusinessName}}ModelImpl struct { {{.BusinessName}}ModelImpl struct {
@@ -38,7 +38,7 @@ func (m *{{.BusinessName}}ModelImpl) Insert(data entity.{{$model}}) *entity.{{$m
return &data return &data
} }
func (m *{{.BusinessName}}ModelImpl) FindOne({{.PkJsonField}} int64) *entity.{{$model}} { func (m *{{.BusinessName}}ModelImpl) FindOne({{.PkJsonField}} {{.PkGoType}}) *entity.{{$model}} {
resData := new(entity.{{$model}}) resData := new(entity.{{$model}})
db := global.Db.Table(m.table).Where("{{.PkColumn}} = ?", {{.PkJsonField}}) db := global.Db.Table(m.table).Where("{{.PkColumn}} = ?", {{.PkJsonField}})
{{- range $index, $column := .Columns -}} {{- range $index, $column := .Columns -}}
@@ -198,6 +198,6 @@ func (m *{{.BusinessName}}ModelImpl) Update(data entity.{{$model}}) *entity.{{$m
return &data return &data
} }
func (m *{{.BusinessName}}ModelImpl) Delete({{.PkJsonField}}s []int64) { func (m *{{.BusinessName}}ModelImpl) Delete({{.PkJsonField}}s []{{.PkGoType}}) {
biz.ErrIsNil(global.Db.Table(m.table).Delete(&entity.{{$model}}{}, "{{.PkColumn}} in (?)", {{.PkJsonField}}s).Error, "删除{{.TableComment}}失败") biz.ErrIsNil(global.Db.Table(m.table).Delete(&entity.{{$model}}{}, "{{.PkColumn}} in (?)", {{.PkJsonField}}s).Error, "删除{{.TableComment}}失败")
} }