463 lines
8.4 KiB
JavaScript
463 lines
8.4 KiB
JavaScript
|
|
/**
|
|||
|
|
* 服务商 API 接口
|
|||
|
|
*/
|
|||
|
|
import request from '@/utils/request'
|
|||
|
|
|
|||
|
|
export default {
|
|||
|
|
// ==================== 服务商认证 ====================
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取服务商状态
|
|||
|
|
*/
|
|||
|
|
getStatus() {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/status',
|
|||
|
|
method: 'GET'
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 申请成为服务商
|
|||
|
|
* @param {Object} data 申请数据
|
|||
|
|
*/
|
|||
|
|
apply(data) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/apply',
|
|||
|
|
method: 'POST',
|
|||
|
|
data
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取服务商信息
|
|||
|
|
*/
|
|||
|
|
getInfo() {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/info',
|
|||
|
|
method: 'GET'
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 更新服务商信息
|
|||
|
|
* @param {Object} data 更新数据
|
|||
|
|
*/
|
|||
|
|
updateInfo(data) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/info',
|
|||
|
|
method: 'PUT',
|
|||
|
|
data
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
// ==================== 课程管理 ====================
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取课程列表
|
|||
|
|
* @param {Object} params 查询参数
|
|||
|
|
*/
|
|||
|
|
getCourseList(params) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/course/list',
|
|||
|
|
method: 'GET',
|
|||
|
|
params
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取课程详情
|
|||
|
|
* @param {Number} id 课程ID
|
|||
|
|
*/
|
|||
|
|
getCourseDetail(id) {
|
|||
|
|
return request({
|
|||
|
|
url: `/api/provider/course/${id}`,
|
|||
|
|
method: 'GET'
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 发布课程
|
|||
|
|
* @param {Object} data 课程数据
|
|||
|
|
*/
|
|||
|
|
publishCourse(data) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/course/publish',
|
|||
|
|
method: 'POST',
|
|||
|
|
data
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 更新课程
|
|||
|
|
* @param {Number} id 课程ID
|
|||
|
|
* @param {Object} data 课程数据
|
|||
|
|
*/
|
|||
|
|
updateCourse(id, data) {
|
|||
|
|
return request({
|
|||
|
|
url: `/api/provider/course/${id}`,
|
|||
|
|
method: 'PUT',
|
|||
|
|
data
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 删除课程
|
|||
|
|
* @param {Number} id 课程ID
|
|||
|
|
*/
|
|||
|
|
deleteCourse(id) {
|
|||
|
|
return request({
|
|||
|
|
url: `/api/provider/course/${id}`,
|
|||
|
|
method: 'DELETE'
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 开始课程
|
|||
|
|
* @param {Number} id 课程ID
|
|||
|
|
*/
|
|||
|
|
startCourse(id) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/course/start',
|
|||
|
|
method: 'POST',
|
|||
|
|
data: { courseId: id }
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 结束课程
|
|||
|
|
* @param {Number} id 课程ID
|
|||
|
|
* @param {Object} data 结束数据(如课程总结等)
|
|||
|
|
*/
|
|||
|
|
endCourse(id, data = {}) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/course/end',
|
|||
|
|
method: 'POST',
|
|||
|
|
data: { courseId: id, ...data }
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 保存课程记录(草稿/完成)
|
|||
|
|
* @param {Object} data 课程记录数据
|
|||
|
|
*/
|
|||
|
|
saveCourseRecord(data) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/course/record',
|
|||
|
|
method: 'POST',
|
|||
|
|
data
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取课程统计
|
|||
|
|
*/
|
|||
|
|
getCourseStats() {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/course/stats',
|
|||
|
|
method: 'GET'
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
// ==================== 学生管理 ====================
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取学生列表
|
|||
|
|
* @param {Object} params 查询参数
|
|||
|
|
*/
|
|||
|
|
getStudentList(params) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/student/list',
|
|||
|
|
method: 'GET',
|
|||
|
|
params
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取学生详情
|
|||
|
|
* @param {Number} id 学生ID
|
|||
|
|
*/
|
|||
|
|
getStudentDetail(id) {
|
|||
|
|
return request({
|
|||
|
|
url: `/api/provider/student/${id}`,
|
|||
|
|
method: 'GET'
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取学生成长记录
|
|||
|
|
* @param {Number} id 学生ID
|
|||
|
|
* @param {Object} params 查询参数
|
|||
|
|
*/
|
|||
|
|
getStudentGrowth(id, params) {
|
|||
|
|
return request({
|
|||
|
|
url: `/api/provider/student/${id}/growth`,
|
|||
|
|
method: 'GET',
|
|||
|
|
params
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 添加学生成长记录
|
|||
|
|
* @param {Number} id 学生ID
|
|||
|
|
* @param {Object} data 成长记录数据
|
|||
|
|
*/
|
|||
|
|
addStudentGrowth(id, data) {
|
|||
|
|
return request({
|
|||
|
|
url: `/api/provider/student/${id}/growth`,
|
|||
|
|
method: 'POST',
|
|||
|
|
data
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取学生统计
|
|||
|
|
*/
|
|||
|
|
getStudentStats() {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/student/stats',
|
|||
|
|
method: 'GET'
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
// ==================== 订单管理 ====================
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取订单列表
|
|||
|
|
* @param {Object} params 查询参数
|
|||
|
|
*/
|
|||
|
|
getOrderList(params) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/order/list',
|
|||
|
|
method: 'GET',
|
|||
|
|
params
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取订单详情
|
|||
|
|
* @param {Number} id 订单ID
|
|||
|
|
*/
|
|||
|
|
getOrderDetail(id) {
|
|||
|
|
return request({
|
|||
|
|
url: `/api/provider/order/${id}`,
|
|||
|
|
method: 'GET'
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取订单统计
|
|||
|
|
*/
|
|||
|
|
getOrderStats() {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/order/stats',
|
|||
|
|
method: 'GET'
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取收益统计(与后端 ProviderController 对齐)
|
|||
|
|
* @param {Object} params 查询参数
|
|||
|
|
*/
|
|||
|
|
getEarningsStats(params) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/earnings/stats',
|
|||
|
|
method: 'GET',
|
|||
|
|
params
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 申请提现(与后端 ProviderController 对齐)
|
|||
|
|
* @param {Object} data 提现数据
|
|||
|
|
*/
|
|||
|
|
applyWithdraw(data) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/withdraw/apply',
|
|||
|
|
method: 'POST',
|
|||
|
|
data
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
// ==================== 财务管理 ====================
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取收益统计
|
|||
|
|
* @param {Object} params 查询参数
|
|||
|
|
*/
|
|||
|
|
getEarnings(params) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/finance/earnings',
|
|||
|
|
method: 'GET',
|
|||
|
|
params
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 申请提现
|
|||
|
|
* @param {Object} data 提现数据
|
|||
|
|
*/
|
|||
|
|
withdraw(data) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/finance/withdraw',
|
|||
|
|
method: 'POST',
|
|||
|
|
data
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取提现记录
|
|||
|
|
* @param {Object} params 查询参数
|
|||
|
|
*/
|
|||
|
|
getWithdrawRecords(params) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/finance/withdraw/records',
|
|||
|
|
method: 'GET',
|
|||
|
|
params
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取交易记录
|
|||
|
|
* @param {Object} params 查询参数
|
|||
|
|
*/
|
|||
|
|
getTransactions(params) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/finance/transactions',
|
|||
|
|
method: 'GET',
|
|||
|
|
params
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
// ==================== 服务设置 ====================
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取服务列表
|
|||
|
|
*/
|
|||
|
|
getServices() {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/service/list',
|
|||
|
|
method: 'GET'
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 添加服务
|
|||
|
|
* @param {Object} data 服务数据
|
|||
|
|
*/
|
|||
|
|
addService(data) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/service',
|
|||
|
|
method: 'POST',
|
|||
|
|
data
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 更新服务
|
|||
|
|
* @param {Number} id 服务ID
|
|||
|
|
* @param {Object} data 服务数据
|
|||
|
|
*/
|
|||
|
|
updateService(id, data) {
|
|||
|
|
return request({
|
|||
|
|
url: `/api/provider/service/${id}`,
|
|||
|
|
method: 'PUT',
|
|||
|
|
data
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 删除服务
|
|||
|
|
* @param {Number} id 服务ID
|
|||
|
|
*/
|
|||
|
|
deleteService(id) {
|
|||
|
|
return request({
|
|||
|
|
url: `/api/provider/service/${id}`,
|
|||
|
|
method: 'DELETE'
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
// ==================== 专项课程管理 ====================
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取专项课程列表
|
|||
|
|
* @param {Object} params 查询参数
|
|||
|
|
*/
|
|||
|
|
getSpecialCourseList(params) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/course/special/list',
|
|||
|
|
method: 'GET',
|
|||
|
|
params
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取专项课程详情
|
|||
|
|
* @param {Number} id 课程ID
|
|||
|
|
*/
|
|||
|
|
getSpecialCourseDetail(id) {
|
|||
|
|
return request({
|
|||
|
|
url: `/api/provider/course/special/${id}`,
|
|||
|
|
method: 'GET'
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 发布专项课程
|
|||
|
|
* @param {Object} data 课程数据
|
|||
|
|
*/
|
|||
|
|
publishSpecialCourse(data) {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/course/special/publish',
|
|||
|
|
method: 'POST',
|
|||
|
|
data
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 更新专项课程
|
|||
|
|
* @param {Number} id 课程ID
|
|||
|
|
* @param {Object} data 课程数据
|
|||
|
|
*/
|
|||
|
|
updateSpecialCourse(id, data) {
|
|||
|
|
return request({
|
|||
|
|
url: `/api/provider/course/special/${id}`,
|
|||
|
|
method: 'PUT',
|
|||
|
|
data
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 删除专项课程
|
|||
|
|
* @param {Number} id 课程ID
|
|||
|
|
*/
|
|||
|
|
deleteSpecialCourse(id) {
|
|||
|
|
return request({
|
|||
|
|
url: `/api/provider/course/special/${id}`,
|
|||
|
|
method: 'DELETE'
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 更新课程状态(上下架)
|
|||
|
|
* @param {Number} id 课程ID
|
|||
|
|
* @param {Number} status 状态:2-上架,3-下架
|
|||
|
|
*/
|
|||
|
|
updateSpecialCourseStatus(id, status) {
|
|||
|
|
return request({
|
|||
|
|
url: `/api/provider/course/special/${id}/status`,
|
|||
|
|
method: 'POST',
|
|||
|
|
data: { status }
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 获取课程统计数据
|
|||
|
|
*/
|
|||
|
|
getSpecialCourseStats() {
|
|||
|
|
return request({
|
|||
|
|
url: '/api/provider/course/special/stats',
|
|||
|
|
method: 'GET'
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
}
|