forked from all_user/stat_center
Initial commit
This commit is contained in:
@@ -0,0 +1,93 @@
|
||||
package model
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"stat/common/log"
|
||||
"stat/common/mongos"
|
||||
"stat/common/utils"
|
||||
"time"
|
||||
|
||||
"go.mongodb.org/mongo-driver/bson"
|
||||
"go.mongodb.org/mongo-driver/bson/primitive"
|
||||
"go.mongodb.org/mongo-driver/mongo/options"
|
||||
)
|
||||
|
||||
type DspRecharge struct {
|
||||
ID primitive.ObjectID `json:"id" bson:"_id,omitempty"` //流水id
|
||||
UID uint64 `json:"uid" bson:"uid"` //用户id
|
||||
DevType string `json:"devType" bson:"devType"` //设备系统类型 ios pc android
|
||||
Channel string `json:"channel" bson:"channel"` //渠道类型 鲨鱼 金鱼
|
||||
OID string `json:"oid" bson:"oid"` //支付平台订单号
|
||||
WithdrawType string `json:"WithdrawType" bson:"WithdrawType"` //充值类型
|
||||
Money int64 `json:"money" bson:"money"` //充值金额 订单金额 李秋山确认
|
||||
PayMoney int64 `json:"payMoney" bson:"payMoney"` //实际到账金额 用户实际支付金额 李秋山确认
|
||||
Status int `json:"status" bson:"status"` //1进行中 2付款失败 3付款成功 4已经退款
|
||||
SuccessAt time.Time `json:"successAt" bson:"successAt"` //回调成功时间
|
||||
CreatedAt time.Time `json:"createdAt" bson:"createdAt"` //创建时间
|
||||
IsDirect bool `json:"isDirect" bson:"isDirect"` //true:是直推用户
|
||||
DistrictCode string `json:"districtCode" bson:"districtCode"` //商区码
|
||||
}
|
||||
|
||||
const CollRecharge = "recharge_order"
|
||||
|
||||
var dbRecharge *mongos.MongoTool
|
||||
|
||||
func RechargeInit() {
|
||||
dbRecharge = mongos.New(ManagerDsp, CollRecharge)
|
||||
}
|
||||
|
||||
// FindDspRecharge 查询用户
|
||||
func FindDspRecharge(ctx context.Context, skip int64, limit int64) ([]DspRecharge, error) {
|
||||
list := make([]DspRecharge, 0)
|
||||
|
||||
beginTimeStr := "2020-07-01T00:00:00-08:00"
|
||||
|
||||
beginTime := utils.StrTimeToTime(beginTimeStr)
|
||||
query := bson.M{"successAt": bson.M{"$gt": beginTime}}
|
||||
|
||||
sort := bson.D{{Key: "successAt", Value: 1}}
|
||||
opts := options.Find().SetSkip(skip).SetLimit(limit).SetSort(sort)
|
||||
|
||||
if err := dbRecharge.Find(ctx, &list, query, opts); err != nil {
|
||||
log.Error(fmt.Sprintf("model %s FindDspRecharge Find error", CollDistrict), log.E(err))
|
||||
return list, err
|
||||
}
|
||||
|
||||
return list, nil
|
||||
}
|
||||
|
||||
func FindDspRechargeCount(ctx context.Context) (count int64, err error) {
|
||||
|
||||
beginTimeStr := "2020-07-01T00:00:00-08:00"
|
||||
|
||||
beginTime := utils.StrTimeToTime(beginTimeStr)
|
||||
query := bson.M{"successAt": bson.M{"$gt": beginTime}}
|
||||
|
||||
count, err = dbRecharge.Count(ctx, query)
|
||||
if err != nil {
|
||||
log.Error(fmt.Sprintf("model %s FindDspRecharge Find error", CollDistrict), log.E(err))
|
||||
return count, err
|
||||
}
|
||||
|
||||
return count, nil
|
||||
}
|
||||
|
||||
// FindDspDistrictRecharge
|
||||
func FindDspDistrictRecharge(ctx context.Context, district string) ([]DspRecharge, error) {
|
||||
list := make([]DspRecharge, 0)
|
||||
|
||||
beginTimeStr := "2020-10-01T00:00:00-08:00"
|
||||
|
||||
beginTime := utils.StrTimeToTime(beginTimeStr)
|
||||
query := bson.M{"successAt": bson.M{"$gt": beginTime}, "districtCode": district}
|
||||
|
||||
if err := dbRecharge.Find(ctx, &list, query); err != nil {
|
||||
log.Error(fmt.Sprintf("model %s FindDspDistrictRecharge Find error", CollDistrict), log.E(err))
|
||||
return list, err
|
||||
}
|
||||
|
||||
return list, nil
|
||||
}
|
||||
|
||||
//
|
||||
Reference in New Issue
Block a user