From ba49ee82a84150f6c7d7afb26bd6397e4f8a7826 Mon Sep 17 00:00:00 2001 From: payne <bzrlw2012@163.com> Date: 周四, 25 4月 2024 18:29:03 +0800 Subject: [PATCH] 修改 --- iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsFactory/WmsFactoryService.cs | 103 ++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 73 insertions(+), 30 deletions(-) diff --git a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsFactory/WmsFactoryService.cs b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsFactory/WmsFactoryService.cs index 5fd8bd7..bb2571d 100644 --- a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsFactory/WmsFactoryService.cs +++ b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsFactory/WmsFactoryService.cs @@ -229,7 +229,6 @@ var _FactoryName = "";//鍚嶇О var _FactoryAddress = "";//鍦板潃 var _IsDisabled = "";//鏄惁绂佺敤 - var _Id = "";//Id涓婚敭 #endregion @@ -238,7 +237,6 @@ _FactoryName = row["鍚嶇О"]?.ToString() ; _FactoryAddress = row["鍦板潃"]?.ToString() ; _IsDisabled = row["鏄惁绂佺敤"]?.ToString() ; - _Id = row["Id涓婚敭"]?.ToString() ; #endregion @@ -280,22 +278,7 @@ } } - if(!string.IsNullOrEmpty(_Id)) - { - if (!long.TryParse(_Id, out long outId)&&!string.IsNullOrEmpty(_Id)) - { - throw Oops.Oh($"绗瑊index}琛孾Id涓婚敭]{_Id}鍊间笉姝g‘锛�"); - } - if (outId <= 0&&!string.IsNullOrEmpty(_Id)) - { - throw Oops.Oh($"绗瑊index}琛孾Id涓婚敭]{_Id}鍊间笉鑳藉皬浜庣瓑浜�0锛�"); - } - else - { - addItem.Id = outId; - } - - } + #endregion @@ -333,9 +316,9 @@ /// <returns></returns> private async Task CheckExisit( WmsFactory input,bool isEdit=false) { - - + + string errorMsg = string.Empty; bool isExist = false; if (!isEdit)//鏂板 { @@ -343,7 +326,24 @@ isExist = await _wmsFactoryRep.AnyAsync(u => u.FactoryCode.Equals(input.FactoryCode) ,false); - } + + errorMsg = $"绯荤粺涓�,缂栧彿[{input.FactoryCode}]宸插瓨鍦�"; + if (isExist) + { + throw Oops.Oh(errorMsg); + } + + //鏁版嵁鏄惁瀛樺湪閲嶅 + isExist = await _wmsFactoryRep.AnyAsync(u => + u.FactoryName.Equals(input.FactoryName) + , false); + + errorMsg = $"绯荤粺涓�,鍚嶇О[{input.FactoryName}]宸插瓨鍦�"; + if (isExist) + { + throw Oops.Oh(errorMsg); + } + } else//缂栬緫 { @@ -354,12 +354,29 @@ u.Id != input.Id &&u.FactoryCode.Equals(input.FactoryCode) ,false); - } + + errorMsg = $"绯荤粺涓�,缂栧彿[{input.FactoryCode}]宸插瓨鍦�"; + if (isExist) + { + throw Oops.Oh(errorMsg); + } + + isExist = await _wmsFactoryRep.AnyAsync(u => + u.Id != input.Id + && u.FactoryName.Equals(input.FactoryName) + , false); + + errorMsg = $"绯荤粺涓�,鍚嶇О[{input.FactoryName}]宸插瓨鍦�"; + if (isExist) + { + throw Oops.Oh(errorMsg); + } + + } - if (isExist) throw Oops.Oh(ErrorCode.E0001); - } + } /// <summary> /// 鏍规嵁鑱斿悎涓婚敭楠岃瘉鏁版嵁鏄惁宸插瓨鍦�-瀵煎叆鏃堕獙璇� @@ -383,16 +400,30 @@ }).FirstOrDefault(); if (existExcelItem != null) { - var wmsFactory = existExcelItem.Adapt<WmsFactory>(); var item= existExcelItem.Adapt<WmsFactory>(); throw Oops.Oh($"瀵煎叆鐨勮〃鏍间腑,缂栧彿[{item.FactoryCode}]宸插瓨鍦�"); } - + + //鏁版嵁鏄惁閲嶅 + var existExcelItem2 = inputs.GroupBy(g => new { + g.FactoryName + }) + .Where(g => g.Count() > 1) + .Select(s => new { + s.Key.FactoryName + }).FirstOrDefault(); + if (existExcelItem2 != null) + { + var item = existExcelItem2.Adapt<WmsFactory>(); + throw Oops.Oh($"瀵煎叆鐨勮〃鏍间腑,鍚嶇О[{item.FactoryName}]宸插瓨鍦�"); + } - //鏍规嵁鑱斿悎涓婚敭楠岃瘉鏁版嵁搴撲腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹� - var existDBItem = await _wmsFactoryRep.DetachedEntities.FirstOrDefaultAsync(w=> + + + //鏍规嵁鑱斿悎涓婚敭楠岃瘉鏁版嵁搴撲腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹� + var existDBItem = await _wmsFactoryRep.DetachedEntities.FirstOrDefaultAsync(w=> inputs.Select(s=>"" +s.FactoryCode ) @@ -401,10 +432,22 @@ )); if (existDBItem != null) { - var wmsFactory = existExcelItem.Adapt<WmsFactory>(); - var item= existExcelItem.Adapt<WmsFactory>(); + var item= existDBItem.Adapt<WmsFactory>(); throw Oops.Oh($"绯荤粺涓�,缂栧彿[{item.FactoryCode}]宸插瓨鍦�"); } + + var existDBItem2 = await _wmsFactoryRep.DetachedEntities.FirstOrDefaultAsync(w => + inputs.Select(s => "" + + s.FactoryName + ) + .Contains("" + + w.FactoryName + )); + if (existDBItem2 != null) + { + var item = existDBItem2.Adapt<WmsFactory>(); + throw Oops.Oh($"绯荤粺涓�,鍚嶇О[{item.FactoryName}]宸插瓨鍦�"); + } } #endregion -- Gitblit v1.9.3