Merge branch 'master' into feature/files

# Conflicts:
#	products/ASC.Files/Server/Controllers/FilesController.cs
This commit is contained in:
pavelbannov 2020-08-02 22:31:52 +03:00
commit 34c2252b25
9 changed files with 72 additions and 35 deletions

View File

@ -0,0 +1,8 @@
namespace ASC.Files.Core.Model
{
public class ChangeHistoryModel
{
public int Version { get; set; }
public bool ContinueVersion { get; set; }
}
}

View File

@ -0,0 +1,7 @@
namespace ASC.Files.Core.Model
{
public class CreateFileModel
{
public string Title { get; set; }
}
}

View File

@ -0,0 +1,7 @@
namespace ASC.Files.Core.Model
{
public class CreateFolderModel
{
public string Title { get; set; }
}
}

View File

@ -0,0 +1,8 @@
namespace ASC.Files.Core.Model
{
public class UpdateCommentModel
{
public int Version { get; set; }
public string Comment { get; set; }
}
}

View File

@ -0,0 +1,8 @@
namespace ASC.Files.Core.Model
{
public class UpdateFileModel
{
public string Title { get; set; }
public int LastVersion { get; set; }
}
}

View File

@ -42,6 +42,7 @@ using ASC.Core.Users;
using ASC.FederatedLogin.Helpers;
using ASC.FederatedLogin.LoginProviders;
using ASC.Files.Core;
using ASC.Files.Core.Model;
using ASC.Files.Helpers;
using ASC.Files.Model;
using ASC.MessagingSystem;
@ -679,13 +680,13 @@ namespace ASC.Api.Documents
/// <param name="title">Title of new folder</param>
/// <returns>New folder contents</returns>
[Create("folder/{folderId}", DisableFormat = true)]
public FolderWrapper<string> CreateFolder(string folderId, FolderModel folderModel)
public FolderWrapper<string> CreateFolder(string folderId, CreateFolderModel folderModel)
{
return FilesControllerHelperString.CreateFolder(folderId, folderModel.Title);
}
[Create("folder/{folderId:int}")]
public FolderWrapper<int> CreateFolder(int folderId, FolderModel folderModel)
public FolderWrapper<int> CreateFolder(int folderId, CreateFolderModel folderModel)
{
return FilesControllerHelperInt.CreateFolder(folderId, folderModel.Title);
}
@ -700,7 +701,7 @@ namespace ASC.Api.Documents
/// <remarks>In case the extension for the file title differs from DOCX/XLSX/PPTX and belongs to one of the known text, spreadsheet or presentation formats, it will be changed to DOCX/XLSX/PPTX accordingly. If the file extension is not set or is unknown, the DOCX extension will be added to the file title.</remarks>
/// <returns>New file info</returns>
[Create("@my/file")]
public FileWrapper<int> CreateFile([FromBody]FileModelFull model)
public FileWrapper<int> CreateFile(CreateFileModel model)
{
return CreateFile(GlobalFolderHelper.FolderMy, model);
}
@ -715,13 +716,13 @@ namespace ASC.Api.Documents
/// <remarks>In case the extension for the file title differs from DOCX/XLSX/PPTX and belongs to one of the known text, spreadsheet or presentation formats, it will be changed to DOCX/XLSX/PPTX accordingly. If the file extension is not set or is unknown, the DOCX extension will be added to the file title.</remarks>
/// <returns>New file info</returns>
[Create("{folderId}/file", DisableFormat = true)]
public FileWrapper<string> CreateFile(string folderId, [FromBody]FileModelFull model)
public FileWrapper<string> CreateFile(string folderId, CreateFileModel model)
{
return FilesControllerHelperString.CreateFile(folderId, model.Title);
}
[Create("{folderId:int}/file")]
public FileWrapper<int> CreateFile(int folderId, [FromBody]FileModelFull model)
public FileWrapper<int> CreateFile(int folderId, CreateFileModel model)
{
return FilesControllerHelperInt.CreateFile(folderId, model.Title);
}
@ -737,13 +738,13 @@ namespace ASC.Api.Documents
/// <param name="title">New title</param>
/// <returns>Folder contents</returns>
[Update("folder/{folderId}", DisableFormat = true)]
public FolderWrapper<string> RenameFolder(string folderId, FolderModel folderModel)
public FolderWrapper<string> RenameFolder(string folderId, CreateFolderModel folderModel)
{
return FilesControllerHelperString.RenameFolder(folderId, folderModel.Title);
}
[Update("folder/{folderId:int}")]
public FolderWrapper<int> RenameFolder(int folderId, FolderModel folderModel)
public FolderWrapper<int> RenameFolder(int folderId, CreateFolderModel folderModel)
{
return FilesControllerHelperInt.RenameFolder(folderId, folderModel.Title);
}
@ -812,15 +813,15 @@ namespace ASC.Api.Documents
/// <param name="lastVersion">File last version number</param>
/// <returns>File info</returns>
[Update("file/{fileId}", DisableFormat = true)]
public FileWrapper<string> UpdateFile(string fileId, int lastVersion, [FromBody]FileModelFull model)
public FileWrapper<string> UpdateFile(string fileId, UpdateFileModel model)
{
return FilesControllerHelperString.UpdateFile(fileId, model.Title, lastVersion);
return FilesControllerHelperString.UpdateFile(fileId, model.Title, model.LastVersion);
}
[Update("file/{fileId:int}")]
public FileWrapper<int> UpdateFile(int fileId, int lastVersion, [FromBody]FileModelFull model)
public FileWrapper<int> UpdateFile(int fileId, UpdateFileModel model)
{
return FilesControllerHelperInt.UpdateFile(fileId, model.Title, lastVersion);
return FilesControllerHelperInt.UpdateFile(fileId, model.Title, model.LastVersion);
}
/// <summary>
@ -1061,14 +1062,27 @@ namespace ASC.Api.Documents
/// <category>Files</category>
/// <returns></returns>
[Update("file/{fileId}/history", DisableFormat = true)]
public IEnumerable<FileWrapper<string>> ChangeHistory(string fileId, int version, bool continueVersion)
public IEnumerable<FileWrapper<string>> ChangeHistory(string fileId, ChangeHistoryModel model)
{
return FilesControllerHelperString.ChangeHistory(fileId, version, continueVersion);
return FilesControllerHelperString.ChangeHistory(fileId, model.Version, model.ContinueVersion);
}
[Update("file/{fileId:int}/history")]
public IEnumerable<FileWrapper<int>> ChangeHistory(int fileId, int version, bool continueVersion)
public IEnumerable<FileWrapper<int>> ChangeHistory(int fileId, ChangeHistoryModel model)
{
return FilesControllerHelperInt.ChangeHistory(fileId, version, continueVersion);
return FilesControllerHelperInt.ChangeHistory(fileId, model.Version, model.ContinueVersion);
}
[Update("file/{fileId}/comment", DisableFormat = true)]
public object UpdateComment(string fileId, UpdateCommentModel model)
{
return FilesControllerHelperString.UpdateComment(fileId, model.Version, model.Comment);
}
[Update("file/{fileId:int}/comment")]
public object UpdateComment(int fileId, UpdateCommentModel model)
{
return FilesControllerHelperInt.UpdateComment(fileId, model.Version, model.Comment);
}
/// <summary>

View File

@ -549,6 +549,11 @@ namespace ASC.Files.Helpers
return history.Select(FileWrapperHelper.Get);
}
public string UpdateComment(T fileId, int version, string comment)
{
return FileStorageService.UpdateComment(fileId, version, comment);
}
public IEnumerable<FileShareWrapper> GetFileSecurityInfo(T fileId)
{
var fileShares = FileStorageService.GetSharedInfo(new ItemList<string> { string.Format("file_{0}", fileId) });

View File

@ -1,13 +0,0 @@
using ASC.Files.Core.Security;
namespace ASC.Files.Model
{
public class FileModelFull
{
public string FileId { get; set; }
public string ParentId { get; set; }
public string Title { get; set; }
public int Version { get; set; } = -1;
public FileShare Share { get; set; }
}
}

View File

@ -1,7 +0,0 @@
namespace ASC.Files.Model
{
public class FolderModel
{
public string Title { get; set; }
}
}