package fwh_pro import ( "encoding/json" "errors" "fwh-toolbox-server/dto" "net/url" ) // 查询站点告警信息 func querySiteAlarmList(sn string) ([]byte, error) { // 构造 query 参数 params := url.Values{} params.Add("gatewayId", sn) params.Add("land", "ZH_CN") return FwhHttpGet("https://energy.franklinwh.com/hes-gateway/manage/getEquipmentAlarm", params) } // 从fwh_pro获取站点告警列表 func QuerySiteAlarmList(site string) (dto.SiteAlarmListResponse, error) { resByte, err := querySiteAlarmList(site) if err != nil { return dto.SiteAlarmListResponse{}, err } var siteAlarmListRes dto.SiteAlarmListResponse // 反序列化(unmarshal) jsonErr := json.Unmarshal(resByte, &siteAlarmListRes) if jsonErr != nil { return dto.SiteAlarmListResponse{}, jsonErr } if siteAlarmListRes.Code == 401 { // TODO 尝试重新登录 return dto.SiteAlarmListResponse{}, errors.New("certification expired") } return siteAlarmListRes, nil }