You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

141 lines
4.4 KiB

  1. /**
  2. * 我的自选股相关API接口封装
  3. * 使用common/util.js中的请求方法
  4. */
  5. import util from '../../common/util.js'
  6. /**
  7. * 我的自选股API接口类
  8. */
  9. class MySelectionsAPI {
  10. /**
  11. * 判断用户是否存在自选股分组
  12. * @param {Function} successCallback - 成功回调函数
  13. * @param {Function} failCallback - 失败回调函数
  14. * @param {Object} data - 请求参数
  15. * @returns {void}
  16. */
  17. static checkExist(successCallback, failCallback = null, data = {}) {
  18. const url = '/api/homePage/userStock/checkExist'
  19. util.request(
  20. url,
  21. (response) => {
  22. console.log('检查用户自选股分组存在性 - 响应:', response)
  23. if (successCallback && typeof successCallback === 'function') {
  24. successCallback(response)
  25. }
  26. },
  27. data,
  28. (error) => {
  29. console.error('检查用户自选股分组存在性 - 失败:', error)
  30. if (failCallback && typeof failCallback === 'function') {
  31. failCallback(error)
  32. }
  33. }
  34. )
  35. }
  36. /**
  37. * 查询用户所有自选股分组
  38. * @param {Function} successCallback - 成功回调函数
  39. * @param {Function} failCallback - 失败回调函数
  40. * @param {Object} data - 请求参数
  41. * @returns {void}
  42. */
  43. static getUserStockGroupList(successCallback, failCallback = null, data = {}) {
  44. const url = '/api/homePage/userStockGroup/list'
  45. util.request(
  46. url,
  47. (response) => {
  48. console.log('查询用户自选股分组列表 - 响应:', response)
  49. if (successCallback && typeof successCallback === 'function') {
  50. successCallback(response)
  51. }
  52. },
  53. data,
  54. (error) => {
  55. console.error('查询用户自选股分组列表 - 失败:', error)
  56. if (failCallback && typeof failCallback === 'function') {
  57. failCallback(error)
  58. }
  59. }
  60. )
  61. }
  62. /**
  63. * 分页查询某一个分组下的所有自选股
  64. * @param {Function} successCallback - 成功回调函数
  65. * @param {Function} failCallback - 失败回调函数
  66. * @param {Object} data - 请求参数 {groupId, pageNum, pageSize, ...}
  67. * @returns {void}
  68. */
  69. static getUserStockList(successCallback, failCallback = null, data = {}) {
  70. const url = '/api/homePage/userStock/list'
  71. // 设置默认分页参数
  72. const requestData = {
  73. pageNum: 1,
  74. pageSize: 20,
  75. ...data
  76. }
  77. util.request(
  78. url,
  79. (response) => {
  80. console.log('分页查询分组自选股 - 响应:', response)
  81. if (successCallback && typeof successCallback === 'function') {
  82. successCallback(response)
  83. }
  84. },
  85. requestData,
  86. (error) => {
  87. console.error('分页查询分组自选股 - 失败:', error)
  88. if (failCallback && typeof failCallback === 'function') {
  89. failCallback(error)
  90. }
  91. }
  92. )
  93. }
  94. /**
  95. * 查询默认自选股
  96. * @param {Function} successCallback - 成功回调函数
  97. * @param {Function} failCallback - 失败回调函数
  98. * @param {Object} data - 请求参数
  99. * @returns {void}
  100. */
  101. static getUserOrDefault(successCallback, failCallback = null, data = {}) {
  102. const url = '/api/homePage/userStock/getUserOrDefault'
  103. util.request(
  104. url,
  105. (response) => {
  106. console.log('查询默认自选股 - 响应:', response)
  107. if (successCallback && typeof successCallback === 'function') {
  108. successCallback(response)
  109. }
  110. },
  111. data,
  112. (error) => {
  113. console.error('查询默认自选股 - 失败:', error)
  114. if (failCallback && typeof failCallback === 'function') {
  115. failCallback(error)
  116. }
  117. }
  118. )
  119. }
  120. }
  121. // 导出API类
  122. export default MySelectionsAPI
  123. // 也可以导出单个方法供直接使用
  124. export const {
  125. checkExist,
  126. getUserStockGroupList,
  127. getUserStockList,
  128. getUserOrDefault
  129. } = MySelectionsAPI