From c1056552da83149c988fec7bd0e299583c1b8e8a Mon Sep 17 00:00:00 2001 From: chy <2463300564@qq.com> Date: Tue, 8 Jul 2025 20:59:09 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E9=97=A8=E5=BA=97=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=8E=92=E8=A1=8C=E6=A6=9Cbug,=20=E5=A5=96=E5=8A=B1?= =?UTF-8?q?=E9=A2=86=E5=8F=96=E6=96=B0=E5=A2=9E=E8=BF=87=E6=9C=9F=E6=97=B6?= =?UTF-8?q?=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/controller/task/task_v1_ranking.go | 5 +++-- internal/logic/reward/reward.go | 20 ++++++++++++++++++-- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/internal/controller/task/task_v1_ranking.go b/internal/controller/task/task_v1_ranking.go index 24cab02..35bf97c 100644 --- a/internal/controller/task/task_v1_ranking.go +++ b/internal/controller/task/task_v1_ranking.go @@ -2,6 +2,7 @@ package task import ( "context" + "github.com/gogf/gf/v2/frame/g" "server/internal/model" "server/internal/service" @@ -10,8 +11,8 @@ import ( func (c *ControllerV1) Ranking(ctx context.Context, req *v1.RankingReq) (res *v1.RankingRes, err error) { - //operatorId := g.RequestFromCtx(ctx).GetCtxVar("id").Int() - operatorId := 4 + operatorId := g.RequestFromCtx(ctx).GetCtxVar("id").Int() + //operatorId := 4 out, err := service.Task().UserTaskRankingList(ctx, &model.UserTaskRankingIn{ Page: req.Page, Size: req.Size, diff --git a/internal/logic/reward/reward.go b/internal/logic/reward/reward.go index 32f8f9e..1ee34a2 100644 --- a/internal/logic/reward/reward.go +++ b/internal/logic/reward/reward.go @@ -13,6 +13,7 @@ import ( "server/internal/dao" "server/internal/model" "server/internal/model/do" + "server/internal/model/entity" "server/internal/service" "server/utility/ecode" "server/utility/gamelife" @@ -653,7 +654,8 @@ func (s *sReward) GetLift(ctx context.Context, in *model.GetRewardIn) (out *mode if count == 1 { // 修改任务记录状态2 _, err = dao.UserTasks.Ctx(ctx).Where(do.UserTasks{Id: in.UserTaskId}).Data(do.UserTasks{ - Status: 2, + Status: 2, + CompletedAt: gtime.Now(), }).Update() if err != nil { @@ -677,10 +679,24 @@ func (s *sReward) GetLift(ctx context.Context, in *model.GetRewardIn) (out *mode return ecode.Fail.Sub("修改用户任务奖励记录状态异常") } } else if item.Result == 2 || item.Result == 3 { + // 查询奖励过期时间 + var reward entity.Rewards + if err := dao.Rewards.Ctx(ctx).Where(do.Rewards{Id: in.RewardId}).Scan(&reward); err != nil { + return ecode.Fail.Sub("获取奖励信息异常") + } + + var expireTime *gtime.Time + if reward.ExpireType == 2 { + expireTime = gtime.Now().AddDate(0, 0, reward.ExpireDays) + } else { + expireTime = reward.ValidTo + } + // 发放背包成功,修改状态 glog.Infof(ctx, "奖励发放成功2,修改状态") _, err = dao.UserTaskRewards.Ctx(ctx).Data(do.UserTaskRewards{ - Status: consts.RewardExchangeStatus, + Status: consts.RewardExchangeStatus, + ExpiredAt: expireTime, }).Where(do.UserTaskRewards{ Id: in.Id, }).Update()