kd100

package
v0.5.20 Latest Latest
Warning

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

Go to latest
Published: Dec 23, 2024 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	SubscribeStatusPolling   = "polling"   // 监控中
	SubscribeStatusShutdown  = "shutdown"  // 结束
	SubscribeStatusAbort     = "abort"     // 中止 当message为“3天查询无记录”或“60天无变化时”status= abort
	SubscribeStatusUpdateAll = "updateall" // 重新推送
)
View Source
const (
	SortDesc = "desc" // 降序
	SortAsc  = "asc"  // 升序
)
View Source
const (
	ExpressTypeDomesiticExpress       = iota + 1 // 国内快递
	ExpressTypeInternationalExpress              // 国际快递
	ExpressTypeDomesiticLogistics                // 国内物流
	ExpressTypeInternationalLogistics            // 国际物流
)
View Source
const (
	PayFail      = -1 // 支付失败
	PayUnpaid    = 0  // 未支付
	PayPaid      = 1  // 已支付
	PayNoPayment = 2  // 无需支付
	PayRefund    = 3  // 已退款
)
View Source
const (
	ServiceTypeTHS      ServiceType = "特惠送" // 特惠送
	ServiceTypeDBDJ360              = "德邦大件360"
	ServiceTypeSFBK                 = "顺丰标快"
	ServiceTypeSFTK                 = "顺丰特快"
	ServiceTypeStandard             = "标准快递"
)
View Source
const (
	ResultV2 = "resultv2"
)

Variables

View Source
var FeeTypeDescMap = map[FeeType]string{
	FeeTypeInsuranceFee:                "保价费",
	FeeTypePackagingFee:                "包装费",
	FeeTypeCollectionFee:               "代收货款",
	FeeTypeSignAndReturn:               "签单返还",
	FeeTypeHandlingCharges:             "装卸服务",
	FeeTypePickUpServiceFee:            "提货服务",
	FeeTypeDeliveryServiceFee:          "配送服务",
	FeeTypeResourceConditioningCharges: "资源调节费",
	FeeTypeAnimalQuarantineCertificate: "动检证",
	FeeTypeSpecialWarehousingFee:       "特殊入仓",
	FeeTypeSurcharge:                   "附加费",
	FeeTypeExpressCompensation:         "快递赔付费",
	FeeTypeReceiveDeliveryFeeClaims:    "收派服务费-理赔",
	FeeTypeExpressAddrChangeFee:        "快递改址费",
	FeeTypeExceededAreaFee:             "超区服务费",
	FeeTypeOverLengthOverWeightFee:     "超长超重附加费",
	FeeTypeReturnFee:                   "逆向费用",
	FeeTypeFreshFee:                    "保鲜服务费",
	FeeTypeFullInsuranceFee:            "顺丰足额保",
	FeeTypeOtherFee:                    "其他费用",
}
View Source
var FeeTypeMap = map[FeeType]string{
	FeeTypeInsuranceFee:                "INSURANCEFEE",
	FeeTypePackagingFee:                "PACKAGINGFEE",
	FeeTypeCollectionFee:               "COLLECTIONFEE",
	FeeTypeSignAndReturn:               "SIGNANDRETURN",
	FeeTypeHandlingCharges:             "HANDLINGCHARGES",
	FeeTypePickUpServiceFee:            "PICKUPSERVICEFEE",
	FeeTypeDeliveryServiceFee:          "DELIVERYSERVICEFEE",
	FeeTypeResourceConditioningCharges: "RESOURCECONDITIONINGCHARGES",
	FeeTypeAnimalQuarantineCertificate: "ANIMALQUARANTINECERTIFICATE",
	FeeTypeSpecialWarehousingFee:       "SPECIALWAREHOUSINGFEE",
	FeeTypeSurcharge:                   "SURCHARGE",
	FeeTypeExpressCompensation:         "EXPRESSCOMPENSATION",
	FeeTypeReceiveDeliveryFeeClaims:    "RECEIVEDELIVERYFEECLAIMS",
	FeeTypeExpressAddrChangeFee:        "EXPRESSADDRCHANGEFEE",
	FeeTypeExceededAreaFee:             "EXCEEDEDAREAFEE",
	FeeTypeOverLengthOverWeightFee:     "OVERLENGTHOVERWEIGHTFEE",
	FeeTypeReturnFee:                   "RETURNFEE",
	FeeTypeFreshFee:                    "FRESHFEE",
	FeeTypeFullInsuranceFee:            "FULLINSURANCEFEE",
	FeeTypeOtherFee:                    "OTHERFEE",
}
View Source
var FeeTypeReverseDescMap = map[string]string{
	"INSURANCEFEE":                "保价费",
	"PACKAGINGFEE":                "包装费",
	"COLLECTIONFEE":               "代收货款",
	"SIGNANDRETURN":               "签单返还",
	"HANDLINGCHARGES":             "装卸服务",
	"PICKUPSERVICEFEE":            "提货服务",
	"DELIVERYSERVICEFEE":          "配送服务",
	"RESOURCECONDITIONINGCHARGES": "资源调节费",
	"ANIMALQUARANTINECERTIFICATE": "动检证",
	"SPECIALWAREHOUSINGFEE":       "特殊入仓",
	"SURCHARGE":                   "附加费",
	"EXPRESSCOMPENSATION":         "快递赔付费",
	"RECEIVEDELIVERYFEECLAIMS":    "收派服务费-理赔",
	"EXPRESSADDRCHANGEFEE":        "快递改址费",
	"EXCEEDEDAREAFEE":             "超区服务费",
	"OVERLENGTHOVERWEIGHTFEE":     "超长超重附加费",
	"RETURNFEE":                   "逆向费用",
	"FRESHFEE":                    "保鲜服务费",
	"FULLINSURANCEFEE":            "顺丰足额保",
	"OTHERFEE":                    "其他费用",
}
View Source
var FeeTypeReverseMap = map[string]FeeType{
	"INSURANCEFEE":                FeeTypeInsuranceFee,
	"PACKAGINGFEE":                FeeTypePackagingFee,
	"COLLECTIONFEE":               FeeTypeCollectionFee,
	"SIGNANDRETURN":               FeeTypeSignAndReturn,
	"HANDLINGCHARGES":             FeeTypeHandlingCharges,
	"PICKUPSERVICEFEE":            FeeTypePickUpServiceFee,
	"DELIVERYSERVICEFEE":          FeeTypeDeliveryServiceFee,
	"RESOURCECONDITIONINGCHARGES": FeeTypeResourceConditioningCharges,
	"ANIMALQUARANTINECERTIFICATE": FeeTypeAnimalQuarantineCertificate,
	"SPECIALWAREHOUSINGFEE":       FeeTypeSpecialWarehousingFee,
	"SURCHARGE":                   FeeTypeSurcharge,
	"EXPRESSCOMPENSATION":         FeeTypeExpressCompensation,
	"RECEIVEDELIVERYFEECLAIMS":    FeeTypeReceiveDeliveryFeeClaims,
	"EXPRESSADDRCHANGEFEE":        FeeTypeExpressAddrChangeFee,
	"EXCEEDEDAREAFEE":             FeeTypeExceededAreaFee,
	"OVERLENGTHOVERWEIGHTFEE":     FeeTypeOverLengthOverWeightFee,
	"RETURNFEE":                   FeeTypeReturnFee,
	"FRESHFEE":                    FeeTypeFreshFee,
	"FULLINSURANCEFEE":            FeeTypeFullInsuranceFee,
	"OTHERFEE":                    FeeTypeOtherFee,
}
View Source
var Kuaidi100CompanyCodeNameMapper = map[CompanyCode]string{
	CompanyCodeYTO:  "圆通",
	CompanyCodeYD:   "韵达",
	CompanyCodeZTO:  "中通",
	CompanyCodeSTO:  "申通",
	CompanyCodeJTEX: "极兔速递",
	CompanyCodeSF:   "顺丰速运",
	CompanyCodeEMS:  "EMS",
	CompanyCodeYZPY: "邮政包裹",
	CompanyCodeJD:   "京东",
	CompanyCodeYZBK: "邮政标准快递",
	CompanyCodeDBL:  "德邦快递",
	CompanyCodeSFKY: "顺丰快运",
	CompanyCodeDN:   "丹鸟",
	CompanyCodeDB:   "德邦物流",
	CompanyCodeJDKY: "京东快运",
	CompanyCodeZTKY: "中通快运",
	CompanyCodeHTKY: "百世快递",
	CompanyCodeFWSY: "丰网速运",
}

