chart_permission.go 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. package services
  2. import (
  3. "encoding/json"
  4. "eta/eta_mini_api/utils"
  5. "io"
  6. "net/http"
  7. "strconv"
  8. "time"
  9. )
  10. type ChartPermission struct {
  11. ChartPermissionId int `orm:"column(chart_permission_id);pk" description:"问题ID" json:"chart_permission_id"`
  12. ChartPermissionName string `description:"名称" json:"chart_permission_name"`
  13. PermissionName string `description:"权限名" json:"permission_name"`
  14. Sort int `description:"排序" json:"sort"`
  15. Enabled int `description:"是否可用" json:"enabled"`
  16. CreatedTime time.Time `description:"创建时间" json:"created_time"`
  17. LastUpdatedTime time.Time `description:"更新时间" json:"last_updated_time"`
  18. TeleconferenceSort int `description:"电话会类型排序" json:"teleconference_sort"`
  19. Remark string `description:"备注" json:"remark"`
  20. ClassifyName string `description:"分类名称" json:"classify_name"`
  21. ProductName string `description:"产品名称" json:"product_name"`
  22. ProductId int `description:"产品ID" json:"product_id"`
  23. ImageURL string `orm:"column(image_url);" description:"图片地址" json:"image_url"`
  24. ShowType int `description:"1:查研观向小程序展示" json:"show_type"`
  25. IsOther int `description:"是否是其他,用于查研观向小程序后台展示" json:"is_other"`
  26. IsReport int `description:"是否是报告,用于查研观向小程序前台报告展示" json:"is_report"`
  27. CygxAuth int `description:"是否是权限,用于查研观向小程序前台权限校验" json:"cygx_auth"`
  28. PermissionType int `description:"1主观,2客观" json:"permission_type"`
  29. YbImgUrl string `description:"研报小程序报告列表icon" json:"yb_img_url"`
  30. ProductPermissionName string `description:"种类权限名称" json:"product_permission_name"`
  31. PriceDrivenState int `description:"品种价格驱动开启状态 0-关闭 1-开启" json:"price_driven_state"`
  32. ImageUrlM string `description:"图片地址(查研观向移动端)" json:"image_url_m"`
  33. ParentId int `description:"父级权限id" json:"parent_id"`
  34. IsPublic int `description:"是否是公有权限1:公有权限,0私有权限" json:"is_public"`
  35. }
  36. func GetChartPermissionSecondList(chartPermissionId int) (resp []*ChartPermission, err error) {
  37. url := utils.ETA_MINI_BRIDGE_URL + "/chart_permission/second/list"
  38. client := &http.Client{}
  39. if url != "" {
  40. url += "?chartPermissonId=" + strconv.Itoa(chartPermissionId)
  41. }
  42. // 提交请求
  43. req, err := http.NewRequest("GET", url, nil)
  44. if err != nil {
  45. return
  46. }
  47. nonce := utils.GetRandStringNoSpecialChar(16)
  48. timestamp := time.Now().Format(utils.FormatDateTimeUnSpace)
  49. signature := utils.GetSign(nonce, timestamp, utils.ETA_MINI_APPID, utils.ETA_MINI_APP_SECRET)
  50. //增加header选项
  51. req.Header.Add("Nonce", nonce)
  52. req.Header.Add("Timestamp", timestamp)
  53. req.Header.Add("Appid", utils.ETA_MINI_APPID)
  54. req.Header.Add("Signature", signature)
  55. req.Header.Set("Content-Type", "application/json")
  56. response, err := client.Do(req)
  57. if err != nil {
  58. return
  59. }
  60. defer response.Body.Close()
  61. body, err := io.ReadAll(response.Body)
  62. if err != nil {
  63. return
  64. }
  65. utils.FileLog.Info("result:" + string(body))
  66. err = json.Unmarshal(body, &resp)
  67. if err != nil {
  68. return
  69. }
  70. return
  71. }
  72. func GetChartPermissionList() (resp []*ChartPermission, err error) {
  73. url := utils.ETA_MINI_BRIDGE_URL + "/chart_permission/list"
  74. client := &http.Client{}
  75. // 提交请求
  76. req, err := http.NewRequest("GET", url, nil)
  77. if err != nil {
  78. return
  79. }
  80. nonce := utils.GetRandStringNoSpecialChar(16)
  81. timestamp := time.Now().Format(utils.FormatDateTimeUnSpace)
  82. signature := utils.GetSign(nonce, timestamp, utils.ETA_MINI_APPID, utils.ETA_MINI_APP_SECRET)
  83. //增加header选项
  84. req.Header.Add("Nonce", nonce)
  85. req.Header.Add("Timestamp", timestamp)
  86. req.Header.Add("Appid", utils.ETA_MINI_APPID)
  87. req.Header.Add("Signature", signature)
  88. req.Header.Set("Content-Type", "application/json")
  89. response, err := client.Do(req)
  90. if err != nil {
  91. return
  92. }
  93. defer response.Body.Close()
  94. body, err := io.ReadAll(response.Body)
  95. if err != nil {
  96. return
  97. }
  98. utils.FileLog.Info("result:" + string(body))
  99. err = json.Unmarshal(body, &resp)
  100. if err != nil {
  101. return
  102. }
  103. return
  104. }