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
}
}