001// --------------------------------------------------------------------------------
002// Copyright 2002-2026 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.order.common;
018
019import com.echothree.control.user.order.common.form.*;
020import com.echothree.control.user.order.common.result.*;
021import com.echothree.model.data.user.common.pk.UserVisitPK;
022import com.echothree.util.common.command.CommandResult;
023import com.echothree.util.common.command.VoidResult;
024
025public interface OrderService
026        extends OrderForms {
027    
028    // -------------------------------------------------------------------------
029    //   Testing
030    // -------------------------------------------------------------------------
031    
032    String ping();
033    
034    // -------------------------------------------------------------------------
035    //   Order Role Types
036    // -------------------------------------------------------------------------
037    
038    CommandResult<VoidResult> createOrderRoleType(UserVisitPK userVisitPK, CreateOrderRoleTypeForm form);
039    
040    // -------------------------------------------------------------------------
041    //   Order Role Type Descriptions
042    // -------------------------------------------------------------------------
043    
044    CommandResult<VoidResult> createOrderRoleTypeDescription(UserVisitPK userVisitPK, CreateOrderRoleTypeDescriptionForm form);
045    
046    // --------------------------------------------------------------------------------
047    //   Order Types
048    // --------------------------------------------------------------------------------
049
050    CommandResult<CreateOrderTypeResult> createOrderType(UserVisitPK userVisitPK, CreateOrderTypeForm form);
051
052    CommandResult<GetOrderTypeChoicesResult> getOrderTypeChoices(UserVisitPK userVisitPK, GetOrderTypeChoicesForm form);
053
054    CommandResult<GetOrderTypeResult> getOrderType(UserVisitPK userVisitPK, GetOrderTypeForm form);
055
056    CommandResult<GetOrderTypesResult> getOrderTypes(UserVisitPK userVisitPK, GetOrderTypesForm form);
057
058    CommandResult<VoidResult> setDefaultOrderType(UserVisitPK userVisitPK, SetDefaultOrderTypeForm form);
059
060    CommandResult<EditOrderTypeResult> editOrderType(UserVisitPK userVisitPK, EditOrderTypeForm form);
061
062    CommandResult<VoidResult> deleteOrderType(UserVisitPK userVisitPK, DeleteOrderTypeForm form);
063
064    // --------------------------------------------------------------------------------
065    //   Order Type Descriptions
066    // --------------------------------------------------------------------------------
067
068    CommandResult<VoidResult> createOrderTypeDescription(UserVisitPK userVisitPK, CreateOrderTypeDescriptionForm form);
069
070    CommandResult<GetOrderTypeDescriptionResult> getOrderTypeDescription(UserVisitPK userVisitPK, GetOrderTypeDescriptionForm form);
071
072    CommandResult<GetOrderTypeDescriptionsResult> getOrderTypeDescriptions(UserVisitPK userVisitPK, GetOrderTypeDescriptionsForm form);
073
074    CommandResult<EditOrderTypeDescriptionResult> editOrderTypeDescription(UserVisitPK userVisitPK, EditOrderTypeDescriptionForm form);
075
076    CommandResult<VoidResult> deleteOrderTypeDescription(UserVisitPK userVisitPK, DeleteOrderTypeDescriptionForm form);
077
078    // --------------------------------------------------------------------------------
079    //   Order Time Types
080    // --------------------------------------------------------------------------------
081
082    CommandResult<CreateOrderTimeTypeResult> createOrderTimeType(UserVisitPK userVisitPK, CreateOrderTimeTypeForm form);
083
084    CommandResult<GetOrderTimeTypeChoicesResult> getOrderTimeTypeChoices(UserVisitPK userVisitPK, GetOrderTimeTypeChoicesForm form);
085
086    CommandResult<GetOrderTimeTypeResult> getOrderTimeType(UserVisitPK userVisitPK, GetOrderTimeTypeForm form);
087
088    CommandResult<GetOrderTimeTypesResult> getOrderTimeTypes(UserVisitPK userVisitPK, GetOrderTimeTypesForm form);
089
090    CommandResult<VoidResult> setDefaultOrderTimeType(UserVisitPK userVisitPK, SetDefaultOrderTimeTypeForm form);
091
092    CommandResult<EditOrderTimeTypeResult> editOrderTimeType(UserVisitPK userVisitPK, EditOrderTimeTypeForm form);
093
094    CommandResult<VoidResult> deleteOrderTimeType(UserVisitPK userVisitPK, DeleteOrderTimeTypeForm form);
095
096    // --------------------------------------------------------------------------------
097    //   Order Time Type Descriptions
098    // --------------------------------------------------------------------------------
099
100    CommandResult<VoidResult> createOrderTimeTypeDescription(UserVisitPK userVisitPK, CreateOrderTimeTypeDescriptionForm form);
101
102    CommandResult<GetOrderTimeTypeDescriptionResult> getOrderTimeTypeDescription(UserVisitPK userVisitPK, GetOrderTimeTypeDescriptionForm form);
103
104    CommandResult<GetOrderTimeTypeDescriptionsResult> getOrderTimeTypeDescriptions(UserVisitPK userVisitPK, GetOrderTimeTypeDescriptionsForm form);
105
106    CommandResult<EditOrderTimeTypeDescriptionResult> editOrderTimeTypeDescription(UserVisitPK userVisitPK, EditOrderTimeTypeDescriptionForm form);
107
108    CommandResult<VoidResult> deleteOrderTimeTypeDescription(UserVisitPK userVisitPK, DeleteOrderTimeTypeDescriptionForm form);
109
110    // --------------------------------------------------------------------------------
111    //   Order Alias Types
112    // --------------------------------------------------------------------------------
113
114    CommandResult<VoidResult> createOrderAliasType(UserVisitPK userVisitPK, CreateOrderAliasTypeForm form);
115
116    CommandResult<GetOrderAliasTypeChoicesResult> getOrderAliasTypeChoices(UserVisitPK userVisitPK, GetOrderAliasTypeChoicesForm form);
117
118    CommandResult<GetOrderAliasTypeResult> getOrderAliasType(UserVisitPK userVisitPK, GetOrderAliasTypeForm form);
119
120    CommandResult<GetOrderAliasTypesResult> getOrderAliasTypes(UserVisitPK userVisitPK, GetOrderAliasTypesForm form);
121
122    CommandResult<VoidResult> setDefaultOrderAliasType(UserVisitPK userVisitPK, SetDefaultOrderAliasTypeForm form);
123
124    CommandResult<EditOrderAliasTypeResult> editOrderAliasType(UserVisitPK userVisitPK, EditOrderAliasTypeForm form);
125
126    CommandResult<VoidResult> deleteOrderAliasType(UserVisitPK userVisitPK, DeleteOrderAliasTypeForm form);
127
128    // --------------------------------------------------------------------------------
129    //   Order Alias Type Descriptions
130    // --------------------------------------------------------------------------------
131
132    CommandResult<VoidResult> createOrderAliasTypeDescription(UserVisitPK userVisitPK, CreateOrderAliasTypeDescriptionForm form);
133
134    CommandResult<GetOrderAliasTypeDescriptionResult> getOrderAliasTypeDescription(UserVisitPK userVisitPK, GetOrderAliasTypeDescriptionForm form);
135
136    CommandResult<GetOrderAliasTypeDescriptionsResult> getOrderAliasTypeDescriptions(UserVisitPK userVisitPK, GetOrderAliasTypeDescriptionsForm form);
137
138    CommandResult<EditOrderAliasTypeDescriptionResult> editOrderAliasTypeDescription(UserVisitPK userVisitPK, EditOrderAliasTypeDescriptionForm form);
139
140    CommandResult<VoidResult> deleteOrderAliasTypeDescription(UserVisitPK userVisitPK, DeleteOrderAliasTypeDescriptionForm form);
141
142    // --------------------------------------------------------------------------------
143    //   Order Aliases
144    // --------------------------------------------------------------------------------
145
146    CommandResult<VoidResult> createOrderAlias(UserVisitPK userVisitPK, CreateOrderAliasForm form);
147
148    CommandResult<GetOrderAliasResult> getOrderAlias(UserVisitPK userVisitPK, GetOrderAliasForm form);
149
150    CommandResult<GetOrderAliasesResult> getOrderAliases(UserVisitPK userVisitPK, GetOrderAliasesForm form);
151
152    CommandResult<EditOrderAliasResult> editOrderAlias(UserVisitPK userVisitPK, EditOrderAliasForm form);
153
154    CommandResult<VoidResult> deleteOrderAlias(UserVisitPK userVisitPK, DeleteOrderAliasForm form);
155
156    // --------------------------------------------------------------------------------
157    //   Order Priorities
158    // --------------------------------------------------------------------------------
159
160    CommandResult<CreateOrderPriorityResult> createOrderPriority(UserVisitPK userVisitPK, CreateOrderPriorityForm form);
161
162    CommandResult<GetOrderPriorityChoicesResult> getOrderPriorityChoices(UserVisitPK userVisitPK, GetOrderPriorityChoicesForm form);
163
164    CommandResult<GetOrderPriorityResult> getOrderPriority(UserVisitPK userVisitPK, GetOrderPriorityForm form);
165
166    CommandResult<GetOrderPrioritiesResult> getOrderPriorities(UserVisitPK userVisitPK, GetOrderPrioritiesForm form);
167
168    CommandResult<VoidResult> setDefaultOrderPriority(UserVisitPK userVisitPK, SetDefaultOrderPriorityForm form);
169
170    CommandResult<EditOrderPriorityResult> editOrderPriority(UserVisitPK userVisitPK, EditOrderPriorityForm form);
171
172    CommandResult<VoidResult> deleteOrderPriority(UserVisitPK userVisitPK, DeleteOrderPriorityForm form);
173
174    // --------------------------------------------------------------------------------
175    //   Order Priority Descriptions
176    // --------------------------------------------------------------------------------
177
178    CommandResult<VoidResult> createOrderPriorityDescription(UserVisitPK userVisitPK, CreateOrderPriorityDescriptionForm form);
179
180    CommandResult<GetOrderPriorityDescriptionResult> getOrderPriorityDescription(UserVisitPK userVisitPK, GetOrderPriorityDescriptionForm form);
181
182    CommandResult<GetOrderPriorityDescriptionsResult> getOrderPriorityDescriptions(UserVisitPK userVisitPK, GetOrderPriorityDescriptionsForm form);
183
184    CommandResult<EditOrderPriorityDescriptionResult> editOrderPriorityDescription(UserVisitPK userVisitPK, EditOrderPriorityDescriptionForm form);
185
186    CommandResult<VoidResult> deleteOrderPriorityDescription(UserVisitPK userVisitPK, DeleteOrderPriorityDescriptionForm form);
187
188    // --------------------------------------------------------------------------------
189    //   Order Adjustment Types
190    // --------------------------------------------------------------------------------
191
192    CommandResult<VoidResult> createOrderAdjustmentType(UserVisitPK userVisitPK, CreateOrderAdjustmentTypeForm form);
193
194    CommandResult<GetOrderAdjustmentTypeChoicesResult> getOrderAdjustmentTypeChoices(UserVisitPK userVisitPK, GetOrderAdjustmentTypeChoicesForm form);
195
196    CommandResult<GetOrderAdjustmentTypeResult> getOrderAdjustmentType(UserVisitPK userVisitPK, GetOrderAdjustmentTypeForm form);
197
198    CommandResult<GetOrderAdjustmentTypesResult> getOrderAdjustmentTypes(UserVisitPK userVisitPK, GetOrderAdjustmentTypesForm form);
199
200    CommandResult<VoidResult> setDefaultOrderAdjustmentType(UserVisitPK userVisitPK, SetDefaultOrderAdjustmentTypeForm form);
201
202    CommandResult<EditOrderAdjustmentTypeResult> editOrderAdjustmentType(UserVisitPK userVisitPK, EditOrderAdjustmentTypeForm form);
203
204    CommandResult<VoidResult> deleteOrderAdjustmentType(UserVisitPK userVisitPK, DeleteOrderAdjustmentTypeForm form);
205
206    // --------------------------------------------------------------------------------
207    //   Order Adjustment Type Descriptions
208    // --------------------------------------------------------------------------------
209
210    CommandResult<VoidResult> createOrderAdjustmentTypeDescription(UserVisitPK userVisitPK, CreateOrderAdjustmentTypeDescriptionForm form);
211
212    CommandResult<GetOrderAdjustmentTypeDescriptionResult> getOrderAdjustmentTypeDescription(UserVisitPK userVisitPK, GetOrderAdjustmentTypeDescriptionForm form);
213
214    CommandResult<GetOrderAdjustmentTypeDescriptionsResult> getOrderAdjustmentTypeDescriptions(UserVisitPK userVisitPK, GetOrderAdjustmentTypeDescriptionsForm form);
215
216    CommandResult<EditOrderAdjustmentTypeDescriptionResult> editOrderAdjustmentTypeDescription(UserVisitPK userVisitPK, EditOrderAdjustmentTypeDescriptionForm form);
217
218    CommandResult<VoidResult> deleteOrderAdjustmentTypeDescription(UserVisitPK userVisitPK, DeleteOrderAdjustmentTypeDescriptionForm form);
219
220    // --------------------------------------------------------------------------------
221    //   Order Line Adjustment Types
222    // --------------------------------------------------------------------------------
223
224    CommandResult<VoidResult> createOrderLineAdjustmentType(UserVisitPK userVisitPK, CreateOrderLineAdjustmentTypeForm form);
225
226    CommandResult<GetOrderLineAdjustmentTypeChoicesResult> getOrderLineAdjustmentTypeChoices(UserVisitPK userVisitPK, GetOrderLineAdjustmentTypeChoicesForm form);
227
228    CommandResult<GetOrderLineAdjustmentTypeResult> getOrderLineAdjustmentType(UserVisitPK userVisitPK, GetOrderLineAdjustmentTypeForm form);
229
230    CommandResult<GetOrderLineAdjustmentTypesResult> getOrderLineAdjustmentTypes(UserVisitPK userVisitPK, GetOrderLineAdjustmentTypesForm form);
231
232    CommandResult<VoidResult> setDefaultOrderLineAdjustmentType(UserVisitPK userVisitPK, SetDefaultOrderLineAdjustmentTypeForm form);
233
234    CommandResult<EditOrderLineAdjustmentTypeResult> editOrderLineAdjustmentType(UserVisitPK userVisitPK, EditOrderLineAdjustmentTypeForm form);
235
236    CommandResult<VoidResult> deleteOrderLineAdjustmentType(UserVisitPK userVisitPK, DeleteOrderLineAdjustmentTypeForm form);
237
238    // --------------------------------------------------------------------------------
239    //   Order Line Adjustment Type Descriptions
240    // --------------------------------------------------------------------------------
241
242    CommandResult<VoidResult> createOrderLineAdjustmentTypeDescription(UserVisitPK userVisitPK, CreateOrderLineAdjustmentTypeDescriptionForm form);
243
244    CommandResult<GetOrderLineAdjustmentTypeDescriptionResult> getOrderLineAdjustmentTypeDescription(UserVisitPK userVisitPK, GetOrderLineAdjustmentTypeDescriptionForm form);
245
246    CommandResult<GetOrderLineAdjustmentTypeDescriptionsResult> getOrderLineAdjustmentTypeDescriptions(UserVisitPK userVisitPK, GetOrderLineAdjustmentTypeDescriptionsForm form);
247
248    CommandResult<EditOrderLineAdjustmentTypeDescriptionResult> editOrderLineAdjustmentTypeDescription(UserVisitPK userVisitPK, EditOrderLineAdjustmentTypeDescriptionForm form);
249
250    CommandResult<VoidResult> deleteOrderLineAdjustmentTypeDescription(UserVisitPK userVisitPK, DeleteOrderLineAdjustmentTypeDescriptionForm form);
251
252}