fix: allow to set is_enable separately in problem/create
This commit is contained in:
parent
0fc977a5e0
commit
976f2700ef
@ -10,8 +10,8 @@ import (
|
|||||||
|
|
||||||
type updateRequest struct {
|
type updateRequest struct {
|
||||||
Pid uint `form:"pid" json:"pid"`
|
Pid uint `form:"pid" json:"pid"`
|
||||||
Title string `form:"title" json:"title" binding:"required"`
|
Title string `form:"title" json:"title"`
|
||||||
Statement string `form:"statement" json:"statement" binding:"required"`
|
Statement string `form:"statement" json:"statement"`
|
||||||
IsEnabled bool `form:"is_enabled" json:"is_enabled"`
|
IsEnabled bool `form:"is_enabled" json:"is_enabled"`
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -22,8 +22,8 @@ type updateRequest struct {
|
|||||||
// @Accept application/x-www-form-urlencoded
|
// @Accept application/x-www-form-urlencoded
|
||||||
// @Produce json
|
// @Produce json
|
||||||
// @Param pid formData int false "problem id, 0 for create"
|
// @Param pid formData int false "problem id, 0 for create"
|
||||||
// @Param title formData string true "title"
|
// @Param title formData string false "title"
|
||||||
// @Param statement formData string true "statement"
|
// @Param statement formData string false "statement"
|
||||||
// @Param is_enabled formData bool false "is enabled"
|
// @Param is_enabled formData bool false "is enabled"
|
||||||
// @Response 200 {object} e.Response[model.Problem] "problem info without provider information"
|
// @Response 200 {object} e.Response[model.Problem] "problem info without provider information"
|
||||||
// @Security Authentication
|
// @Security Authentication
|
||||||
@ -50,8 +50,13 @@ func (h *handler) Update(c *gin.Context) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if req.Pid == 0 {
|
if req.Pid == 0 { // create problem
|
||||||
// create problem
|
// Title and Statement are required
|
||||||
|
if req.Title == "" || req.Statement == "" {
|
||||||
|
e.Pong[any](c, e.InvalidParameter, nil)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
createData := &problem.CreateData{
|
createData := &problem.CreateData{
|
||||||
Title: req.Title,
|
Title: req.Title,
|
||||||
Statement: req.Statement,
|
Statement: req.Statement,
|
||||||
@ -61,9 +66,7 @@ func (h *handler) Update(c *gin.Context) {
|
|||||||
p, status := h.problemService.Create(createData)
|
p, status := h.problemService.Create(createData)
|
||||||
e.Pong(c, status, p)
|
e.Pong(c, status, p)
|
||||||
return
|
return
|
||||||
} else {
|
} else { // update problem
|
||||||
// update problem
|
|
||||||
|
|
||||||
// check if problem exists
|
// check if problem exists
|
||||||
p, status := h.problemService.Query(req.Pid, true, false)
|
p, status := h.problemService.Query(req.Pid, true, false)
|
||||||
if status != e.Success {
|
if status != e.Success {
|
||||||
|
Loading…
Reference in New Issue
Block a user