Skip to content

Commit d66f103

Browse files
Dm rental (#157)
## Изменения <!-- Опишите здесь на языке, понятном каждому, изменения, сделанные в исходном коде по пунктам. --> Исправлена табличка в dm уровень rental ## Детали реализации <!-- Здесь можно описать технические детали по пунктам. --> ## Check-List <!-- После сохранения у следующих полей появятся галочки, которые нужно проставить мышкой --> - [ ] Вы проверили свой код перед отправкой запроса? - [ ] Вы написали тесты к реализованным функциям? - [ ] Вы не забыли применить форматирование `black` и `isort` для _Back-End_ или `Prettier` для _Front-End_?
1 parent 61944f6 commit d66f103

File tree

2 files changed

+51
-13
lines changed

2 files changed

+51
-13
lines changed
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
"""dm_rental_fix_table
2+
3+
Revision ID: d1a22199f353
4+
Revises: b259a3b8c31d
5+
Create Date: 2025-05-28 18:02:42.798163
6+
7+
"""
8+
9+
import os
10+
11+
import sqlalchemy as sa
12+
from alembic import op
13+
14+
15+
# revision identifiers, used by Alembic.
16+
revision = 'd1a22199f353'
17+
down_revision = 'b259a3b8c31d'
18+
branch_labels = None
19+
depends_on = None
20+
21+
22+
def upgrade():
23+
op.drop_column("dm_rentals_events", "duration", schema="DM_RENTAL")
24+
op.drop_column("dm_rentals_events", "delay", schema="DM_RENTAL")
25+
op.drop_column("dm_rentals_events", "overdue_flag", schema="DM_RENTAL")
26+
op.drop_column("dm_rentals_events", "conversion_flag", schema="DM_RENTAL")
27+
op.drop_column("dm_rentals_events", "available_items", schema="DM_RENTAL")
28+
op.drop_column("dm_rentals_events", "total_items", schema="DM_RENTAL")
29+
op.drop_column("dm_rentals_events", "rental_count", schema="DM_RENTAL")
30+
op.drop_column("dm_rentals_events", "avg_downtime_hours", schema="DM_RENTAL")
31+
op.drop_column("dm_rentals_events", "avg_rent_hours", schema="DM_RENTAL")
32+
op.drop_column("dm_rentals_events", "strike_count", schema="DM_RENTAL")
33+
op.drop_column("dm_rentals_events", "activity_max_time", schema="DM_RENTAL")
34+
op.drop_column("dm_rentals_events", "activity_max", schema="DM_RENTAL")
35+
op.drop_column("dm_rentals_events", "type", schema="DM_RENTAL")
36+
37+
38+
def downgrade():
39+
op.add_column("dm_rentals_events", sa.Column("duration", sa.Interval()), schema="DM_RENTAL")
40+
op.add_column("dm_rentals_events", sa.Column("delay", sa.Interval()), schema="DM_RENTAL")
41+
op.add_column("dm_rentals_events", sa.Column("overdue_flag", sa.Boolean()), schema="DM_RENTAL")
42+
op.add_column("dm_rentals_events", sa.Column("conversion_flag", sa.Boolean()), schema="DM_RENTAL")
43+
op.add_column("dm_rentals_events", sa.Column("available_items", sa.Integer()), schema="DM_RENTAL")
44+
op.add_column("dm_rentals_events", sa.Column("total_items", sa.Integer()), schema="DM_RENTAL")
45+
op.add_column("dm_rentals_events", sa.Column("rental_count", sa.Integer()), schema="DM_RENTAL")
46+
op.add_column("dm_rentals_events", sa.Column("avg_downtime_hours", sa.Interval()), schema="DM_RENTAL")
47+
op.add_column("dm_rentals_events", sa.Column("avg_rent_hours", sa.Interval()), schema="DM_RENTAL")
48+
op.add_column("dm_rentals_events", sa.Column("strike_count", sa.Integer()), schema="DM_RENTAL")
49+
op.add_column("dm_rentals_events", sa.Column("activity_max_time", sa.Integer()), schema="DM_RENTAL")
50+
op.add_column("dm_rentals_events", sa.Column("activity_max", sa.Integer()), schema="DM_RENTAL")
51+
op.add_column("dm_rentals_events", sa.Column("type", sa.String()), schema="DM_RENTAL")

profcomff_definitions/DM/rental.py

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -21,24 +21,11 @@ class DmRentalsEvents(Base):
2121
end_ts: Mapped[datetime] = mapped_column(comment="Timestamp рассчетное время возврата предмета, мск")
2222
actual_return_ts: Mapped[datetime] = mapped_column(comment="Timestamp реальное время возврата предмета, мск")
2323
status: Mapped[str] = mapped_column(comment="Статус текущей сессии")
24-
duration: Mapped[timedelta] = mapped_column(comment="Продолжительность аренды, в часах")
25-
delay: Mapped[timedelta] = mapped_column(comment="Время задержки возврата")
26-
overdue_flag: Mapped[bool] = mapped_column(comment="Флаг просрочки")
27-
conversion_flag: Mapped[bool] = mapped_column(comment="Флаг конверсии из брони в аренду")
2824
type_id: Mapped[int] = mapped_column(comment="Идентификатор типа вещи")
29-
type: Mapped[str] = mapped_column(comment="Тип вещи")
3025
name: Mapped[str] = mapped_column(comment="Название вещи")
3126
image_url: Mapped[str | None] = mapped_column(comment="Ссылка на фото вещи")
3227
description: Mapped[str | None] = mapped_column(comment="Описание вещи")
33-
available_items: Mapped[int] = mapped_column(comment="Количество доступных вещей")
34-
total_items: Mapped[int] = mapped_column(comment="Количество вещей данного типа")
35-
rental_count: Mapped[int] = mapped_column(comment="Общее количество аренд данного типа")
36-
avg_downtime_hours: Mapped[timedelta] = mapped_column(comment="Среднее время простоя")
37-
avg_rent_hours: Mapped[timedelta] = mapped_column(comment="Среднее время аренды")
3828
session_id: Mapped[int] = mapped_column(comment="Идентификатор сессии")
3929
admin_strike_id: Mapped[int | None] = mapped_column(comment="Идентификаор админа")
4030
strike_reason: Mapped[str | None] = mapped_column(comment="Причина страйка")
4131
strike_date: Mapped[datetime | None] = mapped_column(comment="Timestamp начисления страйка, мск")
42-
strike_count: Mapped[int | None] = mapped_column(comment="Количество страйков у пользователя")
43-
activity_max_time: Mapped[int] = mapped_column(comment="Час пиковой активности")
44-
activity_max: Mapped[int] = mapped_column(comment="Количество активности в час пиковой нагрузки")

0 commit comments

Comments
 (0)