浏览代码

Merge branch 'dev3.4' of http://39.105.157.10:10080/qmx/jy-data-extract into dev3.4

apple 5 年之前
父节点
当前提交
ddcf670013

+ 84 - 56
src/web/templates/admin/qiyekuinfo.html

@@ -74,7 +74,9 @@
 {{template "footer"}}
 <script>
     menuActive("qiyeku_info")
-    var ttable = {}
+    var ttable = {};
+    var editor_add = null;
+    var editor_udapte = null;
     $(function () {
         ttable = $('#dataTable').DataTable({
             "paging": true,
@@ -97,7 +99,7 @@
                         if (val == null) {
                             return ""
                         }
-                        return "<text  title="+val+">"+val+"</text >"
+                        return "<text  title=" + val + ">" + val + "</text >"
                     }
                 },
                 /*{
@@ -113,7 +115,7 @@
                         if (val == null) {
                             return ""
                         }
-                        return "<text  title="+val+">"+val+"</text >"
+                        return "<text  title=" + val + ">" + val + "</text >"
                     }
                 },
                 {
@@ -121,7 +123,7 @@
                         if (val == null) {
                             return ""
                         }
-                        return "<text  title="+val+">"+val+"</text >"
+                        return "<text  title=" + val + ">" + val + "</text >"
                     }
                 },
                 {
@@ -129,7 +131,7 @@
                         if (val == null) {
                             return ""
                         }
-                        return "<text  title="+val+">"+val+"</text >"
+                        return "<text  title=" + val + ">" + val + "</text >"
                     }
                 },
                 {
@@ -137,24 +139,24 @@
                         if (val == null) {
                             return ""
                         }
-                        return "<text  title="+val+">"+val+"</text >"
+                        return "<text  title=" + val + ">" + val + "</text >"
                     }
                 },
-             /*   {
-                    "data": "company_address", "width": "17%", render: function (val, a, row) {
-                        if (val == null) {
-                            return ""
-                        }
-                        return val
-                    }
-                },*/
+                /*   {
+                       "data": "company_address", "width": "17%", render: function (val, a, row) {
+                           if (val == null) {
+                               return ""
+                           }
+                           return val
+                       }
+                   },*/
                 {
-                    "data": "_id", "width": "20%", render: function (val, a, row) {
+                    "data": "_id", "width": "8%", render: function (val, a, row) {
                         var valueStr = JSON.stringify(row);
                         return "<div class='operate'>" +
                             "<a class='btn btn-primary' onclick='editdata(" + valueStr + ")'>编辑</a>&nbsp;" +
-                            "<a class='btn btn-default' onclick='showHylxs(\"" + val + "\")'>详细行业类型</a>&nbsp;" +
-                            "<a class='btn btn-sm btn-warning' onclick='showTels(\"" + val + "\")'>详细联系方式</a>&nbsp;" +
+                            /*"<a class='btn btn-default' onclick='showHylxs(\"" + val + "\")'>详细行业类型</a>&nbsp;" +
+                            "<a class='btn btn-sm btn-warning' onclick='showTels(\"" + val + "\")'>详细联系方式</a>&nbsp;" +*/
                             "<a class='btn btn-sm btn-danger' onclick='deleteQyk(\"" + val + "\")'>删除</a>&nbsp;" +
                             "</div>"
                     }
@@ -234,70 +236,91 @@
         })*/
     });
 
