gitscope
https://dev.kronoz.win/r/marzneshin.git
app/models/notification.py · v0.7.0
Source
1 8440155 mahdim10 1y ago from datetime import datetime as dt
2 8440155 mahdim10 1y ago from enum import Enum
3 8440155 mahdim10 1y ago from typing import Optional
4 8440155 mahdim10 1y ago
5 8440155 mahdim10 1y ago from pydantic import BaseModel
6 8440155 mahdim10 1y ago
7 8440155 mahdim10 1y ago from app.models.admin import Admin
8 8440155 mahdim10 1y ago from app.models.user import UserResponse
9 8440155 mahdim10 1y ago
10 8440155 mahdim10 1y ago
11 8440155 mahdim10 1y ago class Notification(BaseModel):
12 8440155 mahdim10 1y ago created_at: float = dt.utcnow().timestamp()
13 8440155 mahdim10 1y ago
14 8440155 mahdim10 1y ago
15 8440155 mahdim10 1y ago class AdminNotif(Notification):
16 8440155 mahdim10 1y ago pass
17 8440155 mahdim10 1y ago
18 8440155 mahdim10 1y ago
19 8440155 mahdim10 1y ago class UserNotification(Notification):
20 8440155 mahdim10 1y ago user: UserResponse
21 8440155 mahdim10 1y ago
22 8440155 mahdim10 1y ago class Action(str, Enum):
23 8440155 mahdim10 1y ago user_created = "user_created"
24 8440155 mahdim10 1y ago user_updated = "user_updated"
25 8440155 mahdim10 1y ago user_activated = "user_activated"
26 8440155 mahdim10 1y ago user_deactivated = "user_deactivated"
27 8440155 mahdim10 1y ago user_deleted = "user_deleted"
28 8440155 mahdim10 1y ago user_enabled = "user_enabled"
29 8440155 mahdim10 1y ago user_disabled = "user_disabled"
30 8440155 mahdim10 1y ago data_usage_reset = "data_usage_reset"
31 8440155 mahdim10 1y ago subscription_revoked = "subscription_revoked"
32 8440155 mahdim10 1y ago reached_usage_percent = "reached_usage_percent"
33 8440155 mahdim10 1y ago reached_days_left = "reached_days_left"
34 8440155 mahdim10 1y ago
35 8440155 mahdim10 1y ago
36 8440155 mahdim10 1y ago class UserCreated(UserNotification):
37 8440155 mahdim10 1y ago action: UserNotification.Action = UserNotification.Action.user_created
38 8440155 mahdim10 1y ago by: Admin
39 8440155 mahdim10 1y ago
40 8440155 mahdim10 1y ago
41 8440155 mahdim10 1y ago class UserUpdated(UserNotification):
42 8440155 mahdim10 1y ago action: UserNotification.Action = UserNotification.Action.user_updated
43 8440155 mahdim10 1y ago by: Admin
44 8440155 mahdim10 1y ago
45 8440155 mahdim10 1y ago
46 8440155 mahdim10 1y ago class UserActivated(UserNotification):
47 8440155 mahdim10 1y ago action: UserNotification.Action = UserNotification.Action.user_activated
48 8440155 mahdim10 1y ago by: Optional[Admin] = None
49 8440155 mahdim10 1y ago
50 8440155 mahdim10 1y ago
51 8440155 mahdim10 1y ago class UserDeactivated(UserNotification):
52 8440155 mahdim10 1y ago action: UserNotification.Action = UserNotification.Action.user_deactivated
53 8440155 mahdim10 1y ago by: Optional[Admin] = None
54 8440155 mahdim10 1y ago
55 8440155 mahdim10 1y ago
56 8440155 mahdim10 1y ago class UserDeleted(UserNotification):
57 8440155 mahdim10 1y ago action: UserNotification.Action = UserNotification.Action.user_deleted
58 8440155 mahdim10 1y ago by: Admin
59 8440155 mahdim10 1y ago
60 8440155 mahdim10 1y ago
61 8440155 mahdim10 1y ago class UserEnabled(UserNotification):
62 8440155 mahdim10 1y ago action: UserNotification.Action = UserNotification.Action.user_enabled
63 8440155 mahdim10 1y ago by: Optional[Admin] = None
64 8440155 mahdim10 1y ago
65 8440155 mahdim10 1y ago
66 8440155 mahdim10 1y ago class UserDisabled(UserNotification):
67 8440155 mahdim10 1y ago action: UserNotification.Action = UserNotification.Action.user_disabled
68 8440155 mahdim10 1y ago by: Optional[Admin] = None
69 8440155 mahdim10 1y ago
70 8440155 mahdim10 1y ago
71 8440155 mahdim10 1y ago class UserDataUsageReset(UserNotification):
72 8440155 mahdim10 1y ago action: UserNotification.Action = UserNotification.Action.data_usage_reset
73 8440155 mahdim10 1y ago by: Optional[Admin] = None
74 8440155 mahdim10 1y ago
75 8440155 mahdim10 1y ago
76 8440155 mahdim10 1y ago class UserSubscriptionRevoked(UserNotification):
77 8440155 mahdim10 1y ago action: UserNotification.Action = (
78 8440155 mahdim10 1y ago UserNotification.Action.subscription_revoked
79 8440155 mahdim10 1y ago )
80 8440155 mahdim10 1y ago by: Admin
81 8440155 mahdim10 1y ago
82 8440155 mahdim10 1y ago
83 8440155 mahdim10 1y ago class ReachedUsagePercent(UserNotification):
84 8440155 mahdim10 1y ago action: UserNotification.Action = (
85 8440155 mahdim10 1y ago UserNotification.Action.reached_usage_percent
86 8440155 mahdim10 1y ago )
87 8440155 mahdim10 1y ago
88 8440155 mahdim10 1y ago
89 8440155 mahdim10 1y ago class ReachedDaysLeft(UserNotification):
90 8440155 mahdim10 1y ago action: UserNotification.Action = UserNotification.Action.reached_days_left