feat: timeline event for mealplans (#2050)

* added related user to mealplans

* made timeline event message actually optional

* added task to create events for mealplan recipes

* replaced fk constraint ops with bulk ops

* fixed event creation and adjusted query range

* indentation is hard

* added missing recipe id query filter

* added tests
This commit is contained in:
Michael Genson
2023-02-11 13:08:53 -06:00
committed by GitHub
parent 9e77a9f367
commit 5f7ac92c96
11 changed files with 371 additions and 4 deletions

View File

@@ -83,7 +83,13 @@ class GroupMealplanController(BaseCrudController):
try:
recipe = random_recipes[0]
return self.mixins.create_one(
SavePlanEntry(date=data.date, entry_type=data.entry_type, recipe_id=recipe.id, group_id=self.group_id)
SavePlanEntry(
date=data.date,
entry_type=data.entry_type,
recipe_id=recipe.id,
group_id=self.group_id,
user_id=self.user.id,
)
)
except IndexError as e:
raise HTTPException(
@@ -118,7 +124,7 @@ class GroupMealplanController(BaseCrudController):
@router.post("", response_model=ReadPlanEntry, status_code=201)
def create_one(self, data: CreatePlanEntry):
data = mapper.cast(data, SavePlanEntry, group_id=self.group.id)
data = mapper.cast(data, SavePlanEntry, group_id=self.group.id, user_id=self.user.id)
result = self.mixins.create_one(data)
self.publish_event(