- basic cms structure.

This commit is contained in:
gazebo
2018-09-02 19:11:54 +08:00
parent d46bc8981a
commit 945431d566
19 changed files with 576 additions and 211 deletions

37
controllers/cms_sku.go Normal file
View File

@@ -0,0 +1,37 @@
package controllers
import (
"git.rosy.net.cn/jx-callback/business/jxstore/cms"
"github.com/astaxie/beego"
)
type SkuController struct {
beego.Controller
}
// @Title 得到厂商商品类别
// @Description 得到厂商商品类别区别于商家SKU类别
// @Param token header string true "认证toke"
// @Param vendorID query int true "厂商ID"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /GetVendorCategories [get]
func (c *SkuController) GetVendorCategories() {
c.callGetVendorCategories(func(params *tSkuGetVendorCategoriesParams) (retVal interface{}, errCode string, err error) {
retVal, err = cms.GetVendorCategories(params.VendorID)
return retVal, "", err
})
}
// @Title 得到商品相关的一些基础信息
// @Description 得到商品相关的一些基础信息包括unit列表specUnit列表
// @Param token header string true "认证toke"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /GetSkuMetaInfo [get]
func (c *SkuController) GetSkuMetaInfo() {
c.callGetSkuMetaInfo(func(params *tSkuGetSkuMetaInfoParams) (retVal interface{}, errCode string, err error) {
retVal, err = cms.GetSkuMetaInfo()
return retVal, "", err
})
}

34
controllers/cms_store.go Normal file
View File

@@ -0,0 +1,34 @@
package controllers
import (
"errors"
"git.rosy.net.cn/jx-callback/business/jxstore/cms"
"github.com/astaxie/beego"
)
type StoreController struct {
beego.Controller
}
// @Title 得到地点(省,城市,区)信息
// @Description parentCode与vendorID必传入一个vendorID的意思是得到所有与这个厂商相关的城市列表
// @Param token header string true "认证toke"
// @Param parentCode query int false "上级地点code。地点级别省为1市为2区为3缺省为市"
// @Param vendorID query int false "得到所有与这个厂商相关的省与城市列表"
// @Param includeDisabled query bool false "是否包括禁用的城市"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /GetCities [get]
func (c *StoreController) GetCities() {
c.callGetCities(func(params *tStoreGetCitiesParams) (retVal interface{}, errCode string, err error) {
if c.GetString("vendorID") == "" {
params.VendorID = -1 // -1表示没有指定因为0表示京东到家
}
if params.VendorID == -1 && params.ParentCode == 0 {
return nil, "", errors.New("parentCode与vendorID至少要指定一个")
}
retVal, err = cms.GetCities(params.ParentCode, params.VendorID, params.IncludeDisabled)
return retVal, "", err
})
}

View File

