|
@@ -1,15 +1,18 @@
|
|
package controller
|
|
package controller
|
|
|
|
|
|
import (
|
|
import (
|
|
- "errors"
|
|
|
|
"fmt"
|
|
"fmt"
|
|
|
|
+ "ktogame/dbUtil"
|
|
"ktogame/models"
|
|
"ktogame/models"
|
|
"strings"
|
|
"strings"
|
|
|
|
|
|
|
|
+ "github.com/astaxie/beego/logs"
|
|
|
|
+
|
|
"github.com/go-xorm/xorm"
|
|
"github.com/go-xorm/xorm"
|
|
)
|
|
)
|
|
|
|
|
|
func UpdateSuperiorsPerformance(engine *xorm.Engine, superiorsStr string, amount float64) error {
|
|
func UpdateSuperiorsPerformance(engine *xorm.Engine, superiorsStr string, amount float64) error {
|
|
|
|
+ logs.Info("into UpdateSuperiorsPerformance:", superiorsStr, amount)
|
|
ids := strings.Split(superiorsStr, ",")
|
|
ids := strings.Split(superiorsStr, ",")
|
|
if len(ids) <= 0 {
|
|
if len(ids) <= 0 {
|
|
return nil
|
|
return nil
|
|
@@ -44,6 +47,7 @@ func UpdateSuperiorsPerformance(engine *xorm.Engine, superiorsStr string, amount
|
|
continue
|
|
continue
|
|
}
|
|
}
|
|
if !ok {
|
|
if !ok {
|
|
|
|
+ logs.Info("%v not exist!", super.Addr)
|
|
continue
|
|
continue
|
|
}
|
|
}
|
|
|
|
|
|
@@ -57,6 +61,7 @@ func UpdateSuperiorsPerformance(engine *xorm.Engine, superiorsStr string, amount
|
|
continue
|
|
continue
|
|
}
|
|
}
|
|
if !ok {
|
|
if !ok {
|
|
|
|
+ logs.Info("%v not exist!", per.Addr)
|
|
continue
|
|
continue
|
|
}
|
|
}
|
|
super.MarketNum += 1
|
|
super.MarketNum += 1
|
|
@@ -85,7 +90,7 @@ func UpdateSuperiorsPerformance(engine *xorm.Engine, superiorsStr string, amount
|
|
per.PerformanceRewards += rewards //user add rewards to PerformanceRewards
|
|
per.PerformanceRewards += rewards //user add rewards to PerformanceRewards
|
|
per.PerformanceLevel = level
|
|
per.PerformanceLevel = level
|
|
//update available
|
|
//update available
|
|
- err := UpdateAvailableRewards(engine, rewards, super.Addr, false, false)
|
|
|
|
|
|
+ err := UpdateAvailableRewards(rewards, super.Addr, false, false)
|
|
if err != nil {
|
|
if err != nil {
|
|
return err
|
|
return err
|
|
}
|
|
}
|
|
@@ -102,11 +107,12 @@ func UpdateSuperiorsPerformance(engine *xorm.Engine, superiorsStr string, amount
|
|
if err != nil {
|
|
if err != nil {
|
|
return err
|
|
return err
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+ logs.Info("into UpdateSuperiorsPerformance end:", rp)
|
|
return nil
|
|
return nil
|
|
}
|
|
}
|
|
|
|
|
|
func UpdateRewardsPool(engine *xorm.Engine, amount float64) error {
|
|
func UpdateRewardsPool(engine *xorm.Engine, amount float64) error {
|
|
|
|
+ logs.Info("into UpdateRewardsPool:", amount)
|
|
var rp models.RewardsPool
|
|
var rp models.RewardsPool
|
|
rp.TeamPerformance = amount * 0.15
|
|
rp.TeamPerformance = amount * 0.15
|
|
rp.TeamCultivate = amount * 0.10
|
|
rp.TeamCultivate = amount * 0.10
|
|
@@ -115,18 +121,21 @@ func UpdateRewardsPool(engine *xorm.Engine, amount float64) error {
|
|
if err != nil {
|
|
if err != nil {
|
|
return err
|
|
return err
|
|
}
|
|
}
|
|
|
|
+ logs.Info("UpdateRewardsPool end:", rp)
|
|
return nil
|
|
return nil
|
|
}
|
|
}
|
|
|
|
|
|
-func UpdateAvailableRewards(engine *xorm.Engine, rewards float64, uaddr string, join, isdirect bool) error {
|
|
|
|
|
|
+func UpdateAvailableRewards(rewards float64, uaddr string, join, isdirect bool) error {
|
|
|
|
+ logs.Info("into UpdateAvailableRewards:", rewards, uaddr, join, isdirect)
|
|
a_rewards := rewards * 60 / 100
|
|
a_rewards := rewards * 60 / 100
|
|
a_reinput := rewards * 40 / 100
|
|
a_reinput := rewards * 40 / 100
|
|
var user models.UserInfo
|
|
var user models.UserInfo
|
|
- ok, err := engine.Id(uaddr).Get(&user)
|
|
|
|
|
|
+ ok, err := dbUtil.Engine.Id(uaddr).Get(&user)
|
|
if err != nil {
|
|
if err != nil {
|
|
return err
|
|
return err
|
|
}
|
|
}
|
|
if !ok {
|
|
if !ok {
|
|
|
|
+ logs.Info("%v not exist!", uaddr)
|
|
return nil
|
|
return nil
|
|
}
|
|
}
|
|
user.AvailableClaim = a_rewards
|
|
user.AvailableClaim = a_rewards
|
|
@@ -135,29 +144,33 @@ func UpdateAvailableRewards(engine *xorm.Engine, rewards float64, uaddr string,
|
|
if isdirect {
|
|
if isdirect {
|
|
user.DirectNumber += 1
|
|
user.DirectNumber += 1
|
|
user.DirectRewards += rewards
|
|
user.DirectRewards += rewards
|
|
- _, err = engine.ID(user.Addr).Cols("available_claim,available_reinput,direct_number,direct_rewards").Update(&user)
|
|
|
|
|
|
+ logs.Info("check direct info=====:", rewards, a_rewards, a_reinput, user.AvailableClaim, user.AvailableReinput, user.DirectNumber, user.DirectRewards)
|
|
|
|
+ _, err := dbUtil.Engine.ID(user.Addr).Cols("available_claim,available_reinput,direct_number,direct_rewards").Update(&user)
|
|
if err != nil {
|
|
if err != nil {
|
|
return err
|
|
return err
|
|
}
|
|
}
|
|
-
|
|
|
|
} else {
|
|
} else {
|
|
user.IndirectNumber += 1
|
|
user.IndirectNumber += 1
|
|
user.IndirectRewards += rewards
|
|
user.IndirectRewards += rewards
|
|
- _, err = engine.ID(user.Addr).Cols("available_claim,available_reinput,indirect_number,indirect_rewards").Update(&user)
|
|
|
|
|
|
+ logs.Info("check indirect info=====:", rewards, a_rewards, a_reinput, user.AvailableClaim, user.AvailableReinput, user.DirectNumber, user.DirectRewards)
|
|
|
|
+ _, err := dbUtil.Engine.ID(user.Addr).Cols("available_claim,available_reinput,indirect_number,indirect_rewards").Update(&user)
|
|
if err != nil {
|
|
if err != nil {
|
|
return err
|
|
return err
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
- _, err = engine.ID(user.Addr).Cols("available_claim,available_reinput").Update(&user)
|
|
|
|
|
|
+ logs.Info("check else info=====:", user.AvailableClaim, user.AvailableReinput)
|
|
|
|
+ _, err := dbUtil.Engine.ID(user.Addr).Cols("available_claim,available_reinput").Update(&user)
|
|
if err != nil {
|
|
if err != nil {
|
|
return err
|
|
return err
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ logs.Info("into UpdateAvailableRewards end:", user)
|
|
return nil
|
|
return nil
|
|
}
|
|
}
|
|
|
|
|
|
func UpdateCommunityGift(engine *xorm.Engine, amount float64, uaddr string) error {
|
|
func UpdateCommunityGift(engine *xorm.Engine, amount float64, uaddr string) error {
|
|
|
|
+ logs.Info("into UpdateCommunityGift:", amount, uaddr)
|
|
var user, tmpUser models.UserInfo
|
|
var user, tmpUser models.UserInfo
|
|
ok, err := engine.Id(uaddr).Get(&user)
|
|
ok, err := engine.Id(uaddr).Get(&user)
|
|
if err != nil {
|
|
if err != nil {
|
|
@@ -172,7 +185,8 @@ func UpdateCommunityGift(engine *xorm.Engine, amount float64, uaddr string) erro
|
|
return err
|
|
return err
|
|
}
|
|
}
|
|
if !ok {
|
|
if !ok {
|
|
- return errors.New("engine get info failed")
|
|
|
|
|
|
+ logs.Info("%v not exist!", uaddr)
|
|
|
|
+ return nil
|
|
}
|
|
}
|
|
|
|
|
|
var leftNum, rightNum int64
|
|
var leftNum, rightNum int64
|
|
@@ -188,7 +202,7 @@ func UpdateCommunityGift(engine *xorm.Engine, amount float64, uaddr string) erro
|
|
}
|
|
}
|
|
|
|
|
|
rewards := amount * (float64(leftNum+rightNum) / 100)
|
|
rewards := amount * (float64(leftNum+rightNum) / 100)
|
|
- err = UpdateAvailableRewards(engine, rewards, user.Addr, false, false)
|
|
|
|
|
|
+ err = UpdateAvailableRewards(rewards, user.Addr, false, false)
|
|
if err != nil {
|
|
if err != nil {
|
|
return err
|
|
return err
|
|
}
|
|
}
|
|
@@ -206,11 +220,12 @@ func UpdateCommunityGift(engine *xorm.Engine, amount float64, uaddr string) erro
|
|
if err != nil {
|
|
if err != nil {
|
|
return err
|
|
return err
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+ logs.Info("into UpdateCommunityGift end:", amount, uaddr)
|
|
return nil
|
|
return nil
|
|
}
|
|
}
|
|
|
|
|
|
func UpdateCommunityNodes(engine *xorm.Engine, amount float64) error {
|
|
func UpdateCommunityNodes(engine *xorm.Engine, amount float64) error {
|
|
|
|
+ logs.Info("into UpdateCommunityNodes:", amount)
|
|
var nodes []models.UserInfo
|
|
var nodes []models.UserInfo
|
|
err := engine.Where("state = ?", CommunityUsers).Find(&nodes)
|
|
err := engine.Where("state = ?", CommunityUsers).Find(&nodes)
|
|
if err != nil {
|
|
if err != nil {
|
|
@@ -221,16 +236,18 @@ func UpdateCommunityNodes(engine *xorm.Engine, amount float64) error {
|
|
}
|
|
}
|
|
rewards := (amount * 5 / 100) / float64(len(nodes))
|
|
rewards := (amount * 5 / 100) / float64(len(nodes))
|
|
for _, node := range nodes {
|
|
for _, node := range nodes {
|
|
- err = UpdateAvailableRewards(engine, rewards, node.Addr, false, false)
|
|
|
|
|
|
+ err = UpdateAvailableRewards(rewards, node.Addr, false, false)
|
|
if err != nil {
|
|
if err != nil {
|
|
fmt.Println(err)
|
|
fmt.Println(err)
|
|
continue
|
|
continue
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ logs.Info("into UpdateCommunityNodes end:", amount)
|
|
return nil
|
|
return nil
|
|
}
|
|
}
|
|
|
|
|
|
func UpdateMarket(engine *xorm.Engine, amount float64) error {
|
|
func UpdateMarket(engine *xorm.Engine, amount float64) error {
|
|
|
|
+ logs.Info("into UpdateMarket:", amount)
|
|
var pers []models.Performance
|
|
var pers []models.Performance
|
|
err := engine.Where("market_num >= ?", 2).Find(&pers)
|
|
err := engine.Where("market_num >= ?", 2).Find(&pers)
|
|
if err != nil {
|
|
if err != nil {
|
|
@@ -262,7 +279,7 @@ func UpdateMarket(engine *xorm.Engine, amount float64) error {
|
|
per.MarketRewards += rewards //user add rewards to PerformanceRewards
|
|
per.MarketRewards += rewards //user add rewards to PerformanceRewards
|
|
per.MarketLevel = level
|
|
per.MarketLevel = level
|
|
//update available
|
|
//update available
|
|
- err := UpdateAvailableRewards(engine, rewards, per.Addr, false, false)
|
|
|
|
|
|
+ err := UpdateAvailableRewards(rewards, per.Addr, false, false)
|
|
if err != nil {
|
|
if err != nil {
|
|
return err
|
|
return err
|
|
}
|
|
}
|
|
@@ -278,5 +295,6 @@ func UpdateMarket(engine *xorm.Engine, amount float64) error {
|
|
if err != nil {
|
|
if err != nil {
|
|
return err
|
|
return err
|
|
}
|
|
}
|
|
|
|
+ logs.Info("into UpdateMarket end:", amount)
|
|
return nil
|
|
return nil
|
|
}
|
|
}
|