46 lines
842 B
Go
46 lines
842 B
Go
package handler
|
|
|
|
import (
|
|
"github.com/loveuer/upipe/pkg/model"
|
|
"github.com/loveuer/uzone/pkg/uapi"
|
|
)
|
|
|
|
func TaskCreate(c uapi.Context) error {
|
|
type Req struct {
|
|
Name string `json:"name"`
|
|
Description string `json:"description"`
|
|
}
|
|
var (
|
|
err error
|
|
req = new(Req)
|
|
task = &model.Task{}
|
|
)
|
|
|
|
if err = c.BodyParser(req); err != nil {
|
|
return c.JSON(map[string]any{
|
|
"status": 400,
|
|
"msg": "invalid request",
|
|
"err": err.Error(),
|
|
"data": nil,
|
|
})
|
|
}
|
|
|
|
task.Name, task.Description = req.Name, req.Description
|
|
|
|
if err = c.UseDB().Create(task).Error; err != nil {
|
|
return c.JSON(map[string]any{
|
|
"status": 500,
|
|
"msg": "internal error",
|
|
"err": err.Error(),
|
|
"data": nil,
|
|
})
|
|
}
|
|
|
|
return c.JSON(map[string]any{
|
|
"status": 200,
|
|
"msg": "success",
|
|
"err": nil,
|
|
"data": task,
|
|
})
|
|
}
|