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