From d36fb2fc9f73eac36868cdeb60e70cb7e3123714 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=B0=8F=E8=82=A5=E7=BE=8A?= <1048382248@qq.com>
Date: Tue, 24 Jun 2025 16:18:23 +0800
Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20=E8=93=9D=E9=B2=B8?=
=?UTF-8?q?=E5=AD=97=E5=BA=93=E6=8E=A5=E5=8F=A3=20=E6=89=B9=E9=87=8F?=
=?UTF-8?q?=E8=A7=86=E9=A2=91=E6=96=87=E4=BB=B6=E5=85=A5=E5=8F=82=E6=A8=A1?=
=?UTF-8?q?=E5=9E=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../AICore/GPT/DeepSeek/DeepSeek_GPT.cs | 28 ++-----------
VideoAnalysisCore/Common/DownloadFile.cs | 9 ++---
.../Controllers/ApiController.cs | 2 +-
VideoAnalysisCore/Controllers/Dto/ApiDto.cs | 22 +++++++++--
.../Controllers/LJZK_Controller.cs | 6 ++-
VideoAnalysisCore/Job/NodeSubscriptionJob.cs | 2 +-
.../Model/Enum/AttachmentsInfoType.cs | 3 ++
.../Model/Enum/EducationStageEnum.cs | 39 +++++++++++++++++++
VideoAnalysisCore/Model/NodePackageInfo.cs | 8 +++-
VideoAnalysisCore/Model/VideoTask.cs | 9 +++--
10 files changed, 85 insertions(+), 43 deletions(-)
create mode 100644 VideoAnalysisCore/Model/Enum/EducationStageEnum.cs
diff --git a/VideoAnalysisCore/AICore/GPT/DeepSeek/DeepSeek_GPT.cs b/VideoAnalysisCore/AICore/GPT/DeepSeek/DeepSeek_GPT.cs
index f20e29b..4f7ce91 100644
--- a/VideoAnalysisCore/AICore/GPT/DeepSeek/DeepSeek_GPT.cs
+++ b/VideoAnalysisCore/AICore/GPT/DeepSeek/DeepSeek_GPT.cs
@@ -118,7 +118,7 @@ namespace VideoAnalysisCore.AICore.GPT.DeepSeek
/// 获取内容对应的章节
///
///
- private async Task GetSections(VideoTask taskInfo, int course_Id)
+ private async Task GetSections(VideoTask taskInfo, long course_Id)
{
if (!string.IsNullOrEmpty(taskInfo.Sections))
return taskInfo.Sections;
@@ -160,7 +160,7 @@ namespace VideoAnalysisCore.AICore.GPT.DeepSeek
/// 检查AI切片结果质量
///
///
- private async Task VerifySpanQuality(VideoKnowRes[] questionRes, VideoTask taskInfo, TotalCaptionsDto captions, string sections, int course_Id)
+ private async Task VerifySpanQuality(VideoKnowRes[] questionRes, VideoTask taskInfo, TotalCaptionsDto captions, string sections, long course_Id)
{
//校验结果质量
var thems = questionRes.Adapt().ToJson();
@@ -527,17 +527,7 @@ namespace VideoAnalysisCore.AICore.GPT.DeepSeek
.Where(s => s.Id == taskId)
.FirstAsync();
var subject = taskInfo.Subject.ToString();
- var Course_Id = 27;
- switch (taskInfo.Type)//处理不同任务类型的知识点树
- {
- case TaskTypeEnum.蓝鲸智库_中职视频分段:
- Course_Id = 51;
- break;
- case TaskTypeEnum.蓝鲸智库_视频分段:
- default:
- Course_Id = 27;
- break;
- }
+ var Course_Id = taskInfo.CourseId;
switch (taskInfo?.VideoType)
{
case AttachmentsInfoType.其他资料:
@@ -624,17 +614,7 @@ namespace VideoAnalysisCore.AICore.GPT.DeepSeek
if (taskInfo.VideoType != AttachmentsInfoType.复习)
return;
var subject = taskInfo.Subject.ToString();
- var Course_Id = 27;
- switch (taskInfo.Type)//处理不同任务类型的知识点树
- {
- case TaskTypeEnum.蓝鲸智库_中职视频分段:
- Course_Id = 51;
- break;
- case TaskTypeEnum.蓝鲸智库_视频分段:
- default:
- Course_Id = 27;
- break;
- }
+ var Course_Id = taskInfo.CourseId;
var captionsArr = JsonSerializer.Deserialize(taskInfo.Captions);
//处理视频授课章节
diff --git a/VideoAnalysisCore/Common/DownloadFile.cs b/VideoAnalysisCore/Common/DownloadFile.cs
index a867711..b9a629b 100644
--- a/VideoAnalysisCore/Common/DownloadFile.cs
+++ b/VideoAnalysisCore/Common/DownloadFile.cs
@@ -132,11 +132,10 @@ namespace VideoAnalysisCore.Common
var fileUrl = taskInfo.MediaUrl;
if (string.IsNullOrEmpty(fileUrl))
{
- switch (taskInfo.Type)
+ switch (taskInfo.VideoType)
{
- case TaskTypeEnum.蓝鲸智库_视频分段:
- case TaskTypeEnum.蓝鲸智库_中职视频分段:
-
+ case AttachmentsInfoType.新课:
+ case AttachmentsInfoType.复习:
var videoInfo = await vodClient.GetPlayInfoAsync(new AlibabaCloud.SDK.Vod20170321.Models.GetPlayInfoRequest()
{
VideoId = taskInfo.TagId,
@@ -148,8 +147,6 @@ namespace VideoAnalysisCore.Common
throw new Exception($"{DateTime.Now} 视频订阅=>获取阿里云视频信息失败 VideoCode {taskInfo.TagId} StatusCode {videoInfo?.StatusCode}");
fileUrl = videoInfo.Body.PlayInfoList.PlayInfo.First().PlayURL;
break;
- case TaskTypeEnum.教研会议_视频分析:
- break;
default:
break;
}
diff --git a/VideoAnalysisCore/Controllers/ApiController.cs b/VideoAnalysisCore/Controllers/ApiController.cs
index 9f68fb7..bbcd8ea 100644
--- a/VideoAnalysisCore/Controllers/ApiController.cs
+++ b/VideoAnalysisCore/Controllers/ApiController.cs
@@ -172,7 +172,7 @@ namespace VideoAnalysisCore.Controllers
ComeFrom = GetClientIpAddress(),
MediaUrl = req.MediaUrl,
ApiToken = req.ApiToken,
- Type = req.Type,
+ CourseId = req.CourseId,
Subject = req.Subject,
Tag = req.Tag,
TagId = req.TagId,
diff --git a/VideoAnalysisCore/Controllers/Dto/ApiDto.cs b/VideoAnalysisCore/Controllers/Dto/ApiDto.cs
index 3200d1c..708d0bf 100644
--- a/VideoAnalysisCore/Controllers/Dto/ApiDto.cs
+++ b/VideoAnalysisCore/Controllers/Dto/ApiDto.cs
@@ -57,7 +57,8 @@ namespace VideoAnalysisCore.Controllers.Dto
public long AttachmentId { get; set; }
///
- /// 需要返回给我的参数
+ /// 视频阿里云id
+ /// 需要返回给我的参数
///
public string VideoCode { get; set; }
///
@@ -68,8 +69,8 @@ namespace VideoAnalysisCore.Controllers.Dto
///
/// 任务类型
///
- [Required(ErrorMessage = "任务类型是必填项")]
- public TaskTypeEnum TaskType { get; set; }
+ //[Required(ErrorMessage = "任务类型是必填项")]
+ //public TaskTypeEnum TaskType { get; set; }
///
/// 课程类型 0=新课 3=复习 4= 活动 5=班会 7=其他资料
@@ -105,7 +106,20 @@ namespace VideoAnalysisCore.Controllers.Dto
/// 用于查找视频下对应的PPT资源
///
public long ContentId { get; set; }
+ ///
+ /// 学科网的课程id
+ ///
+ public long CourseId { get; set; }
+ ///
+ /// 学科网的教材版本Id
+ ///
+ public long TextBookVersionId { get; set; }
+
+ ///
+ /// 教育阶段
+ ///
+ public EducationStageEnum StageId { get; set; }
}
///
/// 视频处理 请求
@@ -149,7 +163,7 @@ namespace VideoAnalysisCore.Controllers.Dto
///
/// 任务类型
///
- public TaskTypeEnum? Type { get; set; }
+ public long CourseId { get; set; }
///
/// 视频类型
///
diff --git a/VideoAnalysisCore/Controllers/LJZK_Controller.cs b/VideoAnalysisCore/Controllers/LJZK_Controller.cs
index 4483503..50a87ca 100644
--- a/VideoAnalysisCore/Controllers/LJZK_Controller.cs
+++ b/VideoAnalysisCore/Controllers/LJZK_Controller.cs
@@ -69,7 +69,8 @@ namespace VideoAnalysisCore.Controllers
VideoCode = s.VideoCode,
MaterialId = s.MaterialId,
AttachmentId = s.AttachmentId,
- TaskType = s.TaskType,
+ Stage = s.StageId,
+ CourseId = s.CourseId,
SubjectType = s.SubjectId,
VideoUrl =s.VideoUrl,
CourseType = s.CourseType,
@@ -86,7 +87,8 @@ namespace VideoAnalysisCore.Controllers
Id = YitIdHelper.NextId(),
ComeFrom = GetClientIpAddress(),
ApiToken = "",
- Type = s.TaskType,
+ EducationStage = s.StageId,
+ CourseId = s.CourseId,
Subject = s.SubjectId,
TagId = s.VideoCode,
MediaUrl =s.VideoUrl,
diff --git a/VideoAnalysisCore/Job/NodeSubscriptionJob.cs b/VideoAnalysisCore/Job/NodeSubscriptionJob.cs
index 6ac5724..5fb9a67 100644
--- a/VideoAnalysisCore/Job/NodeSubscriptionJob.cs
+++ b/VideoAnalysisCore/Job/NodeSubscriptionJob.cs
@@ -87,7 +87,7 @@ namespace VideoAnalysisCore.Job
Id = YitIdHelper.NextId(),
ComeFrom = "127.0.0.1",
ApiToken = "",
- Type = item.TaskType,
+ //Type = item.TaskType,
Subject = item.Subject,
Tag = item.NodeId.ToString(),
TagId = s.VideoCode,
diff --git a/VideoAnalysisCore/Model/Enum/AttachmentsInfoType.cs b/VideoAnalysisCore/Model/Enum/AttachmentsInfoType.cs
index 77db099..7de39ab 100644
--- a/VideoAnalysisCore/Model/Enum/AttachmentsInfoType.cs
+++ b/VideoAnalysisCore/Model/Enum/AttachmentsInfoType.cs
@@ -7,6 +7,9 @@ using System.Threading.Tasks;
namespace VideoAnalysisCore.Model.Enum
{
+ ///
+ /// 蓝鲸智库 视频类型枚举
+ ///
public enum VideoType
{
PPT课件 = 1,
diff --git a/VideoAnalysisCore/Model/Enum/EducationStageEnum.cs b/VideoAnalysisCore/Model/Enum/EducationStageEnum.cs
new file mode 100644
index 0000000..981cab9
--- /dev/null
+++ b/VideoAnalysisCore/Model/Enum/EducationStageEnum.cs
@@ -0,0 +1,39 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace VideoAnalysisCore.Model.Enum
+{
+ ///
+ /// 教育阶段枚举
+ ///
+ public enum EducationStageEnum
+ {
+ ///
+ /// 学前
+ ///
+ 学前 = 1,
+ ///
+ /// 小学
+ ///
+ 小学 = 2,
+ ///
+ /// 初中
+ ///
+ 初中 = 3,
+ ///
+ /// 高中
+ ///
+ 高中 = 4,
+ ///
+ /// 大学
+ ///
+ 大学 = 5,
+ ///
+ /// 中职
+ ///
+ 中职 = 6
+ }
+}
diff --git a/VideoAnalysisCore/Model/NodePackageInfo.cs b/VideoAnalysisCore/Model/NodePackageInfo.cs
index 6d09c4b..d7041ca 100644
--- a/VideoAnalysisCore/Model/NodePackageInfo.cs
+++ b/VideoAnalysisCore/Model/NodePackageInfo.cs
@@ -48,9 +48,13 @@ namespace VideoAnalysisCore.Model
public SubjectEnum SubjectType { get; set; }
///
- /// 任务类型
+ /// 教育阶段
///
- public TaskTypeEnum TaskType { get; set; }
+ public EducationStageEnum Stage { get; set; }
+ ///
+ /// 学科网的课程id
+ ///
+ public long CourseId { get; set; }
///
/// 完成时间
///
diff --git a/VideoAnalysisCore/Model/VideoTask.cs b/VideoAnalysisCore/Model/VideoTask.cs
index 4f29fee..4e56cfb 100644
--- a/VideoAnalysisCore/Model/VideoTask.cs
+++ b/VideoAnalysisCore/Model/VideoTask.cs
@@ -50,10 +50,13 @@ namespace VideoAnalysisCore.Model
[SugarColumn( IsNullable = true)]
public SubjectEnum? Subject { get; set; }
///
- /// 任务类型
+ /// 学科网的课程id
///
- [SugarColumn(IsNullable = true)]
- public TaskTypeEnum? Type { get; set; }
+ public long CourseId { get; set; }
+ ///
+ /// 教育阶段
+ ///
+ public EducationStageEnum EducationStage { get; set; }
///
/// 视频类型
/// 常规,教研,PPT...