|
@@ -50,7 +50,7 @@ func processUdpMsg(act byte, data []byte, ra *net.UDPAddr) {
|
|
|
go Udpclient.WriteUdp(data, mu.OP_NOOP, ra)
|
|
|
log.Println("udp通知抽取id段", sid, " ", eid)
|
|
|
|
|
|
- getCity(sid, eid)
|
|
|
+ getCity(sid, eid, qu.ObjToString(rep["stype"]))
|
|
|
log.Println("udp通知抽取完成,eid", eid)
|
|
|
for _, m := range nextNodes {
|
|
|
by, _ := json.Marshal(map[string]interface{}{
|
|
@@ -73,27 +73,34 @@ func processUdpMsg(act byte, data []byte, ra *net.UDPAddr) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-func getCity(sid, eid string) {
|
|
|
+func getCity(sid, eid, rep string) {
|
|
|
index := 0
|
|
|
query := bson.M{"_id": bson.M{"$gte": bson.ObjectIdHex(sid), "$lte": bson.ObjectIdHex(eid)}}
|
|
|
count := mgo.Mgo_Bidding.Count("bidding", query)
|
|
|
- count_bak := mgo.Mgo_Bidding.Count("bidding_bak", query)
|
|
|
- count += count_bak
|
|
|
+ if rep != "" {
|
|
|
+ count_bak := mgo.Mgo_Bidding.Count("bidding_bak", query)
|
|
|
+ count += count_bak
|
|
|
+ }
|
|
|
log.Println("查询条件为:", query, "查询条数:", count)
|
|
|
pageNum := (count + PageSize - 1) / PageSize
|
|
|
limit := PageSize
|
|
|
if count < PageSize {
|
|
|
limit = count
|
|
|
}
|
|
|
- table := "bidding_bak"
|
|
|
+ table := "bidding"
|
|
|
+ if rep != "" {
|
|
|
+ table = "bidding_bak"
|
|
|
+ }
|
|
|
for i := 0; i < pageNum; i++ {
|
|
|
- query = bson.M{"_id": bson.M{"$gte": bson.ObjectIdHex(sid),"$lte":bson.ObjectIdHex(eid)}}
|
|
|
- if mgo.Mgo_Bidding.Count(table, query) < 1 {
|
|
|
- table = "bidding"
|
|
|
- } else if table == "bidding_bak" && mgo.Mgo_Bidding.Count("bidding", query) > 0 {
|
|
|
- log.Printf("page=%d,query=%v,db=%v\n", i+1, query, "bidding")
|
|
|
- list2, _ := mgo.Mgo_Bidding.Find("bidding", query, nil, biddingFields, false, 0, limit)
|
|
|
- processingCity(sid, eid, list2, index, "bidding", i)
|
|
|
+ query = bson.M{"_id": bson.M{"$gte": bson.ObjectIdHex(sid), "$lte": bson.ObjectIdHex(eid)}}
|
|
|
+ if rep != "" {
|
|
|
+ if mgo.Mgo_Bidding.Count(table, query) < 1 {
|
|
|
+ table = "bidding"
|
|
|
+ } else if table == "bidding_bak" && mgo.Mgo_Bidding.Count("bidding", query) > 0 {
|
|
|
+ log.Printf("page=%d,query=%v,db=%v\n", i+1, query, "bidding")
|
|
|
+ list2, _ := mgo.Mgo_Bidding.Find("bidding", query, nil, biddingFields, false, 0, limit)
|
|
|
+ processingCity(sid, eid, list2, index, "bidding", i)
|
|
|
+ }
|
|
|
}
|
|
|
log.Printf("page=%d,query=%v,db=%v\n", i+1, query, table)
|
|
|
list, _ := mgo.Mgo_Bidding.Find(table, query, nil, biddingFields, false, 0, limit)
|