Sfoglia il codice sorgente

update 封装获取玩家签到记录

Alvin 8 mesi fa
parent
commit
2f6274ee20
1 ha cambiato i file con 35 aggiunte e 0 eliminazioni
  1. 35 0
      game/game_cluster/nodes/webadmin/service/playerMange.go

+ 35 - 0
game/game_cluster/nodes/webadmin/service/playerMange.go

@@ -509,6 +509,41 @@ func (a *PlayerManage) GetShareRecord(userName, date string) (*eventmodels.Share
 	return shareRecord, nil
 }
 
+// 获取玩家的签到记录 date:2006-01-02
+func (a *PlayerManage) GetSigninRecord(userName, date string, signinType int) (*eventmodels.SigninEventContent, *code.Result) {
+	where := &eventmodels.SigninEventContent{
+		UserBasic: eventmodels.UserBasic{
+			UserId: userName,
+		},
+		SigninType: signinType,
+	}
+	db := mdb.LogstashDB.Model(&eventmodels.SigninEventContent{}).Where(where)
+
+	t, err := time.Parse(time.DateOnly, date)
+	if err != nil {
+		mhayaLogger.Warnf("GetSigninRecord Parse date:%s error:%v", date, err)
+		return nil, common.NewResult(code.InternalError)
+	}
+	dateTime := mhayaTime.CreateFromDate(t.Year(), int(t.Month()), t.Day())
+
+	startTime := dateTime.StartOfDay().Unix()
+	endTime := dateTime.EndOfDay().Unix()
+	db = db.Where("create_at >= ? and create_at <= ?", startTime, endTime)
+
+	signinRecord := &eventmodels.SigninEventContent{}
+	err = db.First(&signinRecord).Error
+	if err != nil && err != gorm.ErrRecordNotFound {
+		mhayaLogger.Warnf("GetSigninRecord First error:%v", err)
+		return nil, common.NewResult(code.InternalError)
+	}
+
+	if err == gorm.ErrRecordNotFound {
+		return nil, nil
+	}
+
+	return signinRecord, nil
+}
+
 // 获取玩家详情
 func (a *PlayerManage) PlayerInfo(ctx context.Context, req entity.PlayerInfoReq) (*entity.PlayerInfoResp, *code.Result) {
 	registerRecord, codeResult := a.GetPlayerRegisterRecord(req.UserName)