dramaling-vocab-learning/backend/DramaLing.Api/Models/Entities/UserAudioPreferences.cs

34 lines
956 B
C#

using System.ComponentModel.DataAnnotations;
namespace DramaLing.Api.Models.Entities;
public class UserAudioPreferences
{
[Key]
public Guid UserId { get; set; }
// TTS 偏好
[MaxLength(2)]
public string PreferredAccent { get; set; } = "us";
[MaxLength(50)]
public string? PreferredVoiceMale { get; set; }
[MaxLength(50)]
public string? PreferredVoiceFemale { get; set; }
public decimal DefaultSpeed { get; set; } = 1.0m;
public bool AutoPlayEnabled { get; set; } = false;
// 語音練習偏好
[MaxLength(20)]
public string PronunciationDifficulty { get; set; } = "medium"; // 'easy', 'medium', 'strict'
public int TargetScoreThreshold { get; set; } = 80;
public bool EnableDetailedFeedback { get; set; } = true;
public DateTime UpdatedAt { get; set; } = DateTime.UtcNow;
// Navigation property
public User User { get; set; } = null!;
}