Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Accounting ¶
type Accounting struct { // The full Line Of Accounting. LOA is required if there is no TAC. Loa *string `json:"loa,omitempty"` // Standard Document Number. The SDN is one way to connect money that was obligated for a specific member's move at order issuance time to expenses incurred by that member's move at invoicing time. This obviously only works if the SDN is unique to the member and to the specific set of orders. // ## Marine Corps // The last four characters of the SDN should be same as the TAC. // At the time of this writing, the Marines have separate SDNs for each category of moving expenses (HHG, POV Storage, NTS, etc.), but only one of them is unique to a specific Marine - the Commercial Travel (CT) SDN. The CT SDN **is** the Orders number for the Marines. In the future, the Marines would like to include the first 15 characters of the CT SDN in any transactions with the Third Party Payment System, and for the TPPS to include this unique value with every expense in the resulting report. // Sdn *string `json:"sdn,omitempty"` // Transportation Account Code - a reference to a line of accounting in the Transportation Global Edit Tables (TGET). This is the preferred way to charge a move expense to the correct pool of money. // > TGET is a centralized repository that contains established transportation LOAs formatted in accordance with Service/Agency LOA requirements and associated TACs. // ## Army // Army orders do not include a TAC. Instead, they provide an MDC. // > A movement designator code (MDC) provides the office of the Deputy Chief of Staff for Personnel with a record of the type of PCS travel performed by Active Army personnel. This record is used to centrally manage PCS funds. // The correct TAC can be located by looking up the MDC, move type, and Fiscal Year (corresponding to the orders issuance date) in the CROSSWALK Excel spreadsheet. // ## Navy // Navy orders include TACs for PCS expenses (if moving expenses are authorized) and (sometimes) for NTS expenses. If present, the NTS TAC will have an underscore in the last column, which would ordinarily be populated with the last digit of the current FY. The Navy always wants to use the current Fiscal Year's TAC to pay NTS invoices, which can appear years after the Orders are cut. In other words, when it comes time to pay an NTS invoice, the underscore in the NTS TAC is replaced with the last digit of the current FY, and then that reconstructed TAC is used to look up the correct LOA in TGET. // Tac *string `json:"tac,omitempty"` }
Accounting accounting
swagger:model Accounting
func (*Accounting) ContextValidate ¶
ContextValidate validates this accounting based on context it is used
func (*Accounting) MarshalBinary ¶
func (m *Accounting) MarshalBinary() ([]byte, error)
MarshalBinary interface implementation
func (*Accounting) UnmarshalBinary ¶
func (m *Accounting) UnmarshalBinary(b []byte) error
UnmarshalBinary interface implementation
type Affiliation ¶
type Affiliation string
Affiliation Branch of service
Military branch of service ¶
swagger:model Affiliation
const ( // AffiliationARMY captures enum value "ARMY" AffiliationARMY Affiliation = "ARMY" // AffiliationNAVY captures enum value "NAVY" AffiliationNAVY Affiliation = "NAVY" // AffiliationMARINES captures enum value "MARINES" AffiliationMARINES Affiliation = "MARINES" // AffiliationAIRFORCE captures enum value "AIR_FORCE" AffiliationAIRFORCE Affiliation = "AIR_FORCE" // AffiliationCOASTGUARD captures enum value "COAST_GUARD" AffiliationCOASTGUARD Affiliation = "COAST_GUARD" // AffiliationSPACEFORCE captures enum value "SPACE_FORCE" AffiliationSPACEFORCE Affiliation = "SPACE_FORCE" // AffiliationOTHER captures enum value "OTHER" AffiliationOTHER Affiliation = "OTHER" )
func NewAffiliation ¶
func NewAffiliation(value Affiliation) *Affiliation
func (Affiliation) ContextValidate ¶
ContextValidate validates this affiliation based on context it is used
func (Affiliation) Pointer ¶
func (m Affiliation) Pointer() *Affiliation
Pointer returns a pointer to a freshly-allocated Affiliation.
type Issuer ¶
type Issuer string
Issuer Organization that issues orders. If more organizations, especially civilian ones, become clients of this API in the future, this enumeration may need to be expanded.
swagger:model Issuer
const ( // IssuerArmy captures enum value "army" IssuerArmy Issuer = "army" IssuerNavy Issuer = "navy" // IssuerAirDashForce captures enum value "air-force" IssuerAirDashForce Issuer = "air-force" // IssuerMarineDashCorps captures enum value "marine-corps" IssuerMarineDashCorps Issuer = "marine-corps" // IssuerCoastDashGuard captures enum value "coast-guard" IssuerCoastDashGuard Issuer = "coast-guard" )
func (Issuer) ContextValidate ¶
ContextValidate validates this issuer based on context it is used
type Member ¶
type Member struct { // affiliation // Required: true Affiliation *Affiliation `json:"affiliation"` // In languages that use Western order, like English, this is the last name. // Required: true FamilyName string `json:"familyName"` // In languages that use Western order, like English, this is the first name. // Required: true GivenName string `json:"givenName"` // Middle name or middle initial MiddleName *string `json:"middleName,omitempty"` // rank // Required: true Rank *Rank `json:"rank"` // Jr., Sr., III, etc. Suffix *string `json:"suffix,omitempty"` // If supplied, this is the preferred form of address or preferred human-readable title. This is especially useful when a rank has multiple possible titles. For example, in the Army, an E-4 can be either a Specialist or a Corporal. In the Navy, there are dozens of possible job titles and ratings for enlisted sailors. In the Marine Corps, an E-8 can be either a Master Sergeant or a First Sergeant, and they do care about the distinction. // // If omitted, my.move.mil will show the member the default name for the provided rank and affiliation. // Title *string `json:"title,omitempty"` }
Member member
swagger:model Member
func (*Member) ContextValidate ¶
ContextValidate validate this member based on the context it is used
func (*Member) MarshalBinary ¶
MarshalBinary interface implementation
func (*Member) UnmarshalBinary ¶
UnmarshalBinary interface implementation
type Orders ¶
type Orders struct { // Electronic Data Interchange Personal Identifier, AKA the 10 digit DoD ID Number of the member. // Required: true // Pattern: ^\d{10}$ Edipi string `json:"edipi"` // issuer // Required: true Issuer *Issuer `json:"issuer"` // Orders number. Supposed to be unique, but in practice uniqueness is not guaranteed for all branches of service. // # Army // Typically found in the upper-left hand corner of printed orders. For example, "030-00362". At this time, there is no common format for Orders numbers between Army installations. // # Navy // Corresponds to the CT (Commercial Travel) SDN. On printed orders, this is found on the SDN line in the `------- ACCOUNTING DATA -------` section in the `PCS ACCOUNTING DATA` paragraph. For example, "N0001234ABC5XYZ". // The BUPERS Orders number is not suitable, because it includes the sailor's full SSN, and the included four digit date code could repeat for a sailor if he or she gets orders exactly 10 years apart. // No-cost moves do not have a CT SDN, because they involve no travel. Without a CT SDN, USN Orders have nothing to use for the Orders number. Such Orders won't authorize any PCS expenses either, so they do not need to be submitted to this API. // # Marine Corps // Corresponds to the CT (Commercial Travel) SDN. On Web Orders, the CT SDN is found in the table at the bottom, in the last column of the row that begins with "Travel". For example, "M7000213CTB28DZ". // No-cost moves do not have a CT SDN, because they involve no travel. Without a CT SDN, USMC Orders have nothing to use for the Orders number. Such Orders won't authorize any PCS expenses either, so they do not need to be submitted to this API. // # Air Force // Corresponds to the SPECIAL ORDER NO, found in box 27 on AF Form 899. For example, "AJ-063322". // # Coast Guard // Corresponds to the Travel Order No. For example, "1214G85PRAAGK000". // # Civilian // Corresponds to the Travel Authorization Number. For example, "PS8D000025". // // Example: M7000213CTB28DZ // Required: true OrdersNum string `json:"ordersNum"` // revisions // Required: true Revisions []*Revision `json:"revisions"` // Universally Unique IDentifier. Generated internally. // Example: 80200fa9-4ee2-49c5-b4fd-88b3ef4bd5eb // Format: uuid UUID strfmt.UUID `json:"uuid,omitempty"` }
Orders orders
swagger:model Orders
func (*Orders) ContextValidate ¶
ContextValidate validate this orders based on the context it is used
func (*Orders) MarshalBinary ¶
MarshalBinary interface implementation
func (*Orders) UnmarshalBinary ¶
UnmarshalBinary interface implementation
type OrdersType ¶
type OrdersType string
OrdersType The common types fit into the acronym ASTRO-U.
- **A**ccession - Joining the military
- **S**eparation / Retirement - Leaving the military
- **T**raining
- **R**otational
- **O**perational
- **U**nit Move - When an entire unit is reassigned to another installation, often as a deployment
As of this writing, none of the branches of service distinguish between separation and retirement Orders in their systems, even though the NTS entitlement lasts longer for retirement.
Consequences of this field include
- NTS entitlements are different between Orders types.
- Deadlines to create a shipment associated with Orders differs by Orders type.
- Accession, separation, and retirement moves currently require the member to go through in-person counseling at the TMO / PPPO.
swagger:model OrdersType
const ( // OrdersTypeAccession captures enum value "accession" OrdersTypeAccession OrdersType = "accession" // OrdersTypeBetweenDashDutyDashStations captures enum value "between-duty-stations" OrdersTypeBetweenDashDutyDashStations OrdersType = "between-duty-stations" // OrdersTypeBrac captures enum value "brac" OrdersTypeBrac OrdersType = "brac" // OrdersTypeCot captures enum value "cot" OrdersTypeCot OrdersType = "cot" // OrdersTypeEmergencyDashEvac captures enum value "emergency-evac" OrdersTypeEmergencyDashEvac OrdersType = "emergency-evac" // OrdersTypeIpcot captures enum value "ipcot" OrdersTypeIpcot OrdersType = "ipcot" // OrdersTypeLowDashCostDashTravel captures enum value "low-cost-travel" OrdersTypeLowDashCostDashTravel OrdersType = "low-cost-travel" // OrdersTypeOperational captures enum value "operational" OrdersTypeOperational OrdersType = "operational" // OrdersTypeOteip captures enum value "oteip" OrdersTypeOteip OrdersType = "oteip" // OrdersTypeRotational captures enum value "rotational" OrdersTypeRotational OrdersType = "rotational" // OrdersTypeSeparation captures enum value "separation" OrdersTypeSeparation OrdersType = "separation" // OrdersTypeSpecialDashPurpose captures enum value "special-purpose" OrdersTypeSpecialDashPurpose OrdersType = "special-purpose" // OrdersTypeTraining captures enum value "training" OrdersTypeTraining OrdersType = "training" // OrdersTypeUnitDashMove captures enum value "unit-move" OrdersTypeUnitDashMove OrdersType = "unit-move" )
func NewOrdersType ¶
func NewOrdersType(value OrdersType) *OrdersType
func (OrdersType) ContextValidate ¶
ContextValidate validates this orders type based on context it is used
func (OrdersType) Pointer ¶
func (m OrdersType) Pointer() *OrdersType
Pointer returns a pointer to a freshly-allocated OrdersType.
type Rank ¶
type Rank string
Rank DoD paygrade or rank of the service member. Some of these ranks will have identical entitlements.
swagger:model Rank
const ( // RankAviationDashCadet captures enum value "aviation-cadet" RankAviationDashCadet Rank = "aviation-cadet" // RankCadet captures enum value "cadet" RankCadet Rank = "cadet" // RankCivilian captures enum value "civilian" RankCivilian Rank = "civilian" // RankEDash1 captures enum value "e-1" RankEDash1 Rank = "e-1" // RankEDash2 captures enum value "e-2" RankEDash2 Rank = "e-2" // RankEDash3 captures enum value "e-3" RankEDash3 Rank = "e-3" // RankEDash4 captures enum value "e-4" RankEDash4 Rank = "e-4" // RankEDash5 captures enum value "e-5" RankEDash5 Rank = "e-5" // RankEDash6 captures enum value "e-6" RankEDash6 Rank = "e-6" // RankEDash7 captures enum value "e-7" RankEDash7 Rank = "e-7" // RankEDash8 captures enum value "e-8" RankEDash8 Rank = "e-8" // RankEDash9 captures enum value "e-9" RankEDash9 Rank = "e-9" // RankEDash9DashSPECIALDashSENIORDashENLISTED captures enum value "E-9-SPECIAL-SENIOR-ENLISTED" RankEDash9DashSPECIALDashSENIORDashENLISTED Rank = "E-9-SPECIAL-SENIOR-ENLISTED" // RankMidshipman captures enum value "midshipman" RankMidshipman Rank = "midshipman" // RankODash1DashACADEMYDashGRADUATE captures enum value "o-1-ACADEMY-GRADUATE" RankODash1DashACADEMYDashGRADUATE Rank = "o-1-ACADEMY-GRADUATE" // RankODash2 captures enum value "o-2" RankODash2 Rank = "o-2" // RankODash3 captures enum value "o-3" RankODash3 Rank = "o-3" // RankODash4 captures enum value "o-4" RankODash4 Rank = "o-4" // RankODash5 captures enum value "o-5" RankODash5 Rank = "o-5" // RankODash6 captures enum value "o-6" RankODash6 Rank = "o-6" // RankODash7 captures enum value "o-7" RankODash7 Rank = "o-7" // RankODash8 captures enum value "o-8" RankODash8 Rank = "o-8" // RankODash9 captures enum value "o-9" RankODash9 Rank = "o-9" // RankODash10 captures enum value "o-10" RankODash10 Rank = "o-10" // RankWDash1 captures enum value "w-1" RankWDash1 Rank = "w-1" // RankWDash2 captures enum value "w-2" RankWDash2 Rank = "w-2" // RankWDash3 captures enum value "w-3" RankWDash3 Rank = "w-3" // RankWDash4 captures enum value "w-4" RankWDash4 Rank = "w-4" // RankWDash5 captures enum value "w-5" RankWDash5 Rank = "w-5" )
func (Rank) ContextValidate ¶
ContextValidate validates this rank based on context it is used
type Revision ¶
type Revision struct { // Free-form text that may or may not contain information relevant to moving. Comments *string `json:"comments,omitempty"` // The date and time that these orders were cut. If omitted, the current date and time will be used. // Format: date-time DateIssued *strfmt.DateTime `json:"dateIssued,omitempty"` // gaining unit // Required: true GainingUnit *Unit `json:"gainingUnit"` // True if the service member has any dependents (e.g., spouse, children, caring for an elderly parent, etc.), False otherwise. // When the member has dependents, it usually raises their weight entitlement. // // Required: true HasDependents *bool `json:"hasDependents"` // losing unit // Required: true LosingUnit *Unit `json:"losingUnit"` // member // Required: true Member *Member `json:"member"` // No Cost Move. If true, then these orders do not authorize any move expenses. If omitted or false, then these orders are a PCS and should authorize move expenses. // One scenario that leads to a no-cost move is a Permanent Change of Assignment without Permanent Change of Station. A PCA without PCS happens when a member is assigned to a new unit at the same duty station, or to a new duty station geographically close to the current duty station. // It is not unheard of for the initial revision of orders to have this set to false and then later to be amended to true and vice-versa. // NoCostMove bool `json:"noCostMove,omitempty"` // nts accounting NtsAccounting *Accounting `json:"ntsAccounting,omitempty"` // orders type // Required: true OrdersType *OrdersType `json:"ordersType"` // pcs accounting PcsAccounting *Accounting `json:"pcsAccounting,omitempty"` // pov shipment accounting PovShipmentAccounting *Accounting `json:"povShipmentAccounting,omitempty"` // pov storage accounting PovStorageAccounting *Accounting `json:"povStorageAccounting,omitempty"` // Earliest date that the service member is allowed to report for duty at the new duty station. If omitted, the member is allowed to report as early as desired. // Format: date ReportNoEarlierThan *strfmt.Date `json:"reportNoEarlierThan,omitempty"` // Latest date that the service member is allowed to report for duty at the new duty station. Should be included for most Orders types, but can be missing for Separation / Retirement Orders. // Format: date ReportNoLaterThan *strfmt.Date `json:"reportNoLaterThan,omitempty"` // Sequence number. As Orders are amended, the Revision with the highest sequence number is considered the current, authoritative version of the Orders, even if its dateIssued is earlier. // // The sequence number is NOT required to increase monotonically or sequentially; in other words, if a set of orders is modified twice, the sequence numbers could be 1, 5858300, and 30. // // Required: true // Minimum: 0 SeqNum *int64 `json:"seqNum"` // status // Required: true Status *Status `json:"status"` // TDY (Temporary Duty Yonder) en-route. If omitted, assume false. TdyEnRoute bool `json:"tdyEnRoute,omitempty"` // tour type TourType TourType `json:"tourType,omitempty"` // ub accounting UbAccounting *Accounting `json:"ubAccounting,omitempty"` }
Revision revision
swagger:model Revision
func (*Revision) ContextValidate ¶
ContextValidate validate this revision based on the context it is used
func (*Revision) MarshalBinary ¶
MarshalBinary interface implementation
func (*Revision) UnmarshalBinary ¶
UnmarshalBinary interface implementation
type Status ¶
type Status string
Status Indicates whether these Orders are authorized, RFO (Request For Orders), or canceled. An RFO is not sufficient to authorize moving expenses; only authorized Orders can do that.
swagger:model Status
func (Status) ContextValidate ¶
ContextValidate validates this status based on context it is used
type TourType ¶
type TourType string
TourType Accompanied or Unaccompanied; i.e., are dependents authorized to accompany the service member on the move. For certain OCONUS destinations, the tour type affects the member's entitlement. Otherwise, it doesn't matter.
If omitted, assume accompanied.
swagger:model TourType
const ( // TourTypeAccompanied captures enum value "accompanied" TourTypeAccompanied TourType = "accompanied" // TourTypeUnaccompanied captures enum value "unaccompanied" TourTypeUnaccompanied TourType = "unaccompanied" // TourTypeUnaccompaniedDashDependentsDashRestricted captures enum value "unaccompanied-dependents-restricted" TourTypeUnaccompaniedDashDependentsDashRestricted TourType = "unaccompanied-dependents-restricted" )
func NewTourType ¶
func (TourType) ContextValidate ¶
ContextValidate validates this tour type based on context it is used
type Unit ¶
type Unit struct { // May be FPO or APO for OCONUS commands. City *string `json:"city,omitempty"` // ISO 3166-1 alpha-2 country code. If blank, but city and locality or postalCode are not blank, assume US // Pattern: ^[A-Z]{2}$ Country *string `json:"country,omitempty"` // State (US). OCONUS units may not have the equivalent information available. Locality *string `json:"locality,omitempty"` // Human-readable name of the Unit. Name *string `json:"name,omitempty"` // In the USA, this is the ZIP Code. PostalCode *string `json:"postalCode,omitempty"` // Unit Identification Code - a six character alphanumeric code that uniquely identifies each United States Department of Defense entity. Used in Army, Air Force, and Navy orders. // Note that the Navy has the habit of omitting the leading character, which is always "N" for them. // // Pattern: ^[A-Z][A-Z0-9]{5}$ Uic *string `json:"uic,omitempty"` }
Unit Information about either the losing or gaining Unit. If these are separation orders, the location information for the gaining Unit may be blank.
swagger:model Unit
func (*Unit) ContextValidate ¶
ContextValidate validates this unit based on context it is used
func (*Unit) MarshalBinary ¶
MarshalBinary interface implementation
func (*Unit) UnmarshalBinary ¶
UnmarshalBinary interface implementation