//using Ao.Lang; //using CMS.Extensions.Abp.AspNetCore.Mvc.Filters; //using CMS.Plugin.WareCmsUtilityApi.Application.Contracts.Dtos.Samples; //using CMS.Plugin.WareCmsUtilityApi.Application.Contracts.Services; //using Microsoft.AspNetCore.Authorization; //using Microsoft.AspNetCore.Http; //using Microsoft.AspNetCore.Mvc; //using MiniExcelLibs; //using System.Reflection; //using Volo.Abp; //using Volo.Abp.Application.Dtos; //namespace CMS.Plugin.WareCmsUtilityApi.Controller //{ // /// // /// Sample服务 // /// // [ApiController] // [TypeFilter(typeof(CMSLanguageFilter))] // [TypeFilter(typeof(CMSUowActionFilter))] // [TypeFilter(typeof(CMSAuditActionFilter))] // [TypeFilter(typeof(CMSExceptionFilter))] // [Route("api/v{version:apiVersion}/WareCmsUtilityApi/[controller]")] // public class SampleController : ControllerBase // { // private readonly ISampleAppService _sampleAppService; // /// // /// Initializes a new instance of the class. // /// // /// The sample application service. // public SampleController(ISampleAppService sampleAppService) // { // _sampleAppService = sampleAppService; // } // /// // /// 获取sample. // /// // /// 标识符. // /// // [HttpGet] // [Route("{id}")] // public virtual Task GetAsync(Guid id) // { // return _sampleAppService.GetAsync(id); // } // /// // /// 获取sample的列表. // /// // /// 输入. // /// // [HttpGet] // public virtual Task> GetListAsync([FromQuery] GetSamplesInput input) // { // return _sampleAppService.GetListAsync(input); // } // /// // /// 创建sample. // /// // /// 输入. // /// // //[Authorize] // [HttpPost] // public virtual Task CreateAsync(SampleCreateDto input) // { // return _sampleAppService.CreateAsync(input); // } // /// // /// 更新sample. // /// // /// 标识符. // /// 输入. // /// // //[Authorize] // [HttpPut] // [Route("{id}")] // public virtual Task UpdateAsync(Guid id, SampleUpdateDto input) // { // return _sampleAppService.UpdateAsync(id, input); // } // /// // /// 克隆Sample. // /// // /// Id集合. // /// // //[Authorize] // [HttpPost] // [Route("Clone")] // public virtual Task> CloneAsync([FromBody] IEnumerable ids) // { // return _sampleAppService.CloneAsync(ids); // } // /// // /// 删除sample. // /// // /// 标识符. // /// // //[Authorize] // [HttpDelete] // [Route("{id}")] // public virtual Task DeleteAsync(Guid id) // { // return _sampleAppService.DeleteAsync(id); // } // /// // /// 批量删除sample. // /// // /// The ids. // /// // //[Authorize] // [HttpDelete] // public virtual Task DeleteAsync([FromBody] IEnumerable ids) // { // return _sampleAppService.DeleteManyAsync(ids); // } // /// // /// 调整排序. // /// // /// 标识符. // /// // [HttpPut] // [Route("{id}/AdjustSort/{sort}")] // public virtual Task AdjustSortAsync(Guid id, int sort) // { // return _sampleAppService.AdjustSortAsync(id, sort); // } // /// // /// 导入sample. // /// // /// // [Authorize] // [HttpPost] // [Route("Import")] // public virtual async Task ImportAsync(IFormFile file) // { // using var stream = new MemoryStream(); // await file.CopyToAsync(stream); // stream.Seek(0L, SeekOrigin.Begin); // var sheetNames = stream.GetSheetNames(); // var sampleRows = sheetNames.Contains("配置") ? MiniExcel.Query(stream, sheetName: "配置").ToList() : new(); // if (!sampleRows.Any()) // { // throw new UserFriendlyException("请检查导入的表格"); // } // await _sampleAppService.ImportAsync(new SamplesImportModel // { // Samples = sampleRows, // }); // return Ok(); // } // /// // /// 导出sample. // /// // /// // [HttpGet] // [Route("Export")] // public virtual async Task ExportAsync([FromQuery] GetSamplesInput input) // { // input.MaxResultCount = int.MaxValue; // var exportData = await _sampleAppService.ExportAsync(input); // var templatePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"Resources/Templates/Sample导出模板.xlsx"); // if (!System.IO.File.Exists(templatePath)) // { // templatePath = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) ?? string.Empty, $"Resources/Templates/Sample导出模板.xlsx"); // } // var memoryStream = new MemoryStream(); // await memoryStream.SaveAsByTemplateAsync(templatePath, exportData.Sheets); // memoryStream.Seek(0L, SeekOrigin.Begin); // return new FileStreamResult(memoryStream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") { FileDownloadName = $"{exportData.FileName}_{DateTime.Now:yyyyMMddhhmmss}.xlsx" }; // } // } //}