From 2dd79daff4b9f08b3d3323f2c05eacc35377c356 Mon Sep 17 00:00:00 2001
From: 18942506660 <18942506660@A18942506660>
Date: Wed, 15 Nov 2023 17:00:53 +0800
Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=87=BA=E5=BA=93=E4=BB=BB?=
=?UTF-8?q?=E5=8A=A1=E5=8D=95=E7=BB=93=E6=9E=84?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml | 10 ++++++++++
src/WMS.Web.Domain/Entitys/OutStockTask.cs | 2 ++
.../Entitys/OutStockTaskDetails.cs | 10 ++++++++++
src/WMS.Web.Domain/Mappers/OutStockMapper.cs | 2 +-
.../Services/OutStockTaskService.cs | 17 +++++++++++++++--
.../Configuration/RepositoryDbContext.cs | 8 ++++++++
6 files changed, 46 insertions(+), 3 deletions(-)
diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml
index 5b3f58a4..5058c7ee 100644
--- a/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml
+++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml
@@ -1182,6 +1182,16 @@
已出库数量
+
+
+ 已出库数量(合并后不同物料 分别出库多少)
+
+
+
+
+ 应出库数量(合并后不同物料 分别应出多少)
+
+
订单明细备注
diff --git a/src/WMS.Web.Domain/Entitys/OutStockTask.cs b/src/WMS.Web.Domain/Entitys/OutStockTask.cs
index 9ce17525..22e9d9b2 100644
--- a/src/WMS.Web.Domain/Entitys/OutStockTask.cs
+++ b/src/WMS.Web.Domain/Entitys/OutStockTask.cs
@@ -170,6 +170,8 @@ namespace WMS.Web.Domain.Entitys
detail_new.AccruedQty += d.AccruedQty;//应出数量累加
detail_new.SaleBillNos.AddRange(d.SaleBillNos);
detail_new.SourceBillNos.AddRange(d.SourceBillNos);
+ foreach (var dic in d.AccruedQty_Dic)
+ detail_new.AccruedQty_Dic.Add(dic.Key, dic.Value);
}
else
details_new.Add(d);
diff --git a/src/WMS.Web.Domain/Entitys/OutStockTaskDetails.cs b/src/WMS.Web.Domain/Entitys/OutStockTaskDetails.cs
index b64b5328..5ca32cd1 100644
--- a/src/WMS.Web.Domain/Entitys/OutStockTaskDetails.cs
+++ b/src/WMS.Web.Domain/Entitys/OutStockTaskDetails.cs
@@ -69,6 +69,16 @@ namespace WMS.Web.Domain.Entitys
[Column("RealityQty")]
public decimal RealityQty { get; set; }
///
+ /// 已出库数量(合并后不同物料 分别出库多少)
+ ///
+ [Column("RealityQty_Dic")]
+ public Dictionary RealityQty_Dic { get; set; } = new Dictionary();
+ ///
+ /// 应出库数量(合并后不同物料 分别应出多少)
+ ///
+ [Column("AccruedQty_Dic")]
+ public Dictionary AccruedQty_Dic { get; set; } = new Dictionary();
+ ///
/// 订单明细备注
///
[Column("Remark")]
diff --git a/src/WMS.Web.Domain/Mappers/OutStockMapper.cs b/src/WMS.Web.Domain/Mappers/OutStockMapper.cs
index 6781d43d..09e61d71 100644
--- a/src/WMS.Web.Domain/Mappers/OutStockMapper.cs
+++ b/src/WMS.Web.Domain/Mappers/OutStockMapper.cs
@@ -25,7 +25,7 @@ namespace WMS.Web.Domain.Mappers
CreateMap();
CreateMap()
- .ForPath(x => x.SourceBillNos, ops => ops.MapFrom(x =>new List() { x.SourceBillNo }))
+ .ForPath(x => x.SourceBillNos, ops => ops.MapFrom(x => new List() { x.SourceBillNo }))
.ForPath(x => x.SaleBillNos, ops => ops.MapFrom(x => new List() { x.SaleBillNo }));
}
}
diff --git a/src/WMS.Web.Domain/Services/OutStockTaskService.cs b/src/WMS.Web.Domain/Services/OutStockTaskService.cs
index 66c9aa6a..b84b5345 100644
--- a/src/WMS.Web.Domain/Services/OutStockTaskService.cs
+++ b/src/WMS.Web.Domain/Services/OutStockTaskService.cs
@@ -110,9 +110,20 @@ namespace WMS.Web.Domain.Services
var detail = data.Details.FirstOrDefault(w => w.MaterialId == e.MaterialId);
//存在就修改,没有就添加
if (detail != null)
- detail.AccruedQty = e.AccruedQty;
+ {
+ if (detail.AccruedQty_Dic.ContainsKey(e.SourceBillNo))
+ detail.AccruedQty_Dic[e.SourceBillNo] = e.AccruedQty;
+ else
+ detail.AccruedQty_Dic.Add(e.SourceBillNo, e.AccruedQty);
+ //对集合里的应发做出累加
+ detail.AccruedQty = detail.AccruedQty_Dic.Sum(s => s.Value);
+ }
else
- data.Details.Add(_mapper.Map(e));
+ {
+ var de = _mapper.Map(e);
+ de.AccruedQty_Dic.Add(de.SourceBillNos.First(), de.AccruedQty);
+ data.Details.Add(de);
+ }
erp_removeList.Add(e);
}
@@ -140,6 +151,8 @@ namespace WMS.Web.Domain.Services
var current_erp_details = erp_list.Where(x => x.SourceBillNo == item).ToList();
//给到dto的实体明细中
entity.Details = _mapper.Map>(current_erp_details);
+ foreach (var de in entity.Details)
+ de.AccruedQty_Dic.Add(de.SourceBillNos.First(), de.AccruedQty);
add_entitys.Add(entity);
}
//3.1提交新增
diff --git a/src/WMS.Web.Repositories/Configuration/RepositoryDbContext.cs b/src/WMS.Web.Repositories/Configuration/RepositoryDbContext.cs
index b2905922..67f6551f 100644
--- a/src/WMS.Web.Repositories/Configuration/RepositoryDbContext.cs
+++ b/src/WMS.Web.Repositories/Configuration/RepositoryDbContext.cs
@@ -128,6 +128,14 @@ namespace WMS.Web.Repositories.Configuration
ent.Property(f => f.SaleBillNos).HasConversion(
v => JsonConvert.SerializeObject(v),
v => JsonConvert.DeserializeObject>(v));
+
+ ent.Property(f => f.AccruedQty_Dic).HasConversion(
+ v => JsonConvert.SerializeObject(v),
+ v => JsonConvert.DeserializeObject>(v));
+
+ ent.Property(f => f.RealityQty_Dic).HasConversion(
+ v => JsonConvert.SerializeObject(v),
+ v => JsonConvert.DeserializeObject>(v));
});
#endregion