| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- package fwh_pro
- import (
- "encoding/json"
- "errors"
- "fwh-toolbox-server/dto"
- "net/url"
- "time"
- )
- // 查询站点功率流信息
- func querySitePowerFlow(sn string, day time.Time) ([]byte, error) {
- // 构造 query 参数
- params := url.Values{}
- params.Add("gatewayId", sn)
- params.Add("dayTime", day.Format(time.DateOnly)) // 会自动 URL 编码
- return FwhHttpGet("https://energy.franklinwh.com/api-energy/power/getFhpPowerByDayOld", params)
- }
- // 从fwh_pro获取站点功率流
- func QuerySitePowerFlow(site string, day time.Time) (dto.SitePowerFlowResponse, error) {
- resByte, err := querySitePowerFlow(site, day)
- if err != nil {
- return dto.SitePowerFlowResponse{}, err
- }
- var sitePowerFlowRes dto.SitePowerFlowResponse
- // 反序列化(unmarshal)
- jsonErr := json.Unmarshal(resByte, &sitePowerFlowRes)
- if jsonErr != nil {
- return dto.SitePowerFlowResponse{}, jsonErr
- }
- if sitePowerFlowRes.Code == 401 {
- // TODO 尝试重新登录
- return dto.SitePowerFlowResponse{}, errors.New("certification expired")
- }
- return sitePowerFlowRes, nil
- }
|