batch import csv
This commit is contained in:
parent
a679775f57
commit
dd0ceef665
20 changed files with 1614 additions and 190 deletions
|
|
@ -5,8 +5,12 @@ from sqlalchemy.ext.asyncio import AsyncSession
|
|||
from app.database import get_postgres_session
|
||||
from app.deps.org_manager import require_org_manager
|
||||
from app.models import Account
|
||||
from app.schemas import MailGroupCreate, MailGroupListResponse, MailGroupRead
|
||||
from app.services.mail_groups import create_mail_group, list_mail_groups
|
||||
from app.schemas import MailGroupCreate, MailGroupEmailCheck, MailGroupListResponse, MailGroupRead
|
||||
from app.services.mail_groups import (
|
||||
check_group_email_available,
|
||||
create_mail_group,
|
||||
list_mail_groups,
|
||||
)
|
||||
|
||||
router = APIRouter(prefix="/groups", tags=["groups"])
|
||||
|
||||
|
|
@ -20,6 +24,25 @@ async def get_groups(
|
|||
return MailGroupListResponse(items=items, counts=counts)
|
||||
|
||||
|
||||
@router.get("/check-email", response_model=MailGroupEmailCheck)
|
||||
async def check_email(
|
||||
email: str,
|
||||
manager: Account = Depends(require_org_manager),
|
||||
session: AsyncSession = Depends(get_postgres_session),
|
||||
) -> MailGroupEmailCheck:
|
||||
if manager.company_domain is None:
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_422_UNPROCESSABLE_ENTITY,
|
||||
detail="Company domain is required.",
|
||||
)
|
||||
result = await check_group_email_available(
|
||||
session,
|
||||
manager.company_domain,
|
||||
email,
|
||||
)
|
||||
return result
|
||||
|
||||
|
||||
@router.post("", response_model=MailGroupRead, status_code=status.HTTP_201_CREATED)
|
||||
async def add_group(
|
||||
payload: MailGroupCreate,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue