001// --------------------------------------------------------------------------------
002// Copyright 2002-2025 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.invoice.server;
018
019import com.echothree.control.user.invoice.common.InvoiceRemote;
020import com.echothree.control.user.invoice.common.form.*;
021import com.echothree.control.user.invoice.server.command.*;
022import com.echothree.model.data.user.common.pk.UserVisitPK;
023import com.echothree.util.common.command.CommandResult;
024import javax.ejb.Stateless;
025import javax.enterprise.inject.spi.CDI;
026
027@Stateless
028public class InvoiceBean
029        extends InvoiceFormsImpl
030        implements InvoiceRemote, InvoiceLocal {
031    
032    // -------------------------------------------------------------------------
033    //   Testing
034    // -------------------------------------------------------------------------
035    
036    @Override
037    public String ping() {
038        return "InvoiceBean is alive!";
039    }
040    
041    // --------------------------------------------------------------------------------
042    //   Invoice Line Use Types
043    // --------------------------------------------------------------------------------
044    
045    @Override
046    public CommandResult createInvoiceLineUseType(UserVisitPK userVisitPK, CreateInvoiceLineUseTypeForm form) {
047        return CDI.current().select(CreateInvoiceLineUseTypeCommand.class).get().run(userVisitPK, form);
048    }
049    
050    // --------------------------------------------------------------------------------
051    //   Invoice Line Use Type Descriptions
052    // --------------------------------------------------------------------------------
053    
054    @Override
055    public CommandResult createInvoiceLineUseTypeDescription(UserVisitPK userVisitPK, CreateInvoiceLineUseTypeDescriptionForm form) {
056        return CDI.current().select(CreateInvoiceLineUseTypeDescriptionCommand.class).get().run(userVisitPK, form);
057    }
058    
059    // --------------------------------------------------------------------------------
060    //   Invoice Role Type Types
061    // --------------------------------------------------------------------------------
062    
063    @Override
064    public CommandResult createInvoiceRoleType(UserVisitPK userVisitPK, CreateInvoiceRoleTypeForm form) {
065        return CDI.current().select(CreateInvoiceRoleTypeCommand.class).get().run(userVisitPK, form);
066    }
067    
068    // --------------------------------------------------------------------------------
069    //   Invoice Role Type Descriptions
070    // --------------------------------------------------------------------------------
071    
072    @Override
073    public CommandResult createInvoiceRoleTypeDescription(UserVisitPK userVisitPK, CreateInvoiceRoleTypeDescriptionForm form) {
074        return CDI.current().select(CreateInvoiceRoleTypeDescriptionCommand.class).get().run(userVisitPK, form);
075    }
076    
077    // --------------------------------------------------------------------------------
078    //   Invoice Types
079    // --------------------------------------------------------------------------------
080    
081    @Override
082    public CommandResult createInvoiceType(UserVisitPK userVisitPK, CreateInvoiceTypeForm form) {
083        return CDI.current().select(CreateInvoiceTypeCommand.class).get().run(userVisitPK, form);
084    }
085    
086    @Override
087    public CommandResult getInvoiceTypeChoices(UserVisitPK userVisitPK, GetInvoiceTypeChoicesForm form) {
088        return CDI.current().select(GetInvoiceTypeChoicesCommand.class).get().run(userVisitPK, form);
089    }
090    
091    @Override
092    public CommandResult getInvoiceType(UserVisitPK userVisitPK, GetInvoiceTypeForm form) {
093        return CDI.current().select(GetInvoiceTypeCommand.class).get().run(userVisitPK, form);
094    }
095    
096    @Override
097    public CommandResult getInvoiceTypes(UserVisitPK userVisitPK, GetInvoiceTypesForm form) {
098        return CDI.current().select(GetInvoiceTypesCommand.class).get().run(userVisitPK, form);
099    }
100    
101    @Override
102    public CommandResult setDefaultInvoiceType(UserVisitPK userVisitPK, SetDefaultInvoiceTypeForm form) {
103        return CDI.current().select(SetDefaultInvoiceTypeCommand.class).get().run(userVisitPK, form);
104    }
105    
106    @Override
107    public CommandResult editInvoiceType(UserVisitPK userVisitPK, EditInvoiceTypeForm form) {
108        return CDI.current().select(EditInvoiceTypeCommand.class).get().run(userVisitPK, form);
109    }
110    
111    @Override
112    public CommandResult deleteInvoiceType(UserVisitPK userVisitPK, DeleteInvoiceTypeForm form) {
113        return CDI.current().select(DeleteInvoiceTypeCommand.class).get().run(userVisitPK, form);
114    }
115    
116    // --------------------------------------------------------------------------------
117    //   Invoice Type Descriptions
118    // --------------------------------------------------------------------------------
119    
120    @Override
121    public CommandResult createInvoiceTypeDescription(UserVisitPK userVisitPK, CreateInvoiceTypeDescriptionForm form) {
122        return CDI.current().select(CreateInvoiceTypeDescriptionCommand.class).get().run(userVisitPK, form);
123    }
124    
125    @Override
126    public CommandResult getInvoiceTypeDescriptions(UserVisitPK userVisitPK, GetInvoiceTypeDescriptionsForm form) {
127        return CDI.current().select(GetInvoiceTypeDescriptionsCommand.class).get().run(userVisitPK, form);
128    }
129    
130    @Override
131    public CommandResult editInvoiceTypeDescription(UserVisitPK userVisitPK, EditInvoiceTypeDescriptionForm form) {
132        return CDI.current().select(EditInvoiceTypeDescriptionCommand.class).get().run(userVisitPK, form);
133    }
134    
135    @Override
136    public CommandResult deleteInvoiceTypeDescription(UserVisitPK userVisitPK, DeleteInvoiceTypeDescriptionForm form) {
137        return CDI.current().select(DeleteInvoiceTypeDescriptionCommand.class).get().run(userVisitPK, form);
138    }
139    
140    // --------------------------------------------------------------------------------
141    //   Invoice Time Types
142    // --------------------------------------------------------------------------------
143
144    @Override
145    public CommandResult createInvoiceTimeType(UserVisitPK userVisitPK, CreateInvoiceTimeTypeForm form) {
146        return CDI.current().select(CreateInvoiceTimeTypeCommand.class).get().run(userVisitPK, form);
147    }
148
149    @Override
150    public CommandResult getInvoiceTimeTypeChoices(UserVisitPK userVisitPK, GetInvoiceTimeTypeChoicesForm form) {
151        return CDI.current().select(GetInvoiceTimeTypeChoicesCommand.class).get().run(userVisitPK, form);
152    }
153
154    @Override
155    public CommandResult getInvoiceTimeType(UserVisitPK userVisitPK, GetInvoiceTimeTypeForm form) {
156        return CDI.current().select(GetInvoiceTimeTypeCommand.class).get().run(userVisitPK, form);
157    }
158
159    @Override
160    public CommandResult getInvoiceTimeTypes(UserVisitPK userVisitPK, GetInvoiceTimeTypesForm form) {
161        return CDI.current().select(GetInvoiceTimeTypesCommand.class).get().run(userVisitPK, form);
162    }
163
164    @Override
165    public CommandResult setDefaultInvoiceTimeType(UserVisitPK userVisitPK, SetDefaultInvoiceTimeTypeForm form) {
166        return CDI.current().select(SetDefaultInvoiceTimeTypeCommand.class).get().run(userVisitPK, form);
167    }
168
169    @Override
170    public CommandResult editInvoiceTimeType(UserVisitPK userVisitPK, EditInvoiceTimeTypeForm form) {
171        return CDI.current().select(EditInvoiceTimeTypeCommand.class).get().run(userVisitPK, form);
172    }
173
174    @Override
175    public CommandResult deleteInvoiceTimeType(UserVisitPK userVisitPK, DeleteInvoiceTimeTypeForm form) {
176        return CDI.current().select(DeleteInvoiceTimeTypeCommand.class).get().run(userVisitPK, form);
177    }
178
179    // --------------------------------------------------------------------------------
180    //   Invoice Time Type Descriptions
181    // --------------------------------------------------------------------------------
182
183    @Override
184    public CommandResult createInvoiceTimeTypeDescription(UserVisitPK userVisitPK, CreateInvoiceTimeTypeDescriptionForm form) {
185        return CDI.current().select(CreateInvoiceTimeTypeDescriptionCommand.class).get().run(userVisitPK, form);
186    }
187
188    @Override
189    public CommandResult getInvoiceTimeTypeDescription(UserVisitPK userVisitPK, GetInvoiceTimeTypeDescriptionForm form) {
190        return CDI.current().select(GetInvoiceTimeTypeDescriptionCommand.class).get().run(userVisitPK, form);
191    }
192
193    @Override
194    public CommandResult getInvoiceTimeTypeDescriptions(UserVisitPK userVisitPK, GetInvoiceTimeTypeDescriptionsForm form) {
195        return CDI.current().select(GetInvoiceTimeTypeDescriptionsCommand.class).get().run(userVisitPK, form);
196    }
197
198    @Override
199    public CommandResult editInvoiceTimeTypeDescription(UserVisitPK userVisitPK, EditInvoiceTimeTypeDescriptionForm form) {
200        return CDI.current().select(EditInvoiceTimeTypeDescriptionCommand.class).get().run(userVisitPK, form);
201    }
202
203    @Override
204    public CommandResult deleteInvoiceTimeTypeDescription(UserVisitPK userVisitPK, DeleteInvoiceTimeTypeDescriptionForm form) {
205        return CDI.current().select(DeleteInvoiceTimeTypeDescriptionCommand.class).get().run(userVisitPK, form);
206    }
207
208    // --------------------------------------------------------------------------------
209    //   Invoice Line Types
210    // --------------------------------------------------------------------------------
211    
212    @Override
213    public CommandResult createInvoiceLineType(UserVisitPK userVisitPK, CreateInvoiceLineTypeForm form) {
214        return CDI.current().select(CreateInvoiceLineTypeCommand.class).get().run(userVisitPK, form);
215    }
216    
217    @Override
218    public CommandResult getInvoiceLineTypeChoices(UserVisitPK userVisitPK, GetInvoiceLineTypeChoicesForm form) {
219        return CDI.current().select(GetInvoiceLineTypeChoicesCommand.class).get().run(userVisitPK, form);
220    }
221    
222    @Override
223    public CommandResult getInvoiceLineType(UserVisitPK userVisitPK, GetInvoiceLineTypeForm form) {
224        return CDI.current().select(GetInvoiceLineTypeCommand.class).get().run(userVisitPK, form);
225    }
226    
227    @Override
228    public CommandResult getInvoiceLineTypes(UserVisitPK userVisitPK, GetInvoiceLineTypesForm form) {
229        return CDI.current().select(GetInvoiceLineTypesCommand.class).get().run(userVisitPK, form);
230    }
231    
232    @Override
233    public CommandResult setDefaultInvoiceLineType(UserVisitPK userVisitPK, SetDefaultInvoiceLineTypeForm form) {
234        return CDI.current().select(SetDefaultInvoiceLineTypeCommand.class).get().run(userVisitPK, form);
235    }
236    
237    @Override
238    public CommandResult editInvoiceLineType(UserVisitPK userVisitPK, EditInvoiceLineTypeForm form) {
239        return CDI.current().select(EditInvoiceLineTypeCommand.class).get().run(userVisitPK, form);
240    }
241    
242    @Override
243    public CommandResult deleteInvoiceLineType(UserVisitPK userVisitPK, DeleteInvoiceLineTypeForm form) {
244        return CDI.current().select(DeleteInvoiceLineTypeCommand.class).get().run(userVisitPK, form);
245    }
246    
247    // --------------------------------------------------------------------------------
248    //   Invoice Line Type Descriptions
249    // --------------------------------------------------------------------------------
250    
251    @Override
252    public CommandResult createInvoiceLineTypeDescription(UserVisitPK userVisitPK, CreateInvoiceLineTypeDescriptionForm form) {
253        return CDI.current().select(CreateInvoiceLineTypeDescriptionCommand.class).get().run(userVisitPK, form);
254    }
255    
256    @Override
257    public CommandResult getInvoiceLineTypeDescriptions(UserVisitPK userVisitPK, GetInvoiceLineTypeDescriptionsForm form) {
258        return CDI.current().select(GetInvoiceLineTypeDescriptionsCommand.class).get().run(userVisitPK, form);
259    }
260    
261    @Override
262    public CommandResult editInvoiceLineTypeDescription(UserVisitPK userVisitPK, EditInvoiceLineTypeDescriptionForm form) {
263        return CDI.current().select(EditInvoiceLineTypeDescriptionCommand.class).get().run(userVisitPK, form);
264    }
265    
266    @Override
267    public CommandResult deleteInvoiceLineTypeDescription(UserVisitPK userVisitPK, DeleteInvoiceLineTypeDescriptionForm form) {
268        return CDI.current().select(DeleteInvoiceLineTypeDescriptionCommand.class).get().run(userVisitPK, form);
269    }
270    
271}