From b30bd4a4f23c24ab6f0f2017774ce9c65cb6a84a Mon Sep 17 00:00:00 2001 From: pavelbannov Date: Fri, 2 Aug 2024 15:39:41 +0300 Subject: [PATCH] Fix incorrect type parameter in SendMoveMessageAsync calls Updated the type parameter of `SendMoveMessageAsync` method calls from `FileEntry` to `FileEntry` in `FilesMessageService.cs` for correct target type. This change ensures the method receives the correct type and aligns with the updated parameters used in `FileMoveCopyOperation.cs`. --- .../ASC.Files/Core/Helpers/FilesMessageService.cs | 2 +- .../FileOperations/FileMoveCopyOperation.cs | 13 ++++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/products/ASC.Files/Core/Helpers/FilesMessageService.cs b/products/ASC.Files/Core/Helpers/FilesMessageService.cs index 000499f391..d63f2f60aa 100644 --- a/products/ASC.Files/Core/Helpers/FilesMessageService.cs +++ b/products/ASC.Files/Core/Helpers/FilesMessageService.cs @@ -142,7 +142,7 @@ public async Task SendCopyMessageAsync(FileEntry target, Folder } } - public async Task SendMoveMessageAsync(FileEntry target, Folder from, Folder to, List> toParents, bool overwrite, + public async Task SendMoveMessageAsync(FileEntry target, Folder from, Folder to, List> toParents, bool overwrite, IDictionary headers, string[] description) { var action = target switch diff --git a/products/ASC.Files/Core/Services/WCFService/FileOperations/FileMoveCopyOperation.cs b/products/ASC.Files/Core/Services/WCFService/FileOperations/FileMoveCopyOperation.cs index 64dc6bbc6e..c1805e740d 100644 --- a/products/ASC.Files/Core/Services/WCFService/FileOperations/FileMoveCopyOperation.cs +++ b/products/ASC.Files/Core/Services/WCFService/FileOperations/FileMoveCopyOperation.cs @@ -616,7 +616,7 @@ private async Task>> MoveOrCopyFoldersAsync(IServiceScope newFolderId = await FolderDao.MoveFolderAsync(folder.Id, toFolderId, CancellationToken); newFolder = await folderDao.GetFolderAsync(newFolderId); - await filesMessageService.SendMoveMessageAsync(folder, await parentFolderTask, toFolder, toFolderParents, true, _headers, [newFolder.Title, toFolder.Title, toFolder.Id.ToString()]); + await filesMessageService.SendMoveMessageAsync(newFolder, await parentFolderTask, toFolder, toFolderParents, true, _headers, [newFolder.Title, toFolder.Title, toFolder.Id.ToString()]); if (isToFolder) { @@ -644,7 +644,6 @@ private async Task>> MoveOrCopyFoldersAsync(IServiceScope else { await fileMarker.RemoveMarkAsNewForAllAsync(folder); - var rootFolder = await FolderDao.GetFolderAsync(folder.RootId); TTo newFolderId = default; @@ -739,7 +738,11 @@ await socketManager.DeleteFolder(folder, action: async () => else { var parentFolder = await parentFolderTask; - await filesMessageService.SendMoveMessageAsync(folder, parentFolder, toFolder, toFolderParents, true, _headers, [folder.Title, parentFolder.Title, toFolder.Title, toFolder.Id.ToString()]); + newFolder = await folderDao.GetFolderAsync(newFolderId); + if (newFolder != null) + { + await filesMessageService.SendMoveMessageAsync(newFolder, parentFolder, toFolder, toFolderParents, true, _headers, [folder.Title, parentFolder.Title, toFolder.Title, toFolder.Id.ToString()]); + } } @@ -925,7 +928,7 @@ private async Task>> MoveOrCopyFilesAsync(IServiceScope await socketManager.DeleteFileAsync(file, action: async () => newFileId = await FileDao.MoveFileAsync(file.Id, toFolderId, deleteLinks)); newFile = await fileDao.GetFileAsync(newFileId); - await filesMessageService.SendMoveMessageAsync(file, parentFolder, toFolder, toParentFolders, false, _headers, [file.Title, parentFolder.Title, toFolder.Title, toFolder.Id.ToString()]); + await filesMessageService.SendMoveMessageAsync(newFile, parentFolder, toFolder, toParentFolders, false, _headers, [file.Title, parentFolder.Title, toFolder.Title, toFolder.Id.ToString()]); if (file.RootFolderType == FolderType.TRASH && newFile.ThumbnailStatus == Thumbnail.NotRequired) { @@ -1067,7 +1070,7 @@ await socketManager.DeleteFileAsync(file, action: async () => await LinkDao.DeleteAllLinkAsync(file.Id); }); - await filesMessageService.SendMoveMessageAsync(file, parentFolder, toFolder, toParentFolders, true, _headers, [file.Title, parentFolder.Title, toFolder.Title, toFolder.Id.ToString()]); + await filesMessageService.SendMoveMessageAsync(newFile, parentFolder, toFolder, toParentFolders, true, _headers, [file.Title, parentFolder.Title, toFolder.Title, toFolder.Id.ToString()]); if (ProcessedFile(fileId)) {