diff --git a/Src/Dlhis.Common/FileOperation/Controllers/FileController.cs b/Src/Dlhis.Common/FileOperation/Controllers/FileController.cs index 9d95fc60..d6b329e3 100644 --- a/Src/Dlhis.Common/FileOperation/Controllers/FileController.cs +++ b/Src/Dlhis.Common/FileOperation/Controllers/FileController.cs @@ -42,8 +42,10 @@ public class FileController : ControllerBase /// /// /// + [Authorize(Roles = "admin")] [HttpPost("{Bucket}/version/upload")] - [RequestSizeLimit(300_000_000)] + [RequestFormLimits(MultipartBodyLengthLimit = int.MaxValue)] + [RequestSizeLimit(int.MaxValue)] public async Task UploadFileAsync([FromForm] FileVersionUploadRequest request) { return await _fileVersionService.UploadFileAsync(request); diff --git a/Src/Dlhis.Common/FileOperation/Request/FileVersionUploadRequest.cs b/Src/Dlhis.Common/FileOperation/Request/FileVersionUploadRequest.cs index 04249399..45e4726d 100644 --- a/Src/Dlhis.Common/FileOperation/Request/FileVersionUploadRequest.cs +++ b/Src/Dlhis.Common/FileOperation/Request/FileVersionUploadRequest.cs @@ -15,7 +15,7 @@ public class FileVersionUploadRequest : IValidatableObject /// /// 文件 /// - [Required] + [FromForm] public IFormFile File { get; set; } /// diff --git a/Src/Dlhis.Common/FileOperation/Services/Implements/FileVersionService.cs b/Src/Dlhis.Common/FileOperation/Services/Implements/FileVersionService.cs index 3d4a4285..7466973c 100644 --- a/Src/Dlhis.Common/FileOperation/Services/Implements/FileVersionService.cs +++ b/Src/Dlhis.Common/FileOperation/Services/Implements/FileVersionService.cs @@ -58,7 +58,7 @@ public class FileVersionService : IFileVersionService .Where(x => x.Code == code) .OrderByDescending(x => x.Version) .Select() - .SingleAsync(); + .FirstAsync(); } //************************************************************* help methods *************************************************************** @@ -69,6 +69,6 @@ public class FileVersionService : IFileVersionService .Where(x => x.Code == code) .OrderByDescending(x => x.Version) .Select(x => x.Version) - .SingleAsync(); + .FirstAsync(); } } diff --git a/Src/Dlhis.Common/FileOperation/Services/Implements/MinioService.cs b/Src/Dlhis.Common/FileOperation/Services/Implements/MinioService.cs index 811f8a0a..b89a842f 100644 --- a/Src/Dlhis.Common/FileOperation/Services/Implements/MinioService.cs +++ b/Src/Dlhis.Common/FileOperation/Services/Implements/MinioService.cs @@ -1,4 +1,5 @@ using Dlhis.Common.FileOperation.Configurations; +using Kurisu.AspNetCore.Utils.Extensions; using Microsoft.Extensions.Options; using Minio; using Minio.DataModel.Args; @@ -50,6 +51,8 @@ public class MinioService : IMinioService public async Task UploadFileAsync(string bucket, IFormFile formFile) { + formFile.ThrowIfNull("请选择文件上传!"); + await CreateBucketIfNotExistsAsync(bucket); var ms = DateTime.Now.ToString("yyyyMMddHHmmssfff"); diff --git a/Src/Dlhis.Entity/Common/FileVersionEntity.cs b/Src/Dlhis.Entity/Common/FileVersionEntity.cs index d0973b26..5755a41b 100644 --- a/Src/Dlhis.Entity/Common/FileVersionEntity.cs +++ b/Src/Dlhis.Entity/Common/FileVersionEntity.cs @@ -18,13 +18,13 @@ public class FileVersionEntity : SugarBaseEntity /// /// 文件code /// - [SugarColumn(IsNullable = false, ColumnDescription = "文件code", UniqueGroupNameList = new[] { "idx_FileVersion_Code" })] + [SugarColumn(IsNullable = false, ColumnDescription = "文件code", UniqueGroupNameList = new[] { "idx_FileVersion_Code_Version" })] public string Code { get; set; } /// /// 版本号 /// - [SugarColumn(IsNullable = false, ColumnDescription = "版本号")] + [SugarColumn(IsNullable = false, ColumnDescription = "版本号", UniqueGroupNameList = new[] { "idx_FileVersion_Code_Version" })] public int Version { get; set; } ///