travel

package
v0.0.0-...-f451f6a Latest Latest
Warning

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

Go to latest
Published: May 15, 2021 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const (
	EC_APIURL       = "apiurl"       // 请求地址
	EC_APPTOKEN     = "APPTOKEN"     // API账号
	EC_APPKEY       = "APPKEY"       // API密码
	EC_HAWBCODETYPE = "HAWBCODETYPE" // 获取轨迹单号类型 0:运单 1:转单
)
View Source
const (
	HUALEI_APIURL       = "apiurl"       // 请求地址
	HUALEI_USERNSME     = "username"     // API账号
	HUALEI_PASSWORD     = "password"     // API密码
	HUALEI_HAWBCODETYPE = "hawbcodetype" // 获取轨迹单号类型 0:运单 1:转单
)
View Source
const (
	ITDIDA_APIURL   = "apiurl"   // 请求地址
	ITDIDA_USERNAME = "username" // 账号
	ITDIDA_PASSWORD = "password" // 密码
)

易抵达

View Source
const (
	JIEDE_URL   = "url"          // 请求地址
	JIEDE_TOKEN = "accrss_token" // token
)
View Source
const (
	K5_APIURL       = "apiulr"       // 请求地址
	K5_CLIENTID     = "CLIENTID"     // 客户编码
	K5_TOKEN        = "TOKEN"        // 验证 Token
	K5_HAWBCODETYPE = "HAWBCODETYPE" // 获取轨迹单号类型 0:运单 1:转单
)
View Source
const (
	RTB_APIURL   = "apiurl"   // 请求地址
	RTB_APPTOKEN = "appToken" // API账号
	RTB_APPKEY   = "appKey"   // API密码
)
View Source
const (
	XC_APIURL   = "apiurl"   // 请求地址
	XC_USERNAME = "username" // 账号
	XC_PASSWORD = "password" // 密码
)

鑫成

View Source
const (
	ZM_APIURL       = "apiurl"       // 请求地址
	ZM_APPID        = "APPID"        // APP识别代码
	ZM_DEVICEID     = "DEVICEID"     // 设备号
	ZM_APPSECRET    = "APPSECRET"    // appSecret
	ZM_HAWBCODETYPE = "HAWBCODETYPE" // 获取轨迹单号类型 0:运单 1:转单
)
View Source
const (
	EMMIS_URL = "url" // 请求地址
)
View Source
const (
	HLHTML_URL = "url" // 请求地址
)
View Source
const (
	Kingtrans_URL = "url" // 请求地址
)
View Source
const (
	YUTENGHTML_URL = "url" // 请求地址
)

Variables

This section is empty.

Functions

func CheckArgs

func CheckArgs(reqMap map[string]string, requiredKeys []string) entity.TrackingResponse

func GetTrackingInstance

func GetTrackingInstance(req entity.TrackRequest) entity.TrackingResponse

工厂实现接口

Types

type AntronexpressTrackingHandler

type AntronexpressTrackingHandler struct{}

func (*AntronexpressTrackingHandler) CheckArgs

func (*AntronexpressTrackingHandler) GetTracking

type AntronexpressTrackingResponse

type AntronexpressTrackingResponse struct {
	Total int `json:"total"`
	Rows  []struct {
		Details []struct {
			Country       string `json:"country"`
			Creator       string `json:"creator"`
			Datetime      string `json:"datetime"`
			ExpressNumber string `json:"expressNumber"`
			PodNameCh     string `json:"podNameCh"`
			PodName       string `json:"podName"`
			Location      string `json:"location"`
			Remark        string `json:"remark"`
			ID            string `json:"id"`
		} `json:"details"`
	} `json:"rows"`
}

type AramexTrackingHandler

type AramexTrackingHandler struct{}

func (*AramexTrackingHandler) CheckArgs

func (*AramexTrackingHandler) GetTracking

type CDEKTrackingHandler

type CDEKTrackingHandler struct{}

func (*CDEKTrackingHandler) CheckArgs

func (*CDEKTrackingHandler) GetTracking

type CDEKTrackingResponse

