From 98f74c6ae92ee92a510dbc9467e68d9d15bdb981 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com> Date: Tue, 18 Aug 2020 15:58:33 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=90=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxstore/act/act.go | 1 + business/partner/purchase/jx/localjx/order.go | 63 +++++++++---------- 2 files changed, 32 insertions(+), 32 deletions(-) diff --git a/business/jxstore/act/act.go b/business/jxstore/act/act.go index 02a67ca94..05d39f3ea 100644 --- a/business/jxstore/act/act.go +++ b/business/jxstore/act/act.go @@ -1638,6 +1638,7 @@ func ChangeJxPriceByDiscountAct(ctx *jxcontext.Context) { if _, err = dao.UpdateEntity(db, storeSku, "Stock"); err != nil { dao.Rollback(db) } + // dao.SetStoreSkuSyncStatus(db, model.VendorIDJD, []int{storeSku.StoreID}, []int{storeSku.SkuID}, model.SyncFlagStockMask) } } dao.Commit(db) diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go index 771c32060..d46ab9f6d 100644 --- a/business/partner/purchase/jx/localjx/order.go +++ b/business/partner/purchase/jx/localjx/order.go @@ -600,14 +600,14 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 sum int //申请物料的店的最近销量,以下会根据销量计算具体袋子的价格 flag = false //新店袋子拆分当个参数 ) - if fromStoreID != 0 && fromStoreID != -1 { - result, _ = orderman.GetMatterStoreOrderCount(nil, fromStoreID) - sum = result.Count - } - // if jxOrder.OrderType == model.OrderTypeMatter && fromStoreID != -1 { + // if fromStoreID != 0 && fromStoreID != -1 { // result, _ = orderman.GetMatterStoreOrderCount(nil, fromStoreID) // sum = result.Count // } + if jxOrder.OrderType == model.OrderTypeMatter && fromStoreID != -1 { + result, _ = orderman.GetMatterStoreOrderCount(nil, fromStoreID) + sum = result.Count + } if jxOrder.Weight == 0 { for _, v := range jxOrder.Skus { v.Weight = storeSkuMap[v.SkuID].Weight @@ -616,16 +616,16 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 } for _, v := range skus { if storeSkuBind := storeSkuMap[v.SkuID]; storeSkuBind != nil { - if fromStoreID != 0 { - // if jxOrder.OrderType == model.OrderTypeMatter { + // if fromStoreID != 0 { + if jxOrder.OrderType == model.OrderTypeMatter { result2, _ := api.JdEclpAPI.QueryStock(storeSkuBind.EclpID) if len(result2) > 0 { if result2[0].UsableNum < v.Count { return nil, nil, fmt.Errorf("此商品库存不足无法购买,请联系管理员!skuID:[%v]", v.SkuID) } } - // } } + // } if sku := skuMap[v.SkuID]; sku != nil { jxSku := &JxSkuInfo{ SkuID: v.SkuID, @@ -656,8 +656,8 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 } } if jxSku != nil { - if fromStoreID == 0 || fromStoreID == -1 { - // if jxOrder.OrderType != model.OrderTypeMatter || (jxOrder.OrderType == model.OrderTypeMatter && fromStoreID == -1) { + // if fromStoreID == 0 || fromStoreID == -1 { + if jxOrder.OrderType != model.OrderTypeMatter || (jxOrder.OrderType == model.OrderTypeMatter && fromStoreID == -1) { outJxOrder.Skus = append(outJxOrder.Skus, jxSku) outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice } else { //以下else为物料订单袋子金额和数量处理 @@ -774,19 +774,19 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 return nil, nil, fmt.Errorf("fromStoreID有误,[%v]", fromStoreID) } outJxOrder.FromStoreID = fromStoreID - // if jxOrder.OrderType == model.OrderTypeMatter { - //TODO 修改配送费规则,2020-04-28 - //3kg 5元,每多1kg加2元 - //配送费要按分包规则计算 - if outJxOrder.Weight <= 3000 { - outJxOrder.FreightPrice = 500 - } else if outJxOrder.Weight > 3000 && outJxOrder.Weight <= splitMatterOrderMinWeight { - outJxOrder.FreightPrice = utils.Float64TwoInt64(500 + math.Ceil((utils.Int2Float64(outJxOrder.Weight)-3000)/1000)*200) - } else { - _, freightPrice, _ := tryToSplitMatterOrder(jxOrder) - outJxOrder.FreightPrice = freightPrice + if jxOrder.OrderType == model.OrderTypeMatter { + //TODO 修改配送费规则,2020-04-28 + //3kg 5元,每多1kg加2元 + //配送费要按分包规则计算 + if outJxOrder.Weight <= 3000 { + outJxOrder.FreightPrice = 500 + } else if outJxOrder.Weight > 3000 && outJxOrder.Weight <= splitMatterOrderMinWeight { + outJxOrder.FreightPrice = utils.Float64TwoInt64(500 + math.Ceil((utils.Int2Float64(outJxOrder.Weight)-3000)/1000)*200) + } else { + _, freightPrice, _ := tryToSplitMatterOrder(jxOrder) + outJxOrder.FreightPrice = freightPrice + } } - // } //要求配送人姓名填门店名 if fromStoreID != -1 { deliveryAddress.ConsigneeName = storeDetail2.Name @@ -905,10 +905,10 @@ func jxOrder2GoodsOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, deliveryAd order.FromStoreID = jxOrder.FromStoreID order.DeliveryFlag = model.OrderDeliveryFlagMaskScheduleDisabled order.Flag = 1 - // if jxOrder.OrderType == model.OrderTypeMatter { - order.WaybillVendorID = model.VendorIDJDWL - order.ConsigneeAddress = deliveryAddress.Address - // } + if jxOrder.OrderType == model.OrderTypeMatter { + order.WaybillVendorID = model.VendorIDJDWL + order.ConsigneeAddress = deliveryAddress.Address + } } //如果是自提单就设置 if IsDeliverySelf { @@ -942,9 +942,9 @@ func PickupGoods(order *model.GoodsOrder, isSelfDelivery bool, userName string) } func orderSolutionForWuLiao(order *model.GoodsOrder) (err error) { - if order.FromStoreID != 0 { - err = changeOrderStatus(order.VendorOrderID, model.OrderStatusDelivering, "") - // if order.OrderType == model.OrderTypeMatter { + // if order.FromStoreID != 0 { + err = changeOrderStatus(order.VendorOrderID, model.OrderStatusDelivering, "") + if order.OrderType == model.OrderTypeMatter { var ( db = dao.GetDB() ) @@ -1127,8 +1127,8 @@ func CancelOrder(ctx *jxcontext.Context, order *model.GoodsOrder, reason string) } func CancelMatterOrder(db *dao.DaoDB, order *model.GoodsOrder, reason string) (err error) { - if order.FromStoreID != 0 { - // if order.OrderType == model.OrderTypeMatter { + // if order.FromStoreID != 0 { + if order.OrderType == model.OrderTypeMatter { if order.EclpOutID != "" { //表示是京西的物料订单的子订单(拆分后的订单) if len(order.VendorOrderID) == 16 && order.VendorID == model.VendorIDJX { @@ -1901,7 +1901,6 @@ func CreateOrderByPriceDefend(ctx *jxcontext.Context) { if _, err := CreateOrder(ctx, jxOrder, v.AddressID, OrderCreateTypeNormal, 0, false); err == nil { err = SettleDiscountActByPriceDefend(ctx, v) } - // dao.GetStoresSkusInfo(db, []int{v.StoreID}, []int{v.SkuID}) } }