112 lines
2.3 KiB
JavaScript
112 lines
2.3 KiB
JavaScript
|
|
/**
|
|||
|
|
* 计费中心 API 模块
|
|||
|
|
* 处理套餐、订单、支付等相关接口
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
import request from '../utils/request.js'
|
|||
|
|
|
|||
|
|
export default {
|
|||
|
|
/**
|
|||
|
|
* 获取计费信息
|
|||
|
|
* @returns {Promise}
|
|||
|
|
*/
|
|||
|
|
getInfo() {
|
|||
|
|
return request.get('/billing/info')
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取资源使用情况
|
|||
|
|
* @returns {Promise}
|
|||
|
|
*/
|
|||
|
|
getUsage() {
|
|||
|
|
return request.get('/billing/usage')
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取可用套餐列表
|
|||
|
|
* @returns {Promise}
|
|||
|
|
*/
|
|||
|
|
getPlans() {
|
|||
|
|
return request.get('/billing/plans')
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取订单列表
|
|||
|
|
* @param {Object} params - 查询参数
|
|||
|
|
* @param {number} params.page - 页码
|
|||
|
|
* @param {number} params.pageSize - 每页数量
|
|||
|
|
* @returns {Promise}
|
|||
|
|
*/
|
|||
|
|
getOrders(params = {}) {
|
|||
|
|
return request.get('/billing/orders', params)
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取订单详情
|
|||
|
|
* @param {number} id - 订单ID
|
|||
|
|
* @returns {Promise}
|
|||
|
|
*/
|
|||
|
|
getOrderDetail(id) {
|
|||
|
|
return request.get(`/billing/orders/${id}`)
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 创建订单
|
|||
|
|
* @param {Object} data - 订单数据
|
|||
|
|
* @param {number} data.planId - 套餐ID
|
|||
|
|
* @param {number} data.months - 购买时长(月)
|
|||
|
|
* @returns {Promise}
|
|||
|
|
*/
|
|||
|
|
createOrder(data) {
|
|||
|
|
return request.post('/billing/orders', data)
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 取消订单
|
|||
|
|
* @param {number} id - 订单ID
|
|||
|
|
* @returns {Promise}
|
|||
|
|
*/
|
|||
|
|
cancelOrder(id) {
|
|||
|
|
return request.put(`/billing/orders/${id}/cancel`)
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 支付订单
|
|||
|
|
* @param {number} id - 订单ID
|
|||
|
|
* @returns {Promise}
|
|||
|
|
*/
|
|||
|
|
payOrder(id) {
|
|||
|
|
return request.post(`/billing/orders/${id}/pay`)
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取支付记录列表
|
|||
|
|
* @param {Object} params - 查询参数
|
|||
|
|
* @param {number} params.page - 页码
|
|||
|
|
* @param {number} params.pageSize - 每页数量
|
|||
|
|
* @returns {Promise}
|
|||
|
|
*/
|
|||
|
|
getPayments(params = {}) {
|
|||
|
|
return request.get('/billing/payments', params)
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取支付设置
|
|||
|
|
* @returns {Promise}
|
|||
|
|
*/
|
|||
|
|
getPaymentSettings() {
|
|||
|
|
return request.get('/billing/payment-settings')
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 计算订单价格
|
|||
|
|
* @param {Object} data - 计算参数
|
|||
|
|
* @param {number} data.planId - 套餐ID
|
|||
|
|
* @param {number} data.months - 购买时长(月)
|
|||
|
|
* @returns {Promise}
|
|||
|
|
*/
|
|||
|
|
calculatePrice(data) {
|
|||
|
|
return request.post('/billing/calculate-price', data)
|
|||
|
|
}
|
|||
|
|
}
|