Kuaidi100CompanyCodeNameMapper 快递100公司编码对应的名称

View Source
var MonitorStatusMap = map[MonitorStatus]string{
	Polling:   "polling",
	Shutdown:  "shutdown",
	Abort:     "abort",
	UpdateAll: "updateall",
}
View Source
var MonitorStatusReverseMap = map[string]MonitorStatus{
	"polling":   Polling,
	"shutdown":  Shutdown,
	"abort":     Abort,
	"updateall": UpdateAll,
}
View Source
var PayTypeMap = map[express.PayType]string{
	express.PayTypeSender:    "SHIPPER",
	express.PayTypeRecipient: "CONSIGNEE",
	express.PayTypeMonthly:   "MONTHLY",
}
View Source
var PayTypeReverseMap = map[string]express.PayType{
	"SHIPPER":   express.PayTypeSender,
	"CONSIGNEE": express.PayTypeRecipient,
	"MONTHLY":   express.PayTypeMonthly,
}

StandardToKuaidi100Mapper 标准快递公司编码转快递100

Functions

func GetFeeTypeDesc

func GetFeeTypeDesc(feeType string) string

func GetPayType

func GetPayType(payType express.PayType) string

func GetPayTypeReverse

func GetPayTypeReverse(payType string) express.PayType

func GetStandardCode

func GetStandardCode(companyCode string) express.StandardCourierCode

GetStandardCode 获取标准快递公司编码

func GetStatusToStandardState

func GetStatusToStandardState(status string) express.State

Types

type BCancelShipmentOrderReq

type BCancelShipmentOrderReq struct {
	TaskId    string `json:"taskId"`    // 任务ID
	OrderId   string `json:"orderId"`   // 订单号
	CancelMsg string `json:"cancelMsg"` // 取消原因
}

BCancelShipmentOrderReq 寄件订单取消请求

type BCancelShipmentOrderResp

type BCancelShipmentOrderResp struct {
	Result     bool   `json:"result"`     // 接口调用结果
	ReturnCode string `json:"returnCode"` // 接口调用结果编码
	Message    string `json:"message"`    // 接口调用结果描述
}

BCancelShipmentOrderResp 寄件订单取消响应

type BCreateShipmentOrderReq

type BCreateShipmentOrderReq struct {
	Kuaidicom        string `json:"kuaidicom"`        // 快递公司编码
	RecManName       string `json:"recManName"`       // 收件人姓名
	RecManMobile     string `json:"recManMobile"`     // 收件人手机号
	RecManPrintAddr  string `json:"recManPrintAddr"`  // 收件人打印地址
	SendManName      string `json:"sendManName"`      // 寄件人姓名
	SendManMobile    string `json:"sendManMobile"`    // 寄件人手机号
	SendManPrintAddr string `json:"sendManPrintAddr"` // 寄件人打印地址
	Cargo            string `json:"cargo"`            // 货物名称
	CallBackUrl      string `json:"callBackUrl"`      // 回调地址
	Payment          string `json:"payment"`          // 代收货款金额
	ServiceType      string `json:"serviceType"`      // 服务类型
	Weight           string `json:"weight"`           // 货物重量
	Remark           string `json:"remark"`           // 备注

	// 签名用随机字符串,用于验证签名sign。
	//salt值不为null时,推送数据将包含该加密签名,加密方式:md5(param+salt)。
	//注意: salt值为空串时,推送的数据也会包含sign,此时可忽略sign的校验。
	Salt            string `json:"salt"`
	DayType         string `json:"dayType"`         // 时效类型
	PickupStartTime string `json:"pickupStartTime"` // 上门取件开始时间
	PickupEndTime   string `json:"pickupEndTime"`   // 上门取件结束时间
	PasswordSigning string `json:"passwordSigning"` // 密码签收
	ValinsPay       string `json:"valinsPay"`       // 保价额度,单位:元
	Op              string `json:"op"`              // 是否开启订阅功能 0:不开启(默认) 1:开启 说明开启订阅功能时:pollCallBackUrl必须填入 此功能只针对有快递单号的单
	PollCallBackUrl string `json:"pollCallBackUrl"` // 如果op设置为1时,pollCallBackUrl必须填入,用于跟踪回调,回调内容通过五、快递信息推送接口返回(免费服务)

	// 添加此字段表示开通行政区域解析功能 。
	//0:关闭(默认)
	//1:开通行政区域解析功能以及物流轨迹增加物流状态名称 (详见:快递信息推送接口文档)
	//3:开通行政区域解析功能以及物流轨迹增加物流状态名称,同时返回地图内容(详见:地图轨迹推送接口文档)
	Resultv2         string `json:"resultv2"`
	ReturnType       string `json:"returnType"`       // 面单返回类型,默认为空,不返回面单内容。10:设备打印,20:生成图片短链回调。
	Siid             string `json:"siid"`             // 设备码,returnType为10时必填
	Tempid           string `json:"tempid"`           // 模板编码,通过管理后台的电子面单模板信息获取 ,returnType不为空时必填
	PrintCallBackUrl string `json:"printCallBackUrl"` // 打印状态回调地址,returnType为10时必填
}

BCreateShipmentOrderReq 寄件订单创建请求

