panlei
2019-07-02 30825f2903224e1f52954547500950317f5a473e
Merge branch 'master' of https://192.168.1.14/r/ruleprocess
2个文件已修改
51 ■■■■■ 已修改文件
cache/cache.go 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
insertdata/insertDataToEs.go 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cache/cache.go
@@ -5,15 +5,18 @@
    "basic.com/pubsub/cache.git/shardmap"
    "basic.com/pubsub/protomsg.git"
    "basic.com/valib/gopherdiscovery.git"
    "errors"
    "fmt"
    "github.com/gogo/protobuf/proto"
    "github.com/satori/go.uuid"
    "strconv"
)
const (
    PREFIX_CAMERA = "CAMERA_"
    PREFIX_POLYGON = "POLYGON_"
    PREFIX_TIME = "TIME_"
    PREFIX_RULE = "RULE_"
    SERVER_KEY = "SERVERINFO"
)
var cMap *shardmap.ShardMap
@@ -44,6 +47,10 @@
    initCameraTaskRules()//初始化摄像机任务规则缓存
    initCamera()//初始化摄像机信息
    initServerInfo()//初始化服务器配置信息
    initChan <- true
}
@@ -55,6 +62,10 @@
        return
    }
    switch newUpdateMsg.Table {
    case protomsg.TableChanged_T_Server:
        initServerInfo()
    case protomsg.TableChanged_T_Camera:
        initCamera()
    case protomsg.TableChanged_T_CameraPolygon://更新摄像机多变形
        initPolygons()
    case protomsg.TableChanged_T_TimeRule://更新时间规则
@@ -64,6 +75,22 @@
    default:
        fmt.Println("unknown operation")
    }
}
func initServerInfo() {
    var api dbapi.SysSetApi
    b, s := api.GetServerInfo()
    if b{
        cMap.Set(SERVER_KEY,s)
    }
}
func initCamera() {
    var api dbapi.CameraApi
    cameras := api.FindAll()
    for _,cam := range cameras {
        cMap.Set(PREFIX_CAMERA + cam.Id,cam)
    }
}
@@ -104,7 +131,24 @@
    }
}
func GetServerInfo() (con protomsg.LocalConfig,err error) {
    config, b := cMap.Get(SERVER_KEY)
    if b {
        return config.(protomsg.LocalConfig),nil
    } else {
        return con,errors.New("conf not found")
    }
}
//通过cameraId获取摄像机信息
func GetCameraById(cameraId string) (c protomsg.Camera,err error) {
    cam, b := cMap.Get(PREFIX_CAMERA + cameraId)
    if b {
        return cam.(protomsg.Camera),nil
    } else {
        return c,errors.New("camera not found")
    }
}
func GetPolygonsByCameraId(cameraId string) []protomsg.CameraPolygon{
    obj, b := cMap.Get(PREFIX_POLYGON + cameraId)
insertdata/insertDataToEs.go
@@ -6,6 +6,7 @@
    "fmt"
    "log"
    "net"
    "ruleprocess/cache"
    "strings"
    "time"
@@ -211,12 +212,12 @@
        }
        // log.Println("图片上传返回值:", resp)
        // 查询本机信息
        flag, localConfig := dbapi.SysSetApi{}.GetServerInfo()
        if !flag {
        localConfig, err := cache.GetServerInfo()
        if err !=nil {
            log.Println("查询本机信息失败!")
        }
        // 查询cameraName
        camera, err := dbapi.CameraApi{}.GetCameraById(msg.Cid)
        camera, err := cache.GetCameraById(msg.Cid)
        if err != nil {
            log.Println("查询摄像机信息失败")
        }