using SqlSugar; using System.ComponentModel.DataAnnotations; using System.Net; using System.Text.Json; using UserCenter.Model.Enum; using VideoAnalysisCore.AICore.GPT.Dto; using VideoAnalysisCore.AICore.SherpaOnnx; using VideoAnalysisCore.Model.Enum; using VideoAnalysisCore.Model.Interface; using Whisper.net; namespace VideoAnalysisCore.Model { /// /// 视频片段知识点 /// [SugarTable("videokonwpoint")] public class VideoKonwPoint : IDB { /// /// id /// [SugarColumn(IsPrimaryKey = true)] public long Id { get; set; } /// /// 视频任务id /// public long VideoTaskId { get; set; } /// /// 视频阶段id /// public long StageId { get; set; } /// /// 自定义Id [任务视频自定义id] /// /// [SugarColumn(Length = 500, IsNullable = true)] public string? TagId { get; set; } /// /// 开始时间 /// [SugarColumn( IsNullable = true)] public float? StartTime { get; set; } /// /// 结束时间 /// [SugarColumn(IsNullable = true)] public float? EndTime { get; set; } /// /// 持续时间 /// [SugarColumn(IsIgnore = true)] public float? KeepTime => (EndTime ?? 0) - StartTime ?? 0; /// /// 主题 /// public string? Theme { get; set; } /// /// 知识点 /// public string? KnowPoint { get; set; } /// /// 知识点ID /// public string? KnowPointId { get; set; } /// /// 知识点占比权重 /// public float? KnowPointWeight { get; set; } /// /// 知识点来源 /// public string KnowSource { get; set; } /// /// 内容总结[不写入数据库] /// [SugarColumn(IsIgnore = true)] public virtual string? Content { get; set; } /// /// 课程阶段 /// [SugarColumn(IsIgnore = true)] public virtual StageEnum? Stage { get; set; } /// /// 视频所属云校ID /// 用户中心的云校id /// [SugarColumn(IsNullable = true)] public long? CloudSchoolId { get; set; } /// /// 教材来源 /// 课本/试卷/挹青苑 ... /// [SugarColumn(IsIgnore = true)] public virtual string? TextbookSource { get; set; } } }