feat: 班级学生列表接口声明
This commit is contained in:
56
src/modules/practical_training/controller/pt_class_user.go
Normal file
56
src/modules/practical_training/controller/pt_class_user.go
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
package controller
|
||||||
|
|
||||||
|
import (
|
||||||
|
"be.ems/src/framework/utils/ctx"
|
||||||
|
"be.ems/src/framework/utils/parse"
|
||||||
|
"be.ems/src/framework/vo/result"
|
||||||
|
systemModel "be.ems/src/modules/system/model"
|
||||||
|
systemService "be.ems/src/modules/system/service"
|
||||||
|
"github.com/gin-gonic/gin"
|
||||||
|
)
|
||||||
|
|
||||||
|
// NewPtClass 实例化控制层
|
||||||
|
var NewPtClass = &PtClass{
|
||||||
|
sysUserService: systemService.NewSysUserImpl,
|
||||||
|
}
|
||||||
|
|
||||||
|
// 班级信息数据
|
||||||
|
//
|
||||||
|
// PATH /class
|
||||||
|
type PtClass struct {
|
||||||
|
// 用户服务
|
||||||
|
sysUserService systemService.ISysUser
|
||||||
|
}
|
||||||
|
|
||||||
|
// 班级学生列表 (仅教师操作)
|
||||||
|
//
|
||||||
|
// GET /students
|
||||||
|
func (s *PtClass) Students(c *gin.Context) {
|
||||||
|
querys := ctx.QueryMap(c)
|
||||||
|
dataScopeSQL := ctx.LoginUserToDataScopeSQL(c, "d", "u")
|
||||||
|
data := s.sysUserService.SelectUserPage(querys, dataScopeSQL)
|
||||||
|
|
||||||
|
total := parse.Number(data["total"])
|
||||||
|
rows := make([]map[string]any, 0)
|
||||||
|
for _, v := range data["rows"].([]systemModel.SysUser) {
|
||||||
|
if len(v.Roles) == 0 {
|
||||||
|
total--
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
if v.Roles[0].RoleKey != "student" {
|
||||||
|
total--
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
rows = append(rows, map[string]any{
|
||||||
|
"userId": v.UserID,
|
||||||
|
"userName": v.UserName,
|
||||||
|
"nickName": v.NickName,
|
||||||
|
"loginIp": v.LoginIP,
|
||||||
|
"loginDate": v.LoginDate,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
data["total"] = total
|
||||||
|
data["rows"] = rows
|
||||||
|
|
||||||
|
c.JSON(200, result.Ok(data))
|
||||||
|
}
|
||||||
@@ -19,7 +19,7 @@ func Setup(router *gin.Engine) {
|
|||||||
neConfigDataGroup := ptGroup.Group("/neConfigData")
|
neConfigDataGroup := ptGroup.Group("/neConfigData")
|
||||||
{
|
{
|
||||||
neConfigDataGroup.POST("/saveAsDefault",
|
neConfigDataGroup.POST("/saveAsDefault",
|
||||||
middleware.PreAuthorize(map[string][]string{"hasRoles": {"admin", "teacher"}}),
|
middleware.PreAuthorize(map[string][]string{"hasRoles": {"admin"}}),
|
||||||
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfigData", collectlogs.BUSINESS_TYPE_OTHER)),
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfigData", collectlogs.BUSINESS_TYPE_OTHER)),
|
||||||
controller.NewPtNeConfigData.SaveAsDefault,
|
controller.NewPtNeConfigData.SaveAsDefault,
|
||||||
)
|
)
|
||||||
@@ -42,7 +42,7 @@ func Setup(router *gin.Engine) {
|
|||||||
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfigData", collectlogs.BUSINESS_TYPE_UPDATE)),
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfigData", collectlogs.BUSINESS_TYPE_UPDATE)),
|
||||||
controller.NewPtNeConfigData.Edit,
|
controller.NewPtNeConfigData.Edit,
|
||||||
)
|
)
|
||||||
neConfigDataGroup.DELETE("/",
|
neConfigDataGroup.DELETE("",
|
||||||
middleware.PreAuthorize(nil),
|
middleware.PreAuthorize(nil),
|
||||||
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfigData", collectlogs.BUSINESS_TYPE_DELETE)),
|
collectlogs.OperateLog(collectlogs.OptionNew("log.operate.title.neConfigData", collectlogs.BUSINESS_TYPE_DELETE)),
|
||||||
controller.NewPtNeConfigData.Remove,
|
controller.NewPtNeConfigData.Remove,
|
||||||
@@ -81,4 +81,13 @@ func Setup(router *gin.Engine) {
|
|||||||
controller.NewPtNeConfigApply.Edit,
|
controller.NewPtNeConfigApply.Edit,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 班级信息数据
|
||||||
|
classGroup := ptGroup.Group("/class")
|
||||||
|
{
|
||||||
|
classGroup.GET("/students",
|
||||||
|
middleware.PreAuthorize(map[string][]string{"hasRoles": {"teacher"}}),
|
||||||
|
controller.NewPtClass.Students,
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user