From 2a19504209e763a7c0e957e4ee265dd419486ef1 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周五, 06 9月 2024 10:21:48 +0800 Subject: [PATCH] 入库优化 --- iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/WorkPieceOutboundService.cs | 51 ++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 46 insertions(+), 5 deletions(-) diff --git a/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/WorkPieceOutboundService.cs b/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/WorkPieceOutboundService.cs index a8ce3f3..ba88729 100644 --- a/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/WorkPieceOutboundService.cs +++ b/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/WorkPieceOutboundService.cs @@ -8,6 +8,7 @@ using Mapster; using Microsoft.AspNetCore.Mvc; using Microsoft.EntityFrameworkCore; +using SharpYaml; using System.Linq.Dynamic.Core; namespace iWare.Wms.Application @@ -23,12 +24,15 @@ { private readonly IRepository<WorkPieceOutbound, MasterDbContextLocator> _workPieceOutboundRep; private readonly IRepository<WorkPieceInfo, MasterDbContextLocator> _workPieceInfoRep; + private readonly IRepository<WorkPieceOutboundRecord, MasterDbContextLocator> _workPieceOutboundRecordRep; public WorkPieceOutboundService( + IRepository<WorkPieceOutboundRecord, MasterDbContextLocator> workPieceOutboundRecordRep, IRepository<WorkPieceInfo, MasterDbContextLocator> workPieceInfoRep, IRepository<WorkPieceOutbound, MasterDbContextLocator> workPieceOutboundRep ) { + _workPieceOutboundRecordRep = workPieceOutboundRecordRep; _workPieceInfoRep = workPieceInfoRep; _workPieceOutboundRep = workPieceOutboundRep; } @@ -52,6 +56,27 @@ .ToADPagedListAsync(input.PageNo, input.PageSize); return workPieceOutbounds; } + + /// <summary> + /// 鍒嗛〉鏌ヨ宸ヤ欢鍑哄簱鍘嗗彶淇℃伅 + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + [HttpGet("pageForRecord")] + public async Task<PageResult<WorkPieceOutboundRecord>> PageForRecord([FromQuery] WorkPieceOutboundSearch input) + { + var workPieceOutbounds = await _workPieceOutboundRecordRep.DetachedEntities + .Where(!string.IsNullOrEmpty(input.WorkPieceID), u => u.WorkPieceID.Contains(input.WorkPieceID)) + .Where(!string.IsNullOrEmpty(input.OP80NewCode), u => u.OP80NewCode.Contains(input.OP80NewCode)) + .Where(!string.IsNullOrEmpty(input.WorkPieceOutboundUserName), u => u.CreatedUserName.Contains(input.WorkPieceOutboundUserName)) + .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<WorkPieceOutboundSearch>(input)) + .ProjectToType<WorkPieceOutboundRecord>() + .ToADPagedListAsync(input.PageNo, input.PageSize); + return workPieceOutbounds; + } + /// <summary> /// 澧炲姞宸ヤ欢鍑哄簱淇℃伅 @@ -128,17 +153,33 @@ var workPieceOutbound = await _workPieceOutboundRep.FirstOrDefaultAsync(u => u.Id == item.Id); if (workPieceOutbound == null) { - throw Oops.Oh("宸ヤ欢鍑哄簱淇℃伅涓嶅瓨鍦�"); + throw Oops.Oh("宸ヤ欢鍏ュ簱淇℃伅涓嶅瓨鍦�"); } - workPieceOutbound.IsDeleted = true; - workPieceOutbound.Remark = workPieceOutbound.Remark ?? "" + "鎾ら攢鍙戣揣"; - await _workPieceOutboundRep.UpdateAsync(workPieceOutbound); + //workPieceOutbound.IsDeleted = true; + //workPieceOutbound.Remark = workPieceOutbound.Remark ?? "" + "鎾ら攢鍏ュ簱"; + //await _workPieceOutboundRep.UpdateAsync(workPieceOutbound); + await _workPieceOutboundRep.DeleteAsync(workPieceOutbound); + + var outBoundLog = new WorkPieceOutboundRecord + { + OperationType = OutboundOperationType.鎾ら攢鍏ュ簱.ToString(), + WorkPieceID = workPieceOutbound?.WorkPieceID, + OP80NewCode = workPieceOutbound?.OP80NewCode, + + CreatedUserId = CurrentUserInfo.UserId, + CreatedUserName = CurrentUserInfo.Name, + + // CarNo = itemModel.CarNo, + Remark = "鎾ら攢鍏ュ簱", + + }; + await _workPieceOutboundRecordRep.InsertAsync(outBoundLog); var workPiece = await _workPieceInfoRep.FirstOrDefaultAsync(u => u.WorkPieceID == workPieceOutbound.WorkPieceID); if (workPiece != null) { workPiece.OutPerson = CurrentUserInfo.Name; - workPiece.OutRemark = "鎾ら攢宸ヤ欢鍑哄簱"; + workPiece.OutRemark = "鎾ら攢鍏ュ簱"; workPiece.OutTime = DateTime.Now; workPiece.IsOut = false; -- Gitblit v1.9.3