蛋蛋星球 后台端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

md_basic.go 9.0 KiB

2 weeks ago
2 weeks ago
2 weeks ago
2 weeks ago
2 weeks ago
2 weeks ago
2 weeks ago
2 weeks ago
1 week ago
3 weeks ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. package md
  2. import (
  3. "code.fnuoos.com/EggPlanet/egg_system_rules.git/rule/egg_energy/md"
  4. )
  5. const (
  6. ExecutionInterval = 10 // 结算执行间隔
  7. )
  8. type VirtualCoin struct {
  9. Id int `json:"id" `
  10. Name string `json:"name" ` // 名称
  11. ExchangeRatio string `json:"exchange_ratio" example:"兑换比例(与金额)"` // 兑换比例(与金额)
  12. IsUse int `json:"is_use" ` // 是否开启: 0否 1是
  13. CreateAt string `json:"create_at" `
  14. UpdateAt string `json:"update_at" `
  15. }
  16. // BasicSetting 基础设置
  17. type BasicSetting struct {
  18. IsOpen int `json:"is_open" ` // 是否开启(1:开启 0:关闭)
  19. PersonEggEnergyCoinId int `json:"person_egg_energy_coin_id" ` // 个人蛋蛋能量对应虚拟币 id
  20. TeamEggEnergyCoinId int `json:"team_egg_energy_coin_id" ` // 团队蛋蛋能量对应虚拟币 id
  21. PersonEggPointsCoinId int `json:"person_egg_points_coin_id" ` // 个人蛋蛋积分对应虚拟币 id
  22. TeamEggPointsCoinId int `json:"team_egg_points_coin_id" ` // 团队蛋蛋积分对应虚拟币 id
  23. DirectPushReward md.DirectPushRewardSettingStruct `json:"direct_push_reward"` // 直推奖励
  24. }
  25. // VideoRewardSetting 视频奖励
  26. type VideoRewardSetting struct {
  27. VideoRewardIsOpen int `json:"video_reward_is_open" ` // 视频奖励是否开启(1:开启 0:关闭)
  28. VideoRewardSystem md.VideoRewardSystemStruct `json:"video_reward_system"` // 视频奖励机制
  29. }
  30. // DataSetting 数据设置
  31. type DataSetting struct {
  32. TotalIssuanceAmount string `json:"total_issuance_amount" example:"总发行量"` // 总发行量
  33. TotalTechnologyTeam string `json:"total_technology_team" example:"技术团队"` // 技术团队
  34. TotalAngelInvestor string `json:"total_angel_investor" example:"天使投资人"` // 天使投资人
  35. TotalOperateFund string `json:"total_operate_fund" example:"运营资金"` // 运营资金
  36. TotalEcologicalDevelopment string `json:"total_ecological_development" example:"当前价格"` // 生态建设
  37. TotalTeamDividends string `json:"total_team_dividends" example:"团队分红"` // 团队分红
  38. TotalUserForPerson string `json:"total_user_for_person" example:"个人区域"` // 个人区域
  39. TotalUserForTeam string `json:"total_user_for_team" example:"团队区域"` // 团队区域
  40. }
  41. type GetEggEnergyBasicResp struct {
  42. BasicSetting BasicSetting `json:"basic_setting"` // 基础设置
  43. VideoRewardSetting VideoRewardSetting `json:"video_reward_setting"` // 视频奖励
  44. DataSetting DataSetting `json:"data_setting"` // 数据设置
  45. DestructionSetting md.DestructionSettingStruct `json:"destruction_setting"` // 销毁设置
  46. PriceSetting md.PriceSettingStruct `json:"price_setting"` // 价格设置
  47. ExchangeRules md.ExchangeRulesStruct `json:"exchange_rules"` // 兑换规则
  48. RewardSystem []md.RewardSystemStruct `json:"reward_system"` // 圈层奖励
  49. NewUserIncentiveRules md.NewUserRewardRules `json:"new_user_incentive_rules"` // 新用户奖励规则
  50. SystemID int `json:"system_id"` // 该设置系统 ID
  51. }
  52. type UpdateEggEnergyBasicReq struct {
  53. SystemID int `json:"system_id,required"` // 该设置系统 ID
  54. BasicSetting BasicSetting `json:"basic_setting"` // 基础设置
  55. VideoRewardSetting VideoRewardSetting `json:"video_reward_setting"` // 视频奖励
  56. DataSetting DataSetting `json:"data_setting"` // 数据设置
  57. DestructionSetting md.DestructionSettingStruct `json:"destruction_setting"` // 销毁设置
  58. PriceSetting md.PriceSettingStruct `json:"price_setting"` // 价格设置
  59. ExchangeRules md.ExchangeRulesStruct `json:"exchange_rules"` // 兑换规则
  60. RewardSystem []md.RewardSystemStruct `json:"reward_system"` // 圈层奖励
  61. NewUserIncentiveRules md.NewUserRewardRules `json:"new_user_incentive_rules"` // 新用户奖励规则 // 新用户奖励规则
  62. }
  63. type VipEquitySettingNode struct {
  64. VipLevelID string `json:"vip_level_id"` // 会员等级ID
  65. VipLevelName string `json:"vip_level_name"` // 会员等级名称
  66. ExchangeAccountBalanceFee string `json:"exchange_account_balance_fee"` //兑换余额手续费
  67. DividendRatio string `json:"dividend_ratio"` //分红比例
  68. }
  69. type GetEggEnergyVipSettingResp struct {
  70. LevelList []map[string]interface{} `json:"level_list"` // 会员等级列表
  71. List []VipEquitySettingNode `json:"list"` // 会员权益设置
  72. }
  73. type AddEggEnergyVipSettingReq struct {
  74. VipLevelId string `json:"vip_level_id"` //会员等级ID
  75. ExchangeAccountBalanceFee string `json:"exchange_account_balance_fee"` //兑换余额手续费
  76. DividendRatio string `json:"dividend_ratio"` //分红比例
  77. }
  78. type UpdateVipEquitySettingNode struct {
  79. VipLevelID string `json:"vip_level_id"` // 会员等级ID
  80. ExchangeAccountBalanceFee string `json:"exchange_account_balance_fee"` //兑换余额手续费
  81. DividendRatio string `json:"dividend_ratio"` //分红比例
  82. }
  83. type UpdateEggEnergyVipSettingReq struct {
  84. List []UpdateVipEquitySettingNode `json:"list"` // 更新后数据
  85. }
  86. type GetEggCoreDataListResp struct {
  87. PlanetTotalValue string `json:"planet_total_value" example:"星球价值"` // 星球价值
  88. NowPrice string `json:"now_price" example:"当前价格"` // 当前价格
  89. NowEnergyTotalNums string `json:"now_energy_total_nums" example:"现行总量"` // 现行总量
  90. UserHoldTotalNums string `json:"user_hold_total_nums"` // 用户持有总量
  91. }
  92. type GetPriceCurveResp struct {
  93. XData []interface{} `json:"x_data"`
  94. YData []interface{} `json:"y_data"`
  95. }
  96. type GetFundDataListReq struct {
  97. Kind int `json:"kind"` // 数据类型
  98. StartAt string `json:"start_at" example:"开始时间"`
  99. EndAt string `json:"end_at" example:"结束时间"`
  100. Page int `json:"page,required"` // 页数
  101. Limit int `json:"limit,required" ` // 每页大小
  102. }
  103. type FundDataNode struct {
  104. SystemID int `json:"system_id"`
  105. Kind int `json:"kind" ` //种类(1:公司补贴 2:资方投资 3:市场期望)
  106. TotalAmount string `json:"total_amount" ` // 金额
  107. BalanceAmount string `json:"balance_amount" ` // 余额
  108. Hours int `json:"hours" ` // 时长
  109. BalanceTimes int `json:"balance_times" ` // 剩余执行次数
  110. Memo string `json:"memo" ` // 备注
  111. CreateAt string `json:"create_at" ` // 创建时间
  112. }
  113. type GetFundDataListResp struct {
  114. KindList []map[string]interface{} `json:"kind_list"` // 类型列表
  115. Paginate Paginate `json:"paginate"` // 分页数据
  116. List []FundDataNode `json:"list"` // 数据列表
  117. }
  118. type GetFundDataRecordListReq struct {
  119. SystemID int `json:"system_id,required"` // 数据在系统中的 ID
  120. Page int `json:"page,required"` // 页数
  121. Limit int `json:"limit,required"` // 页面大小
  122. }
  123. type FundDataRecordNode struct {
  124. TotalAmount string `json:"total_amount" ` // 金额
  125. BalanceAmount string `json:"balance_amount" ` // 余额
  126. BalanceTimes int `json:"balance_times" ` //剩余执行次数
  127. BeforePrice string `json:"before_price" ` // 执行前-价格
  128. AfterPrice string `json:"after_price" ` // 执行后-价格
  129. BeforePlanetTotalValue string `json:"before_planet_total_value" ` // 执行前-星球价值
  130. AfterPlanetTotalValue string `json:"after_planet_total_value" ` // 执行后-星球价值
  131. CreateAt string `json:"create_at" `
  132. }
  133. type GetFundDataRecordListResp struct {
  134. List []FundDataRecordNode `json:"list"`
  135. Paginate Paginate `json:"paginate"`
  136. }
  137. type GetFundDataRecordDataListReq struct {
  138. Kind int `json:"kind"` //种类(1:公司补贴 2:资方投资 3:市场期望)
  139. StartAt string `json:"start_at"`
  140. EndAt string `json:"end_at"`
  141. Page int `json:"page"`
  142. Limit int `json:"limit"`
  143. }
  144. type AddFundDataReq struct {
  145. Kind int `json:"kind,required"` // 种类(1:公司补贴 2:资方投资 3:市场期望)
  146. TotalAmount string `json:"total_amount,required"` // 金额
  147. Hours int `json:"hours,required"` // 时长(小时)
  148. Memo string `json:"memo" example:"备注"`
  149. Frequency int `json:"frequency"` // 频率(分钟)
  150. }