蜂鸟回到
This commit is contained in:
@@ -3,8 +3,6 @@ package fn
|
||||
import (
|
||||
"fmt"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"github.com/astaxie/beego/client/orm"
|
||||
beego "github.com/astaxie/beego/server/web"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
@@ -154,22 +152,6 @@ func (c *DeliveryHandler) CreateWaybill(order *model.GoodsOrder, maxDeliveryFee
|
||||
return bill, err
|
||||
}
|
||||
|
||||
func (c *DeliveryHandler) getMTPSShopID(order *model.GoodsOrder, db *dao.DaoDB) (retVal string, err error) {
|
||||
saleStoreID := jxutils.GetSaleStoreIDFromOrder(order)
|
||||
storeCourierList, err2 := dao.GetOpenedStoreCouriersByStoreID(db, saleStoreID, model.VendorIDFengNiao)
|
||||
if err = err2; err != nil && err != orm.ErrNoRows {
|
||||
return "", err
|
||||
}
|
||||
if len(storeCourierList) == 0 {
|
||||
return "", partner.ErrStoreHaveNoCourier
|
||||
}
|
||||
retVal = storeCourierList[0].VendorStoreID
|
||||
if beego.BConfig.RunMode == "dev" {
|
||||
retVal = "test_0001"
|
||||
}
|
||||
return retVal, nil
|
||||
}
|
||||
|
||||
// 预下单获取配送费
|
||||
func (c *DeliveryHandler) GetWaybillFee(order *model.GoodsOrder) (deliveryFeeInfo *partner.WaybillFeeInfo, err error) {
|
||||
preCreateOrder := &fnpsapi.PreCreateOrder{
|
||||
@@ -204,6 +186,7 @@ func (c *DeliveryHandler) GetWaybillFee(order *model.GoodsOrder) (deliveryFeeInf
|
||||
return deliveryFeeInfo, err
|
||||
}
|
||||
|
||||
// 订单状态
|
||||
func OnWaybillMsg(msg map[string]interface{}) (resp *fnpsapi.CallbackResponse) {
|
||||
order := &model.Waybill{
|
||||
VendorWaybillID: utils.Interface2String(msg["open_order_code"]),
|
||||
@@ -253,6 +236,29 @@ func OnWaybillMsg(msg map[string]interface{}) (resp *fnpsapi.CallbackResponse) {
|
||||
return fnpsapi.Err2CallbackResponse(nil, "")
|
||||
}
|
||||
|
||||
// 异常报备
|
||||
func OnWaybillExceptFn(msg *fnpsapi.AbnormalReportNotify) (retVal *fnpsapi.CallbackResponse) {
|
||||
return curDeliveryHandler.OnWaybillExcept(msg)
|
||||
}
|
||||
|
||||
func (c *DeliveryHandler) OnWaybillExcept(msg *fnpsapi.AbnormalReportNotify) (retVal *fnpsapi.CallbackResponse) {
|
||||
jxutils.CallMsgHandler(func() {
|
||||
order := &model.Waybill{
|
||||
VendorWaybillID: msg.PartnerOrderCode,
|
||||
VendorWaybillID2: utils.Int64ToStr(msg.OrderId),
|
||||
WaybillVendorID: model.VendorIDFengNiao,
|
||||
CourierName: string(msg.CarrierDriverId),
|
||||
CourierMobile: "",
|
||||
Status: model.WaybillStatusUnknown, // todo 这里要再确定一下是否只要收到订单异常消息就只简单当成一个消息
|
||||
VendorStatus: msg.AbnormalCode,
|
||||
StatusTime: utils.Timestamp2Time(msg.AbnormalReportTime),
|
||||
}
|
||||
order.VendorOrderID, order.OrderVendorID = jxutils.SplitUniversalOrderID(msg.PartnerOrderCode)
|
||||
retVal = fnpsapi.Err2CallbackResponse(partner.CurOrderManager.OnWaybillStatusChanged(order), "fn OnWaybillExcept")
|
||||
}, jxutils.ComposeUniversalOrderID(msg.PartnerOrderCode, model.VendorIDFengNiao))
|
||||
return retVal
|
||||
}
|
||||
|
||||
// 查询订单配送费
|
||||
func GetDesiredFee(vendorOrderID string) (desiredFee int64) {
|
||||
if result, err := api.FnAPI.QueryOrder(vendorOrderID); err == nil {
|
||||
|
||||
Reference in New Issue
Block a user