Merge remote-tracking branch 'origin/jdshop' into jxact
This commit is contained in:
@@ -215,7 +215,7 @@ func (c *OrderManager) OnOrderStatusChanged(vendorOrgCode string, orderStatus *m
|
||||
// }
|
||||
// } else {
|
||||
if order.NewEarningPrice == 0 || order.NewEarningPrice != (order.TotalShopMoney-waybill.DesiredFee)*int64(100-store.PayPercentage/2)/int64(100) {
|
||||
order.NewEarningPrice = (order.TotalShopMoney - waybill.DesiredFee) * int64(100-store.PayPercentage/2) / int64(100)
|
||||
order.NewEarningPrice = order.TotalShopMoney*int64(100-store.PayPercentage/2)/int64(100) - waybill.DesiredFee
|
||||
}
|
||||
// }
|
||||
}
|
||||
@@ -361,12 +361,16 @@ func ModifyOrderSkusStock(db *dao.DaoDB, order *model.GoodsOrder, isAdd bool) (e
|
||||
for _, sku := range skus {
|
||||
storeSkus, _ := dao.GetStoresSkusInfo(db, []int{jxutils.GetSaleStoreIDFromOrder(order)}, []int{sku.SkuID})
|
||||
if len(storeSkus) == 0 {
|
||||
globals.SugarLogger.Warnf("此订单商品没得storsku,%v,%v", order.VendorOrderID, sku.SkuID)
|
||||
if !isAdd {
|
||||
globals.SugarLogger.Warnf("此订单商品没得storsku,%v,%v", order.VendorOrderID, sku.SkuID)
|
||||
}
|
||||
continue
|
||||
}
|
||||
storeSku, stock := storeSkus[0], 0
|
||||
if storeSku.Stock == 0 {
|
||||
globals.SugarLogger.Warnf("此订单商品库存为0,%v,%v", order.VendorOrderID, sku.SkuID)
|
||||
if !isAdd {
|
||||
globals.SugarLogger.Warnf("此订单商品库存为0,%v,%v", order.VendorOrderID, sku.SkuID)
|
||||
}
|
||||
continue
|
||||
}
|
||||
if isAdd {
|
||||
@@ -1486,8 +1490,9 @@ func SendJdwlForJdsOrder(ctx *jxcontext.Context, vendorOrderID string) (err erro
|
||||
waybill = v
|
||||
}
|
||||
}
|
||||
handler := partner.DeliveryPlatformHandlers[waybill.WaybillVendorID]
|
||||
err = handler.Handler.CancelWaybill(waybill, 0, "订单已发送其他物流")
|
||||
if handler := partner.GetDeliveryPlatformFromVendorID(model.VendorIDJDWL); handler != nil {
|
||||
err = handler.Handler.CancelWaybill(waybill, 0, "订单已发送其他物流")
|
||||
}
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -1543,12 +1548,13 @@ func SendJdwlForJdsOrder(ctx *jxcontext.Context, vendorOrderID string) (err erro
|
||||
dao.UpdateEntity(db, order, "EclpOutID")
|
||||
vendorWaybillID = eclpSoNo
|
||||
} else {
|
||||
handler := partner.DeliveryPlatformHandlers[model.VendorIDJDWL]
|
||||
waybill2, err := handler.Handler.CreateWaybill(order, 0)
|
||||
if err != nil {
|
||||
return err
|
||||
if handler := partner.GetDeliveryPlatformFromVendorID(model.VendorIDJDWL); handler != nil {
|
||||
waybill2, err := handler.Handler.CreateWaybill(order, 0)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
vendorWaybillID = waybill2.VendorWaybillID
|
||||
}
|
||||
vendorWaybillID = waybill2.VendorWaybillID
|
||||
}
|
||||
jdshop.CurPurchaseHandler.OrderExport(ctx, vendorOrderID, vendorWaybillID, false)
|
||||
return err
|
||||
|
||||
@@ -736,8 +736,31 @@ func (s *DefScheduler) createWaybillOn3rdProviders(savedOrderInfo *WatchOrderInf
|
||||
// if order.VendorID == model.VendorIDJX {
|
||||
// excludeVendorIDs = append(excludeVendorIDs, model.VendorIDMTPS)
|
||||
// }
|
||||
if _, err = s.CreateWaybillOnProviders4SavedOrder(jxcontext.AdminCtx, savedOrderInfo, nil, excludeVendorIDs, false, maxDeliveryFee); err == nil {
|
||||
savedOrderInfo.retryCount++
|
||||
if savedOrderInfo != nil {
|
||||
//TODO 2020-07-21 发单时间要在门店的营业时间内
|
||||
if savedOrderInfo.storeDetail != nil {
|
||||
if savedOrderInfo.storeDetail.OpenTime1 != 0 && savedOrderInfo.storeDetail.CloseTime1 != 0 {
|
||||
time1 := jxutils.JxOperationTime2TimeByDate(savedOrderInfo.storeDetail.OpenTime1, time.Now())
|
||||
time2 := jxutils.JxOperationTime2TimeByDate(savedOrderInfo.storeDetail.CloseTime1, time.Now())
|
||||
if time.Now().Sub(time1) < 0 || time.Now().Sub(time2) > 0 {
|
||||
if savedOrderInfo.storeDetail.OpenTime2 != 0 && savedOrderInfo.storeDetail.CloseTime2 != 0 {
|
||||
time3 := jxutils.JxOperationTime2TimeByDate(savedOrderInfo.storeDetail.OpenTime2, time.Now())
|
||||
time4 := jxutils.JxOperationTime2TimeByDate(savedOrderInfo.storeDetail.CloseTime2, time.Now())
|
||||
if time.Now().Sub(time3) < 0 || time.Now().Sub(time4) > 0 {
|
||||
err = fmt.Errorf("不在门店营业时间范围内!")
|
||||
}
|
||||
} else {
|
||||
err = fmt.Errorf("不在门店营业时间范围内!")
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if err == nil {
|
||||
if _, err = s.CreateWaybillOnProviders4SavedOrder(jxcontext.AdminCtx, savedOrderInfo, nil, excludeVendorIDs, false, maxDeliveryFee); err == nil {
|
||||
savedOrderInfo.retryCount++
|
||||
}
|
||||
}
|
||||
} else {
|
||||
errMsg := fmt.Sprintf("订单:%s已经自动创建过了%d次运单,仍然无法配送,请关注!", order.VendorOrderID, savedOrderInfo.retryCount)
|
||||
|
||||
@@ -87,28 +87,6 @@ func (s *DefScheduler) canOrderCreateWaybillNormally(order *model.GoodsOrder, sa
|
||||
} else if model.IsOrderHaveWaybill(order) {
|
||||
err = fmt.Errorf("当前订单%s已经有了有效的承运人%s了", order.VendorOrderID, jxutils.GetVendorName(order.WaybillVendorID))
|
||||
}
|
||||
if savedOrderInfo != nil {
|
||||
//TODO 2020-07-21 发单时间要在门店的营业时间内
|
||||
if savedOrderInfo.storeDetail != nil {
|
||||
if savedOrderInfo.storeDetail.OpenTime1 != 0 && savedOrderInfo.storeDetail.CloseTime1 != 0 {
|
||||
time1 := jxutils.JxOperationTime2TimeByDate(savedOrderInfo.storeDetail.OpenTime1, time.Now())
|
||||
time2 := jxutils.JxOperationTime2TimeByDate(savedOrderInfo.storeDetail.CloseTime1, time.Now())
|
||||
if time.Now().Sub(time1) < 0 || time.Now().Sub(time2) > 0 {
|
||||
if savedOrderInfo.storeDetail.OpenTime2 != 0 && savedOrderInfo.storeDetail.CloseTime2 != 0 {
|
||||
time3 := jxutils.JxOperationTime2TimeByDate(savedOrderInfo.storeDetail.OpenTime2, time.Now())
|
||||
time4 := jxutils.JxOperationTime2TimeByDate(savedOrderInfo.storeDetail.CloseTime2, time.Now())
|
||||
if time.Now().Sub(time3) < 0 || time.Now().Sub(time4) > 0 {
|
||||
// globals.SugarLogger.Warnf("createWaybillOn3rdProviders return orderID: %s,不在门店营业时间范围内1!", order.VendorOrderID)
|
||||
err = fmt.Errorf("不在门店营业时间范围内!")
|
||||
}
|
||||
} else {
|
||||
// globals.SugarLogger.Warnf("createWaybillOn3rdProviders return orderID: %s,不在门店营业时间范围内2!", order.VendorOrderID)
|
||||
err = fmt.Errorf("不在门店营业时间范围内!")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user