From d29ca321d82cfe3fa628592cb16e2e6333eb0298 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 10:49:33 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E9=A5=BF=E7=99=BE=E7=BE=8E=E5=9B=A2?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E6=9A=82=E6=97=B6=E4=B8=8D=E5=8F=91=E9=80=81?= =?UTF-8?q?=E4=B8=89=E6=96=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxcallback/scheduler/defsch/defsch.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/business/jxcallback/scheduler/defsch/defsch.go b/business/jxcallback/scheduler/defsch/defsch.go index 7b8adfc17..22da7bbe9 100644 --- a/business/jxcallback/scheduler/defsch/defsch.go +++ b/business/jxcallback/scheduler/defsch/defsch.go @@ -736,7 +736,10 @@ func (s *DefScheduler) createWaybillOn3rdProviders(savedOrderInfo *WatchOrderInf // if order.VendorID == model.VendorIDJX { // excludeVendorIDs = append(excludeVendorIDs, model.VendorIDMTPS) // } - + //TODO 2020-08-18 饿百美团订单暂时不自动发送三方 + if order.VendorID == model.VendorIDEBAI || order.VendorID == model.VendorIDMTWM { + excludeVendorIDs = append(excludeVendorIDs, model.VendorIDMTPS, model.VendorIDDada) + } if savedOrderInfo != nil { //TODO 2020-07-21 发单时间要在门店的营业时间内 if savedOrderInfo.storeDetail != nil { From 308c0deac963f8fc49241457e35c9e68ffad20af 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 11:37:43 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E5=88=A0=E9=97=A8=E5=BA=97=E6=B4=BB?= =?UTF-8?q?=E5=8A=A8=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxstore/act/act.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/business/jxstore/act/act.go b/business/jxstore/act/act.go index c881257cf..fabf8c5e3 100644 --- a/business/jxstore/act/act.go +++ b/business/jxstore/act/act.go @@ -1062,7 +1062,7 @@ func DeleteStoresFromAct(ctx *jxcontext.Context, vendorID int, actTypes, storeID task := tasksch.NewParallelTask("将门店从所有活动中删除", tasksch.NewParallelConfig().SetParallelCount(1).SetIsContinueWhenError(isContinueWhenError), ctx, func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { storeID := batchItemList[0].(int) - acts, _ := dao.QueryActs(db, 0, 0, 50, 0, "", vendorID, []int{1}, actTypes, nil, storeID, nil, 0, utils.ZeroTimeValue, utils.ZeroTimeValue, time.Now().AddDate(0, -3, 0), time.Now()) + acts, _ := dao.QueryActs(db, 0, 0, 50, -1, "", vendorID, []int{1}, actTypes, nil, storeID, nil, 0, utils.ZeroTimeValue, utils.ZeroTimeValue, time.Now().AddDate(0, -3, 0), time.Now()) for _, v := range acts.Data { var actStoreSkuParam []*ActStoreSkuParam _, actStoreSkus, _ := dao.GetActStoreSkuVendorList(db, v.ID, []int{vendorID}, nil, nil, "", 0, 99999) From 32ae31947fdb6ecbfbd0445f6a7eef67de492b6d 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 11:48:19 +0800 Subject: [PATCH 3/5] =?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/partner/purchase/jx/localjx/order.go | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go index 406e9b066..b95eadcfc 100644 --- a/business/partner/purchase/jx/localjx/order.go +++ b/business/partner/purchase/jx/localjx/order.go @@ -546,11 +546,14 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 } skuMap := make(map[int]*model.SkuAndName) for _, v := range skuList { - if jxOrder.OrderType == model.OrderTypeMatter { + if fromStoreID != 0 { if v.EclpID == "" { return nil, nil, fmt.Errorf("此商品物料编码为空,请联系管理员!skuID:[%v]", v.ID) } } + // if jxOrder.OrderType == model.OrderTypeMatter { + + // } skuMap[v.ID] = v } var ( @@ -558,10 +561,14 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 sum int //申请物料的店的最近销量,以下会根据销量计算具体袋子的价格 flag = false //新店袋子拆分当个参数 ) - 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 @@ -570,13 +577,15 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 } for _, v := range skus { if storeSkuBind := storeSkuMap[v.SkuID]; storeSkuBind != nil { - 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{ From 73220fcf90fa669c9c006226e135188b59a4c391 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 11:50:31 +0800 Subject: [PATCH 4/5] tule --- business/partner/purchase/jx/localjx/order.go | 43 ++++++++++--------- 1 file changed, 23 insertions(+), 20 deletions(-) diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go index b95eadcfc..63d5016d3 100644 --- a/business/partner/purchase/jx/localjx/order.go +++ b/business/partner/purchase/jx/localjx/order.go @@ -617,7 +617,8 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 } } if jxSku != nil { - 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为物料订单袋子金额和数量处理 @@ -734,19 +735,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 @@ -865,10 +866,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 { @@ -900,8 +901,9 @@ func PickupGoods(order *model.GoodsOrder, isSelfDelivery bool, userName string) } func orderSolutionForWuLiao(order *model.GoodsOrder) (err error) { - 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() ) @@ -1084,7 +1086,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.OrderType == model.OrderTypeMatter { + if order.FromStoreID != 0 { + // if order.OrderType == model.OrderTypeMatter { if order.EclpOutID != "" { //表示是京西的物料订单的子订单(拆分后的订单) if len(order.VendorOrderID) == 16 && order.VendorID == model.VendorIDJX { From ada56d6ab0c192237553ac85a3b756967f7dcf6f 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:10:08 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/model/dao/dao_order.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/business/model/dao/dao_order.go b/business/model/dao/dao_order.go index ea744df7b..bbf21e4a4 100644 --- a/business/model/dao/dao_order.go +++ b/business/model/dao/dao_order.go @@ -1370,6 +1370,8 @@ func GetSupplySupportStoreSkus(db *DaoDB, fromDate, toDate time.Time, fromStoreI JOIN store_sku_bind d ON d.store_id = ? AND d.sku_id = c.sku_id AND d.deleted_at = ? JOIN sku e ON e.id = d.sku_id JOIN sku_name f ON f.id = e.name_id + WHERE status <> ? + AND stock <> ? ORDER BY c.count desc ` sqlParams := []interface{}{ @@ -1379,6 +1381,8 @@ func GetSupplySupportStoreSkus(db *DaoDB, fromDate, toDate time.Time, fromStoreI 6039481, //葱姜蒜 fromStoreID, storeID, utils.DefaultTimeValue, + model.StoreSkuBindStatusDontSale, + 0, } if err = GetRows(db, &getSupplySupportStoreSkusResult, sql, sqlParams); err == nil { return getSupplySupportStoreSkusResult, err