新增获取用户完成任务列表,修改领取任务
This commit is contained in:
@ -210,6 +210,7 @@ func (s *sTask) GetLoginTaskList(ctx context.Context, in *model.GetTaskListIn) (
|
||||
QqNetbarTargetTime: task.TargetTimes,
|
||||
StartTime: task.CycleStart,
|
||||
EndTime: task.CycleEnd,
|
||||
Status: task.Status,
|
||||
}
|
||||
data.UserTaskResult.Usertimes = task.UserTimes
|
||||
// 组装门店奖励数据
|
||||
@ -228,29 +229,27 @@ func (s *sTask) GetLoginTaskList(ctx context.Context, in *model.GetTaskListIn) (
|
||||
}, err
|
||||
}
|
||||
|
||||
func (s *sTask) GetTaskList(ctx context.Context, in *model.TaskListIn) (out *model.TaskListOut, err error) {
|
||||
// GetTaskCompletedList 获取用户任务完成列表
|
||||
func (s *sTask) GetTaskCompletedList(ctx context.Context, in *model.TaskListIn) (out *model.TaskListOut, err error) {
|
||||
|
||||
var data []model.Task
|
||||
m := dao.UserTasks.Ctx(ctx)
|
||||
var data []model.UserTask
|
||||
var total int
|
||||
m := dao.Tasks.Ctx(ctx)
|
||||
|
||||
if in.StoreId != 0 {
|
||||
m = m.Where(do.Tasks{StoreId: in.StoreId})
|
||||
if in.StoreId > 0 {
|
||||
m = m.Where(dao.UserTasks.Columns().StoreId, in.StoreId)
|
||||
}
|
||||
|
||||
err = m.Page(in.Page, in.Size).Where(do.Tasks{GameId: in.Gid}).ScanAndCount(&data, &total, false)
|
||||
//err = m.Page(in.Page, in.Size).Fields(fmt.Sprintf("%s.*, %s.*,%s.*, %s.*", dao.UserTasks.Table(), dao.Users.Table(), dao.Stores.Table(), dao.Games.Table())).
|
||||
// LeftJoin(dao.Users.Table(), fmt.Sprintf("`%s`.`id` = `%s`.`user_id`", dao.Users.Table(), dao.UserTasks.Table())).
|
||||
// LeftJoin(dao.Stores.Table(), fmt.Sprintf("`%s`.`id` = `%s`.`store_id`", dao.Stores.Table(), dao.UserTasks.Table())).
|
||||
// LeftJoin(dao.Games.Table(), fmt.Sprintf("`%s`.`game_id` = `%s`.`game_id`", dao.Games.Table(), dao.UserTasks.Table())).WithAll().ScanAndCount(&data, &total, false)
|
||||
|
||||
err = m.Page(in.Page, in.Size).WithAll().ScanAndCount(&data, &total, false)
|
||||
|
||||
if err != nil {
|
||||
return nil, ecode.Fail.Sub("任务列表获取失败")
|
||||
return nil, ecode.Fail.Sub("获取已完成任务列表失败")
|
||||
}
|
||||
|
||||
for i, v := range data {
|
||||
if err = dao.StoreTaskRewards.Ctx(ctx).Where(do.StoreTaskRewards{TaskId: v.Id, StoreId: in.StoreId}).LeftJoin(
|
||||
dao.Rewards.Table(),
|
||||
fmt.Sprintf("%s.%s = %s.%s", dao.Rewards.Table(), dao.Rewards.Columns().Id, dao.StoreTaskRewards.Table(), dao.StoreTaskRewards.Columns().RewardId),
|
||||
).Fields(fmt.Sprintf("%s.*", dao.Rewards.Table())).Scan(&data[i].NetbarRewards); err != nil {
|
||||
return nil, ecode.Fail.Sub("任务奖励获取失败")
|
||||
}
|
||||
}
|
||||
return &model.TaskListOut{
|
||||
List: data,
|
||||
Total: total,
|
||||
@ -280,7 +279,7 @@ func (s *sTask) GetSelectorList(ctx context.Context, in *model.SelectorIn) (out
|
||||
func (s *sTask) GetTask(ctx context.Context, in *model.GetTaskIn) (out *model.GetTaskOut, err error) {
|
||||
|
||||
var userTask []*model.UserTask
|
||||
err = dao.UserTasks.Ctx(ctx).Where(do.UserTasks{UserId: in.UserId, TaskId: in.TaskId, StoreId: in.StoreId}).WhereNot("status", 3).Scan(&userTask)
|
||||
err = dao.UserTasks.Ctx(ctx).Where(do.UserTasks{UserId: in.UserId, TaskId: in.TaskId, StoreId: in.StoreId, GameId: in.GameId}).WhereNot("status", 3).Scan(&userTask)
|
||||
if err != nil {
|
||||
return nil, ecode.Fail.Sub("查询用户该任务记录失败")
|
||||
}
|
||||
@ -302,6 +301,8 @@ func (s *sTask) GetTask(ctx context.Context, in *model.GetTaskIn) (out *model.Ge
|
||||
StoreId: in.StoreId,
|
||||
Status: 1,
|
||||
SerialNumber: serialNumber,
|
||||
TaskName: in.TaskName,
|
||||
GameId: in.GameId,
|
||||
})
|
||||
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user