| | |
| | | |
| | | sTime := tmpTime |
| | | eTime := tmpTime |
| | | stayTime := 0.0 |
| | | if startTime != "" { |
| | | sinTime, _ := time.ParseInLocation("2006-01-02 15:04:05", startTime, loc) |
| | | if math.Abs(sinTime.Sub(mTime).Seconds()) <= thresholdTime { |
| | | stayTime = math.Abs(sinTime.Sub(mTime).Seconds()) |
| | | if stayTime <= thresholdTime { |
| | | startTime = tmpTime |
| | | hitsSources[len(hitsSources)-1]["endTime"] = tmpTime |
| | | continue |
| | |
| | | tmpHitSource["startBackGroundPicUrl"] = source["picMaxUrl"].([]interface{}) |
| | | tmpHitSource["startFacePicUrl"] = targetInfo["picSmUrl"].(string) |
| | | tmpHitSource["endTime"] = eTime |
| | | tmpHitSource["stayTime"] = stayTime |
| | | tmpHitSource["endTBackGroundPicUrl"] = source["picMaxUrl"].([]interface{}) |
| | | tmpHitSource["endTFacePicUrl"] = targetInfo["picSmUrl"].(string) |
| | | hitsSources = append(hitsSources, tmpHitSource) |
| | |
| | | |
| | | //解析抓拍库人员结构 |
| | | func PerSonAnalysis(preData []map[string]interface{}) (sources []map[string]interface{}, err error) { |
| | | source := make(map[string]interface{}, 0) |
| | | loc, err := time.LoadLocation("Asia/Shanghai") |
| | | if err != nil { |
| | | return nil, errors.New("时区设置错误") |
| | | } |
| | | for _, key := range preData { |
| | | source := make(map[string]interface{}, 0) |
| | | info := key |
| | | targetInfo := info["targetInfo"].([]interface{})[0].(map[string]interface{}) |
| | | startTime := info["picDate"].(string) |
| | | endTime := info["updateTime"].(string) |
| | | source["personId"] = targetInfo["belongsTargetId"].(string) |
| | | source["cameraId"] = info["cameraId"].(string) |
| | | source["cameraName"] = info["cameraName"].(string) |
| | | source["cameraAddr"] = info["cameraAddr"].(string) |
| | | source["targetScore"] = int(targetInfo["targetScore"].(float64)) |
| | | source["personRect"] = targetInfo["targetLocation"].(map[string]interface{}) |
| | | source["startTime"] = info["picDate"].(string) |
| | | source["startTime"] = startTime |
| | | pixMaxUrl := info["picMaxUrl"].([]interface{}) |
| | | source["startBackGroundPicUrl"] = pixMaxUrl[0] |
| | | source["endTime"] = info["updateTime"].(string) |
| | | source["endTime"] = endTime |
| | | startT, _ := time.ParseInLocation("2006-01-02 15:04:05", startTime, loc) |
| | | endT, _ := time.ParseInLocation("2006-01-02 15:04:05", endTime, loc) |
| | | stayTime := endT.Sub(startT).Seconds() |
| | | source["stayTime"] = stayTime |
| | | source["endBackGroundPicUrl"] = pixMaxUrl[len(pixMaxUrl)-1] |
| | | sources = append(sources, source) |
| | | } |