Browse Source

Merge branch 'dev2.0' of http://192.168.3.207:8080/data_processing/data_validation into dev2.0

* 'dev2.0' of http://192.168.3.207:8080/data_processing/data_validation:
  xg
Jianghan 3 years ago
parent
commit
e0e3f20ed1
2 changed files with 46 additions and 21 deletions
  1. 24 18
      src/front/project.go
  2. 22 3
      src/front/user.go

+ 24 - 18
src/front/project.go

@@ -121,18 +121,19 @@ func (f *Front) ProjectSave() {
 		qu.Debug(s_departname, s_entname, s_rulename, importDataNum)
 		//保存项目信息
 		set = map[string]interface{}{
-			"s_name":         s_name,                        //项目名称
-			"s_entname":      s_entname,                     //公司名称
-			"s_departname":   s_departname,                  //部门名称
-			"s_rulename":     strings.Join(s_rulename, ","), //规则名称
-			"i_importnum":    importDataNum,                 //导入数量
-			"s_sourceinfo":   s_sourceinfo,                  //源数据表
-			"s_createname":   username,                      //创建人
-			"s_status":       "未开始",                         //项目状态
-			"i_createtime":   time.Now().Unix(),             //创建时间
-			"s_importtype":   "coll",                        //导入类型
-			"s_historyid":    historyid,                     //源数据集标识
-			"b_isassessment": false,                         //是否进行了质量评估
+			"s_name":           s_name,                                //项目名称
+			"s_entname":        s_entname,                             //公司名称
+			"s_departname":     s_departname,                          //部门名称
+			"s_rulename":       strings.Join(s_rulename, ","),         //规则名称
+			"i_importnum":      importDataNum,                         //导入数量
+			"s_sourceinfo":     s_sourceinfo,                          //源数据表
+			"s_sourcetaskinfo": "s_sourcetaskinfo_" + s_sourceinfoTmp, //源数据表
+			"s_createname":     username,                              //创建人
+			"s_status":         "未开始",                                 //项目状态
+			"i_createtime":     time.Now().Unix(),                     //创建时间
+			"s_importtype":     "coll",                                //导入类型
+			"s_historyid":      historyid,                             //源数据集标识
+			"b_isassessment":   false,                                 //是否进行了质量评估
 		}
 	} else if stype == "edit" { //编辑保存
 		success = true
@@ -250,7 +251,7 @@ func (f *Front) ProjectTaskList() {
 				groupId := qu.ObjToString(l["s_groupid"])
 				giveNum := qu.IntAll(l["i_givenum"])
 				sourceinfo := qu.ObjToString(l["s_sourceinfo"])
-				tagNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"s_groupid": groupId, "b_istag": true})
+				tagNum := util.Mgo.Count(sourceinfo, map[string]interface{}{"b_isgivegroup": true, "s_groupid": groupId, "b_istag": true})
 				progress := fmt.Sprint(math.Ceil(float64(tagNum)/float64(giveNum))) + "%"
 				l["s_progress"] = progress
 				//同步数据库
@@ -277,9 +278,9 @@ func (f *Front) ProjectTaskList() {
 			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)
+			//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["s_sourceinfo"] = sourceinfo
 			f.T["allDataNum"] = allDataNum
@@ -385,6 +386,8 @@ func (f *Front) ProjectTaskSave() {
 			if success {
 				msg = "任务分发成功"
 				UpdateSourceinfo(sourceinfo, sourcetaskinfo, stype, groupIdTask) //用户组分发任务成功后,给数据源打上用户组标识,同时生成任务临时表
+			} else {
+				msg = "任务分发失败"
 			}
 		}
 	}
@@ -659,7 +662,7 @@ func UpdateSourceinfo(sourceinfo, sourcetaskinfo, stype string, groupIdInfo map[
 			query["b_istagging"] = true
 		}
 		fields := map[string]interface{}{
-			"title": 1,
+			"v_baseinfo": 1,
 		}
 		saveArr := []map[string]interface{}{}
 		updateArr := [][]map[string]interface{}{}
@@ -675,7 +678,10 @@ func UpdateSourceinfo(sourceinfo, sourcetaskinfo, stype string, groupIdInfo map[
 					wg.Done()
 				}()
 				id := mongodb.BsonIdToSId(tmp["_id"])
-				title := qu.ObjToString(tmp["title"])
+				title := ""
+				if baseinfo, ok := tmp["v_baseinfo"].(map[string]interface{}); ok {
+					title = qu.ObjToString(baseinfo["title"])
+				}
 				update := []map[string]interface{}{}
 				update = append(update, map[string]interface{}{"_id": tmp["_id"]})
 				update = append(update, map[string]interface{}{

+ 22 - 3
src/front/user.go

@@ -2,10 +2,12 @@ package front
 
 import (
 	"encoding/json"
+	"fmt"
 	"github.com/dchest/captcha"
 	"github.com/gorilla/sessions"
 	"go.mongodb.org/mongo-driver/bson"
 	"go.mongodb.org/mongo-driver/bson/primitive"
+	"math"
 	mgo "mongodb"
 	qu "qfw/util"
 	"strconv"
@@ -399,6 +401,9 @@ func (f *Front) UserTaskSave() {
 				"s_sourcetaskinfo": sourcetaskinfo,                                //任务日志表
 				"s_stype":          "user",                                        //任务类型
 				"s_parentid":       groupTaskId,                                   //父任务及用户组任务id
+				"s_entname":        qu.ObjToString((*groupTask)["s_entname"]),     //公司名称
+				"s_departname":     qu.ObjToString((*groupTask)["s_departname"]),  //部门名称
+				"s_rulename":       qu.ObjToString((*groupTask)["s_rulename"]),    //规则名称
 			}
 			taskArr = append(taskArr, userTask)
 		}
@@ -446,11 +451,12 @@ func (f *Front) UserTaskList() {
 		start, _ := f.GetInteger("start")
 		limit, _ := f.GetInteger("length")
 		draw, _ := f.GetInteger("draw")
-		status := f.GetString("status")
-		login := f.GetString("login")
+		status := f.GetString("s_status")
+		login := f.GetString("s_login")
 		//searchStr := f.GetString("search[value]")
 		//search := strings.TrimSpace(searchStr)
 		query := map[string]interface{}{
+			"s_stype":    "user",
 			"s_parentid": groupTaskId,
 		}
 		if status != "-1" { //任务状态
@@ -459,8 +465,21 @@ func (f *Front) UserTaskList() {
 		if login != "-1" { //用户账号
 			query["s_login"] = login
 		}
-		list, _ := Mgo.Find(TASKCOLLNAME, query, nil, nil, false, start, limit)
+		qu.Debug("Query:", query)
 		count := Mgo.Count(TASKCOLLNAME, query)
+		list, _ := Mgo.Find(TASKCOLLNAME, query, nil, 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})
+				progress := fmt.Sprint(math.Ceil(float64(tagNum)/float64(giveNum))) + "%"
+				l["s_progress"] = progress
+				//同步数据库
+				Mgo.UpdateById(TASKCOLLNAME, l["_id"], map[string]interface{}{"$set": map[string]interface{}{"s_progress": progress}})
+			}
+		}
 		f.ServeJson(map[string]interface{}{"draw": draw, "data": *list, "recordsFiltered": count, "recordsTotal": count})
 	} else {
 		sourcetaskinfo := f.GetString("s_sourcetaskinfo")