fix
This commit is contained in:
parent
631dcdc2e8
commit
41d994ca32
@ -1039,11 +1039,10 @@ namespace ASC.Data.Storage.S3
|
|||||||
private async Task<IEnumerable<S3Object>> GetS3ObjectsAsync(string domain, string path = "", bool recycle = false)
|
private async Task<IEnumerable<S3Object>> GetS3ObjectsAsync(string domain, string path = "", bool recycle = false)
|
||||||
{
|
{
|
||||||
path = MakePath(domain, path) + '/';
|
path = MakePath(domain, path) + '/';
|
||||||
var tmp = await GetS3ObjectsByPathAsync(domain, path);
|
var s30Objects = await GetS3ObjectsByPathAsync(domain, path);
|
||||||
var obj = tmp.ToList();
|
if (string.IsNullOrEmpty(_recycleDir) || !recycle) return s30Objects;
|
||||||
if (string.IsNullOrEmpty(_recycleDir) || !recycle) return obj;
|
s30Objects.Concat(await GetS3ObjectsByPathAsync(domain, GetRecyclePath(path)));
|
||||||
obj.AddRange(await GetS3ObjectsByPathAsync(domain, GetRecyclePath(path)));
|
return s30Objects;
|
||||||
return obj;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1464,24 +1464,22 @@ namespace ASC.Web.Files.Services.WCFService
|
|||||||
|
|
||||||
var folders = folderDao.GetFoldersAsync(foldersId);
|
var folders = folderDao.GetFoldersAsync(foldersId);
|
||||||
var foldersProject = folders.Where(folder => folder.FolderType == FolderType.BUNCH);
|
var foldersProject = folders.Where(folder => folder.FolderType == FolderType.BUNCH);
|
||||||
if (await foldersProject.CountAsync() > 0)
|
var toSubfolders = destFolderDao.GetFoldersAsync(toFolder.ID);
|
||||||
|
|
||||||
|
await foreach (var folderProject in foldersProject)
|
||||||
{
|
{
|
||||||
var toSubfolders = await destFolderDao.GetFoldersAsync(toFolder.ID).ToListAsync();
|
var toSub = await toSubfolders.FirstOrDefaultAsync(to => Equals(to.Title, folderProject.Title));
|
||||||
|
if (toSub == null) continue;
|
||||||
|
|
||||||
await foreach (var folderProject in foldersProject)
|
var filesPr = fileDao.GetFilesAsync(folderProject.ID);
|
||||||
{
|
var foldersTmp = folderDao.GetFoldersAsync(folderProject.ID);
|
||||||
var toSub = toSubfolders.FirstOrDefault(to => Equals(to.Title, folderProject.Title));
|
var foldersPr = foldersTmp.Select(d => d.ID).ToListAsync();
|
||||||
if (toSub == null) continue;
|
|
||||||
|
|
||||||
var filesPr = await fileDao.GetFilesAsync(folderProject.ID);
|
var (cFiles, cFolders) = await MoveOrCopyFilesCheckAsync(await filesPr, await foldersPr, toSub.ID);
|
||||||
var foldersTmp = await folderDao.GetFoldersAsync(folderProject.ID).ToListAsync();
|
checkedFiles.AddRange(cFiles);
|
||||||
var foldersPr = foldersTmp.Select(d => d.ID);
|
checkedFolders.AddRange(cFolders);
|
||||||
|
|
||||||
var (cFiles, cFolders) = await MoveOrCopyFilesCheckAsync(filesPr, foldersPr, toSub.ID);
|
|
||||||
checkedFiles.AddRange(cFiles);
|
|
||||||
checkedFolders.AddRange(cFolders);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
foreach (var pair in await folderDao.CanMoveOrCopyAsync(foldersId.ToArray(), toFolder.ID))
|
foreach (var pair in await folderDao.CanMoveOrCopyAsync(foldersId.ToArray(), toFolder.ID))
|
||||||
@ -1592,7 +1590,7 @@ namespace ASC.Web.Files.Services.WCFService
|
|||||||
results = FileConverter.GetStatusAsync(files);
|
results = FileConverter.GetStatusAsync(files);
|
||||||
}
|
}
|
||||||
|
|
||||||
await foreach(var res in results)
|
await foreach (var res in results)
|
||||||
{
|
{
|
||||||
yield return res;
|
yield return res;
|
||||||
}
|
}
|
||||||
@ -2261,7 +2259,7 @@ namespace ASC.Web.Files.Services.WCFService
|
|||||||
entries.Append(newFile);
|
entries.Append(newFile);
|
||||||
}
|
}
|
||||||
|
|
||||||
await foreach(var entrie in entries)
|
await foreach (var entrie in entries)
|
||||||
{
|
{
|
||||||
yield return entrie;
|
yield return entrie;
|
||||||
}
|
}
|
||||||
|
@ -357,8 +357,9 @@ namespace ASC.Web.Files.Utils
|
|||||||
|
|
||||||
T folderID;
|
T folderID;
|
||||||
int valueNew;
|
int valueNew;
|
||||||
var userFolderId = await internalFolderDao.GetFolderIDUserAsync(false, userID);
|
var userFolderIdTask = internalFolderDao.GetFolderIDUserAsync(false, userID);
|
||||||
var privacyFolderId = await internalFolderDao.GetFolderIDPrivacyAsync(false, userID);
|
var privacyFolderIdTask = internalFolderDao.GetFolderIDPrivacyAsync(false, userID);
|
||||||
|
var userFolderId = await userFolderIdTask;
|
||||||
|
|
||||||
var removeTags = new List<Tag>();
|
var removeTags = new List<Tag>();
|
||||||
|
|
||||||
@ -393,6 +394,8 @@ namespace ASC.Web.Files.Utils
|
|||||||
removeTags.AddRange(listTags);
|
removeTags.AddRange(listTags);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var privacyFolderId = await privacyFolderIdTask;
|
||||||
|
|
||||||
var parentFolders = await folderDao.GetParentFoldersAsync(folderID);
|
var parentFolders = await folderDao.GetParentFoldersAsync(folderID);
|
||||||
parentFolders.Reverse();
|
parentFolders.Reverse();
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user