From 81616cd4777f7e98bb549de5795a6b473af015ca Mon Sep 17 00:00:00 2001 From: 18942506660 <18942506660@A18942506660> Date: Wed, 22 Nov 2023 15:11:00 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=95=99=E5=AD=98=E5=AD=97?= =?UTF-8?q?=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/WMS.Web.Domain/Entitys/ChangeBoxRecord.cs | 20 +++++++++++++++++ src/WMS.Web.Domain/Entitys/MoveBoxRecord.cs | 5 +++++ src/WMS.Web.Domain/Entitys/TakeStock.cs | 5 +++++ .../Services/OutStockService.cs | 22 ++++++++++++++++++- 4 files changed, 51 insertions(+), 1 deletion(-) diff --git a/src/WMS.Web.Domain/Entitys/ChangeBoxRecord.cs b/src/WMS.Web.Domain/Entitys/ChangeBoxRecord.cs index d8c97553..8295b209 100644 --- a/src/WMS.Web.Domain/Entitys/ChangeBoxRecord.cs +++ b/src/WMS.Web.Domain/Entitys/ChangeBoxRecord.cs @@ -50,6 +50,26 @@ namespace WMS.Web.Domain.Entitys [Column("DestBoxId")] public int DestBoxId { get; set; } /// + /// 原箱仓位 + /// + [Column("SrcSubStockId")] + public int SrcSubStockId { get; set; } + /// + /// 目标箱的仓库或重新上架选择仓位对应的仓库 + /// + [Column("DestStockCode")] + public string DestStockCode { get; set; } + /// + /// 目标箱仓位或重新上架选择仓位 + /// + [Column("DestSubStockId")] + public string DestSubStockId { get; set; } + /// + /// 目标箱组织编码 + /// + [Column("DestBoxOrgCode")] + public string DestBoxOrgCode { get; set; } + /// /// 操作人 /// [Column("CreatorId")] diff --git a/src/WMS.Web.Domain/Entitys/MoveBoxRecord.cs b/src/WMS.Web.Domain/Entitys/MoveBoxRecord.cs index 6b0c4ed6..1ce60a7c 100644 --- a/src/WMS.Web.Domain/Entitys/MoveBoxRecord.cs +++ b/src/WMS.Web.Domain/Entitys/MoveBoxRecord.cs @@ -31,6 +31,11 @@ namespace WMS.Web.Domain.Entitys [Column("BoxId")] public int BoxId { get; set; } /// + /// 组织编码 + /// + [Column("OrgCode")] + public string OrgCode { get; set; } + /// /// 仓库 /// [Column("StockCode")] diff --git a/src/WMS.Web.Domain/Entitys/TakeStock.cs b/src/WMS.Web.Domain/Entitys/TakeStock.cs index 911f0022..aea46b4d 100644 --- a/src/WMS.Web.Domain/Entitys/TakeStock.cs +++ b/src/WMS.Web.Domain/Entitys/TakeStock.cs @@ -51,6 +51,11 @@ namespace WMS.Web.Domain.Entitys [Column("MaterialId")] public int MaterialId { get; set; } /// + /// 组织编码 + /// + [Column("OrgCode")] + public string OrgCode { get; set; } + /// /// 仓库 /// [Column("StockCode")] diff --git a/src/WMS.Web.Domain/Services/OutStockService.cs b/src/WMS.Web.Domain/Services/OutStockService.cs index f6942c4d..f112035e 100644 --- a/src/WMS.Web.Domain/Services/OutStockService.cs +++ b/src/WMS.Web.Domain/Services/OutStockService.cs @@ -36,11 +36,12 @@ namespace WMS.Web.Domain.Services private readonly IErpService _erpService; private readonly ISerialNumberService _serialNumberService; private readonly IBoxInventoryService _boxInventoryService; + private readonly IInventoryInOutDetailsService _inventoryInOutDetailsService; public OutStockService(IMapper mapper, ILoginService loginService, IBasicsRepositories transactionRepositories, IOutStockRepositories outStockRepositories, IOutStockTaskRepositories outStockTaskRepositories, IOutStockTaskService outStockTaskService, IErpService erpService, ISerialNumberService serialNumberService, - IBoxInventoryService boxInventoryService) + IBoxInventoryService boxInventoryService, IInventoryInOutDetailsService inventoryInOutDetailsService) { _mapper = mapper; _loginService = loginService; @@ -51,6 +52,7 @@ namespace WMS.Web.Domain.Services _erpService = erpService; _serialNumberService = serialNumberService; _boxInventoryService = boxInventoryService; + _inventoryInOutDetailsService = inventoryInOutDetailsService; } /// /// 出库单 @@ -120,6 +122,19 @@ namespace WMS.Web.Domain.Services }; inventoryList.Add(inventory); } + + List generateList = dto.Details.Select(s => new InventoryInOutDetailsGenerateDto() + { + BoxId = s.BoxId, + InventoryInOutType = 2, + OrderBillNo = outStockTask.BillNo, + Qty = s.Qty, + StockCode = outStockTask.StockCode, + MaterialId = s.MaterialId, + SubStockId = s.SubStockId, + OrgCode = outStockTask.OrgCode, + OrderType = 1, + }).ToList(); #endregion IDbContextTransaction _transaction = _transactionRepositories.GetTransaction(); @@ -143,6 +158,11 @@ namespace WMS.Web.Domain.Services var res_change = await _serialNumberService.OutStock(entity, loginInfo, false); if (!res_change.IsSuccess) res_Rollback = res_change; } + if (res_Rollback.IsSuccess) + { + res_Inventory = await _inventoryInOutDetailsService.GenerateInOrOutDetails(generateList, false); + if (!res_Inventory.IsSuccess) res_Rollback = res_Inventory; + } //提交事务 isSuccess = _transactionRepositories.CommitTransaction(res_Rollback.IsSuccess ? false : true, _transaction); if (!res_Rollback.IsSuccess) return res_Rollback;