type BCreateShipmentOrderResp

type BCreateShipmentOrderResp struct {
	Result     bool   `json:"result"`     // 接口调用结果
	ReturnCode string `json:"returnCode"` // 接口调用结果编码
	Message    string `json:"message"`    // 接口调用结果描述
	Data       struct {
		TaskId    string `json:"taskId"`    // 任务ID
		OrderId   string `json:"orderId"`   // 订单号
		Kuaidinum string `json:"kuaidinum"` // 快递单号
		EOrder    string `json:"eOrder"`    // 电子面单号
	} `json:"data"` // 接口调用结果数据
}

BCreateShipmentOrderResp 寄件订单创建响应

type BQueryShipmentOrderReq

type BQueryShipmentOrderReq struct {
	TaskId string `json:"taskId"` // 任务ID
}

BQueryShipmentOrderReq 寄件订单查询请求

type BQueryShipmentOrderResp

type BQueryShipmentOrderResp struct {
	Data struct {
		Cargo         string `json:"cargo"`
		Comment       string `json:"comment"`
		CourierMobile string `json:"courierMobile"`
		CourierName   string `json:"courierName"`
		CreateTime    string `json:"createTime"`
		DayType       string `json:"dayType"`
		Freight       string `json:"freight"`
		FeeDetails    []struct {
			FeeType   string `json:"feeType"`
			FeeDesc   string `json:"feeDesc"`
			Amount    string `json:"amount"`
			PayStatus string `json:"payStatus"`
		} `json:"feeDetails"`
		KuaidiCom       string `json:"kuaidiCom"`
		KuaidiNum       string `json:"kuaidiNum"`
		LastWeight      string `json:"lastWeight"`
		OrderId         string `json:"orderId"`
		PayStatus       int    `json:"payStatus"`
		Payment         string `json:"payment"`
		PickupEndTime   string `json:"pickupEndTime"`
		PickupStartTime string `json:"pickupStartTime"`
		PreWeight       string `json:"preWeight"`
		DefPrice        string `json:"defPrice"`
		RecAddr         string `json:"recAddr"`
		RecCity         string `json:"recCity"`
		RecDistrict     string `json:"recDistrict"`
		RecMobile       string `json:"recMobile"`
		RecName         string `json:"recName"`
		RecProvince     string `json:"recProvince"`
		SendAddr        string `json:"sendAddr"`
		SendCity        string `json:"sendCity"`
		SendDistrict    string `json:"sendDistrict"`
		SendMobile      string `json:"sendMobile"`
		SendName        string `json:"sendName"`
		SendProvince    string `json:"sendProvince"`
		ServiceType     string `json:"serviceType"`
		Status          int    `json:"status"`
		TaskId          string `json:"taskId"`
		Valins          string `json:"valins"`
	} `json:"data"`
	Message    string `json:"message"`
	Result     bool   `json:"result"`
	ReturnCode string `json:"returnCode"`
}

BQueryShipmentOrderResp 寄件订单查询响应

type BSendExpressOrderPush

type BSendExpressOrderPush struct {
	// 监控状态:polling:监控中,shutdown:结束,abort:中止,updateall:重新推送。
	// 其中当快递单为已签收时status=shutdown,当message为“3天查询无记录”或“60天无变化时”status= abort ,
	// 对于status=abort的状态,需要增加额外的处理逻辑
	Status     string `json:"status"`
	Billstatus string `json:"billstatus"` // 包括got、sending、check三个状态,由于意义不大,已弃用,请忽略
	Message    string `json:"message"`    // 监控状态相关消息,如:3天查询无记录,60天无变化
	LastResult struct {
		Message string `json:"message"`
		Nu      string `json:"nu"`
		Ischeck string `json:"ischeck"`
		Com     string `json:"com"`
		Status  string `json:"status"`
		Data    []struct {
			Time       string `json:"time"`
			Context    string `json:"context"`
			Ftime      string `json:"ftime"`
			AreaCode   string `json:"areaCode"`
			AreaName   string `json:"areaName"`
			Status     string `json:"status"`
			Location   string `json:"location"`
			AreaCenter string `json:"areaCenter"`
			AreaPinYin string `json:"areaPinYin"`
			StatusCode string `json:"statusCode"`
		} `json:"data"`
		State     string `json:"state"`
		Condition string `json:"condition"`
		RouteInfo struct {
			From struct {
				Number string `json:"number"`
				Name   string `json:"name"`
			} `json:"from"`
			Cur struct {
				Number string `json:"number"`
				Name   string `json:"name"`
			} `json:"cur"`
			To interface{} `json:"to"`
		} `json:"routeInfo"`
		IsLoop bool `json:"isLoop"`
	} `json:"lastResult"`
}

BSendExpressOrderPush 寄件订单推送数据

type CExpressCallbackPush

type CExpressCallbackPush struct {
	Status     string `json:"status"`
	Billstatus string `json:"billstatus"`
	Message    string `json:"message"`
	LastResult struct {
		Message string `json:"message"`
		Nu      string `json:"nu"`
		Ischeck string `json:"ischeck"`
		Com     string `json:"com"`
		Status  string `json:"status"`
		Data    []struct {
			Time       string `json:"time"`
			Context    string `json:"context"`
			Ftime      string `json:"ftime"`
			AreaCode   string `json:"areaCode"`
			AreaName   string `json:"areaName"`
			Status     string `json:"status"`
			Location   string `json:"location"`
			AreaCenter string `json:"areaCenter"`
			AreaPinYin string `json:"areaPinYin"`
			StatusCode string `json:"statusCode"`
		} `json:"data"`
		State     string `json:"state"`
		Condition string `json:"condition"`
		RouteInfo struct {
			From struct {
				Number string `json:"number"`
				Name   string `json:"name"`
			} `json:"from"`
			Cur struct {
				Number string `json:"number"`
				Name   string `json:"name"`
			} `json:"cur"`
			To interface{} `json:"to"`
		} `json:"routeInfo"`
		IsLoop bool `json:"isLoop"`
	} `json:"lastResult"`
}

CExpressCallbackPush 寄件订单推送数据

type CQueryShipmentPriceReq

type CQueryShipmentPriceReq struct {
	Kuaidicom        string `json:"kuaidicom"`
	ServiceType      string `json:"service_type"`
	SendManPrintAddr string `json:"sendManPrintAddr"`
	RecManPrintAddr  string `json:"recManPrintAddr"`
	Weight           string `json:"weight"`
}

CQueryShipmentPriceReq 查询寄件价格请求

type CQueryShipmentPriceResp

type CQueryShipmentPriceResp struct {
	Result     bool   `json:"result"`
	ReturnCode string `json:"returnCode"`
	Message    string `json:"message"`
	Data       struct {
		Price string `json:"price"`
	} `json:"data"`
}

CQueryShipmentPriceResp 查询寄件价格响应

