package router import ( "exam_system/dao" "exam_system/entity" "exam_system/result" "exam_system/utils" "github.com/gin-gonic/gin" "strings" ) func QuestionBank(router *RouterPlus) { r := router.Group("/admin") { // 添加题库 r.POST("/questionBank", AdminAddQuestionBank) // 获取题库 r.GET("/questionBank/:id", AdminGetQuestionBank) // 获取题库列表 r.GET("/questionBank/list", AdminQuestionBankList) // 修改题库 r.PUT("/questionBank", AdminUpdateQuestionBank) // 删除题库 r.DELETE("/questionBank/:ids", AdminDeleteQuestionBank) } } func AdminAddQuestionBank(c *gin.Context) *result.Result { var questionBank entity.QuestionBank err := c.ShouldBindJSON(&questionBank) if err != nil || questionBank.Name == "" { return result.PARAM_ERROR } return dao.AddQuestionBank(&questionBank) } func AdminGetQuestionBank(c *gin.Context) *result.Result { id := c.Param("id") if id == "" { return result.UNKNOW_ERROR } return dao.QuestionBankDetail(id) } func AdminQuestionBankList(c *gin.Context) *result.Result { page, size, sort, query, err := utils.Page(c) if err != nil { return result.PARAM_ERROR } return dao.QuestionBankList(page, size, sort, query) } func AdminUpdateQuestionBank(c *gin.Context) *result.Result { var questionBank entity.QuestionBank err := c.ShouldBindJSON(&questionBank) if err != nil || questionBank.Id == 0 || questionBank.Name == "" { return result.PARAM_ERROR } return dao.UpdateQuestionBank(&questionBank) } func AdminDeleteQuestionBank(c *gin.Context) *result.Result { idStr := c.Param("ids") if idStr == "" { return result.PARAM_ERROR } ids := strings.Split(idStr, ",") return dao.DeleteQuestionBanks(ids) }