印度包网
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.

52 lines
1.1 KiB

1 year ago
package statistics
import (
"server/modules/backend/app"
"server/modules/backend/models"
utils "server/modules/backend/util"
"server/modules/backend/values"
"github.com/gin-gonic/gin"
)
// 用户牌局分析
func PlayGameData(c *gin.Context) {
a := app.NewApp(c)
defer func() {
a.Response()
}()
req := new(values.PlayDataReq)
if !a.S(req) {
return
}
resp := values.PlayGameDataResp{}
su, eu := utils.GetQueryUnix(req.Start, req.End)
var oneDay int64 = 24 * 60 * 60
for i := su; i < eu; i += oneDay {
resp.List = append(resp.List, getPlayData(i, i+oneDay, req.Channel))
}
a.Data = resp
}
func getPlayData(s, e int64, channel *int) values.PlayDataInfo {
ret := values.PlayDataInfo{}
// 日期
ret.Date = s
ret.PlayerGameData = getPlayerGameData(s, e, channel, nil)
return ret
}
func getPlayerGameData(s, e int64, channel *int, gameId *int) values.PlayerGameData {
var res values.PlayerGameData
res.PlayerCount = models.GetPlayerCount(&s, &e, channel, gameId, nil)
res.GameCount = models.GetGameTotal(&s, &e, channel, gameId, nil, nil)
return res
}