订单结算价根据活动结算价修改
This commit is contained in:
@@ -364,17 +364,28 @@ func (c *OrderManager) updateOrderSkuOtherInfo(order *model.GoodsOrder, db *dao.
|
|||||||
salePrice = 0
|
salePrice = 0
|
||||||
}
|
}
|
||||||
v.EarningPrice = jxutils.CaculateSkuEarningPrice(v.ShopPrice, salePrice, storePayPercentage)
|
v.EarningPrice = jxutils.CaculateSkuEarningPrice(v.ShopPrice, salePrice, storePayPercentage)
|
||||||
//重复购买有结算价的商品需要拆分,第一个商品按结算价,后面的商品按shopprice 或者 saleprice,然后把原来的商品信息删了
|
//TODO 重复购买有结算价的商品需要拆分,第一个商品按结算价,后面的商品按shopprice 或者 saleprice, 2020-05-06
|
||||||
if v.Count > 1 && v.EarningPrice != 0 {
|
if v.Count > 1 {
|
||||||
sku := v
|
storeID := 0
|
||||||
sku.Count = v.Count - 1
|
if order.StoreID == 0 {
|
||||||
v.Count = 1
|
storeID = order.JxStoreID
|
||||||
if v.ShopPrice < v.SalePrice {
|
|
||||||
sku.EarningPrice = v.ShopPrice
|
|
||||||
} else {
|
} 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)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 直营店始终按比例结算,不考虑活动与结算表
|
// 直营店始终按比例结算,不考虑活动与结算表
|
||||||
|
|||||||
@@ -332,44 +332,53 @@ func (c *OrderManager) ExportOrders(ctx *jxcontext.Context, fromDateStr, toDateS
|
|||||||
order.SkuInfo2 += ";" + skuStr1
|
order.SkuInfo2 += ";" + skuStr1
|
||||||
}
|
}
|
||||||
} else if v.SkuCount2 > 1 {
|
} else if v.SkuCount2 > 1 {
|
||||||
if v.SkuEarningPrice != 0 {
|
storeID := 0
|
||||||
skuStr1 := strings.Join([]string{
|
if v.StoreID == 0 {
|
||||||
utils.Int2Str(v.SkuID),
|
storeID = v.JxStoreID
|
||||||
utils.Int2Str(v.SkuCount2),
|
} else {
|
||||||
utils.Int2Str(v.SkuShopPrice),
|
storeID = v.StoreID
|
||||||
utils.Int2Str(v.SkuSalePrice),
|
}
|
||||||
utils.Int2Str(v.SkuEarningPrice),
|
result, _ := dao.GetEffectiveActStoreSkuInfo(dao.GetDB(), 0, nil, 0, []int{storeID}, []int{v.SkuID}, v.OrderCreatedAt, v.OrderCreatedAt)
|
||||||
}, ",")
|
if len(result) > 0 {
|
||||||
skuStr2 := strings.Join([]string{
|
if result[0].EarningPrice != 0 {
|
||||||
utils.Int2Str(v.SkuID),
|
skuStr1 := strings.Join([]string{
|
||||||
utils.Int2Str(1),
|
utils.Int2Str(v.SkuID),
|
||||||
utils.Int2Str(v.SkuShopPrice),
|
utils.Int2Str(v.SkuCount2),
|
||||||
utils.Int2Str(v.SkuSalePrice),
|
utils.Int2Str(v.SkuShopPrice),
|
||||||
utils.Int2Str(v.SkuEarningPrice),
|
utils.Int2Str(v.SkuSalePrice),
|
||||||
}, ",")
|
utils.Int2Str(v.SkuEarningPrice),
|
||||||
price := 0
|
}, ",")
|
||||||
if v.SkuShopPrice < v.SkuSalePrice {
|
skuStr2 := strings.Join([]string{
|
||||||
price = v.SkuShopPrice
|
utils.Int2Str(v.SkuID),
|
||||||
} else {
|
utils.Int2Str(1),
|
||||||
price = v.SkuSalePrice
|
utils.Int2Str(v.SkuShopPrice),
|
||||||
}
|
utils.Int2Str(v.SkuSalePrice),
|
||||||
skuStr3 := strings.Join([]string{
|
utils.Int2Str(v.SkuEarningPrice),
|
||||||
utils.Int2Str(v.SkuID),
|
}, ",")
|
||||||
utils.Int2Str(v.SkuCount2 - 1),
|
price := 0
|
||||||
utils.Int2Str(v.SkuShopPrice),
|
if v.SkuShopPrice < v.SkuSalePrice {
|
||||||
utils.Int2Str(v.SkuSalePrice),
|
price = v.SkuShopPrice
|
||||||
utils.Int2Str(price),
|
} else {
|
||||||
}, ",")
|
price = v.SkuSalePrice
|
||||||
if order == nil || v.ID != order.ID {
|
}
|
||||||
order = v
|
skuStr3 := strings.Join([]string{
|
||||||
v.CourierVendorName = model.VendorChineseNames[v.WaybillVendorID]
|
utils.Int2Str(v.SkuID),
|
||||||
v.Status2 = model.OrderStatusName[v.Status]
|
utils.Int2Str(v.SkuCount2 - 1),
|
||||||
v.SkuInfo = skuStr1
|
utils.Int2Str(v.SkuShopPrice),
|
||||||
v.SkuInfo2 = skuStr2 + ";" + skuStr3
|
utils.Int2Str(v.SkuSalePrice),
|
||||||
orders2 = append(orders2, v)
|
utils.Int2Str(price),
|
||||||
} else {
|
}, ",")
|
||||||
order.SkuInfo += ";" + skuStr1
|
if order == nil || v.ID != order.ID {
|
||||||
order.SkuInfo2 += ";" + skuStr2 + ";" + skuStr3
|
order = v
|
||||||
|
v.CourierVendorName = model.VendorChineseNames[v.WaybillVendorID]
|
||||||
|
v.Status2 = model.OrderStatusName[v.Status]
|
||||||
|
v.SkuInfo = skuStr1
|
||||||
|
v.SkuInfo2 = skuStr2 + ";" + skuStr3
|
||||||
|
orders2 = append(orders2, v)
|
||||||
|
} else {
|
||||||
|
order.SkuInfo += ";" + skuStr1
|
||||||
|
order.SkuInfo2 += ";" + skuStr2 + ";" + skuStr3
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
skuStr1 := strings.Join([]string{
|
skuStr1 := strings.Join([]string{
|
||||||
|
|||||||
Reference in New Issue
Block a user