1'
This commit is contained in:
@@ -62,7 +62,7 @@ func (c *BaseScheduler) CreateWaybillOnProviders(ctx *jxcontext.Context, order *
|
|||||||
}
|
}
|
||||||
err = nil
|
err = nil
|
||||||
} else if errList.GetErrListAsOne() == nil {
|
} else if errList.GetErrListAsOne() == nil {
|
||||||
err = fmt.Errorf("orderID:%s订单发三方配送亏损超过6元/当前订单配送方式不是门店自送/没有绑定有效的三方配送门店", order.VendorOrderID)
|
err = fmt.Errorf("orderID:%s过订单发三方配送亏损超6元/当前订单配送方式不是门店自送/没有绑定有效的三方配送门店", order.VendorOrderID)
|
||||||
} else {
|
} else {
|
||||||
err = fmt.Errorf("orderID:%s所有运单失败:%s", order.VendorOrderID, errList.GetErrListAsOne().Error())
|
err = fmt.Errorf("orderID:%s所有运单失败:%s", order.VendorOrderID, errList.GetErrListAsOne().Error())
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -891,7 +891,7 @@ func (s *DefScheduler) createWaybillOn3rdProviders(savedOrderInfo *WatchOrderInf
|
|||||||
// excludeVendorIDs = append(excludeVendorIDs, model.VendorIDMTPS)
|
// excludeVendorIDs = append(excludeVendorIDs, model.VendorIDMTPS)
|
||||||
// }
|
// }
|
||||||
//TODO 2020-08-18 饿百美团订单暂时不自动发送三方
|
//TODO 2020-08-18 饿百美团订单暂时不自动发送三方
|
||||||
if order.VendorID == model.VendorIDMTWM || order.VendorID == model.VendorIDEBAI || order.VendorID == model.VendorIDJD {
|
if order.VendorID == model.VendorIDMTWM || order.VendorID == model.VendorIDEBAI || order.VendorID == model.VendorIDJD || order.VendorID == model.VendorIDDD {
|
||||||
if order.DeliveryType != model.OrderDeliveryTypeStoreSelf {
|
if order.DeliveryType != model.OrderDeliveryTypeStoreSelf {
|
||||||
excludeVendorIDs = append(excludeVendorIDs, waybillVendorIDs...)
|
excludeVendorIDs = append(excludeVendorIDs, waybillVendorIDs...)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -214,37 +214,14 @@ func (s *DefScheduler) CreateWaybillOnProviders4SavedOrder(ctx *jxcontext.Contex
|
|||||||
partner.CurStoreAcctManager.InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order), int(newPrice)-lastFee, partner.StoreAcctTypeExpendCreateWaybill2ndMore, order.VendorOrderID, "", expend.ID) //int(newPrice)-lastFee
|
partner.CurStoreAcctManager.InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order), int(newPrice)-lastFee, partner.StoreAcctTypeExpendCreateWaybill2ndMore, order.VendorOrderID, "", expend.ID) //int(newPrice)-lastFee
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} /*else { // 品牌发单,品牌支出运费
|
|
||||||
if storeAcct.AccountBalance > int(newPrice) {
|
|
||||||
if int(newPrice) > lastFee {
|
|
||||||
// 品牌支出费用
|
|
||||||
partner.CurStoreAcctManager.InsertBrandBill(jxcontext.AdminCtx, storeList.BrandID, int(newPrice), model.BrandBillTypeExpend, model.BrandBillFeeTypeDelivery, order.VendorOrderID, order.VendorWaybillID)
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}*/
|
|
||||||
|
|
||||||
} else { // 新订单的发单记录,门店发单扣门店,品牌发单扣品牌
|
} else { // 新订单的发单记录,门店发单扣门店,品牌发单扣品牌
|
||||||
if len(courierVendorIDs) == 1 {
|
if len(courierVendorIDs) == 1 {
|
||||||
courierVendorID := courierVendorIDs[0]
|
courierVendorID := courierVendorIDs[0]
|
||||||
if _, ok := deliveryFeeMap[courierVendorID]; ok {
|
if _, ok := deliveryFeeMap[courierVendorID]; ok {
|
||||||
//if storeList.BrandID != scheduler.JXC4B_SHOP && storeList.BrandID != scheduler.JXC4B_RAND_JXGY { // 非京西品牌,先扣门店在扣品牌
|
|
||||||
//if storeAcct.AccountBalance > int(model.Waybill{}.DesiredFee) {
|
|
||||||
if order.CreateDeliveryType == model.YES {
|
if order.CreateDeliveryType == model.YES {
|
||||||
err = partner.CurStoreAcctManager.InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order), int(deliveryFeeMap[courierVendorID].DeliveryFee), partner.StoreAcctTypeExpendCreateWaybillEx, order.VendorOrderID, "", 0) //int(newPrice)-lastFee
|
err = partner.CurStoreAcctManager.InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order), int(deliveryFeeMap[courierVendorID].DeliveryFee), partner.StoreAcctTypeExpendCreateWaybillEx, order.VendorOrderID, "", 0) //int(newPrice)-lastFee
|
||||||
globals.SugarLogger.Debugf("InsertStoreAcctExpendAndUpdateStoreAcctBalance 238 err := %v", err)
|
}
|
||||||
} /*else {
|
|
||||||
partner.CurStoreAcctManager.InsertBrandBill(jxcontext.AdminCtx, storeList.BrandID, int(bill.DesiredFee), model.BrandBillTypeExpend, model.BrandBillFeeTypeDelivery, bill.VendorOrderID, bill.VendorWaybillID)
|
|
||||||
}*/
|
|
||||||
//} /*else if result > int(model.Waybill{}.DesiredFee) {
|
|
||||||
// 品牌支出费用
|
|
||||||
// partner.CurStoreAcctManager.InsertBrandBill(jxcontext.AdminCtx, storeList.BrandID, int(model.Waybill{}.DesiredFee), model.BrandBillTypeExpend, model.BrandBillFeeTypeDelivery, order.VendorOrderID, order.VendorWaybillID)
|
|
||||||
//}*/
|
|
||||||
//} else { // 京西品牌
|
|
||||||
// if storeAcct.AccountBalance > int(model.Waybill{}.DesiredFee) {
|
|
||||||
// // 门店支出费用
|
|
||||||
// partner.CurStoreAcctManager.InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order), int(model.Waybill{}.DesiredFee), partner.StoreAcctTypeExpendCreateWaybill2ndMore, order.VendorOrderID, expend.ID) //int(newPrice)-lastFee
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
}
|
}
|
||||||
} else if len(courierVendorIDs) == 0 {
|
} else if len(courierVendorIDs) == 0 {
|
||||||
var maxFee int64
|
var maxFee int64
|
||||||
@@ -254,7 +231,6 @@ func (s *DefScheduler) CreateWaybillOnProviders4SavedOrder(ctx *jxcontext.Contex
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
err = partner.CurStoreAcctManager.InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order), int(maxFee), partner.StoreAcctTypeExpendCreateWaybillEx, order.VendorOrderID, "", 0) //int(maxFee)
|
err = partner.CurStoreAcctManager.InsertStoreAcctExpendAndUpdateStoreAcctBalance(ctx, jxutils.GetSaleStoreIDFromOrder(order), int(maxFee), partner.StoreAcctTypeExpendCreateWaybillEx, order.VendorOrderID, "", 0) //int(maxFee)
|
||||||
globals.SugarLogger.Debugf("InsertStoreAcctExpendAndUpdateStoreAcctBalance 260 err := %v", err)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -273,7 +249,6 @@ func (s *DefScheduler) CreateWaybillOnProviders4SavedOrder(ctx *jxcontext.Contex
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
err = partner.CurStoreAcctManager.InsertBrandBill(jxcontext.AdminCtx, storeList.BrandID, int(maxFee), model.BrandBillTypeExpend, model.BrandBillFeeTypeDelivery, order.VendorOrderID, order.VendorWaybillID)
|
err = partner.CurStoreAcctManager.InsertBrandBill(jxcontext.AdminCtx, storeList.BrandID, int(maxFee), model.BrandBillTypeExpend, model.BrandBillFeeTypeDelivery, order.VendorOrderID, order.VendorWaybillID)
|
||||||
globals.SugarLogger.Debugf("InsertStoreAcctExpendAndUpdateStoreAcctBalance 260 err := %v", err)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -358,7 +358,6 @@ func (c *DeliveryHandler) CreateWaybill(order *model.GoodsOrder, maxDeliveryFee
|
|||||||
}
|
}
|
||||||
// 重新发送订单
|
// 重新发送订单
|
||||||
result, err = api.DadaAPI.ReaddOrder(billParams)
|
result, err = api.DadaAPI.ReaddOrder(billParams)
|
||||||
globals.SugarLogger.Debugf("重新发送订单多次发单======== := %s", utils.Format4Output(result, false))
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@@ -368,7 +367,6 @@ func (c *DeliveryHandler) CreateWaybill(order *model.GoodsOrder, maxDeliveryFee
|
|||||||
if result, err = api.DadaAPI.QueryDeliverFee(billParams); err != nil {
|
if result, err = api.DadaAPI.QueryDeliverFee(billParams); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("查询达达订单费用(第一次发单)======== := %s", utils.Format4Output(result, false))
|
|
||||||
// 阀值警报
|
// 阀值警报
|
||||||
if err = delivery.CallCreateWaybillPolicy(jxutils.StandardPrice2Int(result.Fee), maxDeliveryFee, order, model.VendorIDDada); err != nil {
|
if err = delivery.CallCreateWaybillPolicy(jxutils.StandardPrice2Int(result.Fee), maxDeliveryFee, order, model.VendorIDDada); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
@@ -377,7 +375,6 @@ func (c *DeliveryHandler) CreateWaybill(order *model.GoodsOrder, maxDeliveryFee
|
|||||||
if err = api.DadaAPI.AddOrderAfterQuery(result.DeliveryNo); err != nil {
|
if err = api.DadaAPI.AddOrderAfterQuery(result.DeliveryNo); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("重新发送订单======== := %s", utils.Format4Output(result, false))
|
|
||||||
}
|
}
|
||||||
if result == nil {
|
if result == nil {
|
||||||
return nil, errors.New("达达配送,平台调用错误,无订单数据返回")
|
return nil, errors.New("达达配送,平台调用错误,无订单数据返回")
|
||||||
|
|||||||
@@ -210,6 +210,17 @@ func OnWaybillMsg(msg *fnpsapi.OrderStatusNottify, resultParam *fnpsapi.ShortSta
|
|||||||
if err := utils.Map2StructByJson(msg.Param, cc, true); err != nil {
|
if err := utils.Map2StructByJson(msg.Param, cc, true); err != nil {
|
||||||
return fnpsapi.Err2CallbackResponse(err, "")
|
return fnpsapi.Err2CallbackResponse(err, "")
|
||||||
}
|
}
|
||||||
|
// 多次取消,只处理第一次
|
||||||
|
if cc.OrderStatus == fnpsapi.OrderStatusAcceptCacle {
|
||||||
|
bill, err := partner.CurOrderManager.LoadWaybill(utils.Int64ToStr(cc.OrderId), model.VendorIDFengNiao)
|
||||||
|
if err != nil {
|
||||||
|
return fnpsapi.Err2CallbackResponse(err, "")
|
||||||
|
}
|
||||||
|
if bill.Status == model.OrderStatusCanceled {
|
||||||
|
return fnpsapi.Err2CallbackResponse(nil, "")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
var good *model.GoodsOrder
|
var good *model.GoodsOrder
|
||||||
sql := `SELECT * FROM goods_order WHERE vendor_order_id = ? ORDER BY order_created_at DESC LIMIT 1 OFFSET 0`
|
sql := `SELECT * FROM goods_order WHERE vendor_order_id = ? ORDER BY order_created_at DESC LIMIT 1 OFFSET 0`
|
||||||
sqlParams := []interface{}{cc.PartnerOrderCode}
|
sqlParams := []interface{}{cc.PartnerOrderCode}
|
||||||
@@ -256,6 +267,7 @@ func OnWaybillMsg(msg *fnpsapi.OrderStatusNottify, resultParam *fnpsapi.ShortSta
|
|||||||
order.Status = model.WaybillStatusDelivered
|
order.Status = model.WaybillStatusDelivered
|
||||||
case fnpsapi.OrderStatusAcceptCacle: // 4取消订单
|
case fnpsapi.OrderStatusAcceptCacle: // 4取消订单
|
||||||
order.Status = model.WaybillStatusCanceled
|
order.Status = model.WaybillStatusCanceled
|
||||||
|
order.VendorStatus = utils.Int2Str(fnpsapi.OrderStatusAcceptCacle)
|
||||||
case fnpsapi.OrderStatusException: // 5 异常
|
case fnpsapi.OrderStatusException: // 5 异常
|
||||||
order.Status = model.WaybillStatusDeliverFailed // 22
|
order.Status = model.WaybillStatusDeliverFailed // 22
|
||||||
default:
|
default:
|
||||||
|
|||||||
Reference in New Issue
Block a user