diff --git a/business/jxcallback/auto_delivery/auto_delivery.go b/business/jxcallback/auto_delivery/auto_delivery.go index aaff62cb6..7aa7bce6e 100644 --- a/business/jxcallback/auto_delivery/auto_delivery.go +++ b/business/jxcallback/auto_delivery/auto_delivery.go @@ -95,6 +95,9 @@ func AutoSettingFakeDelivery() { storeList := strings.Split(configList[0].Value, ",") for _, v := range storeList { storeIdAndVendorId := strings.Split(v, "-") + if len(storeIdAndVendorId) == model.NO { + continue + } orderList, err := dao.GetOrderListByStoreList(db, []int64{utils.Str2Int64(storeIdAndVendorId[0])}, utils.Str2Int(storeIdAndVendorId[1])) if err != nil { globals.SugarLogger.Errorf("获取门店刷单记录错误") diff --git a/business/jxcallback/scheduler/defsch/defsch_ext.go b/business/jxcallback/scheduler/defsch/defsch_ext.go index 6ad9d0144..b63154176 100644 --- a/business/jxcallback/scheduler/defsch/defsch_ext.go +++ b/business/jxcallback/scheduler/defsch/defsch_ext.go @@ -162,7 +162,7 @@ func (s *DefScheduler) CreateWaybillOnProviders4SavedOrder(ctx *jxcontext.Contex // 检查订单是否在配送状态 waybills, err := dao.GetWaybills(dao.GetDB(), order.VendorOrderID, nil) for _, v := range waybills { - if v.Status >= model.OrderStatusDelivering { + if v.Status >= model.OrderStatusDelivering && v.Status != model.OrderStatusCanceled && v.Status != model.OrderStatusFinished { err = fmt.Errorf("订单已经在配送中,无法创建运单,有疑问请联系管理员") break } diff --git a/business/partner/delivery/mtps/waybill.go b/business/partner/delivery/mtps/waybill.go index 5354973e3..045a1ce83 100644 --- a/business/partner/delivery/mtps/waybill.go +++ b/business/partner/delivery/mtps/waybill.go @@ -99,6 +99,7 @@ func (c *DeliveryHandler) onWaybillMsg(msg *mtpsapi.CallbackOrderMsg) (retVal *m } } + globals.SugarLogger.Debugf("===========msg := %s", utils.Format4Output(msg, false)) store, _ := dao.GetStoreDetail(dao.GetDB(), goodsOrder.JxStoreID, goodsOrder.VendorID, goodsOrder.VendorOrgCode) switch msg.Status { case mtpsapi.OrderStatusWaitingForSchedule: diff --git a/business/partner/purchase/tao_vegetable/store_sku2.go b/business/partner/purchase/tao_vegetable/store_sku2.go index 710765b42..d2ad605d8 100644 --- a/business/partner/purchase/tao_vegetable/store_sku2.go +++ b/business/partner/purchase/tao_vegetable/store_sku2.go @@ -294,12 +294,12 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku SkuName: utils.String2Pointer(storeSku.SkuName), StorageType: utils.Int64ToPointer(tao_vegetable.CreateSkuStorageType), SuggestedPrice: price, - Weight: utils.String2Pointer(utils.Float32ToStr(storeSku.SpecQuality)), + Weight: utils.String2Pointer(utils.Int2Str(storeSku.Weight)), ShelfLife: utils.Int64ToPointer(tao_vegetable.CreateShelfLife), - NetContent: utils.String2Pointer(utils.Float32ToStr(storeSku.SpecQuality)), + NetContent: utils.String2Pointer(utils.Int2Str(storeSku.Weight)), SaleUnit: utils.String2Pointer("份"), LifeStatus: utils.String2Pointer(tao_vegetable.CreateSkuLeafStatus), - SaleSpec: utils.String2Pointer(fmt.Sprintf("%.2f*1%s", storeSku.SpecQuality, storeSku.Unit)), + SaleSpec: utils.String2Pointer(fmt.Sprintf("%d %s*1%s", storeSku.Weight, "g", storeSku.Unit)), StepQuantity: utils.Int64ToPointer(model.YES), // 每次购买至少增加一个购买单位 SubTitle: utils.String2Pointer("同城包邮"), SubTitle1: utils.String2Pointer("一小时速达"), @@ -339,6 +339,7 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku } else { sku.PurchaseQuantity = utils.Int64ToPointer(int64(storeSku.MinOrderCount)) // 起购单位 } + sku.WeightFlag = utils.Int64ToPointer(tao_vegetable.CreateSkuWeightFlagNo) sku.AvgWeight = utils.String2Pointer("1") // (重量) sku.PreMinusWeight = utils.String2Pointer("1") // 每个购买单位重量,预扣重量 @@ -359,9 +360,7 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku }, }, } - param = append(param, sku) - if (index+model.YES)%tao_vegetable.MAXHandleCount == model.NO || index+model.YES == totalCount { createPram.ParamList = ¶m result, err := api.AddStoreSku(createPram) @@ -385,10 +384,15 @@ func createTaoVegetable(ctx *jxcontext.Context, api *tao_vegetable.API, storeSku if k, ok := vendorSkuIdMap[utils.Int2Str(v.SkuID)]; ok { v.VendorSkuID = k successSku = append(successSku, v.SkuID) + } else { + v.VendorSkuID = "0" + v.SkuSyncStatus = 59 } } failedListStock := updateStoreSkusStockByCreate(ctx, api, storeID, vendorStoreID, successSku) failedList = append(failedList, failedListStock...) + globals.SugarLogger.Debugf("failedList := %s", utils.Format4Output(failedList, false)) + globals.SugarLogger.Debugf("storeSkuList := %s", utils.Format4Output(storeSkuList, false)) return failedList, nil } @@ -732,17 +736,18 @@ func SelectStoreSkuListByFoodList(storeSkuList interface{}, foodList []tao_veget successMap = make(map[string]string) if len(foodList) > 0 { for _, v := range foodList { - foodMap[v.SkuID] = v.ErrMsg if v.ProductID != "" { successMap[v.SkuID] = v.ProductID + } else { + foodMap[v.SkuID] = v.ErrMsg } } if storeSkuLists, ok := storeSkuList.([]*partner.StoreSkuInfo); ok { for _, v := range storeSkuLists { - if foodMap[v.VendorSkuID] != "" { + if foodMap[utils.Int2Str(v.SkuID)] != "" { foodFailed := &partner.StoreSkuInfoWithErr{ StoreSkuInfo: v, - ErrMsg: foodMap[v.VendorSkuID], + ErrMsg: foodMap[utils.Int2Str(v.SkuID)], StoreID: storeID, VendoreName: vendorName, SyncType: syncType, @@ -753,7 +758,7 @@ func SelectStoreSkuListByFoodList(storeSkuList interface{}, foodList []tao_veget } if storeSkuLists, ok := storeSkuList.([]*dao.StoreSkuSyncInfo); ok { for _, v := range storeSkuLists { - if foodMap[v.VendorSkuID] != "" { + if foodMap[utils.Int2Str(v.SkuID)] != "" { storeSkuInfo := &partner.StoreSkuInfo{ SkuID: v.SkuID, VendorSkuID: v.VendorSkuID, @@ -764,7 +769,7 @@ func SelectStoreSkuListByFoodList(storeSkuList interface{}, foodList []tao_veget } foodFailed := &partner.StoreSkuInfoWithErr{ StoreSkuInfo: storeSkuInfo, - ErrMsg: foodMap[v.VendorSkuID], + ErrMsg: foodMap[utils.Int2Str(v.SkuID)], StoreID: storeID, VendoreName: vendorName, SyncType: syncType,