From c38c4bda17e3774ec0fd58f90ba5e59e1f0639a2 Mon Sep 17 00:00:00 2001 From: liuxiaolong <736321739@qq.com> Date: 星期三, 30 十月 2019 16:39:29 +0800 Subject: [PATCH] swagger add ApiKeyAuth --- controllers/fileController.go | 75 ++++++++++++++++++++++++++++++------- 1 files changed, 61 insertions(+), 14 deletions(-) diff --git a/controllers/fileController.go b/controllers/fileController.go index decd866..fadef57 100644 --- a/controllers/fileController.go +++ b/controllers/fileController.go @@ -6,6 +6,7 @@ "basic.com/pubsub/protomsg.git" "bytes" "encoding/base64" + "encoding/json" "errors" "fmt" "github.com/gin-gonic/gin" @@ -49,6 +50,7 @@ //var weedfsUri = "http://192.168.1.182:9500/submit" +// @Security ApiKeyAuth // @Summary 渚濇嵁鍥剧墖娣诲姞搴曞簱浜哄憳 // @Description 渚濇嵁鍥剧墖娣诲姞搴曞簱杩斿洖鏁版嵁浜哄憳 // @Accept mpfd @@ -109,6 +111,7 @@ } var faceExtractedMap = make(map[string]FaceExtract,0) +// @Security ApiKeyAuth // @Summary 浜鸿劯鎻愬彇 // @Description 浜鸿劯鎻愬彇 // @Produce json @@ -368,6 +371,7 @@ } } +// @Security ApiKeyAuth // @Summary 浠ュ浘鎼滃浘 // @Description 浠ュ浘鎼滃浘 // @Accept json @@ -525,6 +529,10 @@ util.ResponseFormat(c,code.Success,m) } +type PersonId struct { + Id string `json:"id"` +} + func GetCompareDataTwice(co *service.CompareOnce,searchBody *models.EsSearch) map[string]interface{} { m := make(map[string]interface{},0) @@ -533,9 +541,10 @@ var hasCompEsPerson = false if searchBody.DataBases !=nil { - for _,tableId :=range searchBody.DataBases { + for idx,tableId :=range searchBody.DataBases { if tableId == "esData" { hasCompEsPerson = true + searchBody.DataBases = append(searchBody.DataBases[:idx], searchBody.DataBases[idx+1:]...) break } } @@ -555,7 +564,9 @@ arg.InputValue = searchBody.InputValue arg.Collection = searchBody.Collection arg.AnalyServerId = localConf.ServerId - captureIds := esApi.GetAllLocalVideopersonsId(arg, config.EsInfo.EsIndex.VideoPersons.IndexName, localConf.AlarmIp, strconv.Itoa(int(localConf.AlarmPort))) + alarmLevelTypes := strings.Replace(strings.Trim(fmt.Sprint(getAlarmLevel(searchBody.AlarmLevel)), "[]"), " ", "\",\"", -1) + captureIds := esApi.GetAllLocalVideopersonsId(arg, config.EsInfo.EsIndex.VideoPersons.IndexName, localConf.AlarmIp, strconv.Itoa(int(localConf.AlarmPort)), alarmLevelTypes) + logger.Debug("searchPhoto first Result.len:",len(*co.CompareData),"twice len(captureIds):",len(captureIds)) if captureIds !=nil { var aResult protomsg.SdkCompareResult aList := getTwiceSearchResult(co, &captureIds) @@ -577,29 +588,63 @@ return m } } + } else {//搴曞簱鏁版嵁鐨勪簩娆℃绱� + var dbpApi dbapi.DbPersonApi + personIds, _ := dbpApi.FindLikePersonIds(searchBody.DataBases, searchBody.InputValue) + logger.Debug("searchPhoto first Result.len:",len(*co.CompareData),"personIds:",personIds) + if personIds !=nil { + var pIds []PersonId + b, _ := json.Marshal(personIds) + json.Unmarshal(b, &pIds) + if len(pIds) >0 { + var personIdArr []string + for _,pid :=range pIds{ + personIdArr = append(personIdArr, pid.Id) + } + var aResult protomsg.SdkCompareResult + aList := getTwiceSearchResult(co, &personIdArr) + aTotal := aList.Len() + if aTotal <= to { + aResult.CompareResult = (*aList)[from:aTotal] + } else { + aResult.CompareResult = (*aList)[from:to] + } + out := FillDataToCompareResult(&aResult) + m["total"] = aTotal + m["compareNum"] = searchBody.CompareNum + m["totalList"] = out + return m + } + + } else { + m["total"] = 0 + m["compareNum"] = searchBody.CompareNum + m["totalList"] = []interface{}{} + return m + } } - var sCompResult protomsg.SdkCompareResult - total := len(*co.CompareData) - if total <= to { - sCompResult.CompareResult = (*co.CompareData)[from:total] - } else { - sCompResult.CompareResult = (*co.CompareData)[from:to] - } - resultList := FillDataToCompareResult(&sCompResult) + //var sCompResult protomsg.SdkCompareResult + //total := len(*co.CompareData) + //if total <= to { + // sCompResult.CompareResult = (*co.CompareData)[from:total] + //} else { + // sCompResult.CompareResult = (*co.CompareData)[from:to] + //} + //resultList := FillDataToCompareResult(&sCompResult) - m["total"] = total + m["total"] = 0 m["compareNum"] = searchBody.CompareNum - m["totalList"] = resultList + m["totalList"] = []interface{}{} return m } -func getTwiceSearchResult(co *service.CompareOnce, captureIds *[]string) *service.CompareList{ +func getTwiceSearchResult(co *service.CompareOnce, scopeIds *[]string) *service.CompareList{ m := make(map[string]string) - for _,capId :=range *captureIds { + for _,capId :=range *scopeIds { m[capId] = capId } var totalData service.CompareList @@ -735,6 +780,7 @@ /**涓婁紶鏂规硶**/ +// @Security ApiKeyAuth // @Summary 鎵归噺娣诲姞搴曞簱浜哄憳 // @Description 渚濇嵁鍥剧墖鎵归噺娣诲姞搴曞簱浜哄憳 // @Accept mpfd @@ -815,6 +861,7 @@ IdCard string `json:"idCard"` } +// @Security ApiKeyAuth // @Summary 涓婁紶鍥剧墖 骞跺垏鍥� // @Description 涓婁紶鍥剧墖 骞跺垏鍥� // @Accept mpfd -- Gitblit v1.8.0