app.go 909 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. package global
  2. import (
  3. "designs/utils"
  4. "github.com/go-redis/redis/v8"
  5. "go.uber.org/zap"
  6. "io"
  7. )
  8. type InitConfig struct {
  9. //InitDBFunc func() *gorm.DB
  10. InitRedisFunc func() *redis.Client
  11. }
  12. var Init = new(InitConfig)
  13. type Application struct {
  14. //配置
  15. //数据库
  16. DB *utils.WtDB
  17. Redis *redis.Client
  18. //Cron *cron.Cron
  19. //Machinery *machinery.Server
  20. //日志
  21. Log *zap.SugaredLogger
  22. LogWriter io.Writer
  23. PwdPath string
  24. }
  25. var (
  26. // DB *utils.WtDB
  27. // Redis *redis.Client
  28. Log *zap.SugaredLogger
  29. )
  30. var App = new(Application)
  31. func InitFacade() {
  32. // DB = App.DB
  33. // Redis = App.Redis
  34. Log = App.Log
  35. }
  36. //func DB() *utils.WtDB {
  37. // if App.DB != nil {
  38. // return App.DB
  39. // }
  40. //
  41. // App.DB = &utils.WtDB{DB: Init.InitDBFunc()}
  42. // return App.DB
  43. //}
  44. func Redis() *redis.Client {
  45. if App.Redis != nil {
  46. return App.Redis
  47. }
  48. App.Redis = Init.InitRedisFunc()
  49. return App.Redis
  50. }