dashboard.api 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. import "../base.api"
  2. type (
  3. ChartsReq {
  4. StartDate *string `json:"start_date"`
  5. EndDate *string `json:"end_date"`
  6. // 租户id
  7. OrganizationId *uint64 `json:"organizationId,optional"`
  8. }
  9. ChartsResp {
  10. BaseDataInfo
  11. Data *ChartsData `json:"data"`
  12. }
  13. ChartsData {
  14. AiResponse *ChartsUint `json:"ai_response"`
  15. SopRun *ChartsUint `json:"sop_run"`
  16. TotalFriend *ChartsUint `json:"total_friend"`
  17. TotalGroup *ChartsUint `json:"total_group"`
  18. AccountBalance *ChartsUint `json:"account_balance"`
  19. ConsumeToken *ChartsUint `json:"consume_token"`
  20. ActiveUser *ChartsUint `json:"active_user"`
  21. NewUser *ChartsInt `json:"new_user"`
  22. }
  23. ChartsUint {
  24. Count uint64 `json:"count"`
  25. Rate float32 `json:"rate"`
  26. Label []string `json:"label"`
  27. Val []uint64 `json:"val"`
  28. }
  29. ChartsInt {
  30. Count int64 `json:"count"`
  31. Rate float32 `json:"rate"`
  32. Label []string `json:"label"`
  33. Val []int64 `json:"val"`
  34. }
  35. LabelsReq {
  36. EndDate *string `json:"end_date"`
  37. // 租户id
  38. OrganizationId *uint64 `json:"organizationId,optional"`
  39. }
  40. LabelsResp {
  41. BaseDataInfo
  42. Data []LabelsData `json:"data"`
  43. }
  44. LabelsData {
  45. Value uint64 `json:"value"`
  46. Name string `json:"name"`
  47. }
  48. WxReq {
  49. PageInfo
  50. EndDate *string `json:"end_date"`
  51. // 租户id
  52. OrganizationId *uint64 `json:"organizationId,optional"`
  53. }
  54. WxResp {
  55. BaseDataInfo
  56. Data []WxList `json:"data"`
  57. }
  58. WxList {
  59. BaseListInfo
  60. Data []WxData `json:"data"`
  61. }
  62. WxData {
  63. TotalFriend uint64 `json:"total_friend"`
  64. TotalGroup uint64 `json:"total_group"`
  65. InteractionRate float32 `json:"interaction_rate"`
  66. }
  67. )
  68. @server(
  69. jwt: Auth
  70. group: dashboard
  71. middleware: Authority
  72. )
  73. service Wechat {
  74. // get charts | 获取图表数据
  75. @handler getCharts
  76. post /dashboard/charts (ChartsReq) returns (ChartsResp)
  77. // get labels | 获取图表数据
  78. @handler getLabels
  79. post /dashboard/labels (LabelsReq) returns (LabelsResp)
  80. // get wxs | 获取图表数据
  81. @handler getWxs
  82. post /dashboard/wx (WxReq) returns (WxResp)
  83. }