|
- using Learun.Application.Base.SystemModule;
- using Learun.Application.TwoDevelopment.LR_Desktop;
- using Learun.Util;
- using Nancy;
- using System;
- using System.Collections.Generic;
- using System.IO;
-
- namespace Learun.Application.WebApi.Modules
- {
- public class EnrollTemplateApi : BaseNoAuthentication
- {
- public EnrollTemplateApi()
- : base("/learun/adms/enrolltemplate")
- {
- //下载招生模板
- Get["/downenrolltemplate"] = DownEnrollTemplate;
- //下载人事模板
- Get["/downpersonneltemplate"] = DownPersonnelTemplate;
-
- //上传招生文件
- Post["/uploadenroll"] = UploadEnroll;
- //上传人事文件
- Post["/uploadpersonnel"] = UploadPersonnel;
- }
- private AnnexesFileIBLL annexesFileIBLL = new AnnexesFileBLL();
- private EnrollTemplateIBLL enrollTemplateIBLL = new EnrollTemplateBLL();
- private EnrollDataIBLL enrollDataIBLL = new EnrollDataBLL();
-
-
- /// <summary>
- /// 上传招生文件
- /// <summary>
- /// <returns></returns>
- public Response UploadEnroll(dynamic _)
- {
- var files = (List<HttpFile>)this.Context.Request.Files;
- var folderId = Upload(1, files);
- return SuccessString(folderId);
- }
-
- /// <summary>
- /// 上传人事文件
- /// </summary>
- /// <param name="_"></param>
- /// <returns></returns>
- public Response UploadPersonnel(dynamic _)
- {
- var files = (List<HttpFile>)this.Context.Request.Files;
- var folderId = Upload(2, files);
- return SuccessString(folderId);
- }
- /// <summary>
- /// 上传
- /// </summary>
- /// <param name="type"></param>
- /// <param name="files"></param>
- /// <returns></returns>
- private string Upload(int type,List<HttpFile> files)
- {
- var folderId = Guid.NewGuid().ToString();
-
- string filePath = Config.GetValue("AnnexesFile");
- string uploadDate = DateTime.Now.ToString("yyyyMMdd");
- string FileEextension = Path.GetExtension(files[0].Name);
- string fileGuid = Guid.NewGuid().ToString();
-
- string virtualPath = string.Format("{0}/{1}/{2}/{3}{4}", filePath, "EnrollData", uploadDate, fileGuid, FileEextension);
-
- //创建文件夹
- string path = Path.GetDirectoryName(virtualPath);
- Directory.CreateDirectory(path);
- AnnexesFileEntity fileAnnexesEntity = new AnnexesFileEntity();
- EnrollDataEntity enrollData = new EnrollDataEntity();
- 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 = files[0].Name;
- fileAnnexesEntity.F_FilePath = virtualPath;
- fileAnnexesEntity.F_FileSize = files[0].Value.Length.ToString();
- fileAnnexesEntity.F_FileExtensions = FileEextension;
- fileAnnexesEntity.F_FileType = FileEextension.Replace(".", "");
-
- annexesFileIBLL.SaveEntity(folderId, fileAnnexesEntity);
-
- enrollData.Id = Guid.NewGuid().ToString();
- enrollData.UploadTime = DateTime.Now;
- enrollData.Type = type;
- enrollData.Path = folderId;
- enrollDataIBLL.SaveEntity("",enrollData);
- }
-
- return folderId;
- }
-
- /// <summary>
- /// 下载招生模板
- /// </summary>
- /// <param name="_"></param>
- /// <returns></returns>
- public Response DownEnrollTemplate(dynamic _)
- {
- var enrollTemplate = enrollTemplateIBLL.GetEnabledEntity(1);
- if (enrollTemplate == null)
- {
- return Fail("无可用模板!");
- }
-
- var data = annexesFileIBLL.GetEntity(enrollTemplate.Path);
- string filepath = data.F_FilePath;
- if (FileDownHelper.FileExists(filepath))
- {
- FileDownHelper.DownLoadnew(filepath);
- }
- return Success("");
- }
- /// <summary>
- /// 下载人事模板
- /// </summary>
- /// <param name="_"></param>
- /// <returns></returns>
- public Response DownPersonnelTemplate(dynamic _)
- {
- var enrollTemplate = enrollTemplateIBLL.GetEnabledEntity(2);
- if (enrollTemplate == null)
- {
- return Fail("无可用模板!");
- }
-
- var data = annexesFileIBLL.GetEntity(enrollTemplate.Path);
- string filepath = data.F_FilePath;
- if (FileDownHelper.FileExists(filepath))
- {
- FileDownHelper.DownLoadnew(filepath);
- }
- return Success("");
- }
- }
- }
|