-    var vastrjson = [{"infoid":"招标信息id","contact_person":"联系人","contact_type":"联系人类型","phone":"联系人电话","topscopeclass":"项目类型"}];
+    var vastrjson = [{
+        "infoid": "招标信息id",
+        "contact_person": "联系人",
+        "contact_type": "联系人类型",
+        "phone": "联系人电话",
+        "topscopeclass": "项目类型"
+    }];
+
     /*新增企业库html*/
     function AddQYKHTML() {
         $("#infos").html("");
         $("#info_title").html("新增企业库信息");
-        com ="<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-2 control-label\" style=\"color: red;\">企业名称:</label>" +
-            "<div class=\"col-sm-10\"><input type=\"text\" class=\"form-control\" id=\"s_company_name\" must=\"true\"></div></div>" +
-            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-2 control-label\">别名:</label>" +
-            "<div class=\"col-sm-10\"><input type=\"text\" class=\"form-control\" id=\"s_alias\" ></div></div>" +
-            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-2 control-label\">行政区划代码:</label>" +
-            "<div class=\"col-sm-10\"><input type=\"text\" class=\"form-control\" id=\"s_area_code\" ></div></div>" +
-            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-2 control-label\">省份:</label>" +
-            "<div class=\"col-sm-10\"><input type=\"text\" class=\"form-control\" id=\"s_province\"></div></div>" +
-            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-2 control-label\">城市:</label>" +
-            "<div class=\"col-sm-10\"><input type=\"text\" class=\"form-control\" id=\"s_city\" ></div></div>" +
-            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-2 control-label\">区县:</label>" +
-            "<div class=\"col-sm-10\"><input type=\"text\" class=\"form-control\" id=\"s_district\"></div></div>" +
-            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-2 control-label\">注册资本:</label>" +
-            "<div class=\"col-sm-10\"><input type=\"text\" class=\"form-control\" id=\"s_capital\"  placeholder=\"示例:45678.98元;456.78万元;1234.25;\"></div></div>" +
-            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-2 control-label\">企业地址:</label>" +
-            "<div class=\"col-sm-10\"><input type=\"text\" class=\"form-control\" id=\"s_company_address\"></div></div>" +
-            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-2 control-label\">经营范围:</label>" +
-            "<div class=\"col-sm-10\"><input type=\"text\" class=\"form-control\" id=\"s_business_scope\"></div></div>" +
-            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-2 control-label\">微信公众号:</label>" +
-            "<div class=\"col-sm-10\"><input type=\"text\" class=\"form-control\" id=\"s_wechat_accounts\"></div></div>" +
-            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-2 control-label\">网址:</label>" +
-            "<div class=\"col-sm-10\"><input type=\"text\" class=\"form-control\" id=\"s_website\"></div></div>" +
-            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-2 control-label\">联系方式:</label>" +
-            "<div class=\"col-sm-10\" id='s_contact' style=\"height:250px\"></div>" +
+        com = "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-3 control-label\" style=\"color: red;\">企业名称:</label>" +
+            "<div class=\"col-sm-9\"><input type=\"text\" class=\"form-control\" id=\"s_company_name\" must=\"true\"></div></div>" +
+            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-3 control-label\">别名:</label>" +
+            "<div class=\"col-sm-9\"><input type=\"text\" class=\"form-control\" id=\"s_alias\" ></div></div>" +
+            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-3 control-label\">历史名称:</label>" +
+            "<div class=\"col-sm-9\"><input type=\"text\" class=\"form-control\" id=\"s_history_name\" placeholder=\"多个;隔开\" ></div></div>" +
+            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-3 control-label\">行政区划代码:</label>" +
+            "<div class=\"col-sm-9\"><input type=\"text\" class=\"form-control\" id=\"s_area_code\" ></div></div>" +
+            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-3 control-label\">省份:</label>" +
+            "<div class=\"col-sm-9\"><input type=\"text\" class=\"form-control\" id=\"s_province\"></div></div>" +
+            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-3 control-label\">城市:</label>" +
+            "<div class=\"col-sm-9\"><input type=\"text\" class=\"form-control\" id=\"s_city\" ></div></div>" +
+            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-3 control-label\">区县:</label>" +
+            "<div class=\"col-sm-9\"><input type=\"text\" class=\"form-control\" id=\"s_district\"></div></div>" +
+            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-3 control-label\">注册资本:</label>" +
+            "<div class=\"col-sm-9\"><input type=\"text\" class=\"form-control\" id=\"s_capital\"  placeholder=\"示例:45678.98元;456.78万元;1234.25;\"></div></div>" +
+            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-3 control-label\">企业地址:</label>" +
+            "<div class=\"col-sm-9\"><input type=\"text\" class=\"form-control\" id=\"s_company_address\"></div></div>" +
+            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-3 control-label\">经营范围:</label>" +
+            "<div class=\"col-sm-9\"><input type=\"text\" class=\"form-control\" id=\"s_business_scope\"></div></div>" +
+            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-3 control-label\">微信公众号:</label>" +
+            "<div class=\"col-sm-9\"><input type=\"text\" class=\"form-control\" id=\"s_wechat_accounts\" placeholder=\"多个;隔开\"></div></div>" +
+            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-3 control-label\">网址:</label>" +
+            "<div class=\"col-sm-9\"><input type=\"text\" class=\"form-control\" id=\"s_website\"></div></div>" +
+            "<div class=\"row form-group\"><label for=\"lastname\" class=\"col-sm-3 control-label\">联系方式:</label>" +
+            "<div class=\"col-sm-9\" id='s_contact' style=\"height:250px\"></div>" +
             "<div class=\"row form-group\">" +
             "<button type='button' class='btn btn-sm btn-default col-md-offset-5 col-md-2'  data-dismiss='modal' aria-label='Close'>取消</button>" +
             "<button type='button' class='btn btn-sm btn-danger col-md-2' onclick='Add()'>新增企业库</button></div>";
         $("#infos").html(com);
         $("#s_contact").html('');
         var container = document.getElementById('s_contact');
-        showJson(vastrjson,container);
+        showJson("add", vastrjson, container);
         $("#info_data").modal("show");
     }