type CShipmentOrderCallback

type CShipmentOrderCallback struct {
	Kuaidicom string `json:"kuaidicom"` // 快递公司编码
	Kuaidinum string `json:"kuaidinum"` // 快递单号
	Status    string `json:"status"`    // 订单状态
	Message   string `json:"message"`   // 订单状态描述
	Data      struct {
		OrderId       string `json:"orderId"`       // 订单号
		Status        int    `json:"status"`        // 订单状态
		CourierName   string `json:"courierName"`   // 快递员姓名
		CourierMobile string `json:"courierMobile"` // 快递员手机号
		Weight        string `json:"weight"`        // 货物重量
		Freight       string `json:"freight"`       // 运费
		DefPrice      string `json:"defPrice"`      // 货物保价金额
	} `json:"data"` // 接口调用结果数据
}

type CShipmentOrderCancelReq

type CShipmentOrderCancelReq struct {
	TaskId    string `json:"taskId"`    // 任务ID
	OrderId   string `json:"orderId"`   // 订单号
	CancelMsg string `json:"cancelMsg"` // 取消原因
}

CShipmentOrderCancelReq 寄件订单取消请求

type CShipmentOrderCancelResp

type CShipmentOrderCancelResp struct {
	Result     bool   `json:"result"`
	ReturnCode string `json:"returnCode"`
	Message    string `json:"message"`
}

CShipmentOrderCancelResp 寄件订单取消响应

type CShipmentOrderReq

type CShipmentOrderReq struct {
	Kuaidicom        string `json:"kuaidicom"`        // 快递公司编码
	RecManName       string `json:"recManName"`       // 收件人姓名
	RecManMobile     string `json:"recManMobile"`     // 收件人手机号
	RecManPrintAddr  string `json:"recManPrintAddr"`  // 收件人打印地址
	SendManName      string `json:"sendManName"`      // 寄件人姓名
	SendManMobile    string `json:"sendManMobile"`    // 寄件人手机号
	SendManPrintAddr string `json:"sendManPrintAddr"` // 寄件人打印地址
	CallBackUrl      string `json:"callBackUrl"`      // 回调地址
	Cargo            string `json:"cargo"`            // 货物名称
	Payment          string `json:"payment"`          // 代收货款金额
	Weight           string `json:"weight"`           // 货物重量
	Remark           string `json:"remark"`           // 备注
	DayType          string `json:"dayType"`          // 时效类型
	PickupStartTime  string `json:"pickupStartTime"`  // 上门取件开始时间
	PickupEndTime    string `json:"pickupEndTime"`    // 上门取件结束时间
	Salt             string `json:"salt"`             // 签名用随机字符串,用于验证签名sign。salt值不为null时,推送数据将包含该加密签名,加密方式:md5(param+salt)。注意: salt值为空串时,推送的数据也会包含sign,此时可忽略sign的校验。
	Op               string `json:"op"`               // 是否开启订阅功能 0:不开启(默认) 1:开启 说明开启订阅功能时:pollCallBackUrl必须填入 此功能只针对有快递单号的单
	PollCallBackUrl  string `json:"pollCallBackUrl"`  // 如果op设置为1时,pollCallBackUrl必须填入,用于跟踪回调,回调内容通过五、快递信息推送接口返回(免费服务)
	Resultv2         string `json:"resultv2"`         // 添加此字段表示开通行政区域解析功能 。0:关闭(默认)1:开通行政区域解析功能以及物流轨迹增加物流状态名称 (详见:快递信息推送接口文档)3:开通行政区域解析功能以及物流轨迹增加物流状态名称,同时返回地图内容(详见:地图轨迹推送接口文档)
	ThirdOrderId     string `json:"thirdOrderId"`     // 第三方订单号
}

CShipmentOrderReq 寄件订单创建请求

type CShipmentOrderResp

type CShipmentOrderResp struct {
	Result     bool   `json:"result"`
	ReturnCode string `json:"returnCode"`
	Message    string `json:"message"`
	Data       struct {
		TaskId  string `json:"taskId"`
		OrderId string `json:"orderId "`
	} `json:"data"`
}

CShipmentOrderResp 寄件订单创建响应

type CardType

type CardType uint8

CardType 证件类型

const (
	CardTypeIdCard        CardType = iota + 1 // 身份证
	CardTypeHKMacaoPermit                     // 港澳通行证
	CardTypeTWPermit                          // 台湾通行证
	CardTypePassport                          // 护照
)

type Client

type Client struct {
	BaseUrl string
}

func (*Client) DoPost

func (cli *Client) DoPost(url string, params *url.Values, receiver interface{}) error

DoPost 发起 POST 请求

type CompanyCode

type CompanyCode string

CompanyCode 快递公司编码

const (
	CompanyCodeYTO  CompanyCode = "yuantong"         // 圆通
	CompanyCodeYD   CompanyCode = "yunda"            // 韵达
	CompanyCodeZTO  CompanyCode = "zhongtong"        // 中通
	CompanyCodeSTO  CompanyCode = "shentong"         // 申通
	CompanyCodeJTEX CompanyCode = "jtexpress"        // 极兔速递
	CompanyCodeSF   CompanyCode = "shunfeng"         // 顺丰速运
	CompanyCodeEMS  CompanyCode = "ems"              // EMS
	CompanyCodeYZPY CompanyCode = "youzhengguonei"   // 邮政包裹
	CompanyCodeJD   CompanyCode = "jd"               // 京东
	CompanyCodeYZBK CompanyCode = "youzhengbk"       // 邮政标准快递
	CompanyCodeDBL  CompanyCode = "debangkuaidi"     // 德邦快递
	CompanyCodeSFKY CompanyCode = "shunfengkuaiyun"  // 顺丰快运
	CompanyCodeDN   CompanyCode = "danniao"          // 丹鸟
	CompanyCodeDB   CompanyCode = "debangwuliu"      // 德邦物流
	CompanyCodeJDKY CompanyCode = "jingdongkuaiyun"  // 京东快运
	CompanyCodeZTKY CompanyCode = "zhongtongkuaiyun" // 中通快运
	CompanyCodeHTKY CompanyCode = "huitongkuaidi"    // 百世快递
	CompanyCodeFWSY CompanyCode = "fengwang"         // 丰网速运
)

func GetStandardMapCompanyCode

func GetStandardMapCompanyCode(standardCode express.StandardCourierCode) CompanyCode

GetStandardMapCompanyCode 获取标准快递公司编码对应的快递100编码

func (CompanyCode) GetStandardCode

func (e CompanyCode) GetStandardCode() express.StandardCourierCode

GetStandardCode 获取标准快递公司编码

func (CompanyCode) Name

func (e CompanyCode) Name() string

Name 获取快递公司名称

type CreateShipmentOrderPush

