fwh_update.go 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. package fwh_test
  2. import (
  3. "fmt"
  4. "fwh-toolbox-server/domain"
  5. "net/url"
  6. "strconv"
  7. )
  8. // 查询系统升级记录
  9. func querySystemUpdateLog(sn string) (*domain.FwhResponse[[]domain.SystemUpdateRecordInfo], error) {
  10. // 要发送的表单数据
  11. form := url.Values{}
  12. form.Set("optType", "1") // 1-系统升级记录 2-下载记录(分步升级相关)
  13. form.Set("gatewayId", sn) // SN
  14. form.Set("pageSize", strconv.FormatUint(REQ_PAGE_SIZE, 10))
  15. form.Set("pageNum", "1")
  16. response, err := FwhHttpPostUnmarshal[[]domain.SystemUpdateRecordInfo](getFullEnergyUrl("/hes-gateway/manage/selectIotFirmwareOrderList"), form)
  17. if err != nil {
  18. return nil, err
  19. }
  20. return response, nil
  21. }
  22. // 查询系统升级记录
  23. func QuerySystemUpdateLog(sn string) ([]domain.SystemUpdateRecordInfo, error) {
  24. systemUpdateLog, err := querySystemUpdateLog(sn)
  25. if err != nil {
  26. return nil, fmt.Errorf("[QuerySystemUpdateLog] %s", err.Error())
  27. }
  28. if systemUpdateLog.Code != 200 {
  29. return nil, fmt.Errorf("[QuerySystemUpdateLog] 查询失败 code: %d, message: %s", systemUpdateLog.Code, systemUpdateLog.Message)
  30. }
  31. return *systemUpdateLog.Result, nil
  32. }
  33. // 查询系统升级记录详细信息
  34. func querySystemUpdateLogDetail(orderId int64) (*domain.FwhResponse[[]domain.SystemUpdateDetailInfo], error) {
  35. // 要发送的表单数据
  36. form := url.Values{}
  37. form.Set("optType", "1") // 1-系统升级记录 2-下载记录(分步升级相关)
  38. form.Set("orderId", strconv.FormatInt(orderId, 10)) // 升级单ID
  39. form.Set("pageSize", strconv.FormatUint(REQ_PAGE_SIZE, 10))
  40. form.Set("pageNum", "1")
  41. response, err := FwhHttpPostUnmarshal[[]domain.SystemUpdateDetailInfo](getFullEnergyUrl("/hes-gateway/manage/selectIotFirmwareOrderDetailList"), form)
  42. if err != nil {
  43. return nil, err
  44. }
  45. return response, nil
  46. }
  47. // 查询系统升级记录详细信息
  48. func QuerySystemUpdateLogDetail(orderId int64) ([]domain.SystemUpdateDetailInfo, error) {
  49. systemUpdateLogDetail, err := querySystemUpdateLogDetail(orderId)
  50. if err != nil {
  51. return nil, fmt.Errorf("[QuerySystemUpdateLogDetail] %s", err.Error())
  52. }
  53. if systemUpdateLogDetail.Code != 200 {
  54. return nil, fmt.Errorf("[QuerySystemUpdateLogDetail] 查询失败 code: %d, message: %s", systemUpdateLogDetail.Code, systemUpdateLogDetail.Message)
  55. }
  56. return *systemUpdateLogDetail.Result, nil
  57. }
  58. // 查询aHub升级记录
  59. func queryAHubUpdateLog(sn string) (*domain.FwhPageResponse[[]domain.AHubUpdateRecordInfo], error) {
  60. // 构造 query 参数
  61. params := url.Values{}
  62. params.Add("gatewayId", sn) // SN
  63. params.Add("pageSize", strconv.FormatUint(REQ_PAGE_SIZE, 10))
  64. params.Add("pageNum", strconv.Itoa(1))
  65. params.Add("lang", "ZH_CN")
  66. response, err := FwhHttpGetUnmarshalPage[[]domain.AHubUpdateRecordInfo](getFullEnergyUrl("/hes-gateway/manage/listAhubFirmwareOrder"), params)
  67. if err != nil {
  68. return nil, err
  69. }
  70. return response, nil
  71. }
  72. // 查询aHub升级记录
  73. func QueryAHubUpdateLog(sn string) ([]domain.AHubUpdateRecordInfo, error) {
  74. aHubUpdateLog, err := queryAHubUpdateLog(sn)
  75. if err != nil {
  76. return nil, fmt.Errorf("[QueryAHubUpdateLog] %s", err.Error())
  77. }
  78. if aHubUpdateLog.Code != 200 {
  79. return nil, fmt.Errorf("[QueryAHubUpdateLog] 查询失败 code: %d, message: %s", aHubUpdateLog.Code, aHubUpdateLog.Message)
  80. }
  81. return *aHubUpdateLog.Result, nil
  82. }