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.sales.server;
018
019import com.echothree.control.user.sales.common.SalesRemote;
020import com.echothree.control.user.sales.common.form.*;
021import com.echothree.control.user.sales.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 SalesBean
029        extends SalesFormsImpl
030        implements SalesRemote, SalesLocal {
031    
032    // -------------------------------------------------------------------------
033    //   Testing
034    // -------------------------------------------------------------------------
035    
036    @Override
037    public String ping() {
038        return "SalesBean is alive!";
039    }
040    
041    // -------------------------------------------------------------------------
042    //   Sales Order Batches
043    // -------------------------------------------------------------------------
044    
045    @Override
046    public CommandResult createSalesOrderBatch(UserVisitPK userVisitPK, CreateSalesOrderBatchForm form) {
047        return CDI.current().select(CreateSalesOrderBatchCommand.class).get().run(userVisitPK, form);
048    }
049    
050    @Override
051    public CommandResult getSalesOrderBatch(UserVisitPK userVisitPK, GetSalesOrderBatchForm form) {
052        return CDI.current().select(GetSalesOrderBatchCommand.class).get().run(userVisitPK, form);
053    }
054
055    @Override
056    public CommandResult getSalesOrderBatches(UserVisitPK userVisitPK, GetSalesOrderBatchesForm form) {
057        return CDI.current().select(GetSalesOrderBatchesCommand.class).get().run(userVisitPK, form);
058    }
059    
060    @Override
061    public CommandResult getSalesOrderBatchStatusChoices(UserVisitPK userVisitPK, GetSalesOrderBatchStatusChoicesForm form) {
062        return CDI.current().select(GetSalesOrderBatchStatusChoicesCommand.class).get().run(userVisitPK, form);
063    }
064    
065    @Override
066    public CommandResult setSalesOrderBatchStatus(UserVisitPK userVisitPK, SetSalesOrderBatchStatusForm form) {
067        return CDI.current().select(SetSalesOrderBatchStatusCommand.class).get().run(userVisitPK, form);
068    }
069    
070    @Override
071    public CommandResult editSalesOrderBatch(UserVisitPK userVisitPK, EditSalesOrderBatchForm form) {
072        return CDI.current().select(EditSalesOrderBatchCommand.class).get().run(userVisitPK, form);
073    }
074
075    @Override
076    public CommandResult deleteSalesOrderBatch(UserVisitPK userVisitPK, DeleteSalesOrderBatchForm form) {
077        return CDI.current().select(DeleteSalesOrderBatchCommand.class).get().run(userVisitPK, form);
078    }
079
080    // -------------------------------------------------------------------------
081    //   Sales Orders
082    // -------------------------------------------------------------------------
083    
084    @Override
085    public CommandResult createSalesOrder(UserVisitPK userVisitPK, CreateSalesOrderForm form) {
086        return CDI.current().select(CreateSalesOrderCommand.class).get().run(userVisitPK, form);
087    }
088    
089    @Override
090    public CommandResult getSalesOrderStatusChoices(UserVisitPK userVisitPK, GetSalesOrderStatusChoicesForm form) {
091        return CDI.current().select(GetSalesOrderStatusChoicesCommand.class).get().run(userVisitPK, form);
092    }
093    
094    @Override
095    public CommandResult setSalesOrderStatus(UserVisitPK userVisitPK, SetSalesOrderStatusForm form) {
096        return CDI.current().select(SetSalesOrderStatusCommand.class).get().run(userVisitPK, form);
097    }
098    
099    // -------------------------------------------------------------------------
100    //   Sales Order Payment Preferences
101    // -------------------------------------------------------------------------
102    
103    @Override
104    public CommandResult createSalesOrderPaymentPreference(UserVisitPK userVisitPK, CreateSalesOrderPaymentPreferenceForm form) {
105        return CDI.current().select(CreateSalesOrderPaymentPreferenceCommand.class).get().run(userVisitPK, form);
106    }
107    
108    // -------------------------------------------------------------------------
109    //   Sales Order Times
110    // -------------------------------------------------------------------------
111    
112    @Override
113    public CommandResult createSalesOrderTime(UserVisitPK userVisitPK, CreateSalesOrderTimeForm form) {
114        return CDI.current().select(CreateSalesOrderTimeCommand.class).get().run(userVisitPK, form);
115    }
116    
117    @Override
118    public CommandResult getSalesOrderTime(UserVisitPK userVisitPK, GetSalesOrderTimeForm form) {
119        return CDI.current().select(GetSalesOrderTimeCommand.class).get().run(userVisitPK, form);
120    }
121
122    @Override
123    public CommandResult getSalesOrderTimes(UserVisitPK userVisitPK, GetSalesOrderTimesForm form) {
124        return CDI.current().select(GetSalesOrderTimesCommand.class).get().run(userVisitPK, form);
125    }
126    
127    @Override
128    public CommandResult editSalesOrderTime(UserVisitPK userVisitPK, EditSalesOrderTimeForm form) {
129        return CDI.current().select(EditSalesOrderTimeCommand.class).get().run(userVisitPK, form);
130    }
131
132    @Override
133    public CommandResult deleteSalesOrderTime(UserVisitPK userVisitPK, DeleteSalesOrderTimeForm form) {
134        return CDI.current().select(DeleteSalesOrderTimeCommand.class).get().run(userVisitPK, form);
135    }
136
137    // -------------------------------------------------------------------------
138    //   Sales Order Lines
139    // -------------------------------------------------------------------------
140
141    @Override
142    public CommandResult createSalesOrderLine(UserVisitPK userVisitPK, CreateSalesOrderLineForm form) {
143        return CDI.current().select(CreateSalesOrderLineCommand.class).get().run(userVisitPK, form);
144    }
145
146    // -------------------------------------------------------------------------
147    //   Sales Order Shipment Groups
148    // -------------------------------------------------------------------------
149
150    @Override
151    public CommandResult editSalesOrderShipmentGroup(UserVisitPK userVisitPK, EditSalesOrderShipmentGroupForm form) {
152        return CDI.current().select(EditSalesOrderShipmentGroupCommand.class).get().run(userVisitPK, form);
153    }
154
155    // -------------------------------------------------------------------------
156    //   Sales Order Line Times
157    // -------------------------------------------------------------------------
158    
159    @Override
160    public CommandResult createSalesOrderLineTime(UserVisitPK userVisitPK, CreateSalesOrderLineTimeForm form) {
161        return CDI.current().select(CreateSalesOrderLineTimeCommand.class).get().run(userVisitPK, form);
162    }
163    
164    @Override
165    public CommandResult getSalesOrderLineTime(UserVisitPK userVisitPK, GetSalesOrderLineTimeForm form) {
166        return CDI.current().select(GetSalesOrderLineTimeCommand.class).get().run(userVisitPK, form);
167    }
168
169    @Override
170    public CommandResult getSalesOrderLineTimes(UserVisitPK userVisitPK, GetSalesOrderLineTimesForm form) {
171        return CDI.current().select(GetSalesOrderLineTimesCommand.class).get().run(userVisitPK, form);
172    }
173    
174    @Override
175    public CommandResult editSalesOrderLineTime(UserVisitPK userVisitPK, EditSalesOrderLineTimeForm form) {
176        return CDI.current().select(EditSalesOrderLineTimeCommand.class).get().run(userVisitPK, form);
177    }
178
179    @Override
180    public CommandResult deleteSalesOrderLineTime(UserVisitPK userVisitPK, DeleteSalesOrderLineTimeForm form) {
181        return CDI.current().select(DeleteSalesOrderLineTimeCommand.class).get().run(userVisitPK, form);
182    }
183
184}