- use modified bee tool to automatically generate parameters validation code to avoid dirty work.

This commit is contained in:
gazebo
2018-08-31 15:23:25 +08:00
parent 3538371333
commit de1622e0cc
5 changed files with 569 additions and 150 deletions

View File

@@ -1,11 +1,5 @@
package model package model
type CallResult struct {
Code string `json:"code"`
Desc string `json:"desc"`
Data string `json:"data"`
}
type GoodsOrderExt struct { type GoodsOrderExt struct {
GoodsOrder GoodsOrder
WaybillStatus int `json:"waybillStatus"` WaybillStatus int `json:"waybillStatus"`

View File

@@ -0,0 +1,7 @@
package controllers
type CallResult struct {
Code string `json:"code"`
Desc string `json:"desc"`
Data string `json:"data"`
}

View File

@@ -1,11 +1,8 @@
package controllers package controllers
import ( import (
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/business/jxcallback/orderman" "git.rosy.net.cn/jx-callback/business/jxcallback/orderman"
"git.rosy.net.cn/jx-callback/business/jxcallback/scheduler/defsch" "git.rosy.net.cn/jx-callback/business/jxcallback/scheduler/defsch"
"git.rosy.net.cn/jx-callback/business/jxutils"
"git.rosy.net.cn/jx-callback/business/model"
"github.com/astaxie/beego" "github.com/astaxie/beego"
) )
@@ -31,54 +28,18 @@ func (c *OrderController) URLMapping() {
c.Mapping("SelfDelivered", c.SelfDelivered) c.Mapping("SelfDelivered", c.SelfDelivered)
} }
func (c *OrderController) orderOperate(handler func(vendorOrderID string, vendorID int, userName string) (interface{}, error)) {
var (
vendorOrderID, token string
vendorID int
err error
)
token = c.Ctx.Input.Header("token")
vendorOrderID = c.GetString("vendorOrderID")
vendorID, err1 := c.GetInt("vendorID", 0)
if vendorOrderID != "" && token != "" && err1 == nil {
result, err2 := handler(vendorOrderID, vendorID, GetUserNameFromToken(token))
if err = err2; err == nil {
retObj := &model.CallResult{
Code: "0",
}
if result != nil {
retObj.Data = string(utils.MustMarshal(result))
}
c.Data["json"] = retObj
}
}
errMsg := jxutils.Errs2Str("", err1, err)
if vendorOrderID == "" {
errMsg += "vendorOrderID is empty\n"
}
if token == "" {
errMsg += "token is empty\n"
}
if errMsg != "" {
c.Data["json"] = &model.CallResult{
Code: "-1",
Desc: errMsg,
}
}
c.ServeJSON()
}
// @Title 完成拣货 // @Title 完成拣货
// @Description 完成拣货 // @Description 完成拣货
// @Param token header string true "认证toke" // @Param token header string true "认证toke"
// @Param vendorOrderID formData string true "订单ID" // @Param vendorOrderID formData string true "订单ID"
// @Param vendorID formData int true "订单所属的厂商ID" // @Param vendorID formData int true "订单所属的厂商ID"
// @Success 200 {object} business.model.CallResult // @Success 200 {object} controllers.CallResult
// @Failure 200 {object} business.model.CallResult // @Failure 200 {object} controllers.CallResult
// @router /FinishedPickup [post] // @router /FinishedPickup [post]
func (c *OrderController) FinishedPickup() { func (c *OrderController) FinishedPickup() {
c.orderOperate(func(vendorOrderID string, vendorID int, userName string) (interface{}, error) { c.callFinishedPickup(func(params *tOrderFinishedPickupParams) (retVal interface{}, errCode string, err error) {
return nil, defsch.FixedScheduler.PickupGoodsAndUpdateStatus(vendorOrderID, vendorID, userName) err = defsch.FixedScheduler.PickupGoodsAndUpdateStatus(params.VendorOrderID, params.VendorID, GetUserNameFromToken(params.Token))
return nil, "", err
}) })
} }
@@ -87,12 +48,13 @@ func (c *OrderController) FinishedPickup() {
// @Param token header string true "认证toke" // @Param token header string true "认证toke"
// @Param vendorOrderID formData string true "订单ID" // @Param vendorOrderID formData string true "订单ID"
// @Param vendorID formData int true "订单所属的厂商ID" // @Param vendorID formData int true "订单所属的厂商ID"
// @Success 200 {object} business.model.CallResult // @Success 200 {object} controllers.CallResult
// @Failure 200 {object} business.model.CallResult // @Failure 200 {object} controllers.CallResult
// @router /SelfDelivering [post] // @router /SelfDelivering [post]
func (c *OrderController) SelfDelivering() { func (c *OrderController) SelfDelivering() {
c.orderOperate(func(vendorOrderID string, vendorID int, userName string) (interface{}, error) { c.callSelfDelivering(func(params *tOrderSelfDeliveringParams) (retVal interface{}, errCode string, err error) {
return nil, defsch.FixedScheduler.SelfDeliveringAndUpdateStatusExt(vendorOrderID, vendorID, userName) err = defsch.FixedScheduler.SelfDeliveringAndUpdateStatusExt(params.VendorOrderID, params.VendorID, GetUserNameFromToken(params.Token))
return nil, "", err
}) })
} }
@@ -101,12 +63,13 @@ func (c *OrderController) SelfDelivering() {
// @Param token header string true "认证toke" // @Param token header string true "认证toke"
// @Param vendorOrderID formData string true "订单ID" // @Param vendorOrderID formData string true "订单ID"
// @Param vendorID formData int true "订单所属的厂商ID" // @Param vendorID formData int true "订单所属的厂商ID"
// @Success 200 {object} business.model.CallResult // @Success 200 {object} controllers.CallResult
// @Failure 200 {object} business.model.CallResult // @Failure 200 {object} controllers.CallResult
// @router /SelfDelivered [post] // @router /SelfDelivered [post]
func (c *OrderController) SelfDelivered() { func (c *OrderController) SelfDelivered() {
c.orderOperate(func(vendorOrderID string, vendorID int, userName string) (interface{}, error) { c.callSelfDelivered(func(params *tOrderSelfDeliveredParams) (retVal interface{}, errCode string, err error) {
return nil, defsch.FixedScheduler.SelfDeliveredAndUpdateStatus(vendorOrderID, vendorID, userName) err = defsch.FixedScheduler.SelfDeliveredAndUpdateStatus(params.VendorOrderID, params.VendorID, GetUserNameFromToken(params.Token))
return nil, "", err
}) })
} }
@@ -115,12 +78,13 @@ func (c *OrderController) SelfDelivered() {
// @Param token header string true "认证toke" // @Param token header string true "认证toke"
// @Param vendorOrderID formData string true "订单ID" // @Param vendorOrderID formData string true "订单ID"
// @Param vendorID formData int true "订单所属的厂商ID" // @Param vendorID formData int true "订单所属的厂商ID"
// @Success 200 {object} business.model.CallResult // @Success 200 {object} controllers.CallResult
// @Failure 200 {object} business.model.CallResult // @Failure 200 {object} controllers.CallResult
// @router /CreateWaybillOnProviders [post] // @router /CreateWaybillOnProviders [post]
func (c *OrderController) CreateWaybillOnProviders() { func (c *OrderController) CreateWaybillOnProviders() {
c.orderOperate(func(vendorOrderID string, vendorID int, userName string) (interface{}, error) { c.callCreateWaybillOnProviders(func(params *tOrderCreateWaybillOnProvidersParams) (retVal interface{}, errCode string, err error) {
return defsch.FixedScheduler.CreateWaybillOnProviders(vendorOrderID, vendorID, userName) retVal, err = defsch.FixedScheduler.CreateWaybillOnProviders(params.VendorOrderID, params.VendorID, GetUserNameFromToken(params.Token))
return retVal, "", err
}) })
} }
@@ -129,41 +93,14 @@ func (c *OrderController) CreateWaybillOnProviders() {
// @Param token header string true "认证toke" // @Param token header string true "认证toke"
// @Param storeID query string true "京西门店ID" // @Param storeID query string true "京西门店ID"
// @Param lastHours query int false "最近多少小时的信息(缺省为两天)" // @Param lastHours query int false "最近多少小时的信息(缺省为两天)"
// @Success 200 {object} business.model.CallResult // @Success 200 {object} controllers.CallResult
// @Failure 200 {object} business.model.CallResult // @Failure 200 {object} controllers.CallResult
// @router /GetStoreOrderCountInfo [get] // @router /GetStoreOrderCountInfo [get]
func (c *OrderController) GetStoreOrderCountInfo() { func (c *OrderController) GetStoreOrderCountInfo() {
var ( c.callGetStoreOrderCountInfo(func(params *tOrderGetStoreOrderCountInfoParams) (retVal interface{}, errCode string, err error) {
storeID, token string retVal, err = orderman.FixedOrderManager.GetStoreOrderCountInfo(params.StoreID, params.LastHours)
lastHours int return retVal, "", err
err error })
)
token = c.Ctx.Input.Header("token")
storeID = c.GetString("storeID")
lastHours, err1 := c.GetInt("lastHours", 0)
if token != "" && storeID != "" && err1 == nil {
result, err2 := orderman.FixedOrderManager.GetStoreOrderCountInfo(storeID, lastHours)
if err = err2; err == nil {
c.Data["json"] = &model.CallResult{
Code: "0",
Data: string(utils.MustMarshal(result)),
}
}
}
errMsg := jxutils.Errs2Str("", err1, err)
if token == "" {
errMsg += "token is empty\n"
}
if storeID == "" {
errMsg += "storeID is empty\n"
}
if errMsg != "" {
c.Data["json"] = &model.CallResult{
Code: "-1",
Desc: errMsg,
}
}
c.ServeJSON()
} }
// @Title 得到门店订单状态信息 // @Title 得到门店订单状态信息
@@ -175,46 +112,14 @@ func (c *OrderController) GetStoreOrderCountInfo() {
// @Param toStatus query int false "结束状态(包括)" // @Param toStatus query int false "结束状态(包括)"
// @Param offset query int false "订单列表起始序号以0开始缺省为0" // @Param offset query int false "订单列表起始序号以0开始缺省为0"
// @Param pageSize query int false "订单列表页大小缺省为50" // @Param pageSize query int false "订单列表页大小缺省为50"
// @Success 200 {object} business.model.CallResult // @Success 200 {object} controllers.CallResult
// @Failure 200 {object} business.model.CallResult // @Failure 200 {object} controllers.CallResult
// @router /GetStoreOrderInfo [get] // @router /GetStoreOrderInfo [get]
func (c *OrderController) GetStoreOrderInfo() { func (c *OrderController) GetStoreOrderInfo() {
var ( c.callGetStoreOrderInfo(func(params *tOrderGetStoreOrderInfoParams) (retVal interface{}, errCode string, err error) {
storeID, token string retVal, err = orderman.FixedOrderManager.GetStoreOrderInfo(params.StoreID, params.LastHours, params.FromStatus, params.ToStatus, params.Offset, params.PageSize)
lastHours, fromStatus, toStatus, offset, pageSize int return retVal, "", err
err error })
)
token = c.Ctx.Input.Header("token")
storeID = c.GetString("storeID")
lastHours, err1 := c.GetInt("lastHours", 0)
fromStatus, err2 := c.GetInt("fromStatus", 0)
toStatus, err3 := c.GetInt("toStatus", 0)
offset, err4 := c.GetInt("offset", 0)
pageSize, err5 := c.GetInt("pageSize", 0)
if token != "" && storeID != "" && err1 == nil && err2 == nil && err3 == nil && err4 == nil && err5 == nil {
result, err2 := orderman.FixedOrderManager.GetStoreOrderInfo(storeID, lastHours, fromStatus, toStatus, offset, pageSize)
if err = err2; err == nil {
c.Data["json"] = &model.CallResult{
Code: "0",
Data: string(utils.MustMarshal(result)),
}
}
}
errMsg := jxutils.Errs2Str("", err1, err2, err3, err)
if token == "" {
errMsg += "token is empty\n"
}
if storeID == "" {
errMsg += "storeID is empty\n"
}
if errMsg != "" {
c.Data["json"] = &model.CallResult{
Code: "-1",
Desc: errMsg,
}
}
c.ServeJSON()
} }
// @Title 得到订单SKU信息 // @Title 得到订单SKU信息
@@ -222,13 +127,13 @@ func (c *OrderController) GetStoreOrderInfo() {
// @Param token header string true "认证toke" // @Param token header string true "认证toke"
// @Param vendorOrderID query string true "订单ID" // @Param vendorOrderID query string true "订单ID"
// @Param vendorID query int true "订单所属的厂商ID" // @Param vendorID query int true "订单所属的厂商ID"
// @Success 200 {object} business.model.CallResult // @Success 200 {object} controllers.CallResult
// @Failure 200 {object} business.model.CallResult // @Failure 200 {object} controllers.CallResult
// @router /GetOrderSkuInfo [get // @router /GetOrderSkuInfo [get]
func (c *OrderController) GetOrderSkuInfo() { func (c *OrderController) GetOrderSkuInfo() {
c.orderOperate(func(vendorOrderID string, vendorID int, userName string) (interface{}, error) { c.callGetOrderSkuInfo(func(params *tOrderGetOrderSkuInfoParams) (retVal interface{}, errCode string, err error) {
// globals.SugarLogger.Debugf("userName:%s", userName) retVal, err = orderman.FixedOrderManager.GetOrderSkuInfo(params.VendorOrderID, params.VendorID)
return orderman.FixedOrderManager.GetOrderSkuInfo(vendorOrderID, vendorID) return retVal, "", err
}) })
} }
@@ -238,14 +143,13 @@ func (c *OrderController) GetOrderSkuInfo() {
// @Param vendorOrderID query string true "订单ID" // @Param vendorOrderID query string true "订单ID"
// @Param vendorID query int true "订单所属的厂商ID" // @Param vendorID query int true "订单所属的厂商ID"
// @Param refresh query bool false "是否从购物平台刷新数据" // @Param refresh query bool false "是否从购物平台刷新数据"
// @Success 200 {object} business.model.CallResult // @Success 200 {object} controllers.CallResult
// @Failure 200 {object} business.model.CallResult // @Failure 200 {object} controllers.CallResult
// @router /GetOrderInfo [get] // @router /GetOrderInfo [get]
func (c *OrderController) GetOrderInfo() { func (c *OrderController) GetOrderInfo() {
c.orderOperate(func(vendorOrderID string, vendorID int, userName string) (interface{}, error) { c.callGetOrderInfo(func(params *tOrderGetOrderInfoParams) (retVal interface{}, errCode string, err error) {
isRefresh, _ := c.GetBool("refresh", false) retVal, err = orderman.FixedOrderManager.GetOrderInfo(params.VendorOrderID, params.VendorID, params.Refresh)
// globals.SugarLogger.Debugf("userName:%s", userName) return retVal, "", err
return orderman.FixedOrderManager.GetOrderInfo(vendorOrderID, vendorID, isRefresh)
}) })
} }
@@ -254,12 +158,12 @@ func (c *OrderController) GetOrderInfo() {
// @Param token header string true "认证toke" // @Param token header string true "认证toke"
// @Param vendorOrderID query string true "订单ID" // @Param vendorOrderID query string true "订单ID"
// @Param vendorID query int true "订单所属的厂商ID" // @Param vendorID query int true "订单所属的厂商ID"
// @Success 200 {object} business.model.CallResult // @Success 200 {object} controllers.CallResult
// @Failure 200 {object} business.model.CallResult // @Failure 200 {object} controllers.CallResult
// @router /GetOrderWaybillInfo [get] // @router /GetOrderWaybillInfo [get]
func (c *OrderController) GetOrderWaybillInfo() { func (c *OrderController) GetOrderWaybillInfo() {
c.orderOperate(func(vendorOrderID string, vendorID int, userName string) (interface{}, error) { c.callGetOrderWaybillInfo(func(params *tOrderGetOrderWaybillInfoParams) (retVal interface{}, errCode string, err error) {
// globals.SugarLogger.Debugf("userName:%s", userName) retVal, err = orderman.FixedOrderManager.GetOrderWaybillInfo(params.VendorOrderID, params.VendorID)
return orderman.FixedOrderManager.GetOrderWaybillInfo(vendorOrderID, vendorID) return retVal, "", err
}) })
} }

513
controllers/param_parser.go Normal file
View File

@@ -0,0 +1,513 @@
// this file was automatically generated by modified bee tool (https://github.com/GazeboXu/bee)
// bee generate docs
// please don't modify it manually!!!
package controllers
import (
"encoding/json"
"errors"
"fmt"
"strings"
)
const (
StrRequiredParamIsEmpty = "参数[%s]为空或数值不合法!"
)
type tOrderSelfDeliveredParams struct {
Token string
VendorOrderID string
VendorID int
}
// func (c *OrderController) SelfDelivered() {
// c.callSelfDelivered(func(params *tOrderSelfDeliveredParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// })
// }
func (c *OrderController) callSelfDelivered(handler func(params *tOrderSelfDeliveredParams) (interface{}, string, error)) {
var err error
params := &tOrderSelfDeliveredParams{}
errParams := []string{}
params.Token = c.Ctx.Input.Header("token")
params.VendorOrderID = c.GetString("vendorOrderID")
if params.VendorID, err = c.GetInt("vendorID", 0); err != nil {
errParams = append(errParams, "vendorID")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
}
if params.VendorOrderID == "" {
errParams = append(errParams, "vendorOrderID")
}
if err == nil && len(errParams) > 0 {
err = fmt.Errorf(StrRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
if err == nil {
result, errCode2, err2 := handler(params)
if err = err2; err == nil {
resultMarshal, _ := json.Marshal(result)
c.Data["json"] = &CallResult{
Code: "0",
Data: string(resultMarshal),
}
} else if errCode2 != "0" && errCode2 != "" {
errCode = errCode2
}
}
if err != nil {
c.Data["json"] = &CallResult{
Code: errCode,
Desc: err.Error(),
}
}
c.ServeJSON()
}
type tOrderGetOrderSkuInfoParams struct {
Token string
VendorOrderID string
VendorID int
}
// func (c *OrderController) GetOrderSkuInfo() {
// c.callGetOrderSkuInfo(func(params *tOrderGetOrderSkuInfoParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// })
// }
func (c *OrderController) callGetOrderSkuInfo(handler func(params *tOrderGetOrderSkuInfoParams) (interface{}, string, error)) {
var err error
params := &tOrderGetOrderSkuInfoParams{}
errParams := []string{}
params.Token = c.Ctx.Input.Header("token")
params.VendorOrderID = c.GetString("vendorOrderID")
if params.VendorID, err = c.GetInt("vendorID", 0); err != nil {
errParams = append(errParams, "vendorID")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
}
if params.VendorOrderID == "" {
errParams = append(errParams, "vendorOrderID")
}
if err == nil && len(errParams) > 0 {
err = fmt.Errorf(StrRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
if err == nil {
result, errCode2, err2 := handler(params)
if err = err2; err == nil {
resultMarshal, _ := json.Marshal(result)
c.Data["json"] = &CallResult{
Code: "0",
Data: string(resultMarshal),
}
} else if errCode2 != "0" && errCode2 != "" {
errCode = errCode2
}
}
if err != nil {
c.Data["json"] = &CallResult{
Code: errCode,
Desc: err.Error(),
}
}
c.ServeJSON()
}
type tOrderGetStoreOrderInfoParams struct {
Token string
StoreID string
LastHours int
FromStatus int
ToStatus int
Offset int
PageSize int
}
// func (c *OrderController) GetStoreOrderInfo() {
// c.callGetStoreOrderInfo(func(params *tOrderGetStoreOrderInfoParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// })
// }
func (c *OrderController) callGetStoreOrderInfo(handler func(params *tOrderGetStoreOrderInfoParams) (interface{}, string, error)) {
var err error
params := &tOrderGetStoreOrderInfoParams{}
errParams := []string{}
params.Token = c.Ctx.Input.Header("token")
params.StoreID = c.GetString("storeID")
if params.LastHours, err = c.GetInt("lastHours", 0); err != nil {
errParams = append(errParams, "lastHours")
}
if params.FromStatus, err = c.GetInt("fromStatus", 0); err != nil {
errParams = append(errParams, "fromStatus")
}
if params.ToStatus, err = c.GetInt("toStatus", 0); err != nil {
errParams = append(errParams, "toStatus")
}
if params.Offset, err = c.GetInt("offset", 0); err != nil {
errParams = append(errParams, "offset")
}
if params.PageSize, err = c.GetInt("pageSize", 0); err != nil {
errParams = append(errParams, "pageSize")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
}
if params.StoreID == "" {
errParams = append(errParams, "storeID")
}
if err == nil && len(errParams) > 0 {
err = fmt.Errorf(StrRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
if err == nil {
result, errCode2, err2 := handler(params)
if err = err2; err == nil {
resultMarshal, _ := json.Marshal(result)
c.Data["json"] = &CallResult{
Code: "0",
Data: string(resultMarshal),
}
} else if errCode2 != "0" && errCode2 != "" {
errCode = errCode2
}
}
if err != nil {
c.Data["json"] = &CallResult{
Code: errCode,
Desc: err.Error(),
}
}
c.ServeJSON()
}
type tOrderGetOrderInfoParams struct {
Token string
VendorOrderID string
VendorID int
Refresh bool
}
// func (c *OrderController) GetOrderInfo() {
// c.callGetOrderInfo(func(params *tOrderGetOrderInfoParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// })
// }
func (c *OrderController) callGetOrderInfo(handler func(params *tOrderGetOrderInfoParams) (interface{}, string, error)) {
var err error
params := &tOrderGetOrderInfoParams{}
errParams := []string{}
params.Token = c.Ctx.Input.Header("token")
params.VendorOrderID = c.GetString("vendorOrderID")
if params.VendorID, err = c.GetInt("vendorID", 0); err != nil {
errParams = append(errParams, "vendorID")
}
if params.Refresh, err = c.GetBool("refresh", false); err != nil {
errParams = append(errParams, "refresh")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
}
if params.VendorOrderID == "" {
errParams = append(errParams, "vendorOrderID")
}
if err == nil && len(errParams) > 0 {
err = fmt.Errorf(StrRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
if err == nil {
result, errCode2, err2 := handler(params)
if err = err2; err == nil {
resultMarshal, _ := json.Marshal(result)
c.Data["json"] = &CallResult{
Code: "0",
Data: string(resultMarshal),
}
} else if errCode2 != "0" && errCode2 != "" {
errCode = errCode2
}
}
if err != nil {
c.Data["json"] = &CallResult{
Code: errCode,
Desc: err.Error(),
}
}
c.ServeJSON()
}
type tOrderSelfDeliveringParams struct {
Token string
VendorOrderID string
VendorID int
}
// func (c *OrderController) SelfDelivering() {
// c.callSelfDelivering(func(params *tOrderSelfDeliveringParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// })
// }
func (c *OrderController) callSelfDelivering(handler func(params *tOrderSelfDeliveringParams) (interface{}, string, error)) {
var err error
params := &tOrderSelfDeliveringParams{}
errParams := []string{}
params.Token = c.Ctx.Input.Header("token")
params.VendorOrderID = c.GetString("vendorOrderID")
if params.VendorID, err = c.GetInt("vendorID", 0); err != nil {
errParams = append(errParams, "vendorID")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
}
if params.VendorOrderID == "" {
errParams = append(errParams, "vendorOrderID")
}
if err == nil && len(errParams) > 0 {
err = fmt.Errorf(StrRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
if err == nil {
result, errCode2, err2 := handler(params)
if err = err2; err == nil {
resultMarshal, _ := json.Marshal(result)
c.Data["json"] = &CallResult{
Code: "0",
Data: string(resultMarshal),
}
} else if errCode2 != "0" && errCode2 != "" {
errCode = errCode2
}
}
if err != nil {
c.Data["json"] = &CallResult{
Code: errCode,
Desc: err.Error(),
}
}
c.ServeJSON()
}
type tOrderFinishedPickupParams struct {
Token string
VendorOrderID string
VendorID int
}
// func (c *OrderController) FinishedPickup() {
// c.callFinishedPickup(func(params *tOrderFinishedPickupParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// })
// }
func (c *OrderController) callFinishedPickup(handler func(params *tOrderFinishedPickupParams) (interface{}, string, error)) {
var err error
params := &tOrderFinishedPickupParams{}
errParams := []string{}
params.Token = c.Ctx.Input.Header("token")
params.VendorOrderID = c.GetString("vendorOrderID")
if params.VendorID, err = c.GetInt("vendorID", 0); err != nil {
errParams = append(errParams, "vendorID")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
}
if params.VendorOrderID == "" {
errParams = append(errParams, "vendorOrderID")
}
if err == nil && len(errParams) > 0 {
err = fmt.Errorf(StrRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
if err == nil {
result, errCode2, err2 := handler(params)
if err = err2; err == nil {
resultMarshal, _ := json.Marshal(result)
c.Data["json"] = &CallResult{
Code: "0",
Data: string(resultMarshal),
}
} else if errCode2 != "0" && errCode2 != "" {
errCode = errCode2
}
}
if err != nil {
c.Data["json"] = &CallResult{
Code: errCode,
Desc: err.Error(),
}
}
c.ServeJSON()
}
type tOrderCreateWaybillOnProvidersParams struct {
Token string
VendorOrderID string
VendorID int
}
// func (c *OrderController) CreateWaybillOnProviders() {
// c.callCreateWaybillOnProviders(func(params *tOrderCreateWaybillOnProvidersParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// })
// }
func (c *OrderController) callCreateWaybillOnProviders(handler func(params *tOrderCreateWaybillOnProvidersParams) (interface{}, string, error)) {
var err error
params := &tOrderCreateWaybillOnProvidersParams{}
errParams := []string{}
params.Token = c.Ctx.Input.Header("token")
params.VendorOrderID = c.GetString("vendorOrderID")
if params.VendorID, err = c.GetInt("vendorID", 0); err != nil {
errParams = append(errParams, "vendorID")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
}
if params.VendorOrderID == "" {
errParams = append(errParams, "vendorOrderID")
}
if err == nil && len(errParams) > 0 {
err = fmt.Errorf(StrRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
if err == nil {
result, errCode2, err2 := handler(params)
if err = err2; err == nil {
resultMarshal, _ := json.Marshal(result)
c.Data["json"] = &CallResult{
Code: "0",
Data: string(resultMarshal),
}
} else if errCode2 != "0" && errCode2 != "" {
errCode = errCode2
}
}
if err != nil {
c.Data["json"] = &CallResult{
Code: errCode,
Desc: err.Error(),
}
}
c.ServeJSON()
}
type tOrderGetStoreOrderCountInfoParams struct {
Token string
StoreID string
LastHours int
}
// func (c *OrderController) GetStoreOrderCountInfo() {
// c.callGetStoreOrderCountInfo(func(params *tOrderGetStoreOrderCountInfoParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// })
// }
func (c *OrderController) callGetStoreOrderCountInfo(handler func(params *tOrderGetStoreOrderCountInfoParams) (interface{}, string, error)) {
var err error
params := &tOrderGetStoreOrderCountInfoParams{}
errParams := []string{}
params.Token = c.Ctx.Input.Header("token")
params.StoreID = c.GetString("storeID")
if params.LastHours, err = c.GetInt("lastHours", 0); err != nil {
errParams = append(errParams, "lastHours")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
}
if params.StoreID == "" {
errParams = append(errParams, "storeID")
}
if err == nil && len(errParams) > 0 {
err = fmt.Errorf(StrRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
if err == nil {
result, errCode2, err2 := handler(params)
if err = err2; err == nil {
resultMarshal, _ := json.Marshal(result)
c.Data["json"] = &CallResult{
Code: "0",
Data: string(resultMarshal),
}
} else if errCode2 != "0" && errCode2 != "" {
errCode = errCode2
}
}
if err != nil {
c.Data["json"] = &CallResult{
Code: errCode,
Desc: err.Error(),
}
}
c.ServeJSON()
}
type tOrderGetOrderWaybillInfoParams struct {
Token string
VendorOrderID string
VendorID int
}
// func (c *OrderController) GetOrderWaybillInfo() {
// c.callGetOrderWaybillInfo(func(params *tOrderGetOrderWaybillInfoParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// })
// }
func (c *OrderController) callGetOrderWaybillInfo(handler func(params *tOrderGetOrderWaybillInfoParams) (interface{}, string, error)) {
var err error
params := &tOrderGetOrderWaybillInfoParams{}
errParams := []string{}
params.Token = c.Ctx.Input.Header("token")
params.VendorOrderID = c.GetString("vendorOrderID")
if params.VendorID, err = c.GetInt("vendorID", 0); err != nil {
errParams = append(errParams, "vendorID")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
}
if params.VendorOrderID == "" {
errParams = append(errParams, "vendorOrderID")
}
if err == nil && len(errParams) > 0 {
err = fmt.Errorf(StrRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
if err == nil {
result, errCode2, err2 := handler(params)
if err = err2; err == nil {
resultMarshal, _ := json.Marshal(result)
c.Data["json"] = &CallResult{
Code: "0",
Data: string(resultMarshal),
}
} else if errCode2 != "0" && errCode2 != "" {
errCode = errCode2
}
}
if err != nil {
c.Data["json"] = &CallResult{
Code: errCode,
Desc: err.Error(),
}
}
c.ServeJSON()
}

1
cpauto.sh Executable file
View File

@@ -0,0 +1 @@
cp swagger/param_parser.go.txt controllers/param_parser.go