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.offer.common; 018 019import com.echothree.control.user.offer.common.form.*; 020import com.echothree.model.data.user.common.pk.UserVisitPK; 021import com.echothree.util.common.command.CommandResult; 022 023public interface OfferService 024 extends OfferForms { 025 026 // ------------------------------------------------------------------------- 027 // Testing 028 // ------------------------------------------------------------------------- 029 030 String ping(); 031 032 // ------------------------------------------------------------------------- 033 // Offers 034 // ------------------------------------------------------------------------- 035 036 CommandResult createOffer(UserVisitPK userVisitPK, CreateOfferForm form); 037 038 CommandResult getOffers(UserVisitPK userVisitPK, GetOffersForm form); 039 040 CommandResult getOffer(UserVisitPK userVisitPK, GetOfferForm form); 041 042 CommandResult getOfferChoices(UserVisitPK userVisitPK, GetOfferChoicesForm form); 043 044 CommandResult setDefaultOffer(UserVisitPK userVisitPK, SetDefaultOfferForm form); 045 046 CommandResult editOffer(UserVisitPK userVisitPK, EditOfferForm form); 047 048 CommandResult deleteOffer(UserVisitPK userVisitPK, DeleteOfferForm form); 049 050 // ------------------------------------------------------------------------- 051 // Offer Descriptions 052 // ------------------------------------------------------------------------- 053 054 CommandResult createOfferDescription(UserVisitPK userVisitPK, CreateOfferDescriptionForm form); 055 056 CommandResult getOfferDescriptions(UserVisitPK userVisitPK, GetOfferDescriptionsForm form); 057 058 CommandResult editOfferDescription(UserVisitPK userVisitPK, EditOfferDescriptionForm form); 059 060 CommandResult deleteOfferDescription(UserVisitPK userVisitPK, DeleteOfferDescriptionForm form); 061 062 // ------------------------------------------------------------------------- 063 // Offer Customer Types 064 // ------------------------------------------------------------------------- 065 066 CommandResult createOfferCustomerType(UserVisitPK userVisitPK, CreateOfferCustomerTypeForm form); 067 068 CommandResult getOfferCustomerType(UserVisitPK userVisitPK, GetOfferCustomerTypeForm form); 069 070 CommandResult getOfferCustomerTypes(UserVisitPK userVisitPK, GetOfferCustomerTypesForm form); 071 072 CommandResult setDefaultOfferCustomerType(UserVisitPK userVisitPK, SetDefaultOfferCustomerTypeForm form); 073 074 CommandResult editOfferCustomerType(UserVisitPK userVisitPK, EditOfferCustomerTypeForm form); 075 076 CommandResult deleteOfferCustomerType(UserVisitPK userVisitPK, DeleteOfferCustomerTypeForm form); 077 078 // ------------------------------------------------------------------------- 079 // Offer Chain Types 080 // ------------------------------------------------------------------------- 081 082 CommandResult createOfferChainType(UserVisitPK userVisitPK, CreateOfferChainTypeForm form); 083 084 CommandResult getOfferChainTypes(UserVisitPK userVisitPK, GetOfferChainTypesForm form); 085 086 CommandResult getOfferChainType(UserVisitPK userVisitPK, GetOfferChainTypeForm form); 087 088 CommandResult editOfferChainType(UserVisitPK userVisitPK, EditOfferChainTypeForm form); 089 090 CommandResult deleteOfferChainType(UserVisitPK userVisitPK, DeleteOfferChainTypeForm form); 091 092 // ------------------------------------------------------------------------- 093 // Offer Uses 094 // ------------------------------------------------------------------------- 095 096 CommandResult createOfferUse(UserVisitPK userVisitPK, CreateOfferUseForm form); 097 098 CommandResult getOfferUses(UserVisitPK userVisitPK, GetOfferUsesForm form); 099 100 CommandResult getOfferUse(UserVisitPK userVisitPK, GetOfferUseForm form); 101 102 CommandResult editOfferUse(UserVisitPK userVisitPK, EditOfferUseForm form); 103 104 CommandResult deleteOfferUse(UserVisitPK userVisitPK, DeleteOfferUseForm form); 105 106 // ------------------------------------------------------------------------- 107 // Sources 108 // ------------------------------------------------------------------------- 109 110 CommandResult createSource(UserVisitPK userVisitPK, CreateSourceForm form); 111 112 CommandResult getSourceChoices(UserVisitPK userVisitPK, GetSourceChoicesForm form); 113 114 CommandResult getSources(UserVisitPK userVisitPK, GetSourcesForm form); 115 116 CommandResult getSource(UserVisitPK userVisitPK, GetSourceForm form); 117 118 CommandResult setDefaultSource(UserVisitPK userVisitPK, SetDefaultSourceForm form); 119 120 CommandResult editSource(UserVisitPK userVisitPK, EditSourceForm form); 121 122 CommandResult deleteSource(UserVisitPK userVisitPK, DeleteSourceForm form); 123 124 // ------------------------------------------------------------------------- 125 // Offer Items 126 // ------------------------------------------------------------------------- 127 128 CommandResult createOfferItem(UserVisitPK userVisitPK, CreateOfferItemForm form); 129 130 CommandResult getOfferItems(UserVisitPK userVisitPK, GetOfferItemsForm form); 131 132 CommandResult getOfferItem(UserVisitPK userVisitPK, GetOfferItemForm form); 133 134 CommandResult deleteOfferItem(UserVisitPK userVisitPK, DeleteOfferItemForm form); 135 136 // ------------------------------------------------------------------------- 137 // Offer Item Prices 138 // ------------------------------------------------------------------------- 139 140 CommandResult createOfferItemPrice(UserVisitPK userVisitPK, CreateOfferItemPriceForm form); 141 142 CommandResult getOfferItemPrice(UserVisitPK userVisitPK, GetOfferItemPriceForm form); 143 144 CommandResult getOfferItemPrices(UserVisitPK userVisitPK, GetOfferItemPricesForm form); 145 146 CommandResult editOfferItemPrice(UserVisitPK userVisitPK, EditOfferItemPriceForm form); 147 148 CommandResult deleteOfferItemPrice(UserVisitPK userVisitPK, DeleteOfferItemPriceForm form); 149 150 // ------------------------------------------------------------------------- 151 // Use Types 152 // ------------------------------------------------------------------------- 153 154 CommandResult createUseType(UserVisitPK userVisitPK, CreateUseTypeForm form); 155 156 CommandResult getUseTypes(UserVisitPK userVisitPK, GetUseTypesForm form); 157 158 CommandResult getUseType(UserVisitPK userVisitPK, GetUseTypeForm form); 159 160 CommandResult getUseTypeChoices(UserVisitPK userVisitPK, GetUseTypeChoicesForm form); 161 162 CommandResult setDefaultUseType(UserVisitPK userVisitPK, SetDefaultUseTypeForm form); 163 164 CommandResult editUseType(UserVisitPK userVisitPK, EditUseTypeForm form); 165 166 CommandResult deleteUseType(UserVisitPK userVisitPK, DeleteUseTypeForm form); 167 168 // ------------------------------------------------------------------------- 169 // Use Type Descriptions 170 // ------------------------------------------------------------------------- 171 172 CommandResult createUseTypeDescription(UserVisitPK userVisitPK, CreateUseTypeDescriptionForm form); 173 174 CommandResult getUseTypeDescriptions(UserVisitPK userVisitPK, GetUseTypeDescriptionsForm form); 175 176 CommandResult getUseTypeDescription(UserVisitPK userVisitPK, GetUseTypeDescriptionForm form); 177 178 CommandResult editUseTypeDescription(UserVisitPK userVisitPK, EditUseTypeDescriptionForm form); 179 180 CommandResult deleteUseTypeDescription(UserVisitPK userVisitPK, DeleteUseTypeDescriptionForm form); 181 182 // ------------------------------------------------------------------------- 183 // Use Name Elements 184 // ------------------------------------------------------------------------- 185 186 CommandResult createUseNameElement(UserVisitPK userVisitPK, CreateUseNameElementForm form); 187 188 CommandResult getUseNameElements(UserVisitPK userVisitPK, GetUseNameElementsForm form); 189 190 CommandResult getUseNameElement(UserVisitPK userVisitPK, GetUseNameElementForm form); 191 192 CommandResult editUseNameElement(UserVisitPK userVisitPK, EditUseNameElementForm form); 193 194 CommandResult deleteUseNameElement(UserVisitPK userVisitPK, DeleteUseNameElementForm form); 195 196 // ------------------------------------------------------------------------- 197 // Use Name Element Descriptions 198 // ------------------------------------------------------------------------- 199 200 CommandResult createUseNameElementDescription(UserVisitPK userVisitPK, CreateUseNameElementDescriptionForm form); 201 202 CommandResult getUseNameElementDescriptions(UserVisitPK userVisitPK, GetUseNameElementDescriptionsForm form); 203 204 CommandResult getUseNameElementDescription(UserVisitPK userVisitPK, GetUseNameElementDescriptionForm form); 205 206 CommandResult editUseNameElementDescription(UserVisitPK userVisitPK, EditUseNameElementDescriptionForm form); 207 208 CommandResult deleteUseNameElementDescription(UserVisitPK userVisitPK, DeleteUseNameElementDescriptionForm form); 209 210 // ------------------------------------------------------------------------- 211 // Uses 212 // ------------------------------------------------------------------------- 213 214 CommandResult createUse(UserVisitPK userVisitPK, CreateUseForm form); 215 216 CommandResult getUseChoices(UserVisitPK userVisitPK, GetUseChoicesForm form); 217 218 CommandResult getUses(UserVisitPK userVisitPK, GetUsesForm form); 219 220 CommandResult getUse(UserVisitPK userVisitPK, GetUseForm form); 221 222 CommandResult setDefaultUse(UserVisitPK userVisitPK, SetDefaultUseForm form); 223 224 CommandResult editUse(UserVisitPK userVisitPK, EditUseForm form); 225 226 CommandResult deleteUse(UserVisitPK userVisitPK, DeleteUseForm form); 227 228 // ------------------------------------------------------------------------- 229 // Use Descriptions 230 // ------------------------------------------------------------------------- 231 232 CommandResult createUseDescription(UserVisitPK userVisitPK, CreateUseDescriptionForm form); 233 234 CommandResult getUseDescriptions(UserVisitPK userVisitPK, GetUseDescriptionsForm form); 235 236 CommandResult editUseDescription(UserVisitPK userVisitPK, EditUseDescriptionForm form); 237 238 CommandResult deleteUseDescription(UserVisitPK userVisitPK, DeleteUseDescriptionForm form); 239 240 // ------------------------------------------------------------------------- 241 // Offer Name Elements 242 // ------------------------------------------------------------------------- 243 244 CommandResult createOfferNameElement(UserVisitPK userVisitPK, CreateOfferNameElementForm form); 245 246 CommandResult getOfferNameElements(UserVisitPK userVisitPK, GetOfferNameElementsForm form); 247 248 CommandResult getOfferNameElement(UserVisitPK userVisitPK, GetOfferNameElementForm form); 249 250 CommandResult editOfferNameElement(UserVisitPK userVisitPK, EditOfferNameElementForm form); 251 252 CommandResult deleteOfferNameElement(UserVisitPK userVisitPK, DeleteOfferNameElementForm form); 253 254 // ------------------------------------------------------------------------- 255 // Offer Name Element Descriptions 256 // ------------------------------------------------------------------------- 257 258 CommandResult createOfferNameElementDescription(UserVisitPK userVisitPK, CreateOfferNameElementDescriptionForm form); 259 260 CommandResult getOfferNameElementDescriptions(UserVisitPK userVisitPK, GetOfferNameElementDescriptionsForm form); 261 262 CommandResult getOfferNameElementDescription(UserVisitPK userVisitPK, GetOfferNameElementDescriptionForm form); 263 264 CommandResult editOfferNameElementDescription(UserVisitPK userVisitPK, EditOfferNameElementDescriptionForm form); 265 266 CommandResult deleteOfferNameElementDescription(UserVisitPK userVisitPK, DeleteOfferNameElementDescriptionForm form); 267 268}