|
@@ -69,16 +69,13 @@ func doBiddingTask(gtid, lteid string, mapInfo map[string]interface{}) {
|
|
|
func taskB() {
|
|
|
sess := MongoB.GetMgoConn()
|
|
|
defer MongoB.DestoryMongoConn(sess)
|
|
|
-
|
|
|
ch := make(chan bool, 10)
|
|
|
wg := &sync.WaitGroup{}
|
|
|
-
|
|
|
- //q := map[string]interface{}{"_id": mongodb.StringTOBsonId("634eac71911e1eb345b2d861")}
|
|
|
- q := map[string]interface{}{"_id": map[string]interface{}{"$gt": mongodb.StringTOBsonId("632d42d667a6b0a2861eef92")}}
|
|
|
+ q := map[string]interface{}{"_id": map[string]interface{}{"$gt": mongodb.StringTOBsonId("132d42d667a6b0a2861eef92")}}
|
|
|
query := sess.DB(config.Conf.DB.MongoB.Dbname).C("bidding").Find(q).Sort("_id").Iter()
|
|
|
count := 0
|
|
|
for tmp := make(map[string]interface{}); query.Next(tmp); count++ {
|
|
|
- if count%20000 == 0 {
|
|
|
+ if count%10000 == 0 {
|
|
|
log.Info(fmt.Sprintf("current --- %d", count))
|
|
|
}
|
|
|
ch <- true
|
|
@@ -88,24 +85,23 @@ func taskB() {
|
|
|
<-ch
|
|
|
wg.Done()
|
|
|
}()
|
|
|
-
|
|
|
if util.IntAll(tmp["extracttype"]) != -1 {
|
|
|
- taskBase(tmp)
|
|
|
- taskTags(tmp)
|
|
|
- taskExpand(tmp)
|
|
|
- taskAtts(tmp)
|
|
|
- taskInfoformat(tmp)
|
|
|
- taskIntent(tmp)
|
|
|
- taskWinner(tmp)
|
|
|
+ //taskBase(tmp) //基础标讯数据
|
|
|
+ //taskTags(tmp) //标签信息
|
|
|
+ //taskExpand(tmp) //扩展数据
|
|
|
+ taskDetail(tmp) //正文信息
|
|
|
+ //taskAtts(tmp) //附件信息
|
|
|
+ //taskInfoformat(tmp) //拟建
|
|
|
+ //taskIntent(tmp) //采购意向
|
|
|
+ //taskWinner(tmp)
|
|
|
//taskPackage(tmp)
|
|
|
- taskPur(tmp)
|
|
|
+ //taskPur(tmp)
|
|
|
}
|
|
|
-
|
|
|
}(tmp)
|
|
|
tmp = make(map[string]interface{})
|
|
|
}
|
|
|
wg.Wait()
|
|
|
- log.Info(fmt.Sprintf("over --- %d", count))
|
|
|
+ log.Info(fmt.Sprintf("is over --- %d", count))
|
|
|
}
|
|
|
|
|
|
// @Description 基本信息
|
|
@@ -113,79 +109,71 @@ func taskB() {
|
|
|
func taskBase(tmp map[string]interface{}) {
|
|
|
saveM := make(map[string]interface{})
|
|
|
var errf []string // 异常字段
|
|
|
- for _, f := range BaseField {
|
|
|
- if f == "infoid" {
|
|
|
- saveM[f] = mongodb.BsonIdToSId(tmp["_id"])
|
|
|
+ for _, nf := range BaseField {
|
|
|
+ f := nf[2:]
|
|
|
+ if f == "info_id" {
|
|
|
+ saveM[nf] = mongodb.BsonIdToSId(tmp["_id"])
|
|
|
} else if f == "area_code" {
|
|
|
if tmp["area"] != nil {
|
|
|
- saveM[f] = AreaCode[util.ObjToString(tmp["area"])]
|
|
|
+ saveM[nf] = AreaCode[util.ObjToString(tmp["area"])]
|
|
|
}
|
|
|
} else if f == "city_code" {
|
|
|
if tmp["area"] != nil && tmp["city"] != nil {
|
|
|
c := util.ObjToString(tmp["area"]) + "," + util.ObjToString(tmp["city"])
|
|
|
- saveM[f] = AreaCode[c]
|
|
|
+ saveM[nf] = AreaCode[c]
|
|
|
}
|
|
|
} else if f == "district_code" {
|
|
|
if tmp["area"] != nil && tmp["city"] != nil && tmp["district"] != nil {
|
|
|
c := util.ObjToString(tmp["area"]) + "," + util.ObjToString(tmp["city"]) + "," + util.ObjToString(tmp["district"])
|
|
|
- saveM[f] = AreaCode[c]
|
|
|
+ saveM[nf] = AreaCode[c]
|
|
|
}
|
|
|
} else if f == "toptype_code" {
|
|
|
if obj := util.ObjToString(tmp["toptype"]); obj != "" {
|
|
|
- saveM[f] = TopTypeCode[obj]
|
|
|
+ saveM[nf] = TopTypeCode[obj]
|
|
|
}
|
|
|
} else if f == "subtype_code" {
|
|
|
if obj := util.ObjToString(tmp["subtype"]); obj != "" {
|
|
|
- saveM[f] = SubTypeCode[obj]
|
|
|
+ saveM[nf] = SubTypeCode[obj]
|
|
|
}
|
|
|
} else if f == "buyerclass_code" {
|
|
|
if obj := util.ObjToString(tmp["buyerclass"]); obj != "" {
|
|
|
- saveM[f] = BuyerCode[obj]
|
|
|
+ saveM[nf] = BuyerCode[obj]
|
|
|
}
|
|
|
} else if f == "createtime" || f == "updatetime" {
|
|
|
- saveM[f] = time.Now().Format(util.Date_Full_Layout)
|
|
|
- } else if f == "comeintime" || f == "publishtime" || f == "bidopentime" {
|
|
|
+ saveM[nf] = time.Now().Format(util.Date_Full_Layout)
|
|
|
+ } else if f == "comeintime" || f == "publishtime" || f == "bidopentime" || f == "bidendtime" {
|
|
|
if tmp[f] != nil && util.IntAll(tmp[f]) > 0 {
|
|
|
t := util.Int64All(tmp[f])
|
|
|
- saveM[f] = util.FormatDateByInt64(&t, util.Date_Full_Layout)
|
|
|
+ saveM[nf] = util.FormatDateByInt64(&t, util.Date_Full_Layout)
|
|
|
}
|
|
|
} else if f == "multipackage" || f == "isValidFile" {
|
|
|
if tmp[f] == nil {
|
|
|
- saveM[f] = 0
|
|
|
+ saveM[nf] = 0
|
|
|
} else {
|
|
|
- saveM[f] = tmp[f]
|
|
|
+ saveM[nf] = tmp[f]
|
|
|
}
|
|
|
} else if f == "buyer_id" {
|
|
|
if b := util.ObjToString(tmp["buyer"]); b != "" {
|
|
|
- saveM["buyer"] = b
|
|
|
- //if code := redis.GetStr("qyxy_id", b); code != "" {
|
|
|
if code := getNameId(b); code != "" {
|
|
|
- saveM[f] = code
|
|
|
+ saveM[nf] = code
|
|
|
}
|
|
|
}
|
|
|
} else if f == "agency_id" {
|
|
|
if b := util.ObjToString(tmp["agency"]); b != "" {
|
|
|
- saveM["agency"] = b
|
|
|
- //if code := redis.GetStr("qyxy_id", b); code != "" {
|
|
|
if code := getNameId(b); code != "" {
|
|
|
- saveM[f] = code
|
|
|
- }
|
|
|
- } else {
|
|
|
- if tmp[f] != nil {
|
|
|
- saveM[f] = tmp[f]
|
|
|
+ saveM[nf] = code
|
|
|
}
|
|
|
}
|
|
|
} else {
|
|
|
if tmp[f] != nil {
|
|
|
if BaseVMap[f] != nil {
|
|
|
var b bool
|
|
|
- saveM[f], b = verifyF(f, tmp[f], BaseVMap[f])
|
|
|
- // 保存异常字段数据
|
|
|
- if b {
|
|
|
+ saveM[nf], b = verifyF(f, tmp[f], BaseVMap[f])
|
|
|
+ if b { // 保存异常字段数据
|
|
|
errf = append(errf, f)
|
|
|
}
|
|
|
} else {
|
|
|
- saveM[f] = tmp[f]
|
|
|
+ saveM[nf] = tmp[f]
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -198,8 +186,8 @@ func taskBase(tmp map[string]interface{}) {
|
|
|
|
|
|
func getNameId(name string) string {
|
|
|
info := MysqlTool.FindOne("dws_f_ent_baseinfo", map[string]interface{}{"name": name}, "name_id", "")
|
|
|
- if info != nil && (*info)["name_Id"] != nil {
|
|
|
- return util.ObjToString((*info)["name_Id"])
|
|
|
+ if info != nil && (*info)["name_id"] != nil {
|
|
|
+ return util.ObjToString((*info)["name_id"])
|
|
|
} else {
|
|
|
return ""
|
|
|
}
|
|
@@ -210,68 +198,68 @@ func getNameId(name string) string {
|
|
|
func taskExpand(tmp map[string]interface{}) {
|
|
|
saveM := make(map[string]interface{})
|
|
|
var errf []string // 异常字段
|
|
|
- for _, f := range ExpandField {
|
|
|
- if f == "infoid" {
|
|
|
- saveM[f] = mongodb.BsonIdToSId(tmp["_id"])
|
|
|
+ for _, nf := range ExpandField {
|
|
|
+ f := nf[2:]
|
|
|
+ if f == "info_id" {
|
|
|
+ saveM[nf] = mongodb.BsonIdToSId(tmp["_id"])
|
|
|
} else if f == "project_startdate" || f == "project_completedate" || f == "signstarttime" || f == "bidendtime" || f == "bidstarttime" || f == "docstarttime" ||
|
|
|
f == "docendtime" || f == "signaturedate" || f == "signendtime" {
|
|
|
if tmp[f] != nil && util.IntAll(tmp[f]) > 0 {
|
|
|
t := util.Int64All(tmp[f])
|
|
|
- saveM[f] = util.FormatDateByInt64(&t, util.Date_Full_Layout)
|
|
|
+ saveM[nf] = util.FormatDateByInt64(&t, util.Date_Full_Layout)
|
|
|
}
|
|
|
} else if f == "createtime" || f == "updatetime" {
|
|
|
- saveM[f] = time.Now().Format(util.Date_Full_Layout)
|
|
|
+ saveM[nf] = time.Now().Format(util.Date_Full_Layout)
|
|
|
} else if f == "bidway" {
|
|
|
if util.ObjToString(tmp[f]) == "电子投标" {
|
|
|
- saveM[f] = 1
|
|
|
+ saveM[nf] = 1
|
|
|
} else if util.ObjToString(tmp[f]) == "纸质投标" {
|
|
|
- saveM[f] = 0
|
|
|
+ saveM[nf] = 0
|
|
|
}
|
|
|
- } else if f == "review_experts" {
|
|
|
+ } else if f == "review_experts" { //评标专家
|
|
|
if tmp[f] != nil {
|
|
|
if reflect.TypeOf(tmp[f]).String() == "string" {
|
|
|
- saveM[f] = tmp[f]
|
|
|
+ saveM[nf] = tmp[f]
|
|
|
} else if reflect.TypeOf(tmp[f]).String() == "[]interface {}" {
|
|
|
if arr, ok := tmp[f].([]interface{}); ok {
|
|
|
- saveM[f] = strings.Join(util.ObjArrToStringArr(arr), ",")
|
|
|
+ saveM[nf] = strings.Join(util.ObjArrToStringArr(arr), ",")
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
} else if f == "bid_guarantee" || f == "contract_guarantee" {
|
|
|
if tmp[f] != nil {
|
|
|
if tmp[f].(bool) {
|
|
|
- saveM[f] = 1
|
|
|
+ saveM[nf] = 1
|
|
|
} else {
|
|
|
- saveM[f] = 0
|
|
|
+ saveM[nf] = 0
|
|
|
}
|
|
|
}
|
|
|
- } else if f == "supervisorrate" || f == "agencyfee" {
|
|
|
+ } else if f == "agencyfee" {
|
|
|
if tmp[f] != nil {
|
|
|
if reflect.TypeOf(tmp[f]).String() == "string" {
|
|
|
v2, err := strconv.ParseFloat(strings.ReplaceAll(util.ObjToString(tmp[f]), "%", ""), 64)
|
|
|
if err != nil {
|
|
|
v, _ := decimal.NewFromFloat(v2).Div(decimal.NewFromFloat(float64(100))).Float64()
|
|
|
- saveM[f] = v
|
|
|
+ saveM[nf] = v
|
|
|
}
|
|
|
} else {
|
|
|
- saveM[f], _ = util.FormatFloat(util.Float64All(tmp[f]), 4)
|
|
|
+ saveM[nf], _ = util.FormatFloat(util.Float64All(tmp[f]), 4)
|
|
|
}
|
|
|
}
|
|
|
} else if f == "project_duration" {
|
|
|
if tmp[f] != nil {
|
|
|
- tmp[f] = util.IntAll(tmp[f])
|
|
|
+ saveM[nf] = util.IntAll(tmp[f])
|
|
|
}
|
|
|
} else {
|
|
|
if tmp[f] != nil {
|
|
|
if ExpandVMap[f] != nil {
|
|
|
var b bool
|
|
|
- saveM[f], b = verifyF(f, tmp[f], ExpandVMap[f])
|
|
|
- // 保存异常字段数据
|
|
|
- if b {
|
|
|
+ saveM[nf], b = verifyF(f, tmp[f], ExpandVMap[f])
|
|
|
+ if b { // 保存异常字段数据
|
|
|
errf = append(errf, f)
|
|
|
}
|
|
|
} else {
|
|
|
- saveM[f] = tmp[f]
|
|
|
+ saveM[nf] = tmp[f]
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -282,6 +270,10 @@ func taskExpand(tmp map[string]interface{}) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+func taskDetail(tmp map[string]interface{}) {
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
// @Description 标签记录
|
|
|
// @Author J 2022/9/22 11:13
|
|
|
func taskTags(tmp map[string]interface{}) {
|