调整已登录任务列表接口

This commit is contained in:
chy
2025-06-27 15:00:59 +08:00
parent ae19e9917e
commit ba28d0621a
6 changed files with 34 additions and 6 deletions

View File

@ -229,7 +229,7 @@ func (s *sTask) GetLoginTaskList(ctx context.Context, in *model.GetTaskListIn) (
QqNetbarTargetTime: task.TargetTimes,
StartTime: task.CycleStart,
EndTime: task.CycleEnd,
Status: task.Status,
//Status: task.Status,
}
data.UserTaskResult.Usertimes = task.UserTimes
// 组装门店奖励数据
@ -252,7 +252,33 @@ func (s *sTask) GetLoginTaskList(ctx context.Context, in *model.GetTaskListIn) (
if err != nil {
return nil, err
}
// 任务状态=1或者2不做操作其他查询门店奖励是否全部领取
if task.Status != 1 && task.Status != 2 {
count, err := dao.UserTasks.Ctx(ctx).Where(dao.UserTasks.Columns().TaskId, task.TaskID).Where(dao.UserTasks.Columns().UserId, in.UserId).LeftJoin(dao.UserTaskRewards.Table(),
fmt.Sprintf("%s.user_tasks_id = %s.id", dao.UserTaskRewards.Table(), dao.UserTasks.Table())).LeftJoin(dao.Rewards.Table(), fmt.Sprintf("%s.id = %s.reward_id",
dao.Rewards.Table(), dao.UserTaskRewards.Table())).Where(dao.Rewards.Columns().Source, 2).Where(dao.UserTaskRewards.Columns().Status, 2).Count()
if err != nil {
return nil, ecode.Fail.Sub("查询用户门店任务奖励失败")
}
if count > 0 {
data.Status = 2
} else {
data.Status = 3
}
} else {
data.Status = task.Status
}
tasks = append(tasks, data)
// 根据用户完成次数和任务指标次数判任务是否完成,修改任务记录状态为 3
if int(task.UserTimes) >= task.TargetTimes {
_, err := dao.UserTasks.Ctx(ctx).Where(do.UserTasks{TaskId: task.TaskID}).Where(do.UserTasks{UserId: in.UserId}).Data(do.UserTasks{Status: 3}).Update()
if err != nil {
return nil, ecode.Fail.Sub("更新用户任务记录状态异常")
}
}
}
return &model.GetTaskListOut{