package model import ( "github.com/go-redis/redis/v8" "gorm.io/gorm" "samba/pkg/log" "samba/pkg/repo" "samba/util/config" ) var configDB *gorm.DB var userDB *gorm.DB var payDB *gorm.DB var dataDB *gorm.DB var rdbBaseInfo *redis.Client var rdbMoney *redis.Client var rdbConfig *redis.Client var rdbGameLog *redis.Client const ( redisMoney = "RedisMoney" redisBaseInfo = "RedisBaseInfo" redisConfig = "RedisConfig" redisGameLog = "RedisGameLog" ) func InitConfigDB(cnf *config.DBConfig) { var err error configDB, err = repo.InitMysql(cnf.Username, cnf.Password, cnf.Host, cnf.Port, cnf.ConfigDB) if err != nil { log.Error(err.Error()) } } func InitUserDB(cnf *config.DBConfig) { var err error userDB, err = repo.InitMysql(cnf.Username, cnf.Password, cnf.Host, cnf.Port, cnf.UserDB) if err != nil { log.Error(err.Error()) } } func InitPayDB(cnf *config.DBConfig) { var err error payDB, err = repo.InitMysql(cnf.Username, cnf.Password, cnf.Host, cnf.Port, cnf.PayDB) if err != nil { log.Error(err.Error()) } } func InitDataDB(cnf *config.DBConfig) { var err error dataDB, err = repo.InitMysql(cnf.Username, cnf.Password, cnf.Host, cnf.Port, cnf.DataDB) if err != nil { log.Error(err.Error()) } } func InitRedis(rdbXmlConfig *config.RedisConfig) { var err error for _, rdbCnf := range rdbXmlConfig.Entries { switch rdbCnf.Key { case redisMoney: rdbMoney, err = repo.InitRedis(rdbCnf.Password, rdbCnf.Host, rdbCnf.Port, rdbCnf.DB0) if err != nil { log.Error(err.Error()) } case redisBaseInfo: rdbBaseInfo, err = repo.InitRedis(rdbCnf.Password, rdbCnf.Host, rdbCnf.Port, rdbCnf.DB0) if err != nil { log.Error(err.Error()) } case redisConfig: rdbConfig, err = repo.InitRedis(rdbCnf.Password, rdbCnf.Host, rdbCnf.Port, rdbCnf.DB0) if err != nil { log.Error(err.Error()) } case redisGameLog: rdbGameLog, err = repo.InitRedis(rdbCnf.Password, rdbCnf.Host, rdbCnf.Port, rdbCnf.DB0) if err != nil { log.Error(err.Error()) } } } }