+
     /*保存企业库*/
     function Add() {
-        var company_name = $("#s_company_name").val();
-        var alias = $("#s_alias").val();
-        var province = $("#s_province").val();
-        var city = $("#s_city").val();
-        var district = $("#s_district").val();
-        var capital = $("#s_capital").val();
-        var company_address = $("#s_company_address").val();
+        var company_name = $("#s_company_name").val();//企业名称
+        var alias = $("#s_alias").val();//别名
+        var history_name = $("#s_history_name").val();//历史名称
+        var area_code = $("#s_area_code").val();//行政区划代码
+        var province = $("#s_province").val();//省份
+        var city = $("#s_city").val();//城市
+        var district = $("#s_district").val();//区县
+        var capital = $("#s_capital").val();//注册资本
+        var company_address = $("#s_company_address").val();//企业地址
+        var business_scope = $("#s_business_scope").val();//经营范围
+        var wechat_accounts = $("#s_wechat_accounts").val();//微信公众号
+        var website = $("#s_website").val();//网址
+        var contact = editor_add.getText();//联系人
         if (company_name === "") {
             alert("红色标签的表单不能为空!");
             return
+        } else if (contact === JSON.stringify(vastrjson, null, 2)) {
+            alert("联系人的表单未填写!");
+            return
         }
-        console.log(company_name,alias,province,city,district,capital,company_address);
-        var contact = $("#s_contact");
-        console.log(contact.getText());
-        return
         //新增企业库api
         $.post("/admin/audit/qiyeku_info/save", {
             "company_name": company_name,
             "alias": alias,
+            "history_name": history_name,
+            "area_code": area_code,
             "province": province,
             "city": city,
             "district": district,
             "capital": capital,
             "company_address": company_address,
+            "business_scope":business_scope,
+            "wechat_accounts":wechat_accounts,
+            "website":website,
+            "contact":contact
         }, function (data) {
             if (data && data.rep) {
                 $("#myModal").modal("hide");
@@ -570,7 +593,8 @@
             }
         }, 'json')
     }
-    function showJson(content,container){
+
+    function showJson(ptype, content, container) {
         var options = {
             mode: 'code',
             modes: ['code', 'tree'], // allowed modes
@@ -578,7 +602,11 @@
                 alert(err.toString());
             }
         };
-        editor =  new JSONEditor(container, options, content);
+        if (ptype == "add") {
+            editor_add = new JSONEditor(container, options, content);
+        } else if (ptype == "update") {
+            editor_update = new JSONEditor(container, options, content);
+        }
     }
 
 </script>

+ 1 - 1
udp_winner/config.json

@@ -19,7 +19,7 @@
   "mgodb_extract_kf": "extract_kf",
   "mgo_qyk_c": "enterprise_qyxy",
   "mgo_qyk_buyer": "buyer_qyxy",
-  "mgo_qyk_agency": "gency_qyxy",
+  "mgo_qyk_agency": "agency_qyxy",
   "redis": "127.0.0.1:6379",
   "redis_winner_db": "1",
   "redis_buyer_db": "2",

+ 13 - 8
udp_winner/timedTaskAgency.go

@@ -13,6 +13,7 @@ import (
 	"strconv"
 	"strings"
 	"time"
+	"unicode/utf8"
 )
 
 //之前main方法,只更新
@@ -46,7 +47,7 @@ func TaskAgency(mapinfo *map[string]interface{}) {
 	}).Select(bson.M{"agency": 1, "agencytel": 1, "agencyperson": 1, "topscopeclass": 1,
 		"agencyaddr": 1}).Iter()
 	if cursor.Err() != nil {
-		SourceClientcc.Close()
+		SourceClient.DestoryMongoConn(SourceClientcc)
 		log.Println(cursor.Err())
 		return
 	}
