forked from all_user/stat_center
Initial commit
This commit is contained in:
@@ -0,0 +1,127 @@
|
||||
package botreport
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"stat/common/log"
|
||||
"stat/common/mongos"
|
||||
|
||||
"go.mongodb.org/mongo-driver/bson"
|
||||
"go.mongodb.org/mongo-driver/mongo"
|
||||
"go.mongodb.org/mongo-driver/mongo/options"
|
||||
)
|
||||
|
||||
var db *mongos.MongoTool
|
||||
|
||||
func Init(ctx context.Context) {
|
||||
// 获取数据库表
|
||||
db = mongos.New(mongos.MgoManager, TN.BotReport)
|
||||
// 初始化索引
|
||||
indexes := []mongo.IndexModel{
|
||||
{
|
||||
Keys: bson.D{
|
||||
{Key: FN.BotReport.SumDate, Value: 1},
|
||||
},
|
||||
},
|
||||
}
|
||||
if _, err := db.CreateIndex(ctx, indexes); err != nil {
|
||||
panic(fmt.Sprintf("(BotReport:initBotReportIndex) Create BotReport Index failed! err:%+v:", err))
|
||||
}
|
||||
}
|
||||
|
||||
//InsertOneBotReport 插入一个VIP购买记录
|
||||
func InsertOneBotReport(ctx context.Context, BotReport *BotReport) error {
|
||||
if _, err := db.InsertOne(ctx, BotReport); err != nil {
|
||||
log.Warn("BotReport:InsertOneBotReport db.InsertOne failed", log.E(err))
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
//FindOneBotReport 查找一个VIP购买记录
|
||||
func FindOneBotReport(ctx context.Context, filter bson.M) (
|
||||
*BotReport, error) {
|
||||
var BotReport BotReport
|
||||
if err := db.FindOne(ctx, &BotReport, filter); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &BotReport, nil
|
||||
}
|
||||
|
||||
//DelOneBotReport 删除一个VIP购买记录
|
||||
func DelOneBotReport(ctx context.Context, filter bson.M) (
|
||||
int64, error) {
|
||||
count, err := db.DeleteOne(ctx, filter)
|
||||
if err != nil {
|
||||
log.Warn("BotReport:DelOneBotReport db.DeleteOne failed",
|
||||
log.E(err), log.Any("filter", filter))
|
||||
return 0, err
|
||||
}
|
||||
return count, nil
|
||||
}
|
||||
|
||||
//UpdateOneBotReport 更新一个VIP购买记录
|
||||
func UpdateOneBotReport(ctx context.Context, filter bson.M, update bson.M) error {
|
||||
_, err := db.UpdateOne(ctx, filter, update)
|
||||
if err != nil {
|
||||
log.Warn("user:UpdateOneBotReport db.UpdateOne failed",
|
||||
log.E(err), log.Any("filter", filter))
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
//CountBotReports 统计VIP购买记录数量
|
||||
func CountBotReports(ctx context.Context, filter bson.M) (
|
||||
int64, error) {
|
||||
count, err := db.Count(ctx, filter)
|
||||
if err != nil {
|
||||
log.Warn("BotReport:CountBotReports db.Count failed",
|
||||
log.E(err), log.Any("filter", filter))
|
||||
return 0, err
|
||||
}
|
||||
return count, nil
|
||||
}
|
||||
|
||||
//UpdateManyBotReport 更新满足条件的VIP购买记录
|
||||
func UpdateManyBotReport(ctx context.Context, filter bson.M, update bson.M) error {
|
||||
_, err := db.UpdateMany(ctx, filter, update)
|
||||
if err != nil {
|
||||
log.Warn("user:UpdateManyBotReport db.UpdateMany failed",
|
||||
log.E(err), log.Any("filter", filter))
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
//FindManyBotReport 查找一批VIP购买记录数据
|
||||
func FindManyBotReport(ctx context.Context, filter bson.M,
|
||||
opts ...*options.FindOptions) (BotReportList, error) {
|
||||
data := make(BotReportList, 0)
|
||||
if err := db.Find(ctx, &data, filter, opts...); err != nil {
|
||||
log.Warn("BotReport:FindManyBotReport db.Find failed", log.E(err), log.Any("filter", filter))
|
||||
return nil, err
|
||||
}
|
||||
return data, nil
|
||||
}
|
||||
|
||||
//FindManyBotReportWithBind 用自己定义结构查找一批VIP购买记录数据
|
||||
func FindManyBotReportWithBind(ctx context.Context, bind interface{}, filter bson.M,
|
||||
opts ...*options.FindOptions) error {
|
||||
if err := db.Find(ctx, bind, filter, opts...); err != nil {
|
||||
log.Warn("BotReport:FindManyBotReportWithBind db.Find failed", log.E(err), log.Any("filter", filter))
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
//AggregateBotReports 聚合查找一批VIP购买记录信息
|
||||
func AggregateBotReports(ctx context.Context,
|
||||
bind interface{}, pipeline []bson.M) error {
|
||||
if err := db.Aggregate(ctx, bind, pipeline); err != nil {
|
||||
log.Warn("feedback:AggregateBotReports db.Aggregate failed",
|
||||
log.E(err), log.Any("pipeline", pipeline))
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
Executable
+224
@@ -0,0 +1,224 @@
|
||||
package botreport
|
||||
|
||||
type TagBotReport struct {
|
||||
AccessUser string
|
||||
TodayAccessIos string
|
||||
TodayAccessAndroid string
|
||||
AppId string
|
||||
CreatedAt string
|
||||
GameDCRchgAmount string
|
||||
GameDCRchgCount string
|
||||
GameDecAmount string
|
||||
GameDecCount string
|
||||
GameFirstRchgAmount string
|
||||
GameFirstRchgCount string
|
||||
GameFirstRchgUsers string
|
||||
GameGiftIncAmount string
|
||||
GameGiftIncCount string
|
||||
GameIncAmount string
|
||||
GameInchCount string
|
||||
GamePlayCount string
|
||||
GameRchGiftIncAmount string
|
||||
GameRchGiftIncCount string
|
||||
GameRchgAmount string
|
||||
GameRchgCount string
|
||||
GameRchgUsers string
|
||||
GameVipGiftIncAmount string
|
||||
GameVipGiftIncCount string
|
||||
GameWtdrAmount string
|
||||
GameWtdrCount string
|
||||
GameWtdrRealAmount string
|
||||
HourAndroidNew string
|
||||
HourAndroidNewRecharge string
|
||||
HourAndroidRecharge string
|
||||
HourDistrictRecharge string
|
||||
HourDistrictVip string
|
||||
HourH5New string
|
||||
HourH5NewRecharge string
|
||||
HourH5Recharge string
|
||||
HourIosNew string
|
||||
HourIosNewRecharge string
|
||||
HourIosRecharge string
|
||||
HourNew string
|
||||
HourNewDistrict string
|
||||
HourNewNormal string
|
||||
HourNewRecharge string
|
||||
HourNewWeb string
|
||||
HourNormalRecharge string
|
||||
HourNormalVip string
|
||||
HourOldRecharge string
|
||||
HourOrder string
|
||||
HourRecharge string
|
||||
HourSuccessOrder string
|
||||
HourVipRecharge string
|
||||
HourWebRecharge string
|
||||
HourWebVip string
|
||||
ID string
|
||||
Profit string
|
||||
Revenue string
|
||||
SumDate string
|
||||
TodayAccessH5 string
|
||||
TodayAndroidNew string
|
||||
TodayAndroidNewRecharge string
|
||||
TodayAndroidRecharge string
|
||||
TodayDistrictRecharge string
|
||||
TodayDistrictVip string
|
||||
TodayH5New string
|
||||
TodayH5NewRecharge string
|
||||
TodayH5Recharge string
|
||||
TodayIosNew string
|
||||
TodayIosNewRecharge string
|
||||
TodayIosRecharge string
|
||||
TodayNew string
|
||||
TodayNewDistrict string
|
||||
TodayNewNormal string
|
||||
TodayNewRecharge string
|
||||
TodayNewWeb string
|
||||
TodayNormalRecharge string
|
||||
TodayNormalVip string
|
||||
TodayOldRecharge string
|
||||
TodayOrder string
|
||||
TodayRecharge string
|
||||
TodaySuccessOrder string
|
||||
TodayVipRecharge string
|
||||
TodayWebRecharge string
|
||||
TodayWebVip string
|
||||
ValidBet string
|
||||
TodayAccessH5Pc string
|
||||
TodayAccessH5Ios string
|
||||
TodayAccessH5Android string
|
||||
TodayH5PcNew string
|
||||
TodayH5IosNew string
|
||||
TodayH5AndroidNew string
|
||||
TodayH5PcRecharge string
|
||||
TodayH5IosRecharge string
|
||||
TodayH5AndroidRecharge string
|
||||
TodayH5PcNewRecharge string
|
||||
TodayH5IosNewRecharge string
|
||||
TodayH5AndroidNewRecharge string
|
||||
HourH5PcNew string
|
||||
HourH5IosNew string
|
||||
HourH5AndroidNew string
|
||||
HourH5PcRecharge string
|
||||
HourH5IosRecharge string
|
||||
HourH5AndroidRecharge string
|
||||
HourH5PcNewRecharge string
|
||||
HourH5IosNewRecharge string
|
||||
HourH5AndroidNewRecharge string
|
||||
}
|
||||
|
||||
var FN struct {
|
||||
BotReport TagBotReport
|
||||
}
|
||||
|
||||
var TN struct {
|
||||
BotReport string
|
||||
}
|
||||
|
||||
func init() {
|
||||
FN.BotReport.AccessUser = "accessUser"
|
||||
FN.BotReport.AppId = "appId"
|
||||
FN.BotReport.CreatedAt = "createdAt"
|
||||
FN.BotReport.GameDCRchgAmount = "gameDCRchgAmount"
|
||||
FN.BotReport.GameDCRchgCount = "gameDCRchgCount"
|
||||
FN.BotReport.GameDecAmount = "gameDecAmount"
|
||||
FN.BotReport.GameDecCount = "gameDecCount"
|
||||
FN.BotReport.GameFirstRchgAmount = "gameFirstRchgAmount"
|
||||
FN.BotReport.GameFirstRchgCount = "gameFirstRchgCount"
|
||||
FN.BotReport.GameFirstRchgUsers = "gameFirstRchgUsers"
|
||||
FN.BotReport.GameGiftIncAmount = "gameGiftIncAmount"
|
||||
FN.BotReport.GameGiftIncCount = "gameGiftIncCount"
|
||||
FN.BotReport.GameIncAmount = "gameIncAmount"
|
||||
FN.BotReport.GameInchCount = "gameInchCount"
|
||||
FN.BotReport.GamePlayCount = "gamePlayCount"
|
||||
FN.BotReport.GameRchGiftIncAmount = "gameRchGiftIncAmount"
|
||||
FN.BotReport.GameRchGiftIncCount = "gameRchGiftIncCount"
|
||||
FN.BotReport.GameRchgAmount = "gameRchgAmount"
|
||||
FN.BotReport.GameRchgCount = "gameRchgCount"
|
||||
FN.BotReport.GameRchgUsers = "gameRchgUsers"
|
||||
FN.BotReport.GameVipGiftIncAmount = "gameVipGiftIncAmount"
|
||||
FN.BotReport.GameVipGiftIncCount = "gameVipGiftIncCount"
|
||||
FN.BotReport.GameWtdrAmount = "gameWtdrAmount"
|
||||
FN.BotReport.GameWtdrCount = "gameWtdrCount"
|
||||
FN.BotReport.GameWtdrRealAmount = "gameWtdrRealAmount"
|
||||
FN.BotReport.HourAndroidNew = "hourAndroidNew"
|
||||
FN.BotReport.HourAndroidNewRecharge = "hourAndroidNewRecharge"
|
||||
FN.BotReport.HourAndroidRecharge = "hourAndroidRecharge"
|
||||
FN.BotReport.HourDistrictRecharge = "hourDistrictRecharge"
|
||||
FN.BotReport.HourDistrictVip = "hourDistrictVip"
|
||||
FN.BotReport.HourH5New = "hourH5New"
|
||||
FN.BotReport.HourH5NewRecharge = "HourH5NewRecharge"
|
||||
FN.BotReport.HourH5Recharge = "HourH5Recharge"
|
||||
FN.BotReport.HourIosNew = "hourIosNew"
|
||||
FN.BotReport.HourIosNewRecharge = "hourIosNewRecharge"
|
||||
FN.BotReport.HourIosRecharge = "hourIosRecharge"
|
||||
FN.BotReport.HourNew = "hourNew"
|
||||
FN.BotReport.HourNewDistrict = "hourNewDistrict"
|
||||
FN.BotReport.HourNewNormal = "hourNewNormal"
|
||||
FN.BotReport.HourNewRecharge = "hourNewRecharge"
|
||||
FN.BotReport.HourNewWeb = "hourNewWeb"
|
||||
FN.BotReport.HourNormalRecharge = "hourNormalRecharge"
|
||||
FN.BotReport.HourNormalVip = "hourNormalVip"
|
||||
FN.BotReport.HourOldRecharge = "hourOldRecharge"
|
||||
FN.BotReport.HourOrder = "hourOrder"
|
||||
FN.BotReport.HourRecharge = "hourRecharge"
|
||||
FN.BotReport.HourSuccessOrder = "hourSuccessOrder"
|
||||
FN.BotReport.HourVipRecharge = "hourVipRecharge"
|
||||
FN.BotReport.HourWebRecharge = "hourWebRecharge"
|
||||
FN.BotReport.HourWebVip = "hourWeVip"
|
||||
FN.BotReport.ID = "_id"
|
||||
FN.BotReport.Profit = "profit"
|
||||
FN.BotReport.Revenue = "revenue"
|
||||
FN.BotReport.SumDate = "sumDate"
|
||||
FN.BotReport.TodayAccessH5 = "todayAccessH5"
|
||||
FN.BotReport.TodayAndroidNew = "todayAndroidNew"
|
||||
FN.BotReport.TodayAndroidNewRecharge = "todayAndroidNewRecharge"
|
||||
FN.BotReport.TodayAndroidRecharge = "todayAndroidRecharge"
|
||||
FN.BotReport.TodayDistrictRecharge = "todayDistrictRecharge"
|
||||
FN.BotReport.TodayDistrictVip = "todayDistrictVip"
|
||||
FN.BotReport.TodayH5New = "todayH5New"
|
||||
FN.BotReport.TodayH5NewRecharge = "todayH5NewRecharge"
|
||||
FN.BotReport.TodayH5Recharge = "todayH5Recharge"
|
||||
FN.BotReport.TodayIosNew = "todayIosNew"
|
||||
FN.BotReport.TodayIosNewRecharge = "todayIosNewRecharge"
|
||||
FN.BotReport.TodayIosRecharge = "todayIosRecharge"
|
||||
FN.BotReport.TodayNew = "todayNew"
|
||||
FN.BotReport.TodayNewDistrict = "todayNewDistrict"
|
||||
FN.BotReport.TodayNewNormal = "todayNewNormal"
|
||||
FN.BotReport.TodayNewRecharge = "todayNewRecharge"
|
||||
FN.BotReport.TodayNewWeb = "todayNewWeb"
|
||||
FN.BotReport.TodayNormalRecharge = "todayNormalRecharge"
|
||||
FN.BotReport.TodayNormalVip = "todayNormalVip"
|
||||
FN.BotReport.TodayOldRecharge = "todayOldRecharge"
|
||||
FN.BotReport.TodayOrder = "todayOrder"
|
||||
FN.BotReport.TodayRecharge = "todayRecharge"
|
||||
FN.BotReport.TodaySuccessOrder = "todaySuccessOrder"
|
||||
FN.BotReport.TodayVipRecharge = "todayVipRecharge"
|
||||
FN.BotReport.TodayWebRecharge = "todayWebRecharge"
|
||||
FN.BotReport.TodayWebVip = "todayWebVip"
|
||||
FN.BotReport.ValidBet = "validBet"
|
||||
FN.BotReport.TodayAccessH5Pc = "todayAccessH5Pc"
|
||||
FN.BotReport.TodayAccessH5Ios = "todayAccessH5Ios"
|
||||
FN.BotReport.TodayAccessH5Android = "todayAccessH5Android"
|
||||
FN.BotReport.TodayH5PcNew = "todayH5PcNew"
|
||||
FN.BotReport.TodayH5IosNew = "todayH5IosNew"
|
||||
FN.BotReport.TodayH5AndroidNew = "todayH5AndroidNew"
|
||||
FN.BotReport.TodayH5PcRecharge = "todayH5PcRecharge"
|
||||
FN.BotReport.TodayH5IosRecharge = "todayH5IosRecharge"
|
||||
FN.BotReport.TodayH5AndroidRecharge = "todayH5AndroidRecharge"
|
||||
FN.BotReport.TodayH5PcNewRecharge = "todayH5PcNewRecharge"
|
||||
FN.BotReport.TodayH5IosNewRecharge = "todayH5IosNewRecharge"
|
||||
FN.BotReport.TodayH5AndroidNewRecharge = "todayH5AndroidNewRecharge"
|
||||
FN.BotReport.HourH5PcNew = "hourH5PcNew"
|
||||
FN.BotReport.HourH5IosNew = "hourH5IosNew"
|
||||
FN.BotReport.HourH5AndroidNew = "hourH5AndroidNew"
|
||||
FN.BotReport.HourH5PcRecharge = "hourH5PcRecharge"
|
||||
FN.BotReport.HourH5IosRecharge = "hourH5IosRecharge"
|
||||
FN.BotReport.HourH5AndroidRecharge = "hourH5AndroidRecharge"
|
||||
FN.BotReport.HourH5PcNewRecharge = "hourH5PcNewRecharge"
|
||||
FN.BotReport.HourH5IosNewRecharge = "hourH5IosNewRecharge"
|
||||
FN.BotReport.HourH5AndroidNewRecharge = "hourH5AndroidNewRecharge"
|
||||
FN.BotReport.TodayAccessIos = "todayAccessIos"
|
||||
FN.BotReport.TodayAccessAndroid = "todayAccessAndroid"
|
||||
TN.BotReport = "bot_report"
|
||||
}
|
||||
@@ -0,0 +1,145 @@
|
||||
package botreport
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"go.mongodb.org/mongo-driver/bson/primitive"
|
||||
)
|
||||
|
||||
// @table:bot_report
|
||||
type BotReport struct {
|
||||
ID primitive.ObjectID `bson:"_id,omitempty" json:"id,omitempty"` // ID
|
||||
AppId int32 `json:"appId" bson:"appId"` // appId,唯一id
|
||||
SumDate time.Time `json:"sumDate" bson:"sumDate"` // 记录时间 按天对齐
|
||||
TodayRecharge int64 `json:"todayRecharge" bson:"todayRecharge"` // 当日累计充值
|
||||
|
||||
HourRecharge int64 `json:"hourRecharge" bson:"hourRecharge"` // 单小时充值
|
||||
|
||||
AccessUser int64 `json:"accessUser" bson:"accessUser"` // 当日日活
|
||||
|
||||
TodayAccessDistrict int64 `json:"todayAccessDistrict" bson:"todayAccessDistrict"` // +当日渠道日活
|
||||
TodayAccessIos int64 `json:"todayAccessIos" bson:"todayAccessIos"` // *当日IOS日活
|
||||
TodayAccessAndroid int64 `json:"todayAccessAndroid" bson:"todayAccessAndroid"` // *当日Android日活
|
||||
TodayAccessH5 int64 `json:"todayAccessH5" bson:"todayAccessH5"` // *当日H5日活
|
||||
TodayAccessH5Pc int64 `json:"todayAccessH5Pc" bson:"todayAccessH5Pc"` // *当日H5PC日活
|
||||
TodayAccessH5Ios int64 `json:"todayAccessH5Ios" bson:"todayAccessH5Ios"` // *当日H5IOS日活
|
||||
TodayAccessH5Android int64 `json:"todayAccessH5Android" bson:"todayAccessH5Android"` // *当日H5Android日活
|
||||
TodayAccessH5District int64 `json:"todayAccessH5District" bson:"todayAccessH5District"` // +当日H5渠道日活
|
||||
TodayOrder int64 `json:"todayOrder" bson:"todayOrder"` // 当日订单数
|
||||
TodaySuccessOrder int64 `json:"todaySuccessOrder" bson:"todaySuccessOrder"` // 当日成功订单数
|
||||
HourOrder int64 `json:"hourOrder" bson:"hourOrder"` // 单小时订单数
|
||||
HourSuccessOrder int64 `json:"hourSuccessOrder" bson:"hourSuccessOrder"` // 单小时成功单数
|
||||
TodayNewDistrict int64 `json:"todayNewDistrict" bson:"todayNewDistrict"` // 当日渠道新增
|
||||
TodayNewWeb int64 `json:"todayNewWeb" bson:"todayNewWeb"` // 当日官网新增
|
||||
TodayNewNormal int64 `json:"todayNewNormal" bson:"todayNewNormal"` // 当日自来量(分享和官方)
|
||||
TodayNew int64 `json:"todayNew" bson:"todayNew"` // 当日新增
|
||||
TodayAndroidNew int64 `json:"todayAndroidNew" bson:"todayAndroidNew"` // 当日android新增
|
||||
TodayIosNew int64 `json:"todayIosNew" bson:"todayIosNew"` // 当日Ios新增
|
||||
TodayH5New int64 `json:"todayH5New" bson:"todayH5New"` // 当日H5新增
|
||||
TodayH5PcNew int64 `json:"todayH5PcNew" bson:"todayH5PcNew"` // *当日H5PC新增
|
||||
TodayH5IosNew int64 `json:"todayH5IosNew" bson:"todayH5IosNew"` // *当日H5IOS新增
|
||||
TodayH5AndroidNew int64 `json:"todayH5AndroidNew" bson:"todayH5AndroidNew"` // *当日H5Android新增
|
||||
TodayH5DistrictNew int64 `json:"todayH5DistrictNew" bson:"todayH5DistrictNew"` // +当日H5渠道新增
|
||||
TodayDistrictRecharge int64 `json:"todayDistrictRecharge" bson:"todayDistrictRecharge"` // 当日渠道充值新增
|
||||
TodayWebRecharge int64 `json:"todayWebRecharge" bson:"todayWebRecharge"` // 当日官网充值新增
|
||||
TodayNormalRecharge int64 `json:"todayNormalRecharge" bson:"todayNormalRecharge"` // 当日自来量充值新增
|
||||
TodayVipRecharge int64 `json:"todayVipRecharge" bson:"todayVipRecharge"` // 当日渠道充值新增
|
||||
TodayAndroidRecharge int64 `json:"todayAndroidRecharge" bson:"todayAndroidRecharge"` // 当日android充值
|
||||
TodayIosRecharge int64 `json:"todayIosRecharge" bson:"todayIosRecharge"` // 当日Ios充值
|
||||
TodayH5Recharge int64 `json:"todayH5Recharge" bson:"todayH5Recharge"` // 当日H5充值
|
||||
TodayH5PcRecharge int64 `json:"todayH5PcRecharge" bson:"todayH5PcRecharge"` // *当日H5PC充值
|
||||
TodayH5IosRecharge int64 `json:"todayH5IosRecharge" bson:"todayH5IosRecharge"` // *当日H5IOS充值
|
||||
TodayH5AndroidRecharge int64 `json:"todayH5AndroidRecharge" bson:"todayH5AndroidRecharge"` // *当日H5Android充值
|
||||
TodayH5DistrictRecharge int64 `json:"todayH5DistrictRecharge" bson:"todayH5DistrictRecharge"` // +当日H5渠道充值
|
||||
TodayNewRecharge int64 `json:"todayNewRecharge" bson:"todayNewRecharge"` // 当日新增充值
|
||||
TodayIosNewRecharge int64 `json:"todayIosNewRecharge" bson:"todayIosNewRecharge"` // 当日Ios新增充值
|
||||
TodayH5NewRecharge int64 `json:"todayH5NewRecharge" bson:"todayH5NewRecharge"` // 当日H5新增充值
|
||||
TodayH5PcNewRecharge int64 `json:"todayH5PcNewRecharge" bson:"todayH5PcNewRecharge"` // *当日H5Pc新增充值
|
||||
TodayH5IosNewRecharge int64 `json:"todayH5IosNewRecharge" bson:"todayH5IosNewRecharge"` // *当日H5Ios新增充值
|
||||
TodayH5AndroidNewRecharge int64 `json:"todayH5AndroidNewRecharge" bson:"todayH5AndroidNewRecharge"` // *当日H5Android新增充值
|
||||
TodayH5DistrictNewRecharge int64 `json:"todayH5DistrictNewRecharge" bson:"todayH5DistrictNewRecharge"` // +当日H5渠道新增充值
|
||||
TodayAndroidNewRecharge int64 `json:"todayAndroidNewRecharge" bson:"todayAndroidNewRecharge"` // 当日android新增充值
|
||||
TodayOldRecharge int64 `json:"todayOldRecharge" bson:"todayOldRecharge"` // 当日老用户充值
|
||||
TodayDistrictVip int64 `json:"todayDistrictVip" bson:"todayDistrictVip"` // 单小时渠道VIP充值
|
||||
TodayWebVip int64 `json:"todayWebVip" bson:"todayWebVip"` // 单小时官网VIP充值
|
||||
TodayNormalVip int64 `json:"todayNormalVip" bson:"todayNormalVip"` // 单小时自来量充值新增
|
||||
HourNewDistrict int64 `json:"hourNewDistrict" bson:"hourNewDistrict"` // 单小时渠道新增
|
||||
HourNewWeb int64 `json:"hourNewWeb" bson:"hourNewWeb"` // 单小时官网新增
|
||||
HourNewNormal int64 `json:"hourNewNormal" bson:"hourNewNormal"` // 单小时自来量(分享和官方)
|
||||
HourNew int64 `json:"hourNew" bson:"hourNew"` // 单小时新增
|
||||
HourAndroidNew int64 `json:"hourAndroidNew" bson:"hourAndroidNew"` // 单小时android新增
|
||||
HourIosNew int64 `json:"hourIosNew" bson:"hourIosNew"` // 单小时Ios新增
|
||||
HourH5New int64 `json:"hourH5New" bson:"hourH5New"` // 单小时H5新增
|
||||
HourH5PcNew int64 `json:"hourH5PcNew" bson:"hourH5PcNew"` // *单小时H5Pc新增
|
||||
HourH5IosNew int64 `json:"hourH5IosNew" bson:"hourH5IosNew"` // *单小时H5Ios新增
|
||||
HourH5AndroidNew int64 `json:"hourH5AndroidNew" bson:"hourH5AndroidNew"` // *单小时H5Android新增
|
||||
HourH5DistrictNew int64 `json:"hourH5DistrictNew" bson:"hourH5DistrictNew"` // +单小时H5渠道新增
|
||||
HourDistrictRecharge int64 `json:"hourDistrictRecharge" bson:"hourDistrictRecharge"` // 单小时渠道充值新增
|
||||
HourWebRecharge int64 `json:"hourWebRecharge" bson:"hourWebRecharge"` // 单小时官网充值新增
|
||||
HourNormalRecharge int64 `json:"hourNormalRecharge" bson:"hourNormalRecharge"` // 单小时自来量充值新增
|
||||
HourVipRecharge int64 `json:"hourVipRecharge" bson:"hourVipRecharge"` // 单小时VIP充值
|
||||
HourDistrictVip int64 `json:"hourDistrictVip" bson:"hourDistrictVip"` // 单小时渠道VIP充值
|
||||
HourWebVip int64 `json:"hourWebVip" bson:"hourWeVip"` // 单小时官网VIP充值
|
||||
HourAndroidRecharge int64 `json:"hourAndroidRecharge" bson:"hourAndroidRecharge"` // 单小时android充值
|
||||
HourIosRecharge int64 `json:"hourIosRecharge" bson:"hourIosRecharge"` // 单小时Ios充值
|
||||
HourH5Recharge int64 `json:"HourH5Recharge" bson:"HourH5Recharge"` // 单小时H5充值
|
||||
HourH5PcRecharge int64 `json:"hourH5PcRecharge" bson:"hourH5PcRecharge"` // *单小时H5Pc充值
|
||||
HourH5IosRecharge int64 `json:"hourH5IosRecharge" bson:"hourH5IosRecharge"` // *单小时H5Ios充值
|
||||
HourH5AndroidRecharge int64 `json:"hourH5AndroidRecharge" bson:"hourH5AndroidRecharge"` // *单小时H5Android充值
|
||||
HourH5DistrictRecharge int64 `json:"hourH5DistrictRecharge" bson:"hourH5DistrictRecharge"` // +单小时H5渠道充值
|
||||
HourNormalVip int64 `json:"hourNormalVip" bson:"hourNormalVip"` // 单小时自来量充值新增
|
||||
HourNewRecharge int64 `json:"hourNewRecharge" bson:"hourNewRecharge"` // 单小时新增充值
|
||||
HourIosNewRecharge int64 `json:"hourIosNewRecharge" bson:"hourIosNewRecharge"` // 单小时Ios新增充值
|
||||
HourH5NewRecharge int64 `json:"HourH5NewRecharge" bson:"HourH5NewRecharge"` // 单小时H5新增充值
|
||||
HourH5PcNewRecharge int64 `json:"hourH5PcNewRecharge" bson:"hourH5PcNewRecharge"` // *单小时H5Pc新增充值
|
||||
HourH5IosNewRecharge int64 `json:"hourH5IosNewRecharge" bson:"hourH5IosNewRecharge"` // *单小时H5Ios新增充值
|
||||
HourH5AndroidNewRecharge int64 `json:"hourH5AndroidNewRecharge" bson:"hourH5AndroidNewRecharge"` // *单小时H5Android新增充值
|
||||
HourH5DistrictNewRecharge int64 `json:"hourH5DistrictNewRecharge" bson:"hourH5DistrictNewRecharge"` // +单小时H5渠道新增充值
|
||||
HourAndroidNewRecharge int64 `json:"hourAndroidNewRecharge" bson:"hourAndroidNewRecharge"` // 单小时android新增充值
|
||||
HourOldRecharge int64 `json:"hourOldRecharge" bson:"hourOldRecharge"` // 单小时用户充值
|
||||
GameRchgAmount int64 `json:"gameRchgAmount" bson:"gameRchgAmount"` //充值总金额
|
||||
GameDCRchgAmount int64 `json:"gameDCRchgAmount" bson:"gameDCRchgAmount"` //代充总金额
|
||||
GameWtdrAmount int64 `json:"gameWtdrAmount" bson:"gameWtdrAmount"` //游戏提现总金额
|
||||
GameWtdrRealAmount int64 `json:"gameWtdrRealAmount" bson:"gameWtdrRealAmount"` //游戏实际提现总金额
|
||||
GameIncAmount int64 `json:"gameIncAmount" bson:"gameIncAmount"` //游戏上分总金额
|
||||
GameDecAmount int64 `json:"gameDecAmount" bson:"gameDecAmount"` //游戏下分总金额
|
||||
ValidBet int64 `json:"validBet" bson:"validBet"` //有效投注金额
|
||||
Profit int64 `json:"profit" bson:"profit"` //系统盈利
|
||||
GameRchgCount int64 `json:"gameRchgCount" bson:"gameRchgCount"`
|
||||
//活跃人数
|
||||
GamePlayCount int64 `json:"gamePlayCount" bson:"gamePlayCount"`
|
||||
//游戏成功充值人数
|
||||
GameRchgUsers int64 `json:"gameRchgUsers" bson:"gameRchgUsers"`
|
||||
//游戏首次充值总金额
|
||||
GameFirstRchgAmount int64 `json:"gameFirstRchgAmount" bson:"gameFirstRchgAmount"`
|
||||
//游戏首次成功充值次数
|
||||
GameFirstRchgCount int64 `json:"gameFirstRchgCount" bson:"gameFirstRchgCount"`
|
||||
//游戏首次成功充值人数
|
||||
GameFirstRchgUsers int64 `json:"gameFirstRchgUsers" bson:"gameFirstRchgUsers"`
|
||||
//游戏成功代充次数
|
||||
GameDCRchgCount int64 `json:"gameDCRchgCount" bson:"gameDCRchgCount"`
|
||||
//游戏成功提现次数
|
||||
GameWtdrCount int64 `json:"gameWtdrCount" bson:"gameWtdrCount"`
|
||||
|
||||
//游戏上分次数
|
||||
GameInchCount int64 `json:"gameInchCount" bson:"gameInchCount"`
|
||||
|
||||
//游戏下分次数
|
||||
GameDecCount int64 `json:"gameDecCount" bson:"gameDecCount"`
|
||||
//游戏6元赠送总金额
|
||||
GameGiftIncAmount int64 `json:"gameGiftIncAmount" bson:"gameGiftIncAmount"`
|
||||
//游戏6元赠送次数
|
||||
GameGiftIncCount int64 `json:"gameGiftIncCount" bson:"gameGiftIncCount"`
|
||||
//游戏充值赠送总金额
|
||||
GameRchGiftIncAmount int64 `json:"gameRchGiftIncAmount" bson:"gameRchGiftIncAmount"`
|
||||
//游戏充值赠送次数
|
||||
GameRchGiftIncCount int64 `json:"gameRchGiftIncCount" bson:"gameRchGiftIncCount"`
|
||||
//游戏VIP赠送总金额
|
||||
GameVipGiftIncAmount int64 `json:"gameVipGiftIncAmount" bson:"gameVipGiftIncAmount"`
|
||||
//游戏VIP赠送次数
|
||||
GameVipGiftIncCount int64 `json:"gameVipGiftIncCount" bson:"gameVipGiftIncCount"`
|
||||
// 游戏抽水
|
||||
Revenue int64 `json:"revenue" bson:"revenue"`
|
||||
CreatedAt time.Time `bson:"createdAt"` // 创建时间
|
||||
}
|
||||
type BotReportList []*BotReport
|
||||
Reference in New Issue
Block a user