refactor: simplify code - extract constants, reduce complexity
This commit is contained in:
@@ -98,6 +98,12 @@ class ScheduleItemListRequest(BaseModel):
|
||||
end_at: datetime
|
||||
|
||||
|
||||
# Permission bit constants (matching PermissionBits in inbox_messages/schemas.py)
|
||||
_PERMISSION_VIEW = 1 # 001
|
||||
_PERMISSION_INVITE = 2 # 010
|
||||
_PERMISSION_EDIT = 4 # 100
|
||||
|
||||
|
||||
class ScheduleItemShareRequest(BaseModel):
|
||||
model_config: ClassVar[ConfigDict] = ConfigDict(extra="forbid")
|
||||
|
||||
@@ -109,11 +115,11 @@ class ScheduleItemShareRequest(BaseModel):
|
||||
def _permission_value(self) -> int:
|
||||
value = 0
|
||||
if self.permission_view:
|
||||
value |= 1
|
||||
value |= _PERMISSION_VIEW
|
||||
if self.permission_edit:
|
||||
value |= 4
|
||||
value |= _PERMISSION_EDIT
|
||||
if self.permission_invite:
|
||||
value |= 2
|
||||
value |= _PERMISSION_INVITE
|
||||
return value
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user