rentease-app/api/billing.js

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)
}
}