type CDEKTrackingResponse struct {
	Alerts []struct {
		Type      string `json:"type"`
		Msg       string `json:"msg"`
		ErrorCode string `json:"errorCode"`
	} `json:"alerts,omitempty"`
	TrackingDetails []struct {
		StatusCode string `json:"statusCode"`
		StatusName string `json:"statusName"`
		CityCode   string `json:"cityCode"`
		CityName   string `json:"cityName"`
		Date       string `json:"date"`
	} `json:"trackingDetails,omitempty"`
}

type CseRUTrackingHandler

type CseRUTrackingHandler struct{}

func (*CseRUTrackingHandler) CheckArgs

func (*CseRUTrackingHandler) GetTracking

type DHLTrackingHandler

type DHLTrackingHandler struct{}

func (*DHLTrackingHandler) CheckArgs

func (*DHLTrackingHandler) GetTracking

type DHLTrackingResponse

type DHLTrackingResponse struct {
	Results []struct {
		ID        string `json:"id"`
		Label     string `json:"label"`
		Type      string `json:"type"`
		Duplicate bool   `json:"duplicate"`
		Origin    struct {
			Value string `json:"value"`
			Label string `json:"label"`
			URL   string `json:"url"`
		} `json:"origin"`
		Destination struct {
			Value string `json:"value"`
			Label string `json:"label"`
			URL   string `json:"url"`
		} `json:"destination"`
		Description          string `json:"description"`
		HasDuplicateShipment bool   `json:"hasDuplicateShipment"`
		Signature            struct {
			Link struct {
				URL   string `json:"url"`
				Label string `json:"label"`
			} `json:"link"`
			Type        string `json:"type"`
			Description string `json:"description"`
			Signatory   string `json:"signatory"`
			Help        string `json:"help"`
		} `json:"signature"`
		Pieces struct {
			Value       int      `json:"value"`
			Label       string   `json:"label"`
			ShowSummary bool     `json:"showSummary"`
			PIds        []string `json:"pIds"`
		} `json:"pieces"`
		Checkpoints []struct {
			Counter     int      `json:"counter"`
			Description string   `json:"description"`
			Time        string   `json:"time"`
			Date        string   `json:"date"`
			Location    string   `json:"location"`
			TotalPieces int      `json:"totalPieces,omitempty"`
			PIds        []string `json:"pIds,omitempty"`
		} `json:"checkpoints"`
		CheckpointLocationLabel string `json:"checkpointLocationLabel"`
		CheckpointTimeLabel     string `json:"checkpointTimeLabel"`
		Edd                     struct {
			Label    string `json:"label"`
			Comments string `json:"comments"`
		} `json:"edd"`
	} `json:"results,omitempty"`
	Errors []struct {
		Code    int    `json:"code"`
		Label   string `json:"label"`
		Message string `json:"message"`
		ID      string `json:"id"`
	} `json:"errors,omitempty"`
}

type DPDTrackingHandler

type DPDTrackingHandler struct{}

func (*DPDTrackingHandler) CheckArgs

func (*DPDTrackingHandler) GetTracking

type DPDTrackingResponse

type DPDTrackingResponse struct {
	ParcellifecycleResponse struct {
		ParcelLifeCycleData struct {
			ShipmentInfo struct {
				ParcelLabelNumber string `json:"parcelLabelNumber"`
				ServiceElements   []struct {
					Label   string   `json:"label"`
					Content []string `json:"content"`
				} `json:"serviceElements"`
				SortingCode             string        `json:"sortingCode"`
				ProductName             string        `json:"productName"`
				CodInformationAvailable bool          `json:"codInformationAvailable"`
				Documents               []interface{} `json:"documents"`
				ReceiverCountryIsoCode  string        `json:"receiverCountryIsoCode"`
				AdditionalProperties    []struct {
					Key   string `json:"key"`
					Value string `json:"value"`
				} `json:"additionalProperties"`
			} `json:"shipmentInfo"`
			StatusInfo []struct {
				Status      string `json:"status"`
				Label       string `json:"label"`
				Description struct {
					Content []string `json:"content"`
				} `json:"description"`
				StatusHasBeenReached bool   `json:"statusHasBeenReached"`
				IsCurrentStatus      bool   `json:"isCurrentStatus"`
				Location             string `json:"location,omitempty"`
				Depot                struct {
					BusinessUnit string `json:"businessUnit"`
					Number       string `json:"number"`
				} `json:"depot,omitempty"`
				Date           string        `json:"date,omitempty"`
				NormalItems    []interface{} `json:"normalItems"`
				ImportantItems []interface{} `json:"importantItems"`
				ErrorItems     []interface{} `json:"errorItems"`
			} `json:"statusInfo"`
		} `json:"parcelLifeCycleData"`
	} `json:"parcellifecycleResponse"`
}

