| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- package fwh_pro
- import (
- "encoding/json"
- "errors"
- "fmt"
- "fwh-toolbox-server/config"
- "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 编码
- reqUrl := fmt.Sprintf("https://%s/api-energy/power/getFhpPowerByDayOld", config.FWH_ENERGY)
- response, err := FwhHttpGet(reqUrl, params)
- if err != nil {
- return nil, err
- }
- return response.Body, nil
- }
- // 从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
- }
|