diff --git a/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/AnnexesApiWx.cs b/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/AnnexesApiWx.cs
index 4795d3d47..3f345891b 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/AnnexesApiWx.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/AnnexesApiWx.cs
@@ -7,136 +7,192 @@ using System.IO;
namespace Learun.Application.WebApi.Modules
{
- public class AnnexesApiWx : BaseApi
- {
- public AnnexesApiWx()
- : base("/learun/adms/annexes")
+ public class AnnexesApiWx : BaseApi
{
- Get["/wxlist"] = WxGetList;
- Get["/wxdown"] = WxDownload;
- Get["/wxfileinfo"] = WxFileInfo;
- Post["/wxupload"] = WxUpload;
- Post["/wxdelete"] = WxDeleteFile;
+ public AnnexesApiWx()
+ : base("/learun/adms/annexes")
+ {
+ Get["/wxlist"] = WxGetList;
+ Get["/wxdown"] = WxDownload;
+ Get["/wxfileinfo"] = WxFileInfo;
+ Post["/wxupload"] = WxUpload;
+ Post["/wxdelete"] = WxDeleteFile;
+ Post["/wxuploadinsingle"] = WxUploadInSingle;
+ }
+ private AnnexesFileIBLL annexesFileIBLL = new AnnexesFileBLL();
+
+ ///
+ /// 获取附件列表
+ ///
+ ///
+ ///
+ public Response WxGetList(dynamic _)
+ {
+ var keyValue = this.GetReqData();
+ var list = annexesFileIBLL.GetList(keyValue);
+
+ return Success(list);
+ }
+
+ ///
+ /// 上传附件图片文件
+ ///
+ ///
+ public Response WxUpload(dynamic _)
+ {
+ var files = (List)this.Context.Request.Files;
+ string folderId = Request.Form["folderId"];
+ string filePath = Config.GetValue("AnnexesFile");
+ string uploadDate = DateTime.Now.ToString("yyyyMMdd");
+ string fileEextension = Path.GetExtension(files[0].Name);
+ string fileType = fileEextension.Replace(".", "");
+ string fileGuid = Guid.NewGuid().ToString();
+
+ string virtualPath = string.Format("{0}/{1}/{2}/{3}{4}", filePath, userInfo.userId, uploadDate, fileGuid, fileEextension);
+
+ //创建文件夹
+ string path = Path.GetDirectoryName(virtualPath);
+ Directory.CreateDirectory(path);
+ AnnexesFileEntity fileAnnexesEntity = new AnnexesFileEntity();
+ if (!System.IO.File.Exists(virtualPath))
+ {
+ byte[] bytes = new byte[files[0].Value.Length];
+ files[0].Value.Read(bytes, 0, bytes.Length);
+ FileInfo file = new FileInfo(virtualPath);
+ FileStream fs = file.Create();
+ fs.Write(bytes, 0, bytes.Length);
+ fs.Close();
+
+ //文件信息写入数据库
+ fileAnnexesEntity.F_Id = fileGuid;
+ fileAnnexesEntity.F_FileName = files[0].Name;
+ fileAnnexesEntity.F_FilePath = virtualPath;
+ fileAnnexesEntity.F_FileSize = files[0].Value.Length.ToString();
+ fileAnnexesEntity.F_FileExtensions = fileEextension;
+ fileAnnexesEntity.F_FileType = fileType;
+ fileAnnexesEntity.F_CreateUserId = userInfo.userId;
+ fileAnnexesEntity.F_CreateUserName = userInfo.realName;
+
+ annexesFileIBLL.SaveEntity(folderId, fileAnnexesEntity);
+ }
+
+ return SuccessString(folderId);
+ }
+
+ ///
+ /// 上传附件图片文件【移动端app2.0,单独页面中的附件图片上传使用方法】
+ ///
+ ///
+ public Response WxUploadInSingle(dynamic _)
+ {
+ var files = (List)this.Context.Request.Files;
+ var folderId = this.GetReq().folderId;
+ var name = this.GetReq().name;
+
+ string filePath = Config.GetValue("AnnexesFile");
+ string uploadDate = DateTime.Now.ToString("yyyyMMdd");
+ string FileEextension = Path.GetExtension(name);
+ string fileGuid = Guid.NewGuid().ToString();
+
+ string virtualPath = string.Format("{0}/{1}/{2}/{3}{4}", filePath, userInfo.userId, uploadDate, fileGuid, FileEextension);
+
+ //创建文件夹
+ string path = Path.GetDirectoryName(virtualPath);
+ Directory.CreateDirectory(path);
+ AnnexesFileEntity fileAnnexesEntity = new AnnexesFileEntity();
+ if (!System.IO.File.Exists(virtualPath))
+ {
+ byte[] bytes = new byte[files[0].Value.Length];
+ files[0].Value.Read(bytes, 0, bytes.Length);
+ FileInfo file = new FileInfo(virtualPath);
+ FileStream fs = file.Create();
+ fs.Write(bytes, 0, bytes.Length);
+ fs.Close();
+
+ //文件信息写入数据库
+ fileAnnexesEntity.F_Id = fileGuid;
+ fileAnnexesEntity.F_FolderId = folderId;
+ fileAnnexesEntity.F_FileName = name;
+ fileAnnexesEntity.F_FilePath = virtualPath;
+ fileAnnexesEntity.F_FileSize = files[0].Value.Length.ToString();
+ fileAnnexesEntity.F_FileExtensions = FileEextension;
+ fileAnnexesEntity.F_FileType = FileEextension.Replace(".", "");
+ fileAnnexesEntity.F_CreateUserId = userInfo.userId;
+ fileAnnexesEntity.F_CreateUserName = userInfo.realName;
+
+ annexesFileIBLL.SaveEntity(folderId, fileAnnexesEntity);
+ }
+ return SuccessString(folderId);
+ }
+
+ ///
+ /// 获取文件信息
+ ///
+ ///
+ ///
+ public Response WxFileInfo(dynamic _)
+ {
+ var fileId = this.GetReqData();
+ var fileEntity = annexesFileIBLL.GetEntity(fileId);
+
+ return Success(fileEntity);
+ }
+
+ ///
+ /// 删除文件
+ ///
+ ///
+ ///
+ public Response WxDeleteFile(dynamic _)
+ {
+ var fileId = this.GetReqData();
+ AnnexesFileEntity fileInfoEntity = annexesFileIBLL.GetEntity(fileId);
+ if (fileInfoEntity != null)
+ {
+ annexesFileIBLL.DeleteEntity(fileId);
+ //删除文件
+ if (System.IO.File.Exists(fileInfoEntity.F_FilePath))
+ {
+ System.IO.File.Delete(fileInfoEntity.F_FilePath);
+ }
+ }
+
+ return Success("删除成功");
+ }
+
+ ///
+ /// 下载文件,微信小程序用
+ ///
+ /// 微信小程序可以预览图片、文档
+ /// 支持的图片格式:.jpg .png .webp .gif
+ /// 支持的文档格式:.doc(x) .xls(x) .ppt(x) .pdf
+ ///
+ /// 对于其他格式的文件,微信小程序官方未提供打开或预览的 API,文件对用户来说不可访问
+ ///
+ ///
+ ///
+ public Response WxDownload(dynamic _)
+ {
+ string name = this.GetReqData();
+ string fileId = name.Split('.')[0];
+ var fileEntity = annexesFileIBLL.GetEntity(fileId);
+ string filepath = fileEntity.F_FilePath;
+
+ if (!FileDownHelper.FileExists(filepath))
+ {
+ return 404;
+ }
+
+ FileDownHelper.DownLoadWx(filepath, fileEntity.F_FileType);
+
+ return Success("");
+ }
+
+ public class FileModel
+ {
+ public string folderId { get; set; }
+ public string name { get; set; }
+ public string id { get; set; }
+ }
}
- private AnnexesFileIBLL annexesFileIBLL = new AnnexesFileBLL();
-
- ///
- /// 获取附件列表
- ///
- ///
- ///
- public Response WxGetList(dynamic _)
- {
- var keyValue = this.GetReqData();
- var list = annexesFileIBLL.GetList(keyValue);
-
- return Success(list);
- }
-
- ///
- /// 上传附件图片文件
- ///
- ///
- public Response WxUpload(dynamic _)
- {
- var files = (List)this.Context.Request.Files;
- var folderId = this.GetReqData();
-
- string filePath = Config.GetValue("AnnexesFile");
- string uploadDate = DateTime.Now.ToString("yyyyMMdd");
- string fileEextension = Path.GetExtension(files[0].Name);
- string fileType = fileEextension.Replace(".", "");
- string fileGuid = Guid.NewGuid().ToString();
-
- string virtualPath = string.Format("{0}/{1}/{2}/{3}{4}", filePath, userInfo.userId, uploadDate, fileGuid, fileEextension);
-
- //创建文件夹
- string path = Path.GetDirectoryName(virtualPath);
- Directory.CreateDirectory(path);
- AnnexesFileEntity fileAnnexesEntity = new AnnexesFileEntity();
- if (!System.IO.File.Exists(virtualPath))
- {
- byte[] bytes = new byte[files[0].Value.Length];
- files[0].Value.Read(bytes, 0, bytes.Length);
- FileInfo file = new FileInfo(virtualPath);
- FileStream fs = file.Create();
- fs.Write(bytes, 0, bytes.Length);
- fs.Close();
-
- //文件信息写入数据库
- fileAnnexesEntity.F_Id = fileGuid;
- fileAnnexesEntity.F_FileName = files[0].Name;
- fileAnnexesEntity.F_FilePath = virtualPath;
- fileAnnexesEntity.F_FileSize = files[0].Value.Length.ToString();
- fileAnnexesEntity.F_FileExtensions = fileEextension;
- fileAnnexesEntity.F_FileType = fileType;
- fileAnnexesEntity.F_CreateUserId = userInfo.userId;
- fileAnnexesEntity.F_CreateUserName = userInfo.realName;
-
- annexesFileIBLL.SaveEntity(folderId, fileAnnexesEntity);
- }
-
- return SuccessString(fileGuid);
- }
-
- ///
- /// 获取文件信息
- ///
- ///
- ///
- public Response WxFileInfo(dynamic _)
- {
- var fileId = this.GetReqData();
- var fileEntity = annexesFileIBLL.GetEntity(fileId);
-
- return Success(fileEntity);
- }
-
- ///
- /// 删除文件
- ///
- ///
- ///
- public Response WxDeleteFile(dynamic _)
- {
- var fileId = this.GetReqData();
- AnnexesFileEntity fileInfoEntity = annexesFileIBLL.GetEntity(fileId);
- annexesFileIBLL.DeleteEntity(fileId);
- //删除文件
- if (System.IO.File.Exists(fileInfoEntity.F_FilePath))
- {
- System.IO.File.Delete(fileInfoEntity.F_FilePath);
- }
-
- return Success("删除成功");
- }
-
- ///
- /// 下载文件,微信小程序用
- ///
- /// 微信小程序可以预览图片、文档
- /// 支持的图片格式:.jpg .png .webp .gif
- /// 支持的文档格式:.doc(x) .xls(x) .ppt(x) .pdf
- ///
- /// 对于其他格式的文件,微信小程序官方未提供打开或预览的 API,文件对用户来说不可访问
- ///
- ///
- ///
- public Response WxDownload(dynamic _)
- {
- string name = this.GetReqData();
- string fileId = name.Split('.')[0];
- var fileEntity = annexesFileIBLL.GetEntity(fileId);
- string filepath = fileEntity.F_FilePath;
-
- if (!FileDownHelper.FileExists(filepath))
- {
- return 404;
- }
-
- FileDownHelper.DownLoadWx(filepath, fileEntity.F_FileType);
-
- return Success("");
- }
- }
}
\ No newline at end of file