|
@@ -175,60 +175,61 @@ func (f *Front) ProjectSave() {
|
|
|
}
|
|
|
|
|
|
// ProjectClear 项目清洗
|
|
|
-func (f *Front) ProjectClear() {
|
|
|
- defer qu.Catch()
|
|
|
- if f.Method() == "POST" {
|
|
|
- projectid := f.GetString("s_projectid") //项目id
|
|
|
- project, _ := util.Mgo.FindById(util.PROJECTCOLLNAME, projectid, map[string]interface{}{"s_status": 1, "s_sourceinfo": 1})
|
|
|
- if project != nil && len(*project) > 0 {
|
|
|
- if status := qu.ObjToString((*project)["s_status"]); status == "未开始" {
|
|
|
- //TODO:调用数据质量评估接口
|
|
|
- //点击清洗更新项目状态为进行中
|
|
|
- b := util.Mgo.UpdateById(util.PROJECTCOLLNAME, projectid, map[string]interface{}{"$set": map[string]interface{}{"s_status": "进行中", "i_starttime": time.Now().Unix()}})
|
|
|
- qu.Debug("Update Porject:"+projectid+" Status Success:", b)
|
|
|
- }
|
|
|
- } else {
|
|
|
- qu.Debug("Search Porject Failed:", projectid)
|
|
|
- f.ServeJson("查询项目信息失败")
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- sourceinfo := qu.ObjToString((*project)["s_sourceinfo"]) //数据源表
|
|
|
- noTagAllDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": false}) //达标数据总量
|
|
|
- noTagGiveDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": false, "b_isgive": true}) //达标数据已分发量
|
|
|
- noTagNoGiveDataNum := noTagAllDataNum - noTagGiveDataNum //达标待分发量
|
|
|
- tagAllDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": true}) //未达标数据总量
|
|
|
- tagGiveDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": true, "b_isgive": true}) //未达标数据已分发量
|
|
|
- tagNoGiveDataNum := tagAllDataNum - tagGiveDataNum //未达标待分发量
|
|
|
- allGiveDataNum := noTagGiveDataNum + tagGiveDataNum //总分发量
|
|
|
- allNoGiveDataNum := noTagNoGiveDataNum + tagNoGiveDataNum //总待分发量
|
|
|
- allDataNum := allGiveDataNum + allNoGiveDataNum
|
|
|
-
|
|
|
- data := make(map[string]interface{})
|
|
|
- data["allDataNum"] = allDataNum
|
|
|
- data["allGiveDataNum"] = allGiveDataNum
|
|
|
- data["allNoGiveDataNum"] = allNoGiveDataNum
|
|
|
- data["noTagAllDataNum"] = noTagAllDataNum
|
|
|
- data["noTagGiveDataNum"] = noTagGiveDataNum
|
|
|
- data["noTagNoGiveDataNum"] = noTagNoGiveDataNum
|
|
|
- data["tagAllDataNum"] = tagAllDataNum
|
|
|
- data["tagGiveDataNum"] = tagGiveDataNum
|
|
|
- data["tagNoGiveDataNum"] = tagNoGiveDataNum
|
|
|
- data["s_projectid"] = projectid
|
|
|
- qu.Debug(data)
|
|
|
- f.ServeJson(data)
|
|
|
- } else {
|
|
|
- pid := f.GetString("pid")
|
|
|
- f.T["s_projectid"] = pid
|
|
|
- _ = f.Render("project/project_clear.html", &f.T)
|
|
|
- }
|
|
|
-
|
|
|
-}
|
|
|
+//func (f *Front) ProjectClear() {
|
|
|
+// defer qu.Catch()
|
|
|
+// if f.Method() == "POST" {
|
|
|
+// projectid := f.GetString("s_projectid") //项目id
|
|
|
+// project, _ := util.Mgo.FindById(util.PROJECTCOLLNAME, projectid, map[string]interface{}{"s_status": 1, "s_sourceinfo": 1})
|
|
|
+// if project != nil && len(*project) > 0 {
|
|
|
+// if status := qu.ObjToString((*project)["s_status"]); status == "未开始" {
|
|
|
+// //TODO:调用数据质量评估接口
|
|
|
+// //点击清洗更新项目状态为进行中
|
|
|
+// b := util.Mgo.UpdateById(util.PROJECTCOLLNAME, projectid, map[string]interface{}{"$set": map[string]interface{}{"s_status": "进行中", "i_starttime": time.Now().Unix()}})
|
|
|
+// qu.Debug("Update Porject:"+projectid+" Status Success:", b)
|
|
|
+// }
|
|
|
+// } else {
|
|
|
+// qu.Debug("Search Porject Failed:", projectid)
|
|
|
+// f.ServeJson("查询项目信息失败")
|
|
|
+// return
|
|
|
+// }
|
|
|
+//
|
|
|
+// sourceinfo := qu.ObjToString((*project)["s_sourceinfo"]) //数据源表
|
|
|
+// noTagAllDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": false}) //达标数据总量
|
|
|
+// noTagGiveDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": false, "b_isgive": true}) //达标数据已分发量
|
|
|
+// noTagNoGiveDataNum := noTagAllDataNum - noTagGiveDataNum //达标待分发量
|
|
|
+// tagAllDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": true}) //未达标数据总量
|
|
|
+// tagGiveDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": true, "b_isgive": true}) //未达标数据已分发量
|
|
|
+// tagNoGiveDataNum := tagAllDataNum - tagGiveDataNum //未达标待分发量
|
|
|
+// allGiveDataNum := noTagGiveDataNum + tagGiveDataNum //总分发量
|
|
|
+// allNoGiveDataNum := noTagNoGiveDataNum + tagNoGiveDataNum //总待分发量
|
|
|
+// allDataNum := allGiveDataNum + allNoGiveDataNum
|
|
|
+//
|
|
|
+// data := make(map[string]interface{})
|
|
|
+// data["allDataNum"] = allDataNum
|
|
|
+// data["allGiveDataNum"] = allGiveDataNum
|
|
|
+// data["allNoGiveDataNum"] = allNoGiveDataNum
|
|
|
+// data["noTagAllDataNum"] = noTagAllDataNum
|
|
|
+// data["noTagGiveDataNum"] = noTagGiveDataNum
|
|
|
+// data["noTagNoGiveDataNum"] = noTagNoGiveDataNum
|
|
|
+// data["tagAllDataNum"] = tagAllDataNum
|
|
|
+// data["tagGiveDataNum"] = tagGiveDataNum
|
|
|
+// data["tagNoGiveDataNum"] = tagNoGiveDataNum
|
|
|
+// data["s_projectid"] = projectid
|
|
|
+// qu.Debug(data)
|
|
|
+// f.ServeJson(data)
|
|
|
+// } else {
|
|
|
+// pid := f.GetString("pid")
|
|
|
+// f.T["s_projectid"] = pid
|
|
|
+// _ = f.Render("project/project_clear.html", &f.T)
|
|
|
+// }
|
|
|
+//
|
|
|
+//}
|
|
|
|
|
|
// ProjectTaskList 用户组任务分发列表
|
|
|
func (f *Front) ProjectTaskList() {
|
|
|
defer qu.Catch()
|
|
|
projectid := f.GetString("pid") //项目id
|
|
|
+ qu.Debug("Project Id:", projectid)
|
|
|
if f.Method() == "POST" {
|
|
|
status := f.GetString("s_status") //任务状态
|
|
|
searchStr := f.GetString("search[value]")
|
|
@@ -273,26 +274,38 @@ func (f *Front) ProjectTaskList() {
|
|
|
qu.Debug("Update Porject:"+projectid+" Status Success:", b)
|
|
|
}
|
|
|
}
|
|
|
- sourceinfo := qu.ObjToString((*project)["s_sourceinfo"]) //数据源表
|
|
|
- noTagAllDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": false}) //达标数据总量
|
|
|
- noTagGiveDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": false, "b_isgive": true}) //达标数据已分发量
|
|
|
- noTagNoGiveDataNum := noTagAllDataNum - noTagGiveDataNum //达标待分发量
|
|
|
- tagAllDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": true}) //未达标数据总量
|
|
|
- tagGiveDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": true, "b_isgive": true}) //未达标数据已分发量
|
|
|
- tagNoGiveDataNum := tagAllDataNum - tagGiveDataNum //未达标待分发量
|
|
|
- allGiveDataNum := noTagGiveDataNum + tagGiveDataNum //总分发量
|
|
|
- allNoGiveDataNum := noTagNoGiveDataNum + tagNoGiveDataNum //总待分发量
|
|
|
+ sourceinfo := qu.ObjToString((*project)["s_sourceinfo"]) //数据源表
|
|
|
+ qu.Debug(sourceinfo)
|
|
|
+ okAllDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": false}) //达标数据总量
|
|
|
+ okIsGiveDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": false, "b_isgivegroup": true}) //达标数据已分发量
|
|
|
+ okNotGiveDataNum := okAllDataNum - okIsGiveDataNum //达标待分发量
|
|
|
+ okIsTagDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": false, "b_istag": true}) //达标已标注量
|
|
|
+
|
|
|
+ IsNoOkAllDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": true}) //未达标数据总量
|
|
|
+ IsNoOkIsGiveDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": true, "b_isgivegroup": true}) //未达标数据已分发量
|
|
|
+ IsNotOkNotGiveDataNum := IsNoOkAllDataNum - IsNoOkIsGiveDataNum //未达标待分发量
|
|
|
+ IsNotOkIsTagDataNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_istagging": true, "b_istag": true}) //未达标已标注量
|
|
|
+
|
|
|
+ allGiveDataNum := okIsGiveDataNum + IsNoOkIsGiveDataNum //总分发量
|
|
|
+ allNoGiveDataNum := okNotGiveDataNum + IsNotOkNotGiveDataNum //总待分发量
|
|
|
+ allIsTagDataNum := okIsTagDataNum + IsNotOkIsTagDataNum //已标注总量
|
|
|
allDataNum := allGiveDataNum + allNoGiveDataNum
|
|
|
+ qu.Debug("数据总量:", allDataNum, "已分发总量:", allGiveDataNum, "待分发总量:", allNoGiveDataNum, "已标注总量:", allIsTagDataNum)
|
|
|
+ qu.Debug("达标量:", okAllDataNum, "达标已分发量:", okIsGiveDataNum, "达标待分发量:", okNotGiveDataNum, "达标已标注量:", okIsTagDataNum)
|
|
|
+ qu.Debug(" 未达标量:", IsNoOkAllDataNum, " 未达标已分发量:", IsNoOkIsGiveDataNum, " 未达标待分发量:", IsNotOkNotGiveDataNum, " 未达标已标注量:", IsNotOkIsTagDataNum)
|
|
|
f.T["s_projectid"] = projectid
|
|
|
f.T["allDataNum"] = allDataNum
|
|
|
- f.T["noTagAllDataNum"] = noTagAllDataNum
|
|
|
- f.T["noTagGiveDataNum"] = noTagGiveDataNum
|
|
|
- f.T["noTagNoGiveDataNum"] = noTagNoGiveDataNum
|
|
|
- f.T["tagAllDataNum"] = tagAllDataNum
|
|
|
- f.T["tagGiveDataNum"] = tagGiveDataNum
|
|
|
- f.T["tagNoGiveDataNum"] = tagNoGiveDataNum
|
|
|
+ f.T["okAllDataNum"] = okAllDataNum
|
|
|
+ f.T["okIsGiveDataNum"] = okIsGiveDataNum
|
|
|
+ f.T["okNotGiveDataNum"] = okNotGiveDataNum
|
|
|
+ f.T["IsNoOkAllDataNum"] = IsNoOkAllDataNum
|
|
|
+ f.T["IsNoOkIsGiveDataNum"] = IsNoOkIsGiveDataNum
|
|
|
+ f.T["IsNotOkNotGiveDataNum"] = IsNotOkNotGiveDataNum
|
|
|
f.T["allGiveDataNum"] = allGiveDataNum
|
|
|
f.T["allNoGiveDataNum"] = allNoGiveDataNum
|
|
|
+ f.T["allIsTagDataNum"] = allIsTagDataNum
|
|
|
+ f.T["okIsTagDataNum"] = okIsTagDataNum
|
|
|
+ f.T["IsNotOkIsTagDataNum"] = IsNotOkIsTagDataNum
|
|
|
_ = f.Render("project/project_clear.html", &f.T)
|
|
|
}
|
|
|
|
|
@@ -304,6 +317,7 @@ func (f *Front) ProjectTaskSave() {
|
|
|
var groupArr []map[string]interface{}
|
|
|
var taskArr []map[string]interface{}
|
|
|
var groupIdArr []string
|
|
|
+ var groupTaskIdArr []string
|
|
|
groupIdTask := map[string]util.Task{}
|
|
|
success := false
|
|
|
msg := ""
|
|
@@ -328,6 +342,7 @@ func (f *Front) ProjectTaskSave() {
|
|
|
givenum := qu.IntAll(groupInfo["i_givenum"])
|
|
|
groupTaskId := primitive.NewObjectID()
|
|
|
groupTaskIdStr := mongodb.BsonIdToSId(groupTaskId)
|
|
|
+ groupTaskIdArr = append(groupTaskIdArr, groupTaskIdStr)
|
|
|
gt := util.Task{
|
|
|
UserId: groupId,
|
|
|
GiveNum: givenum,
|
|
@@ -360,6 +375,9 @@ func (f *Front) ProjectTaskSave() {
|
|
|
"v_groupids": map[string]interface{}{
|
|
|
"$each": groupIdArr,
|
|
|
},
|
|
|
+ "v_grouptaskids": map[string]interface{}{
|
|
|
+ "$each": groupTaskIdArr,
|
|
|
+ },
|
|
|
},
|
|
|
})
|
|
|
if !success {
|