SIMNet/simnet/models/lab/announcement.py

63 lines
1.9 KiB
Python
Raw Permalink Normal View History

2023-05-08 02:00:01 +00:00
from datetime import datetime
from pydantic import Field
from simnet.models.base import APIModel
__all__ = ("Announcement",)
class Announcement(APIModel):
"""
Represents an announcement.
Attributes:
id (int): The ID of the announcement.
title (str): The title of the announcement.
subtitle (str): The subtitle of the announcement.
banner (str): The URL of the banner image for the announcement.
content (str): The content of the announcement.
type_label (str): The label of the announcement type.
type (int): The type of the announcement.
tag_icon (str): The URL of the tag icon for the announcement.
login_alert (bool): Indicates whether the announcement is shown to logged-in users only.
remind (bool): Indicates whether to send reminder notifications for the announcement.
alert (bool): Indicates whether to send alert notifications for the announcement.
remind_ver (int): The version of the reminder notification.
extra_remind (bool): Indicates whether to send additional reminder notifications for the announcement.
start_time (datetime): The start time of the announcement.
end_time (datetime): The end time of the announcement.
tag_start_time (datetime): The start time of the tag for the announcement.
tag_end_time (datetime): The end time of the tag for the announcement.
lang (str): The language of the announcement.
has_content (bool): Indicates whether the announcement has content.
"""
id: int = Field(alias="ann_id")
title: str
subtitle: str
banner: str
content: str
type_label: str
type: int
tag_icon: str
login_alert: bool
remind: bool
alert: bool
remind_ver: int
extra_remind: bool
start_time: datetime
end_time: datetime
tag_start_time: datetime
tag_end_time: datetime
lang: str
has_content: bool