package models import ( "basic.com/valib/logger.git" "gorm.io/driver/sqlite" "gorm.io/gorm" "strings" "vamicro/config" ) var ( db *gorm.DB DeviceInfo Device ReportConfig Report ) func Init(dbPath string) { var err error db, err = gorm.Open(sqlite.Open(dbPath), &gorm.Config{}) if err != nil { logger.Debug("db open error ", err) return } _ = db.AutoMigrate(Device{}, Report{}) // 添加时间间隔默认数据 var sqls []string sqls = append(sqls, "INSERT INTO t_report(`id`,`serverAddr`,`interval`) SELECT 0,'',10 where not exists (select 1 from t_report);") sqls = append(sqls, "INSERT INTO t_device(`id`,`devId`) SELECT 0,'"+config.Server.AnalyServerId+"' where not exists (select 1 from t_device);") db.Exec(strings.Join(sqls, "")) DeviceInfo.Read() ReportConfig.Read() logger.Debug("DeviceInfo:", DeviceInfo, " ReportConfig", ReportConfig) } func GetDB() *gorm.DB { return db } func CloseDB() { }