repo_object_controller.go 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. package controller
  2. import (
  3. "github.com/kataras/iris/v12/mvc"
  4. "xps/datamodel"
  5. "xps/service"
  6. )
  7. type RepoObjectController struct {
  8. Base
  9. Service service.RepoObjectService
  10. }
  11. func (c *RepoObjectController) BeforeActivation(b mvc.BeforeActivation) {
  12. b.Handle("GET", "/{repoId:int64}", "GetListById" )
  13. b.Handle("POST", "/add", "Create" )
  14. b.Handle("DELETE", "/{repoId:int64}/{modelId:int64}/{objectId:int64}", "DeleteByID" )
  15. }
  16. func (c *RepoObjectController) GetListById(repoId int64) *JsonResult {
  17. data, err := c.Service.GetListById(repoId)
  18. if err != nil {
  19. return ResultErr(err.Error(), nil)
  20. } else {
  21. return ResultOk("获取成功", data)
  22. }
  23. }
  24. func (c *RepoObjectController) Create() *JsonResult {
  25. userId := c.GetCurUserId()
  26. data := datamodel.RepoObject{}
  27. data.CreatedBy = userId
  28. if err := c.Ctx.ReadJSON(&data); err != nil {
  29. return ResultErr("读取数据失败", nil)
  30. }
  31. if err := c.Service.Create(&data); err != nil {
  32. return ResultErr(err.Error(), nil)
  33. } else {
  34. return ResultOk("新增成功", nil)
  35. }
  36. }
  37. func (c *RepoObjectController) DeleteByID(repoId, modelId, objectId int64) *JsonResult {
  38. if err := c.Service.Delete(repoId, modelId, objectId); err != nil {
  39. return ResultErr(err.Error(), nil)
  40. } else {
  41. return ResultOk("删除成功", nil)
  42. }
  43. }