|
|
|
package supply
|
|
|
|
|
|
|
|
import (
|
|
|
|
"fmt"
|
|
|
|
"github.com/shopspring/decimal"
|
|
|
|
)
|
|
|
|
|
|
|
|
const (
|
|
|
|
// QueueSkuPriceChange 商品价格变动
|
|
|
|
queueSkuPriceChange = "supplySkuPriceChange:%s"
|
|
|
|
// QueueSkuChange 商品信息变动
|
|
|
|
queueSkuChange = "supplySkuChange:%s"
|
|
|
|
// queueOrderSplit 订单拆单
|
|
|
|
queueOrderSplit = "supplyOrderSplit:%s"
|
|
|
|
// queueOrderChange 订单变更
|
|
|
|
queueOrderCancel = "supplyOrderCancel:%s"
|
|
|
|
|
|
|
|
OrderCancelSuccess = 1 // 取消成功
|
|
|
|
OrderCancelFail = 2 // 取消失败
|
|
|
|
OrderCancelReject = 3 // 拒收/商家主动取消
|
|
|
|
)
|
|
|
|
|
|
|
|
type mq struct {
|
|
|
|
}
|
|
|
|
|
|
|
|
type skuMessage struct {
|
|
|
|
SkuId uint `json:"skuId"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// SkuPriceChangeQueue @Title 商品价格变动
|
|
|
|
func (m *mq) SkuPriceChangeQueue() string {
|
|
|
|
return getQuesuName(queueSkuPriceChange)
|
|
|
|
}
|
|
|
|
|
|
|
|
// SkuChangeQueue @Title 商品变动
|
|
|
|
func (m *mq) SkuChangeQueue() string {
|
|
|
|
return getQuesuName(queueSkuChange)
|
|
|
|
}
|
|
|
|
|
|
|
|
type OrderSplit struct {
|
|
|
|
OrderSn uint64 `json:"orderSn"`
|
|
|
|
RootOrderSn uint64 `json:"rootOrderSn"`
|
|
|
|
ParentOrderSn uint64 `json:"parentOrderSn"`
|
|
|
|
FreightFee decimal.Decimal `json:"freightFee"`
|
|
|
|
OrderFee decimal.Decimal `json:"orderFee"`
|
|
|
|
Skus []OrderSplitSkuItem `json:"skus"`
|
|
|
|
}
|
|
|
|
type OrderSplitSkuItem struct {
|
|
|
|
SkuId uint `json:"skuId"`
|
|
|
|
Quantity uint `json:"quantity"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// OrderSplit @Title 订单拆单
|
|
|
|
func (m *mq) OrderSplit() string {
|
|
|
|
return getQuesuName(queueOrderSplit)
|
|
|
|
}
|
|
|
|
|
|
|
|
type OrderCancel struct {
|
|
|
|
OrderSn string `json:"orderSn"`
|
|
|
|
Status uint `json:"status"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// OrderCancel @Title 订单取消
|
|
|
|
func (m *mq) OrderCancel() string {
|
|
|
|
return getQuesuName(queueOrderCancel)
|
|
|
|
}
|
|
|
|
|
|
|
|
// @Title 获取队列名称
|
|
|
|
func getQuesuName(queue string) string {
|
|
|
|
return fmt.Sprintf(queue, Api.Config.AppKey)
|
|
|
|
}
|