package enum import ( "time" "github.com/astaxie/beego/orm" ) //模型对应的数据表定义 type ModelTable int func init() { //初始化常量定义。将定义写入到数据字典表中 go func() { time.Sleep(3 * time.Second) //延迟3秒,主要是保证数据库初始化已完成 db := orm.NewOrm() code := "model_table_mapping" var i = ModelTable(1) db.Raw("insert IGNORE into global_const_code(code,parentcode,name)values(?,?,?)", code, "systemconstcode", "模型对应的数据表").Exec() for { if i > 10000 { break } desc := i.String() if desc == "" { i = i + 1 continue } //logger.Logger.Println(fmt.Sprintf("常量值:%d 常量名称:%s", i, desc)) db.Raw("insert IGNORE into global_const_code(code,parentcode,name)values(?,?,?)", i, code, desc).Exec() if desc == "" { break } i = i + 1 } }() } const ( //通用测温模型ID ModelTable_Temperature ModelTable = 126 //通用测温多探头模型ID ModelTable_Temperature_mz ModelTable = 127 //通用避雷器模型ID ModelTable_BiLeiQi ModelTable = 1024 ) //模型id映射的数据表名 func (t ModelTable) String() string { switch t { case ModelTable_Temperature: return "zigbee_026010" case ModelTable_Temperature_mz: return "zigbee_026010_mz" case ModelTable_BiLeiQi: return "zigbee_027001" default: return "" } }