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.tax.common; 018 019import com.echothree.control.user.tax.common.form.*; 020import com.echothree.model.data.user.common.pk.UserVisitPK; 021import com.echothree.util.common.command.CommandResult; 022 023public interface TaxService 024 extends TaxForms { 025 026 // ------------------------------------------------------------------------- 027 // Testing 028 // ------------------------------------------------------------------------- 029 030 String ping(); 031 032 // ------------------------------------------------------------------------- 033 // Tax Classifications 034 // ------------------------------------------------------------------------- 035 036 CommandResult createTaxClassification(UserVisitPK userVisitPK, CreateTaxClassificationForm form); 037 038 CommandResult getTaxClassifications(UserVisitPK userVisitPK, GetTaxClassificationsForm form); 039 040 CommandResult getTaxClassification(UserVisitPK userVisitPK, GetTaxClassificationForm form); 041 042 CommandResult getTaxClassificationChoices(UserVisitPK userVisitPK, GetTaxClassificationChoicesForm form); 043 044 CommandResult setDefaultTaxClassification(UserVisitPK userVisitPK, SetDefaultTaxClassificationForm form); 045 046 CommandResult editTaxClassification(UserVisitPK userVisitPK, EditTaxClassificationForm form); 047 048 CommandResult deleteTaxClassification(UserVisitPK userVisitPK, DeleteTaxClassificationForm form); 049 050 // ------------------------------------------------------------------------- 051 // Tax Classification Translations 052 // ------------------------------------------------------------------------- 053 054 CommandResult createTaxClassificationTranslation(UserVisitPK userVisitPK, CreateTaxClassificationTranslationForm form); 055 056 CommandResult getTaxClassificationTranslations(UserVisitPK userVisitPK, GetTaxClassificationTranslationsForm form); 057 058 CommandResult getTaxClassificationTranslation(UserVisitPK userVisitPK, GetTaxClassificationTranslationForm form); 059 060 CommandResult editTaxClassificationTranslation(UserVisitPK userVisitPK, EditTaxClassificationTranslationForm form); 061 062 CommandResult deleteTaxClassificationTranslation(UserVisitPK userVisitPK, DeleteTaxClassificationTranslationForm form); 063 064 // ------------------------------------------------------------------------- 065 // Item Tax Classifications 066 // ------------------------------------------------------------------------- 067 068 CommandResult createItemTaxClassification(UserVisitPK userVisitPK, CreateItemTaxClassificationForm form); 069 070 CommandResult getItemTaxClassifications(UserVisitPK userVisitPK, GetItemTaxClassificationsForm form); 071 072 CommandResult getItemTaxClassification(UserVisitPK userVisitPK, GetItemTaxClassificationForm form); 073 074 CommandResult editItemTaxClassification(UserVisitPK userVisitPK, EditItemTaxClassificationForm form); 075 076 CommandResult deleteItemTaxClassification(UserVisitPK userVisitPK, DeleteItemTaxClassificationForm form); 077 078 // ------------------------------------------------------------------------- 079 // Taxes 080 // ------------------------------------------------------------------------- 081 082 CommandResult createTax(UserVisitPK userVisitPK, CreateTaxForm form); 083 084 CommandResult getTaxes(UserVisitPK userVisitPK, GetTaxesForm form); 085 086 CommandResult getTax(UserVisitPK userVisitPK, GetTaxForm form); 087 088 CommandResult setDefaultTax(UserVisitPK userVisitPK, SetDefaultTaxForm form); 089 090 CommandResult editTax(UserVisitPK userVisitPK, EditTaxForm form); 091 092 CommandResult deleteTax(UserVisitPK userVisitPK, DeleteTaxForm form); 093 094 // -------------------------------------------------------------------------------- 095 // Tax Descriptions 096 // -------------------------------------------------------------------------------- 097 098 CommandResult createTaxDescription(UserVisitPK userVisitPK, CreateTaxDescriptionForm form); 099 100 CommandResult getTaxDescriptions(UserVisitPK userVisitPK, GetTaxDescriptionsForm form); 101 102 CommandResult editTaxDescription(UserVisitPK userVisitPK, EditTaxDescriptionForm form); 103 104 CommandResult deleteTaxDescription(UserVisitPK userVisitPK, DeleteTaxDescriptionForm form); 105 106 // ------------------------------------------------------------------------- 107 // Geo Code Taxes 108 // ------------------------------------------------------------------------- 109 110 CommandResult createGeoCodeTax(UserVisitPK userVisitPK, CreateGeoCodeTaxForm form); 111 112 CommandResult getGeoCodeTaxes(UserVisitPK userVisitPK, GetGeoCodeTaxesForm form); 113 114 CommandResult deleteGeoCodeTax(UserVisitPK userVisitPK, DeleteGeoCodeTaxForm form); 115 116}