|
@@ -174,6 +174,162 @@ func (a *PlayerManage) List(ctx context.Context, req entity.PlayerListReq) (*ent
|
|
}, nil
|
|
}, nil
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+// 获取累计登录次数
|
|
|
|
+func (a *PlayerManage) GetMaxSuccessions(userName string) (int64, *code.Result) {
|
|
|
|
+ loginWhere := &eventmodels.UserLoginEventContent{
|
|
|
|
+ UserBasic: eventmodels.UserBasic{
|
|
|
|
+ UserId: userName,
|
|
|
|
+ },
|
|
|
|
+ }
|
|
|
|
+ loginDb := mdb.LogstashDB.Model(&eventmodels.UserLoginEventContent{}).Where(loginWhere).Order("create_at")
|
|
|
|
+ var loginCount int64
|
|
|
|
+ err := loginDb.Count(&loginCount).Error
|
|
|
|
+ if err != nil {
|
|
|
|
+ mhayaLogger.Warnf("GetMaxSuccessions loginCount error:%v", err)
|
|
|
|
+ return 0, common.NewResult(code.InternalError)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return loginCount, nil
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+// 获取用户骰子点击次数
|
|
|
|
+func (a *PlayerManage) GetDiceHits(userName string) (int64, *code.Result) {
|
|
|
|
+ diceClickWhere := &eventmodels.ClickEventContent{
|
|
|
|
+ UserBasic: eventmodels.UserBasic{
|
|
|
|
+ UserId: userName,
|
|
|
|
+ },
|
|
|
|
+ ClickName: string(constant.DiceClickName),
|
|
|
|
+ }
|
|
|
|
+ clickDb := mdb.LogstashDB.Model(&eventmodels.ClickEventContent{}).Where(diceClickWhere).Order("create_at")
|
|
|
|
+ var diceHits int64
|
|
|
|
+ err := clickDb.Count(&diceHits).Error
|
|
|
|
+ if err != nil {
|
|
|
|
+ mhayaLogger.Warnf("GetDiceHits diceHits error:%v", err)
|
|
|
|
+ return 0, common.NewResult(code.InternalError)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return diceHits, nil
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+// 获取邀请点击次数
|
|
|
|
+func (a *PlayerManage) GetInvitationHits(userName string) (int64, *code.Result) {
|
|
|
|
+ inviteClickWhere := &eventmodels.ClickEventContent{
|
|
|
|
+ UserBasic: eventmodels.UserBasic{
|
|
|
|
+ UserId: userName,
|
|
|
|
+ },
|
|
|
|
+ ClickName: string(constant.InviteClickName),
|
|
|
|
+ }
|
|
|
|
+ clickDb := mdb.LogstashDB.Model(&eventmodels.ClickEventContent{}).Where(inviteClickWhere).Order("create_at")
|
|
|
|
+ var invitationHits int64
|
|
|
|
+ err := clickDb.Count(&invitationHits).Error
|
|
|
|
+ if err != nil {
|
|
|
|
+ mhayaLogger.Warnf("GetInvitationHits invitationHits error:%v", err)
|
|
|
|
+ return 0, common.NewResult(code.InternalError)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return invitationHits, nil
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+// 获取转盘点击次数
|
|
|
|
+func (a *PlayerManage) GetTurntableClicks(userName string) (int64, *code.Result) {
|
|
|
|
+ turntableClickWhere := &eventmodels.ClickEventContent{
|
|
|
|
+ UserBasic: eventmodels.UserBasic{
|
|
|
|
+ UserId: userName,
|
|
|
|
+ },
|
|
|
|
+ ClickName: string(constant.TurntableClickName),
|
|
|
|
+ }
|
|
|
|
+ clickDb := mdb.LogstashDB.Model(&eventmodels.ClickEventContent{}).Where(turntableClickWhere).Order("create_at")
|
|
|
|
+ var turntableClicks int64
|
|
|
|
+ err := clickDb.Count(&turntableClicks).Error
|
|
|
|
+ if err != nil {
|
|
|
|
+ mhayaLogger.Warnf("GetTurntableClicks turntableClicks error:%v", err)
|
|
|
|
+ return 0, common.NewResult(code.InternalError)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return turntableClicks, nil
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+// 获取转盘实际抽奖次数
|
|
|
|
+func (a *PlayerManage) GetTurntableRuns(userName string) (int64, *code.Result) {
|
|
|
|
+ turntableWhere := &eventmodels.TurntableEventContent{
|
|
|
|
+ UserBasic: eventmodels.UserBasic{
|
|
|
|
+ UserId: userName,
|
|
|
|
+ },
|
|
|
|
+ }
|
|
|
|
+ turntableDb := mdb.LogstashDB.Model(&eventmodels.TurntableEventContent{}).Where(turntableWhere).Order("create_at")
|
|
|
|
+ var turntableRuns int64
|
|
|
|
+ err := turntableDb.Count(&turntableRuns).Error
|
|
|
|
+ if err != nil {
|
|
|
|
+ mhayaLogger.Warnf("GetTurntableRuns turntableRuns error:%v", err)
|
|
|
|
+ return 0, common.NewResult(code.InternalError)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return turntableRuns, nil
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+// 获取邀请成功人数 status:查询的事件状态
|
|
|
|
+func (a *PlayerManage) GetSuccessfulInvitations(userName string, status int) (int64, *code.Result) {
|
|
|
|
+ inviteWhere := &eventmodels.InviteEventContent{
|
|
|
|
+ UserBasic: eventmodels.UserBasic{
|
|
|
|
+ UserId: userName,
|
|
|
|
+ },
|
|
|
|
+ EventBasic: eventmodels.EventBasic{
|
|
|
|
+ Status: status,
|
|
|
|
+ },
|
|
|
|
+ }
|
|
|
|
+ inviteDb := mdb.LogstashDB.Model(&eventmodels.InviteEventContent{}).Where(inviteWhere).Order("create_at")
|
|
|
|
+ var successfulInvitations int64
|
|
|
|
+ err := inviteDb.Count(&successfulInvitations).Error
|
|
|
|
+ if err != nil {
|
|
|
|
+ mhayaLogger.Warnf("GetSuccessfulInvitations successfulInvitations error:%v", err)
|
|
|
|
+ return 0, common.NewResult(code.InternalError)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return successfulInvitations, nil
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+// 获取提现次数 status:查询的事件状态
|
|
|
|
+func (a *PlayerManage) GetWithdrawalCount(userName string, status int) (int64, *code.Result) {
|
|
|
|
+ withdrawalWhere := &eventmodels.UserWithdrawEventContent{
|
|
|
|
+ UserBasic: eventmodels.UserBasic{
|
|
|
|
+ UserId: userName,
|
|
|
|
+ },
|
|
|
|
+ EventBasic: eventmodels.EventBasic{
|
|
|
|
+ Status: status,
|
|
|
|
+ },
|
|
|
|
+ }
|
|
|
|
+ withdrawalDb := mdb.LogstashDB.Model(&eventmodels.UserWithdrawEventContent{}).Where(withdrawalWhere).Order("create_at")
|
|
|
|
+ var withdrawals int64
|
|
|
|
+ err := withdrawalDb.Count(&withdrawals).Error
|
|
|
|
+ if err != nil {
|
|
|
|
+ mhayaLogger.Warnf("GetWithdrawalCount withdrawals error:%v", err)
|
|
|
|
+ return 0, common.NewResult(code.InternalError)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return withdrawals, nil
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+// 获取累计提现金额 currency:货币类型 status:查询的事件状态
|
|
|
|
+func (a *PlayerManage) GetCumulativeWithdrawalAmount(userName, currency string, status int) (int64, *code.Result) {
|
|
|
|
+ withdrawalAmountWhere := &eventmodels.UserWithdrawEventContent{
|
|
|
|
+ UserBasic: eventmodels.UserBasic{
|
|
|
|
+ UserId: userName,
|
|
|
|
+ },
|
|
|
|
+ EventBasic: eventmodels.EventBasic{
|
|
|
|
+ Status: status,
|
|
|
|
+ },
|
|
|
|
+ Currency: currency,
|
|
|
|
+ }
|
|
|
|
+ var cumulativeWithdrawalAmount int64
|
|
|
|
+ err := mdb.LogstashDB.Model(&eventmodels.UserWithdrawEventContent{}).Where(withdrawalAmountWhere).Pluck("SUM(amount) as total_amount", &cumulativeWithdrawalAmount).Error
|
|
|
|
+ if err != nil {
|
|
|
|
+ mhayaLogger.Warnf("GetCumulativeWithdrawalAmount Pluck currency error:%v", err)
|
|
|
|
+ return 0, common.NewResult(code.InternalError)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return cumulativeWithdrawalAmount, nil
|
|
|
|
+}
|
|
|
|
+
|
|
// 获取的是注册的总人数
|
|
// 获取的是注册的总人数
|
|
func (a *PlayerManage) GetPlayerTotalCount() (int64, *code.Result) {
|
|
func (a *PlayerManage) GetPlayerTotalCount() (int64, *code.Result) {
|
|
where := &eventmodels.UserRegisterEventContent{
|
|
where := &eventmodels.UserRegisterEventContent{
|
|
@@ -212,6 +368,35 @@ func (a *PlayerManage) GetLoginedPlayerTotalCount() (int64, *code.Result) {
|
|
return count, nil
|
|
return count, nil
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+// 获取最新的用户信息更新记录
|
|
|
|
+func (a *PlayerManage) GetPlayerLastestUpdateRecord(userName string) (*eventmodels.UserUpdateInfoEventContent, *code.Result) {
|
|
|
|
+ var updateRecord *eventmodels.UserUpdateInfoEventContent
|
|
|
|
+ updateWhere := &eventmodels.UserUpdateInfoEventContent{
|
|
|
|
+ UserBasic: eventmodels.UserBasic{UserId: userName},
|
|
|
|
+ }
|
|
|
|
+ err := mdb.LogstashDB.Model(&eventmodels.UserUpdateInfoEventContent{}).Where(updateWhere).Order("create_at desc").First(&updateRecord).Error
|
|
|
|
+ if err != nil && err != gorm.ErrRecordNotFound {
|
|
|
|
+ mhayaLogger.Warnf("GetPlayerLastestUpdateRecord First updateRecord error:%v", err)
|
|
|
|
+ return nil, common.NewResult(code.InternalError)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return updateRecord, nil
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func (a *PlayerManage) GetPlayerRegisterRecord(userName string) (*eventmodels.UserRegisterEventContent, *code.Result) {
|
|
|
|
+ var registerRecord *eventmodels.UserRegisterEventContent
|
|
|
|
+ where := &eventmodels.UserRegisterEventContent{
|
|
|
|
+ UserBasic: eventmodels.UserBasic{UserId: userName},
|
|
|
|
+ }
|
|
|
|
+ err := mdb.LogstashDB.Model(&eventmodels.UserRegisterEventContent{}).Where(where).First(®isterRecord).Error
|
|
|
|
+ if err != nil && err != gorm.ErrRecordNotFound {
|
|
|
|
+ mhayaLogger.Warnf("GetPlayerRegisterRecord First registerRecord error:%v", err)
|
|
|
|
+ return nil, common.NewResult(code.InternalError)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return registerRecord, nil
|
|
|
|
+}
|
|
|
|
+
|
|
// 获取玩家详情
|
|
// 获取玩家详情
|
|
func (a *PlayerManage) PlayerInfo(ctx context.Context, req entity.PlayerInfoReq) (*entity.PlayerInfoResp, *code.Result) {
|
|
func (a *PlayerManage) PlayerInfo(ctx context.Context, req entity.PlayerInfoReq) (*entity.PlayerInfoResp, *code.Result) {
|
|
// 获取最新的用户信息更新记录
|
|
// 获取最新的用户信息更新记录
|