Initial commit

This commit is contained in:
2026-05-20 16:13:58 +08:00
commit ceffbe382e
500 changed files with 157469 additions and 0 deletions
+255
View File
@@ -0,0 +1,255 @@
package rechargegamemod
import (
"context"
"stat/common/log"
"time"
"go.mongodb.org/mongo-driver/bson"
"go.mongodb.org/mongo-driver/mongo/options"
)
// DirectRechargeAmount 获取直推充值金额
func DirectRechargeAmount(ctx context.Context, appid int32, start, end time.Time) (count int64, money int64, err error) {
query := bson.M{"appId": appid, "successAt": bson.M{"$gte": start, "$lt": end}, "isDirect": true, "status": 3}
result := make([]GameRechargeMod, 0)
err = db.Find(ctx, &result, query)
if err != nil {
return
}
count = int64(len(result))
for _, v := range result {
money += v.PayMoney
}
return
}
// FissionRechargeAmount 获取裂变充值金额
func FissionRechargeAmount(ctx context.Context, appid int32, start, end time.Time) (count int64, money int64, err error) {
query := bson.M{"appId": appid, "successAt": bson.M{"$gte": start, "$lt": end}, "isDirect": false, "status": 3}
result := make([]GameRechargeMod, 0)
err = db.Find(ctx, &result, query)
if err != nil {
return
}
count = int64(len(result))
for _, v := range result {
money += v.PayMoney
}
return
}
// DeductionRechargeAmount 获取扣量值金额
func DeductionRechargeAmount(ctx context.Context, appid int32, start, end time.Time) (count int64, money int64, err error) {
query := bson.M{"appId": appid, "successAt": bson.M{"$gte": start, "$lt": end}, "status": 3}
result := make([]GameRechargeMod, 0)
err = db.Find(ctx, &result, query)
if err != nil {
return
}
count = int64(len(result))
for _, v := range result {
money += v.PayMoney
}
return
}
// TotalRechargeAmount 获取总充值金额
func TotalRechargeAmount(ctx context.Context, appid int32, start, end time.Time) (count int64, money int64, err error) {
query := bson.M{"appId": appid, "successAt": bson.M{"$gte": start, "$lt": end}, "status": 3}
result := make([]GameRechargeMod, 0)
err = db.Find(ctx, &result, query)
if err != nil {
return
}
count = int64(len(result))
for _, v := range result {
money += v.PayMoney
}
return
}
// TotalDistricRechargeAmount 获取渠道总充值金额
func TotalDistricRechargeAmount(ctx context.Context, appid int32, start, end time.Time) (result []GameRechargeMod, err error) {
query := bson.M{"appId": appid, "successAt": bson.M{"$gte": start, "$lt": end}, "status": 3}
result = make([]GameRechargeMod, 0)
err = db.Find(ctx, &result, query)
if err != nil {
return
}
return
}
// TotalDistricRechargeAmountV1 获取渠道总充值金额
func TotalDistricRechargeAmountV1(ctx context.Context, appid int32, start, end time.Time) (result []GameRechargeMod, err error) {
query := bson.M{"appId": appid, "successAt": bson.M{"$gte": start, "$lt": end}, "status": 3}
result = make([]GameRechargeMod, 0)
err = db.Find(ctx, &result, query)
if err != nil {
return
}
return
}
// BlocTotalDistricRechargeAmount 获取渠道总充值金额
func BlocTotalDistricRechargeAmount(ctx context.Context, appid int32, start, end time.Time) (result []GameRechargeMod, err error) {
query := bson.M{"appId": appid, "blocDeduction": false, "successAt": bson.M{"$gte": start, "$lt": end}, "status": 3}
result = make([]GameRechargeMod, 0)
err = db.Find(ctx, &result, query)
if err != nil {
return
}
return
}
// GetDaichongAmout 获取直推充值金额
func GetDaichongAmout(ctx context.Context, appid int32, start, end time.Time) (count int64, money int64, err error) {
query := bson.M{"appId": appid, "successAt": bson.M{"$gte": start, "$lt": end}, "channelName": "daichong"}
result := make([]GameRechargeMod, 0)
err = db.Find(ctx, &result, query)
if err != nil {
return
}
count = int64(len(result))
for _, v := range result {
money += v.PayMoney
}
return
}
// GetDaichongAmout 获取直推充值金额
func BlocGetDaichongAmout(ctx context.Context, appid int32, start, end time.Time) (count int64, money int64, err error) {
query := bson.M{"appId": appid, "successAt": bson.M{"$gte": start, "$lt": end}, "blocDeduction": false, "channelName": "daichong"}
result := make([]GameRechargeMod, 0)
err = db.Find(ctx, &result, query)
if err != nil {
return
}
count = int64(len(result))
for _, v := range result {
money += v.PayMoney
}
return
}
// GetOnlineAmount 获取直推充值金额
func GetOnlineAmount(ctx context.Context, appid int32, start, end time.Time) (count int64, money int64, err error) {
query := bson.M{"appId": appid, "successAt": bson.M{"$gte": start, "$lt": end}}
result := make([]GameRechargeMod, 0)
err = db.Find(ctx, &result, query)
if err != nil {
return
}
count = int64(len(result))
for _, v := range result {
money += v.PayMoney
}
return
}
// BlocGetOnlineAmount 获取直推充值金额
func BlocGetOnlineAmount(ctx context.Context, appid int32, start, end time.Time) (count int64, money int64, err error) {
query := bson.M{"appId": appid, "successAt": bson.M{"$gte": start, "$lt": end}, "blocDeduction": false, "channelName": bson.M{"$ne": "daichong"}}
result := make([]GameRechargeMod, 0)
err = db.Find(ctx, &result, query)
if err != nil {
return
}
count = int64(len(result))
for _, v := range result {
money += v.PayMoney
}
return
}
// BlocDirectRechargeAmount 获取直推充值金额
func BlocDirectRechargeAmount(ctx context.Context, appid int32, start, end time.Time) (count int64, money int64, err error) {
query := bson.M{"appId": appid, "blocDeduction": false, "successAt": bson.M{"$gte": start, "$lt": end}, "isDirect": true, "status": 3}
result := make([]GameRechargeMod, 0)
err = db.Find(ctx, &result, query)
if err != nil {
return
}
count = int64(len(result))
for _, v := range result {
money += v.PayMoney
}
return
}
// BlocFissionRechargeAmount 获取裂变充值金额
func BlocFissionRechargeAmount(ctx context.Context, appid int32, start, end time.Time) (count int64, money int64, err error) {
query := bson.M{"appId": appid, "blocDeduction": false, "successAt": bson.M{"$gte": start, "$lt": end}, "isDirect": false, "status": 3}
result := make([]GameRechargeMod, 0)
err = db.Find(ctx, &result, query)
if err != nil {
return
}
count = int64(len(result))
for _, v := range result {
money += v.PayMoney
}
return
}
// FissionRechargeAmount 获取裂变充值金额
func FissionRechargeList(ctx context.Context, appid int32, start, end time.Time) (data []GameRechargeMod, err error) {
query := bson.M{"appId": appid, "successAt": bson.M{"$gte": start, "$lt": end}, "isDirect": false, "status": 3}
err = db.Find(ctx, &data, query)
if err != nil {
return
}
return
}
//FindManyRechargeInfo 查找一批信息数据
func FindManyRechargeInfo(ctx context.Context, filter bson.M, opts ...*options.FindOptions) (GameRechargeInfoList, error) {
data := make(GameRechargeInfoList, 0)
if err := db.Find(ctx, &data, filter, opts...); err != nil {
log.Warn("FindManyRechargeInfo dbChannel.Find failed", log.E(err), log.Any("filter", filter))
return nil, err
}
return data, nil
}