type CreateShipmentOrderPush struct {
	Kuaidicom string `json:"kuaidicom"` // 快递公司编码
	Kuaidinum string `json:"kuaidinum"` // 快递单号
	Status    string `json:"status"`    // 订单状态
	Message   string `json:"message"`   // 订单状态描述
	Data      struct {
		OrderId       string `json:"orderId"`       // 订单号
		Status        int    `json:"status"`        // 订单状态
		CourierName   string `json:"courierName"`   // 快递员姓名
		CourierMobile string `json:"courierMobile"` // 快递员手机号
		Weight        string `json:"weight"`        // 货物重量
		DefPrice      string `json:"defPrice"`      // 货物保价金额
		Freight       string `json:"freight"`       // 运费
		Volume        string `json:"volume"`        // 体积
		ActualWeight  string `json:"actualWeight"`  // 实际重量
		FeeDetails    []struct {
			FeeType   string `json:"feeType"`   // 费用类型
			FeeDesc   string `json:"feeDesc"`   // 费用描述
			Amount    string `json:"amount"`    // 费用金额
			PayStatus string `json:"payStatus"` // 支付状态
		} `json:"feeDetails"` // 费用明细
		PrintTaskId string `json:"printTaskId"` // 打印任务ID
		ImgBase64   string `json:"imgBase64"`   // 面单图片base64编码
	} `json:"data"` // 接口调用结果数据
}

CreateShipmentOrderPush 寄件订单回调推送数据

type Data

type Data struct {
	Time       string `json:"time"`       // 物流事件发生的时间
	Context    string `json:"context"`    // 物流事件的描述
	Ftime      string `json:"ftime"`      // 物流事件发生的时间
	AreaCode   string `json:"areaCode"`   // 物流事件发生的区域编码
	AreaName   string `json:"areaName"`   // 物流事件发生的区域名称
	Status     string `json:"status"`     // 物流事件的状态
	Location   string `json:"location"`   // 物流事件的城市
	AreaCenter string `json:"areaCenter"` // 物流事件的城市
	AreaPinYin string `json:"areaPinYin"` // 物流事件的城市
	StatusCode string `json:"statusCode"` // 物流事件的状态编码
}

type Express

type Express struct {
	// contains filtered or unexported fields
}

func (*Express) BCancelShipmentOrder

func (exp *Express) BCancelShipmentOrder(params *express.CancelExpressParams) (*express.CancelExpressResponse, error)

BCancelShipmentOrder 商家寄件下单取消接口 https://api.kuaidi100.com/document/603cb649a62a19500e19866b#section_2

func (*Express) BShipmentCallbackVerify

func (exp *Express) BShipmentCallbackVerify(sign, params string) (*express.BSendExpressCallbackPush, error)

BShipmentCallbackVerify 商家下单回调接口 https://api.kuaidi100.com/document/603cb649a62a19500e19866b#section_1

func (*Express) BShipmentExpressPushVerify

func (exp *Express) BShipmentExpressPushVerify(sign, params string) (*express.SubscribeCallbackPush, error)

BShipmentExpressPushVerify 快递信息推送接口 https://api.kuaidi100.com/document/603cb649a62a19500e19866b#section_4

func (*Express) CCancelShipmentOrder

func (exp *Express) CCancelShipmentOrder(params *express.CancelExpressParams) (*express.CancelExpressResponse, error)

CCancelShipmentOrder 客户寄件下单取消接口 https://api.kuaidi100.com/document/cduan-ji-jian-jie-kou-wen-dang#section_2

func (*Express) CShipmentCallbackVerify

func (exp *Express) CShipmentCallbackVerify(sign, params string) (*express.CSendExpressCallbackPush, error)

CShipmentCallbackVerify 客户下单回调接口 https://api.kuaidi100.com/document/cduan-ji-jian-jie-kou-wen-dang#section_1

func (*Express) CShipmentExpressPushVerify

func (exp *Express) CShipmentExpressPushVerify(sign, params string) (*express.SubscribeCallbackPush, error)

func (*Express) QueryBShipmentOrder

func (exp *Express) QueryBShipmentOrder(taskId string) (*express.QueryBSendExpressResponse, error)

QueryBShipmentOrder 商家寄件信息查询接口 https://api.kuaidi100.com/document/603cb649a62a19500e19866b#section_8

func (*Express) QueryMapTrack

func (exp *Express) QueryMapTrack(params *express.QueryParams) (*express.QueryMapResponse, error)

QueryMapTrack 查询物流轨迹地图 https://api.kuaidi100.com/document/5ff2c3e7ba1bf00302f5612e

func (*Express) Sign

func (exp *Express) Sign(params string) string

Sign 数据签名

func (*Express) Subscribe

func (exp *Express) Subscribe(params *express.SubscribeParams) error

Subscribe 订阅快递 https://api.kuaidi100.com/document/5f0ffa8f2977d50a94e1023c

func (*Express) SubscribeMapTrack

func (exp *Express) SubscribeMapTrack(params *express.SubscribeParams) error

SubscribeMapTrack 订阅物流轨迹地图 https://api.kuaidi100.com/document/603f47dfa62a19500e19866f#section_0

func (*Express) Verify

func (exp *Express) Verify(sign, params string) bool

Verify 验签

func (*Express) VerifyCallbackMapPush

func (exp *Express) VerifyCallbackMapPush(data, sign string) (*express.SubscribeCallbackMapPush, error)

VerifyCallbackMapPush 验证回调推送 https://api.kuaidi100.com/document/603f47dfa62a19500e19866f#section_1

func (*Express) VerifyCallbackPush

func (exp *Express) VerifyCallbackPush(data, sign string) (*express.SubscribeCallbackPush, error)

VerifyCallbackPush 验证回调推送 https://api.kuaidi100.com/document/5f0ffa8f2977d50a94e1023c#section_1

type ExpressType

type ExpressType uint8

ExpressType 快递类型

type FeeType

type FeeType uint8
const (
	FeeTypeInsuranceFee                FeeType = iota + 1 // 保价费
	FeeTypePackagingFee                                   // 包装费
	FeeTypeCollectionFee                                  // 代收货款
	FeeTypeSignAndReturn                                  // 签单返还
	FeeTypeHandlingCharges                                // 装卸服务
	FeeTypePickUpServiceFee                               // 提货服务
	FeeTypeDeliveryServiceFee                             // 配送服务
	FeeTypeResourceConditioningCharges                    // 资源调节费
	FeeTypeAnimalQuarantineCertificate                    // 动检证
	FeeTypeSpecialWarehousingFee                          // 特殊入仓
	FeeTypeSurcharge                                      // 附加费
	FeeTypeExpressCompensation                            // 快递赔付费
	FeeTypeReceiveDeliveryFeeClaims                       // 收派服务费-理赔
	FeeTypeExpressAddrChangeFee                           // 快递改址费
	FeeTypeExceededAreaFee                                // 超区服务费
	FeeTypeOverLengthOverWeightFee                        // 超长超重附加费
	FeeTypeReturnFee                                      // 逆向费用
	FeeTypeFreshFee                                       // 保鲜服务费
	FeeTypeFullInsuranceFee                               // 顺丰足额保
	FeeTypeOtherFee                                       // 其他费用
)

