From 361e8babc2e2b25eab34d8031ea3b58846498bac Mon Sep 17 00:00:00 2001 From: qwj <qwjzorro@163.com> Date: 星期三, 02 八月 2023 17:04:01 +0800 Subject: [PATCH] 更新文件服务 --- DocumentFile.Service/IUploadService.cs | 47 +++++++++++++++++++++++++++++++++-------------- 1 files changed, 33 insertions(+), 14 deletions(-) diff --git a/DocumentFile.Service/IUploadService.cs b/DocumentFile.Service/IUploadService.cs index 9d91a2c..24834ea 100644 --- a/DocumentFile.Service/IUploadService.cs +++ b/DocumentFile.Service/IUploadService.cs @@ -4,11 +4,11 @@ { public interface IUploadService { - Task<ReturnMsg> HandleUploadWordFile(IFormFile iFormFile); + Task<ReturnMsg> HandleUploadWordFile(IFormFile iFormFile,string code); - Task<ReturnMsg> HandleUploadTemplateFile(IFormFile iFormFile); + Task<ReturnMsg> HandleUploadTemplateFile(IFormFile iFormFile, string code); - Task<ReturnMsg> HandleUploadImageFile(IFormFile iFormFile); + Task<ReturnMsg> HandleUploadImageFile(IFormFile iFormFile, string code); //(string fileType, byte[] archiveData, string archiveName) DownloadFiles(string subDirectory); @@ -27,10 +27,11 @@ /// 涓婁紶鏂囦欢 杈呭姪鍑芥暟 /// </summary> /// <param name="formFile"></param> - /// <param name="folder"></param> + /// <param name="tenant">鏂囦欢澶瑰鎴锋爣璇�</param> + /// <param name="folder">鏂囦欢澶瑰垎绫绘爣绛�</param> /// <param name="format"></param> /// <returns></returns> - protected async virtual Task<ReturnMsg> HandleUploadFile(IFormFile formFile, string folder, params string[] format) + protected async virtual Task<ReturnMsg> HandleUploadFile(IFormFile formFile,string tenant, string folder, params string[] format) { ReturnMsg msg = new ReturnMsg(); @@ -44,15 +45,14 @@ } else { - var path = $"/upload/{folder}/{DateTime.Now:yyyyMMdd}"; + var path = $"/uploads/{tenant}/{folder}/{DateTime.Now:yyyyMMdd}"; var dir = this._webRootPath + path; if (!Directory.Exists(dir)) { Directory.CreateDirectory(dir); } - var filename = $"ZC_{DateTime.Now:HHmmssfff}" + extensionName; - + var filename = CreateName(path,extensionName); path += "/" + filename; // 鍒涘缓鏂版枃浠� @@ -75,6 +75,25 @@ return msg; } + /// <summary> + /// 鐢熸垚鍞竴鐨勬枃浠跺悕 + /// </summary> + /// <param name="path"></param> + /// <param name="extensionName"></param> + /// <returns></returns> + private string CreateName(string path,string extensionName) + { + var filename = $"ZC_{DateTime.Now:HHmmssfff}" + extensionName; + if (File.Exists(path + "/" + filename)) + { + return CreateName(path, extensionName); + } + else + { + return filename; + } + } + /// <summary> /// 涓婁紶word鏂囦欢 @@ -82,8 +101,8 @@ /// <param name="iFormFile"></param> /// <param name="format"></param> /// <returns></returns> - public async virtual Task<ReturnMsg> HandleUploadWordFile(IFormFile iFormFile) - => await this.HandleUploadFile(iFormFile, "Instance", ".doc",".docx"); + public async virtual Task<ReturnMsg> HandleUploadWordFile(IFormFile iFormFile, string code) + => await this.HandleUploadFile(iFormFile,code, "Instance", ".doc",".docx"); /// <summary> /// 涓婁紶word妯℃澘鏂囦欢 @@ -91,8 +110,8 @@ /// <param name="iFormFile"></param> /// <param name="format"></param> /// <returns></returns> - public async virtual Task<ReturnMsg> HandleUploadTemplateFile(IFormFile iFormFile) - => await this.HandleUploadFile(iFormFile, "Template", ".doc", ".docx"); + public async virtual Task<ReturnMsg> HandleUploadTemplateFile(IFormFile iFormFile, string code) + => await this.HandleUploadFile(iFormFile, code, "Template", ".doc", ".docx"); /// <summary> /// 涓婁紶鍥剧墖 @@ -100,8 +119,8 @@ /// <param name="iFormFile"></param> /// <param name="folder"></param> /// <returns></returns> - public async virtual Task<ReturnMsg> HandleUploadImageFile(IFormFile iFormFile) - => await this.HandleUploadFile(iFormFile, "Photo", ".jpg", ".jpeg", ".png"); + public async virtual Task<ReturnMsg> HandleUploadImageFile(IFormFile iFormFile, string code) + => await this.HandleUploadFile(iFormFile, code, "Photo", ".jpg", ".jpeg", ".png"); /*, ".gif", ".jfif"*/ ///// <summary> -- Gitblit v1.9.1