component.go 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. // 导入所有配置
  2. package data
  3. import (
  4. mhayaDataConfig "github.com/mhaya/components/data-config"
  5. "github.com/mhaya/game/game_cluster/internal/types"
  6. mhayaMapStructure "github.com/mhaya/extend/mapstructure"
  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. )
  22. func New() *mhayaDataConfig.Component {
  23. dataConfig := mhayaDataConfig.New()
  24. dataConfig.Register(
  25. ChannelConfig,
  26. PlatformConfig,
  27. achieveTaskConfig,
  28. dailyTaskConfig,
  29. discreteRuleConfig,
  30. drawConfig,
  31. itemConfig,
  32. levelConfig,
  33. rankConfig,
  34. rankRewardConfig,
  35. sdkConfig,
  36. weeklySignInConfig,
  37. )
  38. return dataConfig
  39. }
  40. func DecodeData(input interface{}, output interface{}) error {
  41. return mhayaMapStructure.HookDecode(
  42. input,
  43. output,
  44. "json",
  45. types.GetDecodeHooks(),
  46. )
  47. }