|
@@ -477,39 +477,38 @@ func (f *Front) UserTaskSave() {
|
|
|
f.ServeJson(map[string]interface{}{"success": success, "msg": msg})
|
|
|
}
|
|
|
|
|
|
-// UserTaskList 用户任务分发列表
|
|
|
+// UserTaskList 用户任务列表
|
|
|
func (f *Front) UserTaskList() {
|
|
|
defer qu.Catch()
|
|
|
- //groupId := f.GetString("s_groupid") //用户组id
|
|
|
- groupTaskId := f.GetString("grouptaskid") //用户组任务id
|
|
|
- qu.Debug("groupTaskId:", groupTaskId)
|
|
|
+ user := f.GetSession("user").(map[string]interface{})
|
|
|
+ s_personid := qu.ObjToString(user["_id"])
|
|
|
if f.Method() == "POST" {
|
|
|
start, _ := f.GetInteger("start")
|
|
|
limit, _ := f.GetInteger("length")
|
|
|
draw, _ := f.GetInteger("draw")
|
|
|
status := f.GetString("s_status")
|
|
|
- login := f.GetString("s_login")
|
|
|
- //searchStr := f.GetString("search[value]")
|
|
|
- //search := strings.TrimSpace(searchStr)
|
|
|
+ searchStr := f.GetString("search[value]")
|
|
|
+ search := strings.TrimSpace(searchStr)
|
|
|
query := map[string]interface{}{
|
|
|
"s_stype": "user",
|
|
|
- "s_parentid": groupTaskId,
|
|
|
+ "s_personid": s_personid,
|
|
|
}
|
|
|
if status != "-1" { //任务状态
|
|
|
query["s_status"] = status
|
|
|
}
|
|
|
- if login != "-1" { //用户账号
|
|
|
- query["s_login"] = login
|
|
|
+ if search != "" {
|
|
|
+ query["$or"] = []interface{}{
|
|
|
+ map[string]interface{}{"s_projectname": map[string]interface{}{"$regex": search}},
|
|
|
+ }
|
|
|
}
|
|
|
qu.Debug("Query:", query)
|
|
|
count := Mgo.Count(TASKCOLLNAME, query)
|
|
|
list, _ := Mgo.Find(TASKCOLLNAME, query, map[string]interface{}{"_id": -1}, nil, false, start, limit)
|
|
|
for _, l := range *list {
|
|
|
if status := qu.ObjToString(l["s_status"]); status == "进行中" { //更新任务进度
|
|
|
- personid := qu.ObjToString(l["s_personid"])
|
|
|
giveNum := qu.IntAll(l["i_givenum"])
|
|
|
sourceinfo := qu.ObjToString(l["s_sourceinfo"])
|
|
|
- tagNum := Mgo.Count(sourceinfo, map[string]interface{}{"s_userid": personid, "b_istag": true})
|
|
|
+ tagNum := Mgo.Count(sourceinfo, map[string]interface{}{"s_usertaskid": mgo.BsonIdToSId(l["_id"]), "b_istag": true})
|
|
|
progressFloat := float64(tagNum) / float64(giveNum)
|
|
|
value, _ := strconv.ParseFloat(fmt.Sprintf("%.2f", progressFloat), 64)
|
|
|
progress := fmt.Sprint(value*100) + "%"
|
|
@@ -520,22 +519,7 @@ func (f *Front) UserTaskList() {
|
|
|
}
|
|
|
f.ServeJson(map[string]interface{}{"draw": draw, "data": *list, "recordsFiltered": count, "recordsTotal": count})
|
|
|
} else {
|
|
|
- sourceinfo := f.GetString("s_sourceinfo")
|
|
|
- qu.Debug(sourceinfo)
|
|
|
- //统计数据量
|
|
|
- isGiveNum := Mgo.Count(sourceinfo, map[string]interface{}{"s_grouptaskid": groupTaskId, "b_isgiveuser": true}) //已分发量
|
|
|
- isNotGiveNum := Mgo.Count(sourceinfo, map[string]interface{}{"s_grouptaskid": groupTaskId, "b_isgiveuser": false}) //待分发量
|
|
|
- isTagNum := Mgo.Count(sourceinfo, map[string]interface{}{"s_grouptaskid": groupTaskId, "b_istag": true}) //已标注数量
|
|
|
- isNotTagNum := Mgo.Count(sourceinfo, map[string]interface{}{"s_grouptaskid": groupTaskId, "b_istag": false}) //未标注数量
|
|
|
- allNum := Mgo.Count(sourceinfo, map[string]interface{}{"s_grouptaskid": groupTaskId}) //数据总量
|
|
|
- qu.Debug("数据总量:", allNum, "已分发量:", isGiveNum, "待分发量:", isNotGiveNum, "已标注量:", isTagNum, "未标注量:", isNotTagNum)
|
|
|
- f.T["grouptaskid"] = groupTaskId
|
|
|
- f.T["allNum"] = allNum
|
|
|
- f.T["isGiveNum"] = isGiveNum
|
|
|
- f.T["isNotGiveNum"] = isNotGiveNum
|
|
|
- f.T["isTagNum"] = isTagNum
|
|
|
- f.T["isNotTagNum"] = isNotTagNum
|
|
|
- _ = f.Render("project/task_detail.html", &f.T)
|
|
|
+ _ = f.Render("project/task_user_list.html", &f.T)
|
|
|
}
|
|
|
}
|
|
|
|