feat: deleting groups of deals
This commit is contained in:
@@ -90,7 +90,10 @@ class DealService(BaseService):
|
||||
deal = await self._get_deal_by_id(request.deal_id)
|
||||
if not deal:
|
||||
return DealDeleteResponse(ok=False, message="Сделка не найдена")
|
||||
deal.is_deleted = True
|
||||
if deal.group:
|
||||
await DealGroupService(self.session).delete_group(deal.group.id)
|
||||
else:
|
||||
deal.is_deleted = True
|
||||
await self.session.commit()
|
||||
return DealDeleteResponse(ok=True, message="Сделка успешно удалена")
|
||||
|
||||
|
||||
@@ -30,3 +30,9 @@ class DealGroupService(BaseService):
|
||||
for deal in deals:
|
||||
deal.is_completed = True
|
||||
await self.session.commit()
|
||||
|
||||
async def delete_group(self, group_id: int) -> None:
|
||||
deals = await self.get_deals_by_group_id(group_id)
|
||||
for deal in deals:
|
||||
deal.is_deleted = True
|
||||
await self.session.commit()
|
||||
|
||||
Reference in New Issue
Block a user