fwh_update.go 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. package fwh_pro
  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, sn string) (*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("serials", sn) // SN
  40. form.Set("pageSize", strconv.FormatUint(REQ_PAGE_SIZE, 10))
  41. form.Set("pageNum", "1")
  42. form.Set("lang", "ZH_CN")
  43. response, err := FwhHttpPostUnmarshal[[]domain.SystemUpdateDetailInfo](getFullEnergyUrl("/hes-gateway/manage/selectIotFirmwareOrderDetailList"), form)
  44. if err != nil {
  45. return nil, err
  46. }
  47. return response, nil
  48. }
  49. // 查询系统升级记录详细信息
  50. func QuerySystemUpdateLogDetail(orderId int64, sn string) ([]domain.SystemUpdateDetailInfo, error) {
  51. systemUpdateLogDetail, err := querySystemUpdateLogDetail(orderId, sn)
  52. if err != nil {
  53. return nil, fmt.Errorf("[QuerySystemUpdateLogDetail] %s", err.Error())
  54. }
  55. if systemUpdateLogDetail.Code != 200 {
  56. return nil, fmt.Errorf("[QuerySystemUpdateLogDetail] 查询失败 code: %d, message: %s", systemUpdateLogDetail.Code, systemUpdateLogDetail.Message)
  57. }
  58. return *systemUpdateLogDetail.Result, nil
  59. }
  60. // 查询aHub升级记录
  61. func queryAHubUpdateLog(sn string) (*domain.FwhPageResponse[[]domain.AHubUpdateRecordInfo], error) {
  62. // 构造 query 参数
  63. params := url.Values{}
  64. params.Add("gatewayId", sn) // SN
  65. params.Add("pageSize", strconv.FormatUint(REQ_PAGE_SIZE, 10))
  66. params.Add("pageNum", strconv.Itoa(1))
  67. params.Add("lang", "ZH_CN")
  68. response, err := FwhHttpGetUnmarshalPage[[]domain.AHubUpdateRecordInfo](getFullEnergyUrl("/hes-gateway/manage/listAhubFirmwareOrder"), params)
  69. if err != nil {
  70. return nil, err
  71. }
  72. return response, nil
  73. }
  74. // 查询aHub升级记录
  75. func QueryAHubUpdateLog(sn string) ([]domain.AHubUpdateRecordInfo, error) {
  76. aHubUpdateLog, err := queryAHubUpdateLog(sn)
  77. if err != nil {
  78. return nil, fmt.Errorf("[QueryAHubUpdateLog] %s", err.Error())
  79. }
  80. if aHubUpdateLog.Code != 200 {
  81. return nil, fmt.Errorf("[QueryAHubUpdateLog] 查询失败 code: %d, message: %s", aHubUpdateLog.Code, aHubUpdateLog.Message)
  82. }
  83. return *aHubUpdateLog.Result, nil
  84. }