李勇

增加指定录制课堂列表任务

@@ -8,7 +8,7 @@ require('dotenv').config(); // 加载环境变量 @@ -8,7 +8,7 @@ require('dotenv').config(); // 加载环境变量
8 8
9 const method = require("../config/method") 9 const method = require("../config/method")
10 const config = require("../config/config") 10 const config = require("../config/config")
11 - 11 +const version ='v1.1.0.20250320';
12 // const { GETCLASSURL, GETCLASSURLPARAMETER, PROJECTCATALOG, PROJECTWINCATALOG, BACKMEDIACONFIG } = config 12 // const { GETCLASSURL, GETCLASSURLPARAMETER, PROJECTCATALOG, PROJECTWINCATALOG, BACKMEDIACONFIG } = config
13 const { YesterdayTime, getRequestClassIds, dayTimeYMD } = method 13 const { YesterdayTime, getRequestClassIds, dayTimeYMD } = method
14 14
@@ -16,6 +16,7 @@ let siteIds = [] @@ -16,6 +16,7 @@ let siteIds = []
16 16
17 let classid = [] 17 let classid = []
18 let classidPost = [] 18 let classidPost = []
  19 +let classTasks=[];
19 let parentData = {} 20 let parentData = {}
20 var classobj = {}; 21 var classobj = {};
21 let className = "" 22 let className = ""
@@ -84,7 +85,7 @@ class MediaCreat { @@ -84,7 +85,7 @@ class MediaCreat {
84 fs.appendFileSync(logFile, new Date().toLocaleString() + " " + text + '\r\n'); 85 fs.appendFileSync(logFile, new Date().toLocaleString() + " " + text + '\r\n');
85 } 86 }
86 87
87 - recordingCreat(id, siteId, type) { 88 + recordingCreat(id, siteId, type,yymmdd="") {
88 this.wrieLog(" 课堂录制开始:------>" + id) 89 this.wrieLog(" 课堂录制开始:------>" + id)
89 let fileConfig = this.getConfigFileJson() 90 let fileConfig = this.getConfigFileJson()
90 if (!fileConfig) return false 91 if (!fileConfig) return false
@@ -98,6 +99,10 @@ class MediaCreat { @@ -98,6 +99,10 @@ class MediaCreat {
98 // get 的目录创建为上一天日期 99 // get 的目录创建为上一天日期
99 ymdDir = PROJECTCATALOG + "/media/" + siteId + "/" + yesterday 100 ymdDir = PROJECTCATALOG + "/media/" + siteId + "/" + yesterday
100 } 101 }
  102 + //如果指定了时间就按指定时间处理
  103 + if(yymmdd){
  104 + ymdDir = PROJECTCATALOG + "/media/" + siteId + "/" +yymmdd;
  105 + }
101 106
102 if (!fs.existsSync(mediaDir)) { 107 if (!fs.existsSync(mediaDir)) {
103 fs.mkdirSync(mediaDir); 108 fs.mkdirSync(mediaDir);
@@ -336,5 +341,31 @@ router.post('/fileExists', async (req, res) => { @@ -336,5 +341,31 @@ router.post('/fileExists', async (req, res) => {
336 res.status(500).send({ code: -1, message: "服务器内部错误", error: err.message }); 341 res.status(500).send({ code: -1, message: "服务器内部错误", error: err.message });
337 } 342 }
338 }); 343 });
  344 +router.post('/recordingTask', async function (req, res, next) {
  345 + new MediaCreat().wrieLog("录制启动:------>")
  346 + let fileConfig = new MediaCreat().getConfigFileJson()
  347 + if (!fileConfig){
  348 + res.send({ code: "1", message: "无效的fileConfig", data:[] ,v:version});
  349 + return ;
  350 + }
  351 + let { list, maxMedia } = req.body;
  352 +
  353 + if (!list||list.length <= 0) {
  354 + // 有正在录制中的课堂,禁止重复
  355 + res.send({ code: "1", message: "无效的数据", data: list ,v:version});
  356 + return
  357 + }
  358 + if(maxMedia&&list.length>maxMedia){
  359 + res.send({ code: "1", message: "数组长度超过设置的最大值", data: list,v:version });
  360 + return
  361 + }
  362 + for (let i = 0; i < list.length; i++) {
  363 + let classInfo =list[i];
  364 + if (classInfo&&classInfo.classId&&classInfo.siteId) {
  365 + new MediaCreat().recordingCreat(classInfo['classId'], classInfo['siteId'], 'post',classInfo['yymmdd']||"")
  366 + }
  367 + }
  368 + res.send({ code: "0",message:"success",v:version });
  369 +})
339 370
340 module.exports = router 371 module.exports = router