qwj
2023-08-02 361e8babc2e2b25eab34d8031ea3b58846498bac
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>