type DPDUKTrackingHandler

type DPDUKTrackingHandler struct{}

func (*DPDUKTrackingHandler) CheckArgs

func (*DPDUKTrackingHandler) GetTracking

type DPDUKTrackingResponse

type DPDUKTrackingResponse struct {
	Success bool        `json:"success"`
	Error   interface{} `json:"error"`
	Obj     struct {
		Parcel []struct {
			ParcelCode string `json:"parcelCode"`
		} `json:"parcel,omitempty"`
		TotalResults  int    `json:"totalResults"`
		SearchSession string `json:"searchSession"`
	} `json:"obj"`
}

type DPDUKTrackingResponseData

type DPDUKTrackingResponseData struct {
	Success bool        `json:"success"`
	Error   interface{} `json:"error"`
	Obj     struct {
		EstimatedDeliveryDate       interface{} `json:"estimatedDeliveryDate"`
		EstimatedDeliveryActionCode interface{} `json:"estimatedDeliveryActionCode"`
		EstimatedDeliveryStartTime  time.Time   `json:"estimatedDeliveryStartTime"`
		EstimatedDeliveryEndTime    time.Time   `json:"estimatedDeliveryEndTime"`
		TrackingEvent               []struct {
			TrackingEventDate     time.Time   `json:"trackingEventDate"`
			TrackingEventLocation string      `json:"trackingEventLocation"`
			TrackingEventStatus   string      `json:"trackingEventStatus"`
			TrackingEventImage    interface{} `json:"trackingEventImage"`
		} `json:"trackingEvent"`
	} `json:"obj"`
}

type ECTrackingHandler

type ECTrackingHandler struct{}

易仓

func (*ECTrackingHandler) CheckArgs

func (*ECTrackingHandler) GetTracking

type ECTrackingResponse

type ECTrackingResponse struct {
	Ask     string `json:"ask"`
	Message string `json:"message"`
	Data    []struct {
		Code        string `json:"Code"`
		CountryCode string `json:"Country_code"`
		NewDate     string `json:"New_date"`
		NewComment  string `json:"New_Comment"`
		Status      string `json:"Status"`
		Detail      []struct {
			OccurDate string `json:"Occur_date"`
			Comment   string `json:"Comment"`
			TrackArea string `json:"track_area"`
		} `json:"Detail"`
		CreateBy       string `json:"CreateBy"`
		WaybillNumber  string `json:"WaybillNumber"`
		TrackingNumber string `json:"TrackingNumber"`
	} `json:"Data"`
	Error     []interface{} `json:"Error"`
	TimeCostS float64       `json:"time_cost(s)"`
}

type EMSTrackingHandler

type EMSTrackingHandler struct{}

func (*EMSTrackingHandler) CheckArgs

func (*EMSTrackingHandler) GetTracking

type EMSTrackingResponse

type EMSTrackingResponse struct {
	Success bool `json:"success"`
	Value   struct {
		ReceiverAddress           string `json:"receiverAddress"`
		SenderAddress             string `json:"senderAddress"`
		DomesticMailResultDtoList []struct {
			ResCode string `json:"resCode"`
			ResMsg  string `json:"resMsg"`
			ResObj  []struct {
				TraceNo       string `json:"traceNo"`
				OpOrgProvName string `json:"opOrgProvName"`
				OpOrgCity     string `json:"opOrgCity"`
				OpDesc        string `json:"opDesc"`
				BubbleTime    string `json:"bubbleTime"`
			} `json:"resObj"`
			CourierInfoDto struct {
				Name             string `json:"name"`
				Phone            string `json:"phone"`
				DeliveryUserCode string `json:"deliveryUserCode"`
			} `json:"courierInfoDto"`
		} `json:"domesticMailResultDtoList"`
	} `json:"value,omitempty"`
	Message string `json:"message"`
	Object  struct {
		NoMail []interface{} `json:"noMail"`
	} `json:"object"`
}

type EastWindTrackingHandler

type EastWindTrackingHandler struct{}

东风航运

func (*EastWindTrackingHandler) CheckArgs

