Implement Recipe, Planning, Shopping, Pantry, and Admin domains
Outside-in TDD for all 5 remaining domains (128 tests total): - Recipe: CRUD, ingredients autocomplete/patch, tags, categories (27 tests) - Planning: week plans, slots, confirm, suggestions, variety score, cooking logs (24 tests) - Shopping: generate from plan, publish, check/add/remove items (15 tests) - Pantry: CRUD with expiry sorting (11 tests) - Admin: user management, password reset, audit logging (13 tests) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
package com.recipeapp.recipe;
|
||||
|
||||
import com.recipeapp.recipe.dto.*;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
public interface RecipeService {
|
||||
|
||||
List<RecipeSummaryResponse> listRecipes(UUID householdId, String search, String effort,
|
||||
Boolean isChildFriendly, Integer cookTimeMaxMin,
|
||||
String sort, int limit, int offset);
|
||||
|
||||
long countRecipes(UUID householdId, String search, String effort,
|
||||
Boolean isChildFriendly, Integer cookTimeMaxMin);
|
||||
|
||||
RecipeDetailResponse getRecipe(UUID householdId, UUID recipeId);
|
||||
|
||||
RecipeDetailResponse createRecipe(UUID householdId, RecipeCreateRequest request);
|
||||
|
||||
RecipeDetailResponse updateRecipe(UUID householdId, UUID recipeId, RecipeCreateRequest request);
|
||||
|
||||
void deleteRecipe(UUID householdId, UUID recipeId);
|
||||
|
||||
List<IngredientResponse> searchIngredients(UUID householdId, String search, Boolean isStaple);
|
||||
|
||||
IngredientResponse patchIngredient(UUID householdId, UUID ingredientId, IngredientPatchRequest request);
|
||||
|
||||
List<TagResponse> listTags(UUID householdId);
|
||||
|
||||
TagResponse createTag(UUID householdId, TagCreateRequest request);
|
||||
|
||||
List<IngredientCategoryResponse> listCategories(UUID householdId);
|
||||
|
||||
IngredientCategoryResponse createCategory(UUID householdId, IngredientCategoryCreateRequest request);
|
||||
}
|
||||
Reference in New Issue
Block a user