zhangzengfei
2019-10-31 2bd2068c999cda5bda8c0787ed0dcaac6cb7afdb
controllers/fileController.go
@@ -50,6 +50,7 @@
//var weedfsUri = "http://192.168.1.182:9500/submit"
// @Security ApiKeyAuth
// @Summary 依据图片添加底库人员
// @Description  依据图片添加底库返回数据人员
// @Accept  mpfd
@@ -110,6 +111,7 @@
}
var faceExtractedMap = make(map[string]FaceExtract,0)
// @Security ApiKeyAuth
// @Summary 人脸提取
// @Description  人脸提取
// @Produce json
@@ -196,6 +198,7 @@
   BaseInfo []DbPersonVo `json:"baseInfo"`
   VideoUrl string `json:"videoUrl"`
   SdkName string `json:"sdkName"`
   AlarmRules []AlarmRuleVo `json:"alarmRules"`
}
type DbPersonVo struct {
   BwType string `json:"bwType"`
@@ -215,6 +218,15 @@
type ScoreIndex struct {
   CompareScore float32
   Index int
}
type AlarmRuleVo struct {
   GroupId      string `json:"groupId"`
   AlarmLevel   string `json:"alarmLevel"`
   RuleText     string `json:"ruleText"`
   DefenceState bool `json:"defenceState"`
   IsLink        bool `json:"isLink"`
   LinkInfo     string `json:"linkInfo"`
}
//填充向前端返回的数据
@@ -302,6 +314,19 @@
               TableName: p.TableName,
            })
         }
         var alarmRules []AlarmRuleVo
         if vp.AlarmRules !=nil && len(vp.AlarmRules) >0 {
            for _,ar :=range vp.AlarmRules {
               alarmRules = append(alarmRules, AlarmRuleVo{
                  GroupId: ar.GroupId,
                  AlarmLevel: ar.AlarmLevel,
                  RuleText: ar.RuleText,
                  DefenceState: ar.DefenceState,
                  IsLink: ar.IsLink,
                  LinkInfo: ar.LinkInfo,
               })
            }
         }
         vpE := CompareResult{
            Id: vp.Id,
            CompareScore: util.ParseScore(captureM[vp.Id].CompareScore),
@@ -319,6 +344,7 @@
            VideoUrl: vp.VideoUrl,
            BaseInfo: bi,
            SdkName: "人脸",
            AlarmRules: alarmRules,
         }
         resultList[captureM[vp.Id].Index] = vpE
      }
@@ -369,6 +395,7 @@
   }
}
// @Security ApiKeyAuth
// @Summary 以图搜图
// @Description  以图搜图
// @Accept json
@@ -566,7 +593,7 @@
         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)
            aList := getTwiceSearchResult(co, &captureIds, searchBody)
            aTotal := aList.Len()
            if aTotal <= to {
               aResult.CompareResult = (*aList)[from:aTotal]
@@ -599,7 +626,7 @@
               personIdArr = append(personIdArr, pid.Id)
            }
            var aResult protomsg.SdkCompareResult
            aList := getTwiceSearchResult(co, &personIdArr)
            aList := getTwiceSearchResult(co, &personIdArr, searchBody)
            aTotal := aList.Len()
            if aTotal <= to {
               aResult.CompareResult = (*aList)[from:aTotal]
@@ -639,14 +666,14 @@
   return m
}
func getTwiceSearchResult(co *service.CompareOnce, scopeIds *[]string) *service.CompareList{
func getTwiceSearchResult(co *service.CompareOnce, scopeIds *[]string, searchBody *models.EsSearch) *service.CompareList{
   m := make(map[string]string)
   for _,capId :=range *scopeIds {
      m[capId] = capId
   }
   var totalData service.CompareList
   for _,each :=range *co.CompareData {
      if _,ok :=m[each.Id];ok{
      if _,ok :=m[each.Id];ok && each.CompareScore >= searchBody.Threshold {
         totalData = append(totalData, each)
      }
   }
@@ -777,6 +804,7 @@
/**上传方法**/
// @Security ApiKeyAuth
// @Summary 批量添加底库人员
// @Description  依据图片批量添加底库人员
// @Accept  mpfd
@@ -857,6 +885,7 @@
   IdCard string `json:"idCard"`
}
// @Security ApiKeyAuth
// @Summary 上传图片 并切图
// @Description  上传图片 并切图
// @Accept  mpfd