Merge remote-tracking branch 'origin/statistics'

# Conflicts:
#	main.py
#	routers/__init__.py
#	schemas/deal.py
This commit is contained in:
2024-11-21 01:36:26 +03:00
14 changed files with 567 additions and 10 deletions

View File

@@ -9,6 +9,7 @@ from models.work_shifts import WorkShift
if TYPE_CHECKING:
from models.payroll import PayRate, PaymentRecord
from models import Deal
role_permissions = Table(
'role_permissions',
@@ -99,6 +100,11 @@ class User(BaseModel):
foreign_keys="WorkShift.user_id"
)
managed_deals: Mapped[list["Deal"]] = relationship(
back_populates="manager",
uselist=True,
)
class Position(BaseModel):
__tablename__ = 'positions'

View File

@@ -10,9 +10,12 @@ from .marketplace import BaseMarketplace
from .shipping_warehouse import ShippingWarehouse
if TYPE_CHECKING:
from . import (DealBillRequest, ServicePriceCategory,
DealGroup
)
from . import (
DealBillRequest,
ServicePriceCategory,
DealGroup,
User,
)
# @unique
@@ -98,6 +101,9 @@ class Deal(BaseModel):
back_populates='deals'
)
manager_id: Mapped[int] = mapped_column(ForeignKey('users.id'), nullable=True)
manager: Mapped[Optional["User"]] = relationship(back_populates='managed_deals', lazy='joined')
class DealStatusHistory(BaseModel):
__tablename__ = 'deals_status_history'