peixue-dev/peidu/uniapp/api/provider.js

463 lines
8.4 KiB
JavaScript
Raw Permalink Normal View History

/**
* 服务商 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'
})
}
}