This commit is contained in:
owenchen committed 2026-09-09 16:31:34 +08:00
1 parent 75dc6fc980
commit 808042cf72
20 files changed
+484 -510

No files matched your search

@@ -803,6 +803,45 @@ namespace CloudBuilder.Master.Service
CreateFamilyGroupFolderDetail(folder, familyGroupFolders);
}
[PermissionOperate(name: MasterPermissionPolicy.DmsFile, operate: Operate.Insert)]
[UnitOfWork]
public void DeleteFamilyDmsFolder(FamilyDmsFileViewEntity familyDmsFile)
{
ISecurityGeneratorNumberService securityGeneratorNumberService = service.ServiceProvider.GetService<ISecurityGeneratorNumberService>()!;
IRepository<FamilyGroupFolderEntity> repositoryFamilyGroupFolder = repository.GetRepository<IRepository<FamilyGroupFolderEntity>>();
IRepository<DmsFolderEntity> repositoryFolder = repository.GetRepository<IRepository<DmsFolderEntity>>();
IRepository<DmsFolderMapEntity> repositoryFolderMap = repository.GetRepository<IRepository<DmsFolderMapEntity>>();
DmsFolderEntity folder;
DmsFolderMapEntity map;
DmsFileEntity entity;
FamilyGroupFolderEntity familyGroupFolder = repositoryFamilyGroupFolder.DetachedEntities.Where(x => x.FolderName == familyDmsFile.FolderName).FirstOrDefault()!;
repositoryFamilyGroupFolder.DeleteNow(familyGroupFolder);
//如果只是文件分享,则返回
if (familyDmsFile.IsDirectoryIndc == YesNoPolicy.NO) return;
folder = repositoryFolder.DetachedEntities.Where(x => x.FolderName == familyDmsFile.FolderName).FirstOrDefault()!;
repositoryFolder.DeleteNow(folder);
map = repositoryFolderMap.DetachedEntities.Where(x => x.FolderNameSon == folder.FolderName).FirstOrDefault()!;
repositoryFolderMap.DeleteNow(map);
entity = repository.DetachedEntities.Where(x => x.FileName == folder.FolderName).FirstOrDefault()!;
repository.DeleteNow(entity);
IRepository<FamilyFolderFavoriteEntity> repositoryFamilyFolderFavorite = repository.GetRepository<IRepository<FamilyFolderFavoriteEntity>>();
FamilyFolderFavoriteEntity[] folderFavorite = repositoryFamilyFolderFavorite.DetachedEntities.Where(x => x.FolderName == folder.FolderName).ToArray();
repositoryFamilyFolderFavorite.DeleteNow(folderFavorite);
}
[PermissionOperate(name: MasterPermissionPolicy.DmsFile, operate: Operate.Insert)]
[UnitOfWork]
public void CreateFamilyDmsFolder(FamilyDmsFileViewEntity familyDmsFile)
@@ -1201,14 +1240,9 @@ namespace CloudBuilder.Master.Service
{
if (File.Exists(fileName)) File.Delete(fileName);
}
string m3u8FilePath = Path.Combine(webRootPath, service.UserId, "m3u8", Path.GetFileNameWithoutExtension(dmsFile.OrderKey));
if (!Directory.Exists(m3u8FilePath))
{
Directory.CreateDirectory(m3u8FilePath);
}
string m3u8FullFile = Path.Combine(m3u8FilePath, "main.m3u8");
//生成m3u8
TsToM3u8(dmsFile.OrderKey, fullName, m3u8FullFile);
string m3u8FilePath = fullName.Replace(fileExtension, ".png");
//生成m3u8(暂不生成,只生成截图)
TsToM3u8(dmsFile.OrderKey, fullName, m3u8FilePath);
}
}
}
@@ -1254,7 +1288,7 @@ namespace CloudBuilder.Master.Service
public void TsToM3u8(string orderKey, string mp4Url, string m3u8Url, int videoLength = 6)
{
string para = string.Format(service.Configuration[ServiceSettingsPolicy.FfmpegPictrue], mp4Url, m3u8Url);
RunMyProcess(service.Configuration[ServiceSettingsPolicy.FfmpegPath], para.Replace(".m3u8", ".png"));
RunMyProcess(service.Configuration[ServiceSettingsPolicy.FfmpegPath], para);
return;
para = string.Format(service.Configuration["Ffmpeg:Arguments"], mp4Url, videoLength, m3u8Url);
//不直接转码视频文件,影响服务器性能,改为在闭时自动生成
@@ -1510,7 +1544,7 @@ namespace CloudBuilder.Master.Service
{
IRepository<FamilyGroupManagerUserViewEntity> repositoryFamilyGroupManager = repository.GetRepository<IRepository<FamilyGroupManagerUserViewEntity>>();
FamilyGroupManagerUserViewEntity[] ents = repositoryFamilyGroupManager.DetachedEntities.Where(x => x.UserName == service.UserId && x.ValidIndc=="Y").ToArray();
FamilyGroupManagerUserViewEntity[] ents = repositoryFamilyGroupManager.DetachedEntities.Where(x => x.UserName == service.UserId && x.ValidIndc == "Y").ToArray();
List<SelectOption> l = new List<SelectOption>();
SelectOption selectOption;
@@ -1536,7 +1570,7 @@ namespace CloudBuilder.Master.Service
IRepository<FamilyGroupEntity> repositoryFamilyGroup = repository.GetRepository<IRepository<FamilyGroupEntity>>();
FamilyGroupEntity group = repositoryFamilyGroup.DetachedEntities.Where(x => x.FamilyName == familyName && x.ValidIndc==YesNoPolicy.YES).FirstOrDefault()!;
FamilyGroupEntity group = repositoryFamilyGroup.DetachedEntities.Where(x => x.FamilyName == familyName && x.ValidIndc == YesNoPolicy.YES).FirstOrDefault()!;
if (group == null) return l.ToArray();
selectOption = new SelectOption();