yl fe46cc7499 feat: 实现我的课程API接口
- 新增mycourse API接口定义 (api/api/mycourse/)
- 实现Controller层,遵循团队四层架构规范
- 实现Logic层业务逻辑,包含用户认证和模拟数据
- 自动生成Service层接口 (gf gen service)
- 支持课程状态筛选和分页功能
- 返回课程基本信息、学习进度、讲师等数据
2025-07-29 11:38:48 +08:00

47 lines
1.3 KiB
Go

// Package router
// @Link https://github.com/bufanyun/hotgo
// @Copyright Copyright (c) 2023 HotGo CLI
// @Author Ms <133814250@qq.com>
// @License https://github.com/bufanyun/hotgo/blob/master/LICENSE
package router
import (
"context"
"hotgo/internal/consts"
"hotgo/internal/controller/api/activity"
"hotgo/internal/controller/api/lesson"
"hotgo/internal/controller/api/member"
"hotgo/internal/controller/api/mycourse"
"hotgo/internal/controller/api/pay"
"hotgo/internal/controller/api/users"
"hotgo/internal/service"
"hotgo/utility/simple"
"github.com/gogf/gf/v2/net/ghttp"
)
// Api 前台路由
func Api(ctx context.Context, group *ghttp.RouterGroup) {
group.Group(simple.RouterPrefix(ctx, consts.AppApi), func(group *ghttp.RouterGroup) {
group.Bind(
pay.NewV1(), // 支付异步通知
)
group.Middleware(service.Middleware().ApiAuth)
group.Bind(
member.NewV1(), // 管理员
)
})
group.Group(simple.RouterPrefix(ctx, consts.AppApi), func(group *ghttp.RouterGroup) {
group.Bind(
users.NewV1(), // 前台用户(登录注册等不需要认证的接口)
lesson.NewV1(), // 课程(公开接口)
activity.NewV1(), // 活动(公开接口)
)
group.Middleware(service.Middleware().ApiAuth)
group.Bind(
mycourse.NewV1(), // 我的课程(需要用户认证)
)
})
}