@@ -63,7 +64,7 @@ func TaskAgency(mapinfo *map[string]interface{}) {
 		tmp := make(map[string]interface{})
 		for cursor.Next(&tmp) {
 			agency, ok := tmp["agency"].(string)
-			if !ok || agency == "" {
+			if !ok ||utf8.RuneCountInString(agency)<4{
 				continue
 			}
 			//判断redis key是否存在
@@ -87,7 +88,7 @@ func TaskAgency(mapinfo *map[string]interface{}) {
 			}
 		}
 
-		SourceClientcc.Close()
+		SourceClient.DestoryMongoConn(SourceClientcc)
 
 		//遍历redis
 		if scan := conn.Scan(0, "", 100); scan.Err() != nil {
@@ -212,13 +213,14 @@ func TaskAgency(mapinfo *map[string]interface{}) {
 		for cursor.Next(&tmp) {
 			overid = tmp["_id"].(bson.ObjectId).Hex()
 			//log.Println(tmp["_id"])
-			if tmp["agency"] == nil || tmp["agency"] == "" {
+			agency, ok := tmp["agency"].(string)
+			if !ok ||utf8.RuneCountInString(agency)<4{
 				continue
 			}
 			//redis查询是否存在
 			rdb := RedisPool.Get()
 			rdb.Do("SELECT", Config["redis_agency_db"])
-			if reply, err := redis.String(rdb.Do("GET", tmp["agency"])); err != nil {
+			if reply, err := redis.String(rdb.Do("GET", agency)); err != nil {
 				//redis不存在存到临时表,定时任务处理
 				FClient.DbName = Config["mgodb_extract_kf"]
 				if err := FClient.SaveForOld("agency_new", tmp); err!=nil {
@@ -319,6 +321,7 @@ func TaskAgency(mapinfo *map[string]interface{}) {
 				}
 			}
 		}
+		SourceClient.DestoryMongoConn(SourceClientcc)
 		log.Println("增量合并执行完成 ok", gtid, lteid, overid)
 	}
 
@@ -332,13 +335,13 @@ func TimedTaskAgency() {
 	t2 := time.NewTimer(time.Second * 5)
 	for range t2.C {
 		Fcconn := FClient.GetMgoConn(86400)
-		defer Fcconn.Close()
 		tmpLast := map[string]interface{}{}
 		if iter := Fcconn.DB(Config["mgodb_extract_kf"]).C("agency_new").Find(bson.M{}).Sort("-_id").Limit(1).Iter(); iter != nil {
 			if !iter.Next(&tmpLast) {
 				//临时表无数据
 				log.Println("临时表无数据:")
-				t2.Reset(time.Second * 15)
+				t2.Reset(time.Minute * 5)
+				FClient.DestoryMongoConn(Fcconn)
 				continue
 			} else {
 				log.Println("临时表有数据:", tmpLast)
@@ -351,6 +354,7 @@ func TimedTaskAgency() {
 				if cursor == nil {
 					log.Println("查询失败")
 					t2.Reset(time.Second * 5)
+					FClient.DestoryMongoConn(fconn)
 					continue
 				}
 				//遍历临时表数据,匹配不到原始库存入异常表
@@ -594,9 +598,10 @@ func TimedTaskAgency() {
 						}
 					}
 				}
-				fconn.Close()
+				FClient.DestoryMongoConn(fconn)
 			}
 		}
+		FClient.DestoryMongoConn(Fcconn)
 		t2.Reset(time.Minute)
 	}
 }

+ 14 - 8
udp_winner/timedTaskBuyer.go

@@ -13,6 +13,7 @@ import (
 	"strconv"
 	"strings"
 	"time"
+	"unicode/utf8"
 )
 
 //之前main方法,只更新
@@ -46,7 +47,7 @@ func TaskBuyer(mapinfo *map[string]interface{}) {
 	}).Select(bson.M{"buyer": 1, "buyertel": 1, "buyerperson": 1, "topscopeclass": 1,
 		"buyeraddr": 1,"buyerclass":1}).Iter()
 	if cursor.Err() != nil {
-		SourceClientcc.Close()
+		SourceClient.DestoryMongoConn(SourceClientcc)
 		log.Println(cursor.Err())
 		return
 	}
@@ -63,7 +64,7 @@ func TaskBuyer(mapinfo *map[string]interface{}) {
 		tmp := make(map[string]interface{})
 		for cursor.Next(&tmp) {
 			buyer, ok := tmp["buyer"].(string)
-			if !ok || buyer == "" {
+			if !ok || utf8.RuneCountInString(buyer)<4{
 				continue
 			}
 			//判断redis key是否存在
@@ -87,7 +88,7 @@ func TaskBuyer(mapinfo *map[string]interface{}) {
 			}
 		}
 
-		SourceClientcc.Close()
+		SourceClient.DestoryMongoConn(SourceClientcc)
 
 		//遍历redis
 		if scan := conn.Scan(0, "", 100); scan.Err() != nil {
@@ -231,13 +232,14 @@ func TaskBuyer(mapinfo *map[string]interface{}) {
 		for cursor.Next(&tmp) {
 			overid = tmp["_id"].(bson.ObjectId).Hex()
 			//log.Println(tmp["_id"])
-			if tmp["buyer"] == nil || tmp["buyer"] == "" {
+			buyer, ok := tmp["buyer"].(string)
+			if !ok || utf8.RuneCountInString(buyer)<4{
 				continue
 			}
 			//redis查询是否存在
 			rdb := RedisPool.Get()
 			rdb.Do("SELECT", Config["redis_buyer_db"])
-			if reply, err := redis.String(rdb.Do("GET", tmp["buyer"])); err != nil {
+			if reply, err := redis.String(rdb.Do("GET", buyer)); err != nil {
 				//redis不存在存到临时表,定时任务处理
 				FClient.DbName = Config["mgodb_extract_kf"]
 				if err := FClient.SaveForOld("buyer_new", tmp); err!=nil {
@@ -357,6 +359,8 @@ func TaskBuyer(mapinfo *map[string]interface{}) {
 				}
 			}
 		}
+		SourceClient.DestoryMongoConn(SourceClientcc)
+
 		log.Println("增量合并执行完成 ok", gtid, lteid, overid)
 	}
 
@@ -370,13 +374,13 @@ func TimedTaskBuyer() {
 	t2 := time.NewTimer(time.Second * 5)
 	for range t2.C {
 		Fcconn := FClient.GetMgoConn(86400)
-		defer Fcconn.Close()
 		tmpLast := map[string]interface{}{}
 		if iter := Fcconn.DB(Config["mgodb_extract_kf"]).C("buyer_new").Find(bson.M{}).Sort("-_id").Limit(1).Iter(); iter != nil {
 			if !iter.Next(&tmpLast) {
 				//临时表无数据
 				log.Println("临时表无数据:")
-				t2.Reset(time.Second * 15)
+				t2.Reset(time.Minute * 5)
+				FClient.DestoryMongoConn(Fcconn)
 				continue
 			} else {
 				log.Println("临时表有数据:", tmpLast)
@@ -389,6 +393,7 @@ func TimedTaskBuyer() {
 				if cursor == nil {
 					log.Println("查询失败")
 					t2.Reset(time.Second * 5)
+					FClient.DestoryMongoConn(fconn)
 					continue
 				}
 				//遍历临时表数据,匹配不到原始库存入异常表
@@ -630,9 +635,10 @@ func TimedTaskBuyer() {
 					}
 
 				}
-				fconn.Close()
+				FClient.DestoryMongoConn(fconn)
 			}
 		}
+		FClient.DestoryMongoConn(Fcconn)
 		t2.Reset(time.Minute)
 	}
 }

+ 16 - 11
udp_winner/timedTaskWinner.go

@@ -13,6 +13,7 @@ import (
 	"strconv"
 	"strings"
 	"time"
+	"unicode/utf8"
 )
 
 //之前main方法,只更新
@@ -46,7 +47,7 @@ func TaskWinner(mapinfo *map[string]interface{}) {
 	}).Select(bson.M{"winner": 1, "winnertel": 1, "winnerperson": 1, "topscopeclass": 1, "winneraddr": 1}).Iter()
 
 	if cursor.Err() != nil {
-		SourceClientcc.Close()
+		SourceClient.DestoryMongoConn(SourceClientcc)
 		log.Println(cursor.Err())
 		return
 	}
@@ -63,7 +64,7 @@ func TaskWinner(mapinfo *map[string]interface{}) {
 		tmp := make(map[string]interface{})
 		for cursor.Next(&tmp) {
 			winner, ok := tmp["winner"].(string)
-			if !ok || winner == "" {
+			if !ok ||utf8.RuneCountInString(winner)<4 {
 				continue
 			}
 			//判断redis key是否存在
@@ -86,7 +87,7 @@ func TaskWinner(mapinfo *map[string]interface{}) {
 				log.Println(err)
 			}
 		}
-		SourceClientcc.Close()
+		SourceClient.DestoryMongoConn(SourceClientcc)
 		//遍历redis
 		if scan := conn.Scan(0, "", 100); scan.Err() != nil {
 			log.Println(scan.Err())
@@ -110,7 +111,7 @@ func TaskWinner(mapinfo *map[string]interface{}) {
 					for _, vmap := range rValuesMaps {
 						vmap["_id"] = bson.ObjectIdHex(vmap["_id"].(string))
 						if err = FClient.SaveForOld("winner_new", vmap); err != nil {
-							log.Println("存量 FClient.Save err", err,vmap)
+							log.Println("存量 FClient.Save err", err, vmap)
 						}
 					}
 					//log.Println("get redis id err:定时任务处理", err, tmp)
@@ -222,17 +223,18 @@ func TaskWinner(mapinfo *map[string]interface{}) {
 		for cursor.Next(&tmp) {
 			overid = tmp["_id"].(bson.ObjectId).Hex()
 			//log.Println(tmp["_id"])
-			if tmp["winner"] == nil || tmp["winner"] == "" {
+			winner, ok := tmp["winner"].(string)
+			if !ok || utf8.RuneCountInString(winner) < 4 {
 				continue
 			}
 			//redis查询是否存在
 			rdb := RedisPool.Get()
 			rdb.Do("SELECT", Config["redis_winner_db"])
-			if reply, err := redis.String(rdb.Do("GET", tmp["winner"])); err != nil {
+			if reply, err := redis.String(rdb.Do("GET", winner)); err != nil {
 				//redis不存在存到临时表,定时任务处理
 				FClient.DbName = Config["mgodb_extract_kf"]
-				if err := FClient.SaveForOld("winner_new", tmp); err!=nil {
-					log.Println("FClient.Save err", err,tmp)
+				if err := FClient.SaveForOld("winner_new", tmp); err != nil {
+					log.Println("FClient.Save err", err, tmp)
 				}
 				//log.Println("get redis id err:定时任务处理", err, tmp)
 				if err := rdb.Close(); err != nil {
@@ -338,6 +340,7 @@ func TaskWinner(mapinfo *map[string]interface{}) {
 				}
 			}
 		}
+		SourceClient.DestoryMongoConn(SourceClientcc)
 		log.Println("增量合并执行完成 ok", gtid, lteid, overid)
 	}
 
@@ -351,13 +354,13 @@ func TimedTaskWinner() {
 	t2 := time.NewTimer(time.Second * 5)
 	for range t2.C {
 		Fcconn := FClient.GetMgoConn(86400)
-		defer Fcconn.Close()
 		tmpLast := map[string]interface{}{}
 		if iter := Fcconn.DB(Config["mgodb_extract_kf"]).C("winner_new").Find(bson.M{}).Sort("-_id").Limit(1).Iter(); iter != nil {
 			if !iter.Next(&tmpLast) {
 				//临时表无数据
 				log.Println("临时表无数据:")
-				t2.Reset(time.Minute * 1)
+				t2.Reset(time.Minute * 5)
+				FClient.DestoryMongoConn(Fcconn)
 				continue
 			} else {
 				log.Println("临时表有数据:", tmpLast)
@@ -370,6 +373,7 @@ func TimedTaskWinner() {
 				if cursor == nil {
 					log.Println("查询失败")
 					t2.Reset(time.Second * 5)
+					FClient.DestoryMongoConn(fconn)
 					continue
 				}
 				//遍历临时表数据,匹配不到原始库存入异常表
@@ -631,9 +635,10 @@ func TimedTaskWinner() {
 						}
 					}
 				}
-				fconn.Close()
+				FClient.DestoryMongoConn(fconn)
 			}
 		}
+		FClient.DestoryMongoConn(Fcconn)
 		t2.Reset(time.Minute)
 	}
 }