func (*EastWindTrackingHandler) GetTracking

type EastWindTrackingResponse

type EastWindTrackingResponse struct {
	PKID            string `json:"PKID"`
	TrackingNumber2 string `json:"TrackingNumber2"`
	ForwardNo       string `json:"ForwardNo"`
	StatusDesc      string `json:"StatusDesc"`
	StatusTime      string `json:"StatusTime"`
	Note            string `json:"Note"`
}

type EastWindTrackingResponseData

type EastWindTrackingResponseData struct {
	StatusTime string `json:"StatusTime"`
	StatusDesc string `json:"StatusDesc"`
}

type EmmisTrackingHandler

type EmmisTrackingHandler struct{}

func (*EmmisTrackingHandler) CheckArgs

func (*EmmisTrackingHandler) GetTracking

type EmmisTrackingResponse

type EmmisTrackingResponse struct {
	ReturnValue int `json:"ReturnValue"`
	RecList     []struct {
		No                string `json:"no"`
		Status            int    `json:"status"`
		TrackingEventList []struct {
			Date    string `json:"date"`
			Place   string `json:"place"`
			Details string `json:"details"`
		} `json:"trackingEventList"`
	} `json:"RecList"`
}

type FedExTrackingHandler

type FedExTrackingHandler struct{}

func (*FedExTrackingHandler) CheckArgs

func (*FedExTrackingHandler) GetTracking

type FedExTrackingRequest

type FedExTrackingRequest struct {
	TrackPackagesRequest TrackPackagesRequest `json:"TrackPackagesRequest"`
}

type FedExTrackingResponse

type FedExTrackingResponse struct {
	TrackPackagesResponse struct {
		Successful          bool `json:"successful"`
		PassedLoggedInCheck bool `json:"passedLoggedInCheck"`
		ErrorList           []struct {
			Code      string      `json:"code"`
			Message   string      `json:"message"`
			Source    interface{} `json:"source"`
			RootCause interface{} `json:"rootCause"`
		} `json:"errorList"`
		PackageList []struct {
			ScanEventList []struct {
				Date                string `json:"date"`
				Time                string `json:"time"`
				GmtOffset           string `json:"gmtOffset"`
				Status              string `json:"status"`
				StatusCD            string `json:"statusCD"`
				ScanLocation        string `json:"scanLocation"`
				ScanDetails         string `json:"scanDetails"`
				ScanDetailsHTML     string `json:"scanDetailsHtml"`
				RtrnShprTrkNbr      string `json:"rtrnShprTrkNbr"`
				StatusExceptionCode string `json:"statusExceptionCode"`
				IsException         bool   `json:"isException"`
				IsDelException      bool   `json:"isDelException"`
				IsClearanceDelay    bool   `json:"isClearanceDelay"`
				IsDelivered         bool   `json:"isDelivered"`
			} `json:"scanEventList"`
		} `json:"packageList,omitempty"`
	} `json:"TrackPackagesResponse,omitempty"`
}

type GLSGroupResponse

type GLSGroupResponse struct {
	TuStatus []struct {
		TuNo    string `json:"tuNo"`
		History []struct {
			Date    string `json:"date"`
			Time    string `json:"time"`
			EvtDscr string `json:"evtDscr"`
			Address struct {
				CountryName string `json:"countryName"`
				CountryCode string `json:"countryCode"`
				City        string `json:"city"`
			} `json:"address"`
		} `json:"history"`
	} `json:"tuStatus"`
	LastError     string `json:"lastError"`
	ExceptionText string `json:"exceptionText"`
}

type GLSGroupTrackingHandler

type GLSGroupTrackingHandler struct{}

func (*GLSGroupTrackingHandler) CheckArgs

func (*GLSGroupTrackingHandler) GetTracking

type GeswlTrackingHandler

type GeswlTrackingHandler struct{}

func (*GeswlTrackingHandler) CheckArgs

func (*GeswlTrackingHandler) GetTracking

type GreenboxTrackingHandler

type GreenboxTrackingHandler struct{}

func (*GreenboxTrackingHandler) CheckArgs

func (*GreenboxTrackingHandler) GetTracking

type GreenboxTrackingResponse

