Files
jx-callback/business/partner/partner_order.go
邹宗楠 db533c28a3 1
2022-08-29 16:16:58 +08:00

102 lines
5.0 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package partner
import (
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
"git.rosy.net.cn/jx-callback/business/model"
)
type OrderPhoneNumberInfo struct {
VendorOrderID string
PhoneNumber string
}
type OrderAfsInfo struct {
VendorOrderID string `json:"vendorOrderID"`
AfsOrderID string `json:"afsOrderID"`
AfsTotalShopMoney int64 `json:"afsTotalShopMoney"`
}
type ReasonList struct {
Code string `json:"code"`
Content string `json:"content"`
PreCancelCode int `json:"preCancelCode"`
PreCancelMsg string `json:"preCancelMsg"`
}
// 取消跑腿配送请求参数
type CancelOrderParam struct {
ReasonCode string `json:"reason_code"` // 取消原因code 请开发者一定要先调用
DetailContent string `json:"detail_content"` // 取消原因
AppPoiCode string `json:"app_poi_code"` // 门店号
OrderId string `json:"order_id"` // 订单id
}
type IPurchasePlatformOrderHandler interface {
Map2Order(orderData map[string]interface{}) (order *model.GoodsOrder)
GetOrder(vendorOrgCode, vendorOrderID, vendorStoreID string) (order *model.GoodsOrder, err error)
GetOrderStatus(vendorOrgCode, vendorOrderID string) (status int, err error)
GetStatusActionTimeout(order *model.GoodsOrder, statusType, status int) (params *StatusActionParams)
AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptIt bool, userName string) (err error)
PickupGoods(order *model.GoodsOrder, isSelfDelivery bool, userName string) (err error)
AcceptOrRefuseFailedGetOrder(ctx *jxcontext.Context, order *model.GoodsOrder, isAcceptIt bool) (err error)
CallCourier(ctx *jxcontext.Context, order *model.GoodsOrder) (err error) // 取货失败后再次招唤平台配送
ConfirmReceiveGoods(ctx *jxcontext.Context, order *model.GoodsOrder) (err error) // 投递失败后确认收到退货
// 是否可能转商家自送
CanSwitch2SelfDeliver(order *model.GoodsOrder) (isCan bool, err error)
// 将订单从购物平台配送转为自送
Swtich2SelfDeliver(order *model.GoodsOrder, userName string) (err error)
// 将订单从购物平台配送转为自送后又送达
Swtich2SelfDelivered(order *model.GoodsOrder, userName string) (err error)
// 完全自送的门店表示开始配送
SelfDeliverDelivering(order *model.GoodsOrder, userName string) (err error)
// 转自配送时取消非专送混合送门店取消理由
GetCancelDeliveryReason(order *model.GoodsOrder) (string, error)
// 取消美团外卖理由转使用三方配送
CancelLogisticsByWmOrderId(order *model.GoodsOrder, reasonCode, detailContent, appPoiCode, orderId string) error
OrderLogisticsStatus(orderId int64) (int64, error)
// 完全自送的门店表示配送完成
SelfDeliverDelivered(order *model.GoodsOrder, userName string) (err error)
GetOrderRealMobile(ctx *jxcontext.Context, order *model.GoodsOrder) (mobile string, err error)
ReplyOrderComment(ctx *jxcontext.Context, vendorOrgCode string, orderComment *model.OrderComment, replyComment string) (err error)
AgreeOrRefuseCancel(ctx *jxcontext.Context, order *model.GoodsOrder, isAgree bool, reason string) (err error)
CancelOrder(ctx *jxcontext.Context, order *model.GoodsOrder, reason string) (err error)
// order.Skus要包含原始订单中的Sku信息removedSkuList中是要移除的Sku信息
AdjustOrder(ctx *jxcontext.Context, order *model.GoodsOrder, removedSkuList []*model.OrderSku, reason string) (err error)
// 售后
// 发起全款退款
RefundOrder(ctx *jxcontext.Context, order *model.GoodsOrder, reason string) (err error)
// 发起部分退款
PartRefundOrder(ctx *jxcontext.Context, order *model.GoodsOrder, refundSkuList []*model.OrderSku, reason string) (err error)
// 审核售后单申请
AgreeOrRefuseRefund(ctx *jxcontext.Context, order *model.AfsOrder, approveType int, reason string) (err error)
// // 确认收到退货
ConfirmReceivedReturnGoods(ctx *jxcontext.Context, order *model.AfsOrder) (err error)
//获取自提单取货码
GetSelfTakeCode(ctx *jxcontext.Context, order *model.GoodsOrder) (code string, err error)
ConfirmSelfTake(ctx *jxcontext.Context, order *model.GoodsOrder, selfTakeCode string) (err error)
GetOrderAfsInfo(ctx *jxcontext.Context, vendorOrderID, afsOrderID string) (orderAfsInfo *OrderAfsInfo, err error)
//投诉骑手
ComplaintRider(vendorOrderId string, resonID int, resonContent string) (err error)
//推送订单骑手信息
GetOrderRider(vendorOrgCode, vendorStoreID string, param map[string]interface{}) (err error)
}
type IAddWaybillTip interface {
GetWaybillTip(ctx *jxcontext.Context, vendorOrgCode, vendorStoreID, vendorOrderID, vendorWaybillID, vendorWaybillID2 string) (tipFee int64, err error)
UpdateWaybillTip(ctx *jxcontext.Context, vendorOrgCode, vendorStoreID, vendorOrderID, vendorWaybillID, vendorWaybillID2, cityCode string, tipFee int64) (err error)
}
type IRidderPositionGetter interface {
GetRidderPosition(ctx *jxcontext.Context, vendorOrgCode, vendorOrderID, vendorWaybillID, vendorWaybillID2 string) (lng, lat float64, err error)
}