物料订单袋子数量超标物品拆分

This commit is contained in:
苏尹岚
2020-03-12 10:52:07 +08:00
parent 744317a18c
commit 08332b9f72

View File

@@ -498,16 +498,25 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
} }
} }
if jxSku != nil { if jxSku != nil {
outJxOrder.Skus = append(outJxOrder.Skus, jxSku)
if fromStoreID == 0 { if fromStoreID == 0 {
outJxOrder.Skus = append(outJxOrder.Skus, jxSku)
outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice
} else { } else {
if jxSku.SkuID == 6039382 { if jxSku.SkuID == 6039382 {
if bagMap[jxSku.SkuID] != 0 { if bagMap[jxSku.SkuID] != 0 {
if sum > 0 { if sum > 0 {
if bagMap[jxSku.SkuID]*jxSku.Count <= sum+100 { if bagMap[jxSku.SkuID]*jxSku.Count <= sum+100 {
jxSku.SalePrice = 1
outJxOrder.Skus = append(outJxOrder.Skus, jxSku)
outJxOrder.OrderPrice += int64(1 * jxSku.Count) outJxOrder.OrderPrice += int64(1 * jxSku.Count)
} else { } else {
jxSku2 := *jxSku
jxSku2.SalePrice = jxSku.SalePrice
jxSku2.Count = int(int64(jxSku.Count) - utils.Float64TwoInt64(math.Ceil(utils.Int2Float64(sum)/100)))
jxSku.SalePrice = 1
jxSku.Count = int(utils.Float64TwoInt64(math.Ceil(utils.Int2Float64(sum) / 100)))
outJxOrder.Skus = append(outJxOrder.Skus, jxSku)
outJxOrder.Skus = append(outJxOrder.Skus, &jxSku2)
outJxOrder.OrderPrice += int64(1 * math.Ceil(utils.Int2Float64(sum)/100)) outJxOrder.OrderPrice += int64(1 * math.Ceil(utils.Int2Float64(sum)/100))
outJxOrder.OrderPrice += (int64(jxSku.Count) - utils.Float64TwoInt64(math.Ceil(utils.Int2Float64(sum)/100))) * jxSku.SalePrice outJxOrder.OrderPrice += (int64(jxSku.Count) - utils.Float64TwoInt64(math.Ceil(utils.Int2Float64(sum)/100))) * jxSku.SalePrice
} }
@@ -519,14 +528,21 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
} }
if jxSku.SkuID == 6039383 || jxSku.SkuID == 6039384 || jxSku.SkuID == 6039387 || jxSku.SkuID == 6039390 { if jxSku.SkuID == 6039383 || jxSku.SkuID == 6039384 || jxSku.SkuID == 6039387 || jxSku.SkuID == 6039390 {
if bagMap[jxSku.SkuID] != 0 { if bagMap[jxSku.SkuID] != 0 {
globals.SugarLogger.Debugf("daizi1,[%v]", sum)
if sum > 0 { if sum > 0 {
if bagMap[jxSku.SkuID]*jxSku.Count <= sum+200 { if bagMap[jxSku.SkuID]*jxSku.Count <= sum+200 {
jxSku.SalePrice = 1
outJxOrder.Skus = append(outJxOrder.Skus, jxSku)
outJxOrder.OrderPrice += int64(1 * jxSku.Count) outJxOrder.OrderPrice += int64(1 * jxSku.Count)
} else { } else {
jxSku2 := *jxSku
jxSku2.SalePrice = jxSku.SalePrice
jxSku2.Count = int(int64(jxSku.Count) - utils.Float64TwoInt64(math.Ceil(utils.Int2Float64(sum)/200)))
jxSku.SalePrice = 1
jxSku.Count = int(utils.Float64TwoInt64(math.Ceil(utils.Int2Float64(sum) / 200)))
outJxOrder.Skus = append(outJxOrder.Skus, jxSku)
outJxOrder.Skus = append(outJxOrder.Skus, &jxSku2)
outJxOrder.OrderPrice += int64(1 * math.Ceil(utils.Int2Float64(sum)/200)) outJxOrder.OrderPrice += int64(1 * math.Ceil(utils.Int2Float64(sum)/200))
outJxOrder.OrderPrice += (int64(jxSku.Count) - utils.Float64TwoInt64(math.Ceil(utils.Int2Float64(sum)/200))) * jxSku.SalePrice outJxOrder.OrderPrice += (int64(jxSku.Count) - utils.Float64TwoInt64(math.Ceil(utils.Int2Float64(sum)/200))) * jxSku.SalePrice
globals.SugarLogger.Debugf("daizi2,[%v]", outJxOrder.OrderPrice)
} }
} else { } else {
outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice
@@ -534,6 +550,7 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
sum = sum - bagMap[jxSku.SkuID]*jxSku.Count sum = sum - bagMap[jxSku.SkuID]*jxSku.Count
} }
} }
outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice
} }
outJxOrder.Weight += jxSku.Count * jxSku.Weight outJxOrder.Weight += jxSku.Count * jxSku.Weight
} }