diff --git a/DOAN.Admin.WebApi/Controllers/MES/Group/AchievementController.cs b/DOAN.Admin.WebApi/Controllers/MES/Group/AchievementController.cs index 9d7b53e..8d69006 100644 --- a/DOAN.Admin.WebApi/Controllers/MES/Group/AchievementController.cs +++ b/DOAN.Admin.WebApi/Controllers/MES/Group/AchievementController.cs @@ -42,9 +42,28 @@ namespace DOAN.Admin.WebApi.Controllers.MES.Group [AllowAnonymous] public IActionResult UserExport([FromQuery] AchievementQueryDto parm) { - var list = _achievementService.GetstaffAchievementList(parm); + var data = _achievementService.GetstaffAchievementList(parm); + // 创建一个字典来映射属性名和中文标题 + var columnMapping = new Dictionary + { + { nameof(AchievementDto.Id), "ID" }, + { nameof(AchievementDto.Worker), "员工" }, + { nameof(AchievementDto.MaterialUse), "物料领用" }, + { nameof(AchievementDto.MechanicalProcessing), "机械加工" }, + { nameof(AchievementDto.MiddleCheck), "中间检查" }, + { nameof(AchievementDto.Handgrind), "手工研磨" }, + { nameof(AchievementDto.Machinegrind), "机研磨" }, + { nameof(AchievementDto.Finegrind), "精研磨" }, + { nameof(AchievementDto.WarehouseInspection), "入库检查" }, + { nameof(AchievementDto.Shipment), "出货" } + }; - var result = ExportExcelMini(list, "staff", "员工绩效"); + // 将数据转换为字典列表,以便 MiniExcel 可以识别列名 + var rows = data.Select(dto => columnMapping.ToDictionary( + mapping => mapping.Value, // 使用中文标题作为列名 + mapping => dto.GetType().GetProperty(mapping.Key).GetValue(dto, null) + )).ToList(); + var result = ExportExcelMini(rows, "staff", "员工绩效"); return ExportExcel(result.Item2, result.Item1); }