From a3cee496b44ebc44b2d0f08acbb8b1b9dd8f7c05 Mon Sep 17 00:00:00 2001 From: Gucheng Wang Date: Sun, 18 Sep 2022 17:35:34 +0800 Subject: [PATCH] Add add-record API --- controllers/record.go | 21 +++++++++++++++++++++ routers/router.go | 1 + 2 files changed, 22 insertions(+) diff --git a/controllers/record.go b/controllers/record.go index 98d5169c..4f5678ac 100644 --- a/controllers/record.go +++ b/controllers/record.go @@ -15,6 +15,8 @@ package controllers import ( + "encoding/json" + "github.com/astaxie/beego/utils/pagination" "github.com/casdoor/casdoor/object" "github.com/casdoor/casdoor/util" @@ -72,3 +74,22 @@ func (c *ApiController) GetRecordsByFilter() { c.Data["json"] = object.GetRecordsByField(record) c.ServeJSON() } + +// AddRecord +// @Title AddRecord +// @Tag Record API +// @Description add a record +// @Param body body object.Record true "The details of the record" +// @Success 200 {object} controllers.Response The Response object +// @router /add-record [post] +func (c *ApiController) AddRecord() { + var record object.Record + err := json.Unmarshal(c.Ctx.Input.RequestBody, &record) + if err != nil { + c.ResponseError(err.Error()) + return + } + + c.Data["json"] = wrapActionResponse(object.AddRecord(&record)) + c.ServeJSON() +} diff --git a/routers/router.go b/routers/router.go index 4bfe6ed9..3fc66f9c 100644 --- a/routers/router.go +++ b/routers/router.go @@ -155,6 +155,7 @@ func initAPI() { beego.Router("/api/get-records", &controllers.ApiController{}, "GET:GetRecords") beego.Router("/api/get-records-filter", &controllers.ApiController{}, "POST:GetRecordsByFilter") + beego.Router("/api/add-record", &controllers.ApiController{}, "POST:AddRecord") beego.Router("/api/get-webhooks", &controllers.ApiController{}, "GET:GetWebhooks") beego.Router("/api/get-webhook", &controllers.ApiController{}, "GET:GetWebhook")