Files
gym-manage/gym-manage-coach/api/course.js
T

90 lines
2.1 KiB
JavaScript

/**
* 团课管理API
* 对应后端: /api/groupCourse/* 和 /api/coach/courses
*/
import request from '@/utils/request.js'
/**
* 获取当前教练自己教授的团课列表(教练专属)
* GET /api/coach/courses
* JWT令牌中自动携带教练身份,后端返回该教练的所有团课
*/
export function getCoachCourses() {
return request.get('/api/coach/courses')
}
/**
* 获取所有团课列表
* GET /api/groupCourse/list
*/
export function getCourseList(includeDeleted = false) {
return request.get('/api/groupCourse/list', { includeDeleted })
}
/**
* 分页获取团课
* POST /api/groupCourse/page
*/
export function getCoursePage(params, includeDeleted = false) {
return request.post('/api/groupCourse/page', params, { params: { includeDeleted } })
}
/**
* 多条件搜索团课
* POST /api/groupCourse/search
*/
export function searchCourses(params) {
return request.post('/api/groupCourse/search', params)
}
/**
* 根据ID获取团课详情
* GET /api/groupCourse/{id}
*/
export function getCourseById(id) {
return request.get(`/api/groupCourse/${id}`)
}
/**
* 根据ID获取团课完整信息(含类型和标签)
* GET /api/groupCourse/{id}/detail
*/
export function getCourseDetail(id) {
return request.get(`/api/groupCourse/${id}/detail`)
}
/**
* 获取团课类型列表
* GET /api/groupCourse/types
*/
export function getCourseTypes() {
return request.get('/api/groupCourse/types')
}
/**
* 查询课程预约记录(教练查看自己团课的预约会员)
* GET /api/groupCourse/bookings/course/{courseId}
*/
export function getBookingsByCourseId(courseId) {
return request.get(`/api/groupCourse/bookings/course/${courseId}`)
}
/**
* 教练开课
* POST /api/groupCourse/{id}/start
* body: { actualStartTime: 'yyyy-MM-ddTHH:mm:ss' }
*/
export function startCourse(id, actualStartTime) {
return request.post(`/api/groupCourse/${id}/start`, { actualStartTime })
}
/**
* 教练结课
* POST /api/groupCourse/{id}/end
* body: { actualEndTime: 'yyyy-MM-ddTHH:mm:ss' }
*/
export function endCourse(id, actualEndTime) {
return request.post(`/api/groupCourse/${id}/end`, { actualEndTime })
}