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
|
{
|
/// <summary>
|
/// EpanetFile
|
/// </summary>
|
[Route("Epanet/EpanetFile/Logic")]
|
[ApiDescriptionSettings("Epanet", Name = "Epanet文件(业务)", Order = 900)]
|
public class EpanetFile_LogicController : IDynamicApiController
|
{
|
|
private readonly IHttpContextAccessor _httpContextAccessor;
|
|
/// <summary>
|
///
|
/// </summary>
|
public EpanetFile_LogicController(IHttpContextAccessor httpContextAccessor)
|
{
|
_httpContextAccessor = httpContextAccessor;
|
}
|
|
#region 通过 BelongType 和 BelongID 获取
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取
|
/// </summary>
|
[Route("GetByBelongTypeAndBelongID@V1.0")]
|
[HttpGet]
|
public List<EpanetFileLogicDto> 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;
|
}
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取(不需要验证Token)
|
/// </summary>
|
[AllowAnonymous]
|
[Route("GetByBelongTypeAndBelongID@V1.1")]
|
[HttpGet]
|
public List<EpanetFileLogicDto> 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 获取拓展
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取拓展
|
/// </summary>
|
[Route("GetExByBelongTypeAndBelongID@V1.0")]
|
[HttpGet]
|
public List<EpanetFileExLogicDto> 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;
|
}
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取拓展(不需要验证Token)
|
/// </summary>
|
[AllowAnonymous]
|
[Route("GetExByBelongTypeAndBelongID@V1.1")]
|
[HttpGet]
|
public List<EpanetFileExLogicDto> 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 获取
|
|
/// <summary>
|
/// 通过 ID 获取
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 通过 ID 获取(不需要验证Token)
|
/// </summary>
|
[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 获取拓展
|
|
/// <summary>
|
/// 通过 ID 获取拓展
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 通过 ID 获取拓展(不需要验证Token)
|
/// </summary>
|
[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 获取
|
|
/// <summary>
|
/// 通过 Ids 获取
|
/// </summary>
|
[Route("GetByIds@V1.0")]
|
[HttpGet]
|
public List<EpanetFileLogicDto> 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;
|
}
|
|
/// <summary>
|
/// 通过 Ids 获取(不需要验证Token)
|
/// </summary>
|
[AllowAnonymous]
|
[Route("GetByIds@V1.1")]
|
[HttpGet]
|
public List<EpanetFileLogicDto> 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 获取拓展
|
|
/// <summary>
|
/// 通过 Ids 获取拓展
|
/// </summary>
|
[Route("GetExByIds@V1.0")]
|
[HttpGet]
|
public List<EpanetFileExLogicDto> 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;
|
}
|
|
/// <summary>
|
/// 通过 Ids 获取拓展(不需要验证Token)
|
/// </summary>
|
[AllowAnonymous]
|
[Route("GetExByIds@V1.1")]
|
[HttpGet]
|
public List<EpanetFileExLogicDto> 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 获取工作文件
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取工作文件
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取工作文件(不需要验证Token)
|
/// </summary>
|
[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 获取工作文件拓展
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取工作文件拓展
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取工作文件拓展(不需要验证Token)
|
/// </summary>
|
[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 获取默认工作文件
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取默认工作文件
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取默认工作文件(不需要验证Token)
|
/// </summary>
|
[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 获取默认工作文件拓展
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取默认工作文件拓展
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取默认工作文件拓展(不需要验证Token)
|
/// </summary>
|
[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
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取工作文件Url(全路径 采用ip+port访问正常,用域名访问会有问题)
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取工作文件Url(全路径 采用ip+port访问正常,用域名访问会有问题)(不需要验证Token)
|
/// </summary>
|
[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
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取工作文件相对Url(去掉前缀)
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取工作文件相对Url(去掉前缀)(不需要验证Token)
|
/// </summary>
|
[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
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取默认工作文件Url(全路径 采用ip+port访问正常,用域名访问会有问题)
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取默认工作文件Url(全路径 采用ip+port访问正常,用域名访问会有问题)(不需要验证Token)
|
/// </summary>
|
[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
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取默认工作文件相对Url(去掉前缀)
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 获取默认工作文件相对Url(去掉前缀)(不需要验证Token)
|
/// </summary>
|
[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 下载工作文件
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 下载工作文件
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 下载工作文件(不需要验证Token)
|
/// </summary>
|
[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 下载默认工作文件
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 下载默认工作文件
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 通过 BelongType 和 BelongID 下载默认工作文件(不需要验证Token)
|
/// </summary>
|
[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
|
|
/// <summary>
|
/// 获取文件Url(全路径 采用ip+port访问正常,用域名访问会有问题)
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 获取文件Url(全路径 采用ip+port访问正常,用域名访问会有问题)(不需要验证Token)
|
/// </summary>
|
[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
|
|
/// <summary>
|
/// 获取文件相对Url(去掉前缀)
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 获取文件相对Url(去掉前缀)(不需要验证Token)
|
/// </summary>
|
[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 下载文件
|
|
/// <summary>
|
/// 下载文件(返回流)
|
/// </summary>
|
[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;
|
}
|
|
/// <summary>
|
/// 下载文件(返回流)(不需要验证Token)
|
/// </summary>
|
[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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
}
|