model

package
v1.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 11, 2023 License: GPL-3.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Md5

func Md5(str string) string

func PutTracingDataToPool

func PutTracingDataToPool(v *TracingData)

Types

type AddService

type AddService struct {
	Name       string `json:"Name,omitempty"`       // 增值服务名称
	Value      string `json:"Value,omitempty"`      // 增值服务值
	CustomerID string `json:"CustomerID,omitempty"` // 客户标识(选填)
}

type Commodity

type Commodity struct {
	GoodsName     string `json:"GoodsName"`     // 商品名称
	GoodsCode     string `json:"GoodsCode"`     // 商品编码
	Goodsquantity string `json:"Goodsquantity"` // 件数
	GoodsPrice    string `json:"GoodsPrice"`    // 商品价格
	GoodsWeight   string `json:"GoodsWeight"`   // 商品重量kg
	GoodsDesc     string `json:"GoodsDesc"`     // 商品描述
	GoodsVol      string `json:"GoodsVol"`      // 商品体积m3
}

type Contact

type Contact struct {
	Company      string `json:"Company,omitempty"` // 收件人公司
	Name         string `json:"Name"`              // 收件人
	Tel          string `json:"Tel,omitempty"`     // 电话与手机,必填一个
	Mobile       string `json:"Mobile,omitempty"`
	PostCode     string `json:"PostCode,omitempty"` // 收件人邮编 (ShipCode 为 EMS、YZPY、YZBK 时 必填)
	ProvinceName string `json:"ProvinceName"`       // 收件省(如广东省,不要缺少“省”; 如是直辖市,请直接传北京、 上海等; 如是自治区,请直接传广西 壮族自治区等)
	CityName     string `json:"CityName"`           // 收件市(如深圳市,不要缺少 “市; 如是市辖区,请直接传北京 市、上海市等”)
	ExpAreaName  string `json:"ExpAreaName"`        // 收件区(如福田区,不要缺 少“区”或“县”)
	Address      string `json:"Address"`            // 收件人详细地址
}

type DeliverContact

type DeliverContact struct {
	// PersonName 快递员姓名
	PersonName string `json:"PersonName,omitempty"`
	// PersonTel 快递员电话
	PersonTel string `json:"PersonTel,omitempty"`
	// PersonCode 快递员工号
	PersonCode string `json:"PersonCode,omitempty"`
	// StationName 网点名称
	StationName string `json:"StationName,omitempty"`
	// StationAddress 网点地址
	StationAddress string `json:"StationAddress,omitempty"`
	// StationTel 网点电话
	StationTel string `json:"StationTel,omitempty"`
}

DeliverContact 收件员信息

type Error

type Error struct {
	Reason string
}

func (Error) Error

func (e Error) Error() string

type PushData

type PushData struct {
	EBusinessID string        `json:"EBusinessID"` // 电商用户ID
	PushTime    string        `json:"PushTime"`    // 推送时间
	Count       string        `json:"Count"`       // 推送轨迹的快递单号个数
	Data        []TracingData // 推送轨迹的轨迹数据集合
}

type PushRequest

type PushRequest struct {
	// EBusinessID 用户电商ID
	EBusinessID string `json:"EBusinessID,omitempty"`
	// PushTime 推送时间
	PushTime string `json:"PushTime,omitempty"`
	// Count 推送物流单号轨迹个数
	Count string `json:"Count,omitempty"`
	// Data 推送物流单号轨迹集合
	Data []TracingData `json:"Data,omitempty"`
}

PushRequest 推送API Request

type PushResponse

type PushResponse struct {
	EBusinessID string `json:"EBusinessID"` // 电商用户ID
	UpdateTime  string `json:"UpdateTime"`  // 更新时间 YYYY-MM-DD HH24:MM:SS
	Success     bool   `json:"Success"`     // 成功与否
}

type Request

type Request struct {
	RequestData string `json:"RequestData"`
	EBusinessID string `json:"EBusinessID"`
	RequestType string `json:"RequestType"`
	DataSign    string `json:"DataSign"`
	DataType    string `json:"DataType"`
	EndPoint    string `json:"-"`
}

func NewRequest

func NewRequest(businessId string, endPoint string) *Request

func (*Request) SetData

func (r *Request) SetData(requestType string, req interface{})

func (Request) Sign

func (r Request) Sign(appKey string) string

func (Request) Values

func (r Request) Values(appKey string, values url.Values)

type Response

type Response struct {
	RequestType string `form:"RequesType" json:"RequestType,omitempty"`
	EBusinessID string `form:"EBusinessID" json:"EBusinessID,omitempty"`
	DataSign    string `form:"DataSign" json:"DataSign,omitempty"`
	RequestData string `form:"RequestData" json:"RequestData,omitempty"`
}

Response general api response

func (Response) Verify

func (r Response) Verify(appKey string) bool

type SearchRequest

type SearchRequest struct {
	// OrderCode 订单编号
	OrderCode string `json:"OrderCode,omitempty"`
	// ShipperCode 快递公司编码
	ShipperCode string `json:"ShipperCode,omitempty"`
	// LogisticCode 物流单号
	LogisticCode string `json:"LogisticCode,omitempty"`
	// CustomerName ShipperCode为SF时必填,对应寄件人/收件人手机号后四位;ShipperCode为其他快递时,可不填或保留字段,不可传值
	CustomerName string `json:"CustomerName,omitempty"`
	// Callback 户自定义回传字段
	Callback string `json:"Callback,omitempty"`
}

SearchRequest 即时查询API Request

type SubscribeRequest

