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.
90 lines
3.4 KiB
90 lines
3.4 KiB
package statistics |
|
|
|
import ( |
|
"fmt" |
|
"server/common" |
|
"server/modules/backend/app" |
|
"server/modules/backend/models" |
|
"server/modules/backend/values" |
|
|
|
"github.com/gin-gonic/gin" |
|
) |
|
|
|
func RealDataBalanceMillionGame(c *gin.Context) { |
|
a := app.NewApp(c) |
|
defer func() { |
|
a.Response() |
|
}() |
|
|
|
req := new(values.RealBalanceDataMillionGameReq) |
|
if !a.S(req) { |
|
return |
|
} |
|
|
|
resp := values.RealBalanceDataMillionGameResp{} |
|
|
|
// su, eu := utils.GetQueryUnix(req.Start, req.End) |
|
|
|
// for i := 0; i < len(common.MillionGameIDs); i++ { |
|
// MillionGameID := common.MillionGameIDs[i].(int) |
|
// resp.List = append(resp.List, getBalanceDataMillionGame(&su, &eu, req.Channel, &MillionGameID)) |
|
// } |
|
|
|
a.Data = resp |
|
} |
|
|
|
func getBalanceDataMillionGame(su, eu *int64, channel, gameId *int) values.BalanceDataMillionGame { |
|
var balanceDataMillionGame values.BalanceDataMillionGame |
|
currencyEventGameSettle := int(common.CurrencyEventGameSettle) |
|
balanceDataMillionGame.GameId = *gameId |
|
|
|
OnlineData := models.GetOnlineByGameId(*gameId) |
|
for _, value := range OnlineData { |
|
balanceDataMillionGame.Online += value.Total |
|
balanceDataMillionGame.OnlineNew += value.New |
|
} |
|
|
|
// balanceDataMillionGame.Active = models.GetMillionPlayerCount(su, eu, channel, gameId, nil) |
|
// balanceDataMillionGame.TableFee = models.GetMillionFee(su, eu, channel, gameId, nil) |
|
balanceDataMillionGame.Profit = models.GetProfit(su, eu, channel, gameId, nil, ¤cyEventGameSettle, nil) |
|
|
|
/*for i := 0; i < len(common.RoomIDs); i++ { |
|
// 百人游戏只有两个房间 |
|
if i > 1 { |
|
continue |
|
} |
|
balanceDataMillionGame.RoomDetail = append(balanceDataMillionGame.RoomDetail, getBalanceDataMillionGameRoom(su, eu, channel, gameId, &common.RoomIDs[i])) |
|
}*/ |
|
// balanceDataMillionGame.RoomDetail = append(balanceDataMillionGame.RoomDetail, getBalanceDataMillionGameRoom(su, eu, channel, gameId, &common.RoomIDs[0])) |
|
|
|
return balanceDataMillionGame |
|
} |
|
|
|
func getBalanceDataMillionGameRoom(su, eu *int64, channel, gameId, roomId *int) values.BalanceDataMillionGameRoom { |
|
var millionGameRoom values.BalanceDataMillionGameRoom |
|
currencyEventGameSettle := int(common.CurrencyEventGameSettle) |
|
|
|
millionGameRoom.RoomId = *roomId |
|
// millionGameRoom.GameCount = models.GetMillionGameCount(su, eu, channel, gameId, roomId) |
|
// millionGameRoom.BetAmount = models.GetMillionGameBet(su, eu, channel, gameId, roomId, nil) |
|
millionGameRoom.Profit = models.GetProfit(su, eu, channel, gameId, roomId, ¤cyEventGameSettle, nil) |
|
// millionGameRoom.Active = models.GetMillionPlayerCount(su, eu, channel, gameId, roomId) |
|
|
|
// res := common.GetMillionResultByGameId(*gameId) |
|
// for i := 0; i < len(res); i++ { |
|
// millionGameRoom.Detail = append(millionGameRoom.Detail, getMillionGameDetail(su, eu, channel, gameId, roomId, &res[i])) |
|
// } |
|
return millionGameRoom |
|
} |
|
|
|
func getMillionGameDetail(su, eu *int64, channel, gameId, roomId, result *int) values.MillionGameDetail { |
|
var millionGameDetail values.MillionGameDetail |
|
|
|
millionGameDetail.Result = fmt.Sprintf("%d", *result) |
|
// millionGameDetail.BetAmount = models.GetMillionGameBet(su, eu, channel, gameId, roomId, result) |
|
// millionGameDetail.BetCount = models.GetMillionGameBetCount(su, eu, channel, gameId, roomId, result) |
|
// millionGameDetail.WinCount = models.GetMillionGameWinCount(su, eu, channel, gameId, roomId, result) |
|
// millionGameDetail.Profit = models.GetMillionGameAreaProfit(su, eu, channel, gameId, roomId, result) |
|
|
|
return millionGameDetail |
|
}
|
|
|