mahao
1 year ago
4 changed files with 219 additions and 3 deletions
@ -0,0 +1,136 @@ |
|||
using Magicodes.ExporterAndImporter.Core; |
|||
using System; |
|||
using System.ComponentModel.DataAnnotations; |
|||
|
|||
namespace Win.Sfs.SettleAccount.Entities.BQ.Dtos |
|||
{ |
|||
/// <summary>
|
|||
/// BBAC的EDI数据
|
|||
/// </summary>
|
|||
public class BBAC_SE_EDI_DTO |
|||
{ |
|||
/// <summary>
|
|||
/// LU+生产码
|
|||
/// </summary>
|
|||
[Display(Name = "LU+生产码")] |
|||
public string KeyCode { get; set; } = null!; |
|||
|
|||
/// <summary>
|
|||
/// 期间
|
|||
/// </summary>
|
|||
[Display(Name = "期间")] |
|||
public int Version { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 零件号
|
|||
/// </summary>
|
|||
[Display(Name = "零件号")] |
|||
public string LU { get; set; } = null!; |
|||
|
|||
/// <summary>
|
|||
/// 生产码
|
|||
/// </summary>
|
|||
[Display(Name = "生产码")] |
|||
public string PN { get; set; } = null!; |
|||
|
|||
/// <summary>
|
|||
/// 日顺序号
|
|||
/// </summary>
|
|||
[Display(Name = "日顺序号")] |
|||
public string SeqNumber { get; set; } = null!; |
|||
|
|||
/// <summary>
|
|||
/// 小总成号
|
|||
/// </summary>
|
|||
[Display(Name = "小总成号")] |
|||
public string AssemblyCode { get; set; } = null!; |
|||
|
|||
/// <summary>
|
|||
/// 注塑码
|
|||
/// </summary>
|
|||
[Display(Name = "注塑码")] |
|||
public string InjectionCode { get; set; } = null!; |
|||
|
|||
/// <summary>
|
|||
/// EDI数量
|
|||
/// </summary>
|
|||
[Display(Name = "EDI数量")] |
|||
public decimal Qty { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 订货时间
|
|||
/// </summary>
|
|||
[Display(Name = "订货时间")] |
|||
public DateTime BeginDate { get; set; } |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 导出
|
|||
/// </summary>
|
|||
public class BBAC_SE_EDI_EXPORT_DTO |
|||
{ |
|||
/// <summary>
|
|||
/// LU+生产码
|
|||
/// </summary>
|
|||
[Display(Name = "LU+生产码")] |
|||
[ExporterHeader(DisplayName = "LU+生产码")] |
|||
public string KeyCode { get; set; } = null!; |
|||
|
|||
/// <summary>
|
|||
/// 期间
|
|||
/// </summary>
|
|||
[Display(Name = "期间")] |
|||
[ExporterHeader(DisplayName = "期间")] |
|||
public int Version { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 零件号
|
|||
/// </summary>
|
|||
[Display(Name = "零件号")] |
|||
[ExporterHeader(DisplayName = "零件号")] |
|||
public string LU { get; set; } = null!; |
|||
|
|||
/// <summary>
|
|||
/// 生产码
|
|||
/// </summary>
|
|||
[Display(Name = "生产码")] |
|||
[ExporterHeader(DisplayName = "{0}")] |
|||
public string PN { get; set; } = null!; |
|||
|
|||
/// <summary>
|
|||
/// 日顺序号
|
|||
/// </summary>
|
|||
[Display(Name = "日顺序号")] |
|||
[ExporterHeader(DisplayName = "{0}")] |
|||
public string SeqNumber { get; set; } = null!; |
|||
|
|||
/// <summary>
|
|||
/// 小总成号
|
|||
/// </summary>
|
|||
[Display(Name = "小总成号")] |
|||
[ExporterHeader(DisplayName = "{0}")] |
|||
public string AssemblyCode { get; set; } = null!; |
|||
|
|||
/// <summary>
|
|||
/// 注塑码
|
|||
/// </summary>
|
|||
[Display(Name = "注塑码")] |
|||
[ExporterHeader(DisplayName = "{0}")] |
|||
public string InjectionCode { get; set; } = null!; |
|||
|
|||
/// <summary>
|
|||
/// EDI数量
|
|||
/// </summary>
|
|||
[Display(Name = "EDI数量")] |
|||
[ExporterHeader(DisplayName = "{0}")] |
|||
public decimal Qty { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 订货时间
|
|||
/// </summary>
|
|||
[Display(Name = "订货时间")] |
|||
[ExporterHeader(DisplayName = "{0}")] |
|||
public DateTime BeginDate { get; set; } |
|||
} |
|||
|
|||
} |
@ -1,17 +1,80 @@ |
|||
using Microsoft.AspNetCore.Authorization; |
|||
using Microsoft.AspNetCore.Components; |
|||
using Microsoft.AspNetCore.Mvc; |
|||
using SettleAccount.Domain.BQ; |
|||
using Shouldly; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Dtos; |
|||
using Volo.Abp.Application.Services; |
|||
using Win.Sfs.BaseData.ImportExcelCommon; |
|||
using Win.Sfs.SettleAccount.Entities.BQ.Dtos; |
|||
using Win.Sfs.SettleAccount.ExcelImporter; |
|||
using Win.Sfs.Shared.RepositoryBase; |
|||
|
|||
namespace Win.Sfs.SettleAccount.Entities.BQ |
|||
{ |
|||
/// <summary>
|
|||
/// BBAC的EDI数据
|
|||
/// </summary>
|
|||
[AllowAnonymous] |
|||
[Route("api/settleaccount/bbac_se_edi_service")] |
|||
public class BBAC_SE_EDI_SERVICE : ApplicationService |
|||
{ |
|||
/// <summary>
|
|||
/// BBAC的EDI数据仓储
|
|||
/// </summary>
|
|||
private readonly INormalEfCoreRepository<BBAC_SE_EDI, Guid> _repository; |
|||
|
|||
/// <summary>
|
|||
/// excel服务
|
|||
/// </summary>
|
|||
private readonly IExcelImportAppService _excelImportService; |
|||
|
|||
/// <summary>
|
|||
/// 构造
|
|||
/// </summary>
|
|||
public BBAC_SE_EDI_SERVICE(INormalEfCoreRepository<BBAC_SE_EDI, Guid> repository, IExcelImportAppService excelImportService) |
|||
{ |
|||
_repository = repository; |
|||
_excelImportService = excelImportService; |
|||
} |
|||
|
|||
#region 导出
|
|||
/// <summary>
|
|||
/// 导出
|
|||
/// </summary>
|
|||
[HttpPost] |
|||
[Route("Export")] |
|||
public async Task<string> ExportAsync(RequestDto input) |
|||
{ |
|||
string fileName = $"BBAC的EDI数据_{Guid.NewGuid()}.xlsx"; |
|||
var entities = await _repository.GetListByFilterAsync(input.Filters, input.Sorting, int.MaxValue, 0, true); |
|||
var dtos = ObjectMapper.Map<List<BBAC_SE_EDI>, List<BBAC_SE_EDI_EXPORT_DTO>>(entities); |
|||
|
|||
ExportImporter _exportImporter = new ExportImporter(); |
|||
var result = await _exportImporter.ExcelExporter(dtos); |
|||
result.ShouldNotBeNull(); |
|||
|
|||
await _excelImportService.SaveBlobAsync(new SaveExcelImportInputDto { Name = fileName, Content = result }); |
|||
return fileName; |
|||
} |
|||
#endregion
|
|||
|
|||
#region 查询
|
|||
/// <summary>
|
|||
/// 获取列表
|
|||
/// </summary>
|
|||
[HttpPost] |
|||
[Route("list")] |
|||
public async Task<PagedResultDto<BBAC_SE_EDI_DTO>> GetListAsync(RequestDto input) |
|||
{ |
|||
var entities = await _repository.GetListByFilterAsync(input.Filters, input.Sorting, input.MaxResultCount, input.SkipCount, true); |
|||
var totalCount = await _repository.GetCountByFilterAsync(input.Filters); |
|||
var dtos = ObjectMapper.Map<List<BBAC_SE_EDI>, List<BBAC_SE_EDI_DTO>>(entities); |
|||
return new PagedResultDto<BBAC_SE_EDI_DTO>(totalCount, dtos); |
|||
} |
|||
#endregion
|
|||
|
|||
} |
|||
} |
|||
|
Loading…
Reference in new issue