@@ -12,38 +12,41 @@ import (
)
const (
StrRequiredParamIsEmpty = "参数[%s]为空或数值不合法!"
strRequiredParamIsEmpty = "参数[%s]为空或数值不合法!"
)
type tOrderSelfDeliveredParams struct {
type tStoreGetCitiesParams struct {
Token string
VendorOrderID string
ParentCode int
VendorID int
IncludeDisabled bool
}
// func (c *OrderController) SelfDelivered() {
// c.callSelfDelivered(func(params *tOrderSelfDeliveredParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// func (c *StoreController) GetCities() {
// c.callGetCities(func(params *tStoreGetCitiesParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// })
// }
func (c *OrderController) callSelfDelivered(handler func(params *tOrderSelfDeliveredParams) (interface{}, string, error)) {
func (c *StoreController) callGetCities(handler func(params *tStoreGetCitiesParams) (interface{}, string, error)) {
var err error
params := &tOrderSelfDeliveredParams{}
params := &tStoreGetCitiesParams{}
errParams := []string{}
params.Token = c.Ctx.Input.Header("token")
params.VendorOrderID = c.GetString("vendorOrderID")
if params.ParentCode, err = c.GetInt("parentCode", 0); err != nil {
errParams = append(errParams, "parentCode")
}
if params.VendorID, err = c.GetInt("vendorID", 0); err != nil {
errParams = append(errParams, "vendorID")
}
if params.IncludeDisabled, err = c.GetBool("includeDisabled", false); err != nil {
errParams = append(errParams, "includeDisabled")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
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, ","))
if len(errParams) > 0 {
err = fmt.Errorf(strRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
@@ -68,20 +71,20 @@ func (c *OrderController) callSelfDelivered(handler func(params *tOrderSelfDeliv
c.ServeJSON()
}
type tOrderGetOrderSkuInfoParams struct {
type tOrderCreateWaybillOnProvidersParams 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) CreateWaybillOnProviders() {
// c.callCreateWaybillOnProviders(func(params *tOrderCreateWaybillOnProvidersParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// })
// }
func (c *OrderController) callGetOrderSkuInfo(handler func(params *tOrderGetOrderSkuInfoParams) (interface{}, string, error)) {
func (c *OrderController) callCreateWaybillOnProviders(handler func(params *tOrderCreateWaybillOnProvidersParams) (interface{}, string, error)) {
var err error
params := &tOrderGetOrderSkuInfoParams{}
params := &tOrderCreateWaybillOnProvidersParams{}
errParams := []string{}
params.Token = c.Ctx.Input.Header("token")
params.VendorOrderID = c.GetString("vendorOrderID")
@@ -90,13 +93,66 @@ func (c *OrderController) callGetOrderSkuInfo(handler func(params *tOrderGetOrde
errParams = append(errParams, "vendorID")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
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, ","))
if 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 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 len(errParams) > 0 {
err = fmt.Errorf(strRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
@@ -133,7 +189,7 @@ type tOrderGetStoreOrderInfoParams struct {
// func (c *OrderController) GetStoreOrderInfo() {
// c.callGetStoreOrderInfo(func(params *tOrderGetStoreOrderInfoParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// return retVal, "", err
// })
// }
func (c *OrderController) callGetStoreOrderInfo(handler func(params *tOrderGetStoreOrderInfoParams) (interface{}, string, error)) {
@@ -159,13 +215,66 @@ func (c *OrderController) callGetStoreOrderInfo(handler func(params *tOrderGetSt
errParams = append(errParams, "pageSize")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
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, ","))
if 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 len(errParams) > 0 {
err = fmt.Errorf(strRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
@@ -199,7 +308,7 @@ type tOrderGetOrderInfoParams struct {
// func (c *OrderController) GetOrderInfo() {
// c.callGetOrderInfo(func(params *tOrderGetOrderInfoParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// return retVal, "", err
// })
// }
func (c *OrderController) callGetOrderInfo(handler func(params *tOrderGetOrderInfoParams) (interface{}, string, error)) {
@@ -216,13 +325,13 @@ func (c *OrderController) callGetOrderInfo(handler func(params *tOrderGetOrderIn
errParams = append(errParams, "refresh")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
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, ","))
if len(errParams) > 0 {
err = fmt.Errorf(strRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
@@ -247,35 +356,30 @@ func (c *OrderController) callGetOrderInfo(handler func(params *tOrderGetOrderIn
c.ServeJSON()
}
type tOrderSelfDeliveringParams struct {
type tSkuGetVendorCategoriesParams 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 *SkuController) GetVendorCategories() {
// c.callGetVendorCategories(func(params *tSkuGetVendorCategoriesParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// })
// }
func (c *OrderController) callSelfDelivering(handler func(params *tOrderSelfDeliveringParams) (interface{}, string, error)) {
func (c *SkuController) callGetVendorCategories(handler func(params *tSkuGetVendorCategoriesParams) (interface{}, string, error)) {
var err error
params := &tOrderSelfDeliveringParams{}
params := &tSkuGetVendorCategoriesParams{}
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!")
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, ","))
if len(errParams) > 0 {
err = fmt.Errorf(strRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
@@ -308,7 +412,7 @@ type tOrderFinishedPickupParams struct {
// func (c *OrderController) FinishedPickup() {
// c.callFinishedPickup(func(params *tOrderFinishedPickupParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// return retVal, "", err
// })
// }
func (c *OrderController) callFinishedPickup(handler func(params *tOrderFinishedPickupParams) (interface{}, string, error)) {
@@ -322,13 +426,13 @@ func (c *OrderController) callFinishedPickup(handler func(params *tOrderFinished
errParams = append(errParams, "vendorID")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
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, ","))
if len(errParams) > 0 {
err = fmt.Errorf(strRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
@@ -353,20 +457,20 @@ func (c *OrderController) callFinishedPickup(handler func(params *tOrderFinished
c.ServeJSON()
}
type tOrderCreateWaybillOnProvidersParams struct {
type tOrderSelfDeliveringParams 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) SelfDelivering() {
// c.callSelfDelivering(func(params *tOrderSelfDeliveringParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// })
// }
func (c *OrderController) callCreateWaybillOnProviders(handler func(params *tOrderCreateWaybillOnProvidersParams) (interface{}, string, error)) {
func (c *OrderController) callSelfDelivering(handler func(params *tOrderSelfDeliveringParams) (interface{}, string, error)) {
var err error
params := &tOrderCreateWaybillOnProvidersParams{}
params := &tOrderSelfDeliveringParams{}
errParams := []string{}
params.Token = c.Ctx.Input.Header("token")
params.VendorOrderID = c.GetString("vendorOrderID")
@@ -375,13 +479,13 @@ func (c *OrderController) callCreateWaybillOnProviders(handler func(params *tOrd
errParams = append(errParams, "vendorID")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
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, ","))
if len(errParams) > 0 {
err = fmt.Errorf(strRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
@@ -414,7 +518,7 @@ type tOrderGetStoreOrderCountInfoParams struct {
// func (c *OrderController) GetStoreOrderCountInfo() {
// c.callGetStoreOrderCountInfo(func(params *tOrderGetStoreOrderCountInfoParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// return retVal, "", err
// })
// }
func (c *OrderController) callGetStoreOrderCountInfo(handler func(params *tOrderGetStoreOrderCountInfoParams) (interface{}, string, error)) {
@@ -428,13 +532,13 @@ func (c *OrderController) callGetStoreOrderCountInfo(handler func(params *tOrder
errParams = append(errParams, "lastHours")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
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, ","))
if len(errParams) > 0 {
err = fmt.Errorf(strRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"
@@ -467,7 +571,7 @@ type tOrderGetOrderWaybillInfoParams struct {
// func (c *OrderController) GetOrderWaybillInfo() {
// c.callGetOrderWaybillInfo(func(params *tOrderGetOrderWaybillInfoParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// return retVal, "", err
// })
// }
func (c *OrderController) callGetOrderWaybillInfo(handler func(params *tOrderGetOrderWaybillInfoParams) (interface{}, string, error)) {
@@ -481,13 +585,57 @@ func (c *OrderController) callGetOrderWaybillInfo(handler func(params *tOrderGet
errParams = append(errParams, "vendorID")
}
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("something wrong!")
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, ","))
if 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 tSkuGetSkuMetaInfoParams struct {
Token string
}
// func (c *SkuController) GetSkuMetaInfo() {
// c.callGetSkuMetaInfo(func(params *tSkuGetSkuMetaInfoParams) (retVal interface{}, errCode string, err error) {
// return retVal, "", err
// })
// }
func (c *SkuController) callGetSkuMetaInfo(handler func(params *tSkuGetSkuMetaInfoParams) (interface{}, string, error)) {
var err error
params := &tSkuGetSkuMetaInfoParams{}
errParams := []string{}
params.Token = c.Ctx.Input.Header("token")
if params.Token == "" { // 对于token缺失报一个模糊的错误信息
err = errors.New("Something wrong!")
}
if len(errParams) > 0 {
err = fmt.Errorf(strRequiredParamIsEmpty, strings.Join(errParams, ","))
}
errCode := "-1"