go-types/pkg/upstreamApi/vstp.go

47 lines
1.7 KiB
Go

package upstreamApi
type MsgData struct {
Data VstpMsg `json:"VSTPCIFMsgV1"`
}
type VstpMsg struct {
CIFMsg Schedule `json:"schedule"`
}
type Schedule struct {
TransactionType string `json:"transaction_type"`
ScheduleStartDate string `json:"schedule_start_date"`
ScheduleEndDate string `json:"schedule_end_date"`
ScheduleDaysRun string `json:"schedule_days_runs"`
CIFTrainUID string `json:"CIF_train_uid"`
CIFSTPIndicator string `json:"CIF_stp_indicator"`
ScheduleSegment []ScheduleSegment `json:"schedule_segment"`
}
type ScheduleSegment struct {
SignallingID string `json:"signalling_id"`
ATOCCode string `json:"atoc_code"`
CIFTrainCategory string `json:"CIF_train_category"`
CIFHeadcode string `json:"CIF_headcode"`
CIFPowerType string `json:"CIF_power_type"`
CIFSpeed string `json:"CIF_speed"`
ScheduleLocation []ScheduleLocation `json:"schedule_location"`
}
type ScheduleLocation struct {
ScheduledArrivalTime string `json:"scheduled_arrival_time"`
ScheduledDepartureTime string `json:"scheduled_departure_time"`
ScheduledPassTime string `json:"scheduled_pass_time"`
PublicArrivalTime string `json:"public_arrival_time"`
PublicDepartureTime string `json:"public_departure_time"`
CIFPlatform string `json:"CIF_platform"`
CIFLine string `json:"CIF_line"`
Tiploc LocationTiploc `json:"location"`
}
type LocationTiploc struct {
Tiploc struct {
TiplocId string `json:"tiploc_id"`
} `json:"tiploc"`
}