diff --git a/internal/logic/task/task.go b/internal/logic/task/task.go index 5b4d41f..04995bf 100644 --- a/internal/logic/task/task.go +++ b/internal/logic/task/task.go @@ -705,11 +705,11 @@ func (s *sTask) GetTaskList(ctx context.Context, in *model.GetTaskListV2In) (out completeTime := gtime.Now() // 判断是否完成任务,修改奖励下发记录状态为 2 if err := dao.UserTasks.Transaction(ctx, func(ctx context.Context, tx gdb.TX) (err error) { - if _, err := dao.UserTasks.Ctx(ctx).WherePri(one["id"].Int64()).Data(do.UserTasks{Status: 3}).Update(); err != nil { + if _, err := dao.UserTasks.Ctx(ctx).WherePri(one["id"].Int64()).Where(do.UserTasks{Status: 1}).Data(do.UserTasks{Status: 3, UserTimes: v.UserTimes}).Update(); err != nil { return ecode.Fail.Sub("修改用户任务状态失败") } - all, err := dao.UserTaskRewards.Ctx(ctx).Where(do.UserTaskRewards{UserTaskId: one["id"].Int64()}).Fields(dao.UserTaskRewards.Columns().Id, dao.UserTaskRewards.Columns().RewardId).All() + all, err := dao.UserTaskRewards.Ctx(ctx).Where(do.UserTaskRewards{UserTaskId: one["id"].Int64(), Status: 1}).Fields(dao.UserTaskRewards.Columns().Id, dao.UserTaskRewards.Columns().RewardId).All() if err != nil { return ecode.Fail.Sub("获取用户任务奖励失败") }