component.go 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. // 导入所有配置
  2. package data
  3. import (
  4. mhayaDataConfig "github.com/mhaya/components/data-config"
  5. mhayaMapStructure "github.com/mhaya/extend/mapstructure"
  6. "github.com/mhaya/game/game_cluster/internal/types"
  7. )
  8. var (
  9. ChannelConfig = &channelConfig{}
  10. PlatformConfig = &platformConfig{}
  11. AchieveTaskConfig = &achieveTaskConfig{}
  12. DailyTaskConfig = &dailyTaskConfig{}
  13. DiscreteRuleConfig = &discreteRuleConfig{}
  14. DrawConfig = &drawConfig{}
  15. ItemConfig = &itemConfig{}
  16. LevelConfig = &levelConfig{}
  17. RankConfig = &rankConfig{}
  18. RankRewardConfig = &rankRewardConfig{}
  19. SdkConfig = &sdkConfig{}
  20. WeeklySignInConfig = &weeklySignInConfig{}
  21. CodeConfig = &codeConfig{}
  22. )
  23. func New() *mhayaDataConfig.Component {
  24. dataConfig := mhayaDataConfig.New()
  25. dataConfig.Register(
  26. ChannelConfig,
  27. PlatformConfig,
  28. AchieveTaskConfig,
  29. DailyTaskConfig,
  30. DiscreteRuleConfig,
  31. DrawConfig,
  32. ItemConfig,
  33. LevelConfig,
  34. RankConfig,
  35. RankRewardConfig,
  36. SdkConfig,
  37. WeeklySignInConfig,
  38. CodeConfig,
  39. )
  40. return dataConfig
  41. }
  42. func DecodeData(input interface{}, output interface{}) error {
  43. return mhayaMapStructure.HookDecode(
  44. input,
  45. output,
  46. "json",
  47. types.GetDecodeHooks(),
  48. )
  49. }