type GreenboxTrackingResponse struct {
	Rows []struct {
		MoveCenterSnm string `json:"move_center_snm"`
		PickupDt      string `json:"pickup_dt"`
		Quant         string `json:"quant"`
		CarryDt       string `json:"carry_dt"`
		DeliveryYmd   string `json:"delivery_ymd"`
		CollectionCd  string `json:"collection_cd"`
		CenterSnm     string `json:"center_snm"`
		ShipStatus    string `json:"ship_status"`
		Lineno        string `json:"lineno"`
		ManageCd      string `json:"manage_cd"`
		Inputval      string `json:"inputval"`
		ShipperSnm    string `json:"shipper_snm"`
		Tel           string `json:"tel"`
		DeliveryDt    string `json:"delivery_dt"`
		CenterCd      string `json:"center_cd"`
		ShipperCd     string `json:"shipper_cd"`
		Telandfax     string `json:"telandfax"`
		InvNo         string `json:"inv_no"`
		CollectionSnm string `json:"collection_snm"`
	} `json:"rows"`
	Results int `json:"results"`
}

type HuaLeiHtmlTrackingHandler

type HuaLeiHtmlTrackingHandler struct{}

func (*HuaLeiHtmlTrackingHandler) CheckArgs

func (*HuaLeiHtmlTrackingHandler) GetTracking

type HuaLeiTrackingHandler

type HuaLeiTrackingHandler struct{}

华磊API

func (*HuaLeiTrackingHandler) CheckArgs

func (*HuaLeiTrackingHandler) GetTracking

type HuaLeiTrackingResponse

type HuaLeiTrackingResponse struct {
	Data []struct {
		TrackDetails []struct {
			BusinessID      string `json:"business_id"`
			CountryCode     string `json:"country_code"`
			SystemID        string `json:"system_id"`
			TrackContent    string `json:"track_content"`
			TrackCreatedate string `json:"track_createdate"`
			TrackDate       string `json:"track_date"`
			TrackID         string `json:"track_id"`
			TrackKind       string `json:"track_kind"`
			TrackLocation   string `json:"track_location"`
			TrackSigndate   string `json:"track_signdate"`
			TrackSignperson string `json:"track_signperson"`
			TrackSubstate   string `json:"track_substate"`
		} `json:"trackDetails"`
		TrackingNumber string `json:"trackingNumber"`
	} `json:"data,omitempty"`
	Ack     string `json:"ack"`
	Message string `json:"message,omitempty"`
}

type ItdidaLoginRequest

type ItdidaLoginRequest struct {
	Username string `json:"username"` // 用户名
	Password string `json:"password"` // 密码
}

type ItdidaLoginResponse

type ItdidaLoginResponse struct {
	StatusCode int    `json:"statusCode"` // 状态码
	Success    bool   `json:"success"`
	Data       string `json:"data"`
}

type ItdidaResponse

type ItdidaResponse struct {
	Data []struct {
		ErrorMsg  string `json:"errorMsg"`
		No        string `json:"no"`
		TrackList []struct {
			Desc      string `json:"desc"`
			Localtion string `json:"localtion"`
			Time      string `json:"time"`
		} `json:"trackList"`
	} `json:"data"`
	StatusCode int  `json:"statusCode"`
	Success    bool `json:"success"`
}

type ItdidaTrackingHandler

type ItdidaTrackingHandler struct{}

func (*ItdidaTrackingHandler) CheckArgs

func (*ItdidaTrackingHandler) GetTracking

type JieDeTrackingHandler

type JieDeTrackingHandler struct{}

软通宝

func (*JieDeTrackingHandler) CheckArgs

func (*JieDeTrackingHandler) GetTracking

type JieDeTrackingRequest

type JieDeTrackingRequest struct {
	Validation JieDeTrackingRequestValidation `json:"validation"`
	Shipment   JieDeTrackingRequestShipment   `json:"shipment"`
}

type JieDeTrackingRequestShipment

type JieDeTrackingRequestShipment struct {
	ShipmentID string `json:"shipment_id"`
	Language   string `json:"language"`
}

type JieDeTrackingRequestValidation

type JieDeTrackingRequestValidation struct {
	Access_token string `json:"access_token"`
}

type JieDeTrackingResponse

