XH_Digital_Management/application/operation_mgnt/models.py

99 lines
4.6 KiB
Python
Raw Normal View History

from django.db import models
# 新媒体账号登记
class SocialMediaAccountRegistration(models.Model):
record_id = models.AutoField(primary_key=True)
platform = models.CharField(max_length=255, verbose_name='所属平台')
account_name = models.CharField(max_length=255, verbose_name='账号名称')
primary_department = models.CharField(max_length=255, verbose_name='一级部门')
secondary_department = models.CharField(max_length=255, verbose_name='二级部门', blank=True)
operation_account = models.CharField(max_length=255, verbose_name='运营账号')
password = models.CharField(max_length=255, verbose_name='密码')
operator = models.CharField(max_length=255, verbose_name='运营者')
class Meta:
verbose_name = '新媒体账号登记'
verbose_name_plural = '新媒体账号登记'
def __str__(self):
return f"{self.platform} - {self.account_name}"
# 账号运营管理记录
class AccountOperationManagementRecord(models.Model):
record_id = models.AutoField(primary_key=True)
social_media_account = models.ForeignKey(SocialMediaAccountRegistration, on_delete=models.CASCADE,
verbose_name='新媒体账号')
content_title = models.CharField(max_length=255, verbose_name='发布内容标题')
publication_time = models.DateTimeField(verbose_name='发布时间')
views = models.IntegerField(verbose_name='观看量')
favorites = models.IntegerField(verbose_name='收藏数')
comments = models.IntegerField(verbose_name='评论数')
shares = models.IntegerField(verbose_name='转发数')
likes = models.IntegerField(verbose_name='点赞数')
followers = models.IntegerField(verbose_name='粉丝数')
update_time = models.DateTimeField(verbose_name='动态更新时间')
class Meta:
verbose_name = '账号运营管理记录'
verbose_name_plural = '账号运营管理记录'
def __str__(self):
return f"{self.social_media_account.account_name} - {self.content_title}"
# 网站登记
class WebsiteRegistration(models.Model):
record_id = models.AutoField(primary_key=True)
website_name = models.CharField(max_length=255, verbose_name='官网名称')
primary_department = models.CharField(max_length=255, verbose_name='一级部门')
secondary_department = models.CharField(max_length=255, verbose_name='二级部门', blank=True)
account = models.CharField(max_length=255, verbose_name='账号')
password = models.CharField(max_length=255, verbose_name='密码')
login_url = models.CharField(max_length=255, verbose_name='登录入口')
tech_support = models.CharField(max_length=255, verbose_name='技术支持')
domain = models.CharField(max_length=255, verbose_name='域名')
expiration_date = models.DateField(verbose_name='到期时间')
operator = models.CharField(max_length=255, verbose_name='运营者')
class Meta:
verbose_name = '网站登记'
verbose_name_plural = '网站登记'
def __str__(self):
return self.website_name
# 网站到期时间修改记录
class WebsiteExpirationModificationRecord(models.Model):
modification_id = models.AutoField(primary_key=True)
website_registration = models.ForeignKey(WebsiteRegistration, on_delete=models.CASCADE, verbose_name='网站记录')
original_expiration_date = models.DateField(verbose_name='原到期时间')
new_expiration_date = models.DateField(verbose_name='新到期时间')
modification_date = models.DateTimeField(verbose_name='修改时间')
cost = models.DecimalField(max_digits=10, decimal_places=2, verbose_name='费用')
class Meta:
verbose_name = '网站到期时间修改记录'
verbose_name_plural = '网站到期时间修改记录'
def __str__(self):
return f"{self.website_registration.website_name} - Modification on {self.modification_date.strftime('%Y-%m-%d')}"
# 网站运维记录
class WebsiteMaintenanceRecord(models.Model):
record_id = models.AutoField(primary_key=True)
website_registration = models.ForeignKey(WebsiteRegistration, on_delete=models.CASCADE, verbose_name='网站')
maintenance_date = models.DateTimeField(verbose_name='维护时间')
maintenance_activity = models.TextField(verbose_name='维护活动描述')
performed_by = models.CharField(max_length=255, verbose_name='维护人员')
class Meta:
verbose_name = '网站运维记录'
verbose_name_plural = '网站运维记录'
def __str__(self):
return f"{self.website_registration.website_name} - Maintained on {self.maintenance_date.strftime('%Y-%m-%d')}"