|
|
|
@ -27,11 +27,15 @@ func GetUserTaskStatus(a *app.Gin) (ret []*values.OneTask) { |
|
|
|
taskCfgs := call.GetConfigTask() |
|
|
|
taskCfgs := call.GetConfigTask() |
|
|
|
taskMap := make(map[int]*common.ConfigTaskStr) // 任务列表
|
|
|
|
taskMap := make(map[int]*common.ConfigTaskStr) // 任务列表
|
|
|
|
userTaskMap := make(map[int]*common.TaskData) |
|
|
|
userTaskMap := make(map[int]*common.TaskData) |
|
|
|
|
|
|
|
preTask := make(map[int]struct{}) |
|
|
|
var update bool |
|
|
|
var update bool |
|
|
|
for _, v := range taskCfgs { |
|
|
|
for _, v := range taskCfgs { |
|
|
|
taskMap[v.TaskID] = &common.ConfigTaskStr{ |
|
|
|
taskMap[v.TaskID] = &common.ConfigTaskStr{ |
|
|
|
ConfigTask: v, |
|
|
|
ConfigTask: v, |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if v.PreTaskId > 0 { |
|
|
|
|
|
|
|
preTask[v.PreTaskId] = struct{}{} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
for _, v := range userTask { |
|
|
|
for _, v := range userTask { |
|
|
|
if _, ok := taskMap[v.TaskID]; !ok { // 不存在则删除
|
|
|
|
if _, ok := taskMap[v.TaskID]; !ok { // 不存在则删除
|
|
|
|
@ -96,6 +100,9 @@ func GetUserTaskStatus(a *app.Gin) (ret []*values.OneTask) { |
|
|
|
if taskMap[v.TaskID].PreTaskId > 0 && userTaskMap[taskMap[v.TaskID].PreTaskId].TaskStatus != 2 { |
|
|
|
if taskMap[v.TaskID].PreTaskId > 0 && userTaskMap[taskMap[v.TaskID].PreTaskId].TaskStatus != 2 { |
|
|
|
continue |
|
|
|
continue |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if _, ok := preTask[v.TaskID]; ok && v.TaskStatus == 2 { |
|
|
|
|
|
|
|
continue |
|
|
|
|
|
|
|
} |
|
|
|
oneTask := &values.OneTask{ |
|
|
|
oneTask := &values.OneTask{ |
|
|
|
TaskID: v.TaskID, |
|
|
|
TaskID: v.TaskID, |
|
|
|
Progress: int64(v.TaskValue), |
|
|
|
Progress: int64(v.TaskValue), |
|
|
|
|