Automated Action c8aed27755 Create SaaS invoicing application with FastAPI and SQLite
- Set up project structure with modular organization
- Implement database models for users, organizations, clients, invoices
- Create Alembic migration scripts for database setup
- Implement JWT-based authentication and authorization
- Create API endpoints for users, organizations, clients, invoices
- Add PDF generation for invoices using ReportLab
- Add comprehensive documentation in README
2025-06-06 11:21:11 +00:00

44 lines
1006 B
Python

from typing import Optional
from pydantic import BaseModel, EmailStr
# Shared properties
class OrganizationBase(BaseModel):
name: Optional[str] = None
address: Optional[str] = None
city: Optional[str] = None
state: Optional[str] = None
postal_code: Optional[str] = None
country: Optional[str] = None
phone: Optional[str] = None
email: Optional[EmailStr] = None
website: Optional[str] = None
tax_id: Optional[str] = None
logo_url: Optional[str] = None
# Properties to receive via API on creation
class OrganizationCreate(OrganizationBase):
name: str
# Properties to receive via API on update
class OrganizationUpdate(OrganizationBase):
pass
class OrganizationInDBBase(OrganizationBase):
id: Optional[int] = None
class Config:
orm_mode = True
# Additional properties to return via API
class Organization(OrganizationInDBBase):
pass
# Additional properties stored in DB
class OrganizationInDB(OrganizationInDBBase):
pass