pasture.go 1006 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package pasture
  2. import (
  3. "kpt-tmr-group/http/middleware"
  4. "kpt-tmr-group/pkg/apierr"
  5. "kpt-tmr-group/pkg/ginutil"
  6. "kpt-tmr-group/pkg/valid"
  7. operationPb "kpt-tmr-group/proto/go/backend/operation"
  8. "net/http"
  9. "github.com/gin-gonic/gin"
  10. )
  11. // ClassSync 牧场分类数据同步
  12. func ClassSync(c *gin.Context) {
  13. var req operationPb.ClassRequest
  14. if err := ginutil.BindProto(c, &req); err != nil {
  15. apierr.AbortBadRequest(c, http.StatusBadRequest, err)
  16. return
  17. }
  18. if err := valid.ValidateStruct(&req,
  19. valid.Field(&req.KeyWord, valid.Required),
  20. valid.Field(&req.PastureId, valid.Required),
  21. valid.Field(&req.ParentId, valid.Required),
  22. ); err != nil {
  23. apierr.AbortBadRequest(c, http.StatusBadRequest, err)
  24. return
  25. }
  26. if err := middleware.Dependency(c).StoreEventHub.OpsService.CategoryData(c, &req); err != nil {
  27. apierr.ClassifiedAbort(c, err)
  28. return
  29. }
  30. ginutil.JSONResp(c, &operationPb.CommonOK{
  31. Code: http.StatusOK,
  32. Msg: "ok",
  33. Data: &operationPb.Success{Success: true},
  34. })
  35. }