type SubscribeRequest struct {
	// Callback 用户自定义回调信息
	CallBack string `json:"Callback,omitempty"`
	// MemberID 会员标识,平台方与快递鸟统一用户标识的商家ID
	MemberID string `json:"MemberID,omitempty"`
	// WareHouseID 仓库标识(备用字段)
	WareHouseID string `json:"WareHouseID,omitempty"`
	// CustomerName 商家编码(   为 JD 时必填)
	CustomerName string `json:"CustomerName,omitempty"`
	// ShipperCode 快递公司编码
	ShipperCode string `json:"ShipperCode"`
	// LogisticCode 快递单号
	LogisticCode string `json:"LogisticCode"`
	// OrderCode 订单编号
	OrderCode string `json:"OrderCode,omitempty"`
	// MonthCode 月结编码
	MonthCode string `json:"MonthCode,omitempty"`
	// PayType 邮费支付方式: 1-现付,2-到付,3-月结,4-第三方支付(仅 SF 支持))
	PayType string `json:"PayType,omitempty"`
	// ExpType 快递类型:1-标准快件
	ExpType string `json:"ExpType,omitempty"`
	// Cost 寄件费(运费)
	Cost     string   `json:"Cost,omitempty"`
	Receiver *Contact `json:"Receiver"`
	Sender   *Contact `json:"Sender"`
	// IsNotice 是否通知快递员上门揽件:0-通知;1-不通知;不填则默认为1
	IsNotice string `json:"IsNotice,omitempty"`
	// StartDate 上门取货时间段: "yyyy-MM-dd HH:mm:ss"格式化,本文中所有时间格式相同
	StartDate string `json:"StartDate,omitempty"`
	EndDate   string `json:"EndDate,omitempty"`
	// Weight 物品总重量kg
	Weight string `json:"Weight,omitempty"`
	// Quantity 包裹数,一个包裹对应一个 运单号,如果是大于 1 个包 裹,返回则按照子母件的方 式返回母运单号和子运单号
	Quantity string `json:"Quantity,omitempty"`
	// Volume 物品总体积m3
	Volume string `json:"Volume,omitempty"`
	// Remark 备注
	Remark string `json:"Remark,omitempty"`
	// IsSendMessage 是否订阅短信:0-不需要;1-需要
	IsSendMessage string      `json:"IsSendMessage,omitempty"`
	AddService    *AddService `json:"AddService,omitempty"`
	Commodity     []Commodity `json:"Commodity,omitempty"`
}

SubscribeRequest 订阅 API Request

type SubscribeResponse

type SubscribeResponse struct {
	EBusinessID           string `json:"EBusinessID,omitemtpy"`           // 电商用户ID
	UpdateTime            string `json:"UpdateTime,omitempty"`            // 更新时间 YYYY-MM-DD HH24:MM:SS
	Success               bool   `json:"Success"`                         // 成功与否
	Reason                string `json:"Reason,omitempty"`                // 失败原因
	EstimatedDeliveryTime string `json:"EstimatedDeliveryTime,omitempty"` // 订单预计到货时间
}

type TracingData

type TracingData struct {
	// EBusinessID 电商用户ID
	EBusinessID string `json:"EBusinessID,omitemtpy"`
	// OrderCode 订单编号
	OrderCode string `json:"OrderCode,omitempty"`
	// ShipperCode 快递公司编码
	ShipperCode string `json:"ShipperCode"`
	// LogisticCode 物流运单号
	LogisticCode string `json:"LogisticCode"`
	// Success 成功与否
	Success bool `json:"Success"`
	// Reason 失败原因
	Reason string `json:"Reason,omitempty"`
	// State 物流状态: 0-无轨迹 1-已揽收 2-在途中 3-签收 4-问题件
	State string `json:"State"`
	// StateEx 增值物流状态: 1-已揽收, 2-在途中, 201-到达派件城市, 202-派件中, 211-已放入快递柜或驿站, 3-已签收, 311-已取出快递柜或驿站, 4-问题件, 401-发货无信息, 402-超时未签收, 403-超时未更新, 404-拒收(退件), 412-快递柜或驿站超时未取
	StateEx string `json:"StateEx,omitempty"`
	// Location 增值所在城市
	Location string `json:"location,omitempty"`
	// Traces 物流轨迹详情
	Traces []TracingItem `json:"Traces"`
	// CallBack 订阅接口的Bk值
	CallBack string `json:"CallBack,omitempty"`
	// EstimatedDeliveryTime 预计到达时间yyyy-mm-dd
	EstimatedDeliveryTime string `json:"EstimatedDeliveryTime,omitempty"`
	// PickerInfo 收件员信息
	PickerInfo *DeliverContact `json:"PickerInfo,omitempty"`
	// SenderInfo 派件员信息
	SenderInfo *DeliverContact `json:"SenderInfo,omitempty"`
	// OrderState 订单货款状态:1-待出款;2-已出款;3-已收款
	OrderState string `json:"OrderState,omitempty"`
	// AccountName 返款银行卡开户人(例:**伟、*佳)
	AccountName string `json:"AccountName,omitempty"`
	// AccountTel 返款银行卡手机末四位
	AccountTel string `json:"AccountTel,omitempty"`
	// AccountNum 返款银行卡末四位
	AccountNum string `json:"AccountNum,omitempty"`
}

TracingData 物流轨迹

func GetTracingDataInPool

func GetTracingDataInPool() *TracingData

func (*TracingData) Reset

func (t *TracingData) Reset()

type TracingItem

type TracingItem struct {
	// AcceptTime 时间
	AcceptTime string `json:"AcceptTime"`
	// AcceptStation 描述
	AcceptStation string `json:"AcceptStation"`
	// Remark 备注
	Remark string `json:"Remark,omitempty"`
	// Location 当前城市
	Location string `json:"Location,omitempty"`
	// Action 当前状态
	Action string `json:"Action,omitempty"`
}

TracingItem 物流轨迹详情

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL