解决门店任务排行榜bug, 奖励领取新增过期时间

This commit is contained in:
chy
2025-07-08 20:59:09 +08:00
parent 0847d930c1
commit c1056552da
2 changed files with 21 additions and 4 deletions

View File

@ -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()