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.
154 lines
4.8 KiB
154 lines
4.8 KiB
/**
|
|
* 我的自选股相关API接口封装
|
|
* 使用utils/http.js中的拦截器封装请求方法
|
|
*/
|
|
|
|
import { http } from '../../utils/http.js'
|
|
|
|
/**
|
|
* 我的自选股API接口类
|
|
*/
|
|
class MySelectionsAPI {
|
|
|
|
/**
|
|
* 判断用户是否存在自选股分组
|
|
* @param {Function} successCallback - 成功回调函数
|
|
* @param {Function} failCallback - 失败回调函数
|
|
* @param {Object} data - 请求参数
|
|
* @returns {Promise}
|
|
*/
|
|
static async checkExist(successCallback, failCallback = null, data = {}) {
|
|
const url = '/api/homePage/userStock/checkExist'
|
|
|
|
try {
|
|
const response = await http({
|
|
url: url,
|
|
method: 'POST',
|
|
data: data
|
|
})
|
|
|
|
console.log('检查用户自选股分组存在性 - 响应:', response)
|
|
if (successCallback && typeof successCallback === 'function') {
|
|
successCallback(response)
|
|
}
|
|
return response
|
|
} catch (error) {
|
|
console.error('检查用户自选股分组存在性 - 失败:', error)
|
|
if (failCallback && typeof failCallback === 'function') {
|
|
failCallback(error)
|
|
}
|
|
throw error
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 查询用户所有自选股分组
|
|
* @param {Function} successCallback - 成功回调函数
|
|
* @param {Function} failCallback - 失败回调函数
|
|
* @param {Object} data - 请求参数
|
|
* @returns {Promise}
|
|
*/
|
|
static async getUserStockGroupList(successCallback, failCallback = null, data = {}) {
|
|
const url = '/api/homePage/userStockGroup/list'
|
|
|
|
try {
|
|
const response = await http({
|
|
url: url,
|
|
method: 'POST',
|
|
data: data
|
|
})
|
|
|
|
console.log('查询用户自选股分组列表 - 响应:', response)
|
|
if (successCallback && typeof successCallback === 'function') {
|
|
successCallback(response)
|
|
}
|
|
return response
|
|
} catch (error) {
|
|
console.error('查询用户自选股分组列表 - 失败:', error)
|
|
if (failCallback && typeof failCallback === 'function') {
|
|
failCallback(error)
|
|
}
|
|
throw error
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 分页查询某一个分组下的所有自选股
|
|
* @param {Function} successCallback - 成功回调函数
|
|
* @param {Function} failCallback - 失败回调函数
|
|
* @param {Object} data - 请求参数 {groupId, pageNum, pageSize, ...}
|
|
* @returns {Promise}
|
|
*/
|
|
static async getUserStockList(successCallback, failCallback = null, data = {}) {
|
|
const url = '/api/homePage/userStock/list'
|
|
|
|
// 设置默认分页参数
|
|
const requestData = {
|
|
pageNum: 1,
|
|
pageSize: 20,
|
|
...data
|
|
}
|
|
|
|
try {
|
|
const response = await http({
|
|
url: url,
|
|
method: 'POST',
|
|
data: requestData
|
|
})
|
|
|
|
console.log('分页查询分组自选股 - 响应:', response)
|
|
if (successCallback && typeof successCallback === 'function') {
|
|
successCallback(response)
|
|
}
|
|
return response
|
|
} catch (error) {
|
|
console.error('分页查询分组自选股 - 失败:', error)
|
|
if (failCallback && typeof failCallback === 'function') {
|
|
failCallback(error)
|
|
}
|
|
throw error
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 查询默认自选股
|
|
* @param {Function} successCallback - 成功回调函数
|
|
* @param {Function} failCallback - 失败回调函数
|
|
* @param {Object} data - 请求参数
|
|
* @returns {Promise}
|
|
*/
|
|
static async getUserOrDefault(successCallback, failCallback = null, data = {}) {
|
|
const url = '/api/homePage/userStock/getUserOrDefault'
|
|
|
|
try {
|
|
const response = await http({
|
|
url: url,
|
|
method: 'POST',
|
|
data: data
|
|
})
|
|
|
|
console.log('查询默认自选股 - 响应:', response)
|
|
if (successCallback && typeof successCallback === 'function') {
|
|
successCallback(response)
|
|
}
|
|
return response
|
|
} catch (error) {
|
|
console.error('查询默认自选股 - 失败:', error)
|
|
if (failCallback && typeof failCallback === 'function') {
|
|
failCallback(error)
|
|
}
|
|
throw error
|
|
}
|
|
}
|
|
}
|
|
|
|
// 导出API类
|
|
export default MySelectionsAPI
|
|
|
|
// 也可以导出单个方法供直接使用
|
|
export const {
|
|
checkExist,
|
|
getUserStockGroupList,
|
|
getUserStockList,
|
|
getUserOrDefault
|
|
} = MySelectionsAPI
|