package controller import ( "github.com/kataras/iris/v12/mvc" "xps/pkg/repo/datamodel" "xps/pkg/repo/service" ) type RepoObjectController struct { Base Service service.RepoObjectService } func (c *RepoObjectController) BeforeActivation(b mvc.BeforeActivation) { b.Handle("GET", "/{repoId:int64}", "GetListById") b.Handle("POST", "/add", "Create") b.Handle("DELETE", "/{repoId:int64}/{modelId:int64}/{objectId:int64}", "DeleteByID") } func (c *RepoObjectController) GetListById(repoId int64) *JsonResult { data, err := c.Service.GetListById(repoId) if err != nil { return ResultErr(err.Error(), nil) } else { return ResultOk("获取成功", data) } } func (c *RepoObjectController) Create() *JsonResult { userId := c.GetCurUserId() data := datamodel.RepoObject{} data.CreatedBy = userId if err := c.Ctx.ReadJSON(&data); err != nil { return ResultErr("读取数据失败", nil) } if err := c.Service.Create(&data); err != nil { return ResultErr(err.Error(), nil) } else { return ResultOk("新增成功", nil) } } func (c *RepoObjectController) DeleteByID(repoId, modelId, objectId int64) *JsonResult { if err := c.Service.Delete(repoId, modelId, objectId); err != nil { return ResultErr(err.Error(), nil) } else { return ResultOk("删除成功", nil) } }