package bhomedbapi import ( "basic.com/pubsub/protomsg.git" "encoding/json" ) type EventPushApi struct { } func (api EventPushApi) Save(paramBody map[string]interface{}) (bool,interface{}){ url := DATA_URL_PREFIX + "/eventPush/save" netNode := getNetNode(url2Topic(Topic_EventPush_Service, url)) client := NewClient(WithNodes(netNode)) body,err := client.DoPostRequest(url,CONTENT_TYPE_JSON, paramBody,nil,nil) if err != nil { return false,nil } var res Result if err = json.Unmarshal(body, &res); err != nil { logPrint(err) return false,nil } return res.Success,res.Data } func (api EventPushApi) FindByEventTopic(topic string,childType string) (bool,interface{}){ url := DATA_URL_PREFIX + "/eventPush/findByEventTopic" netNode := getNetNode(url2Topic(Topic_EventPush_Service, url)) client := NewClient(WithNodes(netNode)) paramQuery :=make(map[string]string,0) paramQuery["topic"] = topic paramQuery["type"] = childType body, err := client.DoGetRequest(url, paramQuery, nil) if err != nil { return false,nil } var res Result if err = json.Unmarshal(body, &res); err != nil { return false,nil } return true,res.Data } func (api EventPushApi) FindAll(name string) (bool,interface{}){ url := DATA_URL_PREFIX + "/eventPush/findAll" netNode := getNetNode(url2Topic(Topic_EventPush_Service, url)) client := NewClient(WithNodes(netNode)) paramQuery :=make(map[string]string,0) paramQuery["name"] = name body, err := client.DoGetRequest(url, paramQuery, nil) if err != nil { return false,nil } var res Result if err = json.Unmarshal(body, &res); err != nil { return false,nil } return true,res.Data } func (api EventPushApi) FindAllDetails() (b bool,allRules []protomsg.EventPush){ url := DATA_URL_PREFIX + "/eventPush/findAllDetails" netNode := getNetNode(url2Topic(Topic_EventPush_Service, url)) client := NewClient(WithNodes(netNode)) body, err := client.DoGetRequest(url, nil, nil) if err != nil { return false,nil } var res Result if err = json.Unmarshal(body, &res); err != nil { return false,nil } bytes, _ := json.Marshal(res.Data) err = json.Unmarshal(bytes, &allRules) if err !=nil{ logPrint("all eventPushRules unmarshal err:",err) return false,nil } return true,allRules } func (api EventPushApi) GetById(id string) (bool,interface{}){ url := DATA_URL_PREFIX + "/eventPush/getById" netNode := getNetNode(url2Topic(Topic_EventPush_Service, url)) client := NewClient(WithNodes(netNode)) paramQuery :=make(map[string]string,0) paramQuery["id"] = id body, err := client.DoGetRequest(url, paramQuery, nil) if err != nil { return false,nil } var res Result if err = json.Unmarshal(body, &res); err != nil { return false,nil } return true,res.Data } func (api EventPushApi) ChangeStatus(id string,enable bool) (bool,interface{}){ url := DATA_URL_PREFIX + "/eventPush/changeStatus" netNode := getNetNode(url2Topic(Topic_EventPush_Service, url)) client := NewClient(WithNodes(netNode)) paramBody :=make(map[string]interface{},0) paramBody["id"] = id paramBody["enable"] = enable body, err := client.DoPostRequest(url, CONTENT_TYPE_JSON,paramBody, nil, nil) if err != nil { return false,nil } var res Result if err = json.Unmarshal(body, &res); err != nil { return false,nil } return true,res.Data } func (api EventPushApi) Delete(id string) (bool,interface{}){ url := DATA_URL_PREFIX + "/eventPush/delete" netNode := getNetNode(url2Topic(Topic_EventPush_Service, url)) client := NewClient(WithNodes(netNode)) paramForm :=make(map[string]interface{},0) paramForm["id"] = id body, err := client.DoPostRequest(url, CONTENT_TYPE_FORM, paramForm, nil, nil) if err != nil { return false,nil } var res Result if err = json.Unmarshal(body, &res); err != nil { return false,nil } return true,res.Data }