Documentation ¶
Index ¶
- func CheckValidationData(checks []ValidationFunc) error
- func SetNoNNilOptionalInt32Field(newInt *int32, oldInt *int32) *int32
- func SetNoNilOptionalBoolField(newBool *bool, oldBool *bool) *bool
- func SetNoNilOptionalCentField(newCent *unit.Cents, oldCent *unit.Cents) *unit.Cents
- func SetNoNilOptionalPoundField(newWeight *unit.Pound, oldWeight *unit.Pound) *unit.Pound
- func SetOptionalDateTimeField(newDate *time.Time, oldDate *time.Time) *time.Time
- func SetOptionalPoundField(newWeight *unit.Pound, oldWeight *unit.Pound) *unit.Pound
- func SetOptionalStringField(newString *string, oldString *string) *string
- type AOAPacketCreator
- type AddressCreator
- type AddressUpdater
- type AdminUserCreator
- type AdminUserFetcher
- type AdminUserListFetcher
- type AdminUserUpdater
- type ApprovedSITDurationUpdateCreator
- type BillableWeightInputs
- type BoatShipmentCreator
- type BoatShipmentFetcher
- type BoatShipmentUpdater
- type ClientCertCreator
- type ClientCertFetcher
- type ClientCertListFetcher
- type ClientCertRemover
- type ClientCertUpdater
- type CounselingServicesPricer
- type CurrentSIT
- type CustomerFetcher
- type CustomerSearcher
- type CustomerSupportRemarkDeleter
- type CustomerSupportRemarkUpdater
- type CustomerSupportRemarksCreator
- type CustomerSupportRemarksFetcher
- type CustomerUpdater
- type DateSelectionChecker
- type Dollar
- type DomesticAdditionalDaysSITPricer
- type DomesticCratingPricer
- type DomesticDestinationAdditionalDaysSITPricer
- type DomesticDestinationFirstDaySITPricer
- type DomesticDestinationPricer
- type DomesticDestinationSITDeliveryPricer
- type DomesticDestinationSITFuelSurchargePricer
- type DomesticDestinationShuttlingPricer
- type DomesticFirstDaySITPricer
- type DomesticLinehaulPricer
- type DomesticNTSPackPricer
- type DomesticOriginAdditionalDaysSITPricer
- type DomesticOriginFirstDaySITPricer
- type DomesticOriginPricer
- type DomesticOriginSITFuelSurchargePricer
- type DomesticOriginSITPickupPricer
- type DomesticOriginShuttlingPricer
- type DomesticPackPricer
- type DomesticShorthaulPricer
- type DomesticUncratingPricer
- type DomesticUnpackPricer
- type ElectronicOrderCategoryCountFetcher
- type ElectronicOrderListFetcher
- type EvaluationReportCreator
- type EvaluationReportDeleter
- type EvaluationReportFetcher
- type EvaluationReportUpdater
- type ExcessWeightRiskManager
- type FeatureFlag
- type FeatureFlagFetcher
- type FetchMoveHistoryParams
- type FetchPaymentRequestListParams
- type Fetcher
- type FileInfo
- type FormCreator
- type FormTemplate
- type FormType
- type FormattedMovingExpenses
- type FormattedOtherExpenses
- type FuelSurchargePricer
- type GEXChannel
- type GHCPaymentRequestInvoiceGenerator
- type GexSender
- type HiddenMove
- type HiddenMoves
- type IsDateWeekendHolidayInfo
- type LineOfAccountingFetcher
- type ListFetcher
- type ListOrderParams
- type MTOAgentCreator
- type MTOAgentUpdater
- type MTOServiceItemCreator
- type MTOServiceItemFetcher
- type MTOServiceItemUpdater
- type MTOShipmentAddressUpdater
- type MTOShipmentCreator
- type MTOShipmentFetcher
- type MTOShipmentStatusUpdater
- type MTOShipmentUpdater
- type ManagementServicesPricer
- type MobileHomeShipmentCreator
- type MobileHomeShipmentFetcher
- type MobileHomeShipmentUpdater
- type MoveAdditionalDocumentsUploader
- type MoveAssignedOfficeUserUpdater
- type MoveCanceler
- type MoveCloseoutOfficeUpdater
- type MoveExcessWeightUploader
- type MoveFetcher
- type MoveFetcherParams
- type MoveFinancialReviewFlagSetter
- type MoveHistoryFetcher
- type MoveListFetcher
- type MoveLocker
- type MoveOrderAmendmentAvailableSinceCount
- type MoveOrderAmendmentAvailableSinceCounts
- type MoveOrderUploadType
- type MoveRouter
- type MoveSearcher
- type MoveTaskOrderChecker
- type MoveTaskOrderCreator
- type MoveTaskOrderFetcher
- type MoveTaskOrderFetcherParams
- type MoveTaskOrderHider
- type MoveTaskOrderUpdater
- type MoveUnlocker
- type MoveWeights
- type MovingExpenseCreator
- type MovingExpenseDeleter
- type MovingExpenseUpdater
- type NewPagination
- type NewQueryAssociation
- type NewQueryAssociations
- type NewQueryFilter
- type NewQueryOrder
- type OfficeFetcher
- type OfficeListFetcher
- type OfficeUserCreator
- type OfficeUserFetcher
- type OfficeUserFetcherPop
- type OfficeUserGblocFetcher
- type OfficeUserUpdater
- type OrderFetcher
- type OrderUpdater
- type OrganizationFetcher
- type OrganizationListFetcher
- type PDFMerger
- type PPMCloseoutFetcher
- type PPMDocumentFetcher
- type PPMEstimator
- type PPMShipmentCreator
- type PPMShipmentFetcher
- type PPMShipmentNewSubmitter
- type PPMShipmentReviewDocuments
- type PPMShipmentRouter
- type PPMShipmentUpdatedSubmitter
- type PPMShipmentUpdater
- type PPTASReportListFetcher
- type PWSViolationsFetcher
- type Page1Values
- type Page2Values
- type Page3Values
- type Pagination
- type ParamsPricer
- type PaymentPacketCreator
- type PaymentRequestBulkDownloadCreator
- type PaymentRequestCreator
- type PaymentRequestFetcher
- type PaymentRequestListFetcher
- type PaymentRequestRecalculator
- type PaymentRequestReviewedFetcher
- type PaymentRequestReviewedProcessor
- type PaymentRequestShipmentRecalculator
- type PaymentRequestStatusUpdater
- type PaymentRequestUploadCreator
- type PaymentServiceItemStatusUpdater
- type PostalCodeType
- type PostalCodeValidator
- type PricingDisplayParam
- type PricingDisplayParams
- type PrimeDownloadMoveUploadPDFGenerator
- type ProgearWeightTicketCreator
- type ProgearWeightTicketDeleter
- type ProgearWeightTicketUpdater
- type QueryAssociation
- type QueryAssociations
- type QueryFilter
- type QueryOrder
- type ReportViolationFetcher
- type ReportViolationsCreator
- type RequestedOfficeUserFetcher
- type RequestedOfficeUserListFetcher
- type RequestedOfficeUserUpdater
- type ReweighCreator
- type ReweighFetcher
- type ReweighUpdater
- type RoleAssociater
- type SFTPClient
- type SFTPFiler
- type SITExtensionApprover
- type SITExtensionCreator
- type SITExtensionDenier
- type SITStatus
- type SSWPPMComputer
- type SSWPPMGenerator
- type SearchCustomersParams
- type SearchMovesParams
- type ServiceItemPricer
- type ServiceRequestDocumentUploadCreator
- type ShipmentAddressUpdateRequester
- type ShipmentApprover
- type ShipmentBillableWeightCalculator
- type ShipmentCancellationRequester
- type ShipmentCreator
- type ShipmentDeleter
- type ShipmentDiversionApprover
- type ShipmentDiversionRequester
- type ShipmentPaymentSITBalance
- type ShipmentRejecter
- type ShipmentReweighRequester
- type ShipmentRouter
- type ShipmentSITStatus
- type ShipmentUpdater
- type ShipmentsPaymentSITBalance
- type SignedCertificationCreator
- type SignedCertificationUpdater
- type SitEntryDateUpdater
- type SyncadaFileProcessor
- type SyncadaSFTPReader
- type SyncadaSFTPSender
- type TableFromSliceCreator
- type TransportationAccountingCodeFetcher
- type TransportationOfficesFetcher
- type UploadCreator
- type UploadInformation
- type UploadInformationFetcher
- type UploadUpdater
- type UserFetcher
- type UserPrivilegeAssociator
- type UserRoleAssociator
- type UserSessionRevocation
- type UserUpdater
- type UserUploadToPDFConverter
- type ValidationFunc
- type WebhookSubscriptionCreator
- type WebhookSubscriptionFetcher
- type WebhookSubscriptionUpdater
- type WeightEstimatorPage1
- type WeightEstimatorPage10
- type WeightEstimatorPage11
- type WeightEstimatorPage2
- type WeightEstimatorPage3
- type WeightEstimatorPage4
- type WeightEstimatorPage5
- type WeightEstimatorPage6
- type WeightEstimatorPage7
- type WeightEstimatorPage8
- type WeightEstimatorPage9
- type WeightEstimatorPages
- type WeightTicketComputer
- type WeightTicketCreator
- type WeightTicketDeleter
- type WeightTicketFetcher
- type WeightTicketGenerator
- type WeightTicketUpdater
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CheckValidationData ¶
func CheckValidationData(checks []ValidationFunc) error
CheckValidationData runs through a list of ValidationFuncs to check for errors
func SetNoNNilOptionalInt32Field ¶
SetNoNNilOptionalInt32Field sets the correct new value for the updated int32 field.
func SetNoNilOptionalBoolField ¶
SetNoNilOptionalBoolField sets the correct new value for the updated bool field.
func SetNoNilOptionalCentField ¶
SetNoNilOptionalCentField sets the correct new value for the updated cent field. Can be nil.
func SetNoNilOptionalPoundField ¶
SetNoNilOptionalPoundField sets the correct new value for the updated weight field.
func SetOptionalDateTimeField ¶
SetOptionalDateTimeField sets the correct new value for the updated date field. Can be nil.
func SetOptionalPoundField ¶
SetOptionalPoundField sets the correct new value for the updated weight field. Can be nil.
func SetOptionalStringField ¶
SetOptionalStringField sets the correct new value for the updated string field. Can be nil.
Types ¶
type AOAPacketCreator ¶
type AOAPacketCreator interface { VerifyAOAPacketInternal(appCtx appcontext.AppContext, ppmShipmentID uuid.UUID) error CreateAOAPacket(appCtx appcontext.AppContext, ppmShipmentID uuid.UUID, isPaymentPacket bool) (afero.File, error) }
AOAPacketCreator creates an AOA packet for a PPM shipment
type AddressCreator ¶
type AddressCreator interface {
CreateAddress(appCtx appcontext.AppContext, address *models.Address) (*models.Address, error)
}
type AddressUpdater ¶
type AddressUpdater interface {
UpdateAddress(appCtx appcontext.AppContext, address *models.Address, eTag string) (*models.Address, error)
}
type AdminUserCreator ¶
type AdminUserCreator interface {
CreateAdminUser(appCtx appcontext.AppContext, user *models.AdminUser, organizationIDFilter []QueryFilter) (*models.AdminUser, *validate.Errors, error)
}
AdminUserCreator is the exported interface for creating an admin user
type AdminUserFetcher ¶
type AdminUserFetcher interface {
FetchAdminUser(appCtx appcontext.AppContext, filters []QueryFilter) (models.AdminUser, error)
}
AdminUserFetcher is the exported interface for fetching a single admin user
type AdminUserListFetcher ¶
type AdminUserListFetcher interface { FetchAdminUserList(appCtx appcontext.AppContext, filters []QueryFilter, associations QueryAssociations, pagination Pagination, ordering QueryOrder) (models.AdminUsers, error) FetchAdminUserCount(appCtx appcontext.AppContext, filters []QueryFilter) (int, error) }
AdminUserListFetcher is the exported interface for fetching multiple admin users
type AdminUserUpdater ¶
type AdminUserUpdater interface {
UpdateAdminUser(appCtx appcontext.AppContext, id uuid.UUID, payload *adminmessages.AdminUserUpdate) (*models.AdminUser, *validate.Errors, error)
}
AdminUserUpdater is the exported interface for creating an admin user
type ApprovedSITDurationUpdateCreator ¶
type ApprovedSITDurationUpdateCreator interface {
CreateApprovedSITDurationUpdate(appCtx appcontext.AppContext, sitDurationUpdate *models.SITDurationUpdate, shipmentID uuid.UUID, eTag string) (*models.MTOShipment, error)
}
ApprovedSITDurationUpdateCreator is the service object interface to create an approved SIT Duration Update
type BillableWeightInputs ¶
type BillableWeightInputs struct { CalculatedBillableWeight *unit.Pound OriginalWeight *unit.Pound ReweighWeight *unit.Pound HadManualOverride *bool }
BillableWeightInputs is a type for capturing what should be returned when a shipment's billable weight is calculated
type BoatShipmentCreator ¶
type BoatShipmentCreator interface {
CreateBoatShipmentWithDefaultCheck(appCtx appcontext.AppContext, boatshipment *models.BoatShipment) (*models.BoatShipment, error)
}
BoatShipmentCreator creates a Boat shipment
type BoatShipmentFetcher ¶
type BoatShipmentFetcher interface { GetBoatShipment(appCtx appcontext.AppContext, boatShipmentID uuid.UUID, eagerPreloadAssociations []string, postloadAssociations []string) (*models.BoatShipment, error) PostloadAssociations(appCtx appcontext.AppContext, boatShipment *models.BoatShipment, postloadAssociations []string) error }
BoatShipmentFetcher fetches a Boat shipment
type BoatShipmentUpdater ¶
type BoatShipmentUpdater interface {
UpdateBoatShipmentWithDefaultCheck(appCtx appcontext.AppContext, boatshipment *models.BoatShipment, mtoShipmentID uuid.UUID) (*models.BoatShipment, error)
}
BoatShipmentUpdater updates a Boat shipment
type ClientCertCreator ¶
type ClientCertCreator interface {
CreateClientCert(appCtx appcontext.AppContext, email string, user *models.ClientCert) (*models.ClientCert, *validate.Errors, error)
}
ClientCertCreator is the exported interface for creating an client cert
type ClientCertFetcher ¶
type ClientCertFetcher interface {
FetchClientCert(appCtx appcontext.AppContext, filters []QueryFilter) (models.ClientCert, error)
}
ClientCertFetcher is the exported interface for fetching a single client cert
type ClientCertListFetcher ¶
type ClientCertListFetcher interface { FetchClientCertList(appCtx appcontext.AppContext, filters []QueryFilter, associations QueryAssociations, pagination Pagination, ordering QueryOrder) (models.ClientCerts, error) FetchClientCertCount(appCtx appcontext.AppContext, filters []QueryFilter) (int, error) }
ClientCertListFetcher is the exported interface for fetching multiple client certs
type ClientCertRemover ¶
type ClientCertRemover interface {
RemoveClientCert(appCtx appcontext.AppContext, id uuid.UUID) (*models.ClientCert, *validate.Errors, error)
}
ClientCertRemover is the exported interface for updating an client cert
type ClientCertUpdater ¶
type ClientCertUpdater interface {
UpdateClientCert(appCtx appcontext.AppContext, id uuid.UUID, payload *adminmessages.ClientCertificateUpdate) (*models.ClientCert, *validate.Errors, error)
}
ClientCertUpdater is the exported interface for updating an client cert
type CounselingServicesPricer ¶
type CounselingServicesPricer interface { Price(appCtx appcontext.AppContext, lockedPriceCents *unit.Cents) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
CounselingServicesPricer prices counseling services for a GHC move
type CurrentSIT ¶
type CustomerFetcher ¶
type CustomerFetcher interface {
FetchCustomer(appCtx appcontext.AppContext, customerID uuid.UUID) (*models.ServiceMember, error)
}
CustomerFetcher is the service object interface for FetchCustomer
type CustomerSearcher ¶
type CustomerSearcher interface {
SearchCustomers(appCtx appcontext.AppContext, params *SearchCustomersParams) (models.ServiceMemberSearchResults, int, error)
}
type CustomerSupportRemarkDeleter ¶
type CustomerSupportRemarkDeleter interface {
DeleteCustomerSupportRemark(appCtx appcontext.AppContext, customerSupportRemarkID uuid.UUID) error
}
type CustomerSupportRemarkUpdater ¶
type CustomerSupportRemarkUpdater interface {
UpdateCustomerSupportRemark(appCtx appcontext.AppContext, params customersupportremarksop.UpdateCustomerSupportRemarkForMoveParams) (*models.CustomerSupportRemark, error)
}
type CustomerSupportRemarksCreator ¶
type CustomerSupportRemarksCreator interface {
CreateCustomerSupportRemark(appCtx appcontext.AppContext, customerSupportRemark *models.CustomerSupportRemark, moveCode string) (*models.CustomerSupportRemark, error)
}
type CustomerSupportRemarksFetcher ¶
type CustomerSupportRemarksFetcher interface {
ListCustomerSupportRemarks(appCtx appcontext.AppContext, moveCode string) (*models.CustomerSupportRemarks, error)
}
CustomerSupportRemarksFetcher is the exported interface for fetching office remarks for a move.
type CustomerUpdater ¶
type CustomerUpdater interface {
UpdateCustomer(appCtx appcontext.AppContext, eTag string, customer models.ServiceMember) (*models.ServiceMember, error)
}
CustomerUpdater is the service object interface for updating fields of a ServiceMember
type DateSelectionChecker ¶
type DateSelectionChecker interface {
IsDateWeekendHoliday(appCtx appcontext.AppContext, countryCode string, date time.Time) (*IsDateWeekendHolidayInfo, error)
}
DateSelectionChecker is the service object interface to determine business rule for given date
type DomesticAdditionalDaysSITPricer ¶
type DomesticAdditionalDaysSITPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, serviceArea string, numberOfDaysInSIT int, disableWeightMinimum bool) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticAdditionalDaysSITPricer prices domestic origin or domestic additional days SIT for a GHC move
type DomesticCratingPricer ¶
type DomesticCratingPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, billedCubicFeet unit.CubicFeet, servicesScheduleOrigin int, standaloneCrate bool, standaloneCrateCap unit.Cents) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticCratingPricer prices the domestic crating service for a GHC Move
type DomesticDestinationAdditionalDaysSITPricer ¶
type DomesticDestinationAdditionalDaysSITPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, serviceArea string, numberOfDaysInSIT int, disableWeightMinimum bool) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticDestinationAdditionalDaysSITPricer prices domestic destination additional days SIT for a GHC move
type DomesticDestinationFirstDaySITPricer ¶
type DomesticDestinationFirstDaySITPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, serviceArea string, disableWeightMinimum bool) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticDestinationFirstDaySITPricer prices domestic destination first day SIT for a GHC move
type DomesticDestinationPricer ¶
type DomesticDestinationPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, serviceArea string, isPPM bool) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticDestinationPricer prices the domestic destination price for a GHC Move
type DomesticDestinationSITDeliveryPricer ¶
type DomesticDestinationSITDeliveryPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, serviceArea string, sitSchedule int, zipDest string, zipSITDest string, distance unit.Miles) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticDestinationSITDeliveryPricer prices domestic destination SIT delivery for a GHC move
type DomesticDestinationSITFuelSurchargePricer ¶
type DomesticDestinationSITFuelSurchargePricer interface { Price(appCtx appcontext.AppContext, actualPickupDate time.Time, distance unit.Miles, weight unit.Pound, fscWeightBasedDistanceMultiplier float64, eiaFuelPrice unit.Millicents, isPPM bool) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticDestinationSITFuelSurchargePricer prices domestic destination SIT fuel surcharge
type DomesticDestinationShuttlingPricer ¶
type DomesticDestinationShuttlingPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, servicesScheduleDest int) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticDestinationShuttlingPricer prices the domestic origin shuttling service for a GHC Move
type DomesticFirstDaySITPricer ¶
type DomesticFirstDaySITPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, serviceArea string, disableWeightMinimum bool) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticFirstDaySITPricer prices domestic origin or destination first day SIT for a GHC move
type DomesticLinehaulPricer ¶
type DomesticLinehaulPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, distance unit.Miles, weight unit.Pound, serviceArea string, isPPM bool) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticLinehaulPricer prices domestic linehaul for a GHC move
type DomesticNTSPackPricer ¶
type DomesticNTSPackPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, servicesScheduleOrigin int, isPPM bool) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticNTSPackPricer prices the domestic packing for an NTS shipment of a GHC Move
type DomesticOriginAdditionalDaysSITPricer ¶
type DomesticOriginAdditionalDaysSITPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, serviceArea string, numberOfDaysInSIT int, disableWeightMinimum bool) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticOriginAdditionalDaysSITPricer prices domestic origin additional days SIT for a GHC move
type DomesticOriginFirstDaySITPricer ¶
type DomesticOriginFirstDaySITPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, serviceArea string, disableWeightMinimum bool) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticOriginFirstDaySITPricer prices domestic origin first day SIT for a GHC move
type DomesticOriginPricer ¶
type DomesticOriginPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, serviceArea string, isPPM bool) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticOriginPricer prices the domestic origin for a GHC Move
type DomesticOriginSITFuelSurchargePricer ¶
type DomesticOriginSITFuelSurchargePricer interface { Price( appCtx appcontext.AppContext, actualPickupDate time.Time, distance unit.Miles, weight unit.Pound, fscWeightBasedDistanceMultiplier float64, eiaFuelPrice unit.Millicents, isPPM bool, ) ( unit.Cents, PricingDisplayParams, error, ) ParamsPricer }
DomesticOriginSITFuelSurchargePricer prices domestic origin SIT fuel surcharge
type DomesticOriginSITPickupPricer ¶
type DomesticOriginSITPickupPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, serviceArea string, sitSchedule int, zipSITOriginOriginal string, zipSITOriginActual string, distance unit.Miles) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticOriginSITPickupPricer prices domestic origin SIT pickup for a GHC move
type DomesticOriginShuttlingPricer ¶
type DomesticOriginShuttlingPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, servicesScheduleOrigin int) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticOriginShuttlingPricer prices the domestic origin shuttling service for a GHC Move
type DomesticPackPricer ¶
type DomesticPackPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, servicesScheduleOrigin int, isPPM bool) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticPackPricer prices the domestic packing for a GHC Move
type DomesticShorthaulPricer ¶
type DomesticShorthaulPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, distance unit.Miles, weight unit.Pound, serviceArea string) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticShorthaulPricer prices the domestic shorthaul for a GHC Move
type DomesticUncratingPricer ¶
type DomesticUncratingPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, billedCubicFeet unit.CubicFeet, servicesScheduleDest int) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticUncratingPricer prices the domestic uncrating service for a GHC Move
type DomesticUnpackPricer ¶
type DomesticUnpackPricer interface { Price(appCtx appcontext.AppContext, contractCode string, requestedPickupDate time.Time, weight unit.Pound, servicesScheduleDest int, isPPM bool) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
DomesticUnpackPricer prices the domestic unpacking for a GHC Move
type ElectronicOrderCategoryCountFetcher ¶
type ElectronicOrderCategoryCountFetcher interface {
FetchElectronicOrderCategoricalCounts(appCtx appcontext.AppContext, filters []QueryFilter, andFilters *[]QueryFilter) (map[interface{}]int, error)
}
ElectronicOrderCategoryCountFetcher is the exported interface for fetching counts of Electronic orders based on provided category QueryFilters.
type ElectronicOrderListFetcher ¶
type ElectronicOrderListFetcher interface { FetchElectronicOrderList(appCtx appcontext.AppContext, filters []QueryFilter, associations QueryAssociations, pagination Pagination, ordering QueryOrder) (models.ElectronicOrders, error) FetchElectronicOrderCount(appCtx appcontext.AppContext, filters []QueryFilter) (int, error) }
ElectronicOrderListFetcher is the exported interface for fetching multiple electronic orders
type EvaluationReportCreator ¶
type EvaluationReportCreator interface {
CreateEvaluationReport(appCtx appcontext.AppContext, evaluationReport *models.EvaluationReport, locator string) (*models.EvaluationReport, error)
}
type EvaluationReportDeleter ¶
type EvaluationReportDeleter interface {
DeleteEvaluationReport(appCtx appcontext.AppContext, reportID uuid.UUID) error
}
type EvaluationReportFetcher ¶
type EvaluationReportFetcher interface { FetchEvaluationReports(appCtx appcontext.AppContext, reportType models.EvaluationReportType, moveID uuid.UUID, officeUserID uuid.UUID) (models.EvaluationReports, error) FetchEvaluationReportByID(appCtx appcontext.AppContext, reportID uuid.UUID, officeUserID uuid.UUID) (*models.EvaluationReport, error) }
EvaluationReportFetcher is the service object interface for fetching all the evaluation reports for a move as a particular office user
type EvaluationReportUpdater ¶
type EvaluationReportUpdater interface { UpdateEvaluationReport(appCtx appcontext.AppContext, evaluationReport *models.EvaluationReport, officeUserID uuid.UUID, eTag string) error SubmitEvaluationReport(appCtx appcontext.AppContext, evaluationReportID uuid.UUID, officeUserID uuid.UUID, eTag string) error }
type ExcessWeightRiskManager ¶
type ExcessWeightRiskManager interface { AcknowledgeExcessWeightRisk(appCtx appcontext.AppContext, moveID uuid.UUID, eTag string) (*models.Move, error) UpdateBillableWeightAsTOO(appCtx appcontext.AppContext, orderID uuid.UUID, weight *int, eTag string) (*models.Order, uuid.UUID, error) UpdateMaxBillableWeightAsTIO(appCtx appcontext.AppContext, orderID uuid.UUID, weight *int, remarks *string, eTag string) (*models.Order, uuid.UUID, error) }
ExcessWeightRiskManager is the service object interface for updating the max billable weight for an Order's Entitlement
type FeatureFlag ¶
Simplifed struct based on https://pkg.go.dev/go.flipt.io/flipt/rpc/flipt@v1.25.0/evaluation#VariantEvaluationResponse For boolean responses, Variant is the empty string and Match is the flag value
func (FeatureFlag) IsVariant ¶
func (ff FeatureFlag) IsVariant(variant string) bool
type FeatureFlagFetcher ¶
type FeatureFlagFetcher interface { GetBooleanFlagForUser(ctx context.Context, appCtx appcontext.AppContext, key string, flagContext map[string]string) (FeatureFlag, error) GetBooleanFlag(ctx context.Context, logger *zap.Logger, entityID string, key string, flagContext map[string]string) (FeatureFlag, error) GetVariantFlagForUser(ctx context.Context, appCtx appcontext.AppContext, key string, flagContext map[string]string) (FeatureFlag, error) GetVariantFlag(ctx context.Context, logger *zap.Logger, entityID string, key string, flagContext map[string]string) (FeatureFlag, error) }
FeatureFlagFetcher is the exported interface for feature flags
This service is a thin wrapper around flipt, so it doesn't expose all of flipt's API. We can change/expand the API as we get experience.
type FetchMoveHistoryParams ¶
type FetchPaymentRequestListParams ¶
type FetchPaymentRequestListParams struct { Branch *string Locator *string DodID *string Emplid *string LastName *string DestinationDutyLocation *string Status []string Page *int64 PerPage *int64 SubmittedAt *time.Time Sort *string Order *string OriginDutyLocation *string OrderType *string ViewAsGBLOC *string }
FetchPaymentRequestListParams is a public struct that's used to pass filter arguments to FetchPaymentRequestList
type Fetcher ¶
type Fetcher interface {
FetchRecord(appCtx appcontext.AppContext, model interface{}, filters []QueryFilter) error
}
Fetcher is the exported interface for fetching a record
type FileInfo ¶
type FileInfo struct { *models.UserUpload OriginalUploadStream io.ReadCloser PDFStream io.ReadCloser }
FileInfo is a struct that holds information about a file that we'll be converting to a PDF. It's helpful to have this as a single argument for both the work we need to do and for writing better error messages & logs.
func NewFileInfo ¶
func NewFileInfo(userUpload *models.UserUpload, stream io.ReadCloser) *FileInfo
NewFileInfo creates a new FileInfo struct.
type FormCreator ¶
type FormCreator interface {
CreateForm(template FormTemplate) (afero.File, error)
}
FormCreator is the service object interface for CreateForm
type FormTemplate ¶
type FormTemplate struct { Buffer *bytes.Reader FieldsLayout map[string]paperworkforms.FieldPos FormType FileName string Data interface{} }
FormTemplate are the struct fields defined to call CreateForm service object
type FormattedMovingExpenses ¶
type FormattedMovingExpenses struct { ContractedExpenseMemberPaid string ContractedExpenseGTCCPaid string RentalEquipmentMemberPaid string RentalEquipmentGTCCPaid string PackingMaterialsMemberPaid string PackingMaterialsGTCCPaid string WeighingFeesMemberPaid string WeighingFeesGTCCPaid string GasMemberPaid string GasGTCCPaid string TollsMemberPaid string TollsGTCCPaid string OilMemberPaid string OilGTCCPaid string OtherMemberPaid string OtherGTCCPaid string TotalMemberPaid string TotalGTCCPaid string TotalMemberPaidRepeated string TotalGTCCPaidRepeated string TotalPaidNonSIT string TotalMemberPaidSIT string TotalGTCCPaidSIT string TotalPaidSIT string }
FormattedMovingExpenses is an object representing the service member's moving expenses formatted for the SSW
type FormattedOtherExpenses ¶
FormattedOtherExpenses is an object representing the other moving expenses formatted for the SSW
type FuelSurchargePricer ¶
type FuelSurchargePricer interface { Price(appCtx appcontext.AppContext, actualPickupDate time.Time, distance unit.Miles, weight unit.Pound, fscWeightBasedDistanceMultiplier float64, eiaFuelPrice unit.Millicents, isPPM bool) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
FuelSurchargePricer prices the fuel surcharge price for a GHC Move
type GEXChannel ¶
type GEXChannel string
GEXChannel type to define constants for valid GEX Channels
const ( // GEXChannelInvoice is the URL query parameter that we use when sending EDI invoices to US Bank via GEX GEXChannelInvoice GEXChannel = "TRANSCOM-DPS-MILMOVE-CPS-IN-USBANK-RCOM" // GEXChannelDataWarehouse is the URL query parameter that we use when sending data to the IGC data warehouse GEXChannelDataWarehouse GEXChannel = "TRANSCOM-DPS-MILMOVE-GHG-IN-IGC-RCOM" )
type GHCPaymentRequestInvoiceGenerator ¶
type GHCPaymentRequestInvoiceGenerator interface {
Generate(appCtx appcontext.AppContext, paymentRequest models.PaymentRequest, sendProductionInvoice bool) (ediinvoice.Invoice858C, error)
}
GHCPaymentRequestInvoiceGenerator is the exported interface for generating an invoice
type GexSender ¶
type GexSender interface {
SendToGex(channel GEXChannel, edi string, filename string) (resp *http.Response, err error)
}
GexSender is an interface for sending and receiving a request
type HiddenMove ¶
HiddenMove struct used to store the MTO ID and the reason that the move is being hidden.
type HiddenMoves ¶
type HiddenMoves []HiddenMove
HiddenMoves is the slice of HiddenMove to return in the handler call
type LineOfAccountingFetcher ¶
type LineOfAccountingFetcher interface { FetchLongLinesOfAccounting(departmentIndicator models.DepartmentIndicator, ordersIssueDate time.Time, tacCode string, appCtx appcontext.AppContext) ([]models.LineOfAccounting, error) BuildFullLineOfAccountingString(loa models.LineOfAccounting) string }
LineOfAccountingFetcher is the exported interface for fetching lines of accounting based on a centralized location for business logic
type ListFetcher ¶
type ListFetcher interface { FetchRecordList(appCtx appcontext.AppContext, model interface{}, filters []QueryFilter, associations QueryAssociations, pagination Pagination, ordering QueryOrder) error FetchRecordCount(appCtx appcontext.AppContext, model interface{}, filters []QueryFilter) (int, error) }
ListFetcher is the exported interface for fetching multiple records
type ListOrderParams ¶
type ListOrderParams struct { Branch *string Locator *string DodID *string Emplid *string LastName *string DestinationDutyLocation *string OriginDutyLocation []string OriginGBLOC *string SubmittedAt *time.Time AppearedInTOOAt *time.Time RequestedMoveDate *string Status []string Page *int64 PerPage *int64 Sort *string Order *string NeedsPPMCloseout *bool PPMType *string CloseoutInitiated *time.Time CloseoutLocation *string OrderType *string PPMStatus *string ViewAsGBLOC *string CounselingOffice *string }
ListOrderParams is a public struct that's used to pass filter arguments to the ListOrders
type MTOAgentCreator ¶
type MTOAgentCreator interface {
CreateMTOAgentPrime(appCtx appcontext.AppContext, mtoAgent *models.MTOAgent) (*models.MTOAgent, error)
}
MTOAgentCreator is the service object interface for CreateMTOAgent
type MTOAgentUpdater ¶
type MTOAgentUpdater interface { UpdateMTOAgentBasic(appCtx appcontext.AppContext, mtoAgent *models.MTOAgent, eTag string) (*models.MTOAgent, error) UpdateMTOAgentPrime(appCtx appcontext.AppContext, mtoAgent *models.MTOAgent, eTag string) (*models.MTOAgent, error) }
MTOAgentUpdater is the service object interface for UpdateMTOAgent
type MTOServiceItemCreator ¶
type MTOServiceItemCreator interface {
CreateMTOServiceItem(appCtx appcontext.AppContext, serviceItem *models.MTOServiceItem) (*models.MTOServiceItems, *validate.Errors, error)
}
MTOServiceItemCreator is the exported interface for creating a mto service item
type MTOServiceItemFetcher ¶
type MTOServiceItemFetcher interface {
GetServiceItem(appCtx appcontext.AppContext, serviceItemID uuid.UUID) (*models.MTOServiceItem, error)
}
MTOServiceItemFetcher is the exported interface for fetching a mto service item
type MTOServiceItemUpdater ¶
type MTOServiceItemUpdater interface { ApproveOrRejectServiceItem(appCtx appcontext.AppContext, mtoServiceItemID uuid.UUID, status models.MTOServiceItemStatus, rejectionReason *string, eTag string) (*models.MTOServiceItem, error) UpdateMTOServiceItem(appCtx appcontext.AppContext, serviceItem *models.MTOServiceItem, eTag string, validator string) (*models.MTOServiceItem, error) UpdateMTOServiceItemBasic(appCtx appcontext.AppContext, serviceItem *models.MTOServiceItem, eTag string) (*models.MTOServiceItem, error) UpdateMTOServiceItemPrime(appCtx appcontext.AppContext, serviceItem *models.MTOServiceItem, planner route.Planner, shipment models.MTOShipment, eTag string) (*models.MTOServiceItem, error) ConvertItemToCustomerExpense(appCtx appcontext.AppContext, shipment *models.MTOShipment, customerExpenseReason *string, convertToCustomerExpense bool) (*models.MTOServiceItem, error) }
MTOServiceItemUpdater is the exported interface for updating an mto service item
type MTOShipmentAddressUpdater ¶
type MTOShipmentAddressUpdater interface {
UpdateMTOShipmentAddress(appCtx appcontext.AppContext, newAddress *models.Address, mtoShipmentID uuid.UUID, eTag string, mustBeAvailableToPrime bool) (*models.Address, error)
}
MTOShipmentAddressUpdater is the exported interface for updating an address on an MTO Shipment
type MTOShipmentCreator ¶
type MTOShipmentCreator interface {
CreateMTOShipment(appCtx appcontext.AppContext, MTOShipment *models.MTOShipment) (*models.MTOShipment, error)
}
MTOShipmentCreator is the exported interface for creating a shipment
type MTOShipmentFetcher ¶
type MTOShipmentFetcher interface { ListMTOShipments(appCtx appcontext.AppContext, moveID uuid.UUID) ([]models.MTOShipment, error) GetShipment(appCtx appcontext.AppContext, shipmentID uuid.UUID, eagerAssociations ...string) (*models.MTOShipment, error) GetDiversionChain(appCtx appcontext.AppContext, shipmentID uuid.UUID) (*[]models.MTOShipment, error) }
MTOShipmentFetcher is the service object interface for fetching all shipments of a move
type MTOShipmentStatusUpdater ¶
type MTOShipmentStatusUpdater interface {
UpdateMTOShipmentStatus(appCtx appcontext.AppContext, shipmentID uuid.UUID, status models.MTOShipmentStatus, rejectionReason *string, diversionReason *string, eTag string) (*models.MTOShipment, error)
}
MTOShipmentStatusUpdater is the exported interface for updating an MTO shipment status
type MTOShipmentUpdater ¶
type MTOShipmentUpdater interface { MTOShipmentsMTOAvailableToPrime(appCtx appcontext.AppContext, mtoShipmentID uuid.UUID) (bool, error) UpdateMTOShipment(appCtx appcontext.AppContext, mtoShipment *models.MTOShipment, eTag string, api string) (*models.MTOShipment, error) }
MTOShipmentUpdater is the service object interface for UpdateMTOShipment
type ManagementServicesPricer ¶
type ManagementServicesPricer interface { Price(appCtx appcontext.AppContext, lockedPriceCents *unit.Cents) (unit.Cents, PricingDisplayParams, error) ParamsPricer }
ManagementServicesPricer prices management services for a GHC move
type MobileHomeShipmentCreator ¶
type MobileHomeShipmentCreator interface {
CreateMobileHomeShipmentWithDefaultCheck(appCtx appcontext.AppContext, mobileHomeshipment *models.MobileHome) (*models.MobileHome, error)
}
MobileHomeShipmentCreator creates a Mobile Home shipment
type MobileHomeShipmentFetcher ¶
type MobileHomeShipmentFetcher interface { GetMobileHomeShipment(appCtx appcontext.AppContext, mobileHomeShipmentID uuid.UUID, eagerPreloadAssociations []string, postloadAssociations []string) (*models.MobileHome, error) PostloadAssociations(appCtx appcontext.AppContext, mobileHomeShipment *models.MobileHome, postloadAssociations []string) error }
MobileHomeShipmentFetcher fetches a Mobile Home shipment
type MobileHomeShipmentUpdater ¶
type MobileHomeShipmentUpdater interface {
UpdateMobileHomeShipmentWithDefaultCheck(appCtx appcontext.AppContext, mobileHomeshipment *models.MobileHome, mtoShipmentID uuid.UUID) (*models.MobileHome, error)
}
MobileHomeShipmentUpdater updates a Mobile Home shipment
type MoveAdditionalDocumentsUploader ¶
type MoveAdditionalDocumentsUploader interface { CreateAdditionalDocumentsUpload( appCtx appcontext.AppContext, userID uuid.UUID, moveID uuid.UUID, file io.ReadCloser, uploadFilename string, storer storage.FileStorer, uploadType models.UploadType, ) (models.Upload, string, *validate.Errors, error) }
type MoveAssignedOfficeUserUpdater ¶
type MoveAssignedOfficeUserUpdater interface { UpdateAssignedOfficeUser(appCtx appcontext.AppContext, moveID uuid.UUID, officeUser *models.OfficeUser, role roles.RoleType) (*models.Move, error) DeleteAssignedOfficeUser(appCtx appcontext.AppContext, moveID uuid.UUID, role roles.RoleType) (*models.Move, error) }
type MoveCanceler ¶
type MoveCanceler interface {
CancelMove(appCtx appcontext.AppContext, moveID uuid.UUID) (*models.Move, error)
}
type MoveCloseoutOfficeUpdater ¶
type MoveCloseoutOfficeUpdater interface {
UpdateCloseoutOffice(appCtx appcontext.AppContext, moveLocator string, closeoutOfficeID uuid.UUID, eTag string) (*models.Move, error)
}
type MoveExcessWeightUploader ¶
type MoveExcessWeightUploader interface { CreateExcessWeightUpload( appCtx appcontext.AppContext, moveID uuid.UUID, file io.ReadCloser, uploadFilename string, uploadType models.UploadType, ) (*models.Move, error) }
MoveExcessWeightUploader is the exported interface for uploading an excess weight document for a move
type MoveFetcher ¶
type MoveFetcher interface { FetchMove(appCtx appcontext.AppContext, locator string, searchParams *MoveFetcherParams) (*models.Move, error) FetchMovesForPPTASReports(appCtx appcontext.AppContext, params *MoveTaskOrderFetcherParams) (models.Moves, error) }
MoveFetcher is the exported interface for fetching a move by locator
type MoveFetcherParams ¶
type MoveFetcherParams struct {
IncludeHidden bool // indicates if a hidden/disabled move can be returned
}
MoveFetcherParams is public struct that's used to pass filter arguments to MoveFetcher queries
type MoveFinancialReviewFlagSetter ¶
type MoveFinancialReviewFlagSetter interface {
SetFinancialReviewFlag(appCtx appcontext.AppContext, moveID uuid.UUID, eTag string, flagForReview bool, remarks *string) (*models.Move, error)
}
MoveFinancialReviewFlagSetter is the exported interface for flagging a move for financial review
type MoveHistoryFetcher ¶
type MoveHistoryFetcher interface {
FetchMoveHistory(appCtx appcontext.AppContext, params *FetchMoveHistoryParams) (*models.MoveHistory, int64, error)
}
MoveHistoryFetcher is the exported interface for fetching a move by locator
type MoveListFetcher ¶
type MoveListFetcher interface { FetchMoveList(appCtx appcontext.AppContext, filters []QueryFilter, associations QueryAssociations, pagination Pagination, ordering QueryOrder) (models.Moves, error) FetchMoveCount(appCtx appcontext.AppContext, filters []QueryFilter) (int, error) }
MoveListFetcher is the exported interface for fetching multiple moves
type MoveLocker ¶
type MoveLocker interface {
LockMove(appCtx appcontext.AppContext, move *models.Move, officeUserID uuid.UUID) (*models.Move, error)
}
MoveLocker is the exported interface for locking moves
type MoveOrderAmendmentAvailableSinceCounts ¶
type MoveOrderAmendmentAvailableSinceCounts []MoveOrderAmendmentAvailableSinceCount
type MoveOrderUploadType ¶
type MoveOrderUploadType int
Prime move order upload to PDF generation for download
const ( MoveOrderUploadAll MoveOrderUploadType = iota MoveOrderUpload MoveOrderAmendmentUpload )
type MoveRouter ¶
type MoveRouter interface { Approve(appCtx appcontext.AppContext, move *models.Move) error ApproveOrRequestApproval(appCtx appcontext.AppContext, move models.Move) (*models.Move, error) Cancel(appCtx appcontext.AppContext, reason string, move *models.Move) error CompleteServiceCounseling(appCtx appcontext.AppContext, move *models.Move) error RouteAfterAmendingOrders(appCtx appcontext.AppContext, move *models.Move) error SendToOfficeUser(appCtx appcontext.AppContext, move *models.Move) error Submit(appCtx appcontext.AppContext, move *models.Move, newSignedCertification *models.SignedCertification) error }
MoveRouter is the exported interface for routing moves at different stages
type MoveSearcher ¶
type MoveSearcher interface {
SearchMoves(appCtx appcontext.AppContext, params *SearchMovesParams) (models.Moves, int, error)
}
type MoveTaskOrderChecker ¶
type MoveTaskOrderChecker interface {
MTOAvailableToPrime(appCtx appcontext.AppContext, moveTaskOrderID uuid.UUID) (bool, error)
}
MoveTaskOrderChecker is the service object interface for checking if a MoveTaskOrder is in a certain state
type MoveTaskOrderCreator ¶
type MoveTaskOrderCreator interface {
CreateMoveTaskOrder(appCtx appcontext.AppContext, moveTaskOrder *models.Move) (*models.Move, *validate.Errors, error)
}
MoveTaskOrderCreator is the service object interface for CreateMoveTaskOrder
type MoveTaskOrderFetcher ¶
type MoveTaskOrderFetcher interface { FetchMoveTaskOrder(appCtx appcontext.AppContext, searchParams *MoveTaskOrderFetcherParams) (*models.Move, error) ListAllMoveTaskOrders(appCtx appcontext.AppContext, searchParams *MoveTaskOrderFetcherParams) (models.Moves, error) ListPrimeMoveTaskOrders(appCtx appcontext.AppContext, searchParams *MoveTaskOrderFetcherParams) (models.Moves, error) ListNewPrimeMoveTaskOrders(appCtx appcontext.AppContext, searchParams *MoveTaskOrderFetcherParams) (models.Moves, int, error) GetMove(appCtx appcontext.AppContext, searchParams *MoveTaskOrderFetcherParams, eagerAssociations ...string) (*models.Move, error) ListPrimeMoveTaskOrdersAmendments(appCtx appcontext.AppContext, searchParams *MoveTaskOrderFetcherParams) (models.Moves, MoveOrderAmendmentAvailableSinceCounts, error) }
MoveTaskOrderFetcher is the service object interface for FetchMoveTaskOrder
type MoveTaskOrderFetcherParams ¶
type MoveTaskOrderFetcherParams struct { IsAvailableToPrime bool // indicates if all MTOs returned must be Prime-available IncludeHidden bool // indicates if hidden/disabled MTOs should be included in the output Since *time.Time // if filled, only MTOs that have been updated after this timestamp will be returned MoveTaskOrderID uuid.UUID // ID of the move task order Locator string // the locator is a unique string that identifies the move MoveCode *string // moveCode that is passed in when searching through prime moves ID *string // id of the move that is sent in when searching through prime moves ExcludeExternalShipments bool // indicates if external vendor shipments should be returned Page *int64 PerPage *int64 }
MoveTaskOrderFetcherParams is a public struct that's used to pass filter arguments to ListAllMoveTaskOrders, and FetchMoveTaskOrder queries
type MoveTaskOrderHider ¶
type MoveTaskOrderHider interface {
Hide(appCtx appcontext.AppContext) (HiddenMoves, error)
}
MoveTaskOrderHider is the service object interface for Hide
type MoveTaskOrderUpdater ¶
type MoveTaskOrderUpdater interface { MakeAvailableToPrime(appCtx appcontext.AppContext, moveTaskOrderID uuid.UUID, eTag string, includeServiceCodeMS bool, includeServiceCodeCS bool) (*models.Move, error) UpdatePostCounselingInfo(appCtx appcontext.AppContext, moveTaskOrderID uuid.UUID, eTag string) (*models.Move, error) UpdateStatusServiceCounselingCompleted(appCtx appcontext.AppContext, moveTaskOrderID uuid.UUID, eTag string) (*models.Move, error) UpdateReviewedBillableWeightsAt(appCtx appcontext.AppContext, moveTaskOrderID uuid.UUID, eTag string) (*models.Move, error) UpdateTIORemarks(appCtx appcontext.AppContext, moveTaskOrderID uuid.UUID, eTag string, remarks string) (*models.Move, error) ShowHide(appCtx appcontext.AppContext, moveTaskOrderID uuid.UUID, show *bool) (*models.Move, error) UpdatePPMType(appCtx appcontext.AppContext, moveTaskOrderID uuid.UUID) (*models.Move, error) }
MoveTaskOrderUpdater is the service object interface for updating fields of a MoveTaskOrder
type MoveUnlocker ¶
type MoveUnlocker interface { UnlockMove(appCtx appcontext.AppContext, move *models.Move, officeUserID uuid.UUID) (*models.Move, error) CheckForLockedMovesAndUnlock(appCtx appcontext.AppContext, officeUserID uuid.UUID) error }
MoveUnlocker is the exported interface for unlocking moves
type MoveWeights ¶
type MoveWeights interface { CheckExcessWeight(appCtx appcontext.AppContext, moveID uuid.UUID, updatedShipment models.MTOShipment) (*models.Move, *validate.Errors, error) CheckAutoReweigh(appCtx appcontext.AppContext, moveID uuid.UUID, updatedShipment *models.MTOShipment) (models.MTOShipments, error) }
MoveWeights is the exported interface for flagging a move with an excess weight risk
type MovingExpenseCreator ¶
type MovingExpenseCreator interface {
CreateMovingExpense(appCtx appcontext.AppContext, ppmShipmentID uuid.UUID) (*models.MovingExpense, error)
}
MovingExpenseCreator creates a MovingExpense that is associated with a PPMShipment
type MovingExpenseDeleter ¶
type MovingExpenseDeleter interface {
DeleteMovingExpense(appCtx appcontext.AppContext, ppmID uuid.UUID, movingExpenseID uuid.UUID) error
}
MovingExpenseDeleter deletes a MovingExpense
type MovingExpenseUpdater ¶
type MovingExpenseUpdater interface {
UpdateMovingExpense(appCtx appcontext.AppContext, movingExpense models.MovingExpense, eTag string) (*models.MovingExpense, error)
}
MovingExpenseUpdater updates a MovingExpense
type NewPagination ¶
type NewPagination func(page *int64, perPage *int64) Pagination
NewPagination creates a new Pagination interface
type NewQueryAssociation ¶
type NewQueryAssociation func(field string) QueryAssociation
NewQueryAssociation is a function type definition for building a QueryAssociation Should allow services to pass associated data values for querying into QueryAssociations
type NewQueryAssociations ¶
type NewQueryAssociations func(associations []QueryAssociation) QueryAssociations
NewQueryAssociations is a function type definition for building a QueryAssociations Should allow services to pass in query associations
type NewQueryFilter ¶
type NewQueryFilter func(column string, comparator string, value interface{}) QueryFilter
NewQueryFilter is a function type definition for building a QueryFilter Should allow handlers to parse query params into QueryFilters for services
type NewQueryOrder ¶
type NewQueryOrder func(column *string, sortOrder *bool) QueryOrder
NewQueryOrder describes a function that creates a new QueryOrder object
type OfficeFetcher ¶
type OfficeFetcher interface {
FetchOffice(appCtx appcontext.AppContext, filters []QueryFilter) (models.TransportationOffice, error)
}
OfficeFetcher is the exported interface for fetching a single transportation office
type OfficeListFetcher ¶
type OfficeListFetcher interface { FetchOfficeList(appCtx appcontext.AppContext, filters []QueryFilter, associations QueryAssociations, pagination Pagination, ordering QueryOrder) (models.TransportationOffices, error) FetchOfficeCount(appCtx appcontext.AppContext, filters []QueryFilter) (int, error) }
OfficeListFetcher is the exported interface for fetching multiple transportation offices
type OfficeUserCreator ¶
type OfficeUserCreator interface {
CreateOfficeUser(appCtx appcontext.AppContext, user *models.OfficeUser, transportationIDFilter []QueryFilter) (*models.OfficeUser, *validate.Errors, error)
}
OfficeUserCreator is the exported interface for creating an office user
type OfficeUserFetcher ¶
type OfficeUserFetcher interface {
FetchOfficeUser(appCtx appcontext.AppContext, filters []QueryFilter) (models.OfficeUser, error)
}
OfficeUserFetcher is the exported interface for fetching a single office user
type OfficeUserFetcherPop ¶
type OfficeUserFetcherPop interface { FetchOfficeUserByID(appCtx appcontext.AppContext, id uuid.UUID) (models.OfficeUser, error) FetchOfficeUsersByRoleAndOffice(appCtx appcontext.AppContext, role roles.RoleType, officeID uuid.UUID) ([]models.OfficeUser, error) }
OfficeUserFetcherPop is the exported interface for fetching a single office user
type OfficeUserGblocFetcher ¶
type OfficeUserGblocFetcher interface {
FetchGblocForOfficeUser(appCtx appcontext.AppContext, id uuid.UUID) (string, error)
}
OfficeUserGblocFetcher is the exported interface for fetching the GBLOC of the currently signed in office user
type OfficeUserUpdater ¶
type OfficeUserUpdater interface {
UpdateOfficeUser(appCtx appcontext.AppContext, id uuid.UUID, payload *adminmessages.OfficeUserUpdate) (*models.OfficeUser, *validate.Errors, error)
}
OfficeUserUpdater is the exported interface for creating an office user
type OrderFetcher ¶
type OrderFetcher interface { FetchOrder(appCtx appcontext.AppContext, orderID uuid.UUID) (*models.Order, error) ListOrders(appCtx appcontext.AppContext, officeUserID uuid.UUID, params *ListOrderParams) ([]models.Move, int, error) ListAllOrderLocations(appCtx appcontext.AppContext, officeUserID uuid.UUID, params *ListOrderParams) ([]models.Move, error) }
OrderFetcher is the service object interface for FetchOrder
type OrderUpdater ¶
type OrderUpdater interface { UploadAmendedOrdersAsCustomer(appCtx appcontext.AppContext, userID uuid.UUID, orderID uuid.UUID, file io.ReadCloser, filename string, storer storage.FileStorer) (models.Upload, string, *validate.Errors, error) UploadAmendedOrdersAsOffice(appCtx appcontext.AppContext, userID uuid.UUID, orderID uuid.UUID, file io.ReadCloser, filename string, storer storage.FileStorer) (models.Upload, string, *validate.Errors, error) UpdateOrderAsTOO(appCtx appcontext.AppContext, orderID uuid.UUID, payload ghcmessages.UpdateOrderPayload, eTag string) (*models.Order, uuid.UUID, error) UpdateOrderAsCounselor(appCtx appcontext.AppContext, orderID uuid.UUID, payload ghcmessages.CounselingUpdateOrderPayload, eTag string) (*models.Order, uuid.UUID, error) UpdateAllowanceAsTOO(appCtx appcontext.AppContext, orderID uuid.UUID, payload ghcmessages.UpdateAllowancePayload, eTag string) (*models.Order, uuid.UUID, error) UpdateAllowanceAsCounselor(appCtx appcontext.AppContext, orderID uuid.UUID, payload ghcmessages.CounselingUpdateAllowancePayload, eTag string) (*models.Order, uuid.UUID, error) }
OrderUpdater is the service object interface for updating fields of an Order
type OrganizationFetcher ¶
type OrganizationFetcher interface {
FetchOrganization(appCtx appcontext.AppContext, filters []QueryFilter) (models.Organization, error)
}
OrganizationFetcher is the exported interface for fetching a single organization
type OrganizationListFetcher ¶
type OrganizationListFetcher interface { FetchOrganizationList(appCtx appcontext.AppContext, filters []QueryFilter, associations QueryAssociations, pagination Pagination, ordering QueryOrder) (models.Organizations, error) FetchOrganizationCount(appCtx appcontext.AppContext, filters []QueryFilter) (int, error) }
OrganizationListFetcher is the exported interface for fetching multiple organizations
type PDFMerger ¶
type PDFMerger interface {
MergePDFs(appCtx appcontext.AppContext, pdfsToMerge []io.ReadCloser) (io.ReadCloser, error)
}
PDFMerger merges PDFs
type PPMCloseoutFetcher ¶
type PPMCloseoutFetcher interface { GetPPMCloseout(appCtx appcontext.AppContext, ppmShipmentID uuid.UUID) (*models.PPMCloseout, error) GetActualWeight(ppmShipment *models.PPMShipment) (unit.Pound, error) }
PPMCloseoutFetcher fetches all of the necessary calculations needed for display when the SC is reviewing a closeout
type PPMDocumentFetcher ¶
type PPMDocumentFetcher interface {
GetPPMDocuments(appCtx appcontext.AppContext, mtoShipmentID uuid.UUID) (*models.PPMDocuments, error)
}
PPMDocumentFetcher fetches all documents associated with a PPM shipment
type PPMEstimator ¶
type PPMEstimator interface { EstimateIncentiveWithDefaultChecks(appCtx appcontext.AppContext, oldPPMShipment models.PPMShipment, newPPMShipment *models.PPMShipment) (*unit.Cents, *unit.Cents, error) FinalIncentiveWithDefaultChecks(appCtx appcontext.AppContext, oldPPMShipment models.PPMShipment, newPPMShipment *models.PPMShipment) (*unit.Cents, error) PriceBreakdown(appCtx appcontext.AppContext, ppmShipment *models.PPMShipment) (unit.Cents, unit.Cents, unit.Cents, unit.Cents, unit.Cents, unit.Cents, unit.Cents, error) CalculatePPMSITEstimatedCost(appCtx appcontext.AppContext, ppmShipment *models.PPMShipment) (*unit.Cents, error) CalculatePPMSITEstimatedCostBreakdown(appCtx appcontext.AppContext, ppmShipment *models.PPMShipment) (*models.PPMSITEstimatedCostInfo, error) }
PPMEstimator estimates the cost of a PPM shipment
type PPMShipmentCreator ¶
type PPMShipmentCreator interface {
CreatePPMShipmentWithDefaultCheck(appCtx appcontext.AppContext, ppmshipment *models.PPMShipment) (*models.PPMShipment, error)
}
PPMShipmentCreator creates a PPM shipment
type PPMShipmentFetcher ¶
type PPMShipmentFetcher interface { GetPPMShipment(appCtx appcontext.AppContext, ppmShipmentID uuid.UUID, eagerPreloadAssociations []string, postloadAssociations []string) (*models.PPMShipment, error) PostloadAssociations(appCtx appcontext.AppContext, ppmShipment *models.PPMShipment, postloadAssociations []string) error }
PPMShipmentFetcher fetches a PPM shipment
type PPMShipmentNewSubmitter ¶
type PPMShipmentNewSubmitter interface {
SubmitNewCustomerCloseOut(appCtx appcontext.AppContext, ppmShipmentID uuid.UUID, signedCertification models.SignedCertification) (*models.PPMShipment, error)
}
PPMShipmentNewSubmitter handles a new submission for a PPM shipment
type PPMShipmentReviewDocuments ¶
type PPMShipmentReviewDocuments interface {
SubmitReviewedDocuments(appCtx appcontext.AppContext, ppmShipmentID uuid.UUID) (*models.PPMShipment, error)
}
PPMShipmentReviewDocuments handles a new submission for a PPM shipment
type PPMShipmentRouter ¶
type PPMShipmentRouter interface { SetToDraft(appCtx appcontext.AppContext, ppmShipment *models.PPMShipment) error Submit(appCtx appcontext.AppContext, ppmShipment *models.PPMShipment) error SendToCustomer(appCtx appcontext.AppContext, ppmShipment *models.PPMShipment) error SubmitCloseOutDocumentation(appCtx appcontext.AppContext, ppmShipment *models.PPMShipment) error SubmitReviewedDocuments(appCtx appcontext.AppContext, ppmShipment *models.PPMShipment) error }
PPMShipmentRouter routes a PPM shipment
type PPMShipmentUpdatedSubmitter ¶
type PPMShipmentUpdatedSubmitter interface {
SubmitUpdatedCustomerCloseOut(appCtx appcontext.AppContext, ppmShipmentID uuid.UUID, signedCertification models.SignedCertification, eTag string) (*models.PPMShipment, error)
}
PPMShipmentUpdatedSubmitter handles a submission for a PPM shipment that has been submitted before
type PPMShipmentUpdater ¶
type PPMShipmentUpdater interface { UpdatePPMShipmentWithDefaultCheck(appCtx appcontext.AppContext, ppmshipment *models.PPMShipment, mtoShipmentID uuid.UUID) (*models.PPMShipment, error) UpdatePPMShipmentSITEstimatedCost(appCtx appcontext.AppContext, ppmshipment *models.PPMShipment) (*models.PPMShipment, error) }
PPMShipmentUpdater updates a PPM shipment
type PPTASReportListFetcher ¶
type PPTASReportListFetcher interface { GetMovesForReportBuilder(appCtx appcontext.AppContext, params *MoveTaskOrderFetcherParams) (models.Moves, error) BuildPPTASReportsFromMoves(appCtx appcontext.AppContext, moves models.Moves) (models.PPTASReports, error) }
PPTASReportListFetcher is the exported interface for fetching reports
type PWSViolationsFetcher ¶
type PWSViolationsFetcher interface {
GetPWSViolations(appCtx appcontext.AppContext) (*models.PWSViolations, error)
}
PWSViolationsFetcher is the exported interface for fetching office remarks for a move.
type Page1Values ¶
type Page1Values struct { CUIBanner string ServiceMemberName string MaxSITStorageEntitlement string PreferredPhoneNumber string PreferredEmail string DODId string ServiceBranch string RankGrade string IssuingBranchOrAgency string OrdersIssueDate string OrdersTypeAndOrdersNumber string AuthorizedOrigin string AuthorizedDestination string NewDutyAssignment string WeightAllotment string WeightAllotmentProGear string WeightAllotmentProgearSpouse string TotalWeightAllotment string POVAuthorized string ShipmentNumberAndTypes string ShipmentPickUpDates string ShipmentWeights string ShipmentCurrentShipmentStatuses string SITNumberAndTypes string SITEntryDates string SITEndDates string SITDaysInStorage string PreparationDate1 string MaxObligationGCC100 string TotalWeightAllotmentRepeat string MaxObligationGCC95 string MaxObligationSIT string MaxObligationGCCMaxAdvance string ActualObligationGCC100 string ActualObligationGCC95 string ActualObligationAdvance string ActualObligationSIT string MileageTotal string MailingAddressW2 string }
Page1Values is an object representing a Shipment Summary Worksheet
type Page2Values ¶
type Page2Values struct { CUIBanner string PreparationDate2 string TAC string SAC string ContractedExpenseMemberPaid string ContractedExpenseGTCCPaid string RentalEquipmentMemberPaid string RentalEquipmentGTCCPaid string PackingMaterialsMemberPaid string PackingMaterialsGTCCPaid string WeighingFeesMemberPaid string WeighingFeesGTCCPaid string GasMemberPaid string GasGTCCPaid string TollsMemberPaid string TollsGTCCPaid string OilMemberPaid string OilGTCCPaid string OtherMemberPaid string OtherGTCCPaid string TotalMemberPaid string TotalGTCCPaid string TotalMemberPaidRepeated string TotalGTCCPaidRepeated string TotalPaidNonSIT string TotalMemberPaidSIT string TotalGTCCPaidSIT string TotalPaidSIT string Disbursement string ShipmentPickupDates string TrustedAgentName string ServiceMemberSignature string PPPOPPSORepresentative string SignatureDate string PPMRemainingEntitlement string FormattedMovingExpenses FormattedOtherExpenses }
Page2Values is an object representing a Shipment Summary Worksheet
type Page3Values ¶
Page3Values is an object representing a Shipment Summary Worksheet
type Pagination ¶
Pagination represents an interface for pagination
type ParamsPricer ¶
type ParamsPricer interface {
PriceUsingParams(appCtx appcontext.AppContext, params models.PaymentServiceItemParams) (unit.Cents, PricingDisplayParams, error)
}
ParamsPricer is an interface that all param-aware pricers implement
type PaymentPacketCreator ¶
type PaymentPacketCreator interface { Generate(appCtx appcontext.AppContext, ppmShipmentID uuid.UUID, addBookmarks bool, addWaterMarks bool) (io.ReadCloser, error) GenerateDefault(appCtx appcontext.AppContext, ppmShipmentID uuid.UUID) (io.ReadCloser, error) }
PaymentPacketCreator creates a payment packet for a PPM shipment
type PaymentRequestBulkDownloadCreator ¶
type PaymentRequestBulkDownloadCreator interface {
CreatePaymentRequestBulkDownload(appCtx appcontext.AppContext, paymentRequestID uuid.UUID) (afero.File, error)
}
type PaymentRequestCreator ¶
type PaymentRequestCreator interface {
CreatePaymentRequestCheck(appCtx appcontext.AppContext, paymentRequest *models.PaymentRequest) (*models.PaymentRequest, error)
}
PaymentRequestCreator is the exported interface for creating a payment request
type PaymentRequestFetcher ¶
type PaymentRequestFetcher interface {
FetchPaymentRequest(appCtx appcontext.AppContext, paymentRequestID uuid.UUID) (models.PaymentRequest, error)
}
PaymentRequestFetcher is the exported interface for fetching a payment request
type PaymentRequestListFetcher ¶
type PaymentRequestListFetcher interface { FetchPaymentRequestList(appCtx appcontext.AppContext, officeUserID uuid.UUID, params *FetchPaymentRequestListParams) (*models.PaymentRequests, int, error) FetchPaymentRequestListByMove(appCtx appcontext.AppContext, locator string) (*models.PaymentRequests, error) }
PaymentRequestListFetcher is the exported interface for fetching a list of payment requests
type PaymentRequestRecalculator ¶
type PaymentRequestRecalculator interface {
RecalculatePaymentRequest(appCtx appcontext.AppContext, paymentRequestID uuid.UUID) (*models.PaymentRequest, error)
}
PaymentRequestRecalculator is the exported interface for recalculating a payment request
type PaymentRequestReviewedFetcher ¶
type PaymentRequestReviewedFetcher interface {
FetchReviewedPaymentRequest(appCtx appcontext.AppContext) (models.PaymentRequests, error)
}
PaymentRequestReviewedFetcher is the exported interface for fetching all payment requests in 'reviewed' status
type PaymentRequestReviewedProcessor ¶
type PaymentRequestReviewedProcessor interface { ProcessReviewedPaymentRequest(appCtx appcontext.AppContext) ProcessAndLockReviewedPR(appCtx appcontext.AppContext, pr models.PaymentRequest) error }
PaymentRequestReviewedProcessor is the exported interface for processing reviewed payment requests
type PaymentRequestShipmentRecalculator ¶
type PaymentRequestShipmentRecalculator interface {
ShipmentRecalculatePaymentRequest(appCtx appcontext.AppContext, shipmentID uuid.UUID) (*models.PaymentRequests, error)
}
PaymentRequestShipmentRecalculator is the exported interface for recalculating payment requests for a shipment
type PaymentRequestStatusUpdater ¶
type PaymentRequestStatusUpdater interface {
UpdatePaymentRequestStatus(appCtx appcontext.AppContext, paymentRequest *models.PaymentRequest, eTag string) (*models.PaymentRequest, error)
}
PaymentRequestStatusUpdater is the exported interface for updating the status of a payment request
type PaymentRequestUploadCreator ¶
type PaymentRequestUploadCreator interface {
CreateUpload(appCtx appcontext.AppContext, file io.ReadCloser, paymentRequestID uuid.UUID, userID uuid.UUID, filename string, isWeightTicket bool) (*models.Upload, error)
}
PaymentRequestUploadCreator is the exported interface for creating a payment request upload
type PaymentServiceItemStatusUpdater ¶
type PaymentServiceItemStatusUpdater interface { UpdatePaymentServiceItemStatus(appCtx appcontext.AppContext, paymentServiceItemID uuid.UUID, status models.PaymentServiceItemStatus, rejectionReason *string, eTag string) (models.PaymentServiceItem, *validate.Errors, error) }
PaymentServiceItemStatusUpdater is the exported interface for updating a payment service item
type PostalCodeType ¶
type PostalCodeType string
PostalCodeType is initialized as a string type
const ( Origin PostalCodeType = "origin" Destination PostalCodeType = "destination" )
PostalCodeTypes
type PostalCodeValidator ¶
type PostalCodeValidator interface {
ValidatePostalCode(appCtx appcontext.AppContext, postalCode string) (bool, error)
}
PostalCodeValidator is the service object interface for ValidatePostalCode
type PricingDisplayParam ¶
type PricingDisplayParam struct { Key models.ServiceItemParamName Value string }
PricingDisplayParam represents a parameter (key/value pair) returned from a pricer
type PricingDisplayParams ¶
type PricingDisplayParams []PricingDisplayParam
PricingDisplayParams represents a slice of pricing parameters
type PrimeDownloadMoveUploadPDFGenerator ¶
type PrimeDownloadMoveUploadPDFGenerator interface {
GenerateDownloadMoveUserUploadPDF(appCtx appcontext.AppContext, moveOrderUploadType MoveOrderUploadType, move models.Move, addBookmarks bool) (afero.File, error)
}
type ProgearWeightTicketCreator ¶
type ProgearWeightTicketCreator interface {
CreateProgearWeightTicket(appCtx appcontext.AppContext, ppmShipmentID uuid.UUID) (*models.ProgearWeightTicket, error)
}
ProgearWeightTickerCreator creates a ProgearWeightTicket that is associated with a PPMShipment
type ProgearWeightTicketDeleter ¶
type ProgearWeightTicketDeleter interface {
DeleteProgearWeightTicket(appCtx appcontext.AppContext, ppmID uuid.UUID, progearWeightTicketID uuid.UUID) error
}
ProgearWeightTicketDeleter deletes a ProgearWeightTicket
type ProgearWeightTicketUpdater ¶
type ProgearWeightTicketUpdater interface {
UpdateProgearWeightTicket(appCtx appcontext.AppContext, progearWeightTicket models.ProgearWeightTicket, eTag string) (*models.ProgearWeightTicket, error)
}
ProgearWeightTicketUpdater updates a ProgearWeightTicket
type QueryAssociation ¶
type QueryAssociation interface {
Field() string
}
QueryAssociation is an interface to allow passing association values into query interfaces
type QueryAssociations ¶
QueryAssociations is an interface to allow
type QueryFilter ¶
QueryFilter is an interface to allow passing filter values into query interfaces Ex `FetchMany` takes a list of filters
type QueryOrder ¶
QueryOrder describes the "order by" clause in a sql query
type ReportViolationFetcher ¶
type ReportViolationFetcher interface {
FetchReportViolationsByReportID(appCtx appcontext.AppContext, reportID uuid.UUID) (models.ReportViolations, error)
}
type ReportViolationsCreator ¶
type ReportViolationsCreator interface {
AssociateReportViolations(appCtx appcontext.AppContext, reportViolations *models.ReportViolations, reportID uuid.UUID) error
}
type RequestedOfficeUserFetcher ¶
type RequestedOfficeUserFetcher interface {
FetchRequestedOfficeUser(appCtx appcontext.AppContext, filters []QueryFilter) (models.OfficeUser, error)
}
RequestedOfficeUserFetcher is the exported interface for fetching a single requested office user
type RequestedOfficeUserListFetcher ¶
type RequestedOfficeUserListFetcher interface { FetchRequestedOfficeUsersList(appCtx appcontext.AppContext, filters []QueryFilter, associations QueryAssociations, pagination Pagination, ordering QueryOrder) (models.OfficeUsers, error) FetchRequestedOfficeUsersCount(appCtx appcontext.AppContext, filters []QueryFilter) (int, error) }
RequestedOfficeUserListFetcher is the exported interface for fetching multiple requested office users
type RequestedOfficeUserUpdater ¶
type RequestedOfficeUserUpdater interface {
UpdateRequestedOfficeUser(appCtx appcontext.AppContext, id uuid.UUID, payload *adminmessages.RequestedOfficeUserUpdate) (*models.OfficeUser, *validate.Errors, error)
}
RequestedOfficeUserFetcher is the exported interface for updating a requested office user
type ReweighCreator ¶
type ReweighCreator interface {
CreateReweighCheck(appCtx appcontext.AppContext, reweigh *models.Reweigh) (*models.Reweigh, error)
}
ReweighCreator creates a reweigh
type ReweighFetcher ¶
type ReweighFetcher interface {
ListReweighsByShipmentIDs(appCtx appcontext.AppContext, shipmentIDs []uuid.UUID) (map[uuid.UUID]models.Reweigh, error)
}
ReweighFetcher allows us to fetch reweights. This is primarily used during the reweigh update of a diverted shipment
type ReweighUpdater ¶
type ReweighUpdater interface {
UpdateReweighCheck(appCtx appcontext.AppContext, reweigh *models.Reweigh, eTag string) (*models.Reweigh, error)
}
ReweighUpdater updates a reweigh
type RoleAssociater ¶
type RoleAssociater interface {
FetchRolesForUser(appCtx appcontext.AppContext, userID uuid.UUID) (roles.Roles, error)
}
RoleAssociater is the service object interface for fetching roles for a user id
type SFTPClient ¶
type SFTPClient interface { ReadDir(p string) ([]os.FileInfo, error) Open(path string) (SFTPFiler, error) Remove(path string) error }
SFTPClient is the exported interface for an SFTP client created for reading from and SFTP connection
type SITExtensionApprover ¶
type SITExtensionApprover interface {
ApproveSITExtension(appCtx appcontext.AppContext, shipmentID uuid.UUID, sitExtensionID uuid.UUID, approvedDays int, requestReason models.SITDurationUpdateRequestReason, officeRemarks *string, eTag string) (*models.MTOShipment, error)
}
SITExtensionApprover is the service object interface for approving a SIT extension
type SITExtensionCreator ¶
type SITExtensionCreator interface {
CreateSITExtension(appCtx appcontext.AppContext, sitExtension *models.SITDurationUpdate) (*models.SITDurationUpdate, error)
}
SITExtensionCreator creates a SIT extension
type SITExtensionDenier ¶
type SITExtensionDenier interface {
DenySITExtension(appCtx appcontext.AppContext, shipmentID uuid.UUID, sitExtensionID uuid.UUID, officeRemarks *string, convertToCustomerExpense *bool, eTag string) (*models.MTOShipment, error)
}
SITExtensionDenier is the service object interface for denying a SIT extension
type SITStatus ¶
type SITStatus struct { ShipmentID uuid.UUID TotalSITDaysUsed int TotalDaysRemaining int CalculatedTotalDaysInSIT int CurrentSIT *CurrentSIT PastSITs models.SITServiceItemGroupings }
SITStatus is the summary of the current SIT service item days in storage remaining balance and dates
type SSWPPMComputer ¶
type SSWPPMComputer interface { FetchDataShipmentSummaryWorksheetFormData(appCtx appcontext.AppContext, _ *auth.Session, ppmShipmentID uuid.UUID) (*models.ShipmentSummaryFormData, error) ComputeObligations(_ appcontext.AppContext, _ models.ShipmentSummaryFormData, _ route.Planner) (models.Obligations, error) FormatValuesShipmentSummaryWorksheet(shipmentSummaryFormData models.ShipmentSummaryFormData, isPaymentPacket bool) (Page1Values, Page2Values, Page3Values, error) FormatShipment(ppm models.PPMShipment, weightAllotment models.SSWMaxWeightEntitlement, isPaymentPacket bool) models.WorkSheetShipment FormatValuesShipmentSummaryWorksheetFormPage1(data models.ShipmentSummaryFormData, isPaymentPacket bool) (Page1Values, error) FormatValuesShipmentSummaryWorksheetFormPage2(data models.ShipmentSummaryFormData, isPaymentPacket bool) (Page2Values, error) FormatValuesShipmentSummaryWorksheetFormPage3(data models.ShipmentSummaryFormData, isPaymentPacket bool) (Page3Values, error) }
type SSWPPMGenerator ¶
type SSWPPMGenerator interface {
FillSSWPDFForm(Page1Values, Page2Values, Page3Values) (afero.File, *pdfcpu.PDFInfo, error)
}
type SearchCustomersParams ¶
type SearchMovesParams ¶
type SearchMovesParams struct { Branch *string Locator *string DodID *string Emplid *string CustomerName *string PaymentRequestCode *string DestinationPostalCode *string OriginPostalCode *string Status []string ShipmentsCount *int64 Page int64 PerPage int64 Sort *string Order *string PickupDate *time.Time DeliveryDate *time.Time MoveCreatedDate *time.Time }
type ServiceItemPricer ¶
type ServiceItemPricer interface {
PriceServiceItem(appCtx appcontext.AppContext, item models.PaymentServiceItem) (unit.Cents, models.PaymentServiceItemParams, error)
}
ServiceItemPricer prices a generic payment service item for a GHC move
type ServiceRequestDocumentUploadCreator ¶
type ServiceRequestDocumentUploadCreator interface {
CreateUpload(appCtx appcontext.AppContext, file io.ReadCloser, mtoServiceItemID uuid.UUID, userID uuid.UUID, filename string) (*models.Upload, error)
}
serviceRequestDocumentUploadCreator is the exported interface for creating a mto service item request upload
type ShipmentAddressUpdateRequester ¶
type ShipmentAddressUpdateRequester interface { RequestShipmentDeliveryAddressUpdate(appCtx appcontext.AppContext, shipmentID uuid.UUID, newAddress models.Address, contractorRemarks string, eTag string) (*models.ShipmentAddressUpdate, error) ReviewShipmentAddressChange(appCtx appcontext.AppContext, shipmentID uuid.UUID, tooApprovalStatus models.ShipmentAddressUpdateStatus, tooRemarks string) (*models.ShipmentAddressUpdate, error) }
ShipmentAddressUpdateRequester Interface for the service object that creates an approved SIT Address Update
type ShipmentApprover ¶
type ShipmentApprover interface {
ApproveShipment(appCtx appcontext.AppContext, shipmentID uuid.UUID, eTag string) (*models.MTOShipment, error)
}
ShipmentApprover is the service object interface for approving a shipment
type ShipmentBillableWeightCalculator ¶
type ShipmentBillableWeightCalculator interface {
CalculateShipmentBillableWeight(shipment *models.MTOShipment) BillableWeightInputs
}
ShipmentBillableWeightCalculator is the service object interface for calculating a shipment's billable weight
type ShipmentCancellationRequester ¶
type ShipmentCancellationRequester interface {
RequestShipmentCancellation(appCtx appcontext.AppContext, shipmentID uuid.UUID, eTag string) (*models.MTOShipment, error)
}
ShipmentCancellationRequester is the service object interface for approving a shipment diversion
type ShipmentCreator ¶
type ShipmentCreator interface {
CreateShipment(appCtx appcontext.AppContext, shipment *models.MTOShipment) (*models.MTOShipment, error)
}
ShipmentCreator creates a shipment, taking into account different shipment types and their needs.
type ShipmentDeleter ¶
type ShipmentDeleter interface {
DeleteShipment(appCtx appcontext.AppContext, shipmentID uuid.UUID) (uuid.UUID, error)
}
ShipmentDeleter is the service object interface for deleting a shipment
type ShipmentDiversionApprover ¶
type ShipmentDiversionApprover interface {
ApproveShipmentDiversion(appCtx appcontext.AppContext, shipmentID uuid.UUID, eTag string) (*models.MTOShipment, error)
}
ShipmentDiversionApprover is the service object interface for approving a shipment diversion
type ShipmentDiversionRequester ¶
type ShipmentDiversionRequester interface {
RequestShipmentDiversion(appCtx appcontext.AppContext, shipmentID uuid.UUID, eTag string, diversionReason *string) (*models.MTOShipment, error)
}
ShipmentDiversionRequester is the service object interface for requesting a shipment diversion
type ShipmentPaymentSITBalance ¶
type ShipmentPaymentSITBalance struct { ShipmentID uuid.UUID TotalSITDaysAuthorized int TotalSITDaysRemaining int TotalSITEndDate time.Time PendingSITDaysInvoiced int PendingBilledStartDate time.Time PendingBilledEndDate time.Time PreviouslyBilledDays *int PreviouslyBilledEndDate *time.Time }
ShipmentPaymentSITBalance is a public struct that's used to return current SIT balances to the TIO for a payment request
type ShipmentRejecter ¶
type ShipmentRejecter interface {
RejectShipment(appCtx appcontext.AppContext, shipmentID uuid.UUID, eTag string, reason *string) (*models.MTOShipment, error)
}
ShipmentRejecter is the service object interface for rejecting a shipment
type ShipmentReweighRequester ¶
type ShipmentReweighRequester interface {
RequestShipmentReweigh(appCtx appcontext.AppContext, shipmentID uuid.UUID, requestor models.ReweighRequester) (*models.Reweigh, error)
}
ShipmentReweighRequester is the service object interface for approving a shipment diversion
type ShipmentRouter ¶
type ShipmentRouter interface { Submit(appCtx appcontext.AppContext, shipment *models.MTOShipment) error Approve(appCtx appcontext.AppContext, shipment *models.MTOShipment) error RequestCancellation(appCtx appcontext.AppContext, shipment *models.MTOShipment) error Cancel(appCtx appcontext.AppContext, shipment *models.MTOShipment) error Reject(appCtx appcontext.AppContext, shipment *models.MTOShipment, rejectionReason *string) error RequestDiversion(appCtx appcontext.AppContext, shipment *models.MTOShipment, diversionReason *string) error ApproveDiversion(appCtx appcontext.AppContext, shipment *models.MTOShipment) error }
ShipmentRouter is used for setting the status on shipments at different stages
type ShipmentSITStatus ¶
type ShipmentSITStatus interface { CalculateShipmentsSITStatuses(appCtx appcontext.AppContext, shipments []models.MTOShipment) map[string]SITStatus CalculateShipmentSITStatus(appCtx appcontext.AppContext, shipment models.MTOShipment) (*SITStatus, models.MTOShipment, error) CalculateShipmentSITAllowance(appCtx appcontext.AppContext, shipment models.MTOShipment) (int, error) RetrieveShipmentSIT(appCtx appcontext.AppContext, shipment models.MTOShipment) (models.SITServiceItemGroupings, error) }
ShipmentSITStatus is the interface for calculating SIT service item summary balances of shipments
type ShipmentUpdater ¶
type ShipmentUpdater interface {
UpdateShipment(appCtx appcontext.AppContext, shipment *models.MTOShipment, eTag string, api string) (*models.MTOShipment, error)
}
ShipmentUpdater updates a shipment, taking into account different shipment types and their needs.
type ShipmentsPaymentSITBalance ¶
type ShipmentsPaymentSITBalance interface {
ListShipmentPaymentSITBalance(appCtx appcontext.AppContext, paymentRequestID uuid.UUID) ([]ShipmentPaymentSITBalance, error)
}
ShipmentsPaymentSITBalance is the exported interface for returning SIT balances for all shipments of a payment request
type SignedCertificationCreator ¶
type SignedCertificationCreator interface {
CreateSignedCertification(appCtx appcontext.AppContext, signedCertification models.SignedCertification) (*models.SignedCertification, error)
}
SignedCertificationCreator creates a signed certification
type SignedCertificationUpdater ¶
type SignedCertificationUpdater interface {
UpdateSignedCertification(appCtx appcontext.AppContext, signedCertification models.SignedCertification, eTag string) (*models.SignedCertification, error)
}
SignedCertificationUpdater updates a signed certification
type SitEntryDateUpdater ¶
type SitEntryDateUpdater interface {
UpdateSitEntryDate(appCtx appcontext.AppContext, sitEntryDateUpdate *models.SITEntryDateUpdate) (*models.MTOServiceItem, error)
}
SitEntryDateUpdater is the exported interface for updating a service item's SIT entry date
type SyncadaFileProcessor ¶
type SyncadaFileProcessor interface { ProcessFile(appCtx appcontext.AppContext, syncadaPath string, text string) error EDIType() models.EDIType }
SyncadaFileProcessor is the exported interface for processing EDI files from Syncada
type SyncadaSFTPReader ¶
type SyncadaSFTPReader interface {
FetchAndProcessSyncadaFiles(appCtx appcontext.AppContext, pickupPath string, lastRead time.Time, processor SyncadaFileProcessor) (time.Time, error)
}
SyncadaSFTPReader is the exported interface for reading files from an SFTP connection
type SyncadaSFTPSender ¶
type SyncadaSFTPSender interface {
SendToSyncadaViaSFTP(appCtx appcontext.AppContext, localDataReader io.Reader, syncadaFileName string) (int64, error)
}
SyncadaSFTPSender is the exported interface for sending an EDI to Syncada
type TableFromSliceCreator ¶
type TableFromSliceCreator interface {
CreateTableFromSlice(appCtx appcontext.AppContext, slice interface{}) error
}
TableFromSliceCreator creates and populates a table based on a model slice
type TransportationAccountingCodeFetcher ¶
type TransportationAccountingCodeFetcher interface {
FetchOrderTransportationAccountingCodes(departmentIndicator models.DepartmentIndicator, ordersIssueDate time.Time, tacCode string, appCtx appcontext.AppContext) ([]models.TransportationAccountingCode, error)
}
TransportationAccountingCodeFetcher is the exported interface for fetching transportation accounting codes based on a centralized location for business logic
type TransportationOfficesFetcher ¶
type TransportationOfficesFetcher interface { GetTransportationOffices(appCtx appcontext.AppContext, search string, forPpm bool) (*models.TransportationOffices, error) GetTransportationOffice(appCtx appcontext.AppContext, transportationOfficeID uuid.UUID, includeOnlyPPMCloseoutOffices bool) (*models.TransportationOffice, error) GetAllGBLOCs(appCtx appcontext.AppContext) (*models.GBLOCs, error) GetCounselingOffices(appCtx appcontext.AppContext, dutyLocationID uuid.UUID) (*models.TransportationOffices, error) }
type UploadCreator ¶
type UploadCreator interface {
CreateUpload(appCtx appcontext.AppContext, file io.ReadCloser, uploadFilename string, uploadType models.UploadType) (*models.Upload, error)
}
UploadCreator is the service object interface for CreateUpload
type UploadInformation ¶
type UploadInformation struct { UploadID uuid.UUID `db:"upload_id"` ContentType string `db:"content_type"` CreatedAt time.Time `db:"created_at"` Filename string Bytes int64 MoveLocator *string `db:"locator"` MoveStatus *models.MoveStatus `db:"status"` ServiceMemberID *uuid.UUID `db:"service_member_id"` ServiceMemberFirstName *string `db:"service_member_first_name"` ServiceMemberLastName *string `db:"service_member_last_name"` ServiceMemberPhone *string `db:"service_member_telephone"` ServiceMemberEmail *string `db:"service_member_email"` OfficeUserID *uuid.UUID `db:"office_user_id"` OfficeUserFirstName *string `db:"office_user_first_name"` OfficeUserLastName *string `db:"office_user_last_name"` OfficeUserPhone *string `db:"office_user_telephone"` OfficeUserEmail *string `db:"office_user_email"` }
UploadInformation contains information for uploads
type UploadInformationFetcher ¶
type UploadInformationFetcher interface { FetchUploadInformation(appCtx appcontext.AppContext, uuid uuid.UUID) (UploadInformation, error) FetchUploadInformationForDeletion(appCtx appcontext.AppContext, uuid uuid.UUID, moveLocator string) (UploadInformation, error) }
UploadInformationFetcher is the service object interface for FetchUploadInformation
type UploadUpdater ¶
type UploadUpdater interface {
UpdateUpload(appCtx appcontext.AppContext, file io.ReadCloser, uploadFilename string, uploadType models.UploadType) (*models.Upload, error)
}
UploadUpdater is the service object interface for UpdateUpload
type UserFetcher ¶
type UserFetcher interface {
FetchUser(appCtx appcontext.AppContext, filters []QueryFilter) (models.User, error)
}
UserFetcher is the service object interface for FetchUser
type UserPrivilegeAssociator ¶
type UserPrivilegeAssociator interface {
UpdateUserPrivileges(appCtx appcontext.AppContext, userID uuid.UUID, privileges []models.PrivilegeType) ([]models.UsersPrivileges, error)
}
UserPrivilegeAssociator is the service object interface for UpdateUserPrivileges
type UserRoleAssociator ¶
type UserRoleAssociator interface {
UpdateUserRoles(appCtx appcontext.AppContext, userID uuid.UUID, roles []roles.RoleType) ([]models.UsersRoles, *validate.Errors, error)
}
UserRoleAssociator is the service object interface for UpdateUserRoles
type UserSessionRevocation ¶
type UserSessionRevocation interface {
RevokeUserSession(appCtx appcontext.AppContext, id uuid.UUID, payload *adminmessages.UserUpdate, sessionManagers auth.AppSessionManagers) (*models.User, *validate.Errors, error)
}
UserSessionRevocation is the exported interface for revoking a user session
type UserUpdater ¶
type UserUpdater interface {
UpdateUser(appCtx appcontext.AppContext, id uuid.UUID, user *models.User) (*models.User, *validate.Errors, error)
}
UserUpdater is the service object interface for UpdateUser
type UserUploadToPDFConverter ¶
type UserUploadToPDFConverter interface {
ConvertUserUploadsToPDF(appCtx appcontext.AppContext, userUploads models.UserUploads) ([]*FileInfo, error)
}
UserUploadToPDFConverter converts user uploads to PDFs
type ValidationFunc ¶
type ValidationFunc func() error
ValidationFunc is a type representing the signature for a function that validates a service/model
type WebhookSubscriptionCreator ¶
type WebhookSubscriptionCreator interface {
CreateWebhookSubscription(appCtx appcontext.AppContext, subscription *models.WebhookSubscription) (*models.WebhookSubscription, *validate.Errors, error)
}
WebhookSubscriptionCreator is the exported interface for creating an admin user
type WebhookSubscriptionFetcher ¶
type WebhookSubscriptionFetcher interface {
FetchWebhookSubscription(appCtx appcontext.AppContext, filters []QueryFilter) (models.WebhookSubscription, error)
}
WebhookSubscriptionFetcher is the service object interface for FetchWebhookSubscription
type WebhookSubscriptionUpdater ¶
type WebhookSubscriptionUpdater interface {
UpdateWebhookSubscription(appCtx appcontext.AppContext, webhooksubscription *models.WebhookSubscription, severity *int64, eTag *string) (*models.WebhookSubscription, error)
}
WebhookSubscriptionUpdater is the service object interface for UpdateWebhookSubscription
type WeightEstimatorPage1 ¶
type WeightEstimatorPage1 struct { LivingRoomCuFt1 string LivingRoomPieces1 string LivingRoomTotal1 string LivingRoomCuFt2 string LivingRoomPieces2 string LivingRoomTotal2 string LivingRoomCuFt3 string LivingRoomPieces3 string LivingRoomTotal3 string LivingRoomCuFt4 string LivingRoomPieces4 string LivingRoomTotal4 string LivingRoomCuFt5 string LivingRoomPieces5 string LivingRoomTotal5 string LivingRoomCuFt6 string LivingRoomPieces6 string LivingRoomTotal6 string LivingRoomCuFt7 string LivingRoomPieces7 string LivingRoomTotal7 string LivingRoomCuFt8 string LivingRoomPieces8 string LivingRoomTotal8 string LivingRoomCuFt9 string LivingRoomPieces9 string LivingRoomTotal9 string LivingRoomCuFt10 string LivingRoomPieces10 string LivingRoomTotal10 string LivingRoomCuFt11 string LivingRoomPieces11 string LivingRoomTotal11 string LivingRoomCuFt12 string LivingRoomPieces12 string LivingRoomTotal12 string LivingRoomCuFt13 string LivingRoomPieces13 string LivingRoomTotal13 string LivingRoomCuFt14 string LivingRoomPieces14 string LivingRoomTotal14 string LivingRoomCuFt15 string LivingRoomPieces15 string LivingRoomTotal15 string LivingRoomCuFt16 string LivingRoomPieces16 string LivingRoomTotal16 string LivingRoomCuFt17 string LivingRoomPieces17 string LivingRoomTotal17 string LivingRoomCuFt18 string LivingRoomPieces18 string LivingRoomTotal18 string LivingRoomCuFt19 string LivingRoomPieces19 string LivingRoomTotal19 string LivingRoomCuFt20 string LivingRoomPieces20 string LivingRoomTotal20 string LivingRoomCuFt21 string LivingRoomPieces21 string LivingRoomTotal21 string LivingRoomCuFt22 string LivingRoomPieces22 string LivingRoomTotal22 string LivingRoomCuFt23 string LivingRoomPieces23 string LivingRoomTotal23 string LivingRoomCuFt24 string LivingRoomPieces24 string LivingRoomTotal24 string LivingRoomCuFt25 string LivingRoomPieces25 string LivingRoomTotal25 string LivingRoomCuFt26 string LivingRoomPieces26 string LivingRoomTotal26 string LivingRoomCuFt27 string LivingRoomPieces27 string LivingRoomTotal27 string LivingRoomCuFt28 string LivingRoomPieces28 string LivingRoomTotal28 string LivingRoomCuFt29 string LivingRoomPieces29 string LivingRoomTotal29 string LivingRoomCuFt30 string LivingRoomPieces30 string LivingRoomTotal30 string LivingRoomCuFt31 string LivingRoomPieces31 string LivingRoomTotal31 string LivingRoomCuFt32 string LivingRoomPieces32 string LivingRoomTotal32 string }
WeightEstimatorPage1 is an object representing fields from Page 1 of the pdf
type WeightEstimatorPage10 ¶
type WeightEstimatorPage10 struct { CartonsCuFt6 string CartonsPieces6 string CartonsTotal6 string MilitaryWeightChargeable string CivilianWeightChargeable string CartonsCuFt7 string CartonsPieces7 string CartonsTotal7 string MilitaryWeightAllowance string CivilianWeightAllowance string CartonsCuFt8 string CartonsPieces8 string CartonsTotal8 string MilitaryWeightOverUnder string CivilianWeightOverUnder string CartonsCuFt9 string CartonsPieces9 string CartonsTotal9 string CartonsPiecesTotal1 string CartonsCuFtTotal1 string ProGearCuFt1 string ProGearPieces1 string ProGearTotal1 string ProGearCuFt2 string ProGearPieces2 string ProGearTotal2 string ProGearCuFt3 string ProGearPieces3 string ProGearTotal3 string ProGearCuFt4 string ProGearPieces4 string ProGearTotal4 string ProGearCuFt5 string ProGearPieces5 string ProGearTotal5 string ProGearCuFt6 string ProGearPieces6 string ProGearTotal6 string ProGearCuFt7 string ProGearPieces7 string ProGearTotal7 string ProGearCuFt8 string ProGearPieces8 string ProGearTotal8 string ProGearCuFt9 string ProGearPieces9 string ProGearTotal9 string ProGearCuFt10 string ProGearPieces10 string ProGearTotal10 string ProGearCuFt11 string ProGearPieces11 string ProGearTotal11 string ProGearCuFt12 string ProGearPieces12 string ProGearTotal12 string }
type WeightEstimatorPage11 ¶
type WeightEstimatorPage2 ¶
type WeightEstimatorPage2 struct { LivingRoomCuFt33 string LivingRoomPieces33 string LivingRoomTotal33 string LivingRoomCuFt34 string LivingRoomPieces34 string LivingRoomTotal34 string LivingRoomCuFt35 string LivingRoomPieces35 string LivingRoomTotal35 string LivingRoomCuFt36 string LivingRoomPieces36 string LivingRoomTotal36 string LivingRoomCuFt37 string LivingRoomPieces37 string LivingRoomTotal37 string LivingRoomCuFt38 string LivingRoomPieces38 string LivingRoomTotal38 string LivingRoomCuFt39 string LivingRoomPieces39 string LivingRoomTotal39 string LivingRoomCuFt40 string LivingRoomPieces40 string LivingRoomTotal40 string LivingRoomPiecesTotal1 string LivingRoomCuFtTotal1 string LivingRoomCuFt41 string LivingRoomPieces41 string LivingRoomTotal41 string LivingRoomPiecesTotal2 string LivingRoomCuFtTotal2 string LivingRoomTotalItems string LivingRoomTotalCube string LivingRoomWeight string DiningRoomCuFt1 string DiningRoomPieces1 string DiningRoomTotal1 string DiningRoomCuFt2 string DiningRoomPieces2 string DiningRoomTotal2 string DiningRoomCuFt3 string DiningRoomPieces3 string DiningRoomTotal3 string DiningRoomCuFt4 string DiningRoomPieces4 string DiningRoomTotal4 string DiningRoomCuFt5 string DiningRoomPieces5 string DiningRoomTotal5 string DiningRoomCuFt6 string DiningRoomPieces6 string DiningRoomTotal6 string DiningRoomCuFt7 string DiningRoomPieces7 string DiningRoomTotal7 string DiningRoomCuFt8 string DiningRoomPieces8 string DiningRoomTotal8 string DiningRoomCuFt9 string DiningRoomPieces9 string DiningRoomTotal9 string DiningRoomCuFt10 string DiningRoomPieces10 string DiningRoomTotal10 string DiningRoomCuFt11 string DiningRoomPieces11 string DiningRoomTotal11 string DiningRoomCuFt12 string DiningRoomPieces12 string DiningRoomTotal12 string DiningRoomCuFt13 string DiningRoomPieces13 string DiningRoomTotal13 string DiningRoomPiecesTotal1 string DiningRoomCuFtTotal1 string DiningRoomPiecesTotal2 string DiningRoomCuFtTotal2 string DiningRoomTotalItems string DiningRoomTotalCube string }
WeightEstimatorPage2 is an object representing fields from Page 2 of the pdf
type WeightEstimatorPage3 ¶
type WeightEstimatorPage3 struct { DiningRoomWeight string BedRoomCuFt1 string BedRoomPieces1 string BedRoomTotal1 string BedRoomCuFt2 string BedRoomPieces2 string BedRoomTotal2 string BedRoomCuFt3 string BedRoomPieces3 string BedRoomTotal3 string BedRoomCuFt4 string BedRoomPieces4 string BedRoomTotal4 string BedRoomCuFt5 string BedRoomPieces5 string BedRoomTotal5 string BedRoomCuFt6 string BedRoomPieces6 string BedRoomTotal6 string BedRoomCuFt7 string BedRoomPieces7 string BedRoomTotal7 string BedRoomCuFt8 string BedRoomPieces8 string BedRoomTotal8 string BedRoomCuFt9 string BedRoomPieces9 string BedRoomTotal9 string BedRoomCuFt10 string BedRoomPieces10 string BedRoomTotal10 string BedRoomCuFt11 string BedRoomPieces11 string BedRoomTotal11 string BedRoomCuFt12 string BedRoomPieces12 string BedRoomTotal12 string BedRoomCuFt13 string BedRoomPieces13 string BedRoomTotal13 string BedRoomCuFt14 string BedRoomPieces14 string BedRoomTotal14 string BedRoomCuFt15 string BedRoomPieces15 string BedRoomTotal15 string BedRoomCuFt16 string BedRoomPieces16 string BedRoomTotal16 string BedRoomCuFt17 string BedRoomPieces17 string BedRoomTotal17 string BedRoomCuFt18 string BedRoomPieces18 string BedRoomTotal18 string BedRoomCuFt19 string BedRoomPieces19 string BedRoomTotal19 string BedRoomCuFt20 string BedRoomPieces20 string BedRoomTotal20 string BedRoomCuFt21 string BedRoomPieces21 string BedRoomTotal21 string BedRoomCuFt22 string BedRoomPieces22 string BedRoomTotal22 string BedRoomPiecesTotal1 string BedRoomCuFtTotal1 string BedRoomPiecesTotal2 string BedRoomCuFtTotal2 string BedRoomTotalItems string BedRoomTotalCube string BedRoomWeight string }
type WeightEstimatorPage4 ¶
type WeightEstimatorPage4 struct { DenCuFt1 string DenPieces1 string DenTotal1 string DenCuFt2 string DenPieces2 string DenTotal2 string DenCuFt3 string DenPieces3 string DenTotal3 string DenCuFt4 string DenPieces4 string DenTotal4 string DenCuFt5 string DenPieces5 string DenTotal5 string DenCuFt6 string DenPieces6 string DenTotal6 string DenCuFt7 string DenPieces7 string DenTotal7 string DenCuFt8 string DenPieces8 string DenTotal8 string DenCuFt9 string DenPieces9 string DenTotal9 string DenCuFt10 string DenPieces10 string DenTotal10 string DenCuFt11 string DenPieces11 string DenTotal11 string DenCuFt12 string DenPieces12 string DenTotal12 string DenCuFt13 string DenPieces13 string DenTotal13 string DenCuFt14 string DenPieces14 string DenTotal14 string DenPiecesTotal1 string DenCuFtTotal1 string DenPiecesTotal2 string DenCuFtTotal2 string DenTotalItems string DenTotalCube string DenWeight string NurseryCuFt1 string NurseryPieces1 string NurseryTotal1 string NurseryCuFt2 string NurseryPieces2 string NurseryTotal2 string NurseryCuFt3 string NurseryPieces3 string NurseryTotal3 string NurseryCuFt4 string NurseryPieces4 string NurseryTotal4 string NurseryCuFt5 string NurseryPieces5 string NurseryTotal5 string NurseryCuFt6 string NurseryPieces6 string NurseryTotal6 string NurseryCuFt7 string NurseryPieces7 string NurseryTotal7 string NurseryCuFt8 string NurseryPieces8 string NurseryTotal8 string NurseryCuFt9 string NurseryPieces9 string NurseryTotal9 string NurseryCuFt10 string NurseryPieces10 string NurseryTotal10 string NurseryCuFt11 string NurseryPieces11 string NurseryTotal11 string NurseryPiecesTotal1 string NurseryCuFtTotal1 string NurseryCuFt12 string NurseryPieces12 string NurseryTotal12 string NurseryTotalItems string }
type WeightEstimatorPage5 ¶
type WeightEstimatorPage5 struct { NurseryPiecesTotal2 string NurseryCuFtTotal2 string NurseryTotalCube string NurseryWeight string KitchenCuFt1 string KitchenPieces1 string KitchenTotal1 string KitchenCuFt2 string KitchenPieces2 string KitchenTotal2 string KitchenCuFt3 string KitchenPieces3 string KitchenTotal3 string KitchenCuFt4 string KitchenPieces4 string KitchenTotal4 string KitchenCuFt5 string KitchenPieces5 string KitchenTotal5 string KitchenCuFt6 string KitchenPieces6 string KitchenTotal6 string KitchenCuFt7 string KitchenPieces7 string KitchenTotal7 string KitchenCuFt8 string KitchenPieces8 string KitchenTotal8 string KitchenCuFt9 string KitchenPieces9 string KitchenTotal9 string KitchenCuFt10 string KitchenPieces10 string KitchenTotal10 string KitchenCuFt11 string KitchenPieces11 string KitchenTotal11 string KitchenCuFt12 string KitchenPieces12 string KitchenTotal12 string KitchenPiecesTotal1 string KitchenCuFtTotal1 string KitchenPiecesTotal2 string KitchenCuFtTotal2 string KitchenTotalItems string KitchenTotalCube string KitchenWeight string AppliancesCuFt1 string AppliancesPieces1 string AppliancesTotal1 string AppliancesCuFt2 string AppliancesPieces2 string AppliancesTotal2 string AppliancesCuFt3 string AppliancesPieces3 string AppliancesTotal3 string AppliancesCuFt4 string AppliancesPieces4 string AppliancesTotal4 string AppliancesCuFt5 string AppliancesPieces5 string AppliancesTotal5 string AppliancesCuFt6 string AppliancesPieces6 string AppliancesTotal6 string AppliancesCuFt7 string AppliancesPieces7 string AppliancesTotal7 string AppliancesCuFt8 string AppliancesPieces8 string AppliancesTotal8 string }
type WeightEstimatorPage6 ¶
type WeightEstimatorPage6 struct { AppliancesCuFt9 string AppliancesPieces9 string AppliancesTotal9 string AppliancesCuFt10 string AppliancesPieces10 string AppliancesTotal10 string AppliancesCuFt11 string AppliancesPieces11 string AppliancesTotal11 string AppliancesCuFt12 string AppliancesPieces12 string AppliancesTotal12 string AppliancesCuFt13 string AppliancesPieces13 string AppliancesTotal13 string AppliancesCuFt14 string AppliancesPieces14 string AppliancesTotal14 string AppliancesCuFt15 string AppliancesPieces15 string AppliancesTotal15 string AppliancesCuFt16 string AppliancesPieces16 string AppliancesTotal16 string AppliancesPiecesTotal1 string AppliancesCuFtTotal1 string AppliancesCuFt17 string AppliancesPieces17 string AppliancesTotal17 string AppliancesTotalItems string AppliancesCuFt18 string AppliancesPieces18 string AppliancesTotal18 string AppliancesTotalCube string AppliancesPiecesTotal2 string AppliancesCuFtTotal2 string AppliancesWeight string OutdoorCuFt1 string OutdoorPieces1 string OutdoorTotal1 string OutdoorCuFt2 string OutdoorPieces2 string OutdoorTotal2 string OutdoorCuFt3 string OutdoorPieces3 string OutdoorTotal3 string OutdoorCuFt4 string OutdoorPieces4 string OutdoorTotal4 string OutdoorCuFt5 string OutdoorPieces5 string OutdoorTotal5 string OutdoorCuFt6 string OutdoorPieces6 string OutdoorTotal6 string OutdoorCuFt7 string OutdoorPieces7 string OutdoorTotal7 string OutdoorCuFt8 string OutdoorPieces8 string OutdoorTotal8 string OutdoorCuFt9 string OutdoorPieces9 string OutdoorTotal9 string OutdoorCuFt10 string OutdoorPieces10 string OutdoorTotal10 string OutdoorCuFt11 string OutdoorPieces11 string OutdoorTotal11 string OutdoorCuFt12 string OutdoorPieces12 string OutdoorTotal12 string OutdoorCuFt13 string OutdoorPieces13 string OutdoorTotal13 string OutdoorCuFt14 string OutdoorPieces14 string OutdoorTotal14 string OutdoorCuFt15 string OutdoorPieces15 string OutdoorTotal15 string OutdoorCuFt16 string OutdoorPieces16 string OutdoorTotal16 string OutdoorCuFt17 string OutdoorPieces17 string OutdoorTotal17 string OutdoorCuFt18 string OutdoorPieces18 string OutdoorTotal18 string OutdoorCuFt19 string OutdoorPieces19 string OutdoorTotal19 string OutdoorCuFt20 string OutdoorPieces20 string OutdoorTotal20 string }
type WeightEstimatorPage7 ¶
type WeightEstimatorPage7 struct { OutdoorCuFt21 string OutdoorPieces21 string OutdoorTotal21 string OutdoorCuFt22 string OutdoorPieces22 string OutdoorTotal22 string OutdoorCuFt23 string OutdoorPieces23 string OutdoorTotal23 string OutdoorCuFt24 string OutdoorPieces24 string OutdoorTotal24 string OutdoorCuFt25 string OutdoorPieces25 string OutdoorTotal25 string OutdoorCuFt26 string OutdoorPieces26 string OutdoorTotal26 string OutdoorCuFt27 string OutdoorPieces27 string OutdoorTotal27 string OutdoorCuFt28 string OutdoorPieces28 string OutdoorTotal28 string OutdoorCuFt29 string OutdoorPieces29 string OutdoorTotal29 string OutdoorPiecesTotal1 string OutdoorCuFtTotal1 string OutdoorCuFt30 string OutdoorPieces30 string OutdoorTotal30 string OutdoorTotalItems string OutdoorPiecesTotal2 string OutdoorCuFtTotal2 string OutdoorTotalCube string OutdoorWeight string ExerciseCuFt1 string ExercisePieces1 string ExerciseTotal1 string ExerciseCuFt2 string ExercisePieces2 string ExerciseTotal2 string ExerciseCuFt3 string ExercisePieces3 string ExerciseTotal3 string ExerciseCuFt4 string ExercisePieces4 string ExerciseTotal4 string ExerciseCuFt5 string ExercisePieces5 string ExerciseTotal5 string ExerciseCuFt6 string ExercisePieces6 string ExerciseTotal6 string ExerciseCuFt7 string ExercisePieces7 string ExerciseTotal7 string ExerciseCuFt8 string ExercisePieces8 string ExerciseTotal8 string ExerciseCuFt9 string ExercisePieces9 string ExerciseTotal9 string ExerciseCuFt10 string ExercisePieces10 string ExerciseTotal10 string ExerciseCuFt11 string ExercisePieces11 string ExerciseTotal11 string ExercisePiecesTotal1 string ExerciseCuFtTotal1 string ExerciseCuFt12 string ExercisePieces12 string ExerciseTotal12 string ExerciseTotalItems string ExerciseCuFt13 string ExercisePieces13 string ExerciseTotal13 string ExerciseTotalCube string ExercisePiecesTotal2 string ExerciseCuFtTotal2 string ExerciseWeight string }
type WeightEstimatorPage8 ¶
type WeightEstimatorPage8 struct { MiscCuFt1 string MiscPieces1 string MiscTotal1 string MiscCuFt2 string MiscPieces2 string MiscTotal2 string MiscCuFt3 string MiscPieces3 string MiscTotal3 string MiscCuFt4 string MiscPieces4 string MiscTotal4 string MiscCuFt5 string MiscPieces5 string MiscTotal5 string MiscCuFt6 string MiscPieces6 string MiscTotal6 string MiscCuFt7 string MiscPieces7 string MiscTotal7 string MiscCuFt8 string MiscPieces8 string MiscTotal8 string MiscCuFt9 string MiscPieces9 string MiscTotal9 string MiscCuFt10 string MiscPieces10 string MiscTotal10 string MiscCuFt11 string MiscPieces11 string MiscTotal11 string MiscCuFt12 string MiscPieces12 string MiscTotal12 string MiscCuFt13 string MiscPieces13 string MiscTotal13 string MiscCuFt14 string MiscPieces14 string MiscTotal14 string MiscCuFt15 string MiscPieces15 string MiscTotal15 string MiscCuFt16 string MiscPieces16 string MiscTotal16 string MiscCuFt17 string MiscPieces17 string MiscTotal17 string MiscCuFt18 string MiscPieces18 string MiscTotal18 string MiscCuFt19 string MiscPieces19 string MiscTotal19 string MiscCuFt20 string MiscPieces20 string MiscTotal20 string MiscCuFt21 string MiscPieces21 string MiscTotal21 string MiscCuFt22 string MiscPieces22 string MiscTotal22 string MiscCuFt23 string MiscPieces23 string MiscTotal23 string MiscCuFt24 string MiscPieces24 string MiscTotal24 string MiscCuFt25 string MiscPieces25 string MiscTotal25 string MiscCuFt26 string MiscPieces26 string MiscTotal26 string MiscCuFt27 string MiscPieces27 string MiscTotal27 string MiscCuFt28 string MiscPieces28 string MiscTotal28 string MiscCuFt29 string MiscPieces29 string MiscTotal29 string MiscCuFt30 string MiscPieces30 string MiscTotal30 string MiscPiecesTotal1 string MiscCuFtTotal1 string MiscPiecesTotal2 string MiscCuFtTotal2 string MiscTotalItems string MiscTotalCube string MiscWeight string }
type WeightEstimatorPage9 ¶
type WeightEstimatorPage9 struct { GarageCuFt1 string GaragePieces1 string GarageTotal1 string GarageCuFt2 string GaragePieces2 string GarageTotal2 string GarageCuFt3 string GaragePieces3 string GarageTotal3 string GarageCuFt4 string GaragePieces4 string GarageTotal4 string GarageCuFt5 string GaragePieces5 string GarageTotal5 string GarageCuFt6 string GaragePieces6 string GarageTotal6 string GarageCuFt7 string GaragePieces7 string GarageTotal7 string GarageCuFt8 string GaragePieces8 string GarageTotal8 string GarageCuFt9 string GaragePieces9 string GarageTotal9 string GarageCuFt10 string GaragePieces10 string GarageTotal10 string GarageCuFt11 string GaragePieces11 string GarageTotal11 string GarageCuFt12 string GaragePieces12 string GarageTotal12 string GarageCuFt13 string GaragePieces13 string GarageTotal13 string GarageCuFt14 string GaragePieces14 string GarageTotal14 string GaragePiecesTotal1 string GarageCuFtTotal1 string GaragePiecesTotal2 string GarageCuFtTotal2 string GarageTotalItems string GarageTotalCube string GarageWeight string MilitaryTotalItems string CivilianTotalItems string MilitaryTotalCube string CivilianTotalCube string CartonsCuFt1 string CartonsPieces1 string CartonsTotal1 string CartonsCuFt2 string CartonsPieces2 string CartonsTotal2 string MilitaryWeight string CivilianWeight string CartonsCuFt3 string CartonsPieces3 string CartonsTotal3 string MilitaryProGear string CivilianProGear string CartonsCuFt4 string CartonsPieces4 string CartonsTotal4 string MilitaryMinusProGear string CivilianMinusProGear string CartonsCuFt5 string CartonsPieces5 string CartonsTotal5 string MilitaryPacking string }
type WeightEstimatorPages ¶
type WeightEstimatorPages struct { Page1 WeightEstimatorPage1 Page2 WeightEstimatorPage2 Page3 WeightEstimatorPage3 Page4 WeightEstimatorPage4 Page5 WeightEstimatorPage5 Page6 WeightEstimatorPage6 Page7 WeightEstimatorPage7 Page8 WeightEstimatorPage8 Page9 WeightEstimatorPage9 Page10 WeightEstimatorPage10 Page11 WeightEstimatorPage11 }
type WeightTicketComputer ¶
type WeightTicketComputer interface {
ParseWeightEstimatorExcelFile(appCtx appcontext.AppContext, file io.ReadCloser) (*WeightEstimatorPages, error)
}
type WeightTicketCreator ¶
type WeightTicketCreator interface {
CreateWeightTicket(appCtx appcontext.AppContext, ppmShipmentID uuid.UUID) (*models.WeightTicket, error)
}
WeightTicketCreator creates a WeightTicket that is associated with a PPMShipment
type WeightTicketDeleter ¶
type WeightTicketDeleter interface {
DeleteWeightTicket(appCtx appcontext.AppContext, ppmID uuid.UUID, weightTicketID uuid.UUID) error
}
WeightTicketDeleter deletes a WeightTicket
type WeightTicketFetcher ¶
type WeightTicketFetcher interface {
GetWeightTicket(appCtx appcontext.AppContext, weightTicketID uuid.UUID) (*models.WeightTicket, error)
}
WeightTicketFetcher fetches a WeightTicket that is associated with a PPMShipment
type WeightTicketGenerator ¶
type WeightTicketUpdater ¶
type WeightTicketUpdater interface {
UpdateWeightTicket(appCtx appcontext.AppContext, weightTicket models.WeightTicket, eTag string) (*models.WeightTicket, error)
}
WeightTicketUpdater updates a WeightTicket
Source Files ¶
- address.go
- admin_user.go
- boat_shipment.go
- calendar.go
- client_cert.go
- customer.go
- customer_support_remarks.go
- db_tools.go
- electronic_order.go
- evaluation_report.go
- feature_flag.go
- fetch.go
- ghc_rate_engine.go
- invoice.go
- line_of_accounting.go
- lock_move.go
- mobile_home_shipment.go
- move.go
- move_history.go
- move_task_order.go
- moving_expense.go
- mto_agent.go
- mto_service_item.go
- mto_shipment.go
- office.go
- office_user.go
- order.go
- organization.go
- pagination.go
- paperwork.go
- payment_request.go
- payment_service_item.go
- postal_code.go
- ppm_closeout.go
- ppmshipment.go
- pptas_report.go
- progear_weight_ticket.go
- pws_violation.go
- query.go
- query_order.go
- report_violation.go
- requested_office_users.go
- reweigh.go
- roles.go
- shipment_address_update.go
- shipment_orchestrator.go
- shipment_summary_worksheet.go
- signed_certification.go
- sit_entry_date_update.go
- sit_extension.go
- transportation_accounting_code.go
- transportation_office.go
- upload.go
- user.go
- users_privileges.go
- users_roles.go
- validation.go
- webhook_subscription.go
- weight_ticket.go
- weight_ticket_parser.go