From 8b65642d7478407e03f751f2d5d8756b825969a2 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周六, 31 8月 2024 16:10:01 +0800
Subject: [PATCH] 优化
---
iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceProcess/WorkPieceProcessService.cs | 63 +++++++++++++++++++++++++++++++
1 files changed, 62 insertions(+), 1 deletions(-)
diff --git a/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceProcess/WorkPieceProcessService.cs b/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceProcess/WorkPieceProcessService.cs
index deb9131..4a34b15 100644
--- a/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceProcess/WorkPieceProcessService.cs
+++ b/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceProcess/WorkPieceProcessService.cs
@@ -35,6 +35,7 @@
private readonly IRepository<EquipmentBaseInfo, MasterDbContextLocator> _equipmentBaseInfoRep;
private readonly IRepository<SysDictType, MasterDbContextLocator> _sysDictTypeRep;
private readonly IRepository<SysDictData, MasterDbContextLocator> _sysDictDataRep;
+ private readonly IRepository<WorkPieceLog, MasterDbContextLocator> _workPieceLogRep;
/// <summary>
@@ -46,6 +47,7 @@
/// <param name="sysDictTypeRep"></param>
/// <param name="sysDictDataRep"></param>
public WorkPieceProcessService(
+ IRepository<WorkPieceLog, MasterDbContextLocator> workPieceLogRep,
IRepository<WorkPieceProcess, MasterDbContextLocator> workPieceProcessRep,
IRepository<WorkPieceInfo, MasterDbContextLocator> workPieceInfoRep,
IRepository<EquipmentBaseInfo, MasterDbContextLocator> equipmentBaseInfoRep,
@@ -53,6 +55,7 @@
IRepository<SysDictData, MasterDbContextLocator> sysDictDataRep
)
{
+ _workPieceLogRep = workPieceLogRep;
_workPieceInfoRep = workPieceInfoRep;
_workPieceProcessRep = workPieceProcessRep;
_equipmentBaseInfoRep = equipmentBaseInfoRep;
@@ -94,7 +97,8 @@
&& process.StartTime <= (input.StartTimeEndTime.HasValue ? input.StartTimeEndTime : DateTime.MaxValue)
select new WorkPieceProcessOutput
{
-
+ QualityNoOk = process.QualityNoOk,
+ QualityNoOkReason = process.QualityNoOkReason,
Id = process.Id,
WorkPieceID = process.WorkPieceID,
EquipmentID = process.EquipmentID,
@@ -331,6 +335,60 @@
#endregion
+
+
+ #region 閲囬泦鏃ュ織鏌ヨ [Editby shaocx,2024-06-08]
+
+ /// <summary>
+ /// 閲囬泦鏃ュ織鏌ヨ
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpGet("queryWorkPieceLogYield")]
+ public async Task<PageResult<QueryWorkPieceLogYieldOutput>> QueryWorkPieceLogYield([FromQuery] WorkPieceLogYieldInput input)
+ {
+
+ var resutlt = await _workPieceLogRep.DetachedEntities
+ .Where(!string.IsNullOrEmpty(input.WorkPieceID), u => u.WorkPieceID.Contains(input.WorkPieceID))
+ .Where(!string.IsNullOrEmpty(input.workingProcedure), u => u.WorkingProcedure.Contains(input.workingProcedure))
+ .Where(!string.IsNullOrEmpty(input.createdUserName), u => u.CreatedUserName.Contains(input.createdUserName))
+ .Where(!string.IsNullOrEmpty(input.StartTimeBeginTime.ToString()), u => u.CreatedTime >= input.StartTimeBeginTime)
+ .Where(!string.IsNullOrEmpty(input.StartTimeEndTime.ToString()), u => u.CreatedTime <= input.StartTimeEndTime)
+
+
+ .OrderBy(PageInputOrder.OrderBuilder<WorkPieceLogYieldInput>(input))
+ .ProjectToType<QueryWorkPieceLogYieldOutput>()
+ .ToADPagedListAsync(input.PageNo, input.PageSize);
+ return resutlt;
+
+ }
+
+ /// <summary>
+ /// 瀵煎嚭閲囬泦鏃ュ織鏌ヨ
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns>瀵煎嚭鐨凟xcel鏂囦欢</returns>
+ [HttpGet("exportWorkPieceLogYield")]
+ public async Task<IActionResult> ExportWorkPieceLogYield([FromQuery] WorkPieceLogYieldInput input)
+ {
+ input.PageNo = 1;
+ input.PageSize = 1000000;
+ var workPieceMachiningInfos2 = QueryWorkPieceLogYield(input);
+ var workPieceMachiningInfos = workPieceMachiningInfos2.Result.Rows.ToList();
+ var daList = workPieceMachiningInfos.Adapt<List<ExportYQueryWorkPieceLogYieldOutput>>();
+
+ MemoryStream ms = new();
+ DataConvertUtil.ToExcelData(daList, _sysDictTypeRep, _sysDictDataRep, out List<string> headers,
+ out List<List<object>> data, out string sheetName);
+
+ ExcelUtil.ToExcel(headers, data, sheetName, ms);
+ ms.Position = 0;
+ var fileName = HttpUtility.UrlEncode($"{sheetName}[{DateTimeOffset.Now:yyyy-MM-dd}].xlsx", Encoding.GetEncoding("UTF-8"));
+ return new FileStreamResult(ms, "application/octet-stream") { FileDownloadName = fileName };
+ }
+
+ #endregion
+
/// <summary>
/// 鍒嗛〉鏌ヨ宸ヤ欢鍔犲伐(宸ヤ欢淇℃伅琛�)
/// </summary>
@@ -355,7 +413,10 @@
.Where(o => o.f.e.a.QualityState == (input.QualityState.HasValue ? input.QualityState.Value : o.f.e.a.QualityState))
.Select(s => new WorkPieceInfoMachiningPageOutput
{
+ QualityNoOk = s.f.e.a.QualityNoOk,
+ QualityNoOkReason = s.f.e.a.QualityNoOkReason,
Id = s.f.e.a.Id,
+
WorkPieceID = s.f.e.a.WorkPieceID,
WorkPieceState = s.f.e.a.WorkPieceState,
WorkPieceStateName = s.f.f.Value,
--
Gitblit v1.9.3