Neda/Back/domains/groups/service.py
2026-03-06 15:16:41 +03:30

44 lines
798 B
Python

from sqlalchemy.ext.asyncio import AsyncSession
from domains.groups.models import Group, GroupMember
from domains.groups.repo import (
create_group,
get_group_by_id,
add_group_member,
get_user_groups
)
async def create_new_group(
db: AsyncSession,
name: str,
description: str | None
):
group = Group(
name=name,
description=description
)
return await create_group(db, group)
async def add_member_to_group(
db: AsyncSession,
group_id,
user_id,
role
):
membership = GroupMember(
group_id=group_id,
user_id=user_id,
role=role
)
return await add_group_member(db, membership)
async def list_user_groups(
db: AsyncSession,
user_id
):
return await get_user_groups(db, user_id)