订单结算价根据活动结算价修改
This commit is contained in:
@@ -364,17 +364,28 @@ func (c *OrderManager) updateOrderSkuOtherInfo(order *model.GoodsOrder, db *dao.
|
||||
salePrice = 0
|
||||
}
|
||||
v.EarningPrice = jxutils.CaculateSkuEarningPrice(v.ShopPrice, salePrice, storePayPercentage)
|
||||
//重复购买有结算价的商品需要拆分,第一个商品按结算价,后面的商品按shopprice 或者 saleprice,然后把原来的商品信息删了
|
||||
if v.Count > 1 && v.EarningPrice != 0 {
|
||||
sku := v
|
||||
sku.Count = v.Count - 1
|
||||
v.Count = 1
|
||||
if v.ShopPrice < v.SalePrice {
|
||||
sku.EarningPrice = v.ShopPrice
|
||||
//TODO 重复购买有结算价的商品需要拆分,第一个商品按结算价,后面的商品按shopprice 或者 saleprice, 2020-05-06
|
||||
if v.Count > 1 {
|
||||
storeID := 0
|
||||
if order.StoreID == 0 {
|
||||
storeID = order.JxStoreID
|
||||
} else {
|
||||
sku.EarningPrice = v.SalePrice
|
||||
storeID = order.StoreID
|
||||
}
|
||||
result, _ := dao.GetEffectiveActStoreSkuInfo(db, 0, nil, 0, []int{storeID}, []int{v.SkuID}, order.OrderCreatedAt, order.OrderCreatedAt)
|
||||
if len(result) > 0 {
|
||||
if result[0].EarningPrice != 0 {
|
||||
sku := v
|
||||
sku.Count = v.Count - 1
|
||||
v.Count = 1
|
||||
if v.ShopPrice < v.SalePrice {
|
||||
sku.EarningPrice = v.ShopPrice
|
||||
} else {
|
||||
sku.EarningPrice = v.SalePrice
|
||||
}
|
||||
orderSkus = append(orderSkus, sku)
|
||||
}
|
||||
}
|
||||
orderSkus = append(orderSkus, sku)
|
||||
}
|
||||
}
|
||||
// 直营店始终按比例结算,不考虑活动与结算表
|
||||
|
||||
Reference in New Issue
Block a user