|
@@ -192,15 +192,15 @@ func (f *Front) ProjectClear() {
|
|
f.ServeJson("查询项目信息失败")
|
|
f.ServeJson("查询项目信息失败")
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- sourceinfo := f.GetString("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 := f.GetString("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_isgivegroup": 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_isgivegroup": true}) //未达标数据已分发量
|
|
|
|
+ tagNoGiveDataNum := tagAllDataNum - tagGiveDataNum //未达标待分发量
|
|
|
|
+ allGiveDataNum := noTagGiveDataNum + tagGiveDataNum //总分发量
|
|
|
|
+ allNoGiveDataNum := noTagNoGiveDataNum + tagNoGiveDataNum //总待分发量
|
|
allDataNum := allGiveDataNum + allNoGiveDataNum
|
|
allDataNum := allGiveDataNum + allNoGiveDataNum
|
|
|
|
|
|
f.ServeJson(map[string]interface{}{"allDataNum": allDataNum})
|
|
f.ServeJson(map[string]interface{}{"allDataNum": allDataNum})
|
|
@@ -279,7 +279,7 @@ func (f *Front) ProjectTaskSave() {
|
|
group := f.GetString("s_group")
|
|
group := f.GetString("s_group")
|
|
stype := f.GetString("s_type")
|
|
stype := f.GetString("s_type")
|
|
if err := json.Unmarshal([]byte(group), &groupArr); err != nil {
|
|
if err := json.Unmarshal([]byte(group), &groupArr); err != nil {
|
|
- qu.Debug("V_Filelds Unmarshal Failed:", err)
|
|
|
|
|
|
+ qu.Debug("GroupInfo Unmarshal Failed:", err)
|
|
msg = "用户组信息解析失败"
|
|
msg = "用户组信息解析失败"
|
|
} else {
|
|
} else {
|
|
if stype == "notag" { //如果分发的是达标数据且进行了初步质检,将没有质检记录的字段从v_taginfo标注记录中删除
|
|
if stype == "notag" { //如果分发的是达标数据且进行了初步质检,将没有质检记录的字段从v_taginfo标注记录中删除
|
|
@@ -289,16 +289,15 @@ func (f *Front) ProjectTaskSave() {
|
|
groupId := qu.ObjToString(groupInfo["s_groupid"])
|
|
groupId := qu.ObjToString(groupInfo["s_groupid"])
|
|
groupIdArr = append(groupIdArr, groupId)
|
|
groupIdArr = append(groupIdArr, groupId)
|
|
givenum := qu.IntAll(groupInfo["i_givenum"])
|
|
givenum := qu.IntAll(groupInfo["i_givenum"])
|
|
- //groupIdMap[groupId] = givenum
|
|
|
|
- _id := primitive.NewObjectID()
|
|
|
|
- sid := mongodb.BsonIdToSId(_id)
|
|
|
|
|
|
+ groupTaskId := primitive.NewObjectID()
|
|
|
|
+ groupTaskIdStr := mongodb.BsonIdToSId(groupTaskId)
|
|
gt := util.Task{
|
|
gt := util.Task{
|
|
- GroupId: groupId,
|
|
|
|
|
|
+ UserId: groupId,
|
|
GiveNum: givenum,
|
|
GiveNum: givenum,
|
|
}
|
|
}
|
|
- groupIdTask[sid] = gt
|
|
|
|
|
|
+ groupIdTask[groupTaskIdStr] = gt
|
|
groupTask := map[string]interface{}{
|
|
groupTask := map[string]interface{}{
|
|
- "_id": _id, //生成任务id
|
|
|
|
|
|
+ "_id": groupTaskId, //生成任务id
|
|
"s_projectid": projectid, //项目标识
|
|
"s_projectid": projectid, //项目标识
|
|
"s_projectname": projectname, //项目名称
|
|
"s_projectname": projectname, //项目名称
|
|
"s_status": "未开始", //任务状态
|
|
"s_status": "未开始", //任务状态
|
|
@@ -430,7 +429,7 @@ func (f *Front) ProjectTaskRetrieve() {
|
|
sourcetaskinfo := f.GetString("s_sourcetaskinfo")
|
|
sourcetaskinfo := f.GetString("s_sourcetaskinfo")
|
|
if status == "已完成" {
|
|
if status == "已完成" {
|
|
count1 := util.Mgo.Count(sourceinfo, map[string]interface{}{"s_groupid": groupId, "b_istag": false})
|
|
count1 := util.Mgo.Count(sourceinfo, map[string]interface{}{"s_groupid": groupId, "b_istag": false})
|
|
- count2 := util.Mgo.Count(sourcetaskinfo, map[string]interface{}{"s_groupid": groupId, "s_complete": false})
|
|
|
|
|
|
+ count2 := util.Mgo.Count(sourcetaskinfo, map[string]interface{}{"s_groupid": groupId, "b_iscomplete": false})
|
|
if count1 != count2 { //数据源表和临时表数量不一致
|
|
if count1 != count2 { //数据源表和临时表数量不一致
|
|
qu.Debug("Count Is Not Same:", sourceinfo+":", count1, sourceinfo+":", count2)
|
|
qu.Debug("Count Is Not Same:", sourceinfo+":", count1, sourceinfo+":", count2)
|
|
}
|
|
}
|
|
@@ -454,15 +453,15 @@ func (f *Front) ProjectTaskRetrieve() {
|
|
//1、更新源数据表
|
|
//1、更新源数据表
|
|
success1 := util.Mgo.Update(sourceinfo, map[string]interface{}{"s_groupid": groupId, "b_istag": false}, map[string]interface{}{
|
|
success1 := util.Mgo.Update(sourceinfo, map[string]interface{}{"s_groupid": groupId, "b_istag": false}, map[string]interface{}{
|
|
"$set": map[string]interface{}{
|
|
"$set": map[string]interface{}{
|
|
- "b_isgive": false,
|
|
|
|
- "i_updatetime": time.Now().Unix(),
|
|
|
|
|
|
+ "b_isgivegroup": false,
|
|
|
|
+ "i_updatetime": time.Now().Unix(),
|
|
},
|
|
},
|
|
"$unset": map[string]interface{}{
|
|
"$unset": map[string]interface{}{
|
|
"s_groupid": "",
|
|
"s_groupid": "",
|
|
},
|
|
},
|
|
}, false, true)
|
|
}, false, true)
|
|
//2、删除临时任务表中对应未完成数据
|
|
//2、删除临时任务表中对应未完成数据
|
|
- success2 := util.Mgo.Del(sourcetaskinfo, map[string]interface{}{"s_groupid": groupId, "s_complete": false})
|
|
|
|
|
|
+ success2 := util.Mgo.Del(sourcetaskinfo, map[string]interface{}{"s_groupid": groupId, "b_iscomplete": false})
|
|
if success1 && success2 {
|
|
if success1 && success2 {
|
|
//更新任务状态、完成时间
|
|
//更新任务状态、完成时间
|
|
success = util.Mgo.UpdateById(util.TASKCOLLNAME, taskId, map[string]interface{}{
|
|
success = util.Mgo.UpdateById(util.TASKCOLLNAME, taskId, map[string]interface{}{
|
|
@@ -586,7 +585,7 @@ func DeleleDataTagInfo(sourceinfo string) {
|
|
func UpdateSourceinfo(sourceinfo, sourcetaskinfo, stype string, groupIdInfo map[string]util.Task) {
|
|
func UpdateSourceinfo(sourceinfo, sourcetaskinfo, stype string, groupIdInfo map[string]util.Task) {
|
|
defer qu.Catch()
|
|
defer qu.Catch()
|
|
for groupTaskId, tInfo := range groupIdInfo {
|
|
for groupTaskId, tInfo := range groupIdInfo {
|
|
- groupid := tInfo.GroupId
|
|
|
|
|
|
+ groupId := tInfo.UserId
|
|
num := tInfo.GiveNum
|
|
num := tInfo.GiveNum
|
|
sess := util.Mgo.GetMgoConn()
|
|
sess := util.Mgo.GetMgoConn()
|
|
defer util.Mgo.DestoryMongoConn(sess)
|
|
defer util.Mgo.DestoryMongoConn(sess)
|
|
@@ -594,7 +593,7 @@ func UpdateSourceinfo(sourceinfo, sourcetaskinfo, stype string, groupIdInfo map[
|
|
wg := &sync.WaitGroup{}
|
|
wg := &sync.WaitGroup{}
|
|
lock := &sync.Mutex{}
|
|
lock := &sync.Mutex{}
|
|
query := map[string]interface{}{ //查找未分配对应stype的数据分发
|
|
query := map[string]interface{}{ //查找未分配对应stype的数据分发
|
|
- "b_isgive": false,
|
|
|
|
|
|
+ "b_isgivegroup": false,
|
|
}
|
|
}
|
|
if stype == "notag" { //达标数据
|
|
if stype == "notag" { //达标数据
|
|
query["b_istagging"] = false
|
|
query["b_istagging"] = false
|
|
@@ -623,18 +622,19 @@ func UpdateSourceinfo(sourceinfo, sourcetaskinfo, stype string, groupIdInfo map[
|
|
update = append(update, map[string]interface{}{"_id": tmp["_id"]})
|
|
update = append(update, map[string]interface{}{"_id": tmp["_id"]})
|
|
update = append(update, map[string]interface{}{
|
|
update = append(update, map[string]interface{}{
|
|
"$set": map[string]interface{}{
|
|
"$set": map[string]interface{}{
|
|
- "s_groupid": groupid,
|
|
|
|
- "b_isgive": true,
|
|
|
|
- "i_updatetime": time.Now().Unix(),
|
|
|
|
|
|
+ "s_groupid": groupId,
|
|
|
|
+ "b_isgivegroup": true,
|
|
|
|
+ "i_updatetime": time.Now().Unix(),
|
|
},
|
|
},
|
|
})
|
|
})
|
|
save := map[string]interface{}{
|
|
save := map[string]interface{}{
|
|
"s_infoid": id,
|
|
"s_infoid": id,
|
|
"s_infotitle": title,
|
|
"s_infotitle": title,
|
|
- "s_groupid": groupid,
|
|
|
|
|
|
+ "s_groupid": groupId,
|
|
"i_createtime": time.Now().Unix(),
|
|
"i_createtime": time.Now().Unix(),
|
|
- "s_complete": false,
|
|
|
|
|
|
+ "b_iscomplete": false,
|
|
"s_grouptaskid": groupTaskId,
|
|
"s_grouptaskid": groupTaskId,
|
|
|
|
+ "b_isgiveuser": false,
|
|
}
|
|
}
|
|
lock.Lock()
|
|
lock.Lock()
|
|
updateArr = append(updateArr, update)
|
|
updateArr = append(updateArr, update)
|
|
@@ -944,9 +944,9 @@ func GetDataById(idsInfo map[string]map[string]interface{}, importType, s_source
|
|
baseInfoMap["v_taginfo"] = tagInfoMap
|
|
baseInfoMap["v_taginfo"] = tagInfoMap
|
|
}
|
|
}
|
|
baseInfoMap["i_createtime"] = time.Now().Unix()
|
|
baseInfoMap["i_createtime"] = time.Now().Unix()
|
|
- baseInfoMap["b_isgive"] = false //是否分配
|
|
|
|
- baseInfoMap["b_istag"] = false //是否已标注
|
|
|
|
- baseInfoMap["b_cleartag"] = false //是否清理标注信息
|
|
|
|
|
|
+ baseInfoMap["b_isgivegroup"] = false //是否分配
|
|
|
|
+ baseInfoMap["b_istag"] = false //是否已标注
|
|
|
|
+ baseInfoMap["b_cleartag"] = false //是否清理标注信息
|
|
|
|
|
|
if util.Mgo.SaveByOriID(s_sourceinfo, baseInfoMap) {
|
|
if util.Mgo.SaveByOriID(s_sourceinfo, baseInfoMap) {
|
|
atomic.AddInt64(successNum, 1) //保存成功计数
|
|
atomic.AddInt64(successNum, 1) //保存成功计数
|