- record order ok.
This commit is contained in:
@@ -32,7 +32,7 @@ const (
|
||||
)
|
||||
|
||||
type PurchasePlatformHandler interface {
|
||||
AcceptOrRefuseOrder(order *model.Order, isAcceptIt bool)
|
||||
AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptIt bool)
|
||||
}
|
||||
|
||||
var (
|
||||
@@ -46,7 +46,7 @@ func init() {
|
||||
type OrderController struct {
|
||||
}
|
||||
|
||||
func (c *OrderController) OnOrderNew(purchasePlatform PurchasePlatformHandler, order *model.Order, orderSkus []*model.OrderSku) (err error) {
|
||||
func (c *OrderController) OnOrderNew(purchasePlatform PurchasePlatformHandler, order *model.GoodsOrder, orderSkus []*model.OrderSku) (err error) {
|
||||
db := orm.NewOrm()
|
||||
c.handleAutoAcceptOrder(order.VendorOrderID, order.VendorID, order.ConsigneeMobile, order.StoreID, db, func(isAccept bool) {
|
||||
// purchasePlatform.AcceptOrRefuseOrder(order, isAccept)
|
||||
@@ -62,6 +62,7 @@ func (c *OrderController) OnOrderNew(purchasePlatform PurchasePlatformHandler, o
|
||||
err = c.updateOrderSkuOtherInfo(orderSkus, db)
|
||||
if err == nil {
|
||||
db.Begin()
|
||||
// globals.SugarLogger.Debugf("new order:%v", order)
|
||||
created, _, err2 := db.ReadOrCreate(order, "VendorOrderID", "VendorID")
|
||||
err = err2
|
||||
if err == nil {
|
||||
@@ -71,17 +72,18 @@ func (c *OrderController) OnOrderNew(purchasePlatform PurchasePlatformHandler, o
|
||||
params := []interface{}{}
|
||||
for _, sku := range orderSkus {
|
||||
if sql == "" {
|
||||
sql = "INSERT INTO order_sku(vendor_order_id, vendor_id, count, sku_id, vendor_sku_id, sku_name, shop_price, sale_price) VALUES(?, ?, ?, ?, ?, ?, ?, ?)"
|
||||
sql = "INSERT INTO order_sku(vendor_order_id, vendor_id, count, sku_id, vendor_sku_id, sku_name, shop_price, sale_price, order_created_at) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?)"
|
||||
|
||||
} else {
|
||||
sql += ",(?, ?, ?, ?, ?, ?, ?, ?)"
|
||||
sql += ",(?, ?, ?, ?, ?, ?, ?, ?, ?)"
|
||||
}
|
||||
params = append(params, sku.VendorOrderID, sku.VendorID, sku.Count, sku.SkuID, sku.VendorSkuID, sku.SkuName, sku.ShopPrice, sku.SalePrice)
|
||||
params = append(params, sku.VendorOrderID, sku.VendorID, sku.Count, sku.SkuID, sku.VendorSkuID, sku.SkuName, sku.ShopPrice, sku.SalePrice, order.OrderCreatedAt)
|
||||
}
|
||||
sql += ";"
|
||||
_, err = db.Raw(sql, params...).Exec()
|
||||
if err != nil {
|
||||
db.Rollback()
|
||||
baseapi.SugarLogger.Infof("insert order_sku error:%v", err)
|
||||
} else {
|
||||
db.Commit()
|
||||
}
|
||||
@@ -91,26 +93,28 @@ func (c *OrderController) OnOrderNew(purchasePlatform PurchasePlatformHandler, o
|
||||
}
|
||||
} else {
|
||||
db.Rollback()
|
||||
globals.SugarLogger.Warnf("create order:%v, error:%v", order, err)
|
||||
}
|
||||
}
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
func (c *OrderController) OnOrderAdjust(purchasePlatform PurchasePlatformHandler, order *model.Order, orderSkus []*model.OrderSku) (err error) {
|
||||
func (c *OrderController) OnOrderAdjust(purchasePlatform PurchasePlatformHandler, order *model.GoodsOrder, orderSkus []*model.OrderSku) (err error) {
|
||||
db := orm.NewOrm()
|
||||
|
||||
err = utils.CallFuncLogError(func() error {
|
||||
_, err := db.Raw("DELETE FROM order_sku WHERE vendor_order_id=? AND vendor_id=?", order.VendorOrderID, order.VendorID).Exec()
|
||||
_, err := db.Raw("DELETE FROM order_sku WHERE vendor_order_id = ? AND vendor_id = ?", order.VendorOrderID, order.VendorID).Exec()
|
||||
return err
|
||||
}, "OnAdjustOrder delete order_sku")
|
||||
}, "OnAdjustOrder delete order")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
err = utils.CallFuncLogError(func() error {
|
||||
_, err := db.Raw("DELETE FROM order WHERE vendor_order_id=? AND vendor_id=?", order.VendorOrderID, order.VendorID).Exec()
|
||||
_, err := db.Raw("DELETE FROM goods_order WHERE vendor_order_id = ? AND vendor_id = ?", order.VendorOrderID, order.VendorID).Exec()
|
||||
return err
|
||||
}, "OnAdjustOrder delete order")
|
||||
}, "OnAdjustOrder delete order_sku")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -175,7 +179,7 @@ func (c *OrderController) updateOrderSkuOtherInfo(orderSkus []*model.OrderSku, d
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c *OrderController) updateOrderOtherInfo(order *model.Order, db orm.Ormer) (err error) {
|
||||
func (c *OrderController) updateOrderOtherInfo(order *model.GoodsOrder, db orm.Ormer) (err error) {
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -214,14 +218,14 @@ func (c *OrderController) handleAutoAcceptOrder(orderID string, vendorID int, us
|
||||
}
|
||||
|
||||
func (c *OrderController) addOrderStatus(msg *model.OrderStatus) (err error) {
|
||||
order := &model.Order{
|
||||
order := &model.GoodsOrder{
|
||||
VendorOrderID: msg.VendorOrderID,
|
||||
VendorID: msg.VendorID,
|
||||
}
|
||||
db := orm.NewOrm()
|
||||
value, ok := OrderMap.Load(ComposeUniversalOrderID(msg.VendorOrderID, msg.VendorID))
|
||||
if !ok {
|
||||
globals.SugarLogger.Warnf("can not get order:%v, from cache", order)
|
||||
// globals.SugarLogger.Infof("can not get order:%v, from cache", order)
|
||||
err = db.Read(order, "VendorOrderID", "VendorID")
|
||||
} else {
|
||||
order.ID = value.(int64)
|
||||
|
||||
Reference in New Issue
Block a user