func ParseFeeType

func ParseFeeType(feeType string) FeeType

func (FeeType) GetFeeTypeDesc

func (f FeeType) GetFeeTypeDesc() string

func (FeeType) String

func (f FeeType) String() string

type MonitorStatus

type MonitorStatus uint8

MonitorStatus 监控状态

const (
	Polling   MonitorStatus = iota // 监控中
	Shutdown                       // 结束
	Abort                          // 中止
	UpdateAll                      // 重新推送
)

func ReverseString

func ReverseString(monitor string) MonitorStatus

func (MonitorStatus) String

func (s MonitorStatus) String() string

type Option

type Option func(options *Options)

func WithBaseUrl

func WithBaseUrl(baseUrl string) Option

func WithCustomer

func WithCustomer(customer string) Option

func WithKey

func WithKey(key string) Option

func WithMapTempKey

func WithMapTempKey(mapTempKey string) Option

func WithNotifyUrl

func WithNotifyUrl(notifyUrl string) Option

func WithSalt

func WithSalt(salt string) Option

func WithSecret

func WithSecret(secret string) Option

func WithSendExpressNotifyUrl

func WithSendExpressNotifyUrl(notifyUrl string) Option

type Options

type Options struct {
	Key                  string
	Customer             string
	Secret               string
	BaseUrl              string
	Salt                 string
	MapTempKey           string
	NotifyUrl            string
	SendExpressNotifyUrl string
}

type PayStatus

type PayStatus int8

type PushResp

type PushResp struct {
	Result     bool   `json:"result"`     // 推送处理结果
	ReturnCode string `json:"returnCode"` // 推送处理结果编码
	Message    string `json:"message"`    // 推送处理结果描述
}

PushResp 推送响应

type QueryExpressResp

type QueryExpressResp struct {
	Message   string `json:"message"`   // 消息体, 可以忽略
	State     string `json:"state"`     // 快递单当前状态,默认为0在途,1揽收,2疑难,3签收,4退签,5派件,8清关,14拒签等10个基础物流状态,如需要返回高级物流状态,请参考 resultv2 传值
	Status    string `json:"status"`    // 通讯状态, 可以忽略
	Condition string `json:"condition"` // 快递单明细状态标记,暂未实现,可以忽略
	Nu        string `json:"nu"`        // 快递单号
	Ischeck   string `json:"ischeck"`   // 是否签收标记 0:未签收 1:已签收
	Com       string `json:"com"`       // 快递公司编码
	Data      []struct {
		Context    string `json:"context"`    // 物流事件的描述
		Time       string `json:"time"`       // 物流事件发生的时间, 原始格式
		Ftime      string `json:"ftime"`      // 物流事件发生的时间, 格式化后的
		AreaCode   string `json:"areaCode"`   // 物流事件发生的区域编码
		AreaName   string `json:"areaName"`   // 物流事件发生的区域名称
		Status     string `json:"status"`     // 物流事件的状态
		Location   string `json:"location"`   // 物流事件的城市
		AreaCenter string `json:"areaCenter"` // 物流事件发生城市经纬度
		AreaPinYin string `json:"areaPinYin"` // 物流事件发生城市的拼音
		StatusCode string `json:"statusCode"` // 物流事件的状态码
	} `json:"data"`
	RouteInfo struct {
		From struct {
			Number string `json:"number"` // 出发地编码
			Name   string `json:"name"`   // 出发地名称
		} `json:"from"`
		Cur struct {
			Number string `json:"number"` // 当前所在地编码
			Name   string `json:"name"`   // 当前所在地名称
		} `json:"cur"`
		To interface{} `json:"to"` // 目的地
	} `json:"routeInfo"`
	IsLoop bool `json:"isLoop"` // 是否循环推送

	// 错误处理
	Result     bool   `json:"result"`     // 查询结果
	ReturnCode string `json:"returnCode"` // 查询结果编码
}

QueryExpressResp 查询响应

type QueryMapTrackParams

type QueryMapTrackParams struct {
	QueryParams
	MapConfigKey string `json:"mapConfigKey"` // 地图轨迹模版ID
}

type QueryMapTrackResponse

type QueryMapTrackResponse struct {
	Message     string                          `json:"message"`     // 消息体, 可以忽略
	State       string                          `json:"state"`       // 快递单当前状态,默认为0在途,1揽收,2疑难,3签收,4退签,5派件,8清关,14拒签等10个基础物流状态,如需要返回高级物流状态,请参考 resultv2 传值
	Status      string                          `json:"status"`      // 通讯状态, 可以忽略
	Condition   string                          `json:"condition"`   // 快递单明细状态标记,暂未实现,可以忽略
	IsCheck     int                             `json:"ischeck"`     // 是否签收标记 0:未签收 1:已签收
	Com         string                          `json:"com"`         // 快递公司编码
	Nu          string                          `json:"nu"`          // 快递单号
	TrailUrl    string                          `json:"trailUrl"`    // 轨迹地图链接
	ArrivalTime string                          `json:"arrivalTime"` // 预计到达时间
	TotalTime   string                          `json:"totalTime"`   // 平均耗时
	RemainTime  string                          `json:"remainTime"`  // 剩余时间
	IsLoop      bool                            `json:"isLoop"`      // 是否循环推送
	RouteInfo   *QueryMapTrackResponseRouteInfo `json:"routeInfo"`   // 路由信息
	Data        []*QueryMapTrackResponseData    `json:"data"`        // 轨迹数据
}

type QueryMapTrackResponseData

type QueryMapTrackResponseData struct {
	Context    string `json:"context"`    // 物流事件的描述
	Time       string `json:"time"`       // 物流事件发生的时间, 原始格式
	Ftime      string `json:"ftime"`      // 物流事件发生的时间, 格式化后的
	Status     string `json:"status"`     // 物流事件的状态
	AreaCode   string `json:"areaCode"`   // 物流事件发生的区域编码
	AreaName   string `json:"areaName"`   // 物流事件发生的区域名称
	StatusCode string `json:"statusCode"` // 物流事件的状态码
	AreaCenter string `json:"areaCenter"` // 物流事件发生城市经纬度
	Location   string `json:"location"`   // 物流事件的城市
	AreaPinYin string `json:"areaPinYin"` // 物流事件发生城市的拼音
}

type QueryMapTrackResponseRouteInfo

