lavkach3

Форк
0
20 строк · 903.0 Байт
1
import uuid
2
from typing import Optional
3

4
from sqlalchemy import ForeignKey, Uuid
5
from sqlalchemy.orm import Mapped, mapped_column
6

7
from app.inventory.location.enums import LocationClass
8

9

10
class LocationMixin:
11
    store_id: Mapped[uuid.UUID] = mapped_column(Uuid, index=True)
12
    location_class: Mapped[LocationClass] = mapped_column(index=True)
13
    lot_id: Mapped[Optional[uuid.UUID]] = mapped_column(ForeignKey("lot.id", ondelete="SET NULL"), index=True)
14
    partner_id: Mapped[Optional[uuid.UUID]] = mapped_column(Uuid, index=True, nullable=True)
15

16

17
class StockMixin(LocationMixin):
18
    product_id: Mapped[uuid.UUID] = mapped_column(Uuid, index=True)
19
    location_type_id: Mapped[Optional[uuid.UUID]] = mapped_column(ForeignKey("location_type.id", ondelete="SET NULL"), index=True)
20
    location_id: Mapped[Optional[uuid.UUID]] = mapped_column(ForeignKey("location.id", ondelete="SET NULL"), index=True)

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.