package controllers import ( "vamicro/push-service/service" "vamicro/push-service/vo" "basic.com/valib/bhomeclient.git" "basic.com/valib/logger.git" ) type EventPushController struct { } // @Summary 事件推送保存 // @Description 事件推送保存 // @Tags 事件推送 // @Param SaveArgs body vo.EventPushVo true "时间推送保存参数" // @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 { var saveBody vo.EventPushVo 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} } else { return &bhomeclient.Reply{Success: false, Msg: "保存失败"} } } // @Summary 根据事件推送主题的一级和二级选项获取最后下拉菜单列表 // @Description 根据事件推送主题的一级和二级选项获取最后下拉菜单列表 // @Produce json // @Tags 事件推送 // @Param topic query string true "一级主题选项,例如:camera(摄像机)" // @Param type query string true "子选项类型,例如:name(名称)或addr(位置)" // @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 { topic := c.Query("topic") childType := c.Query("type") 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} } else { return &bhomeclient.Reply{Success: false, Msg: err.Error()} } } // @Summary 查全部 // @Description 查全部 // @Produce json // @Tags 事件推送 // @Param name query string false "事件名称" // @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/findAll [get] 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) if flag { return &bhomeclient.Reply{Success: true, Data: data} } else { return &bhomeclient.Reply{Success: false, Msg: "查询失败"} } } // @Router /data/api-v/eventPush/findAllDetails [get] 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} } // @Summary 事件推送编辑 // @Description 事件推送编辑 // @Produce json // @Tags 事件推送 // @Param id query string true "id" // @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/getById [get] 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: "参数有误"} } sv := service.NewEventPushService(h.Bk) 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: "查询失败"} } } type ChangeStatusVo struct { Id string `json:"id"` Enable bool `json:"enable"` } // @Summary 改变enable状态 // @Description 改变enable状态 // @Produce json // @Tags 事件推送 // @Param statusBody body controllers.ChangeStatusVo true "参数结构" // @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/changeStatus [post] 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: "参数有误"} } sv := service.NewEventPushService(h.Bk) if sv.ChangeStatus(statusBody.Id, statusBody.Enable) { return &bhomeclient.Reply{Success: true, Msg: "修改成功"} } else { return &bhomeclient.Reply{Success: false, Msg: "修改失败"} } } // @Summary 根据id删除 // @Description 根据id删除 // @Accept x-www-form-urlencoded // @Produce json // @Tags 事件推送 // @Param id formData string true "id" // @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/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: "参数有误"} } sv := service.NewEventPushService(h.Bk) if sv.DeleteById(id) { return &bhomeclient.Reply{Success: true, Msg: "删除成功"} } else { return &bhomeclient.Reply{Success: false, Msg: "删除失败"} } }