|
@@ -42,12 +42,12 @@ func (item *BindItem[O]) bind(binder *Binder, middlewares ...api.Handler) {
|
|
|
handlers := []api.Handler{
|
|
handlers := []api.Handler{
|
|
|
func(c *api.Context) {
|
|
func(c *api.Context) {
|
|
|
var params request.Params
|
|
var params request.Params
|
|
|
|
|
+ outputZero := reflectutils.Zero[O]()
|
|
|
|
|
|
|
|
// 有请求数据
|
|
// 有请求数据
|
|
|
if item.RequestParams != nil {
|
|
if item.RequestParams != nil {
|
|
|
requestParamsType := reflect.TypeOf(item.RequestParams)
|
|
requestParamsType := reflect.TypeOf(item.RequestParams)
|
|
|
if !reflectutils.IsTypeStructOrStructPointer(requestParamsType) {
|
|
if !reflectutils.IsTypeStructOrStructPointer(requestParamsType) {
|
|
|
- var outputZero O
|
|
|
|
|
item.ResponseFunc(c, http.StatusOK, outputZero, fserr.New("请求参数不是结构或结构指针"))
|
|
item.ResponseFunc(c, http.StatusOK, outputZero, fserr.New("请求参数不是结构或结构指针"))
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
@@ -62,7 +62,6 @@ func (item *BindItem[O]) bind(binder *Binder, middlewares ...api.Handler) {
|
|
|
if item.RequestParamsBindFunc != nil {
|
|
if item.RequestParamsBindFunc != nil {
|
|
|
err := item.RequestParamsBindFunc(c, params)
|
|
err := item.RequestParamsBindFunc(c, params)
|
|
|
if err != nil {
|
|
if err != nil {
|
|
|
- var outputZero O
|
|
|
|
|
item.ResponseFunc(c, http.StatusBadRequest, outputZero, err)
|
|
item.ResponseFunc(c, http.StatusBadRequest, outputZero, err)
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
@@ -73,21 +72,18 @@ func (item *BindItem[O]) bind(binder *Binder, middlewares ...api.Handler) {
|
|
|
case http.MethodPut:
|
|
case http.MethodPut:
|
|
|
err := request.JsonBody(c, params)
|
|
err := request.JsonBody(c, params)
|
|
|
if err != nil {
|
|
if err != nil {
|
|
|
- var outputZero O
|
|
|
|
|
item.ResponseFunc(c, http.StatusBadRequest, outputZero, err)
|
|
item.ResponseFunc(c, http.StatusBadRequest, outputZero, err)
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
|
case http.MethodGet:
|
|
case http.MethodGet:
|
|
|
err := request.QueryParams(c, params)
|
|
err := request.QueryParams(c, params)
|
|
|
if err != nil {
|
|
if err != nil {
|
|
|
- var outputZero O
|
|
|
|
|
item.ResponseFunc(c, http.StatusBadRequest, outputZero, err)
|
|
item.ResponseFunc(c, http.StatusBadRequest, outputZero, err)
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
|
case http.MethodDelete:
|
|
case http.MethodDelete:
|
|
|
err := request.PathParams(c, params)
|
|
err := request.PathParams(c, params)
|
|
|
if err != nil {
|
|
if err != nil {
|
|
|
- var outputZero O
|
|
|
|
|
item.ResponseFunc(c, http.StatusBadRequest, outputZero, err)
|
|
item.ResponseFunc(c, http.StatusBadRequest, outputZero, err)
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
@@ -100,7 +96,6 @@ func (item *BindItem[O]) bind(binder *Binder, middlewares ...api.Handler) {
|
|
|
if item.FormDomainObjectsFunc != nil {
|
|
if item.FormDomainObjectsFunc != nil {
|
|
|
innerDomainObjects, err := item.FormDomainObjectsFunc(c, params)
|
|
innerDomainObjects, err := item.FormDomainObjectsFunc(c, params)
|
|
|
if err != nil {
|
|
if err != nil {
|
|
|
- var outputZero O
|
|
|
|
|
item.ResponseFunc(c, http.StatusOK, outputZero, err)
|
|
item.ResponseFunc(c, http.StatusOK, outputZero, err)
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
@@ -115,7 +110,6 @@ func (item *BindItem[O]) bind(binder *Binder, middlewares ...api.Handler) {
|
|
|
|
|
|
|
|
objectType := reflect.TypeOf(object)
|
|
objectType := reflect.TypeOf(object)
|
|
|
if !reflectutils.IsTypeStructOrStructPointer(objectType) {
|
|
if !reflectutils.IsTypeStructOrStructPointer(objectType) {
|
|
|
- var outputZero O
|
|
|
|
|
item.ResponseFunc(c, http.StatusOK, outputZero, fserr.New("领域对象不是结构或结构指针"))
|
|
item.ResponseFunc(c, http.StatusOK, outputZero, fserr.New("领域对象不是结构或结构指针"))
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|
|
@@ -125,7 +119,6 @@ func (item *BindItem[O]) bind(binder *Binder, middlewares ...api.Handler) {
|
|
|
if params != nil {
|
|
if params != nil {
|
|
|
err := request.AssignRequestParamsToDomainObject(params, obj)
|
|
err := request.AssignRequestParamsToDomainObject(params, obj)
|
|
|
if err != nil {
|
|
if err != nil {
|
|
|
- var outputZero O
|
|
|
|
|
item.ResponseFunc(c, http.StatusOK, outputZero, err)
|
|
item.ResponseFunc(c, http.StatusOK, outputZero, err)
|
|
|
return
|
|
return
|
|
|
}
|
|
}
|