From 82cd6e743a83fc5448c9d4d11f01ce6257d516fc Mon Sep 17 00:00:00 2001
From: 18923810322 <1666941798@qq.com>
Date: Tue, 7 Apr 2026 15:43:05 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BA=86=E7=89=A9=E6=96=99?=
=?UTF-8?q?=E8=A7=84=E6=A0=BC=E6=98=BE=E7=A4=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/BarCode.Web.Api/wwwroot/BarCode.Web.Core.xml | 6 ++++++
src/BarCode.Web.Api/wwwroot/BarCode.Web.Domain.xml | 5 +++++
.../Dto/Box/SaveBoxDetailsRequest.cs | 8 ++++++++
src/BarCode.Web.Domain/Entitys/BoxDetails.cs | 11 +++++++++++
src/BarCode.Web.Domain/Services/BoxService.cs | 13 +++++++------
src/BarCode.Web.Repositories/BoxRepositories.cs | 2 +-
6 files changed, 38 insertions(+), 7 deletions(-)
diff --git a/src/BarCode.Web.Api/wwwroot/BarCode.Web.Core.xml b/src/BarCode.Web.Api/wwwroot/BarCode.Web.Core.xml
index 2c9b3d9..069b713 100644
--- a/src/BarCode.Web.Api/wwwroot/BarCode.Web.Core.xml
+++ b/src/BarCode.Web.Api/wwwroot/BarCode.Web.Core.xml
@@ -631,6 +631,12 @@
第二件装
+
+
+ 规格型号
+
+
+
保存箱信息(装箱保存,完成装箱)
diff --git a/src/BarCode.Web.Api/wwwroot/BarCode.Web.Domain.xml b/src/BarCode.Web.Api/wwwroot/BarCode.Web.Domain.xml
index 7b96236..376c7bb 100644
--- a/src/BarCode.Web.Api/wwwroot/BarCode.Web.Domain.xml
+++ b/src/BarCode.Web.Api/wwwroot/BarCode.Web.Domain.xml
@@ -136,6 +136,11 @@
物料编码
+
+
+ 物料规格
+
+
数量(装箱数量)
diff --git a/src/BarCode.Web.Core/Dto/Box/SaveBoxDetailsRequest.cs b/src/BarCode.Web.Core/Dto/Box/SaveBoxDetailsRequest.cs
index ad2f317..0383d65 100644
--- a/src/BarCode.Web.Core/Dto/Box/SaveBoxDetailsRequest.cs
+++ b/src/BarCode.Web.Core/Dto/Box/SaveBoxDetailsRequest.cs
@@ -26,6 +26,14 @@ namespace BarCode.Web.Core.Dto.Box
/// 第二件装
///
public string TwoSerialNumber { get; set; } = string.Empty;
+ ///
+ /// 规格型号
+ ///
+ ///
+ [Required(ErrorMessage = "物料规格不能为空")]
+ public string Spec { get; set; } = string.Empty;
+
+
}
}
diff --git a/src/BarCode.Web.Domain/Entitys/BoxDetails.cs b/src/BarCode.Web.Domain/Entitys/BoxDetails.cs
index c9521e6..cd86609 100644
--- a/src/BarCode.Web.Domain/Entitys/BoxDetails.cs
+++ b/src/BarCode.Web.Domain/Entitys/BoxDetails.cs
@@ -30,6 +30,14 @@ namespace BarCode.Web.Domain.Entitys
///
[Column("MaterialNumber")]
public string MaterialNumber { get; set; } = "";
+
+
+ ///
+ /// 物料规格
+ ///
+ [Column("Spec")]
+ public string Spec { get; set; } = "";
+
///
/// 数量(装箱数量)
///
@@ -40,6 +48,9 @@ namespace BarCode.Web.Domain.Entitys
///
[Column("SerialNumbers")]
public List SerialNumbers { get; set; } = new List();
+
+
+
/////
///// 是否计数
/////
diff --git a/src/BarCode.Web.Domain/Services/BoxService.cs b/src/BarCode.Web.Domain/Services/BoxService.cs
index c1b125c..62c687e 100644
--- a/src/BarCode.Web.Domain/Services/BoxService.cs
+++ b/src/BarCode.Web.Domain/Services/BoxService.cs
@@ -128,15 +128,15 @@ namespace BarCode.Web.Domain.Services
var resCarton = box.Carton(dto.IsCarton, loginInfo.UserInfo.UcId);
if (!resCarton.IsSuccess) return resCarton;
- var materialNumbers = dto.Details.GroupBy(g => g.MaterialNumber).Select(s => s.Key).ToList();
+ var materialNumbers = dto.Details.GroupBy(g => new { g.MaterialNumber, g.Spec }).Select(s => s.Key).ToList();
foreach (var m in materialNumbers)
{
List s=[null];
s.Clear();
- var detail = box.Details.FirstOrDefault(f => f.MaterialNumber.Equals(m));
- var serialNumbers = dto.Details.Where(w => w.MaterialNumber.Equals(m)).Select(s => s.SerialNumber).ToList();
- var serialNumbersTwo = dto.Details.Where(w => w.MaterialNumber.Equals(m)).Select(s => s.TwoSerialNumber).ToList();
+ var detail = box.Details.FirstOrDefault(f => f.MaterialNumber.Equals(m.MaterialNumber) && f.Spec.Equals(m.Spec));
+ var serialNumbers = dto.Details.Where(w => w.MaterialNumber.Equals(m.MaterialNumber) && w.Spec.Equals(m.Spec)).Select(s => s.SerialNumber).ToList();
+ var serialNumbersTwo = dto.Details.Where(w => w.MaterialNumber.Equals(m.MaterialNumber) && w.Spec.Equals(m.Spec)).Select(s => s.TwoSerialNumber).ToList();
var intCount = serialNumbers.Count();
s = serialNumbers;
serialNumbersTwo.RemoveAll(string.IsNullOrEmpty);
@@ -168,11 +168,12 @@ namespace BarCode.Web.Domain.Services
{
detail = new BoxDetails()
{
- MaterialNumber = m,
+ MaterialNumber = m.MaterialNumber,
// Qty = serialNumbers.Count(),
Qty = intCount,
// SerialNumbers = serialNumbers
- SerialNumbers = s
+ SerialNumbers = s,
+ Spec=m.Spec
};
box.Details.Add(detail);
}
diff --git a/src/BarCode.Web.Repositories/BoxRepositories.cs b/src/BarCode.Web.Repositories/BoxRepositories.cs
index a066d22..641a238 100644
--- a/src/BarCode.Web.Repositories/BoxRepositories.cs
+++ b/src/BarCode.Web.Repositories/BoxRepositories.cs
@@ -289,7 +289,7 @@ namespace BarCode.Web.Repositories
Id = s.box.Id,
DetailId = s.detail == null ? 0 : s.detail.Id,
BoxBillNo = s.box.BoxBillNo,
- Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.detail == null ? "" : s.detail.MaterialNumber),
+ Specifications =s.detail==null?"":s.detail.Spec ,//_erpBasicDataExtendService.GetMaterialSpecifications(materials, s.detail == null ? "" : s.detail.MaterialNumber),
MaterialNumber = s.detail == null ? "" : s.detail.MaterialNumber,
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.detail == null ? "" : s.detail.MaterialNumber),
BarCode = _erpBasicDataExtendService.GetMaterialBarCode(materials, s.detail == null ? "" : s.detail.MaterialNumber),