liuxiaolong
2019-10-30 c38c4bda17e3774ec0fd58f90ba5e59e1f0639a2
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)
@@ -556,7 +564,8 @@
         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
@@ -582,21 +591,31 @@
   } else {//底库数据的二次检索
      var dbpApi dbapi.DbPersonApi
      personIds, _ := dbpApi.FindLikePersonIds(searchBody.DataBases, searchBody.InputValue)
      logger.Debug("searchPhoto first Result.len:",len(*co.CompareData),"twice len(personIds):",len(personIds))
      if personIds !=nil && len(personIds)>0 {
         var aResult protomsg.SdkCompareResult
         aList := getTwiceSearchResult(co, &personIds)
         aTotal := aList.Len()
         if aTotal <= to {
            aResult.CompareResult = (*aList)[from:aTotal]
         } else {
            aResult.CompareResult = (*aList)[from:to]
      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
         }
         out := FillDataToCompareResult(&aResult)
         m["total"] = aTotal
         m["compareNum"] = searchBody.CompareNum
         m["totalList"] = out
         return m
      } else {
         m["total"] = 0
         m["compareNum"] = searchBody.CompareNum
@@ -761,6 +780,7 @@
/**上传方法**/
// @Security ApiKeyAuth
// @Summary 批量添加底库人员
// @Description  依据图片批量添加底库人员
// @Accept  mpfd
@@ -841,6 +861,7 @@
   IdCard string `json:"idCard"`
}
// @Security ApiKeyAuth
// @Summary 上传图片 并切图
// @Description  上传图片 并切图
// @Accept  mpfd