From f3863b12653fc47996073710b56e792de0be4c8d Mon Sep 17 00:00:00 2001
From: sunty <1172534965@qq.com>
Date: 星期二, 25 六月 2019 17:57:05 +0800
Subject: [PATCH] 根据新索引结构修改算法和接口

---
 controllers/dbtableperson.go |   59 +++++++++++++++++++++++++++++++++--------------------------
 1 files changed, 33 insertions(+), 26 deletions(-)

diff --git a/controllers/dbtableperson.go b/controllers/dbtableperson.go
index c41586f..86caa20 100644
--- a/controllers/dbtableperson.go
+++ b/controllers/dbtableperson.go
@@ -8,12 +8,12 @@
 	"time"
 
 	"github.com/gin-gonic/gin"
+	"github.com/satori/go.uuid"
 	"webserver/extend/code"
 	"webserver/extend/config"
 	"webserver/extend/esutil"
 	"webserver/extend/util"
 	"webserver/models"
-	"github.com/satori/go.uuid"
 )
 
 type DbPersonController struct {
@@ -52,14 +52,14 @@
 	dbperson.Uuid = personId
 	dbperson.PriInsert()
 	url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport +
-		"/" + config.EsInfo.EsIndex.Dbtablepersons.IndexName + "/" + config.EsInfo.EsIndex.Dbtablepersons.IndexType + "/" + personId+"?refresh=wait_for"
+		"/" + config.EsInfo.EsIndex.Dbtablepersons.IndexName + "/" + config.EsInfo.EsIndex.Dbtablepersons.IndexType + "/" + personId + "?refresh=wait_for"
 	personbytes, e := json.Marshal(dbperson)
 	if e != nil {
 		fmt.Print("Json marshaling failed锛�%s\n", e)
 	}
 	params := string(personbytes)
 	fmt.Print("璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params)
-	data ,_ := esutil.PutEsDataReq(url, params)
+	data, _ := esutil.PutEsDataReq(url, params)
 	//c.JSON(200, changeEsRespData(data, "娣诲姞浜哄憳鎴愬姛"))
 	result = changeEsRespData(data, "娣诲姞鎴愬姛")
 	return result
@@ -113,13 +113,16 @@
 // @Success 200 {string} json "{"code":200, msg:"鐩綍缁撴瀯鏁版嵁", success:true}"
 // @Failure 500 {string} json "{"code":500,  msg:"杩斿洖閿欒淇℃伅", success:false}"
 // @Router /data/api-v/dbperson/deleteDbPersonById/{uuid} [POST]
+
 func (dbc DbPersonController) DeleteDbPerson(c *gin.Context) {
 	uuid := c.Params.ByName("uuid")
 	url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport +
 		"/" + config.EsInfo.EsIndex.Dbtablepersons.IndexName + "/" + config.EsInfo.EsIndex.Dbtablepersons.IndexType + "/" + uuid + "/_update?refresh=wait_for"
-	params := "{\"doc\":{\"del_flag\":\"1\",\"update_time\":\"" + time.Now().Format("2006-01-02 15:04:05") + "\"}}"
+	params := "{\"doc\":{\"isDelete\":\"1\",\"updateTime\":\"" + time.Now().Format("2006-01-02 15:04:05") + "\"}}"
 	fmt.Print("鍒犻櫎璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params)
+
 	data := esutil.GetEsDataReq(url, params, false)
+
 	//c.JSON(200, changeEsRespData(data,"鍒犻櫎鎴愬姛"))
 	result := changeEsRespData(data, "鍒犻櫎鎴愬姛")
 	if result["success"].(bool) {
@@ -130,6 +133,7 @@
 		util.ResponseFormat(c, code.ServiceInsideError, result["data"])
 	}
 }
+
 // @Summary 鍒犻櫎搴曞簱浜哄憳
 // @Description 鍒犻櫎搴撲汉鍛�
 // @Accept  json
@@ -139,25 +143,25 @@
 // @Success 200 {string} json "{"code":200, msg:"鐩綍缁撴瀯鏁版嵁", success:true}"
 // @Failure 500 {string} json "{"code":500,  msg:"杩斿洖閿欒淇℃伅", success:false}"
 // @Router /data/api-v/dbperson/deleteMoreDbPerson [POST]
-func (dbc DbPersonController) DeleteMoreDbPerson(c *gin.Context)  {
-	uuids := make([]string,0,5)
+func (dbc DbPersonController) DeleteMoreDbPerson(c *gin.Context) {
+	uuids := make([]string, 0, 5)
 	c.BindJSON(&uuids)
 	bytes, _ := json.Marshal(uuids)
 	s := string(bytes)
 	url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport +
-		"/" + config.EsInfo.EsIndex.Dbtablepersons.IndexName + "/_update_by_query?refresh=wait_for"  //   + config.EsInfo.EsIndex.Dbtablepersons.IndexType + "/"  + "/" + s
-	params := "{\"script\":{\"lang\":\"painless\",\"inline\":\"ctx._source.del_flag = \\\"1\\\";" +
-		"ctx._source.update_time = \\\"" + time.Now().Format("2006-01-02 15:04:05") + "\\\"\"},\"query\":{\"terms\":{\"_id\":"+s+"}}}"
+		"/" + config.EsInfo.EsIndex.Dbtablepersons.IndexName + "/_update_by_query?refresh=wait_for" //   + config.EsInfo.EsIndex.Dbtablepersons.IndexType + "/"  + "/" + s
+	params := "{\"script\":{\"lang\":\"painless\",\"inline\":\"ctx._source.isDelete = \\\"1\\\";" +
+		"ctx._source.updateTime = \\\"" + time.Now().Format("2006-01-02 15:04:05") + "\\\"\"},\"query\":{\"terms\":{\"_id\":" + s + "}}}"
 	fmt.Print("鍒犻櫎璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params)
 	data := esutil.GetEsDataReq(url, params, false)
 	//c.JSON(200, changeEsRespData(data,"鍒犻櫎鎴愬姛"))
 	//result := changeEsRespData(data, "鍒犻櫎鎴愬姛")
 	if data["error"] == nil {
 		//code.Success.Message = "鍒犻櫎搴曞簱浜哄憳鎴愬姛"
-		util.ResponseFormat(c, code.Success,"鍒犻櫎搴曞簱浜哄憳鎴愬姛" )
+		util.ResponseFormat(c, code.Success, "鍒犻櫎搴曞簱浜哄憳鎴愬姛")
 	} else {
 		//code.ServiceInsideError.Message += result["msg"].(string)
-		util.ResponseFormat(c, code.ServiceInsideError,data["error"])
+		util.ResponseFormat(c, code.ServiceInsideError, data["error"])
 	}
 }
 
@@ -209,7 +213,7 @@
 	}
 	if contentValue != "" {
 		contentParam = ",\"must\":[{\"multi_match\":{\"query\":\"" + contentValue + "\",\"type\":\"best_fields\"," +
-			"\"fields\":[\"personName\",\"sex\",\"idcard\",\"phoneNum\"],\"tie_breaker\":0.3}}]"
+			"\"fields\":[\"personName\",\"sex\",\"idCard\",\"phoneNum\"],\"tie_breaker\":0.3}}]"
 	}
 
 	if orderType == "desc" {
@@ -219,13 +223,12 @@
 	}
 
 	params := "{\"query\":{\"bool\":{\"filter\":[" +
-		"{\"term\":{\"del_flag\":\"0\"}}" + syncTerm + "]" + contentParam + "}},\"from\":" + strconv.Itoa(from) + ",\"size\":" + strconv.Itoa(size) + ",\"sort\":{\"" + orderName + "\":{\"order\":\"" + orderType + "\"}}}"
+		"{\"term\":{\"isDelete\":\"0\"}}" + syncTerm + "]" + contentParam + "}},\"from\":" + strconv.Itoa(from) + ",\"size\":" + strconv.Itoa(size) + ",\"sort\":{\"" + orderName + "\":{\"order\":\"" + orderType + "\"}}}"
 	fmt.Print("璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params)
 	data := esutil.GetEsDataReq(url, params, true)
 	//c.JSON(200, data)
 	util.ResponseFormat(c, code.Success, data)
 }
-
 
 // @Summary 鏌ヨ搴曞簱浜哄憳鍒楄〃
 // @Description 鏌ヨ搴撲汉鍛樺垪琛�
@@ -238,7 +241,7 @@
 // @Router /data/api-v/dbperson/queryDbPersonsByCampare [POST]
 func (dbc DbPersonController) QueryDbPersonsByCampare(c *gin.Context) {
 	url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport +
-		"/" + config.EsInfo.EsIndex.Dbtablepersons.IndexName + "/_search"  // ?refresh=wait_for
+		"/" + config.EsInfo.EsIndex.Dbtablepersons.IndexName + "/_search" // ?refresh=wait_for
 	reqBody := make(map[string]interface{}, 5)
 	c.BindJSON(&reqBody)
 	tableId := ""
@@ -253,12 +256,13 @@
 	if reqBody["orderType"] != nil {
 		orderType = reqBody["orderType"].(string)
 	} // 鍒楃被鍨�
-	faceUrl := ""; var  threshold float32
-	if reqBody["faceUrl"] != nil && reqBody["threshold"] != nil{
+	faceUrl := ""
+	var threshold float32
+	if reqBody["faceUrl"] != nil && reqBody["threshold"] != nil {
 		faceUrl = reqBody["faceUrl"].(string)
 		threshold = float32(reqBody["threshold"].(float64))
-	}else {
-		util.ResponseFormat(c, code.RequestParamError, nil);  // 鍥剧墖璺緞鏈夐棶棰�
+	} else {
+		util.ResponseFormat(c, code.RequestParamError, nil) // 鍥剧墖璺緞鏈夐棶棰�
 		return
 	}
 	//杈撳叆妗嗗唴瀹�
@@ -285,10 +289,10 @@
 	}
 
 	params := "{\"query\":{\"bool\":{\"filter\":[" +
-		"{\"term\":{\"del_flag\":\"0\"}}" + syncTerm + "]" + contentParam + "}},\"from\":" + strconv.Itoa(from) + ",\"size\":" + strconv.Itoa(size) + ",\"sort\":{\"" + orderName + "\":{\"order\":\"" + orderType + "\"}}}"
+		"{\"term\":{\"isDelete\":\"0\"}}" + syncTerm + "]" + contentParam + "}},\"from\":" + strconv.Itoa(from) + ",\"size\":" + strconv.Itoa(size) + ",\"sort\":{\"" + orderName + "\":{\"order\":\"" + orderType + "\"}}}"
 	fmt.Print("璇锋眰url:%s;\n 璇锋眰鍙傛暟params:%s", url, params)
 	data := esutil.GetEsDataReq(url, params, true)
-	featByte := make([]byte,0,1024)
+	featByte := make([]byte, 0, 1024)
 	if len(faceUrl) > 3 { //   linux
 		/*fileName := picUrl   // picIp 瀹氫箟鍦� fileController weedfs 鏂囦欢鏈嶅姟鍣� 璁块棶 璺緞 鍓嶇紑
 		detect := gorun.GetSimpleFaceDetect(fileName)
@@ -299,14 +303,17 @@
 			featByte = detect[0]["feature"].([]byte)
 		}*/ //   linux
 	}
-	to := page*size
-	datalist := sourceCompare(data["datalist"].([]interface{}),false,featByte,threshold )
+	to := page * size
+	datalist := sourceCompare(data["datalist"].([]interface{}), false, featByte, threshold)
 	total := len(datalist)
-	if from > total { from = total }
-	if to > total {	to = total }
+	if from > total {
+		from = total
+	}
+	if to > total {
+		to = total
+	}
 	data["datalist"] = datalist[from:to]
 	data["total"] = len(datalist)
 	//c.JSON(200, data)
 	util.ResponseFormat(c, code.Success, data)
 }
-

--
Gitblit v1.8.0