From 5380b7d697b084185d098504659d9882681666a1 Mon Sep 17 00:00:00 2001 From: vabene1111 Date: Wed, 3 Dec 2025 21:22:49 +0100 Subject: [PATCH] fixesa --- cookbook/serializer.py | 13 ++- .../components/display/ShoppingListView.vue | 41 ++++--- vue3/src/locales/de.json | 1 + vue3/src/locales/en.json | 1 + vue3/src/openapi/.openapi-generator/FILES | 1 + vue3/src/openapi/models/FoodShopping.ts | 106 ++++++++++++++++++ .../models/PatchedShoppingListEntry.ts | 20 ++-- vue3/src/openapi/models/ShoppingListEntry.ts | 20 ++-- vue3/src/openapi/models/index.ts | 1 + vue3/src/stores/ShoppingStore.ts | 3 +- vue3/src/utils/logic_utils.ts | 5 +- 11 files changed, 174 insertions(+), 38 deletions(-) create mode 100644 vue3/src/openapi/models/FoodShopping.ts diff --git a/cookbook/serializer.py b/cookbook/serializer.py index 55788c24c..9b69b92bd 100644 --- a/cookbook/serializer.py +++ b/cookbook/serializer.py @@ -775,7 +775,7 @@ class SupermarketCategoryRelationSerializer(WritableNestedModelSerializer): fields = ('id', 'category', 'supermarket', 'order') -class SupermarketSerializer(UniqueFieldsMixin, SpacedModelSerializer, OpenDataModelMixin): +class SupermarketSerializer(UniqueFieldsMixin, SpacedModelSerializer, WritableNestedModelSerializer, OpenDataModelMixin): category_to_supermarket = SupermarketCategoryRelationSerializer(many=True, read_only=True) shopping_lists = ShoppingListSerializer(many=True, required=False) @@ -1433,8 +1433,17 @@ class ShoppingListRecipeSerializer(serializers.ModelSerializer): read_only_fields = ('id', 'created_by',) +class FoodShoppingSerializer(serializers.ModelSerializer): + supermarket_category = SupermarketCategorySerializer(read_only=True) + shopping_lists = ShoppingListSerializer(read_only=True) + + class Meta: + model = Food + fields = ('id', 'name', 'plural_name', 'supermarket_category', 'shopping_lists') + + class ShoppingListEntrySerializer(WritableNestedModelSerializer): - food = FoodSimpleSerializer(allow_null=True) + food = FoodShoppingSerializer(allow_null=True) unit = UnitSerializer(allow_null=True, required=False) shopping_lists = ShoppingListSerializer(many=True, required=False) list_recipe_data = ShoppingListRecipeSerializer(source='list_recipe', read_only=True) diff --git a/vue3/src/components/display/ShoppingListView.vue b/vue3/src/components/display/ShoppingListView.vue index 3900eee04..6cc0734c4 100644 --- a/vue3/src/components/display/ShoppingListView.vue +++ b/vue3/src/components/display/ShoppingListView.vue @@ -31,7 +31,7 @@ + :label="$t('GroupBy')"> @@ -69,14 +69,14 @@ - - - - + + + + - - - + + + @@ -117,17 +117,26 @@ -