From a239258646a937384ae13d265284f3a4c286723a Mon Sep 17 00:00:00 2001 From: zhou keda <1315948824@qq.com> Date: Fri, 19 Jul 2024 17:22:08 +0800 Subject: [PATCH] bug --- .../Tnb.BasicData.Entities/Entity/BasEbomH.cs | 5 ++ .../Entity/ErpEntity/BomList.cs | 4 ++ .../Tnb.ProductionMgr/TimeWorkService.cs | 60 ++++++++++--------- 3 files changed, 41 insertions(+), 28 deletions(-) diff --git a/BasicData/Tnb.BasicData.Entities/Entity/BasEbomH.cs b/BasicData/Tnb.BasicData.Entities/Entity/BasEbomH.cs index f480d120..57ea484b 100644 --- a/BasicData/Tnb.BasicData.Entities/Entity/BasEbomH.cs +++ b/BasicData/Tnb.BasicData.Entities/Entity/BasEbomH.cs @@ -83,5 +83,10 @@ public partial class BasEbomH : BaseEntity /// 仅用于关联表字段查询用不存储数据 /// public string? query_info { get; set; } + + /// + /// erp修改时间 + /// + public string erp_modify_time { get; set; } } diff --git a/ProductionMgr/Tnb.ProductionMgr.Entities/Entity/ErpEntity/BomList.cs b/ProductionMgr/Tnb.ProductionMgr.Entities/Entity/ErpEntity/BomList.cs index 598840e3..0b03655a 100644 --- a/ProductionMgr/Tnb.ProductionMgr.Entities/Entity/ErpEntity/BomList.cs +++ b/ProductionMgr/Tnb.ProductionMgr.Entities/Entity/ErpEntity/BomList.cs @@ -34,5 +34,9 @@ namespace Tnb.ProductionMgr.Entities.Entity.ErpEntity /// 数量 /// public decimal BATCHAMOUNT { get; set; } + /// + /// 修改时间 + /// + public string MODIFIEDTIME { get; set; } } } \ No newline at end of file diff --git a/ProductionMgr/Tnb.ProductionMgr/TimeWorkService.cs b/ProductionMgr/Tnb.ProductionMgr/TimeWorkService.cs index 1c6b3b3f..cd3446a9 100644 --- a/ProductionMgr/Tnb.ProductionMgr/TimeWorkService.cs +++ b/ProductionMgr/Tnb.ProductionMgr/TimeWorkService.cs @@ -942,41 +942,45 @@ namespace Tnb.ProductionMgr { BasEbomH basEbomH = await _db.Queryable().Where(x=>x.material_id==material.id && x.version==firstItemInList.HVERSION).FirstAsync(); if (basEbomH == null) continue; - - bool flag = false; - List tempList = new List(); - foreach (var children in itemList) + + if (basEbomH.erp_modify_time != firstItemInList.MODIFIEDTIME) { - BasMaterial childrenMaterial = materials.Find(x => x.code==children.SUBPRODID); - if (childrenMaterial == null) + bool flag = false; + List tempList = new List(); + foreach (var children in itemList) { - flag = true; - tempList = new List(); - break; + BasMaterial childrenMaterial = materials.Find(x => x.code==children.SUBPRODID); + if (childrenMaterial == null) + { + flag = true; + tempList = new List(); + break; + } + + BasEbomD basEbomD = new BasEbomD() + { + id = SnowflakeIdHelper.NextId(), + ebom_id = basEbomH.id, + material_id = childrenMaterial.id, + denominator = children.DISHU, + molecule = children.BATCHAMOUNT, + }; + tempList.Add(basEbomD); } - BasEbomD basEbomD = new BasEbomD() + if (flag) { - id = SnowflakeIdHelper.NextId(), - ebom_id = basEbomH.id, - material_id = childrenMaterial.id, - denominator = children.DISHU, - molecule = children.BATCHAMOUNT, - }; - tempList.Add(basEbomD); - } - - if (flag) - { - continue; + continue; + } + + insertBasEbomDs.AddRange(tempList); + await _db.Updateable() + .SetColumns(x => x.unit_id == unitId) + .Where(x => x.id == basEbomH.id) + .ExecuteCommandAsync(); + await _db.Deleteable().Where(x => x.ebom_id == basEbomH.id).ExecuteCommandAsync(); } - insertBasEbomDs.AddRange(tempList); - await _db.Updateable() - .SetColumns(x => x.unit_id == unitId) - .Where(x => x.id == basEbomH.id) - .ExecuteCommandAsync(); - await _db.Deleteable().Where(x => x.ebom_id == basEbomH.id).ExecuteCommandAsync(); } }