feat(报工): 添加报工数据导出功能

- 在IProReportworkService接口中添加导出方法定义
- 实现报工数据导出服务逻辑
- 添加导出API接口
- 为ProReportworkDto添加ExcelColumn属性用于导出映射
- 调整查询参数类型为可空类型以支持更灵活的查询
This commit is contained in:
2026-01-30 10:47:14 +08:00
parent 57265f115a
commit e12417dec2
5 changed files with 184 additions and 88 deletions

View File

@@ -6,6 +6,8 @@ using DOAN.Admin.WebApi.Filters;
using DOAN.Model.MES.product;
using DOAN.Service.MES.product.IService;
using Infrastructure.Converter;
using DOAN.Common;
using Microsoft.AspNetCore.Authorization;
//创建时间2024-12-03
namespace DOAN.Admin.WebApi.Controllers
@@ -65,25 +67,25 @@ namespace DOAN.Admin.WebApi.Controllers
}
/// <summary>
/// 查询工序列表
/// </summary>
/// <returns></returns>
[HttpPost("baseworkprocesseslist")]
[ActionPermissionFilter(Permission = "proreportwork:baseworkprocesseslist")]
public IActionResult QueryBaseWorkProcesses()
{
var response = _ProReportworkService.GetBaseWorkProcesses();
return SUCCESS(response);
}
/// <summary>
/// 查询工序列表
/// </summary>
/// <returns></returns>
[HttpPost("baseworkprocesseslist")]
[ActionPermissionFilter(Permission = "proreportwork:baseworkprocesseslist")]
public IActionResult QueryBaseWorkProcesses()
{
/// <summary>
/// 查询报工详情
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
[HttpGet("{Id}")]
var response = _ProReportworkService.GetBaseWorkProcesses();
return SUCCESS(response);
}
/// <summary>
/// 查询报工详情
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
[HttpGet("{Id}")]
[ActionPermissionFilter(Permission = "proreportwork:query")]
public IActionResult GetProReportwork(string Id)
{
@@ -138,7 +140,32 @@ namespace DOAN.Admin.WebApi.Controllers
return ToResponse(_ProReportworkService.Delete(idArr));
}
/// <summary>
/// 导出报工数据
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
[HttpPost("export")]
[Log(Title = "报工导出", BusinessType = BusinessType.EXPORT)]
[AllowAnonymous]
public IActionResult WorkOrderExport([FromBody] ProReportworkQueryDto parm)
{
// 转换日期格式
if (parm.JobDateTime != null && parm.JobDateTime.Length == 2)
{
parm.JobDateTime[0] = DOANConvertDate.ConvertLocalDate(parm.JobDateTime[0]);
parm.JobDateTime[1] = DOANConvertDate.ConvertLocalDate(parm.JobDateTime[1]);
}
// 忽略分页,执行全量数据查询
parm.PageNum = 1;
parm.PageSize = int.MaxValue;
var list = _ProReportworkService.GetExportList(parm);
var result = ExportExcelMini(list, "proreportwork", "报工数据");
return ExportExcel(result.Item2, result.Item1);
}
}
}