Commit 2c7b3da6 by 杨树贤

Merge branch 'ysx-自营含税-20260122' into dev

parents e0ec7736 be89a166
Showing with 9 additions and 30 deletions
...@@ -98,7 +98,6 @@ type LySku struct { ...@@ -98,7 +98,6 @@ type LySku struct {
CompareRatio float64 `json:"compare_ratio"` CompareRatio float64 `json:"compare_ratio"`
//兼容自营下单的字段,取成本价的第一个阶梯的人民币 //兼容自营下单的字段,取成本价的第一个阶梯的人民币
Cost float64 `json:"cost"` Cost float64 `json:"cost"`
CostNoTax float64 `json:"cost_no_tax"`
} }
type DiscountRatio struct { type DiscountRatio struct {
......
...@@ -318,59 +318,39 @@ func (ls *LyService) GetCoefficientAndPrice(sku model.LySku) model.LySku { ...@@ -318,59 +318,39 @@ func (ls *LyService) GetCoefficientAndPrice(sku model.LySku) model.LySku {
//需更新到 基石该SKU的 成本价——香港交货($)且也需乘美金转人民币汇率, 再乘以关税,填入到基石该SKU的 成本价——国内含税(¥)价 //需更新到 基石该SKU的 成本价——香港交货($)且也需乘美金转人民币汇率, 再乘以关税,填入到基石该SKU的 成本价——国内含税(¥)价
//这里要获取一个第一个阶梯的未税成本价 //这里要获取一个第一个阶梯的未税成本价
// L0003270 这个供应商的话 // L0003270 这个供应商的话
var costNoTax float64 var costTax float64
if sku.Canal == "L0018319" || sku.Canal == "L0003270" { if sku.Canal == "L0018562" {
for index, price := range sku.OriginalPrice {
priceCnNoTax := price.PriceCn
if index == 0 {
costNoTax = priceCnNoTax
if costNoTax == 0 {
continue
}
}
originalPrice = append(originalPrice, model.OriginPrice{
Purchases: price.Purchases,
PriceCn: c.MyRound(c.MulFloat(price.PriceCn, tax), 4),
PriceUs: price.PriceUs,
})
}
for index, price := range sku.LadderPrice {
ladderPrice[index].PriceCn = c.MyRound(c.MulFloat(price.PriceCn, tax), 4)
}
}
if sku.Canal == "L0018562" || sku.Canal == "L0003270" {
redisCon := gredis.Conn("default_r") redisCon := gredis.Conn("default_r")
defer redisCon.Close() defer redisCon.Close()
usdRatio, _ := redis.Float64(redisCon.Do("HGET", "erp_rate", 2)) usdRatio, _ := redis.Float64(redisCon.Do("HGET", "erp_rate", 2))
for index, price := range sku.OriginalPrice { for index, price := range sku.OriginalPrice {
priceCnNoTax := c.MulFloat(price.PriceUs, usdRatio) priceCnTax := c.MulFloat(price.PriceUs, usdRatio)
if index == 0 { if index == 0 {
costNoTax = priceCnNoTax if priceCnTax == 0 {
if costNoTax == 0 {
continue continue
} }
costTax = priceCnTax
} }
//如果有人民币的话,就用人民币,没有的话,就用上面的美元算出来的人民币 //如果有人民币的话,就用人民币,没有的话,就用上面的美元算出来的人民币
//L0018562一定有美元的,所以不能提前判断 //L0018562一定有美元的,所以不能提前判断
if price.PriceCn != 0 { if price.PriceCn != 0 {
priceCnNoTax = price.PriceCn priceCnTax = price.PriceCn
} }
originalPrice = append(originalPrice, model.OriginPrice{ originalPrice = append(originalPrice, model.OriginPrice{
Purchases: price.Purchases, Purchases: price.Purchases,
PriceCn: c.MyRound(c.MulFloat(priceCnNoTax, tax), 4), PriceCn: priceCnTax,
PriceUs: price.PriceUs, PriceUs: price.PriceUs,
}) })
} }
for index, price := range sku.LadderPrice { for index, price := range sku.LadderPrice {
if costNoTax == 0 { if costTax == 0 {
continue continue
} }
ladderPrice[index].PriceCn = c.MyRound(c.MulFloat(price.PriceUs, usdRatio*tax), 4) ladderPrice[index].PriceCn = c.MyRound(c.MulFloat(price.PriceUs, usdRatio*tax), 4)
} }
} }
sku.CostNoTax = costNoTax
//判断redis里面是否有成本价,有的话,那就直接去取价格,不需要生成阶梯价 //判断redis里面是否有成本价,有的话,那就直接去取价格,不需要生成阶梯价
//如果没有成本价字段,就要去生成阶梯价格 //如果没有成本价字段,就要去生成阶梯价格
if len(ladderPrice) > 0 { if len(ladderPrice) > 0 {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment