From 2256a7966e42bea72b19ca524f99564122ccdabb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Thu, 12 Mar 2020 09:15:30 +0800 Subject: [PATCH] =?UTF-8?q?=E7=89=A9=E6=96=99=E8=AE=A2=E5=8D=95=E8=83=8C?= =?UTF-8?q?=E5=BF=83=E8=A2=8B=E6=95=B0=E9=87=8F=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/partner/purchase/jx/localjx/order.go | 31 +++++++++++++++---- 1 file changed, 25 insertions(+), 6 deletions(-) diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go index 49aa680bd..7dcd9b7ad 100644 --- a/business/partner/purchase/jx/localjx/order.go +++ b/business/partner/purchase/jx/localjx/order.go @@ -432,9 +432,11 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 outJxOrder.StoreName = storeDetail.Name skus := formalizeSkus(jxOrder.Skus) - err = matterSkusLimited(skus, fromStoreID) - if err != nil { - return nil, nil, err + if fromStoreID != 0 { + err = matterSkusLimited(skus, fromStoreID) + if err != nil { + return nil, nil, err + } } // 允许空商品列表(一般用于测试配送地址,门店信息是否合适) if len(skus) > 0 { @@ -572,11 +574,28 @@ func matterSkusLimited(skus []*JxSkuInfo, storeID int) (err error) { sum := 0 if result.Count != 0 { for _, sku := range skus { - if bagMap[sku.SkuID] != 0 { - sum += bagMap[sku.SkuID] * sku.Count + if sku.SkuID == 6039382 { + sum1 := 0 + if bagMap[sku.SkuID] != 0 { + sum1 += bagMap[sku.SkuID] * sku.Count + sum += sum1 + } + if utils.Int2Float64(sum1/100) >= math.Ceil(utils.Int2Float64(result.Count)/100) { + return fmt.Errorf("订单100个一份背心袋订购数量过多,请按照实际销量购买!,大概销量:[%v],购买数量:[%v]", result.Count, sum1) + } + } + if sku.SkuID == 6039383 || sku.SkuID == 6039384 || sku.SkuID == 6039387 || sku.SkuID == 6039390 { + sum2 := 0 + if bagMap[sku.SkuID] != 0 { + sum2 += bagMap[sku.SkuID] * sku.Count + sum += sum2 + } + if utils.Int2Float64(sum2/200) >= math.Ceil(utils.Int2Float64(result.Count)/200) { + return fmt.Errorf("订单200个一份背心袋订购数量过多,请按照实际销量购买!,大概销量:[%v],购买数量:[%v]", result.Count, sum2) + } } } - if sum-200 < result.Count { + if sum-result.Count > 100 { return fmt.Errorf("订单背心袋订购数量过多,请按照实际销量购买!,大概销量:[%v],购买数量:[%v]", result.Count, sum) } }