From eac932eb827c93e2e998ac1210c3f5e548af0dbf Mon Sep 17 00:00:00 2001 From: qixiaoning <jony.kee@outlook.com> Date: 星期四, 28 八月 2025 09:10:14 +0800 Subject: [PATCH] 推送回显地址bug,实时监控接口摄像机名称直接取video_point_name, --- push-service/controllers/eventPush.go | 98 ++++++++++++++++++++++++++++++------------------- 1 files changed, 60 insertions(+), 38 deletions(-) diff --git a/push-service/controllers/eventPush.go b/push-service/controllers/eventPush.go index 89e11d9..95853ac 100644 --- a/push-service/controllers/eventPush.go +++ b/push-service/controllers/eventPush.go @@ -1,16 +1,18 @@ package controllers import ( - "basic.com/valib/bhomeclient.git" - "basic.com/valib/logger.git" + "encoding/json" + "vamicro/push-service/models" + "vamicro/push-service/mqtt" "vamicro/push-service/service" "vamicro/push-service/vo" + + "basic.com/valib/bhomeclient.git" + "basic.com/valib/logger.git" ) type EventPushController struct { - } - // @Summary 浜嬩欢鎺ㄩ�佷繚瀛� // @Description 浜嬩欢鎺ㄩ�佷繚瀛� @@ -19,16 +21,16 @@ // @Success 200 {string} json "{"code":200, success:true, msg:"", data:""}" // @Failure 500 {string} json "{"code":500, success:false, msg:"",data:""}" // @Router /data/api-v/eventPush/save [post] -func (epc EventPushController) Save(h *bhomeclient.WrapperHandler, c *bhomeclient.Request) *bhomeclient.Reply{ +func (epc EventPushController) Save(h *bhomeclient.WrapperHandler, c *bhomeclient.Request) *bhomeclient.Reply { var saveBody vo.EventPushVo - if err := c.BindJSON(&saveBody);err !=nil { - return &bhomeclient.Reply{ Success: false, Msg: "鍙傛暟鏈夎"} + if err := c.BindJSON(&saveBody); err != nil { + return &bhomeclient.Reply{Success: false, Msg: "鍙傛暟鏈夎"} } sv := service.NewEventPushService(h.Bk) if sv.Save(&saveBody) { - return &bhomeclient.Reply{ Success: true, Data: saveBody } + return &bhomeclient.Reply{Success: true, Data: saveBody} } else { - return &bhomeclient.Reply{ Success: false, Msg: "淇濆瓨澶辫触"} + return &bhomeclient.Reply{Success: false, Msg: "淇濆瓨澶辫触"} } } @@ -41,19 +43,19 @@ // @Success 200 {string} json "{"code":200, success:true, msg:"", data:""}" // @Failure 500 {string} json "{"code":500, success:false, msg:"",data:""}" // @Router /data/api-v/eventPush/findByEventTopic [get] -func (epc EventPushController) FindByEventTopic(h *bhomeclient.WrapperHandler, c *bhomeclient.Request) *bhomeclient.Reply{ +func (epc EventPushController) FindByEventTopic(h *bhomeclient.WrapperHandler, c *bhomeclient.Request) *bhomeclient.Reply { topic := c.Query("topic") childType := c.Query("type") - if topic == ""{ - return &bhomeclient.Reply{ Success: false, Msg: "鍙傛暟鏈夎"} + if topic == "" { + return &bhomeclient.Reply{Success: false, Msg: "鍙傛暟鏈夎"} } sv := service.NewEventPushService(h.Bk) list, err := sv.FindByEventTopic(topic, childType) if err == nil { - return &bhomeclient.Reply{ Success: true, Data: list } + return &bhomeclient.Reply{Success: true, Data: list} } else { - return &bhomeclient.Reply{ Success: false, Msg: err.Error() } + return &bhomeclient.Reply{Success: false, Msg: err.Error()} } } @@ -68,11 +70,11 @@ func (epc EventPushController) FindAll(h *bhomeclient.WrapperHandler, c *bhomeclient.Request) *bhomeclient.Reply { name := c.Query("name") sv := service.NewEventPushService(h.Bk) - flag,data := sv.FindAll(name) + flag, data := sv.FindAll(name) if flag { - return &bhomeclient.Reply{ Success: true, Data: data } - } else{ - return &bhomeclient.Reply{ Success: false, Msg: "鏌ヨ澶辫触"} + return &bhomeclient.Reply{Success: true, Data: data} + } else { + return &bhomeclient.Reply{Success: false, Msg: "鏌ヨ澶辫触"} } } @@ -80,7 +82,7 @@ func (epc EventPushController) FindAllDetails(h *bhomeclient.WrapperHandler, c *bhomeclient.Request) *bhomeclient.Reply { sv := service.NewEventPushService(h.Bk) data := sv.FindAllDetails() - return &bhomeclient.Reply{ Success: true, Data: data } + return &bhomeclient.Reply{Success: true, Data: data} } // @Summary 浜嬩欢鎺ㄩ�佺紪杈� @@ -94,22 +96,22 @@ func (epc EventPushController) GetById(h *bhomeclient.WrapperHandler, c *bhomeclient.Request) *bhomeclient.Reply { id := c.Query("id") logger.Debug("id:", id) - if id == ""{ - return &bhomeclient.Reply{ Success: false, Msg: "鍙傛暟鏈夎"} + if id == "" { + return &bhomeclient.Reply{Success: false, Msg: "鍙傛暟鏈夎"} } sv := service.NewEventPushService(h.Bk) - flag,data := sv.GetById(id) + flag, data := sv.GetById(id) logger.Debug("getByID FLAG:", flag, " data:", data) if flag { - return &bhomeclient.Reply{ Success: true, Data: data} - } else{ - return &bhomeclient.Reply{ Success:false, Msg: "鏌ヨ澶辫触"} + return &bhomeclient.Reply{Success: true, Data: data} + } else { + return &bhomeclient.Reply{Success: false, Msg: "鏌ヨ澶辫触"} } } type ChangeStatusVo struct { - Id string `json:"id"` - Enable bool `json:"enable"` + Id string `json:"id"` + Enable bool `json:"enable"` } // @Summary 鏀瑰彉enable鐘舵�� @@ -123,14 +125,34 @@ func (epc EventPushController) ChangeStatus(h *bhomeclient.WrapperHandler, c *bhomeclient.Request) *bhomeclient.Reply { var statusBody ChangeStatusVo err := c.BindJSON(&statusBody) - if err !=nil { - return &bhomeclient.Reply{ Success: false, Msg: "鍙傛暟鏈夎"} + if err != nil { + return &bhomeclient.Reply{Success: false, Msg: "鍙傛暟鏈夎"} } sv := service.NewEventPushService(h.Bk) - if sv.ChangeStatus(statusBody.Id,statusBody.Enable){ - return &bhomeclient.Reply{ Success:true, Msg: "淇敼鎴愬姛"} + if sv.ChangeStatus(statusBody.Id, statusBody.Enable) { + //娑堟伅鎻愰啋 + var epE models.EventPush + epE.GetById(statusBody.Id) + + //udp鎺ㄩ�� + if epE.PushType == 1 { + msg := map[string]string{ + "type": "change", // 娉ㄦ剰閫楀彿 + "status": "", // 鏈�鍚庝竴涓厓绱犱篃闇�瑕侀�楀彿锛圙o 璇硶瑕佹眰锛� + "id": statusBody.Id, + } + if statusBody.Enable { + msg["status"] = "start" + } else { + msg["status"] = "stop" + } + jsonStr, _ := json.Marshal(msg) + go mqtt.Client.Publish(mqtt.MQTT_CONFIG_TOPIC, jsonStr) + } + + return &bhomeclient.Reply{Success: true, Msg: "淇敼鎴愬姛"} } else { - return &bhomeclient.Reply{ Success:false, Msg: "淇敼澶辫触"} + return &bhomeclient.Reply{Success: false, Msg: "淇敼澶辫触"} } } @@ -145,13 +167,13 @@ // @Router /data/api-v/eventPush/delete [post] func (epc EventPushController) Delete(h *bhomeclient.WrapperHandler, c *bhomeclient.Request) *bhomeclient.Reply { id := c.PostForm("id") - if id ==""{ - return &bhomeclient.Reply{ Success: false, Msg: "鍙傛暟鏈夎"} + if id == "" { + return &bhomeclient.Reply{Success: false, Msg: "鍙傛暟鏈夎"} } sv := service.NewEventPushService(h.Bk) - if sv.DeleteById(id){ - return &bhomeclient.Reply{ Success:true, Msg: "鍒犻櫎鎴愬姛"} + if sv.DeleteById(id) { + return &bhomeclient.Reply{Success: true, Msg: "鍒犻櫎鎴愬姛"} } else { - return &bhomeclient.Reply{ Success:false, Msg: "鍒犻櫎澶辫触"} + return &bhomeclient.Reply{Success: false, Msg: "鍒犻櫎澶辫触"} } -} \ No newline at end of file +} -- Gitblit v1.8.0