- 修复ordersku中取门店价错误使用unitPrice的问题
- 同步美团外卖时,将MtwmID设置为京西SKUID
This commit is contained in:
@@ -20,7 +20,7 @@ type tStoreSkuBindAndVendorSkuID struct {
|
|||||||
VendorSkuID int64 `orm:"column(vendor_sku_id)"`
|
VendorSkuID int64 `orm:"column(vendor_sku_id)"`
|
||||||
SkuID int `orm:"column(sku_id)"`
|
SkuID int `orm:"column(sku_id)"`
|
||||||
Weight int
|
Weight int
|
||||||
UnitPrice int
|
Price int
|
||||||
}
|
}
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
@@ -245,7 +245,7 @@ func (c *OrderManager) updateOrderSkuOtherInfo(order *model.GoodsOrder, db orm.O
|
|||||||
}
|
}
|
||||||
fieldPrefix := dao.ConvertDBFieldPrefix(model.VendorNames[order.VendorID])
|
fieldPrefix := dao.ConvertDBFieldPrefix(model.VendorNames[order.VendorID])
|
||||||
sql := `
|
sql := `
|
||||||
SELECT %s.%s_id vendor_sku_id, t1.id sku_id, t2.unit_price, t1.weight
|
SELECT %s.%s_id vendor_sku_id, t1.id sku_id, t2.price, t1.weight
|
||||||
FROM sku t1
|
FROM sku t1
|
||||||
LEFT JOIN store_sku_bind t2 ON t1.id = t2.sku_id AND t2.deleted_at = ? AND t2.store_id = ?
|
LEFT JOIN store_sku_bind t2 ON t1.id = t2.sku_id AND t2.deleted_at = ? AND t2.store_id = ?
|
||||||
WHERE t1.deleted_at = ? AND %s.%s_id IN (-1, ` + dao.GenQuestionMarks(len(vendorSkuIDs)) + ")"
|
WHERE t1.deleted_at = ? AND %s.%s_id IN (-1, ` + dao.GenQuestionMarks(len(vendorSkuIDs)) + ")"
|
||||||
@@ -269,10 +269,10 @@ func (c *OrderManager) updateOrderSkuOtherInfo(order *model.GoodsOrder, db orm.O
|
|||||||
globals.SugarLogger.Infof("updateOrderSkuOtherInfo [运营%s]%s订单sku找不到门店价格(或商品映射),orderID:%s, StoreID:%d, VendorSkuID:%s, sku:%v", opNumStr, model.VendorChineseNames[order.VendorID], order.VendorOrderID, jxStoreID, v.VendorSkuID, v)
|
globals.SugarLogger.Infof("updateOrderSkuOtherInfo [运营%s]%s订单sku找不到门店价格(或商品映射),orderID:%s, StoreID:%d, VendorSkuID:%s, sku:%v", opNumStr, model.VendorChineseNames[order.VendorID], order.VendorOrderID, jxStoreID, v.VendorSkuID, v)
|
||||||
} else {
|
} else {
|
||||||
v.JxSkuID = skuBindInfo.SkuID
|
v.JxSkuID = skuBindInfo.SkuID
|
||||||
v.ShopPrice = int64(skuBindInfo.UnitPrice)
|
v.ShopPrice = int64(skuBindInfo.Price)
|
||||||
v.Weight = skuBindInfo.Weight // 以本地信息中的WEIGHT为准
|
v.Weight = skuBindInfo.Weight // 以本地信息中的WEIGHT为准
|
||||||
order.ShopPrice += v.ShopPrice * int64(v.Count)
|
order.ShopPrice += v.ShopPrice * int64(v.Count)
|
||||||
if skuBindInfo.UnitPrice == 0 {
|
if skuBindInfo.Price == 0 {
|
||||||
globals.SugarLogger.Infof("updateOrderSkuOtherInfo [运营%s]%s订单sku门店价格为零(一般原因为没有门店价格信息),orderID:%s, StoreID:%d, SkuID:%d, sku:%v", opNumStr, model.VendorChineseNames[order.VendorID], order.VendorOrderID, jxStoreID, v.JxSkuID, v)
|
globals.SugarLogger.Infof("updateOrderSkuOtherInfo [运营%s]%s订单sku门店价格为零(一般原因为没有门店价格信息),orderID:%s, StoreID:%d, SkuID:%d, sku:%v", opNumStr, model.VendorChineseNames[order.VendorID], order.VendorOrderID, jxStoreID, v.JxSkuID, v)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -244,6 +244,9 @@ func (p *PurchaseHandler) SyncStoreSkus(ctx *jxcontext.Context, parentTask tasks
|
|||||||
// for k, v := range batchItemList {
|
// for k, v := range batchItemList {
|
||||||
v := batchItemList[0]
|
v := batchItemList[0]
|
||||||
skuItem := v.(*dao.StoreSkuSyncInfo)
|
skuItem := v.(*dao.StoreSkuSyncInfo)
|
||||||
|
updateFields := []string{model.FieldMtwmSyncStatus}
|
||||||
|
storeSkuBind := &model.StoreSkuBind{}
|
||||||
|
storeSkuBind.ID = skuItem.BindID
|
||||||
if skuItem.SkuSyncStatus&model.SyncFlagDeletedMask != 0 {
|
if skuItem.SkuSyncStatus&model.SyncFlagDeletedMask != 0 {
|
||||||
if skuItem.SkuSyncStatus&model.SyncFlagNewMask == 0 {
|
if skuItem.SkuSyncStatus&model.SyncFlagNewMask == 0 {
|
||||||
err = api.MtwmAPI.RetailDelete(vendorStoreID, utils.Int2Str(skuItem.ID))
|
err = api.MtwmAPI.RetailDelete(vendorStoreID, utils.Int2Str(skuItem.ID))
|
||||||
@@ -281,13 +284,14 @@ func (p *PurchaseHandler) SyncStoreSkus(ctx *jxcontext.Context, parentTask tasks
|
|||||||
}
|
}
|
||||||
foodData["skus"] = skus
|
foodData["skus"] = skus
|
||||||
if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite {
|
if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite {
|
||||||
err = api.MtwmAPI.RetailBatchInitData(vendorStoreID, foodDataList)
|
if err = api.MtwmAPI.RetailBatchInitData(vendorStoreID, foodDataList); err == nil {
|
||||||
|
storeSkuBind.MtwmID = int64(skuItem.ID)
|
||||||
|
updateFields = append(updateFields, model.FieldMtwmID)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if err == nil {
|
if err == nil {
|
||||||
storeSkuBind := &model.StoreSkuBind{}
|
_, err = dao.UpdateEntity(db, storeSkuBind, updateFields...)
|
||||||
storeSkuBind.ID = skuItem.BindID
|
|
||||||
_, err = dao.UpdateEntity(nil, storeSkuBind, model.FieldMtwmSyncStatus)
|
|
||||||
}
|
}
|
||||||
return nil, err
|
return nil, err
|
||||||
}, skus)
|
}, skus)
|
||||||
|
|||||||
Reference in New Issue
Block a user