From 8c414f7cd7491dea089578286d5312f01ebf77e8 Mon Sep 17 00:00:00 2001 From: 18942506660 <18942506660@A18942506660> Date: Sat, 9 Dec 2023 14:04:38 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/WMS.Web.Domain/Entitys/SerialNumbers.cs | 21 ++++++++++++------- .../Services/SerialNumberService.cs | 2 +- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/WMS.Web.Domain/Entitys/SerialNumbers.cs b/src/WMS.Web.Domain/Entitys/SerialNumbers.cs index 072597b6..34e1c849 100644 --- a/src/WMS.Web.Domain/Entitys/SerialNumbers.cs +++ b/src/WMS.Web.Domain/Entitys/SerialNumbers.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations.Schema; +using System.Linq; using System.Text; using WMS.Web.Core; using WMS.Web.Domain.Values; @@ -16,7 +17,7 @@ namespace WMS.Web.Domain.Entitys public class SerialNumbers : EntityBase { public SerialNumbers() { } - public SerialNumbers(string serialNumber, int materialId, int boxId, int opsBoxId, string creator, DateTime? createTime,DateTime? completeCartonTime) + public SerialNumbers(string serialNumber, int materialId, int boxId, int opsBoxId, string creator, DateTime? createTime, DateTime? completeCartonTime) { this.SerialNumber = serialNumber; this.MaterialId = materialId; @@ -96,7 +97,7 @@ namespace WMS.Web.Domain.Entitys /// 操作(绑定箱信息) /// /// 目标箱号 - public void Bind(int destBoxId,DateTime completeCartonTime) + public void Bind(int destBoxId, DateTime completeCartonTime) { this.BoxId = destBoxId; this.CompleteCartonTime = completeCartonTime; @@ -111,14 +112,18 @@ namespace WMS.Web.Domain.Entitys /// /// 出库 /// - /// 出库单号 - public void OutStock(List salBillNos, OutStockType type,int customerId) + /// 出库单 + public void OutStock(OutStock outStock, int materialId) { - this.BoxId = 0; - if (type == OutStockType.Sal) + var outstockDetail = outStock.Details.FirstOrDefault(f => f.MaterialId == materialId); + if (outstockDetail == null) return; + //按产品出才解绑 按箱子出不解绑 + if (outStock.Method == InventoryInOutMethod.Product) + UnBind(); + if (outStock.Type == OutStockType.Sal) { - this.SalBillNo = JsonConvert.SerializeObject(salBillNos); - this.CustomerId = customerId; + this.SalBillNo = JsonConvert.SerializeObject(outstockDetail.ErpDetails.Select(s => s.SaleBillNo).ToList()); + this.CustomerId = outStock.ReceiptCustomerId; this.OutStockTime = DateTime.Now; } } diff --git a/src/WMS.Web.Domain/Services/SerialNumberService.cs b/src/WMS.Web.Domain/Services/SerialNumberService.cs index d7c9eb13..e818bea1 100644 --- a/src/WMS.Web.Domain/Services/SerialNumberService.cs +++ b/src/WMS.Web.Domain/Services/SerialNumberService.cs @@ -195,7 +195,7 @@ namespace WMS.Web.Domain.Services var outstockDetail = outStock.Details.FirstOrDefault(f => f.MaterialId == entity.MaterialId); if (outstockDetail == null) continue; //修改序列号和箱绑定关系 - entity.OutStock(outstockDetail.ErpDetails.Select(s => s.SaleBillNo).ToList(), outStock.Type, outStock.ReceiptCustomerId); + entity.OutStock(outStock, entity.MaterialId); //记录序列号操作日志 SerialNumberOperate op = new SerialNumberOperate()