using Learun.Util; using System.Data; using Learun.Application.TwoDevelopment.LR_Desktop; using System.Web.Mvc; using System.Collections.Generic; using Learun.Application.OA.File.FilePreview; using Learun.Application.Base.SystemModule; namespace Learun.Application.Web.Areas.LR_Desktop.Controllers { /// /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架 /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 /// 创 建:超级管理员 /// 日 期:2022-02-24 16:59 /// 描 述:招生数据 /// public class EnrollDataController : MvcControllerBase { private EnrollDataIBLL enrollDataIBLL = new EnrollDataBLL(); private FilePreviewIBLL filePreviewIBLL = new FilePreviewBLL(); private AnnexesFileIBLL annexesFileIBLL = new AnnexesFileBLL(); #region 视图功能 /// /// 主页面 /// /// [HttpGet] public ActionResult Index() { return View(); } /// /// 表单页 /// /// [HttpGet] public ActionResult Form() { return View(); } /// /// /// /// [HttpGet] public ActionResult IndexPersonnel() { return View(); } #endregion #region 获取数据 /// /// 获取页面显示列表数据 /// /// 分页参数 /// 查询参数 /// [HttpGet] [AjaxOnly] public ActionResult GetPageList(string pagination, string queryJson) { Pagination paginationobj = pagination.ToObject(); var data = enrollDataIBLL.GetPageList(paginationobj, queryJson); var jsonData = new { rows = data, total = paginationobj.total, page = paginationobj.page, records = paginationobj.records }; return Success(jsonData); } /// /// 获取表单数据 /// /// 主键 /// [HttpGet] [AjaxOnly] public ActionResult GetFormData(string keyValue) { var EnrollDataData = enrollDataIBLL.GetEnrollDataEntity(keyValue); var jsonData = new { EnrollData = EnrollDataData, }; return Success(jsonData); } #endregion #region 提交数据 /// /// 删除实体数据 /// /// 主键 /// [HttpPost] [AjaxOnly] public ActionResult DeleteForm(string keyValue) { enrollDataIBLL.DeleteEntity(keyValue); return Success("删除成功!"); } /// /// 保存实体数据(新增、修改) /// /// 主键 /// 实体 /// [HttpPost] [ValidateAntiForgeryToken] [AjaxOnly] public ActionResult SaveForm(string keyValue, string strEntity) { EnrollDataEntity entity = strEntity.ToObject(); enrollDataIBLL.SaveEntity(keyValue, entity); if (string.IsNullOrEmpty(keyValue)) { } return Success("保存成功!"); } #endregion #region MyRegion /// /// 下载文件 /// /// 主键 /// [HttpPost] public void DownloadFile(string folderid) { var data = annexesFileIBLL.GetEntityByFolderId(folderid); string filename = Server.UrlDecode(data.F_FileName);//返回客户端文件名称 string filepath = data.F_FilePath;//this.Server.MapPath(data.F_FilePath); if (FileDownHelper.FileExists(filepath)) { FileDownHelper.DownLoadold(filepath, filename); } } /// /// 文件预览 /// /// 文件ID /// public void PreviewFile(string folderid) { var data = annexesFileIBLL.GetEntityByFolderId(folderid); if (data == null) { return; } string filename = Server.UrlDecode(data.F_FileName);//客户端保存的文件名 data.F_FilePath ="/"+ data.F_FilePath.Substring(data.F_FilePath.IndexOf("Resource")); string filepath = DirFileHelper.GetAbsolutePath(data.F_FilePath);//路径 if (data.F_FileType == "xlsx" || data.F_FileType == "xls") { filepath = filepath.Substring(0, filepath.LastIndexOf(".")) + ".pdf";//文件名 if (!DirFileHelper.IsExistFile(filepath)) { filePreviewIBLL.GetExcelData(DirFileHelper.GetAbsolutePath(data.F_FilePath)); } } if (data.F_FileType == "docx" || data.F_FileType == "doc") { filepath = filepath.Substring(0, filepath.LastIndexOf(".")) + ".pdf";//文件名 if (!DirFileHelper.IsExistFile(filepath)) { filePreviewIBLL.GetWordData(DirFileHelper.GetAbsolutePath(data.F_FilePath)); } } if (data.F_FileType == "ppt" || data.F_FileType == "pptx") { filepath = filepath.Substring(0, filepath.LastIndexOf(".")) + ".pdf";//文件名 if (!DirFileHelper.IsExistFile(filepath)) { filePreviewIBLL.GetPptData(DirFileHelper.GetAbsolutePath(data.F_FilePath)); } } //FileDownHelper.DownLoadold(filepath, filename); //FileStream files = new FileStream(filepath, FileMode.Open); //byte[] fileByte = new byte[files.Length]; //files.Read(fileByte, 0, fileByte.Length); //files.Close(); //System.IO.MemoryStream ms = new MemoryStream(fileByte, 0, fileByte.Length); Response.ClearContent(); switch (data.F_FileType) { case "jpg": Response.ContentType = "image/jpeg"; break; case "gif": Response.ContentType = "image/gif"; break; case "png": Response.ContentType = "image/png"; break; case "bmp": Response.ContentType = "application/x-bmp"; break; case "jpeg": Response.ContentType = "image/jpeg"; break; case "doc": Response.ContentType = "application/pdf"; break; case "docx": Response.ContentType = "application/pdf"; break; case "ppt": Response.ContentType = "application/x-ppt"; break; case "pptx": Response.ContentType = "application/x-ppt"; break; case "xls": Response.ContentType = "application/pdf"; break; case "xlsx": Response.ContentType = "application/pdf"; break; case "pdf": Response.ContentType = "application/pdf"; break; case "txt": Response.ContentType = "text/plain"; break; case "csv": Response.ContentType = ""; break; default: Response.ContentType = "application/pdf"; break; } Response.Charset = "GB2312"; Response.WriteFile(filepath); //Response.BinaryWrite(ms.ToArray()); } #endregion } }