panlei
2019-06-22 46c52105684a65d7737d2c6a964d19a3cad28ab5
es也过滤数据长度
1个文件已修改
204 ■■■■ 已修改文件
insertdata/insertDataToEs.go 204 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
insertdata/insertDataToEs.go
@@ -95,129 +95,139 @@
    for _, sdkinfo := range msg.Tasklab.Sdkinfos {
        if sdkinfo.Sdktype == "FaceDetect" {
            faceParam := protomsg.ParamFacePos{}
            err1 := proto.Unmarshal(sdkinfo.Sdkdata, &faceParam)
            if err1 != nil {
                fmt.Println("解析FACE sdk有误", err1)
            if len(sdkinfo.Sdkdata) > 1 {
                faceParam := protomsg.ParamFacePos{}
                err1 := proto.Unmarshal(sdkinfo.Sdkdata, &faceParam)
                if err1 != nil {
                    fmt.Println("解析FACE sdk有误", err1)
                    continue
                }
                for _, face := range faceParam.Faces {
                    pervideo := PerVideoPicture{
                        uuid.NewV4().String(),
                        msg.Cid,
                        msg.Caddr,
                        time.Now().Format("2006-01-02 15:04:05"),
                        "",
                        msg.Tasklab.Taskid,
                        msg.Tasklab.Taskname,
                        sdkinfo.SdkName,
                        "",
                        "",
                        face.Result.Gender,
                        face.Result.Age,
                        "",
                        face.Result.Race,
                        face.Result.Smile,
                        face.Result.Beauty,
                        "不是每个人脸算法都有",
                        "---",
                        "",
                        "",
                        "",
                        "",
                        "",
                        "",
                        "",
                        "",
                        0,
                        Base{
                            "是每个人脸算法都有吗",
                            "",
                            0,
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                        },
                    }
                    requstbody, err := json.Marshal(pervideo)
                    if err != nil {
                        fmt.Println("json parse error ", err)
                        return
                    }
                    err = EsReq("POST", "http://192.168.1.182:9200/videopersons/perVideoPicture", requstbody)
                    if err != nil {
                        fmt.Println("es can not execute right.")
                    }
                }
            } else {
                continue
            }
            for _, face := range faceParam.Faces {
                pervideo := PerVideoPicture{
        }
        if sdkinfo.Sdktype == "Yolo" {
            if len(sdkinfo.Sdkdata) > 1 {
                yoloObj := protomsg.ParamYoloObj{}
                err1 := proto.Unmarshal(sdkinfo.Sdkdata, &yoloObj)
                if err1 != nil {
                    fmt.Println("解析YOLO sdk有误", err1)
                    //continue
                }
                alarmRules := []AlarmRule{}
                for _,result := range msg.RuleResult {
                    alarmRules = append(alarmRules,AlarmRule{result.RuleGroupId,result.AlarmLevel,result.RuleText})
                }
                isAlarm := ""
                if len(alarmRules) > 0 {
                    isAlarm = "1"
                }else {
                    isAlarm = "0"
                    continue
                }
                // 查询本机信息
                flag,localConfig := dbapi.SysSetApi{}.GetServerInfo()
                if !flag {
                    fmt.Println("查询本机信息失败!")
                }
                // 查询cameraName
                camera,err := dbapi.CameraApi{}.GetCameraById(msg.Cid)
                if err == nil {
                    fmt.Println("查询摄像机信息失败")
                }
                serverIp,err := GetLocalIP()
                peraction := Personaction{
                    uuid.NewV4().String(),
                    msg.Cid,
                    camera.Name,
                    msg.Caddr,
                    time.Now().Format("2006-01-02 15:04:05"),
                    "",
                    msg.Tasklab.Taskid,
                    msg.Tasklab.Taskname,
                    sdkinfo.SdkName,
                    "",
                    "",
                    face.Result.Gender,
                    face.Result.Age,
                    "",
                    face.Result.Race,
                    face.Result.Smile,
                    face.Result.Beauty,
                    "不是每个人脸算法都有",
                    "---",
                    alarmRules,
                    localConfig.ServerId,
                    localConfig.ServerName,
                    serverIp,
                    "",
                    "",
                    time.Now().Format("2006-01-02 15:04:05"),
                    "",
                    "",
                    "",
                    "",
                    isAlarm,
                    "",
                    "",
                    0,
                    Base{
                        "是每个人脸算法都有吗",
                        "",
                        0,
                        "",
                        "",
                        "",
                        "",
                        "",
                        "",
                        "",
                        "",
                    },
                }
                requstbody, err := json.Marshal(pervideo)
                requstbody, err := json.Marshal(peraction)
                if err != nil {
                    fmt.Println("json parse error ", err)
                    return
                }
                err = EsReq("POST", "http://192.168.1.182:9200/videopersons/perVideoPicture", requstbody)
                err = EsReq("POST", "http://192.168.1.182:9200/personaction/perVideoAction", requstbody)
                if err != nil {
                    fmt.Println("es can not execute right.")
                }
            }
        }
        if sdkinfo.Sdktype == "Yolo" {
            yoloObj := protomsg.ParamYoloObj{}
            err1 := proto.Unmarshal(sdkinfo.Sdkdata, &yoloObj)
            if err1 != nil {
                fmt.Println("解析YOLO sdk有误", err1)
                //continue
            }
            alarmRules := []AlarmRule{}
            for _,result := range msg.RuleResult {
                alarmRules = append(alarmRules,AlarmRule{result.RuleGroupId,result.AlarmLevel,result.RuleText})
            }
            isAlarm := ""
            if len(alarmRules) > 0 {
                isAlarm = "1"
            }else {
                isAlarm = "0"
            } else {
                continue
            }
            // 查询本机信息
            flag,localConfig := dbapi.SysSetApi{}.GetServerInfo()
            if !flag {
                fmt.Println("查询本机信息失败!")
            }
            // 查询cameraName
            camera,err := dbapi.CameraApi{}.GetCameraById(msg.Cid)
            if err == nil {
                fmt.Println("查询摄像机信息失败")
            }
            serverIp,err := GetLocalIP()
            peraction := Personaction{
                uuid.NewV4().String(),
                msg.Cid,
                camera.Name,
                msg.Caddr,
                msg.Tasklab.Taskid,
                msg.Tasklab.Taskname,
                sdkinfo.SdkName,
                "",
                alarmRules,
                localConfig.ServerId,
                localConfig.ServerName,
                serverIp,
                "",
                "",
                time.Now().Format("2006-01-02 15:04:05"),
                "",
                isAlarm,
                "",
                "",
                0,
            }
            requstbody, err := json.Marshal(peraction)
            if err != nil {
                fmt.Println("json parse error ", err)
                return
            }
            err = EsReq("POST", "http://192.168.1.182:9200/personaction/perVideoAction", requstbody)
            if err != nil {
                fmt.Println("es can not execute right.")
            }
        }