feat(email): 添加发件人邮箱字段并优化邮件发送逻辑

添加独立的sender_email字段作为发件人邮箱,优先使用该字段而非smtp_username
更新相关表单、模型和测试用例以支持新字段
重构邮件发送逻辑,统一邮箱格式验证和错误提示
This commit is contained in:
2026-01-18 18:35:09 +08:00
parent 2320133c20
commit e22bd4a8c3
5 changed files with 107 additions and 45 deletions

View File

@@ -149,6 +149,7 @@ class SystemConfig(models.Model):
smtp_port = models.IntegerField(default=587, verbose_name="SMTP端口")
smtp_username = models.CharField(max_length=100, blank=True, null=True, verbose_name="SMTP用户名")
smtp_password = models.CharField(max_length=100, blank=True, null=True, verbose_name="SMTP密码")
sender_email = models.EmailField(blank=True, null=True, verbose_name="发件人邮箱")
send_time = models.TimeField(default='08:00', verbose_name="每日发送时间")
recipient_email = models.EmailField(blank=True, null=True, verbose_name="收件人邮箱")
created_at = models.DateTimeField(auto_now_add=True, verbose_name="创建时间")