type JieDeTrackingResponse struct {
	Status int    `json:"status"`
	Info   string `json:"info"`
	Time   int    `json:"time"`
	Data   struct {
		Shipment struct {
			ShipmentID     string `json:"shipment_id"`
			Status         string `json:"status"`
			CarrierCode    string `json:"carrier_code"`
			TrackingNumber string `json:"tracking_number"`
			ParcelNumber   string `json:"parcel_number"`
			Traces         []struct {
				Info string `json:"info"`
				Time int64  `json:"time"`
			} `json:"traces"`
		} `json:"shipment"`
	} `json:"data"`
}

type K5TrackingHandler

type K5TrackingHandler struct{}

K5

func (*K5TrackingHandler) CheckArgs

func (*K5TrackingHandler) GetTracking

type K5TrackingResponse

type K5TrackingResponse struct {
	StatusCode  string `json:"statusCode"`
	ReturnDatas []struct {
		StatusCode  string `json:"statusCode"`
		TrackNumber string `json:"trackNumber"`
		Track       struct {
			Billid      string `json:"billid"`
			TransBillid string `json:"transBillid"`
			Country     string `json:"country"`
			Destination string `json:"destination"`
			DateTime    string `json:"dateTime"`
			Status      string `json:"status"`
		} `json:"track,omitempty"`
		Items []struct {
			DateTime string `json:"dateTime"`
			Location string `json:"location"`
			Info     string `json:"info"`
		} `json:"items,omitempty"`
		Message string `json:"message,omitempty"`
	} `json:"returnDatas"`
}

type KingtransHTMLTrackingHandler

type KingtransHTMLTrackingHandler struct{}

易宇通-HTML

http://hgzx.kingtrans.cn

http://shunze.kingtrans.net

http://139.155.30.106:8888

func (*KingtransHTMLTrackingHandler) CheckArgs

func (*KingtransHTMLTrackingHandler) GetTracking

type KingtransResponse

type KingtransResponse struct {
	XMLName xml.Name               `xml:"xdoc"`
	Track   KingtransResponseTrack `xml:"xout>track"`
}

type KingtransResponseTrack

type KingtransResponseTrack struct {
	XMLName   xml.Name                     `xml:"track"`
	Trackitem []KingtransResponseTrackItem `xml:"trackitem"`
}

type KingtransResponseTrackItem

type KingtransResponseTrackItem struct {
	Sdate string `xml:"sdate,attr"`
	Place string `xml:"place,attr"`
	Intro string `xml:"intro,attr"`
}

type NgTrackCargoTrackingHandler

type NgTrackCargoTrackingHandler struct{}

func (*NgTrackCargoTrackingHandler) CheckArgs

func (*NgTrackCargoTrackingHandler) GetTracking

type QuanNianDaTrackingHandler

type QuanNianDaTrackingHandler struct{}

func (*QuanNianDaTrackingHandler) CheckArgs

func (*QuanNianDaTrackingHandler) GetTracking

type RTBTrackingHandler

type RTBTrackingHandler struct{}

软通宝

func (*RTBTrackingHandler) CheckArgs

func (*RTBTrackingHandler) GetTracking

type RTBTrackingResponse

type RTBTrackingResponse struct {
	Success   int    `json:"success"`
	Cnmessage string `json:"cnmessage"`
	Enmessage string `json:"enmessage"`
	Data      []struct {
		ServerHawbcode     string `json:"server_hawbcode"`
		DestinationCountry string `json:"destination_country"`
		TrackStatus        string `json:"track_status"`
		TrackStatusName    string `json:"track_status_name"`
		SignatoryName      string `json:"signatory_name"`
		Details            []struct {
			TrackOccurDate   string `json:"track_occur_date"`
			TrackLocation    string `json:"track_location"`
			TrackDescription string `json:"track_description"`
		} `json:"details"`
	} `json:"data"`
}

type SagawaExpcojpTrackingHandler

type SagawaExpcojpTrackingHandler struct{}

func (*SagawaExpcojpTrackingHandler) CheckArgs

func (*SagawaExpcojpTrackingHandler) GetTracking

type SagawaTrackingHandler

type SagawaTrackingHandler struct{}

func (*SagawaTrackingHandler) CheckArgs

func (*SagawaTrackingHandler) GetTracking

type TNTTrackingHandler

type TNTTrackingHandler struct{}

func (*TNTTrackingHandler) CheckArgs

func (*TNTTrackingHandler) GetTracking

type TNTTrackingResponse

