| 1234567891011121314151617181920212223242526272829303132333435 | package feedimport (	"kpt-tmr-group/http/middleware"	"kpt-tmr-group/pkg/apierr"	"kpt-tmr-group/pkg/ginutil"	"kpt-tmr-group/pkg/valid"	operationPb "kpt-tmr-group/proto/go/backend/operation"	"net/http"	"github.com/gin-gonic/gin")// ForageDetailList 配方详情func ForageDetailList(c *gin.Context) {	var req operationPb.FeedFormulaDetailRequest	if err := ginutil.BindProto(c, &req); err != nil {		apierr.AbortBadRequest(c, http.StatusBadRequest, err)		return	}	if err := valid.ValidateStruct(&req,		valid.Field(&req.FeedFormulaId, valid.Required, valid.Min(1)),	); err != nil {		apierr.AbortBadRequest(c, http.StatusBadRequest, err)		return	}	if list, err := middleware.BackendOperation(c).OpsService.FeedFormulaDetailList(c, &req); err != nil {		apierr.ClassifiedAbort(c, err)		return	} else {		c.JSON(http.StatusOK, list)	}}
 |