parent
977faaef75
commit
1e4d7ac5f6
|
|
@ -1,12 +1,13 @@
|
||||||
@page "/"
|
@page "/"
|
||||||
@using AntDesign
|
@ using AntDesign
|
||||||
@using AntDesign.TableModels
|
@ using AntDesign.TableModels
|
||||||
@using System.ComponentModel.DataAnnotations
|
@ using System.ComponentModel.DataAnnotations
|
||||||
@using Learn.VideoAnalysis.Controllers.Dto
|
@ using Learn.VideoAnalysis.Controllers.Dto
|
||||||
@using SqlSugar
|
@ using SqlSugar
|
||||||
@using VideoAnalysisCore.Model
|
@ using VideoAnalysisCore.Model
|
||||||
@using VideoAnalysisCore.Model.Dto
|
@ using VideoAnalysisCore.Model.Dto
|
||||||
@using VideoAnalysisCore.Enum
|
@ using VideoAnalysisCore.Enum;
|
||||||
|
using VideoAnalysisCore.Model.Enum
|
||||||
|
|
||||||
<Table @ref="_table" Loading="tableLoading" TItem="VideoTaskDto" ScrollY="600px" PageSize="10" Total="_total" DataSource="_dataSource"
|
<Table @ref="_table" Loading="tableLoading" TItem="VideoTaskDto" ScrollY="600px" PageSize="10" Total="_total" DataSource="_dataSource"
|
||||||
OnRowClick="(r)=>r.Expanded = !r.Expanded"
|
OnRowClick="(r)=>r.Expanded = !r.Expanded"
|
||||||
|
|
|
||||||
|
|
@ -9,9 +9,9 @@ using SqlSugar;
|
||||||
using System.Linq.Expressions;
|
using System.Linq.Expressions;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using VideoAnalysisCore.Common;
|
using VideoAnalysisCore.Common;
|
||||||
using VideoAnalysisCore.Enum;
|
|
||||||
using VideoAnalysisCore.Model;
|
using VideoAnalysisCore.Model;
|
||||||
using VideoAnalysisCore.Model.Dto;
|
using VideoAnalysisCore.Model.Dto;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
namespace Learn.VideoAnalysis.Components.Pages
|
namespace Learn.VideoAnalysis.Components.Pages
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@ using UserCenter.Model.Enum;
|
||||||
using VideoAnalysisCore.AICore.GPT.ChatGPT;
|
using VideoAnalysisCore.AICore.GPT.ChatGPT;
|
||||||
using VideoAnalysisCore.AICore.GPT;
|
using VideoAnalysisCore.AICore.GPT;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
namespace Learn.VideoAnalysis.Controllers
|
namespace Learn.VideoAnalysis.Controllers
|
||||||
{
|
{
|
||||||
|
|
@ -71,7 +72,7 @@ namespace Learn.VideoAnalysis.Controllers
|
||||||
[HttpPost(Name = "AudioRecognition")]
|
[HttpPost(Name = "AudioRecognition")]
|
||||||
public async Task<IActionResult> AudioRecognition(IFormFile file)
|
public async Task<IActionResult> AudioRecognition(IFormFile file)
|
||||||
{
|
{
|
||||||
using var s = file.OpenReadStream();
|
using var s = file.OpenReadStream();
|
||||||
var res = await SenseVoice.RunTask(s);
|
var res = await SenseVoice.RunTask(s);
|
||||||
return Ok(res);
|
return Ok(res);
|
||||||
}
|
}
|
||||||
|
|
@ -83,7 +84,7 @@ namespace Learn.VideoAnalysis.Controllers
|
||||||
/// <param name="path">路径</param>
|
/// <param name="path">路径</param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
[HttpGet(Name = "fts_data")]
|
[HttpGet(Name = "fts_data")]
|
||||||
public async Task<IActionResult> FTS_Data(string path= "itn_subject_sx.fst")
|
public async Task<IActionResult> FTS_Data(string path = "itn_subject_sx.fst")
|
||||||
{
|
{
|
||||||
var hotwords = JsonSerializer
|
var hotwords = JsonSerializer
|
||||||
.Deserialize<HotwordMode[]>(System.IO.File.ReadAllText(Path.Combine(AppCommon.AIModelFile, "Hotwords.json")));
|
.Deserialize<HotwordMode[]>(System.IO.File.ReadAllText(Path.Combine(AppCommon.AIModelFile, "Hotwords.json")));
|
||||||
|
|
@ -115,7 +116,7 @@ namespace Learn.VideoAnalysis.Controllers
|
||||||
.FirstAsync();
|
.FirstAsync();
|
||||||
if (task is null)
|
if (task is null)
|
||||||
return BadRequest("未能找到对应任务");
|
return BadRequest("未能找到对应任务");
|
||||||
if (subject is not null)
|
if (subject is not null)
|
||||||
{
|
{
|
||||||
task.Subject = subject;
|
task.Subject = subject;
|
||||||
await videoTaskDB.UpdateAsync(task);
|
await videoTaskDB.UpdateAsync(task);
|
||||||
|
|
@ -134,7 +135,7 @@ namespace Learn.VideoAnalysis.Controllers
|
||||||
/// <param name="msg"></param>
|
/// <param name="msg"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
[HttpPost(Name = "TestInsertChannel")]
|
[HttpPost(Name = "TestInsertChannel")]
|
||||||
public IActionResult TestInsertChannel(int @enum=1, string msg= "1")
|
public IActionResult TestInsertChannel(int @enum = 1, string msg = "1")
|
||||||
{
|
{
|
||||||
RedisExpand.InsertChannel(@enum.ToEnum<RedisChannelEnum>().Value
|
RedisExpand.InsertChannel(@enum.ToEnum<RedisChannelEnum>().Value
|
||||||
, msg);
|
, msg);
|
||||||
|
|
@ -149,12 +150,12 @@ namespace Learn.VideoAnalysis.Controllers
|
||||||
[HttpPost(Name = "VideoAnalysis")]
|
[HttpPost(Name = "VideoAnalysis")]
|
||||||
public async Task<IActionResult> VideoAnalysis(VideoAnalysisReq req)
|
public async Task<IActionResult> VideoAnalysis(VideoAnalysisReq req)
|
||||||
{
|
{
|
||||||
if (!ModelState.IsValid) return BadRequest(ModelState);
|
if (!ModelState.IsValid) return BadRequest(ModelState);
|
||||||
|
|
||||||
if(await videoTaskDB.IsAnyAsync(s=>s.TagId == req.TagId) )
|
if (await videoTaskDB.IsAnyAsync(s => s.TagId == req.TagId))
|
||||||
return BadRequest("重复添加");
|
return BadRequest("重复添加");
|
||||||
// 自动映射属性到哈希
|
// 自动映射属性到哈希
|
||||||
var task = new VideoTask()
|
var task = new VideoTask()
|
||||||
{
|
{
|
||||||
ComeFrom = GetClientIpAddress(),
|
ComeFrom = GetClientIpAddress(),
|
||||||
MediaUrl = req.MediaUrl,
|
MediaUrl = req.MediaUrl,
|
||||||
|
|
@ -172,30 +173,10 @@ namespace Learn.VideoAnalysis.Controllers
|
||||||
.ToDictionary(s => s.Name, s => s.GetValue(task));
|
.ToDictionary(s => s.Name, s => s.GetValue(task));
|
||||||
RedisExpand.Redis.HMSet(RedisExpandKey.Task(task.Id), hashEntries);
|
RedisExpand.Redis.HMSet(RedisExpandKey.Task(task.Id), hashEntries);
|
||||||
RedisExpand.Redis.LPush(RedisExpandKey.ChannelKey, task.Id);
|
RedisExpand.Redis.LPush(RedisExpandKey.ChannelKey, task.Id);
|
||||||
return Ok(task.Id);
|
return Ok(task.Id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 蓝鲸智库_添加文件节点监控
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="req">请求体</param>
|
|
||||||
/// <returns></returns>
|
|
||||||
[HttpPost(Name = "ZY_NodeMonitoring")]
|
|
||||||
public async Task<IActionResult> ZY_NodeMonitoring(NodeMonitoringReq req)
|
|
||||||
{
|
|
||||||
//if (!ModelState.IsValid) return BadRequest(ModelState);
|
|
||||||
|
|
||||||
//入库
|
|
||||||
//task.Id = await videoTaskDB.InsertReturnBigIdentityAsync(task);
|
|
||||||
//var hashEntries = task.GetType()
|
|
||||||
// .GetProperties(BindingFlags.Public | BindingFlags.Instance)
|
|
||||||
// .ToDictionary(s => s.Name, s => s.GetValue(task));
|
|
||||||
//RedisExpand.Redis.HMSet(RedisExpandKey.Task(task.Id), hashEntries);
|
|
||||||
//RedisExpand.Redis.LPush(RedisExpandKey.ChannelKey, task.Id);
|
|
||||||
return Ok();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ using SqlSugar;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using UserCenter.Model.Enum;
|
using UserCenter.Model.Enum;
|
||||||
using VideoAnalysisCore.AICore.GPT.Dto;
|
using VideoAnalysisCore.AICore.GPT.Dto;
|
||||||
using VideoAnalysisCore.Enum;
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
namespace Learn.VideoAnalysis.Controllers.Dto
|
namespace Learn.VideoAnalysis.Controllers.Dto
|
||||||
{
|
{
|
||||||
|
|
@ -16,15 +16,11 @@ namespace Learn.VideoAnalysis.Controllers.Dto
|
||||||
/// 媒体路径
|
/// 媒体路径
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[Required(ErrorMessage = "文件节点ID是必填项")]
|
[Required(ErrorMessage = "文件节点ID是必填项")]
|
||||||
public string NodeId { get; set; } = string.Empty;
|
public long NodeId { get; set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 任务类型
|
/// 任务类型
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public TaskTypeEnum? Type { get; set; }
|
public TaskTypeEnum? Type { get; set; }
|
||||||
/// <summary>
|
|
||||||
/// 自定义值 任务完成后附带通知
|
|
||||||
/// </summary>
|
|
||||||
public string Tag { get; set; } = string.Empty;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,74 @@
|
||||||
|
|
||||||
|
using VideoAnalysisCore.Common;
|
||||||
|
using Microsoft.AspNetCore.Mvc;
|
||||||
|
using System.Reflection;
|
||||||
|
using MapsterMapper;
|
||||||
|
using Mapster;
|
||||||
|
using VideoAnalysisCore.AICore.SherpaOnnx;
|
||||||
|
using UserCenter.Model.Enum;
|
||||||
|
using VideoAnalysisCore.AICore.GPT.ChatGPT;
|
||||||
|
using VideoAnalysisCore.AICore.GPT;
|
||||||
|
using System.Text.Json;
|
||||||
|
using Microsoft.AspNetCore.Authorization;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
|
namespace Learn.VideoAnalysis.Controllers
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 蓝鲸字库接口
|
||||||
|
/// </summary>
|
||||||
|
[ApiController]
|
||||||
|
[Route("LJZK/[action]")]
|
||||||
|
public class LJZK_Controller : ControllerBase
|
||||||
|
{
|
||||||
|
private readonly ILogger<LJZK_Controller> _logger;
|
||||||
|
private readonly IMapper mp;
|
||||||
|
private readonly Repository<NodeSubscription> nodesubscriptionDB;
|
||||||
|
private readonly IBserGPT chatGPT;
|
||||||
|
public LJZK_Controller(ILogger<LJZK_Controller> logger,
|
||||||
|
IMapper mp, IBserGPT chatGPT, Repository<NodeSubscription> nodesubscriptionDB)
|
||||||
|
{
|
||||||
|
_logger = logger;
|
||||||
|
this.mp = mp;
|
||||||
|
this.chatGPT = chatGPT;
|
||||||
|
this.nodesubscriptionDB = nodesubscriptionDB;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 蓝鲸智库_添加文件节点监控
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="req">请求体</param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpPost(Name = "NodeSubscription")]
|
||||||
|
public async Task<IActionResult> NodeSubscription(NodeMonitoringReq req)
|
||||||
|
{
|
||||||
|
if (nodesubscriptionDB.IsAny(s => s.NodeId == req.NodeId))
|
||||||
|
return BadRequest("重复添加了节点监控任务" + req.NodeId);
|
||||||
|
var res = await nodesubscriptionDB.InsertReturnEntityAsync(new NodeSubscription()
|
||||||
|
{
|
||||||
|
NodeId = req.NodeId,
|
||||||
|
TaskType = req.Type ?? default
|
||||||
|
});
|
||||||
|
return Ok(res);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取任务类型
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpGet(Name = "TaskTypList")]
|
||||||
|
public IActionResult TaskType()
|
||||||
|
{
|
||||||
|
Type type = typeof(TaskTypeEnum);
|
||||||
|
return Ok(Enum.GetValues(type).Cast<object>()
|
||||||
|
.Select(s => new { Text = s.ToString(), Value = (int)s }));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -43,7 +43,7 @@
|
||||||
"DB": {
|
"DB": {
|
||||||
"ConnectionString": "AllowLoadLocalInfile=true;Server=192.168.2.9;User ID=root;Password=qwe123!@#;Port=3306;Database=learn.videoanalysis;CharSet=utf8mb4;pooling=true;SslMode=None",
|
"ConnectionString": "AllowLoadLocalInfile=true;Server=192.168.2.9;User ID=root;Password=qwe123!@#;Port=3306;Database=learn.videoanalysis;CharSet=utf8mb4;pooling=true;SslMode=None",
|
||||||
"SqlType": "MySql",
|
"SqlType": "MySql",
|
||||||
"UpdateTable": false
|
"UpdateTable": true
|
||||||
},
|
},
|
||||||
"OtherDBArr": [
|
"OtherDBArr": [
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ using System.Xml.Linq;
|
||||||
using System.Runtime.InteropServices;
|
using System.Runtime.InteropServices;
|
||||||
using SqlSugar.IOC;
|
using SqlSugar.IOC;
|
||||||
using VideoAnalysisCore.Model;
|
using VideoAnalysisCore.Model;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.AICore.FFMPGE
|
namespace VideoAnalysisCore.AICore.FFMPGE
|
||||||
{
|
{
|
||||||
|
|
@ -85,7 +86,7 @@ namespace VideoAnalysisCore.AICore.FFMPGE
|
||||||
{
|
{
|
||||||
Console.WriteLine("转换完成=>" + e.Output.Name);
|
Console.WriteLine("转换完成=>" + e.Output.Name);
|
||||||
//加入下一队列
|
//加入下一队列
|
||||||
RedisExpand.InsertChannel(Enum.RedisChannelEnum.ParsingCaptions, Task);
|
RedisExpand.InsertChannel(RedisChannelEnum.ParsingCaptions, Task);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@ using System.Text.Json;
|
||||||
using VideoAnalysisCore.Model;
|
using VideoAnalysisCore.Model;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using VideoAnalysisCore.Enum;
|
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using VideoAnalysisCore.Model.Dto;
|
using VideoAnalysisCore.Model.Dto;
|
||||||
using VideoAnalysisCore.AICore.GPT.Dto;
|
using VideoAnalysisCore.AICore.GPT.Dto;
|
||||||
|
|
@ -11,6 +10,7 @@ using VideoAnalysisCore.AICore.GPT;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using VideoAnalysisCore.AICore.SherpaOnnx;
|
using VideoAnalysisCore.AICore.SherpaOnnx;
|
||||||
using VideoAnalysisCore.Model.蓝鲸智库;
|
using VideoAnalysisCore.Model.蓝鲸智库;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.AICore.GPT.ChatGPT
|
namespace VideoAnalysisCore.AICore.GPT.ChatGPT
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@ using System.Text.Json;
|
||||||
using VideoAnalysisCore.Model;
|
using VideoAnalysisCore.Model;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using VideoAnalysisCore.Enum;
|
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using VideoAnalysisCore.Model.Dto;
|
using VideoAnalysisCore.Model.Dto;
|
||||||
using VideoAnalysisCore.AICore.GPT.Dto;
|
using VideoAnalysisCore.AICore.GPT.Dto;
|
||||||
|
|
@ -11,6 +10,7 @@ using System.Threading.Tasks;
|
||||||
using VideoAnalysisCore.AICore.GPT.ChatGPT;
|
using VideoAnalysisCore.AICore.GPT.ChatGPT;
|
||||||
using VideoAnalysisCore.AICore.SherpaOnnx;
|
using VideoAnalysisCore.AICore.SherpaOnnx;
|
||||||
using VideoAnalysisCore.Model.蓝鲸智库;
|
using VideoAnalysisCore.Model.蓝鲸智库;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.AICore.GPT.DeepSeek
|
namespace VideoAnalysisCore.AICore.GPT.DeepSeek
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -4,8 +4,8 @@ using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using VideoAnalysisCore.Enum;
|
|
||||||
using VideoAnalysisCore.Model.Dto;
|
using VideoAnalysisCore.Model.Dto;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.AICore.GPT.Dto
|
namespace VideoAnalysisCore.AICore.GPT.Dto
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,6 @@ using System.Text;
|
||||||
using FFmpeg.NET.Services;
|
using FFmpeg.NET.Services;
|
||||||
using Microsoft.Extensions.Primitives;
|
using Microsoft.Extensions.Primitives;
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using VideoAnalysisCore.Enum;
|
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using FreeRedis;
|
using FreeRedis;
|
||||||
using VideoAnalysisCore.Model.Dto;
|
using VideoAnalysisCore.Model.Dto;
|
||||||
|
|
@ -17,6 +16,7 @@ using SqlSugar.IOC;
|
||||||
using VideoAnalysisCore.AICore.GPT.Dto;
|
using VideoAnalysisCore.AICore.GPT.Dto;
|
||||||
using VideoAnalysisCore.AICore.GPT;
|
using VideoAnalysisCore.AICore.GPT;
|
||||||
using VideoAnalysisCore.AICore.GPT.ChatGPT;
|
using VideoAnalysisCore.AICore.GPT.ChatGPT;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.AICore.GPT.KIMI
|
namespace VideoAnalysisCore.AICore.GPT.KIMI
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ using System.Text.RegularExpressions;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using VideoAnalysisCore.Common;
|
using VideoAnalysisCore.Common;
|
||||||
using VideoAnalysisCore.Model;
|
using VideoAnalysisCore.Model;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
using static System.Runtime.InteropServices.JavaScript.JSType;
|
using static System.Runtime.InteropServices.JavaScript.JSType;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.AICore.SherpaOnnx
|
namespace VideoAnalysisCore.AICore.SherpaOnnx
|
||||||
|
|
@ -267,7 +268,7 @@ namespace VideoAnalysisCore.AICore.SherpaOnnx
|
||||||
.Where(it => it.Id == long.Parse(task));
|
.Where(it => it.Id == long.Parse(task));
|
||||||
await RedisExpand.Redis.HMSetAsync(RedisExpandKey.Task(task), "Captions", res);
|
await RedisExpand.Redis.HMSetAsync(RedisExpandKey.Task(task), "Captions", res);
|
||||||
//RedisExpand.InsertChannel(Enum.RedisChannelEnum.ParsingSpeaker, task);
|
//RedisExpand.InsertChannel(Enum.RedisChannelEnum.ParsingSpeaker, task);
|
||||||
RedisExpand.InsertChannel(Enum.RedisChannelEnum.ChatModelAnalysis, task);
|
RedisExpand.InsertChannel(RedisChannelEnum.ChatModelAnalysis, task);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@ using SherpaOnnx;
|
||||||
using SqlSugar.IOC;
|
using SqlSugar.IOC;
|
||||||
using VideoAnalysisCore.Model;
|
using VideoAnalysisCore.Model;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.AICore.SherpaOnnx
|
namespace VideoAnalysisCore.AICore.SherpaOnnx
|
||||||
{
|
{
|
||||||
|
|
@ -81,7 +82,7 @@ namespace VideoAnalysisCore.AICore.SherpaOnnx
|
||||||
.SetColumns(it => it.Speaker == speakerStr)
|
.SetColumns(it => it.Speaker == speakerStr)
|
||||||
.Where(it => it.Id == long.Parse(task));
|
.Where(it => it.Id == long.Parse(task));
|
||||||
//加入下一队列
|
//加入下一队列
|
||||||
RedisExpand.InsertChannel(Enum.RedisChannelEnum.ChatModelAnalysis, task);
|
RedisExpand.InsertChannel(RedisChannelEnum.ChatModelAnalysis, task);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ using System.Linq;
|
||||||
using Whisper.net;
|
using Whisper.net;
|
||||||
using Whisper.net.Ggml;
|
using Whisper.net.Ggml;
|
||||||
using Whisper.net.Wave;
|
using Whisper.net.Wave;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.AICore.Whisper
|
namespace VideoAnalysisCore.AICore.Whisper
|
||||||
{
|
{
|
||||||
|
|
@ -45,7 +46,7 @@ namespace VideoAnalysisCore.AICore.Whisper
|
||||||
res.Add(new WhisperResDto(segment));
|
res.Add(new WhisperResDto(segment));
|
||||||
}
|
}
|
||||||
RedisExpand.Redis.HMSet(RedisExpandKey.Task(task), "Captions", res);
|
RedisExpand.Redis.HMSet(RedisExpandKey.Task(task), "Captions", res);
|
||||||
RedisExpand.InsertChannel(Enum.RedisChannelEnum.ParsingSpeaker, task);
|
RedisExpand.InsertChannel(RedisChannelEnum.ParsingSpeaker, task);
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 检测语言的方法
|
/// 检测语言的方法
|
||||||
|
|
|
||||||
|
|
@ -15,10 +15,9 @@ using System.Text.RegularExpressions;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using UserCenter.Model.Interface;
|
using UserCenter.Model.Interface;
|
||||||
using VideoAnalysisCore.AICore.SherpaOnnx;
|
using VideoAnalysisCore.AICore.SherpaOnnx;
|
||||||
using VideoAnalysisCore.Enum;
|
|
||||||
using VideoAnalysisCore.Interface;
|
|
||||||
using VideoAnalysisCore.Model;
|
|
||||||
using VideoAnalysisCore.Model.Dto;
|
using VideoAnalysisCore.Model.Dto;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
using VideoAnalysisCore.Model.Interface;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.Common
|
namespace VideoAnalysisCore.Common
|
||||||
{
|
{
|
||||||
|
|
@ -406,7 +405,9 @@ namespace VideoAnalysisCore.Common
|
||||||
/// 数据库配置
|
/// 数据库配置
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DBConfig DB { get; set; } = new DBConfig();
|
public DBConfig DB { get; set; } = new DBConfig();
|
||||||
|
/// <summary>
|
||||||
|
/// 其他数据库配置
|
||||||
|
/// </summary>
|
||||||
public DBConfig[] OtherDBArr { get; set; } = Array.Empty<DBConfig>();
|
public DBConfig[] OtherDBArr { get; set; } = Array.Empty<DBConfig>();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -17,14 +17,14 @@ namespace VideoAnalysisCore.Common
|
||||||
{
|
{
|
||||||
|
|
||||||
service.AddScheduler();
|
service.AddScheduler();
|
||||||
service.AddTransient<UnprocessedVideoJob>();
|
service.AddTransient<NodeSubscriptionJob>();
|
||||||
}
|
}
|
||||||
public static void Run(IServiceProvider provider)
|
public static void Run(IServiceProvider provider)
|
||||||
{
|
{
|
||||||
provider.UseScheduler(scheduler =>
|
provider.UseScheduler(scheduler =>
|
||||||
{
|
{
|
||||||
//每5分钟执行一次 未处理视频扫描
|
//每5分钟执行一次 未处理视频扫描
|
||||||
scheduler.Schedule<UnprocessedVideoJob>().EveryFiveMinutes();
|
scheduler.Schedule<NodeSubscriptionJob>().EveryFiveMinutes();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ using System.IO;
|
||||||
using System.Net;
|
using System.Net;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using VideoAnalysisCore.Model;
|
using VideoAnalysisCore.Model;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.Common
|
namespace VideoAnalysisCore.Common
|
||||||
{
|
{
|
||||||
|
|
@ -153,7 +154,7 @@ namespace VideoAnalysisCore.Common
|
||||||
else if (download.Status == DownloadStatus.Completed)
|
else if (download.Status == DownloadStatus.Completed)
|
||||||
{
|
{
|
||||||
//加入下一队列
|
//加入下一队列
|
||||||
RedisExpand.InsertChannel(Enum.RedisChannelEnum.SeparateAudio, task);
|
RedisExpand.InsertChannel(RedisChannelEnum.SeparateAudio, task);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -17,9 +17,9 @@ using VideoAnalysisCore.AICore.GPT.Dto;
|
||||||
//using VideoAnalysisCore.AICore.FFMPGE;
|
//using VideoAnalysisCore.AICore.FFMPGE;
|
||||||
using VideoAnalysisCore.AICore.SherpaOnnx;
|
using VideoAnalysisCore.AICore.SherpaOnnx;
|
||||||
using VideoAnalysisCore.AICore.Whisper;
|
using VideoAnalysisCore.AICore.Whisper;
|
||||||
using VideoAnalysisCore.Enum;
|
|
||||||
using VideoAnalysisCore.Model;
|
using VideoAnalysisCore.Model;
|
||||||
using VideoAnalysisCore.Model.Dto;
|
using VideoAnalysisCore.Model.Dto;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.Common
|
namespace VideoAnalysisCore.Common
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
||||||
namespace VideoAnalysisCore.Enum
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// 得分类型
|
|
||||||
/// </summary>
|
|
||||||
public enum ScoreTypeEnum
|
|
||||||
{
|
|
||||||
优=75,
|
|
||||||
良=50,
|
|
||||||
中=25,
|
|
||||||
差=0,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -0,0 +1,68 @@
|
||||||
|
using Coravel.Invocable;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using VideoAnalysisCore.Common;
|
||||||
|
using VideoAnalysisCore.Model;
|
||||||
|
using VideoAnalysisCore.Model.蓝鲸智库;
|
||||||
|
|
||||||
|
namespace VideoAnalysisCore.Job
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// [蓝鲸智库] 查找未处理的视频
|
||||||
|
/// </summary>
|
||||||
|
public class NodeSubscriptionJob : IInvocable
|
||||||
|
{
|
||||||
|
private readonly Repository<NodeSubscription> nodesubscriptionDB;
|
||||||
|
private readonly Repository<Attachments> attachmentsDB;
|
||||||
|
public NodeSubscriptionJob(Repository<Attachments> videoTaskDB, Repository<NodeSubscription> nodesubscriptionDB)
|
||||||
|
{
|
||||||
|
this.attachmentsDB = videoTaskDB;
|
||||||
|
this.nodesubscriptionDB = nodesubscriptionDB;
|
||||||
|
}
|
||||||
|
public async Task Invoke()
|
||||||
|
{
|
||||||
|
Console.WriteLine($"{DateTime.Now} Invoke=>{this.GetType().FullName}");
|
||||||
|
|
||||||
|
var tasks = await nodesubscriptionDB.GetListAsync(s => s.Enable);
|
||||||
|
foreach (var item in tasks)
|
||||||
|
{
|
||||||
|
var fileNodeId = item.NodeId;
|
||||||
|
var data = attachmentsDB.Context.Ado
|
||||||
|
.SqlQuery<Attachments>($"""
|
||||||
|
SELECT
|
||||||
|
*
|
||||||
|
FROM
|
||||||
|
Attachments
|
||||||
|
WHERE
|
||||||
|
Id IN (
|
||||||
|
SELECT
|
||||||
|
AttachmentsId
|
||||||
|
FROM
|
||||||
|
Material
|
||||||
|
WHERE
|
||||||
|
id IN (
|
||||||
|
SELECT
|
||||||
|
MaterialId
|
||||||
|
FROM
|
||||||
|
FileContentMaterial
|
||||||
|
WHERE
|
||||||
|
FileContentId IN ( SELECT id FROM FileContent WHERE BagId IN ( SELECT Id FROM FileDirectory WHERE Id={fileNodeId} AND types = 1 AND DeleteState = 0 ) )
|
||||||
|
AND DeleteState = 0
|
||||||
|
AND ( MaterialName NOT LIKE '%PPT%' OR MaterialName NOT LIKE '%ppt%' )
|
||||||
|
)
|
||||||
|
)
|
||||||
|
AND Type = '录播视频'
|
||||||
|
AND (
|
||||||
|
NAME NOT LIKE '%PPT%'
|
||||||
|
OR NAME NOT LIKE '%ppt%'
|
||||||
|
)
|
||||||
|
""");
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
using Coravel.Invocable;
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
using VideoAnalysisCore.Common;
|
|
||||||
using VideoAnalysisCore.Model;
|
|
||||||
|
|
||||||
namespace VideoAnalysisCore.Job
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// 查找未处理的视频
|
|
||||||
/// </summary>
|
|
||||||
public class UnprocessedVideoJob : IInvocable
|
|
||||||
{
|
|
||||||
private readonly Repository<VideoTask> videoTaskDB;
|
|
||||||
public UnprocessedVideoJob(Repository<VideoTask> videoTaskDB)
|
|
||||||
{
|
|
||||||
this.videoTaskDB = videoTaskDB;
|
|
||||||
}
|
|
||||||
public async Task Invoke()
|
|
||||||
{
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -6,7 +6,7 @@ using System.Net;
|
||||||
using UserCenter.Model.Enum;
|
using UserCenter.Model.Enum;
|
||||||
using VideoAnalysisCore.AICore.SherpaOnnx;
|
using VideoAnalysisCore.AICore.SherpaOnnx;
|
||||||
using VideoAnalysisCore.Enum;
|
using VideoAnalysisCore.Enum;
|
||||||
using VideoAnalysisCore.Interface;
|
using VideoAnalysisCore.Model.Interface;
|
||||||
using Whisper.net;
|
using Whisper.net;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.Model
|
namespace VideoAnalysisCore.Model
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.Model
|
namespace VideoAnalysisCore.Model.Dto
|
||||||
{
|
{
|
||||||
public class HotwordMode
|
public class HotwordMode
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
using AntDesign;
|
using AntDesign;
|
||||||
using VideoAnalysisCore.AICore.GPT.Dto;
|
using VideoAnalysisCore.AICore.GPT.Dto;
|
||||||
using VideoAnalysisCore.Enum;
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.Model.Dto
|
namespace VideoAnalysisCore.Model.Dto
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -6,9 +6,9 @@ using System.ComponentModel;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using VideoAnalysisCore.Enum;
|
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using UserCenter.Model.Enum;
|
using UserCenter.Model.Enum;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.Model.Dto
|
namespace VideoAnalysisCore.Model.Dto
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.Enum
|
namespace VideoAnalysisCore.Model.Enum
|
||||||
{
|
{
|
||||||
public enum QuestionTypeEnum
|
public enum QuestionTypeEnum
|
||||||
{
|
{
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
namespace VideoAnalysisCore.Enum
|
namespace VideoAnalysisCore.Model.Enum
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// redis 频道
|
/// redis 频道
|
||||||
|
|
@ -0,0 +1,13 @@
|
||||||
|
namespace VideoAnalysisCore.Model.Enum
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 得分类型
|
||||||
|
/// </summary>
|
||||||
|
public enum ScoreTypeEnum
|
||||||
|
{
|
||||||
|
优 = 75,
|
||||||
|
良 = 50,
|
||||||
|
中 = 25,
|
||||||
|
差 = 0,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -5,7 +5,7 @@ using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.Enum
|
namespace VideoAnalysisCore.Model.Enum
|
||||||
{
|
{
|
||||||
public enum TaskTypeEnum
|
public enum TaskTypeEnum
|
||||||
{
|
{
|
||||||
|
|
@ -4,7 +4,7 @@ using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.Enum
|
namespace VideoAnalysisCore.Model.Enum
|
||||||
{
|
{
|
||||||
public enum TeacherAnswerTypeEnum
|
public enum TeacherAnswerTypeEnum
|
||||||
{
|
{
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
namespace VideoAnalysisCore.Enum
|
namespace VideoAnalysisCore.Model.Enum
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 时间线类型
|
/// 时间线类型
|
||||||
|
|
@ -4,7 +4,7 @@ using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.Interface
|
namespace VideoAnalysisCore.Model.Interface
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 表属于IDB
|
/// 表属于IDB
|
||||||
|
|
@ -0,0 +1,55 @@
|
||||||
|
using AntDesign;
|
||||||
|
using SqlSugar;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using System.ComponentModel.DataAnnotations;
|
||||||
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
|
using System.Net;
|
||||||
|
using UserCenter.Model.Enum;
|
||||||
|
using VideoAnalysisCore.AICore.SherpaOnnx;
|
||||||
|
using VideoAnalysisCore.Model.Enum;
|
||||||
|
using VideoAnalysisCore.Model.Interface;
|
||||||
|
using Whisper.net;
|
||||||
|
|
||||||
|
namespace VideoAnalysisCore.Model
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// [蓝鲸智库]文件节点订阅
|
||||||
|
/// </summary>
|
||||||
|
[SugarTable("nodesubscription")]
|
||||||
|
public class NodeSubscription: IDB
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Id
|
||||||
|
/// </summary>
|
||||||
|
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
|
||||||
|
[DisplayName("编号")]
|
||||||
|
public long Id { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 文件节点Id
|
||||||
|
/// </summary>
|
||||||
|
[DisplayName("文件节点Id"), Required]
|
||||||
|
public long NodeId { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 绑定学科
|
||||||
|
/// </summary>
|
||||||
|
[DisplayName("绑定学科")]
|
||||||
|
public TaskTypeEnum TaskType { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 是否启用
|
||||||
|
/// </summary>
|
||||||
|
[DisplayName("是否启用")]
|
||||||
|
public bool Enable { get; set; } = true;
|
||||||
|
/// <summary>
|
||||||
|
/// 最后执行的id值
|
||||||
|
/// </summary>
|
||||||
|
[DisplayName("最后执行的id值")]
|
||||||
|
public long LastId { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 创建时间
|
||||||
|
/// </summary>
|
||||||
|
[DisplayName("创建时间")]
|
||||||
|
public DateTime CreateTime { get; set; } =DateTime.Now;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -6,7 +6,7 @@ using UserCenter.Model.Enum;
|
||||||
using VideoAnalysisCore.AICore.GPT.Dto;
|
using VideoAnalysisCore.AICore.GPT.Dto;
|
||||||
using VideoAnalysisCore.AICore.SherpaOnnx;
|
using VideoAnalysisCore.AICore.SherpaOnnx;
|
||||||
using VideoAnalysisCore.Enum;
|
using VideoAnalysisCore.Enum;
|
||||||
using VideoAnalysisCore.Interface;
|
using VideoAnalysisCore.Model.Interface;
|
||||||
using Whisper.net;
|
using Whisper.net;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.Model
|
namespace VideoAnalysisCore.Model
|
||||||
|
|
|
||||||
|
|
@ -5,8 +5,8 @@ using System.Text.Json;
|
||||||
using UserCenter.Model.Enum;
|
using UserCenter.Model.Enum;
|
||||||
using VideoAnalysisCore.AICore.GPT.Dto;
|
using VideoAnalysisCore.AICore.GPT.Dto;
|
||||||
using VideoAnalysisCore.AICore.SherpaOnnx;
|
using VideoAnalysisCore.AICore.SherpaOnnx;
|
||||||
using VideoAnalysisCore.Enum;
|
using VideoAnalysisCore.Model.Enum;
|
||||||
using VideoAnalysisCore.Interface;
|
using VideoAnalysisCore.Model.Interface;
|
||||||
using Whisper.net;
|
using Whisper.net;
|
||||||
|
|
||||||
namespace VideoAnalysisCore.Model
|
namespace VideoAnalysisCore.Model
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ using System.Text;
|
||||||
using SqlSugar;
|
using SqlSugar;
|
||||||
using VideoAnalysisCore.Interface;
|
using VideoAnalysisCore.Interface;
|
||||||
|
|
||||||
namespace App.Model
|
namespace VideoAnalysisCore.Model.蓝鲸智库
|
||||||
{
|
{
|
||||||
///<summary>
|
///<summary>
|
||||||
///文件附件
|
///文件附件
|
||||||
|
|
@ -16,10 +16,10 @@ namespace App.Model
|
||||||
public Attachments()
|
public Attachments()
|
||||||
{
|
{
|
||||||
|
|
||||||
this.SchoolId = Convert.ToInt64("0");
|
SchoolId = Convert.ToInt64("0");
|
||||||
this.Sort = Convert.ToInt32("0");
|
Sort = Convert.ToInt32("0");
|
||||||
this.CreateTime = DateTime.Now;
|
CreateTime = DateTime.Now;
|
||||||
this.DeleteState = false;
|
DeleteState = false;
|
||||||
|
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -175,7 +175,7 @@ namespace App.Model
|
||||||
[SugarColumn(ColumnDescription = "新增用户角色id", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "新增用户角色id", IsNullable = true)]
|
||||||
public long AdminRoleId { get; set; }
|
public long AdminRoleId { get; set; }
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,25 +4,26 @@ using System.Text;
|
||||||
using SqlSugar;
|
using SqlSugar;
|
||||||
using VideoAnalysisCore.Interface;
|
using VideoAnalysisCore.Interface;
|
||||||
|
|
||||||
namespace App.Model
|
namespace VideoAnalysisCore.Model.蓝鲸智库
|
||||||
{
|
{
|
||||||
///<summary>
|
///<summary>
|
||||||
/// 文件内容表
|
/// 文件内容表
|
||||||
///</summary>
|
///</summary>
|
||||||
[SugarTable("FileContent")]
|
[SugarTable("FileContent")]
|
||||||
[Tenant("1002")]
|
[Tenant("1002")]
|
||||||
public partial class FileContent
|
public partial class FileContent
|
||||||
{
|
{
|
||||||
public FileContent(){
|
public FileContent()
|
||||||
|
{
|
||||||
|
|
||||||
this.Sort =Convert.ToInt32("0");
|
Sort = Convert.ToInt32("0");
|
||||||
this.CreateTime =DateTime.Now;
|
CreateTime = DateTime.Now;
|
||||||
this.DeleteState =false;
|
DeleteState = false;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[SugarColumn(IsPrimaryKey=true,IsIdentity=true)]
|
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
|
||||||
public long Id {get;set;}
|
public long Id { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:内容名称
|
/// Desc:内容名称
|
||||||
|
|
@ -30,7 +31,7 @@ namespace App.Model
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "内容名称", ColumnDataType = "nvarchar(500)", IsNullable = false)]
|
[SugarColumn(ColumnDescription = "内容名称", ColumnDataType = "nvarchar(500)", IsNullable = false)]
|
||||||
public string FileName {get;set;}
|
public string FileName { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:
|
/// Desc:
|
||||||
|
|
@ -38,23 +39,23 @@ namespace App.Model
|
||||||
/// Nullable:True
|
/// Nullable:True
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "学校id", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "学校id", IsNullable = true)]
|
||||||
public long? SchoolId {get;set;}
|
public long? SchoolId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:
|
/// Desc:
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:True
|
/// Nullable:True
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "学校名称", ColumnDataType = "nvarchar(100)", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "学校名称", ColumnDataType = "nvarchar(100)", IsNullable = true)]
|
||||||
public string SchoolName {get;set;}
|
public string SchoolName { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:年级
|
/// Desc:年级
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:True
|
/// Nullable:True
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "年级", ColumnDataType = "nvarchar(30)", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "年级", ColumnDataType = "nvarchar(30)", IsNullable = true)]
|
||||||
public string GradeName {get;set;}
|
public string GradeName { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:科目
|
/// Desc:科目
|
||||||
|
|
@ -63,44 +64,44 @@ namespace App.Model
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "科目", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "科目", IsNullable = true)]
|
||||||
|
|
||||||
public int? SubjectId {get;set;}
|
public int? SubjectId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:
|
/// Desc:
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:True
|
/// Nullable:True
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "科目名称", ColumnDataType = "nvarchar(50)", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "科目名称", ColumnDataType = "nvarchar(50)", IsNullable = true)]
|
||||||
public string SubjectName {get;set;}
|
public string SubjectName { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:文件系统目录id
|
/// Desc:文件系统目录id
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "件系统目录id", IsNullable = false)]
|
[SugarColumn(ColumnDescription = "件系统目录id", IsNullable = false)]
|
||||||
public long FileDirectoryId {get;set;}
|
public long FileDirectoryId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:
|
/// Desc:
|
||||||
/// Default:0
|
/// Default:0
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "排序", IsNullable = false, DefaultValue = "0")]
|
[SugarColumn(ColumnDescription = "排序", IsNullable = false, DefaultValue = "0")]
|
||||||
public int Sort {get;set;}
|
public int Sort { get; set; }
|
||||||
|
|
||||||
|
|
||||||
public DateTime CreateTime {get;set;}
|
|
||||||
|
|
||||||
public bool DeleteState {get;set;}
|
|
||||||
|
|
||||||
/// <summary>
|
public DateTime CreateTime { get; set; }
|
||||||
/// Desc:文件包Id
|
|
||||||
/// Default:
|
public bool DeleteState { get; set; }
|
||||||
/// Nullable:False
|
|
||||||
/// </summary>
|
/// <summary>
|
||||||
|
/// Desc:文件包Id
|
||||||
|
/// Default:
|
||||||
|
/// Nullable:False
|
||||||
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "文件包id", IsNullable = false)]
|
[SugarColumn(ColumnDescription = "文件包id", IsNullable = false)]
|
||||||
public long BagId {get;set;}
|
public long BagId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:作者
|
/// Desc:作者
|
||||||
|
|
@ -108,7 +109,7 @@ namespace App.Model
|
||||||
/// Nullable:True
|
/// Nullable:True
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "作者", ColumnDataType = "nvarchar(200)", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "作者", ColumnDataType = "nvarchar(200)", IsNullable = true)]
|
||||||
public string Author {get;set;}
|
public string Author { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 是否可以下载
|
/// 是否可以下载
|
||||||
|
|
@ -117,12 +118,12 @@ namespace App.Model
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 管理员id
|
/// 管理员id
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "管理员id", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "管理员id", IsNullable = true)]
|
||||||
public long? AdminId { get; set; }
|
public long? AdminId { get; set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 管理员角色id
|
/// 管理员角色id
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "管理员角色id", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "管理员角色id", IsNullable = true)]
|
||||||
public long? AdminRoleId { get; set; }
|
public long? AdminRoleId { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,56 +4,57 @@ using System.Text;
|
||||||
using SqlSugar;
|
using SqlSugar;
|
||||||
using VideoAnalysisCore.Interface;
|
using VideoAnalysisCore.Interface;
|
||||||
|
|
||||||
namespace App.Model
|
namespace VideoAnalysisCore.Model.蓝鲸智库
|
||||||
{
|
{
|
||||||
///<summary>
|
///<summary>
|
||||||
///
|
///
|
||||||
///</summary>
|
///</summary>
|
||||||
[SugarTable("FileContentMaterial")]
|
[SugarTable("FileContentMaterial")]
|
||||||
[Tenant("1002")]
|
[Tenant("1002")]
|
||||||
public partial class FileContentMaterial
|
public partial class FileContentMaterial
|
||||||
{
|
{
|
||||||
public FileContentMaterial(){
|
public FileContentMaterial()
|
||||||
|
{
|
||||||
|
|
||||||
this.CreateTime =DateTime.Now;
|
CreateTime = DateTime.Now;
|
||||||
this.DeleteState =false;
|
DeleteState = false;
|
||||||
|
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:文件系统内容
|
/// Desc:文件系统内容
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(IsPrimaryKey=true,IsIdentity=true)]
|
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
|
||||||
public long Id {get;set;}
|
public long Id { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:文件系统内容
|
/// Desc:文件系统内容
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public long FileContentId {get;set;}
|
public long FileContentId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:素材id
|
/// Desc:素材id
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public long MaterialId {get;set;}
|
public long MaterialId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:
|
/// Desc:
|
||||||
/// Default:DateTime.Now
|
/// Default:DateTime.Now
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTime CreateTime {get;set;}
|
public DateTime CreateTime { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:
|
/// Desc:
|
||||||
/// Default:0
|
/// Default:0
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public bool DeleteState {get;set;}
|
public bool DeleteState { get; set; }
|
||||||
|
|
||||||
public int Sort { get; set; }
|
public int Sort { get; set; }
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,31 +4,32 @@ using System.Text;
|
||||||
using SqlSugar;
|
using SqlSugar;
|
||||||
using VideoAnalysisCore.Interface;
|
using VideoAnalysisCore.Interface;
|
||||||
|
|
||||||
namespace App.Model
|
namespace VideoAnalysisCore.Model.蓝鲸智库
|
||||||
{
|
{
|
||||||
///<summary>
|
///<summary>
|
||||||
/// 文件目录表
|
/// 文件目录表
|
||||||
///</summary>
|
///</summary>
|
||||||
[SugarTable("FileDirectory")]
|
[SugarTable("FileDirectory")]
|
||||||
[Tenant("1002")]
|
[Tenant("1002")]
|
||||||
public partial class FileDirectory
|
public partial class FileDirectory
|
||||||
{
|
{
|
||||||
public FileDirectory(){
|
public FileDirectory()
|
||||||
|
{
|
||||||
|
|
||||||
this.State =Convert.ToInt32("1");
|
State = Convert.ToInt32("1");
|
||||||
this.IsCheckedSelect =true;
|
IsCheckedSelect = true;
|
||||||
this.IsLastNode =false;
|
IsLastNode = false;
|
||||||
this.ParentId =Convert.ToInt64("0");
|
ParentId = Convert.ToInt64("0");
|
||||||
this.CreateTime =DateTime.Now;
|
CreateTime = DateTime.Now;
|
||||||
this.DeleteState =false;
|
DeleteState = false;
|
||||||
this.AliasName =Convert.ToString("");
|
AliasName = Convert.ToString("");
|
||||||
this.IsPublic =false;
|
IsPublic = false;
|
||||||
this.Types =Convert.ToInt32("-1");
|
Types = Convert.ToInt32("-1");
|
||||||
this.Code =Convert.ToString("");
|
Code = Convert.ToString("");
|
||||||
|
|
||||||
}
|
}
|
||||||
[SugarColumn(IsPrimaryKey=true,IsIdentity=true)]
|
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
|
||||||
public long Id {get;set;}
|
public long Id { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:名称
|
/// Desc:名称
|
||||||
|
|
@ -36,116 +37,116 @@ namespace App.Model
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "名称", ColumnDataType = "nvarchar(50)", IsNullable = false)]
|
[SugarColumn(ColumnDescription = "名称", ColumnDataType = "nvarchar(50)", IsNullable = false)]
|
||||||
public string Name {get;set;}
|
public string Name { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:排序
|
/// Desc:排序
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "排序", IsNullable = false)]
|
[SugarColumn(ColumnDescription = "排序", IsNullable = false)]
|
||||||
public int Sort {get;set;}
|
public int Sort { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:结构状态 1=显示
|
/// Desc:结构状态 1=显示
|
||||||
/// Default:1
|
/// Default:1
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "结构状态 1=显示", IsNullable = false,DefaultValue ="1")]
|
[SugarColumn(ColumnDescription = "结构状态 1=显示", IsNullable = false, DefaultValue = "1")]
|
||||||
public int State {get;set;}
|
public int State { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:是否自动授权
|
/// Desc:是否自动授权
|
||||||
/// Default:1
|
/// Default:1
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "是否自动授权", IsNullable = false, DefaultValue = "1")]
|
[SugarColumn(ColumnDescription = "是否自动授权", IsNullable = false, DefaultValue = "1")]
|
||||||
public bool IsCheckedSelect {get;set;}
|
public bool IsCheckedSelect { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:是否最后一级节点
|
/// Desc:是否最后一级节点
|
||||||
/// Default:0
|
/// Default:0
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "是否最后一级节点", IsNullable = false, DefaultValue = "0")]
|
[SugarColumn(ColumnDescription = "是否最后一级节点", IsNullable = false, DefaultValue = "0")]
|
||||||
public bool IsLastNode {get;set;}
|
public bool IsLastNode { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:上级id
|
/// Desc:上级id
|
||||||
/// Default:0
|
/// Default:0
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "上级id", IsNullable = false, DefaultValue = "0")]
|
[SugarColumn(ColumnDescription = "上级id", IsNullable = false, DefaultValue = "0")]
|
||||||
public long ParentId {get;set;}
|
public long ParentId { get; set; }
|
||||||
|
|
||||||
|
|
||||||
public DateTime CreateTime {get;set;}
|
|
||||||
|
|
||||||
public bool DeleteState {get;set;}
|
|
||||||
|
|
||||||
/// <summary>
|
public DateTime CreateTime { get; set; }
|
||||||
/// Desc:别名
|
|
||||||
/// Default:
|
public bool DeleteState { get; set; }
|
||||||
/// Nullable:False
|
|
||||||
/// </summary>
|
/// <summary>
|
||||||
|
/// Desc:别名
|
||||||
|
/// Default:
|
||||||
|
/// Nullable:False
|
||||||
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "别名", ColumnDataType = "nvarchar(50)", IsNullable = false)]
|
[SugarColumn(ColumnDescription = "别名", ColumnDataType = "nvarchar(50)", IsNullable = false)]
|
||||||
public string AliasName {get;set;}
|
public string AliasName { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:是否公开
|
/// Desc:是否公开
|
||||||
/// Default:0
|
/// Default:0
|
||||||
/// Nullable:True
|
/// Nullable:True
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "是否公开", IsNullable = true, DefaultValue = "0")]
|
[SugarColumn(ColumnDescription = "是否公开", IsNullable = true, DefaultValue = "0")]
|
||||||
public bool? IsPublic {get;set;}
|
public bool? IsPublic { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:其他=-1,目录=0,课程=1,章=2,节=3
|
/// Desc:其他=-1,目录=0,课程=1,章=2,节=3
|
||||||
/// Default:-1
|
/// Default:-1
|
||||||
/// Nullable:True
|
/// Nullable:True
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "其他=-1,目录=0,课程=1,章=2,节=3", IsNullable = true, DefaultValue = "-1")]
|
[SugarColumn(ColumnDescription = "其他=-1,目录=0,课程=1,章=2,节=3", IsNullable = true, DefaultValue = "-1")]
|
||||||
public int? Types {get;set;}
|
public int? Types { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:
|
/// Desc:
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:True
|
/// Nullable:True
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "更新时间", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "更新时间", IsNullable = true)]
|
||||||
public DateTime? UpdateTime {get;set;}
|
public DateTime? UpdateTime { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:课程id(来源courseinfo)
|
/// Desc:课程id(来源courseinfo)
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:True
|
/// Nullable:True
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "课程id(来源courseinfo)", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "课程id(来源courseinfo)", IsNullable = true)]
|
||||||
public long? CourseId {get;set;}
|
public long? CourseId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:教材版本id(来源 textboox_versions)
|
/// Desc:教材版本id(来源 textboox_versions)
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:True
|
/// Nullable:True
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "教材版本id(来源 textboox_versions)", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "教材版本id(来源 textboox_versions)", IsNullable = true)]
|
||||||
public long? VersionsId {get;set;}
|
public long? VersionsId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:
|
/// Desc:
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:True
|
/// Nullable:True
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "", ColumnDataType = "nvarchar(50)", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "", ColumnDataType = "nvarchar(50)", IsNullable = true)]
|
||||||
public string Code {get;set;}
|
public string Code { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Desc:根节点id
|
/// Desc:根节点id
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:True
|
/// Nullable:True
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "根节点id", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "根节点id", IsNullable = true)]
|
||||||
public long? RootId {get;set;}
|
public long? RootId { get; set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 管理员id
|
/// 管理员id
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
||||||
|
|
@ -4,24 +4,24 @@ using System.Text;
|
||||||
using SqlSugar;
|
using SqlSugar;
|
||||||
using VideoAnalysisCore.Interface;
|
using VideoAnalysisCore.Interface;
|
||||||
|
|
||||||
namespace App.Model
|
namespace VideoAnalysisCore.Model.蓝鲸智库
|
||||||
{
|
{
|
||||||
///<summary>
|
///<summary>
|
||||||
///素材表
|
///素材表
|
||||||
///</summary>
|
///</summary>
|
||||||
[SugarTable("Material")]
|
[SugarTable("Material")]
|
||||||
[Tenant("1002")]
|
[Tenant("1002")]
|
||||||
public partial class Material
|
public partial class Material
|
||||||
{
|
{
|
||||||
public Material()
|
public Material()
|
||||||
{
|
{
|
||||||
|
|
||||||
this.TagId = Convert.ToInt64("0");
|
TagId = Convert.ToInt64("0");
|
||||||
this.CreateTime = DateTime.Now;
|
CreateTime = DateTime.Now;
|
||||||
this.DeleteState = false;
|
DeleteState = false;
|
||||||
this.DownState = false;
|
DownState = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
|
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
|
||||||
public long Id { get; set; }
|
public long Id { get; set; }
|
||||||
|
|
||||||
|
|
@ -46,7 +46,7 @@ namespace App.Model
|
||||||
/// Default:0
|
/// Default:0
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "素标签Id", IsNullable = false,DefaultValue ="0")]
|
[SugarColumn(ColumnDescription = "素标签Id", IsNullable = false, DefaultValue = "0")]
|
||||||
public long TagId { get; set; }
|
public long TagId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -62,7 +62,7 @@ namespace App.Model
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "附件id",IsNullable = false)]
|
[SugarColumn(ColumnDescription = "附件id", IsNullable = false)]
|
||||||
public long AttachmentsId { get; set; }
|
public long AttachmentsId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -72,9 +72,9 @@ namespace App.Model
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "内容", ColumnDataType = "nvarchar(max)", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "内容", ColumnDataType = "nvarchar(max)", IsNullable = true)]
|
||||||
public string Desc { get; set; }
|
public string Desc { get; set; }
|
||||||
|
|
||||||
public DateTime CreateTime { get; set; }
|
public DateTime CreateTime { get; set; }
|
||||||
|
|
||||||
public bool DeleteState { get; set; }
|
public bool DeleteState { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -88,10 +88,10 @@ namespace App.Model
|
||||||
/// Default:
|
/// Default:
|
||||||
/// Nullable:False
|
/// Nullable:False
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "新增用户名称",ColumnDataType = "nvarchar(50)")]
|
[SugarColumn(ColumnDescription = "新增用户名称", ColumnDataType = "nvarchar(50)")]
|
||||||
public string CreateUserName { get; set; }
|
public string CreateUserName { get; set; }
|
||||||
|
|
||||||
[SugarColumn(ColumnDescription = "学校id",IsNullable =true)]
|
[SugarColumn(ColumnDescription = "学校id", IsNullable = true)]
|
||||||
public long SchoolId { get; set; }
|
public long SchoolId { get; set; }
|
||||||
|
|
||||||
[SugarColumn(ColumnDescription = "学校名称", ColumnDataType = "nvarchar(50)", IsNullable = true)]
|
[SugarColumn(ColumnDescription = "学校名称", ColumnDataType = "nvarchar(50)", IsNullable = true)]
|
||||||
|
|
@ -99,12 +99,12 @@ namespace App.Model
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 是否可以下载
|
/// 是否可以下载
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "是否可以下载", DefaultValue ="0")]
|
[SugarColumn(ColumnDescription = "是否可以下载", DefaultValue = "0")]
|
||||||
public bool DownState { get; set; }
|
public bool DownState { get; set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 新增用户角色id
|
/// 新增用户角色id
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SugarColumn(ColumnDescription = "新增用户角色id",IsNullable =true)]
|
[SugarColumn(ColumnDescription = "新增用户角色id", IsNullable = true)]
|
||||||
public long AdminRoleId { get; set; }
|
public long AdminRoleId { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue