Merge remote-tracking branch 'origin/master'
| | |
| | | |
| | | logger.Debug("arg.TableIds:", arg.TableIds, ",alarmLevel:",arg.AlarmLevel,",treeNodes:",arg.TreeNodes,",searchTime:",arg.SearchTime, |
| | | ",inputValue:",arg.InputValue,",tasks:",arg.Tasks,",compThreshold:",arg.CompareThreshold) |
| | | timeStart := time.Now() |
| | | |
| | | compareService := service.NewFaceCompareService(arg) |
| | | compareOnce := compareService.Compare() |
| | | //logger.Debug("compareResult.len:",*compareOnce) |
| | | dataList := compareOnce.CompareData |
| | | |
| | | logger.Debug("comp 比对结束,用时:",time.Since(timeStart)) |
| | | |
| | | service.SortByScore(dataList) |
| | | totalList := len(dataList) |
| | | m := make(map[string]interface{},3) |
| | |
| | | } else { |
| | | m["totalList"] = dataList[0:searchBody.Size] |
| | | } |
| | | logger.Debug("comp 比对加排序返回用时:", time.Since(timeStart)) |
| | | util.ResponseFormat(c,code.Success,m) |
| | | } |
| | | } |
| | |
| | | resultList = append(resultList,cr) |
| | | } |
| | | } |
| | | logger.Debug("GetCompareDataTwice.data:",resultList) |
| | | //logger.Debug("GetCompareDataTwice.data:",resultList) |
| | | service.SortByScore(resultList) |
| | | from := (arg.Page-1)*arg.Size |
| | | to := from + arg.Size |
| | |
| | | if to <= len(resultList) { |
| | | m["totalList"] = resultList[from:to] |
| | | } else { |
| | | m["totalList"] = resultList[from:len(resultList)] |
| | | lte := len(resultList) |
| | | m["totalList"] = resultList[from:lte] |
| | | } |
| | | } else { |
| | | m["totalList"] = []service.CompareResult{} |
| | |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | "/" + index + "/_search" |
| | | cameraIdStr := "" |
| | | if searchBody["treeNodes"] !=nil { |
| | | cameraId := searchBody["treeNodes"].([]interface{}) |
| | | if cameraId != nil && len(cameraId) > 0 { |
| | | esCameraId := strings.Replace(strings.Trim(fmt.Sprint(cameraId), "[]"), " ", "\",\"", -1) |
| | | cameraIdStr = "{\"terms\":{\"cameraId\":[\"" + esCameraId + "\"]}}," |
| | | } |
| | | } |
| | | |
| | | var setApi dbapi.SysSetApi |
| | | _, sysconf := setApi.GetServerInfo() |
| | | analyServerFilterStr := "{\"term\":{\"analyServerId\":\"" + sysconf.ServerId + "\"}}" |
| | |
| | | import ( |
| | | esApi "basic.com/pubsub/esutil.git" |
| | | "basic.com/pubsub/protomsg.git" |
| | | "encoding/json" |
| | | "github.com/gogo/protobuf/proto" |
| | | "github.com/satori/go.uuid" |
| | | "nanomsg.org/go-mangos" |
| | |
| | | if resultB == nil || len(*resultB) ==0 { |
| | | continue |
| | | } |
| | | rList :=make([]protomsg.Esinfo,0) |
| | | err = json.Unmarshal(*resultB, &rList) |
| | | var sdkCompResult protomsg.SdkCompareResult |
| | | //rList :=make([]protomsg.Esinfo,0) |
| | | err = proto.Unmarshal(*resultB, &sdkCompResult) |
| | | if err !=nil{ |
| | | logger.Debug("comp recv result Unmarshal err:", err) |
| | | logger.Debug("comp sdkCompareResult unmarshal err:", err) |
| | | continue |
| | | } |
| | | logger.Debug("comp len(rList):", len(rList)) |
| | | if len(rList) >0 { |
| | | resultList = append(resultList, FillDataToCompareResult(&rList)...) |
| | | |
| | | logger.Debug("comp len(rList):", len(sdkCompResult.CompareResult)) |
| | | if len(sdkCompResult.CompareResult) >0 { |
| | | resultList = append(resultList, FillDataToCompareResult(&sdkCompResult)...) |
| | | } |
| | | } |
| | | logger.Debug("comp totalList.len:", len(resultList)) |
| | |
| | | } |
| | | |
| | | //填充向前端返回的数据 |
| | | func FillDataToCompareResult(rList *[]protomsg.Esinfo) []CompareResult { |
| | | func FillDataToCompareResult(compResult *protomsg.SdkCompareResult) []CompareResult { |
| | | resultList :=make([]CompareResult,0) |
| | | |
| | | dbPersonM := make(map[string]*protomsg.Esinfo,0) |
| | | captureM := make(map[string]*protomsg.Esinfo,0) |
| | | dbPersonM := make(map[string]*protomsg.SdkCompareEach, 0) |
| | | captureM := make(map[string]*protomsg.SdkCompareEach, 0) |
| | | personIds :=make([]string,0) |
| | | captureIds := make([]string,0) |
| | | for _,v :=range *rList{ |
| | | for _,v :=range compResult.CompareResult{ |
| | | if v.Tableid == CaptureTable { |
| | | captureM[v.Id] = &v |
| | | captureM[v.Id] = v |
| | | captureIds = append(captureIds,v.Id) |
| | | } else { |
| | | dbPersonM[v.Id] = &v |
| | | dbPersonM[v.Id] = v |
| | | personIds = append(personIds,v.Id) |
| | | } |
| | | } |
| | |
| | | resultList = append(resultList,cr) |
| | | } |
| | | } |
| | | var capturePersons []protomsg.Videopersons |
| | | if len(captureIds) >0 { |
| | | logger.Debug("comp capturePersons.len:", len(capturePersons)) |
| | | videopersons, _ := esApi.Videopersonsinfosbyid(captureIds, config.EsInfo.EsIndex.VideoPersons.IndexName, config.EsInfo.Masterip, config.EsInfo.Httpport) |
| | | logger.Debug("comp videoPersons.len:",len(videopersons)) |
| | | for _,vp :=range videopersons { |