Commit 533598d0c8734e2cb25558ac82e333096bad6bbb

Authored by 王家文
1 parent 2e7e26fd
Exists in master and in 1 other branch dev-wjw

refactor♻️:项目目录重构

common/svconfig/interface.go 0 → 100644
... ... @@ -0,0 +1,23 @@
  1 +package svconfig
  2 +
  3 +import "gorm.io/gorm"
  4 +
  5 +const (
  6 + MYSQL_TABLE_TEMPLATE = "all_table_template" // 表名模板
  7 + REDIS_CACHEP_REFIX = "apigame" // 缓存前缀
  8 +)
  9 +
  10 +// ConfigRule 配置数据
  11 +type ConfigRule struct {
  12 + DbMysql *gorm.DB
  13 + TableNameTemplate string
  14 + TableName string
  15 + CacheKey string
  16 + CacheTime int
  17 +}
  18 +
  19 +// IConfigRule 配置数据
  20 +type IConfigRule interface {
  21 + // GetRule 表名模板
  22 + GetRule(gameId string) *ConfigRule
  23 +}
... ...
configs/api.go 0 → 100644
... ... @@ -0,0 +1,38 @@
  1 +package configs
  2 +
  3 +import (
  4 + "apigame/common/svconfig"
  5 + "apigame/common/svconst"
  6 + "apigame/service/constd"
  7 + "fmt"
  8 +)
  9 +
  10 +type ApiGameConfig struct {
  11 + AppId string `json:"appid"`
  12 + GameId string `json:"gameid"`
  13 + Secret string `json:"secret"`
  14 + AppKey string `json:"appkey"`
  15 + Name string `json:"name"`
  16 +}
  17 +
  18 +func (c *ApiGameConfig) GetRule(gameId string) *svconfig.ConfigRule {
  19 + tableName := constd.MYSQL_TABLE_S_CARDHOLDER_CONFIG
  20 + return &svconfig.ConfigRule{
  21 + DbMysql: svconst.DbApi,
  22 + TableNameTemplate: svconfig.MYSQL_TABLE_TEMPLATE,
  23 + TableName: tableName + gameId,
  24 + CacheKey: fmt.Sprintf("%s::%s::%s", svconfig.REDIS_CACHEP_REFIX, tableName, gameId),
  25 + CacheTime: 300,
  26 + }
  27 +}
  28 +
  29 +func (c *ApiGameConfig) ReadFromMysql(gameId string) *ApiGameConfig {
  30 + rule := c.GetRule(gameId)
  31 +
  32 +}
  33 +
  34 +func GetApiGameConfig(gameId string) (config *ApiGameConfig, err error) {
  35 + //rds := zredis.GetConn()
  36 + //zredis.HGetData(rds, player)
  37 + return
  38 +}
... ...
configs/index.go 0 → 100644
... ... @@ -0,0 +1,16 @@
  1 +package configs
  2 +
  3 +import "apigame/common/svconfig"
  4 +
  5 +func Init() bool {
  6 +
  7 + return true
  8 +}
  9 +
  10 +func GetConfigRedis[T svconfig.IConfigRule](gameId string) {
  11 +
  12 +}
  13 +
  14 +func GetConfigMysql[T svconfig.IConfigRule](gameId string) {
  15 +
  16 +}
... ...
configs/registry.go 0 → 100644
... ... @@ -0,0 +1 @@
  1 +package configs
... ...
main.go
1 1 package main
2 2  
3 3 import (
  4 + "apigame/common/svconfig"
4 5 "apigame/common/svconst"
5 6 "apigame/common/svdto"
6 7 "apigame/common/svlog"
7 8 "apigame/common/svmysql"
8 9 "apigame/common/svredis"
  10 + "apigame/configs"
9 11 _ "apigame/routers"
10 12 "apigame/service/cardholder"
11 13 "github.com/astaxie/beego"
... ... @@ -57,6 +59,13 @@ func Init() {
57 59 //
58 60 //_ = config.InitLxLimit()
59 61  
  62 + if !svconfig.Init() {
  63 + return
  64 + }
  65 + if !configs.Init() {
  66 + return
  67 + }
  68 +
60 69 svdto.Init()
61 70  
62 71 // 初始化配置
... ...
util/zredis/kv.go
... ... @@ -17,3 +17,13 @@ func Increment(key string) int64 {
17 17 }
18 18 return 0
19 19 }
  20 +
  21 +func Set(conn redis.Conn, key, value string) (err error) {
  22 + _, err = conn.Do("Set", key, value)
  23 + return
  24 +}
  25 +
  26 +func Get(conn redis.Conn, key string) (value string, err error) {
  27 + value, err = redis.String(conn.Do("Get", "name"))
  28 + return
  29 +}
... ...