type TNTTrackingResponse struct {
	TrackerOutput struct {
		NotFound []struct {
			Input string `json:"input"`
			Hints struct {
				InvalidInput bool        `json:"invalidInput"`
				Carrier      interface{} `json:"carrier"`
			} `json:"hints"`
		} `json:"notFound,omitempty"`
		Consignment []struct {
			ShipmentID        int64       `json:"shipmentId"`
			ConsignmentKey    string      `json:"consignmentKey"`
			ConsignmentNumber string      `json:"consignmentNumber"`
			CustomerReference string      `json:"customerReference"`
			NumberOfPieces    int         `json:"numberOfPieces"`
			Signatory         interface{} `json:"signatory"`
			OriginAddress     struct {
				City        string `json:"city"`
				Country     string `json:"country"`
				CountryCode string `json:"countryCode"`
			} `json:"originAddress"`
			OriginDate         time.Time `json:"originDate"`
			DestinationAddress struct {
				City        string `json:"city"`
				Country     string `json:"country"`
				CountryCode string `json:"countryCode"`
			} `json:"destinationAddress"`
			DestinationDate interface{} `json:"destinationDate"`
			Status          struct {
				GroupCode             string `json:"groupCode"`
				Severity              string `json:"severity"`
				IsCancelled           bool   `json:"isCancelled"`
				IsDelivered           bool   `json:"isDelivered"`
				IsDeliveredAtReceiver bool   `json:"isDeliveredAtReceiver"`
				IsDeliveredAtBroker   bool   `json:"isDeliveredAtBroker"`
				IsNewBooking          bool   `json:"isNewBooking"`
				IsPending             bool   `json:"isPending"`
				HasSignatory          bool   `json:"hasSignatory"`
				HasProofOfDelivery    bool   `json:"hasProofOfDelivery"`
			} `json:"status"`
			Analytics struct {
				OriginDateSources struct {
					Collection time.Time   `json:"collection"`
					Pickup     interface{} `json:"pickup"`
					UsedDate   string      `json:"usedDate"`
				} `json:"originDateSources"`
				DestinationDateSources struct {
					OriginalEta       time.Time   `json:"originalEta"`
					RevisedEta        interface{} `json:"revisedEta"`
					OutForDeliveryEta interface{} `json:"outForDeliveryEta"`
					Delivered         interface{} `json:"delivered"`
					UsedDate          interface{} `json:"usedDate"`
					Edtw              interface{} `json:"edtw"`
				} `json:"destinationDateSources"`
				Product interface{} `json:"product"`
			} `json:"analytics"`
			Events []struct {
				Date              time.Time `json:"date"`
				LegacyCode        string    `json:"legacyCode"`
				StatusDescription string    `json:"statusDescription"`
				Location          struct {
					City        string `json:"city"`
					Country     string `json:"country"`
					CountryCode string `json:"countryCode"`
				} `json:"location"`
			} `json:"events,omitempty"`
		} `json:"consignment,omitempty"`
	} `json:"tracker.output"`
}

type TrackNumberInfo

type TrackNumberInfo struct {
	TrackingNumber    string `json:"trackingNumber"`
	TrackingQualifier string `json:"trackingQualifier"`
	TrackingCarrier   string `json:"trackingCarrier"`
}

type TrackPackagesRequest

type TrackPackagesRequest struct {
	AppType                string `json:"appType"`
	AppDeviceType          string `json:"appDeviceType"`
	SupportHTML            bool   `json:"supportHTML"`
	SupportCurrentLocation bool   `json:"supportCurrentLocation"`
	UniqueKey              string `json:"uniqueKey"`
	ProcessingParameters   struct {
	} `json:"processingParameters"`
	TrackingInfoList []TrackingInfo `json:"trackingInfoList"`
}

type TrackingHandler

type TrackingHandler interface {
	// 配置参数校验
	CheckArgs(req entity.TrackRequest) entity.TrackingResponse
	// 获取轨迹
	GetTracking(req entity.TrackRequest) entity.TrackingResponse
}

type TrackingInfo

type TrackingInfo struct {
	TrackNumberInfo TrackNumberInfo `json:"trackNumberInfo"`
}

type UPSTrackingHandler

type UPSTrackingHandler struct{}

func (*UPSTrackingHandler) CheckArgs

func (*UPSTrackingHandler) GetTracking