type QueryMapTrackResponseRouteInfo struct {
	From struct {
		Number string `json:"number"` // 出发地编码
		Name   string `json:"name"`   // 出发地名称
	} `json:"from"`
	Cur struct {
		Number string `json:"number"` // 当前所在地编码
		Name   string `json:"name"`   // 当前所在地名称
	} `json:"cur"`
	To struct {
		Number string `json:"number"` // 目的地编码
		Name   string `json:"name"`   // 目的地名称
	} `json:"to"`
}

type QueryParams

type QueryParams struct {
	Com      string `json:"com"`      // 快递公司编码
	Num      string `json:"num"`      // 快递单号
	Phone    string `json:"phone"`    // 手机号
	From     string `json:"from"`     // 出发地城市
	To       string `json:"to"`       // 目的地城市
	Resultv2 string `json:"resultv2"` // 开通行政区域解析功能:0-关闭(默认),1-开通
	Show     string `json:"show"`     // 返回数据格式:0-json(默认),1-xml,2-html,3-text
	Order    string `json:"order"`    // 排序:desc-降序(默认),asc-升序
}

QueryParams 查询请求参数

type QueryReqConfig

type QueryReqConfig struct {
	Com      string // 快递公司编码
	Num      string // 快递单号
	Phone    string // 手机号
	From     string // 出发地城市
	To       string // 目的地城市
	Resultv2 string // 开通行政区域解析功能:0-关闭(默认),1-开通
	Show     string // 返回数据格式:0-json(默认),1-xml,2-html,3-text
	Order    string // 排序:desc-降序(默认),asc-升序
}

QueryReqConfig 查询请求配置

type QueryRequest

type QueryRequest struct {
	Customer string       `json:"customer"`
	Sign     string       `json:"sign"`
	Param    *QueryParams `json:"param"`
}

QueryRequest 查询请求

type QueryShipmentPriceReq

type QueryShipmentPriceReq struct {
	Kuaidicom        string `json:"kuaidicom"`
	SendManPrintAddr string `json:"sendManPrintAddr"`
	RecManPrintAddr  string `json:"recManPrintAddr"`
	Weight           string `json:"weight"`
	ServiceType      string `json:"serviceType"`
}

QueryShipmentPriceReq 查询寄件价格请求

type QueryShipmentPriceResp

type QueryShipmentPriceResp struct {
	Data struct {
		FirstPrice    string `json:"firstPrice"`
		DefPrice      string `json:"defPrice"`
		DefFirstPrice string `json:"defFirstPrice"`
		Price         string `json:"price"`
		ServiceType   string `json:"serviceType"`
		OverPrice     string `json:"overPrice"`
		DefOverPrice  string `json:"defOverPrice"`
		KuaidiCom     string `json:"kuaidiCom"`
	} `json:"data"`
	Message    string `json:"message"`
	Result     bool   `json:"result"`
	ReturnCode string `json:"returnCode"`
}

type Result

type Result struct {
	Message   string  `json:"message"`   // 监控状态相关消息,如:3天查询无记录,60天无变化
	Nu        string  `json:"nu"`        // 快递单号
	Ischeck   string  `json:"ischeck"`   // 是否签收标记 0:未签收 1:已签收
	Com       string  `json:"com"`       // 快递公司编码
	Status    string  `json:"status"`    // 快递单当前的状态 :0:在途,即货物处于运输过程中;1:揽件,货物已由快递公司揽收并且产生了第一条跟踪信息;
	Data      []*Data `json:"data"`      // 快递单明细状态标记,多行
	State     string  `json:"state"`     // 快递单当前状态,默认为0在途,1揽收,2疑难,3签收,4退签,5派件,8清关,14拒签等10个基础物流状态,如需要返回高级物流状态,请参考 resultv2 传值
	Condition string  `json:"condition"` // 快递单明细状态标记,多行
	RouteInfo struct {
		From struct {
			Number string `json:"number"`
			Name   string `json:"name"`
		} `json:"from"`
		Cur struct {
			Number string `json:"number"`
			Name   string `json:"name"`
		} `json:"cur"`
		To interface{} `json:"to"` // 目的地
	} `json:"routeInfo"`
	IsLoop bool `json:"isLoop"` // 是否循环推送
}

type ServiceType

type ServiceType string

func GetCompanyCodeServiceType

func GetCompanyCodeServiceType(compCode CompanyCode) ServiceType

GetCompanyCodeServiceType 获取快递公司编码对应的服务类型

type Sort

type Sort string

type SubscribeMapTrackParam

type SubscribeMapTrackParam struct {
	Key        string                       `json:"key"`        // 授权key
	Company    string                       `json:"company"`    // 快递公司编码
	Number     string                       `json:"number"`     // 快递单号
	From       string                       `json:"from"`       // 出发地城市
	To         string                       `json:"to"`         // 目的地城市
	Parameters *SubscribeMapTrackParameters `json:"parameters"` // 可选参数
}

type SubscribeMapTrackParameters

type SubscribeMapTrackParameters struct {
	CallbackUrl  string `json:"callbackurl"`  // 回调地址
	Salt         string `json:"salt"`         // MD5加密串
	Phone        string `json:"phone"`        // 手机号 顺丰速运、顺丰快运和丰网速运必填
	MapConfigKey string `json:"mapConfigKey"` // 地图轨迹模版ID

	// 添加此字段表示开通行政区域解析功能。空:关闭(默认),
	// 3:开通行政区域解析功能以及物流轨迹增加物流状态名称
	// 5: 开通行政解析功能以及物流轨迹增加物流高级状态名称、状态值并且返回出发、目的及当前城市信息
	ResultV2 string `json:"resultv2"`
}

type SubscribeMapTrackPush

type SubscribeMapTrackPush struct {
	Status     string `json:"status"`
	Billstatus string `json:"billstatus"`
	Message    string `json:"message"`
	LastResult struct {
		Message   string `json:"message"`
		State     string `json:"state"`
		Status    string `json:"status"`
		Condition string `json:"condition"`
		Ischeck   string `json:"ischeck"`
		Com       string `json:"com"`
		Nu        string `json:"nu"`
		Data      []struct {
			Context    string `json:"context"`
			Time       string `json:"time"`
			Ftime      string `json:"ftime"`
			Status     string `json:"status"`
			AreaCode   string `json:"areaCode"`
			AreaName   string `json:"areaName"`
			Location   string `json:"location"`
			AreaCenter string `json:"areaCenter"`
			AreaPinYin string `json:"areaPinYin"`
			StatusCode string `json:"statusCode"`
		} `json:"data"`
		RouteInfo struct {
			From struct {
				Number string `json:"number"`
				Name   string `json:"name"`
			} `json:"from"`
			Cur struct {
				Number string `json:"number"`
				Name   string `json:"name"`
			} `json:"cur"`
			To struct {
				Number string `json:"number"`
				Name   string `json:"name"`
			} `json:"to"`
		} `json:"routeInfo"`
		IsLoop      bool   `json:"isLoop"`
		TrailUrl    string `json:"trailUrl"`
		ArrivalTime string `json:"arrivalTime"`
		TotalTime   string `json:"totalTime"`
		RemainTime  string `json:"remainTime"`
	} `json:"lastResult"`
}

