001// --------------------------------------------------------------------------------
002// Copyright 2002-2024 Echo Three, LLC
003//
004// Licensed under the Apache License, Version 2.0 (the "License");
005// you may not use this file except in compliance with the License.
006// You may obtain a copy of the License at
007//
008//     http://www.apache.org/licenses/LICENSE-2.0
009//
010// Unless required by applicable law or agreed to in writing, software
011// distributed under the License is distributed on an "AS IS" BASIS,
012// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013// See the License for the specific language governing permissions and
014// limitations under the License.
015// --------------------------------------------------------------------------------
016
017package com.echothree.control.user.shipment.common;
018
019import com.echothree.control.user.shipment.common.form.*;
020import com.echothree.model.data.user.common.pk.UserVisitPK;
021import com.echothree.util.common.command.CommandResult;
022
023public interface ShipmentService
024        extends ShipmentForms {
025    
026    // -------------------------------------------------------------------------
027    //   Testing
028    // -------------------------------------------------------------------------
029    
030    String ping();
031
032    // -------------------------------------------------------------------------
033    //   Free On Boards
034    // -------------------------------------------------------------------------
035
036    CommandResult createFreeOnBoard(UserVisitPK userVisitPK, CreateFreeOnBoardForm form);
037
038    CommandResult getFreeOnBoards(UserVisitPK userVisitPK, GetFreeOnBoardsForm form);
039
040    CommandResult getFreeOnBoard(UserVisitPK userVisitPK, GetFreeOnBoardForm form);
041
042    CommandResult getFreeOnBoardChoices(UserVisitPK userVisitPK, GetFreeOnBoardChoicesForm form);
043
044    CommandResult setDefaultFreeOnBoard(UserVisitPK userVisitPK, SetDefaultFreeOnBoardForm form);
045
046    CommandResult editFreeOnBoard(UserVisitPK userVisitPK, EditFreeOnBoardForm form);
047
048    CommandResult deleteFreeOnBoard(UserVisitPK userVisitPK, DeleteFreeOnBoardForm form);
049
050    // -------------------------------------------------------------------------
051    //   Free On Board Descriptions
052    // -------------------------------------------------------------------------
053
054    CommandResult createFreeOnBoardDescription(UserVisitPK userVisitPK, CreateFreeOnBoardDescriptionForm form);
055
056    CommandResult getFreeOnBoardDescriptions(UserVisitPK userVisitPK, GetFreeOnBoardDescriptionsForm form);
057
058    CommandResult editFreeOnBoardDescription(UserVisitPK userVisitPK, EditFreeOnBoardDescriptionForm form);
059
060    CommandResult deleteFreeOnBoardDescription(UserVisitPK userVisitPK, DeleteFreeOnBoardDescriptionForm form);
061
062    // --------------------------------------------------------------------------------
063    //   Shipment Types
064    // --------------------------------------------------------------------------------
065
066    CommandResult createShipmentType(UserVisitPK userVisitPK, CreateShipmentTypeForm form);
067
068    CommandResult getShipmentTypeChoices(UserVisitPK userVisitPK, GetShipmentTypeChoicesForm form);
069
070    CommandResult getShipmentType(UserVisitPK userVisitPK, GetShipmentTypeForm form);
071
072    CommandResult getShipmentTypes(UserVisitPK userVisitPK, GetShipmentTypesForm form);
073
074    CommandResult setDefaultShipmentType(UserVisitPK userVisitPK, SetDefaultShipmentTypeForm form);
075
076    CommandResult editShipmentType(UserVisitPK userVisitPK, EditShipmentTypeForm form);
077
078    CommandResult deleteShipmentType(UserVisitPK userVisitPK, DeleteShipmentTypeForm form);
079
080    // --------------------------------------------------------------------------------
081    //   Shipment Type Descriptions
082    // --------------------------------------------------------------------------------
083
084    CommandResult createShipmentTypeDescription(UserVisitPK userVisitPK, CreateShipmentTypeDescriptionForm form);
085
086    CommandResult getShipmentTypeDescription(UserVisitPK userVisitPK, GetShipmentTypeDescriptionForm form);
087
088    CommandResult getShipmentTypeDescriptions(UserVisitPK userVisitPK, GetShipmentTypeDescriptionsForm form);
089
090    CommandResult editShipmentTypeDescription(UserVisitPK userVisitPK, EditShipmentTypeDescriptionForm form);
091
092    CommandResult deleteShipmentTypeDescription(UserVisitPK userVisitPK, DeleteShipmentTypeDescriptionForm form);
093
094    // --------------------------------------------------------------------------------
095    //   Shipment Time Types
096    // --------------------------------------------------------------------------------
097
098    CommandResult createShipmentTimeType(UserVisitPK userVisitPK, CreateShipmentTimeTypeForm form);
099
100    CommandResult getShipmentTimeTypeChoices(UserVisitPK userVisitPK, GetShipmentTimeTypeChoicesForm form);
101
102    CommandResult getShipmentTimeType(UserVisitPK userVisitPK, GetShipmentTimeTypeForm form);
103
104    CommandResult getShipmentTimeTypes(UserVisitPK userVisitPK, GetShipmentTimeTypesForm form);
105
106    CommandResult setDefaultShipmentTimeType(UserVisitPK userVisitPK, SetDefaultShipmentTimeTypeForm form);
107
108    CommandResult editShipmentTimeType(UserVisitPK userVisitPK, EditShipmentTimeTypeForm form);
109
110    CommandResult deleteShipmentTimeType(UserVisitPK userVisitPK, DeleteShipmentTimeTypeForm form);
111
112    // --------------------------------------------------------------------------------
113    //   Shipment Time Type Descriptions
114    // --------------------------------------------------------------------------------
115
116    CommandResult createShipmentTimeTypeDescription(UserVisitPK userVisitPK, CreateShipmentTimeTypeDescriptionForm form);
117
118    CommandResult getShipmentTimeTypeDescription(UserVisitPK userVisitPK, GetShipmentTimeTypeDescriptionForm form);
119
120    CommandResult getShipmentTimeTypeDescriptions(UserVisitPK userVisitPK, GetShipmentTimeTypeDescriptionsForm form);
121
122    CommandResult editShipmentTimeTypeDescription(UserVisitPK userVisitPK, EditShipmentTimeTypeDescriptionForm form);
123
124    CommandResult deleteShipmentTimeTypeDescription(UserVisitPK userVisitPK, DeleteShipmentTimeTypeDescriptionForm form);
125
126    // -------------------------------------------------------------------------
127    //   Shipment Type Shipping Methods
128    // -------------------------------------------------------------------------
129
130    CommandResult createShipmentTypeShippingMethod(UserVisitPK userVisitPK, CreateShipmentTypeShippingMethodForm form);
131
132    CommandResult getShipmentTypeShippingMethods(UserVisitPK userVisitPK, GetShipmentTypeShippingMethodsForm form);
133
134    CommandResult setDefaultShipmentTypeShippingMethod(UserVisitPK userVisitPK, SetDefaultShipmentTypeShippingMethodForm form);
135
136    CommandResult editShipmentTypeShippingMethod(UserVisitPK userVisitPK, EditShipmentTypeShippingMethodForm form);
137
138    CommandResult deleteShipmentTypeShippingMethod(UserVisitPK userVisitPK, DeleteShipmentTypeShippingMethodForm form);
139
140    // --------------------------------------------------------------------------------
141    //   Shipment Alias Types
142    // --------------------------------------------------------------------------------
143
144    CommandResult createShipmentAliasType(UserVisitPK userVisitPK, CreateShipmentAliasTypeForm form);
145
146    CommandResult getShipmentAliasTypeChoices(UserVisitPK userVisitPK, GetShipmentAliasTypeChoicesForm form);
147
148    CommandResult getShipmentAliasType(UserVisitPK userVisitPK, GetShipmentAliasTypeForm form);
149
150    CommandResult getShipmentAliasTypes(UserVisitPK userVisitPK, GetShipmentAliasTypesForm form);
151
152    CommandResult setDefaultShipmentAliasType(UserVisitPK userVisitPK, SetDefaultShipmentAliasTypeForm form);
153
154    CommandResult editShipmentAliasType(UserVisitPK userVisitPK, EditShipmentAliasTypeForm form);
155
156    CommandResult deleteShipmentAliasType(UserVisitPK userVisitPK, DeleteShipmentAliasTypeForm form);
157
158    // --------------------------------------------------------------------------------
159    //   Shipment Alias Type Descriptions
160    // --------------------------------------------------------------------------------
161
162    CommandResult createShipmentAliasTypeDescription(UserVisitPK userVisitPK, CreateShipmentAliasTypeDescriptionForm form);
163
164    CommandResult getShipmentAliasTypeDescription(UserVisitPK userVisitPK, GetShipmentAliasTypeDescriptionForm form);
165
166    CommandResult getShipmentAliasTypeDescriptions(UserVisitPK userVisitPK, GetShipmentAliasTypeDescriptionsForm form);
167
168    CommandResult editShipmentAliasTypeDescription(UserVisitPK userVisitPK, EditShipmentAliasTypeDescriptionForm form);
169
170    CommandResult deleteShipmentAliasTypeDescription(UserVisitPK userVisitPK, DeleteShipmentAliasTypeDescriptionForm form);
171
172    // --------------------------------------------------------------------------------
173    //   Shipment Aliases
174    // --------------------------------------------------------------------------------
175
176    CommandResult createShipmentAlias(UserVisitPK userVisitPK, CreateShipmentAliasForm form);
177
178    CommandResult getShipmentAlias(UserVisitPK userVisitPK, GetShipmentAliasForm form);
179
180    CommandResult getShipmentAliases(UserVisitPK userVisitPK, GetShipmentAliasesForm form);
181
182    CommandResult editShipmentAlias(UserVisitPK userVisitPK, EditShipmentAliasForm form);
183
184    CommandResult deleteShipmentAlias(UserVisitPK userVisitPK, DeleteShipmentAliasForm form);
185
186}