using Microsoft.AspNetCore.Mvc; using System.Net; using System.Net.Http.Headers; using Microsoft.Extensions.Hosting.Internal; using Microsoft.AspNetCore.Http.Extensions; using IStation.Untity; using Furion.DynamicApiController; using System.ComponentModel.DataAnnotations; using Mapster; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Authorization; namespace IStation.Application { /// /// EpanetFile /// [Route("Epanet/EpanetFile/Logic")] [ApiDescriptionSettings("Epanet", Name = "Epanet文件(业务)", Order = 900)] public class EpanetFile_LogicController : IDynamicApiController { private readonly IHttpContextAccessor _httpContextAccessor; /// /// /// public EpanetFile_LogicController(IHttpContextAccessor httpContextAccessor) { _httpContextAccessor = httpContextAccessor; } #region 通过 BelongType 和 BelongID 获取 /// /// 通过 BelongType 和 BelongID 获取 /// [Route("GetByBelongTypeAndBelongID@V1.0")] [HttpGet] public List GetByBelongTypeAndBelongID_V1_0([FromQuery][Required] BelongUnderCorpInput input) { var list = new Service.EpanetFile().GetByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); var vmList = list?.Select(x => new EpanetFileLogicDto(x)).ToList(); return vmList; } /// /// 通过 BelongType 和 BelongID 获取(不需要验证Token) /// [AllowAnonymous] [Route("GetByBelongTypeAndBelongID@V1.1")] [HttpGet] public List GetByBelongTypeAndBelongID_V1_1([FromQuery][Required] BelongUnderCorpInput input) { var list = new Service.EpanetFile().GetByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); var vmList = list?.Select(x => new EpanetFileLogicDto(x)).ToList(); return vmList; } #endregion #region 通过 BelongType 和 BelongID 获取拓展 /// /// 通过 BelongType 和 BelongID 获取拓展 /// [Route("GetExByBelongTypeAndBelongID@V1.0")] [HttpGet] public List GetExByBelongTypeAndBelongID_V1_0([FromQuery][Required] BelongUnderCorpInput input) { var list = new Service.EpanetFile().GetByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); var vmList = list?.Select(x => new EpanetFileExLogicDto(x)).ToList(); return vmList; } /// /// 通过 BelongType 和 BelongID 获取拓展(不需要验证Token) /// [AllowAnonymous] [Route("GetExByBelongTypeAndBelongID@V1.1")] [HttpGet] public List GetExByBelongTypeAndBelongID_V1_1([FromQuery][Required] BelongUnderCorpInput input) { var list = new Service.EpanetFile().GetByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); var vmList = list?.Select(x => new EpanetFileExLogicDto(x)).ToList(); return vmList; } #endregion #region 通过 ID 获取 /// /// 通过 ID 获取 /// [Route("GetByID@V1.0")] [HttpGet] public EpanetFileLogicDto GetByID_V1_0([FromQuery][Required] IDUnderCorpInput input) { var model = new Service.EpanetFile().GetByID(input.CorpID, input.ID); if (model == null) return default; var vm = new EpanetFileLogicDto(model); return vm; } /// /// 通过 ID 获取(不需要验证Token) /// [AllowAnonymous] [Route("GetByID@V1.1")] [HttpGet] public EpanetFileLogicDto GetByID_V1_1([FromQuery][Required] IDUnderCorpInput input) { var model = new Service.EpanetFile().GetByID(input.CorpID, input.ID); if (model == null) return default; var vm = new EpanetFileLogicDto(model); return vm; } #endregion #region 通过 ID 获取拓展 /// /// 通过 ID 获取拓展 /// [Route("GetExByID@V1.0")] [HttpGet] public EpanetFileExLogicDto GetExByID_V1_0([FromQuery][Required] IDUnderCorpInput input) { var model = new Service.EpanetFile().GetByID(input.CorpID, input.ID); if (model == null) return default; var vm = new EpanetFileExLogicDto(model); return vm; } /// /// 通过 ID 获取拓展(不需要验证Token) /// [AllowAnonymous] [Route("GetExByID@V1.1")] [HttpGet] public EpanetFileExLogicDto GetExByID_V1_1([FromQuery][Required] IDUnderCorpInput input) { var model = new Service.EpanetFile().GetByID(input.CorpID, input.ID); if (model == null) return default; var vm = new EpanetFileExLogicDto(model); return vm; } #endregion #region 通过 Ids 获取 /// /// 通过 Ids 获取 /// [Route("GetByIds@V1.0")] [HttpGet] public List GetByIds_V1_0([FromQuery] IdsUnderCorpInput input) { var ids = LongListHelper.ToList(input.Ids); var list = new Service.EpanetFile().GetByIds(input.CorpID, ids); var vmList = list?.Select(x => new EpanetFileLogicDto(x)).ToList(); return vmList; } /// /// 通过 Ids 获取(不需要验证Token) /// [AllowAnonymous] [Route("GetByIds@V1.1")] [HttpGet] public List GetByIds_V1_1([FromQuery] IdsUnderCorpInput input) { var ids = LongListHelper.ToList(input.Ids); var list = new Service.EpanetFile().GetByIds(input.CorpID, ids); var vmList = list?.Select(x => new EpanetFileLogicDto(x)).ToList(); return vmList; } #endregion #region 通过 Ids 获取拓展 /// /// 通过 Ids 获取拓展 /// [Route("GetExByIds@V1.0")] [HttpGet] public List GetExByIds_V1_0([FromQuery] IdsUnderCorpInput input) { var ids = LongListHelper.ToList(input.Ids); var list = new Service.EpanetFile().GetByIds(input.CorpID, ids); var vmList = list?.Select(x => new EpanetFileExLogicDto(x)).ToList(); return vmList; } /// /// 通过 Ids 获取拓展(不需要验证Token) /// [AllowAnonymous] [Route("GetExByIds@V1.1")] [HttpGet] public List GetExByIds_V1_1([FromQuery] IdsUnderCorpInput input) { var ids = LongListHelper.ToList(input.Ids); var list = new Service.EpanetFile().GetByIds(input.CorpID, ids); var vmList = list?.Select(x => new EpanetFileExLogicDto(x)).ToList(); return vmList; } #endregion #region 通过 BelongType 和 BelongID 获取工作文件 /// /// 通过 BelongType 和 BelongID 获取工作文件 /// [Route("GetWorkingByBelongTypeAndBelongID@V1.0")] [HttpGet] public EpanetFileLogicDto GetWorkingByBelongTypeAndBelongID_V1_0([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var vm = new EpanetFileLogicDto(model); return vm; } /// /// 通过 BelongType 和 BelongID 获取工作文件(不需要验证Token) /// [AllowAnonymous] [Route("GetWorkingByBelongTypeAndBelongID@V1.1")] [HttpGet] public EpanetFileLogicDto GetWorkingByBelongTypeAndBelongID_V1_1([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var vm = new EpanetFileLogicDto(model); return vm; } #endregion #region 通过 BelongType 和 BelongID 获取工作文件拓展 /// /// 通过 BelongType 和 BelongID 获取工作文件拓展 /// [Route("GetExWorkingByBelongTypeAndBelongID@V1.0")] [HttpGet] public EpanetFileExLogicDto GetExWorkingByBelongTypeAndBelongID_V1_0([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var vm = new EpanetFileExLogicDto(model); return vm; } /// /// 通过 BelongType 和 BelongID 获取工作文件拓展(不需要验证Token) /// [AllowAnonymous] [Route("GetExWorkingByBelongTypeAndBelongID@V1.1")] [HttpGet] public EpanetFileExLogicDto GetExWorkingByBelongTypeAndBelongID_V1_1([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var vm = new EpanetFileExLogicDto(model); return vm; } #endregion #region 通过 BelongType 和 BelongID 获取默认工作文件 /// /// 通过 BelongType 和 BelongID 获取默认工作文件 /// [Route("GetDefaultWorkingByBelongTypeAndBelongID@V1.0")] [HttpGet] public EpanetFileLogicDto GetDefaultWorkingByBelongTypeAndBelongID_V1_0([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var vm = new EpanetFileLogicDto(model); return vm; } /// /// 通过 BelongType 和 BelongID 获取默认工作文件(不需要验证Token) /// [AllowAnonymous] [Route("GetDefaultWorkingByBelongTypeAndBelongID@V1.1")] [HttpGet] public EpanetFileLogicDto GetDefaultWorkingByBelongTypeAndBelongID_V1_1([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var vm = new EpanetFileLogicDto(model); return vm; } #endregion #region 通过 BelongType 和 BelongID 获取默认工作文件拓展 /// /// 通过 BelongType 和 BelongID 获取默认工作文件拓展 /// [Route("GetExDefaultWorkingByBelongTypeAndBelongID@V1.0")] [HttpGet] public EpanetFileExLogicDto GetExDefaultWorkingByBelongTypeAndBelongID_V1_0([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var vm = new EpanetFileExLogicDto(model); return vm; } /// /// 通过 BelongType 和 BelongID 获取默认工作文件拓展(不需要验证Token) /// [AllowAnonymous] [Route("GetExDefaultWorkingByBelongTypeAndBelongID@V1.1")] [HttpGet] public EpanetFileExLogicDto GetExDefaultWorkingByBelongTypeAndBelongID_V1_1([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var vm = new EpanetFileExLogicDto(model); return vm; } #endregion #region 通过 BelongType 和 BelongID 获取工作文件Url /// /// 通过 BelongType 和 BelongID 获取工作文件Url(全路径 采用ip+port访问正常,用域名访问会有问题) /// [Route("GetWorkingFileUrlByBelongTypeAndBelongID@V1.0")] [HttpGet] public string GetWorkingFileUrlByBelongTypeAndBelongID_V1_0([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var url = $"http://{_httpContextAccessor.HttpContext.Request.Host}/{FileHelper.GetRelatedFilePath(model.StorageHouse, model.StorageCode)}"; return url; } /// /// 通过 BelongType 和 BelongID 获取工作文件Url(全路径 采用ip+port访问正常,用域名访问会有问题)(不需要验证Token) /// [AllowAnonymous] [Route("GetWorkingFileUrlByBelongTypeAndBelongID@V1.1")] [HttpGet] public string GetWorkingFileUrlByBelongTypeAndBelongID_V1_1([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var url = $"http://{_httpContextAccessor.HttpContext.Request.Host}/{FileHelper.GetRelatedFilePath(model.StorageHouse, model.StorageCode)}"; return url; } #endregion #region 通过 BelongType 和 BelongID 获取工作文件相对Url /// /// 通过 BelongType 和 BelongID 获取工作文件相对Url(去掉前缀) /// [Route("GetWorkingFileRelatedUrlByBelongTypeAndBelongID@V1.0")] [HttpGet] public string GetWorkingFileRelatedUrlByBelongTypeAndBelongID_V1_0([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var url = FileHelper.GetRelatedFilePath(model.StorageHouse, model.StorageCode); return url; } /// /// 通过 BelongType 和 BelongID 获取工作文件相对Url(去掉前缀)(不需要验证Token) /// [AllowAnonymous] [Route("GetWorkingFileRelatedUrlByBelongTypeAndBelongID@V1.1")] [HttpGet] public string GetWorkingFileRelatedUrlByBelongTypeAndBelongID_V1_1([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var url = FileHelper.GetRelatedFilePath(model.StorageHouse, model.StorageCode); return url; } #endregion #region 通过 BelongType 和 BelongID 获取默认工作文件Url /// /// 通过 BelongType 和 BelongID 获取默认工作文件Url(全路径 采用ip+port访问正常,用域名访问会有问题) /// [Route("GetDefaultWorkingFileUrlByBelongTypeAndBelongID@V1.0")] [HttpGet] public string GetDefaultWorkingFileUrlByBelongTypeAndBelongID_V1_0([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetDefaultWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var url = $"http://{_httpContextAccessor.HttpContext.Request.Host}/{FileHelper.GetRelatedFilePath(model.StorageHouse, model.StorageCode)}"; return url; } /// /// 通过 BelongType 和 BelongID 获取默认工作文件Url(全路径 采用ip+port访问正常,用域名访问会有问题)(不需要验证Token) /// [AllowAnonymous] [Route("GetDefaultWorkingFileUrlByBelongTypeAndBelongID@V1.1")] [HttpGet] public string GetDefaultWorkingFileUrlByBelongTypeAndBelongID_V1_1([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetDefaultWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var url = $"http://{_httpContextAccessor.HttpContext.Request.Host}/{FileHelper.GetRelatedFilePath(model.StorageHouse, model.StorageCode)}"; return url; } #endregion #region 通过 BelongType 和 BelongID 获取默认工作文件相对Url /// /// 通过 BelongType 和 BelongID 获取默认工作文件相对Url(去掉前缀) /// [Route("GetDefaultWorkingFileRelatedUrlByBelongTypeAndBelongID@V1.0")] [HttpGet] public string GetDefaultWorkingFileRelatedUrlByBelongTypeAndBelongID_V1_0([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetDefaultWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var url = FileHelper.GetRelatedFilePath(model.StorageHouse, model.StorageCode); return url; } /// /// 通过 BelongType 和 BelongID 获取默认工作文件相对Url(去掉前缀)(不需要验证Token) /// [AllowAnonymous] [Route("GetDefaultWorkingFileRelatedUrlByBelongTypeAndBelongID@V1.1")] [HttpGet] public string GetDefaultWorkingFileRelatedUrlByBelongTypeAndBelongID_V1_1([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetDefaultWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) return default; var url = FileHelper.GetRelatedFilePath(model.StorageHouse, model.StorageCode); return url; } #endregion #region 通过 BelongType 和 BelongID 下载工作文件 /// /// 通过 BelongType 和 BelongID 下载工作文件 /// [Route("DownloadWorkingFileByBelongTypeAndBelongID@V1.0")] [HttpGet] [NonUnify] public HttpResponseMessage DownloadWorkingFileByBelongTypeAndBelongID_V1_0([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) { return new HttpResponseMessage(HttpStatusCode.NoContent); } if (string.IsNullOrEmpty(model.StorageCode)) { return new HttpResponseMessage(HttpStatusCode.NoContent); } var file = FileHelper.DownloadSubFile(model.StorageHouse, model.StorageCode); if (file == null) { return new HttpResponseMessage(HttpStatusCode.NoContent); } var result = new HttpResponseMessage(HttpStatusCode.OK); result.Content = new StreamContent(file); result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); return result; } /// /// 通过 BelongType 和 BelongID 下载工作文件(不需要验证Token) /// [AllowAnonymous] [Route("DownloadWorkingFileByBelongTypeAndBelongID@V1.1")] [HttpGet] [NonUnify] public HttpResponseMessage DownloadWorkingFileByBelongTypeAndBelongID_V1_1([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) { return new HttpResponseMessage(HttpStatusCode.NoContent); } if (string.IsNullOrEmpty(model.StorageCode)) { return new HttpResponseMessage(HttpStatusCode.NoContent); } var file = FileHelper.DownloadSubFile(model.StorageHouse, model.StorageCode); if (file == null) { return new HttpResponseMessage(HttpStatusCode.NoContent); } var result = new HttpResponseMessage(HttpStatusCode.OK); result.Content = new StreamContent(file); result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); return result; } #endregion #region 通过 BelongType 和 BelongID 下载默认工作文件 /// /// 通过 BelongType 和 BelongID 下载默认工作文件 /// [Route("DownloadDefaultWorkingFileByBelongTypeAndBelongID@V1.0")] [HttpGet] [NonUnify] public HttpResponseMessage DownloadDefaultWorkingFileByBelongTypeAndBelongID_V1_0([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetDefaultWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) { return new HttpResponseMessage(HttpStatusCode.NoContent); } if (string.IsNullOrEmpty(model.StorageCode)) { return new HttpResponseMessage(HttpStatusCode.NoContent); } var file = FileHelper.DownloadSubFile(model.StorageHouse, model.StorageCode); if (file == null) { return new HttpResponseMessage(HttpStatusCode.NoContent); } var result = new HttpResponseMessage(HttpStatusCode.OK); result.Content = new StreamContent(file); result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); return result; } /// /// 通过 BelongType 和 BelongID 下载默认工作文件(不需要验证Token) /// [AllowAnonymous] [Route("DownloadDefaultWorkingFileByBelongTypeAndBelongID@V1.1")] [HttpGet] [NonUnify] public HttpResponseMessage DownloadDefaultWorkingFileByBelongTypeAndBelongID_V1_1([FromQuery][Required] BelongUnderCorpInput input) { var model = new Service.EpanetFile().GetDefaultWorkingByBelongTypeAndBelongID(input.CorpID, input.BelongType, input.BelongID); if (model == null) { return new HttpResponseMessage(HttpStatusCode.NoContent); } if (string.IsNullOrEmpty(model.StorageCode)) { return new HttpResponseMessage(HttpStatusCode.NoContent); } var file = FileHelper.DownloadSubFile(model.StorageHouse, model.StorageCode); if (file == null) { return new HttpResponseMessage(HttpStatusCode.NoContent); } var result = new HttpResponseMessage(HttpStatusCode.OK); result.Content = new StreamContent(file); result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); return result; } #endregion #region 获取文件Url /// /// 获取文件Url(全路径 采用ip+port访问正常,用域名访问会有问题) /// [Route("GetFileUrl@V1.0")] [HttpGet] public string GetFileUrl_V1_0([FromQuery] IDUnderCorpInput input) { var model = new Service.EpanetFile().GetByID(input.CorpID, input.ID); if (model == null) { throw new Exception("未检索到基础信息"); } var url = $"http://{_httpContextAccessor.HttpContext.Request.Host}/{FileHelper.GetRelatedFilePath(model.StorageHouse, model.StorageCode)}"; return url; } /// /// 获取文件Url(全路径 采用ip+port访问正常,用域名访问会有问题)(不需要验证Token) /// [AllowAnonymous] [Route("GetFileUrl@V1.1")] [HttpGet] public string GetFileUrl_V1_1([FromQuery] IDUnderCorpInput input) { var model = new Service.EpanetFile().GetByID(input.CorpID, input.ID); if (model == null) { throw new Exception("未检索到基础信息"); } var url = $"http://{_httpContextAccessor.HttpContext.Request.Host}/{FileHelper.GetRelatedFilePath(model.StorageHouse, model.StorageCode)}"; return url; } #endregion #region 获取文件相对Url /// /// 获取文件相对Url(去掉前缀) /// [Route("GetFileRelatedUrl@V1.0")] [HttpGet] public string GetFileRelatedUrl_V1_0([FromQuery] IDUnderCorpInput input) { var model = new Service.EpanetFile().GetByID(input.CorpID, input.ID); if (model == null) { throw new Exception("未检索到基础信息"); } var url = FileHelper.GetRelatedFilePath(model.StorageHouse, model.StorageCode); return url; } /// /// 获取文件相对Url(去掉前缀)(不需要验证Token) /// [AllowAnonymous] [Route("GetFileRelatedUrl@V1.1")] [HttpGet] public string GetFileRelatedUrl_V1_1([FromQuery] IDUnderCorpInput input) { var model = new Service.EpanetFile().GetByID(input.CorpID, input.ID); if (model == null) { throw new Exception("未检索到基础信息"); } var url = FileHelper.GetRelatedFilePath(model.StorageHouse, model.StorageCode); return url; } #endregion #region 下载文件 /// /// 下载文件(返回流) /// [Route("DownloadFile@V1.0")] [HttpGet] [NonUnify] public HttpResponseMessage DownloadFile_V1_0([FromQuery] IDUnderCorpInput input) { var model = new Service.EpanetFile().GetByID(input.CorpID, input.ID); if (model == null) { return new HttpResponseMessage(HttpStatusCode.NoContent); } if (string.IsNullOrEmpty(model.StorageCode)) { return new HttpResponseMessage(HttpStatusCode.NoContent); } var file = FileHelper.DownloadSubFile(model.StorageHouse, model.StorageCode); if (file == null) { return new HttpResponseMessage(HttpStatusCode.NoContent); } var result = new HttpResponseMessage(HttpStatusCode.OK); result.Content = new StreamContent(file); result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); return result; } /// /// 下载文件(返回流)(不需要验证Token) /// [AllowAnonymous] [Route("DownloadFile@V1.1")] [HttpGet] [NonUnify] public HttpResponseMessage DownloadFile_V1_1([FromQuery] IDUnderCorpInput input) { var model = new Service.EpanetFile().GetByID(input.CorpID, input.ID); if (model == null) { return new HttpResponseMessage(HttpStatusCode.NoContent); } if (string.IsNullOrEmpty(model.StorageCode)) { return new HttpResponseMessage(HttpStatusCode.NoContent); } var file = FileHelper.DownloadSubFile(model.StorageHouse, model.StorageCode); if (file == null) { return new HttpResponseMessage(HttpStatusCode.NoContent); } var result = new HttpResponseMessage(HttpStatusCode.OK); result.Content = new StreamContent(file); result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); return result; } #endregion } }