type SubscribeParam

type SubscribeParam struct {
	Company    string               `json:"company"`        // 快递公司编码
	Number     string               `json:"number"`         // 快递单号
	From       string               `json:"from,omitempty"` // 出发地城市
	To         string               `json:"to,omitempty"`   // 目的地城市
	Key        string               `json:"key"`            // 授权key
	Parameters *SubscribeParameters `json:"parameters"`     // 可选参数
}

SubscribeParam 请求参数

type SubscribeParameters

type SubscribeParameters struct {
	CallbackUrl string `json:"callbackurl"`    // 回调地址
	Salt        string `json:"salt,omitempty"` // MD5加密串

	// 添加此字段表示开通行政区域解析功能。空:关闭(默认),
	// 3:开通行政区域解析功能以及物流轨迹增加物流状态名称
	// 5: 开通行政解析功能以及物流轨迹增加物流高级状态名称、状态值并且返回出发、目的及当前城市信息
	Resultv2           string `json:"resultv2"`
	AutoCom            string `json:"autoCom"`            // 开通智能单号识别功能:0-关闭(默认),1-开通
	InterCom           string `json:"interCom"`           // 开通国际版功能:0-关闭(默认),1-开通
	DepartureCountry   string `json:"departureCountry"`   // 出发国
	DepartureCom       string `json:"departureCom"`       // 出发国快递公司编码
	DestinationCountry string `json:"destinationCountry"` // 目的国
	DestinationCom     string `json:"destinationCom"`     // 目的国快递公司编码
	Phone              string `json:"phone"`              // 手机号 顺丰速运、顺丰快运和丰网速运必填
}

SubscribeParameters 可选参数

type SubscribePush

type SubscribePush struct {
	Status     string  `json:"status"`     // 监控状态:polling:监控中,shutdown:结束,abort:中止,updateall:重新推送
	Billstatus string  `json:"billstatus"` // 包括got、sending、check三个状态,由于意义不大,已弃用,请忽略
	Message    string  `json:"message"`    // 监控状态相关消息,如:3天查询无记录,60天无变化
	AutoCheck  string  `json:"autoCheck"`  // 是否开启智能判断功能,当快递单号识别出多个快递公司时,是否开启智能判断功能,默认值0,0:关闭智能判断,1:开启智能判断
	ComOld     string  `json:"comOld"`     // 识别出的快递公司编码
	ComNew     string  `json:"comNew"`     // 智能判断出的快递公司编码
	LastResult *Result `json:"lastResult"` // 最新查询结果,包括:comNew、nuNew、ischeck、condition、status、state、data、message、autoCheck、comOld、nuOld
}

type SubscribeReq

type SubscribeReq struct {
	Schema string          `json:"schema"` // 返回的数据格式, json(默认),xml
	Param  *SubscribeParam `json:"param"`  // 请求参数
}

SubscribeReq 订阅请求

type SubscribeReqConfig

type SubscribeReqConfig struct {
	Schema             string // 返回的数据格式, json(默认),xml
	Company            string // 快递公司编码
	Number             string // 快递单号
	From               string // 出发地城市
	To                 string // 目的地城市
	CallbackUrl        string // 回调地址
	Salt               string // MD5加密串
	Resultv2           string // 开通行政区域解析功能:0-关闭(默认),1-开通
	AutoCom            string // 开通智能单号识别功能:0-关闭(默认),1-开通
	InterCom           string // 开通国际版功能:0-关闭(默认),1-开通
	DepartureCountry   string // 出发国
	DepartureCom       string // 出发国快递公司编码
	DestinationCountry string // 目的国
	DestinationCom     string // 目的国快递公司编码
	Phone              string // 手机号 顺丰速运、顺丰快运和丰网速运必填
}

type SubscribeResp

type SubscribeResp struct {
	Message    string `json:"message"`
	Result     bool   `json:"result"`
	ReturnCode string `json:"returnCode"`
}

type TrackStatus

type TrackStatus string
const (
	StatusInTransit   TrackStatus = "0"    // 在途
	StatusArrivedCity TrackStatus = "1001" // 到达派件城市
	StatusMainline    TrackStatus = "1002" // 运输干线
	StatusTransfer    TrackStatus = "1003" // 转递

	StatusAwaitPickup    TrackStatus = "1"   // 揽收
	StatusOrderPlaced    TrackStatus = "101" // 已下单
	StatusAwaitingPickup TrackStatus = "102" // 待揽收
	StatusPickedUp       TrackStatus = "103" // 已揽收

	StatusDifficult         TrackStatus = "2"   // 疑难件
	StatusSignExpired       TrackStatus = "201" // 签收超时
	StatusUpdateExpired     TrackStatus = "202" // 更新超时
	StatusRefuseReceive     TrackStatus = "203" // 拒收(退件)
	StatusDeliveryException TrackStatus = "204" // 派件异常
	StatusStationException  TrackStatus = "205" // 站点或快递柜超时未取件
	StatusNotContacted      TrackStatus = "206" // 未联系上收件人
	StatusOutDeliveryArea   TrackStatus = "207" // 超出配送区域
	StatusUndelivered       TrackStatus = "208" // 滞留 – 暂无法进行派件
	StatusDamaged           TrackStatus = "209" // 破损
	StatusCancelOrder       TrackStatus = "210" // 用户取消订单

	StatusSignedDelivery TrackStatus = "3"   // 签收
	StatusSelfSigned     TrackStatus = "301" // 本人签收
	StatusAbnormalSigned TrackStatus = "302" // 派件异常后签收
	StatusOtherSigned    TrackStatus = "303" // 代签
	StatusStationSigned  TrackStatus = "304" // 站点代签或者投柜代签

	StatusReturnSigned TrackStatus = "4"   // 退签
	StatusSalesOrder   TrackStatus = "401" // 快递单已撤销

	StatusDelivering       TrackStatus = "5"   // 派件
	StatusDeliveredStation TrackStatus = "501" // 投柜或驿站 快递已投柜或已送达驿站

	StatusReturned TrackStatus = "6" // 退回

	StatusTransferAnother TrackStatus = "7" // 转寄

	StatusCustomsClearance          TrackStatus = "8"  // 清关
	StatusWaitCustomsClearance      TrackStatus = "10" // 等待清关
	StatusCustomsCleaning           TrackStatus = "11" // 清关中
	StatusCustomsClearanceCompleted TrackStatus = "12" // 清关完成
	StatusCustomsClearanceFail      TrackStatus = "13" // 清关异常

	StatusRefusal TrackStatus = "14" // 拒签
)

func (TrackStatus) GetStatusToStandardState

func (ts TrackStatus) GetStatusToStandardState() express.State

Jump to

Keyboard shortcuts

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