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

This commit is contained in:
richboo111
2023-08-30 15:06:25 +08:00
20 changed files with 356 additions and 65 deletions

View File

@@ -300,7 +300,8 @@ func OnWaybillMsg(msg *fnpsapi.OrderStatusNottify, resultParam *fnpsapi.ShortSta
order.Status = model.WaybillStatusCanceled
order.VendorStatus = utils.Int2Str(fnpsapi.OrderStatusAcceptCacle)
case fnpsapi.OrderStatusException: // 5 异常
order.Status = model.WaybillStatusDeliverFailed // 22
order.Status = model.WaybillStatusCanceled // 22
order.VendorStatus = utils.Int2Str(fnpsapi.OrderStatusException)
default:
globals.SugarLogger.Warnf("onWaybillMsg unknown msg:%v", msg)
}

View File

@@ -433,8 +433,12 @@ func UpdateFakeWayBillToTiktok() {
randNumber, _ := rand.Int(rand.Reader, big.NewInt(640))
randTime := randNumber.Int64()
if randTime < 66 {
randTime += 60
if randTime < 300 {
randTime += 300
}
// 推送完成时加多加十分钟,相当于是配送中状态多存货十分钟
if fakeWayBill[i].Status == model.WaybillStatusDelivered {
randTime += 1200
}
fakeWayBill[i].StatusTime = time.Now().Add(time.Duration(randTime) * time.Second).Local()
fakeWayBill[i].WaybillFinishedAt = time.Now()

View File

@@ -92,6 +92,8 @@ type IPurchasePlatformOrderHandler interface {
// 获取各个平台订单的结算信息
GetOrderSettleAccounts(order *model.GoodsOrder) (int64, error)
// GetPlatformLogisticsFee 获取美团自配送订单的配送费
GetPlatformLogisticsFee(order *model.GoodsOrder) (int64, error)
}
type IAddWaybillTip interface {

View File

@@ -658,10 +658,42 @@ func (c *PurchaseHandler) GetOrderRealMobile(ctx *jxcontext.Context, order *mode
func (c *PurchaseHandler) AgreeOrRefuseCancel(ctx *jxcontext.Context, order *model.GoodsOrder, isAcceptIt bool, reason string) (err error) {
if globals.EnableEbaiStoreWrite {
param := &ebaiapi.RefundOrderExamine{
ReverseOrderId: "",
OrderId: order.VendorOrderID,
IdempotentId: utils.Int64ToStr(time.Now().UnixNano()),
ActionType: ebaiapi.RefundTypeRefuse,
ReasonRemarks: reason,
}
refundProductList := make([]*ebaiapi.RefundProductList, 0, 0)
date, _ := api.EbaiAPI.GetReverseOrder(order.VendorOrderID)
for _, v := range date {
v2 := v.(map[string]interface{})
refundProduct := &ebaiapi.RefundProductList{
SubBizOrderId: v2["sub_biz_order_id"].(string),
PlatformSkuId: utils.Int64ToStr(utils.Interface2Int64WithDefault(v2["platform_sku_id"], 0)),
}
switch utils.MustInterface2Int64(v2["fund_calculate_type"]) {
case 0:
refundProduct.Number = utils.Int64ToStr(utils.MustInterface2Int64(v2["refund_quantity"]))
case 1:
refundProduct.RefundAmount = utils.Int64ToStr(utils.MustInterface2Int64(v2["refund_user_amount"]))
}
refundProductList = append(refundProductList, refundProduct)
if param.ReverseOrderId == "" {
param.ReverseOrderId = v2["refund_order_id"].(string)
}
}
param.RefundProductList = refundProductList
if isAcceptIt {
err = api.EbaiAPI.OrderAgreeRefund(order.VendorOrderID)
err = api.EbaiAPI.OrderAgreeRefund(param)
} else {
err = api.EbaiAPI.OrderDisagreeRefund(order.VendorOrderID, reason)
if reason == "" {
return fmt.Errorf("拒绝退单时,请填写拒单原因")
}
param.ReasonCode = "7001"
err = api.EbaiAPI.OrderDisagreeRefund(param)
}
}
return err
@@ -804,3 +836,8 @@ func (c *PurchaseHandler) GetOrderSettleAccounts(order *model.GoodsOrder) (int64
return utils.ForceInterface2Int64(orderMap["shop_fee"]), nil
}
// GetPlatformLogisticsFee 获取自配送订单的配送费
func (c *PurchaseHandler) GetPlatformLogisticsFee(order *model.GoodsOrder) (int64, error) {
return 0, nil
}

View File

@@ -4,6 +4,7 @@ import (
"errors"
"fmt"
"strings"
"time"
"git.rosy.net.cn/baseapi/platformapi/ebaiapi"
"git.rosy.net.cn/baseapi/utils"
@@ -225,11 +226,48 @@ func (c *PurchaseHandler) callbackAfsMsg2Status(msg *ebaiapi.CallbackMsg) (order
func (c *PurchaseHandler) AgreeOrRefuseRefund(ctx *jxcontext.Context, order *model.AfsOrder, approveType int, reason string) (err error) {
if globals.EnableEbaiStoreWrite {
if approveType == partner.AfsApproveTypeRefused {
err = api.EbaiAPI.OrderDisagreeReturnGoods(order.VendorOrderID, order.AfsOrderID, reason)
if reason == "" {
return fmt.Errorf("拒绝退单时请填写原因")
}
param := &ebaiapi.RefundOrderExamine{
ReverseOrderId: order.AfsOrderID,
OrderId: order.VendorOrderID,
IdempotentId: utils.Int64ToStr(time.Now().UnixNano()),
ActionType: ebaiapi.RefundTypeRefuseGoods,
ReasonCode: "7001",
ReasonRemarks: reason,
}
refundProductList := make([]*ebaiapi.RefundProductList, 0, 0)
date, _ := api.EbaiAPI.GetReverseOrder(order.VendorOrderID)
for _, v := range date {
v2 := v.(map[string]interface{})
refundProduct := &ebaiapi.RefundProductList{
SubBizOrderId: v2["sub_biz_order_id"].(string),
PlatformSkuId: utils.Int64ToStr(utils.Interface2Int64WithDefault(v2["platform_sku_id"], 0)),
}
switch utils.MustInterface2Int64(v2["fund_calculate_type"]) {
case 0:
refundProduct.Number = utils.Int64ToStr(utils.MustInterface2Int64(v2["refund_quantity"]))
case 1:
refundProduct.RefundAmount = utils.Int64ToStr(utils.MustInterface2Int64(v2["refund_user_amount"]))
}
refundProductList = append(refundProductList, refundProduct)
}
param.RefundProductList = refundProductList
err = api.EbaiAPI.OrderDisagreeReturnGoods(param)
} else if approveType == partner.AfsApproveTypeRefusedToRefundMoney {
return errors.New("此平台暂时不支持")
} else {
err = api.EbaiAPI.OrderAgreeReturnGoods(order.VendorOrderID, order.AfsOrderID)
param := &ebaiapi.RefundOrderExamine{
ReverseOrderId: order.AfsOrderID,
OrderId: order.VendorOrderID,
IdempotentId: utils.Int64ToStr(time.Now().UnixNano()),
ActionType: ebaiapi.RefundTypeAgreeGoods,
ReasonCode: "",
ReasonRemarks: reason,
}
err = api.EbaiAPI.OrderAgreeReturnGoods(param)
}
}
return err
@@ -250,19 +288,57 @@ func (c *PurchaseHandler) RefundOrder(ctx *jxcontext.Context, order *model.Goods
// 发起部分退款 售后/售中
func (c *PurchaseHandler) PartRefundOrder(ctx *jxcontext.Context, order *model.GoodsOrder, refundSkuList []*model.OrderSku, reason string) (err error) {
if globals.EnableEbaiStoreWrite {
//获取afsOrder
var afsOrderInfo *model.AfsOrder
result, err := api.EbaiAPI.OrderPartRefundGet(order.VendorOrderID)
if err != nil {
return err
}
afsOrderInfo = CurPurchaseHandler.AfsOrderDetail2Financial(result)
//售后部分多次退款
if order.Status > model.OrderStatusEndBegin {
//获取afsOrder
var afsOrderInfo *model.AfsOrder
result, err := api.EbaiAPI.OrderPartRefundGet(order.VendorOrderID)
if err != nil {
return err
param := &ebaiapi.RefundOrderExamine{
ReverseOrderId: afsOrderInfo.AfsOrderID,
OrderId: afsOrderInfo.VendorOrderID,
IdempotentId: utils.Int64ToStr(time.Now().UnixNano()),
ActionType: ebaiapi.RefundTypeAgree,
ReasonCode: "",
ReasonRemarks: reason,
}
afsOrderInfo = CurPurchaseHandler.AfsOrderDetail2Financial(result)
if err := api.EbaiAPI.OrderAgreePartRefund(afsOrderInfo.VendorOrderID, orderSkus2AfsSkus(refundSkuList), afsOrderInfo.AfsOrderID); err != nil {
return err
date, _ := api.EbaiAPI.GetReverseOrder(order.VendorOrderID)
refundProductList := make([]*ebaiapi.RefundProductList, 0, 0)
for _, v := range date {
v2 := v.(map[string]interface{})
refundProduct := &ebaiapi.RefundProductList{
SubBizOrderId: v2["sub_biz_order_id"].(string),
PlatformSkuId: utils.Int64ToStr(utils.Interface2Int64WithDefault(v2["platform_sku_id"], 0)),
}
switch utils.MustInterface2Int64(v2["fund_calculate_type"]) {
case 0:
refundProduct.Number = utils.Int64ToStr(utils.MustInterface2Int64(v2["refund_quantity"]))
case 1:
refundProduct.RefundAmount = utils.Int64ToStr(utils.MustInterface2Int64(v2["refund_user_amount"]))
}
refundProductList = append(refundProductList, refundProduct)
}
param.RefundProductList = refundProductList
err = api.EbaiAPI.OrderAgreePartRefund(param)
} else {
if reason == "" {
return fmt.Errorf("拒绝退单时,请填写拒单原因")
}
//param := &ebaiapi.RefundOrderExamine{
// ReverseOrderId: afsOrderInfo.AfsOrderID,
// OrderId: afsOrderInfo.VendorOrderID,
// IdempotentId: utils.Int64ToStr(time.Now().UnixNano()),
// ActionType: ebaiapi.RefundTypeRefuse,
// ReasonCode: "7001",
// ReasonRemarks: reason,
// RefundProductList: "",
//}
//err = api.EbaiAPI.OrderPartRefund(param)
if err := api.EbaiAPI.OrderPartRefund(order.VendorOrderID, orderSkus2AfsSkus(refundSkuList)); err != nil {
return err
}

View File

@@ -673,3 +673,8 @@ func (c *PurchaseHandler) GetOrderSettleAccounts(goods *model.GoodsOrder) (int64
}
return settlement.SettlementAmount, nil
}
// GetPlatformLogisticsFee 获取自配送订单的配送费
func (c *PurchaseHandler) GetPlatformLogisticsFee(order *model.GoodsOrder) (int64, error) {
return 0, nil
}

View File

@@ -333,3 +333,8 @@ func (c *PurchaseHandler) OrderLogisticsStatus(orderId int64) (int64, error) {
func (c *PurchaseHandler) GetOrderSettleAccounts(order *model.GoodsOrder) (int64, error) {
return 0, nil
}
// GetPlatformLogisticsFee 获取自配送订单的配送费
func (c *PurchaseHandler) GetPlatformLogisticsFee(order *model.GoodsOrder) (int64, error) {
return 0, nil
}

View File

@@ -160,3 +160,8 @@ func (c *PurchaseHandler) OrderLogisticsStatus(orderId int64) (int64, error) {
func (c *PurchaseHandler) GetOrderSettleAccounts(order *model.GoodsOrder) (int64, error) {
return 0, nil
}
// GetPlatformLogisticsFee 获取自配送订单的配送费
func (c *PurchaseHandler) GetPlatformLogisticsFee(order *model.GoodsOrder) (int64, error) {
return 0, nil
}

View File

@@ -3,6 +3,7 @@ package mtwm
import (
"errors"
"fmt"
"git.rosy.net.cn/baseapi/platformapi/mtpsapi"
"math"
"net/url"
"regexp"
@@ -395,6 +396,15 @@ func (c *PurchaseHandler) onOrderMsg(msg *mtwmapi.CallbackMsg) (response *mtwmap
c.OnOrderDetail(orderMap, partner.UpdatedPeration)
}
})
// 美团订单完成时,获取跑腿费用
if fee, feeErr := partner.GetPurchasePlatformFromVendorID(order.VendorID).GetPlatformLogisticsFee(order); feeErr != nil {
bill, err := partner.CurOrderManager.LoadWaybill(order.VendorOrderID, model.VendorIDMTWM)
if bill == nil && err == nil {
bill.ActualFee = fee
bill.DesiredFee = fee
dao.UpdateEntity(dao.GetDB(), bill, "ActualFee", "DesiredFee")
}
}
}
}
@@ -514,13 +524,36 @@ func (c *PurchaseHandler) AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptI
}
func (c *PurchaseHandler) PickupGoods(order *model.GoodsOrder, isSelfDelivery bool, userName string) (err error) {
isSelfDelivery = model.IsOrderDeliveryByStore(order) || model.IsOrderDeliveryBySelf(order)
if isSelfDelivery {
if globals.EnableMtwmStoreWrite {
err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").PreparationMealComplete(utils.Str2Int64(order.VendorOrderID))
}
api := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "")
orderDetail, err := api.OrderGetOrderDetail(utils.Str2Int64(order.VendorOrderID), false)
if err != nil {
return err
}
if err == nil || strings.Contains(err.Error(), "808") { // 配送类型只能为美团配送或美团企客配送 level:0, code:808
// 美团专送、快送、混合送、美团企客
logisticsCode := utils.Interface2String(orderDetail["logistics_code"])
isSelfDelivery = logisticsCode == mtwmapi.PeiSongTypeMTZSJM || logisticsCode == mtwmapi.PeiSongTypeMTZSZJ || logisticsCode == mtwmapi.PeiSongTypeKuaiDi || logisticsCode == mtwmapi.PeiSongTypeMixed || logisticsCode == mtwmapi.PeiSongTypeQiKe
//1001-专送加盟1002-专送(自建)
//2002-快送3001-混合送(专送+快送)
//4015-企客远距离配送
//此接口适用于美团专送、快送、混合送、美团企客的订单确认备货完成
//PeiSongTypeSelf = "0000" // 商家自配
//PeiSongTypeQuHuo = "0002" // 趣活
//PeiSongTypeDada = "0016" // 达达
//PeiSongTypeE = "0033" // E代送
//PeiSongTypeMTZSJM = "1001" // 美团专送-加盟
//PeiSongTypeMTZSZJ = "1002" // 美团专送-自建
//PeiSongTypeMTZSPT = "1003" // 美团跑腿(原众包)
//PeiSongTypeMTZSDL = "1004" // 美团专送-城市代理
//PeiSongTypeJiaoMa = "2001" // 角马
//PeiSongTypeKuaiDi = "2002" // 快送
//PeiSongTypeWholeCity = "2010" // 全城送
//PeiSongTypeMixed = "3001" // 混合送(即美团专送+快送)
if isSelfDelivery {
err = api.PreparationMealComplete(utils.Str2Int64(order.VendorOrderID))
}
if err == nil || strings.Contains(err.Error(), "808") {
// 配送类型只能为美团配送或美团企客配送 level:0, code:808
c.postFakeMsg(order.VendorOrderID, FakeMsgType, fakeFinishedPickup)
return nil
}
@@ -569,8 +602,42 @@ func (c *PurchaseHandler) SelfDeliverDelivering(order *model.GoodsOrder, userNam
// SelfDeliverDelivered 自配送订单送达
func (c *PurchaseHandler) SelfDeliverDelivered(order *model.GoodsOrder, userName string) (err error) {
if globals.EnableMtwmStoreWrite {
err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").OrderArrived(utils.Str2Int64(order.VendorOrderID))
api := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "")
db := dao.GetDB()
err = api.OrderArrived(utils.Str2Int64(order.VendorOrderID))
if err == nil {
riderInfo := &mtpsapi.RiderInfo{
OrderId: order.VendorOrderID,
ThirdCarrierOrderId: order.VendorOrderID,
CourierName: "",
CourierPhone: "",
LogisticsProviderCode: "10015", // 商家自建配送
LogisticsStatus: utils.Str2Int(mtwmapi.WaybillStatusDelivered),
Latitude: utils.Float64ToStr(jxutils.IntCoordinate2Standard(order.ConsigneeLat)), // 送达即为客户坐标
Longitude: utils.Float64ToStr(jxutils.IntCoordinate2Standard(order.ConsigneeLng)),
}
waybills, _ := dao.GetWaybills(db, order.VendorOrderID, nil)
if len(waybills) == model.NO {
store, _ := dao.GetStoreDetail(db, jxutils.GetSaleStoreIDFromOrder(order), order.VendorID, order.VendorOrgCode)
riderInfo.CourierName = "老板"
riderInfo.CourierPhone = store.Tel1
} else {
for _, v := range waybills {
if v.Status >= model.OrderStatusDelivering && v.Status <= model.OrderStatusFinished {
riderInfo.CourierName = v.CourierName
riderInfo.CourierPhone = v.CourierMobile
}
}
}
if riderInfo.CourierName == "" || riderInfo.CourierPhone == "" {
riderInfo.CourierName = "老板"
riderInfo.CourierPhone = "18048531223"
}
err = c.GetOrderRider(order.VendorOrgCode, order.VendorStoreID, utils.Struct2Map(riderInfo, "", true))
}
}
return err
}
@@ -849,7 +916,17 @@ func (c *PurchaseHandler) CancelLogisticsByWmOrderId(order *model.GoodsOrder, re
// 获取订单配送状态
func (c *PurchaseHandler) OrderLogisticsStatus(orderId int64) (int64, error) {
return 0, nil
orderInfo, err := dao.GetSimpleOrder(dao.GetDB(), utils.Int64ToStr(orderId))
if err != nil {
return 0, errors.New("获取本地门店账号信息失败,请重试")
}
status, err := getAPI(orderInfo.VendorOrgCode, 0, "").OrderLogisticsStatus(orderId)
if err != nil {
return 0, err
}
return status, nil
}
// GetOrderSettleAccounts 获取订单结算信息
@@ -868,3 +945,13 @@ func (c *PurchaseHandler) GetOrderSettleAccounts(order *model.GoodsOrder) (int64
}
return 0, nil
}
// GetPlatformLogisticsFee 获取美团自配送订单的配送费
func (c *PurchaseHandler) GetPlatformLogisticsFee(order *model.GoodsOrder) (int64, error) {
fee, err := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), order.VendorStoreID).OrderLogisticsFee(utils.Str2Int64(order.VendorOrderID))
if err != nil {
return 0, err
}
return utils.Float64TwoInt64(fee * 100), nil
}

View File

@@ -55,10 +55,12 @@ func (c *PurchaseHandler) callbackMsg2Waybill(msg *mtwmapi.CallbackMsg) (retVal
retVal.StatusTime = getTimeFromTimestamp(utils.Str2Int64(msg.FormData.Get("timestamp")))
}
//if vendorStatus == "4" || vendorStatus == "8" { // 4:美团推送已经(确认骑手)订单 8:美团推送(骑手完成)订单
// retVal.DesiredFee = utils.Float64TwoInt64(utils.Str2Float64WithDefault(msg.FormData.Get("shipping_fee"), 0)) // 订单优惠前的总费用
// partner.CurOrderManager
//}
order, err := partner.CurOrderManager.LoadOrder(orderID, model.VendorIDMTWM)
if err == nil && order != nil {
fee, _ := partner.GetPurchasePlatformFromVendorID(order.VendorID).GetPlatformLogisticsFee(order)
retVal.ActualFee = fee
retVal.DesiredFee = fee
}
return retVal
}

View File

@@ -180,6 +180,7 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode string, vendorOrderID int64, ve
order.BusinessType = model.BusinessTypeImmediate
order.ExpectedDeliveredTime = getTimeFromTimestamp(earliestTime + 30*60) // 预计最晚送达时间
}
order.PickDeadline = order.ExpectedDeliveredTime.Add(-1 * time.Hour)
// 用户信息
order.ConsigneeName = *orderDetail.ReceiveInfo.ReceiverName
@@ -502,9 +503,16 @@ func (c *PurchaseHandler) PickupGoods(order *model.GoodsOrder, isSelfDelivery bo
if err != nil {
return err
}
if err = getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "").DeliveryFinish(param); err != nil {
api := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "")
err = api.DeliveryFinish(param)
if err != nil && strings.Contains(err.Error(), "并发操作,执行失败,请重试") {
time.Sleep(200 * time.Millisecond)
api.DeliveryFinish(param)
} else if err != nil {
return err
}
c.postFakeMsg(order.VendorOrderID, tao_vegetable.OrderStatusPickedUp, tao_vegetable.OrderStatusPickedUp)
}
return err
@@ -554,10 +562,13 @@ func (c *PurchaseHandler) SelfDeliverDelivering(order *model.GoodsOrder, userNam
if err != nil {
return err
}
if err = api.DeliveryFinish(param); err == nil {
err = api.DeliveryFinish(param)
if err == nil {
paramDelivery := OrderStatusChangeDelivery(order, tao_vegetable.OrderStatusDelivery)
// 开始配送
return api.DeliveryFinish(paramDelivery)
} else if strings.Contains(err.Error(), "当前状态不允许更新, 请求更新状态") { // "当前状态不允许更新, 请求更新状态: PACKAGED, 当前状态SHIPPING" 这个时候代表上一次状态以及更新成了,返回错误消息不在处理
return nil
}
return err
@@ -897,3 +908,8 @@ func GetOrderTotalShopMoney(appOrgCode string, vendorStoreID string, start, end
return settlement, nil
}
// GetPlatformLogisticsFee 获取自配送订单的配送费
func (c *PurchaseHandler) GetPlatformLogisticsFee(order *model.GoodsOrder) (int64, error) {
return 0, nil
}

View File

@@ -60,9 +60,12 @@ func (c *PurchaseHandler) isAfsMsg(orderStatus string, orderId string, orderCall
func (c *PurchaseHandler) OnAfsOrderMsg(orderId, status string, msg interface{}) (retVal *tao_vegetable.CallBackResult) {
// 取消线程池执行代码,异步返回
//jxutils.CallMsgHandlerAsync(func() {
retVal = c.onAfsOrderMsg(status, msg)
//}, jxutils.ComposeUniversalOrderID(orderId, model.VendorIDTaoVegetable))
jxutils.CallMsgHandlerAsync(func() {
retVal = c.onAfsOrderMsg(status, msg)
}, jxutils.ComposeUniversalOrderID(orderId, model.VendorIDTaoVegetable))
if retVal == nil {
return tao_vegetable.CallBackResultInfo(nil)
}
return retVal
}
@@ -74,7 +77,6 @@ func (c *PurchaseHandler) onAfsOrderMsg(status string, msg interface{}) (retVal
switch status {
case tao_vegetable.OrderStatusApplyAfs:
refundData := msg.(*tao_vegetable.UserApplyRefundCallBack)
globals.SugarLogger.Debugf("================OrderStatusApplyAfs : %s", utils.Format4Output(msg, false))
var afsOrder *model.AfsOrder
var api = getAPI("", 0, refundData.StoreId)
@@ -163,7 +165,6 @@ func (c *PurchaseHandler) onAfsOrderMsg(status string, msg interface{}) (retVal
}
case tao_vegetable.OrderStatusCancelAfs:
globals.SugarLogger.Debugf("用户取消售后----------- %s", utils.Format4Output(msg, false))
// 删除售后单
afsOrder, err := dao.GetAfsOrders(db, model.VendorIDTaoVegetable, orderStatus.RefVendorOrderID, "")
if err != nil || afsOrder == nil {
@@ -206,7 +207,6 @@ func (c *PurchaseHandler) onAfsOrderMsg(status string, msg interface{}) (retVal
// 你这边没有响应那么就不会退钱给用户,就会造成客诉。为什么不接售中取消呢
case tao_vegetable.OrderStatusOnSaleCancel:
onSaleMsg := msg.(*tao_vegetable.OnSaleCancel)
globals.SugarLogger.Debugf("=========售中取消: %s", utils.Format4Output(msg, false))
var afsOrder *model.AfsOrder
var api = getAPI("", 0, onSaleMsg.PartCancelRequest.StoreId)
queryOrderDetailParam := &request591.AlibabaAelophyOrderGetRequest{OrderGetRequest: &domain591.AlibabaAelophyOrderGetOrderGetRequest{
@@ -282,9 +282,7 @@ func (c *PurchaseHandler) onAfsOrderMsg(status string, msg interface{}) (retVal
err = partner.CurOrderManager.OnAfsOrderNew(afsOrder, orderStatus)
}
}
case tao_vegetable.OrderStatusRefundSuccess:
globals.SugarLogger.Debugf("=========售后成功: %s", utils.Format4Output(msg, false))
// 用户退款成功回调,缺货拣货时,送达回触发.此时并没有售后单
if scarceGoods != nil {
refundSuccess := msg.(*tao_vegetable.RefundOrderFinish)

View File

@@ -1017,3 +1017,8 @@ func GetOrderDetail(appOrgCode, vendorOrderID string) (*order_orderDetail_respon
func (c *PurchaseHandler) GetOrderSettleAccounts(order *model.GoodsOrder) (int64, error) {
return 0, nil
}
// GetPlatformLogisticsFee 获取自配送订单的配送费
func (c *PurchaseHandler) GetPlatformLogisticsFee(order *model.GoodsOrder) (int64, error) {
return 0, nil
}

View File

@@ -111,3 +111,8 @@ func (c *PurchaseHandler) OrderLogisticsStatus(orderId int64) (int64, error) {
func (c *PurchaseHandler) GetOrderSettleAccounts(order *model.GoodsOrder) (int64, error) {
return 0, nil
}
// GetPlatformLogisticsFee 获取自配送订单的配送费
func (c *PurchaseHandler) GetPlatformLogisticsFee(order *model.GoodsOrder) (int64, error) {
return 0, nil
}