|
@@ -17,6 +17,7 @@ func UpdateSuperiorsPerformance(engine *xorm.Engine, superiorsStr string, amount
|
|
|
if len(ids) <= 0 {
|
|
|
return nil
|
|
|
}
|
|
|
+ logs.Info("UpdateSuperiorsPerformance ids::::::", ids)
|
|
|
var supers []models.UserInfo
|
|
|
for _, sid := range ids {
|
|
|
var tmpUser models.UserInfo
|
|
@@ -29,6 +30,7 @@ func UpdateSuperiorsPerformance(engine *xorm.Engine, superiorsStr string, amount
|
|
|
}
|
|
|
supers = append(supers, tmpUser)
|
|
|
}
|
|
|
+ logs.Info("UpdateSuperiorsPerformance supers::::::%v", len(supers))
|
|
|
if len(supers) == 0 {
|
|
|
return nil
|
|
|
}
|
|
@@ -52,25 +54,24 @@ func UpdateSuperiorsPerformance(engine *xorm.Engine, superiorsStr string, amount
|
|
|
}
|
|
|
|
|
|
per.TotalPerformance += amount
|
|
|
- if per.TotalPerformance >= CommunityMarket {
|
|
|
- if per.Recorded == 0 {
|
|
|
- var super models.Performance
|
|
|
- ok, err := engine.Id(per.Addr).Get(&super)
|
|
|
- if err != nil {
|
|
|
- fmt.Println(err)
|
|
|
- continue
|
|
|
- }
|
|
|
- if !ok {
|
|
|
- logs.Info("%v not exist!", per.Addr)
|
|
|
- continue
|
|
|
- }
|
|
|
- super.MarketNum += 1
|
|
|
- _, err = engine.ID(super.Addr).Cols("markit_num").Update(&super)
|
|
|
- if err != nil {
|
|
|
- fmt.Println(err)
|
|
|
- continue
|
|
|
- }
|
|
|
- per.Recorded = 1
|
|
|
+ if per.TotalPerformance >= float64(CommunityMarket) {
|
|
|
+ var super models.Performance
|
|
|
+ ok, err := engine.Id(per.Addr).Get(&super)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ if !ok {
|
|
|
+ logs.Info("%v not exist!", per.Addr)
|
|
|
+ continue
|
|
|
+ }
|
|
|
+
|
|
|
+ super.MarketNum = int(per.TotalPerformance / float64(CommunityMarket))
|
|
|
+ logs.Debug("matket check=====,", per.Addr, per.TotalPerformance, CommunityMarket, super.MarketNum)
|
|
|
+ _, err = engine.ID(super.Addr).Cols("market_num").Update(&super)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ continue
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -81,6 +82,7 @@ func UpdateSuperiorsPerformance(engine *xorm.Engine, superiorsStr string, amount
|
|
|
break
|
|
|
}
|
|
|
}
|
|
|
+ logs.Debug("Performance check=====1,", per.Addr, rp.TeamPerformance, per.TotalPerformance, per.PerformanceRewards, level, per.PerformanceLevel)
|
|
|
if level > 0 {
|
|
|
if level > per.PerformanceLevel {
|
|
|
ratio := PerformanceRatio[level] - PerformanceRatio[per.PerformanceLevel]
|
|
@@ -90,17 +92,21 @@ func UpdateSuperiorsPerformance(engine *xorm.Engine, superiorsStr string, amount
|
|
|
per.PerformanceRewards += rewards //user add rewards to PerformanceRewards
|
|
|
per.PerformanceLevel = level
|
|
|
//update available
|
|
|
+ logs.Debug("Performance check=====2,", per.Addr, level, amount, ratio, rewards)
|
|
|
+
|
|
|
err := UpdateAvailableRewards(rewards, super.Addr, false, false)
|
|
|
if err != nil {
|
|
|
return err
|
|
|
}
|
|
|
- _, err = engine.ID(super.Addr).Cols("total_performance,performance_rewards,performance_level").Update(&per)
|
|
|
- if err != nil {
|
|
|
- return err
|
|
|
- }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ _, err = engine.ID(super.Addr).Cols("total_performance,performance_level,performance_rewards").Update(&per)
|
|
|
+ if err != nil {
|
|
|
+ return err
|
|
|
+ }
|
|
|
+ logs.Debug("Performance check=====3,", per.Addr, rp.TeamPerformance, per.TotalPerformance, per.PerformanceRewards, per.PerformanceLevel)
|
|
|
+
|
|
|
}
|
|
|
|
|
|
_, err = engine.ID(1).Cols("team_performance").Update(&rp)
|
|
@@ -114,10 +120,15 @@ func UpdateSuperiorsPerformance(engine *xorm.Engine, superiorsStr string, amount
|
|
|
func UpdateRewardsPool(engine *xorm.Engine, amount float64) error {
|
|
|
logs.Info("into UpdateRewardsPool:", amount)
|
|
|
var rp models.RewardsPool
|
|
|
- rp.TeamPerformance = amount * 0.15
|
|
|
- rp.TeamCultivate = amount * 0.10
|
|
|
+ _, err := dbUtil.Engine.Id(1).Get(&rp)
|
|
|
+ if err != nil {
|
|
|
+ return err
|
|
|
+ }
|
|
|
+
|
|
|
+ rp.TeamPerformance += amount * 0.15
|
|
|
+ rp.TeamCultivate += amount * 0.10
|
|
|
rp.TotalPool += amount
|
|
|
- _, err := engine.ID(1).Update(&rp)
|
|
|
+ _, err = engine.ID(1).Update(&rp)
|
|
|
if err != nil {
|
|
|
return err
|
|
|
}
|
|
@@ -138,8 +149,8 @@ func UpdateAvailableRewards(rewards float64, uaddr string, join, isdirect bool)
|
|
|
logs.Info("%v not exist!", uaddr)
|
|
|
return nil
|
|
|
}
|
|
|
- user.AvailableClaim = a_rewards
|
|
|
- user.AvailableReinput = a_reinput
|
|
|
+ user.AvailableClaim += a_rewards
|
|
|
+ user.AvailableReinput += a_reinput
|
|
|
if join {
|
|
|
if isdirect {
|
|
|
user.DirectNumber += 1
|
|
@@ -241,6 +252,20 @@ func UpdateCommunityNodes(engine *xorm.Engine, amount float64) error {
|
|
|
fmt.Println(err)
|
|
|
continue
|
|
|
}
|
|
|
+
|
|
|
+ var per models.Performance
|
|
|
+ _, err = engine.Id(node.Addr).Get(&per)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ continue
|
|
|
+ }
|
|
|
+
|
|
|
+ per.CommunityNode += rewards
|
|
|
+ _, err = engine.ID(node.Addr).Cols("community_node").Update(&per)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ continue
|
|
|
+ }
|
|
|
}
|
|
|
logs.Info("into UpdateCommunityNodes end:", amount)
|
|
|
return nil
|
|
@@ -270,6 +295,8 @@ func UpdateMarket(engine *xorm.Engine, amount float64) error {
|
|
|
break
|
|
|
}
|
|
|
}
|
|
|
+ logs.Debug(" UpdateMarket=====1,", per.Addr, rp.TeamCultivate, per.MarketRewards, level, per.MarketLevel)
|
|
|
+
|
|
|
if level > 0 {
|
|
|
if level > per.MarketLevel {
|
|
|
ratio := MarketRatio[level] - MarketRatio[per.MarketLevel]
|
|
@@ -279,6 +306,8 @@ func UpdateMarket(engine *xorm.Engine, amount float64) error {
|
|
|
per.MarketRewards += rewards //user add rewards to PerformanceRewards
|
|
|
per.MarketLevel = level
|
|
|
//update available
|
|
|
+ logs.Debug(" UpdateMarket=====2,", per.Addr, rewards)
|
|
|
+
|
|
|
err := UpdateAvailableRewards(rewards, per.Addr, false, false)
|
|
|
if err != nil {
|
|
|
return err
|
|
@@ -290,6 +319,8 @@ func UpdateMarket(engine *xorm.Engine, amount float64) error {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ logs.Debug(" UpdateMarket=====3,", per.Addr, rp.TeamCultivate, per.MarketRewards, level, per.MarketLevel)
|
|
|
+
|
|
|
}
|
|
|
_, err = engine.ID(1).Cols("team_performance").Update(&rp)
|
|
|
if err != nil {
|