Merge branch 'jdshop' of https://e.coding.net/rosydev/jx-callback into jdshop

This commit is contained in:
richboo111
2023-07-13 10:46:24 +08:00
4 changed files with 20 additions and 11 deletions

View File

@@ -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("获取门店刷单记录错误")

View File

@@ -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
}

View File

@@ -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:

View File

@@ -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 = &param
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,