type UPSTrackingRequest

type UPSTrackingRequest struct {
	Locale         string   `json:"Locale"`
	TrackingNumber []string `json:"TrackingNumber"`
}

type UPSTrackingResponse

type UPSTrackingResponse struct {
	Code    int    `json:"code"`
	Message string `json:"message"`
	Data    struct {
		ShipToAddress struct {
			ShipToCity        string `json:"shipToCity"`
			ShipToPostalCode  string `json:"ShipToPostalCode"`
			ShipToCountryCode string `json:"ShipToCountryCode"`
		} `json:"shipToAddress"`
		PackageListInfo []struct {
			TrackingNumber string `json:"trackingNumber"`
			Activity       []struct {
				ActivityLocation struct {
					Address struct {
						City        string `json:"City"`
						CountryCode string `json:"CountryCode"`
					} `json:"Address"`
				} `json:"ActivityLocation"`
				Date   string `json:"Date"`
				Status struct {
					Code        string `json:"Code"`
					Description string `json:"Description"`
					Type        string `json:"type"`
				} `json:"Status"`
				Time string `json:"Time"`
			} `json:"activity"`
		} `json:"packageListInfo"`
		ShipperAddress struct {
			ShipperCountryCode string `json:"shipperCountryCode"`
			ShipperAddressLine string `json:"shipperAddressLine"`
			ShipperCity        string `json:"shipperCity"`
		} `json:"shipperAddress"`
		TrackingNumber               string `json:"trackingNumber"`
		ShipmentIdentificationNumber string `json:"shipmentIdentificationNumber"`
	} `json:"data,omitempty"`
	Refreshed bool `json:"refreshed"`
}

type XinChengResponse

type XinChengResponse struct {
	Error struct {
		Errorcode string `xml:"errorcode"`
		Errorinfo string `xml:"errorinfo"`
	} `xml:"error"`
	Awb struct {
		Tracklist []struct {
			Date string `xml:"date"`
			Desc string `xml:"desc"`
			Area string `xml:"area"`
		} `xml:"tracklist"`
	} `xml:"awb"`
}

type XinChengTrackingHandler

type XinChengTrackingHandler struct{}

func (*XinChengTrackingHandler) CheckArgs

func (*XinChengTrackingHandler) GetTracking

type YorkyTrackingHandler

type YorkyTrackingHandler struct{}

func (*YorkyTrackingHandler) CheckArgs

func (*YorkyTrackingHandler) GetTracking

type YorkyTrackingResponse

type YorkyTrackingResponse struct {
	Code    int    `json:"code"`
	Message string `json:"message"`
	Data    []struct {
		TrackInfoList []struct {
			TrackStation string `json:"trackStation"`
			TrackDesc    string `json:"trackDesc"`
			ChangeTime   string `json:"changeTime"`
		} `json:"trackInfoList"`
	} `json:"data"`
}

type YuTengHtmlTrackingHandler

type YuTengHtmlTrackingHandler struct{}

宇腾-HTML

func (*YuTengHtmlTrackingHandler) CheckArgs

func (*YuTengHtmlTrackingHandler) GetTracking

type ZMResponse

type ZMResponse struct {
	ResultCode int         `json:"result_code"`
	Message    string      `json:"message"`
	Solution   interface{} `json:"solution"`
	Body       string      `json:"body"`
}

type ZMResponseBody

type ZMResponseBody struct {
	Datas []struct {
		TrackRecord     string `json:"trackRecord"`
		ScanTime        string `json:"scanTime"`
		StatusNo        string `json:"statusNo"`
		IsFinish        string `json:"isFinish"`
		OperationPerson string `json:"operationPerson"`
		UploadDate      string `json:"uploadDate"`
		Contact         string `json:"contact"`
		Location        string `json:"location"`
		ID              int    `json:"id"`
		Status          string `json:"status"`
	} `json:"datas"`
	ExpectTime string `json:"expectTime"`
	TransNo    string `json:"transNo"`
	Status     string `json:"status"`
	WaybillNo  string `json:"waybillNo"`
}

type ZheMengTrackingHandler

type ZheMengTrackingHandler struct{}

哲盟

func (*ZheMengTrackingHandler) CheckArgs

func (*ZheMengTrackingHandler) GetTracking

Jump to

Keyboard shortcuts

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