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.vendor.common; 018 019import com.echothree.control.user.vendor.common.form.*; 020import com.echothree.control.user.vendor.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 VendorService 026 extends VendorForms { 027 028 // ------------------------------------------------------------------------- 029 // Testing 030 // ------------------------------------------------------------------------- 031 032 String ping(); 033 034 // -------------------------------------------------------------------------------- 035 // Vendor Types 036 // -------------------------------------------------------------------------------- 037 038 CommandResult<CreateVendorTypeResult> createVendorType(UserVisitPK userVisitPK, CreateVendorTypeForm form); 039 040 CommandResult<GetVendorTypeChoicesResult> getVendorTypeChoices(UserVisitPK userVisitPK, GetVendorTypeChoicesForm form); 041 042 CommandResult<GetVendorTypeResult> getVendorType(UserVisitPK userVisitPK, GetVendorTypeForm form); 043 044 CommandResult<GetVendorTypesResult> getVendorTypes(UserVisitPK userVisitPK, GetVendorTypesForm form); 045 046 CommandResult<VoidResult> setDefaultVendorType(UserVisitPK userVisitPK, SetDefaultVendorTypeForm form); 047 048 CommandResult<EditVendorTypeResult> editVendorType(UserVisitPK userVisitPK, EditVendorTypeForm form); 049 050 CommandResult<VoidResult> deleteVendorType(UserVisitPK userVisitPK, DeleteVendorTypeForm form); 051 052 // -------------------------------------------------------------------------------- 053 // Vendor Type Descriptions 054 // -------------------------------------------------------------------------------- 055 056 CommandResult<VoidResult> createVendorTypeDescription(UserVisitPK userVisitPK, CreateVendorTypeDescriptionForm form); 057 058 CommandResult<GetVendorTypeDescriptionResult> getVendorTypeDescription(UserVisitPK userVisitPK, GetVendorTypeDescriptionForm form); 059 060 CommandResult<GetVendorTypeDescriptionsResult> getVendorTypeDescriptions(UserVisitPK userVisitPK, GetVendorTypeDescriptionsForm form); 061 062 CommandResult<EditVendorTypeDescriptionResult> editVendorTypeDescription(UserVisitPK userVisitPK, EditVendorTypeDescriptionForm form); 063 064 CommandResult<VoidResult> deleteVendorTypeDescription(UserVisitPK userVisitPK, DeleteVendorTypeDescriptionForm form); 065 066 // ------------------------------------------------------------------------- 067 // Vendors 068 // ------------------------------------------------------------------------- 069 070 CommandResult<GetVendorResult> getVendor(UserVisitPK userVisitPK, GetVendorForm form); 071 072 CommandResult<GetVendorsResult> getVendors(UserVisitPK userVisitPK, GetVendorsForm form); 073 074 CommandResult<EditVendorResult> editVendor(UserVisitPK userVisitPK, EditVendorForm form); 075 076 // ------------------------------------------------------------------------- 077 // Vendor Items 078 // ------------------------------------------------------------------------- 079 080 CommandResult<CreateVendorItemResult> createVendorItem(UserVisitPK userVisitPK, CreateVendorItemForm form); 081 082 CommandResult<GetVendorItemResult> getVendorItem(UserVisitPK userVisitPK, GetVendorItemForm form); 083 084 CommandResult<GetVendorItemsResult> getVendorItems(UserVisitPK userVisitPK, GetVendorItemsForm form); 085 086 CommandResult<GetVendorItemStatusChoicesResult> getVendorItemStatusChoices(UserVisitPK userVisitPK, GetVendorItemStatusChoicesForm form); 087 088 CommandResult<VoidResult> setVendorItemStatus(UserVisitPK userVisitPK, SetVendorItemStatusForm form); 089 090 CommandResult<EditVendorItemResult> editVendorItem(UserVisitPK userVisitPK, EditVendorItemForm form); 091 092 CommandResult<VoidResult> deleteVendorItem(UserVisitPK userVisitPK, DeleteVendorItemForm form); 093 094 // ------------------------------------------------------------------------- 095 // Vendor Item Costs 096 // ------------------------------------------------------------------------- 097 098 CommandResult<VoidResult> createVendorItemCost(UserVisitPK userVisitPK, CreateVendorItemCostForm form); 099 100 CommandResult<GetVendorItemCostResult> getVendorItemCost(UserVisitPK userVisitPK, GetVendorItemCostForm form); 101 102 CommandResult<GetVendorItemCostsResult> getVendorItemCosts(UserVisitPK userVisitPK, GetVendorItemCostsForm form); 103 104 CommandResult<EditVendorItemCostResult> editVendorItemCost(UserVisitPK userVisitPK, EditVendorItemCostForm form); 105 106 CommandResult<VoidResult> deleteVendorItemCost(UserVisitPK userVisitPK, DeleteVendorItemCostForm form); 107 108 // -------------------------------------------------------------------------------- 109 // Item Purchasing Categories 110 // -------------------------------------------------------------------------------- 111 112 CommandResult<CreateItemPurchasingCategoryResult> createItemPurchasingCategory(UserVisitPK userVisitPK, CreateItemPurchasingCategoryForm form); 113 114 CommandResult<GetItemPurchasingCategoryChoicesResult> getItemPurchasingCategoryChoices(UserVisitPK userVisitPK, GetItemPurchasingCategoryChoicesForm form); 115 116 CommandResult<GetItemPurchasingCategoryResult> getItemPurchasingCategory(UserVisitPK userVisitPK, GetItemPurchasingCategoryForm form); 117 118 CommandResult<GetItemPurchasingCategoriesResult> getItemPurchasingCategories(UserVisitPK userVisitPK, GetItemPurchasingCategoriesForm form); 119 120 CommandResult<VoidResult> setDefaultItemPurchasingCategory(UserVisitPK userVisitPK, SetDefaultItemPurchasingCategoryForm form); 121 122 CommandResult<EditItemPurchasingCategoryResult> editItemPurchasingCategory(UserVisitPK userVisitPK, EditItemPurchasingCategoryForm form); 123 124 CommandResult<VoidResult> deleteItemPurchasingCategory(UserVisitPK userVisitPK, DeleteItemPurchasingCategoryForm form); 125 126 // -------------------------------------------------------------------------------- 127 // Item Vendor Category Descriptions 128 // -------------------------------------------------------------------------------- 129 130 CommandResult<VoidResult> createItemPurchasingCategoryDescription(UserVisitPK userVisitPK, CreateItemPurchasingCategoryDescriptionForm form); 131 132 CommandResult<GetItemPurchasingCategoryDescriptionResult> getItemPurchasingCategoryDescription(UserVisitPK userVisitPK, GetItemPurchasingCategoryDescriptionForm form); 133 134 CommandResult<GetItemPurchasingCategoryDescriptionsResult> getItemPurchasingCategoryDescriptions(UserVisitPK userVisitPK, GetItemPurchasingCategoryDescriptionsForm form); 135 136 CommandResult<EditItemPurchasingCategoryDescriptionResult> editItemPurchasingCategoryDescription(UserVisitPK userVisitPK, EditItemPurchasingCategoryDescriptionForm form); 137 138 CommandResult<VoidResult> deleteItemPurchasingCategoryDescription(UserVisitPK userVisitPK, DeleteItemPurchasingCategoryDescriptionForm form); 139 140}