app.go 895 B

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