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/WmsWarehouse/WmsWarehouseService.cs |  540 ++++++++++++++++++++++++++++++++----------------------------
 1 files changed, 288 insertions(+), 252 deletions(-)

diff --git a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsWarehouse/WmsWarehouseService.cs b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsWarehouse/WmsWarehouseService.cs
index e9ac41f..148c6b5 100644
--- a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsWarehouse/WmsWarehouseService.cs
+++ b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsWarehouse/WmsWarehouseService.cs
@@ -22,23 +22,23 @@
     [Route("api")]
     public class WmsWarehouseService : IWmsWarehouseService, IDynamicApiController, ITransient
     {
-        private readonly IRepository<WmsWarehouse,MasterDbContextLocator> _wmsWarehouseRep;
+        private readonly IRepository<WmsWarehouse, MasterDbContextLocator> _wmsWarehouseRep;
         private readonly IRepository<SysDictType, MasterDbContextLocator> _sysDictTypeRep;
         private readonly IRepository<SysDictData, MasterDbContextLocator> _sysDictDataRep;
         private readonly ISysExcelTemplateService _sysExcelTemplateService;
         private readonly static object _lock = new();
 
         public WmsWarehouseService(
-            IRepository<WmsWarehouse,MasterDbContextLocator> wmsWarehouseRep
-            ,IRepository<SysDictType, MasterDbContextLocator> sysDictTypeRep
-            ,IRepository<SysDictData, MasterDbContextLocator> sysDictDataRep
-            ,ISysExcelTemplateService sysExcelTemplateService
+            IRepository<WmsWarehouse, MasterDbContextLocator> wmsWarehouseRep
+            , IRepository<SysDictType, MasterDbContextLocator> sysDictTypeRep
+            , IRepository<SysDictData, MasterDbContextLocator> sysDictDataRep
+            , ISysExcelTemplateService sysExcelTemplateService
         )
         {
             _wmsWarehouseRep = wmsWarehouseRep;
-         _sysDictTypeRep = sysDictTypeRep;
-         _sysDictDataRep = sysDictDataRep;
-         _sysExcelTemplateService = sysExcelTemplateService;
+            _sysDictTypeRep = sysDictTypeRep;
+            _sysDictDataRep = sysDictDataRep;
+            _sysExcelTemplateService = sysExcelTemplateService;
         }
 
         /// <summary>
@@ -61,8 +61,8 @@
                                      .Where(!string.IsNullOrEmpty(input.Position), u => u.Position == input.Position)
                                      .Where(input.IsDisabled != null, u => u.IsDisabled == input.IsDisabled)
                                      .Where(!string.IsNullOrEmpty(input.Remarks), u => u.Remarks == input.Remarks)
-                                     .Where(input.CreatedTime!=null, u => u.CreatedTime>=  Convert.ToDateTime(input.CreatedTime[0]) && u.CreatedTime<= Convert.ToDateTime(input.CreatedTime[1]))
-                                     .Where(input.UpdatedTime!=null, u => u.UpdatedTime>=  Convert.ToDateTime(input.UpdatedTime[0]) && u.UpdatedTime<= Convert.ToDateTime(input.UpdatedTime[1]))
+                                     .Where(input.CreatedTime != null, u => u.CreatedTime >= Convert.ToDateTime(input.CreatedTime[0]) && u.CreatedTime <= Convert.ToDateTime(input.CreatedTime[1]))
+                                     .Where(input.UpdatedTime != null, u => u.UpdatedTime >= Convert.ToDateTime(input.UpdatedTime[0]) && u.UpdatedTime <= Convert.ToDateTime(input.UpdatedTime[1]))
                                      .Where(!string.IsNullOrEmpty(input.CreatedUserName), u => u.CreatedUserName == input.CreatedUserName)
                                      .Where(!string.IsNullOrEmpty(input.UpdatedUserName), u => u.UpdatedUserName == input.UpdatedUserName)
                                      .OrderBy(PageInputOrder.OrderBuilder<WmsWarehouseSearch>(input))
@@ -106,8 +106,8 @@
                 .Where(!string.IsNullOrEmpty(pPosition), u => u.Position == pPosition)
                 .Where(pIsDisabled != null, u => u.IsDisabled == pIsDisabled)
                 .Where(!string.IsNullOrEmpty(pRemarks), u => u.Remarks == pRemarks)
-           .Where(input.CreatedTime!=null, u => u.CreatedTime>=  Convert.ToDateTime(input.CreatedTime[0]) && u.CreatedTime<= Convert.ToDateTime(input.CreatedTime[1]))
-           .Where(input.UpdatedTime!=null, u => u.UpdatedTime>=  Convert.ToDateTime(input.UpdatedTime[0]) && u.UpdatedTime<= Convert.ToDateTime(input.UpdatedTime[1]))
+           .Where(input.CreatedTime != null, u => u.CreatedTime >= Convert.ToDateTime(input.CreatedTime[0]) && u.CreatedTime <= Convert.ToDateTime(input.CreatedTime[1]))
+           .Where(input.UpdatedTime != null, u => u.UpdatedTime >= Convert.ToDateTime(input.UpdatedTime[0]) && u.UpdatedTime <= Convert.ToDateTime(input.UpdatedTime[1]))
                 .Where(!string.IsNullOrEmpty(pCreatedUserName), u => u.CreatedUserName == pCreatedUserName)
                 .Where(!string.IsNullOrEmpty(pUpdatedUserName), u => u.UpdatedUserName == pUpdatedUserName)
             .OrderBy(PageInputOrder.OrderNonPageBuilder(input))
@@ -116,7 +116,7 @@
             return wmsWarehouses;
         }
 
-         /// <summary>
+        /// <summary>
         /// 鑾峰彇浠撳簱淇℃伅
         /// </summary>
         /// <param name="input"></param>
@@ -136,7 +136,7 @@
         public async Task<List<WmsWarehouseOutput>> List([FromQuery] WmsWarehouseInput input)
         {
             return await _wmsWarehouseRep.DetachedEntities.ProjectToType<WmsWarehouseOutput>().ToListAsync();
-        }    
+        }
 
         #region 澧炪�佸垹銆佹敼
 
@@ -149,7 +149,7 @@
         public async Task Add(AddWmsWarehouseInput input)
         {
             var wmsWarehouse = input.Adapt<WmsWarehouse>();
-                        //楠岃瘉
+            //楠岃瘉
             await CheckExisit(wmsWarehouse);
 
             wmsWarehouse.CreatedUserId = wmsWarehouse.UpdatedUserId = SysHelper.GetUserId();
@@ -168,7 +168,7 @@
         {
             var wmsWarehouse = await _wmsWarehouseRep.FirstOrDefaultAsync(u => u.Id == input.Id);
             await _wmsWarehouseRep.DeleteAsync(wmsWarehouse);
-            
+
         }
 
         /// <summary>
@@ -184,12 +184,12 @@
 
             var wmsWarehouse = input.Adapt<WmsWarehouse>();
             //楠岃瘉
-            await CheckExisit(wmsWarehouse,true);
+            await CheckExisit(wmsWarehouse, true);
 
             wmsWarehouse.UpdatedUserId = SysHelper.GetUserId();
             wmsWarehouse.UpdatedUserName = SysHelper.GetUserName();
             wmsWarehouse.UpdatedTime = SysHelper.GetNowTime();
-            await _wmsWarehouseRep.UpdateAsync(wmsWarehouse,ignoreNullValues:true);
+            await _wmsWarehouseRep.UpdateAsync(wmsWarehouse, ignoreNullValues: true);
         }
 
         #endregion
@@ -203,17 +203,17 @@
         /// <returns>瀵煎叆鐨勮褰曟暟</returns>
         [HttpPost("WmsWarehouse/importExcel")]
         public async Task<int> ImportExcelAsync(IFormFile file)
-        { 
+        {
             int _HeadStartLine = 2;//绗�1琛屾槸璇存槑,绗�2琛屾槸鍒楀悕
             int _DataStartLine = 3;//绗�3琛屽紑濮嬫槸鏁版嵁
 
             DataTable importDataTable = ExcelUtil.ImportExcelToDataTable(file, _HeadStartLine, _DataStartLine);
-            var addList =await CommonImport(importDataTable, _DataStartLine);
+            var addList = await CommonImport(importDataTable, _DataStartLine);
 
             lock (_lock)
             {
                 _wmsWarehouseRep.InsertAsync(addList);
-               
+
             }
             await Task.CompletedTask;
             return addList.Count;
@@ -234,182 +234,165 @@
             {
                 index++;
 
-               //瀵煎叆妯$増瀹氬埗鍖栦唬鐮侊紙鏇挎崲妯$増浣跨敤锛�
-                                          
-                           var addItem = new WmsWarehouse()
-                            {
-                               CreatedTime = SysHelper.GetNowTime(),
-                               CreatedUserId = SysHelper.GetUserId(),
-                               CreatedUserName = SysHelper.GetUserName(),
-                               UpdatedTime = SysHelper.GetNowTime(),
-                               UpdatedUserId = SysHelper.GetUserId(),
-                               UpdatedUserName = SysHelper.GetUserName()
-                             };
-                          #region 瀹氫箟鍙橀噺
-                           var _Code = "";//浠撳簱缂栧彿
-                           var _Name = "";//浠撳簱鍚嶇О
-                           var _Address = "";//浠撳簱鍦板潃
-                           var _FactoryCode = "";//宸ュ巶缂栧彿
-                           var _Length = "";//闀�
-                           var _Width = "";//瀹�
-                           var _Height = "";//楂�
-                           var _BaseUnit = "";//鍩烘湰鍗曞厓
-                           var _Position = "";//瀹氫綅
-                           var _IsDisabled = "";//鏄惁绂佺敤
-                           var _Remarks = "";//澶囨敞
-                           var _Id = "";//Id涓婚敭
-                          #endregion
-                          
-                          
-                          #region 鍙栧��
-                           _Code = row["浠撳簱缂栧彿"]?.ToString() ;
-                           _Name = row["浠撳簱鍚嶇О"]?.ToString() ;
-                           _Address = row["浠撳簱鍦板潃"]?.ToString() ;
-                           _FactoryCode = row["宸ュ巶缂栧彿"]?.ToString() ;
-                           _Length = row["闀�"]?.ToString() ;
-                           _Width = row["瀹�"]?.ToString() ;
-                           _Height = row["楂�"]?.ToString() ;
-                           _BaseUnit = row["鍩烘湰鍗曞厓"]?.ToString() ;
-                           _Position = row["瀹氫綅"]?.ToString() ;
-                           _IsDisabled = row["鏄惁绂佺敤"]?.ToString() ;
-                           _Remarks = row["澶囨敞"]?.ToString() ;
-                           _Id = row["Id涓婚敭"]?.ToString() ;
-                          #endregion
-                          
-                          
-                          #region 楠岃瘉
-                          
-                          if (string.IsNullOrEmpty(_Code))
-                          {
-                            throw Oops.Oh($"绗瑊index}琛孾浠撳簱缂栧彿]{_Code}涓嶈兘涓虹┖锛�");
-                          }
-                          
-                          if(!string.IsNullOrEmpty(_Code))
-                          {
-                                addItem.Code = (string)_Code;
-                           }
-                          
-                          if (string.IsNullOrEmpty(_Name))
-                          {
-                            throw Oops.Oh($"绗瑊index}琛孾浠撳簱鍚嶇О]{_Name}涓嶈兘涓虹┖锛�");
-                          }
-                          
-                          if(!string.IsNullOrEmpty(_Name))
-                          {
-                                addItem.Name = (string)_Name;
-                           }
-                          if(!string.IsNullOrEmpty(_Address))
-                          {
-                                addItem.Address = (string)_Address;
-                           }
-                          
-                          if (string.IsNullOrEmpty(_FactoryCode))
-                          {
-                            throw Oops.Oh($"绗瑊index}琛孾宸ュ巶缂栧彿]{_FactoryCode}涓嶈兘涓虹┖锛�");
-                          }
-                          
-                          if(!string.IsNullOrEmpty(_FactoryCode))
-                          {
-                                addItem.FactoryCode = (string)_FactoryCode;
-                           }
-                          if(!string.IsNullOrEmpty(_Length))
-                          {
-                              if (!decimal.TryParse(_Length, out decimal outLength)&&!string.IsNullOrEmpty(_Length))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾闀縘{_Length}鍊间笉姝g‘锛�");
-                              }
-                              if (outLength <= 0&&!string.IsNullOrEmpty(_Length))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾闀縘{_Length}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
-                              }
-                              else
-                              {
-                                 addItem.Length = outLength;
-                              }
-                          
-                          }
-                          if(!string.IsNullOrEmpty(_Width))
-                          {
-                              if (!decimal.TryParse(_Width, out decimal outWidth)&&!string.IsNullOrEmpty(_Width))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾瀹絔{_Width}鍊间笉姝g‘锛�");
-                              }
-                              if (outWidth <= 0&&!string.IsNullOrEmpty(_Width))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾瀹絔{_Width}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
-                              }
-                              else
-                              {
-                                 addItem.Width = outWidth;
-                              }
-                          
-                          }
-                          if(!string.IsNullOrEmpty(_Height))
-                          {
-                              if (!decimal.TryParse(_Height, out decimal outHeight)&&!string.IsNullOrEmpty(_Height))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾楂榏{_Height}鍊间笉姝g‘锛�");
-                              }
-                              if (outHeight <= 0&&!string.IsNullOrEmpty(_Height))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾楂榏{_Height}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
-                              }
-                              else
-                              {
-                                 addItem.Height = outHeight;
-                              }
-                          
-                          }
-                          if(!string.IsNullOrEmpty(_BaseUnit))
-                          {
-                                addItem.BaseUnit = (string)_BaseUnit;
-                           }
-                          if(!string.IsNullOrEmpty(_Position))
-                          {
-                                addItem.Position = (string)_Position;
-                           }
-                          if(!string.IsNullOrEmpty(_IsDisabled))
-                          {
-                            if(!_IsDisabled.Equals("鏄�") && !_IsDisabled.Equals("鍚�"))
-                             {
-                               throw Oops.Oh($"绗瑊index}琛孾鏄惁绂佺敤]{_IsDisabled}鍊间笉姝g‘锛�");
-                             }
-                             else
-                             {
-                               bool outIsDisabled = _IsDisabled.Equals("鏄�") ? true : false;
-                               addItem.IsDisabled = outIsDisabled;
-                             }
-                             }
-                          
-                          if(!string.IsNullOrEmpty(_Remarks))
-                          {
-                                addItem.Remarks = (string)_Remarks;
-                           }
-                          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
-                          
+                //瀵煎叆妯$増瀹氬埗鍖栦唬鐮侊紙鏇挎崲妯$増浣跨敤锛�
 
-              
+                var addItem = new WmsWarehouse()
+                {
+                    CreatedTime = SysHelper.GetNowTime(),
+                    CreatedUserId = SysHelper.GetUserId(),
+                    CreatedUserName = SysHelper.GetUserName(),
+                    UpdatedTime = SysHelper.GetNowTime(),
+                    UpdatedUserId = SysHelper.GetUserId(),
+                    UpdatedUserName = SysHelper.GetUserName()
+                };
+                #region 瀹氫箟鍙橀噺
+                var _Code = "";//浠撳簱缂栧彿
+                var _Name = "";//浠撳簱鍚嶇О
+                var _Address = "";//浠撳簱鍦板潃
+                var _FactoryCode = "";//宸ュ巶缂栧彿
+                var _Length = "";//闀�
+                var _Width = "";//瀹�
+                var _Height = "";//楂�
+                var _BaseUnit = "";//鍩烘湰鍗曞厓
+                var _Position = "";//瀹氫綅
+                var _IsDisabled = "";//鏄惁绂佺敤
+                var _Remarks = "";//澶囨敞
+                #endregion
+
+
+                #region 鍙栧��
+                _Code = row["浠撳簱缂栧彿"]?.ToString();
+                _Name = row["浠撳簱鍚嶇О"]?.ToString();
+                _Address = row["浠撳簱鍦板潃"]?.ToString();
+                _FactoryCode = row["宸ュ巶缂栧彿"]?.ToString();
+                _Length = row["闀�"]?.ToString();
+                _Width = row["瀹�"]?.ToString();
+                _Height = row["楂�"]?.ToString();
+                _BaseUnit = row["鍩烘湰鍗曞厓"]?.ToString();
+                _Position = row["瀹氫綅"]?.ToString();
+                _IsDisabled = row["鏄惁绂佺敤"]?.ToString();
+                _Remarks = row["澶囨敞"]?.ToString();
+                #endregion
+
+
+                #region 楠岃瘉
+
+                if (string.IsNullOrEmpty(_Code))
+                {
+                    throw Oops.Oh($"绗瑊index}琛孾浠撳簱缂栧彿]{_Code}涓嶈兘涓虹┖锛�");
+                }
+
+                if (!string.IsNullOrEmpty(_Code))
+                {
+                    addItem.Code = (string)_Code;
+                }
+
+                if (string.IsNullOrEmpty(_Name))
+                {
+                    throw Oops.Oh($"绗瑊index}琛孾浠撳簱鍚嶇О]{_Name}涓嶈兘涓虹┖锛�");
+                }
+
+                if (!string.IsNullOrEmpty(_Name))
+                {
+                    addItem.Name = (string)_Name;
+                }
+                if (!string.IsNullOrEmpty(_Address))
+                {
+                    addItem.Address = (string)_Address;
+                }
+
+                if (string.IsNullOrEmpty(_FactoryCode))
+                {
+                    throw Oops.Oh($"绗瑊index}琛孾宸ュ巶缂栧彿]{_FactoryCode}涓嶈兘涓虹┖锛�");
+                }
+
+                if (!string.IsNullOrEmpty(_FactoryCode))
+                {
+                    addItem.FactoryCode = (string)_FactoryCode;
+                }
+                if (!string.IsNullOrEmpty(_Length))
+                {
+                    if (!decimal.TryParse(_Length, out decimal outLength) && !string.IsNullOrEmpty(_Length))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾闀縘{_Length}鍊间笉姝g‘锛�");
+                    }
+                    if (outLength <= 0 && !string.IsNullOrEmpty(_Length))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾闀縘{_Length}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
+                    }
+                    else
+                    {
+                        addItem.Length = outLength;
+                    }
+
+                }
+                if (!string.IsNullOrEmpty(_Width))
+                {
+                    if (!decimal.TryParse(_Width, out decimal outWidth) && !string.IsNullOrEmpty(_Width))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾瀹絔{_Width}鍊间笉姝g‘锛�");
+                    }
+                    if (outWidth <= 0 && !string.IsNullOrEmpty(_Width))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾瀹絔{_Width}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
+                    }
+                    else
+                    {
+                        addItem.Width = outWidth;
+                    }
+
+                }
+                if (!string.IsNullOrEmpty(_Height))
+                {
+                    if (!decimal.TryParse(_Height, out decimal outHeight) && !string.IsNullOrEmpty(_Height))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾楂榏{_Height}鍊间笉姝g‘锛�");
+                    }
+                    if (outHeight <= 0 && !string.IsNullOrEmpty(_Height))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾楂榏{_Height}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
+                    }
+                    else
+                    {
+                        addItem.Height = outHeight;
+                    }
+
+                }
+                if (!string.IsNullOrEmpty(_BaseUnit))
+                {
+                    addItem.BaseUnit = (string)_BaseUnit;
+                }
+                if (!string.IsNullOrEmpty(_Position))
+                {
+                    addItem.Position = (string)_Position;
+                }
+                if (!string.IsNullOrEmpty(_IsDisabled))
+                {
+                    if (!_IsDisabled.Equals("鏄�") && !_IsDisabled.Equals("鍚�"))
+                    {
+                        throw Oops.Oh($"绗瑊index}琛孾鏄惁绂佺敤]{_IsDisabled}鍊间笉姝g‘锛�");
+                    }
+                    else
+                    {
+                        bool outIsDisabled = _IsDisabled.Equals("鏄�") ? true : false;
+                        addItem.IsDisabled = outIsDisabled;
+                    }
+                }
+
+                if (!string.IsNullOrEmpty(_Remarks))
+                {
+                    addItem.Remarks = (string)_Remarks;
+                }
+
+                #endregion
+
+
+
                 details.Add(addItem);
             }
-              //楠岄噸
-              await CheckExisitForImport(details);
-            
+            //楠岄噸
+            await CheckExisitForImport(details);
+
             return details;
         }
 
@@ -436,80 +419,133 @@
         /// <param name="input"></param>
         /// <param name="isEdit"></param>
         /// <returns></returns>
-        private async Task CheckExisit( WmsWarehouse input,bool isEdit=false)
+        private async Task CheckExisit(WmsWarehouse input, bool isEdit = false)
         {
-           
 
-           
-           bool isExist = false;
-           if (!isEdit)//鏂板
-           {
-                   //鏁版嵁鏄惁瀛樺湪閲嶅
-                   isExist = await _wmsWarehouseRep.AnyAsync(u =>
-                                   u.Code.Equals(input.Code)
-                   ,false);
-          }
-           else//缂栬緫 
-          {
 
-          
-                
-                 //褰撳墠缂栬緫鏁版嵁浠ュ鏄惁瀛樺湪閲嶅
-                  isExist = await _wmsWarehouseRep.AnyAsync(u => 
-                                    u.Id != input.Id
-                                    &&u.Code.Equals(input.Code)
-                    ,false);
-               }
-               
-        
+            string erorMsg = string.Empty;
+            bool isExist = false;
+            if (!isEdit)//鏂板
+            {
+                //鏁版嵁鏄惁瀛樺湪閲嶅
+                isExist = await _wmsWarehouseRep.AnyAsync(u =>
+                                u.Code.Equals(input.Code)
+                , false);
+                if (isExist)
+                {
+                    erorMsg = $"绯荤粺涓�,浠撳簱缂栧彿[{input.Code}]宸插瓨鍦�";
+                    throw Oops.Oh(erorMsg);
+                }
+                //鏁版嵁鏄惁瀛樺湪閲嶅
+                isExist = await _wmsWarehouseRep.AnyAsync(u =>
+                                u.Name.Equals(input.Name)
+                , false);
+                if (isExist)
+                {
+                    erorMsg = $"绯荤粺涓�,浠撳簱鍚嶇О[{input.Name}]宸插瓨鍦�";
+                    throw Oops.Oh(erorMsg);
+                }
+            }
+            else//缂栬緫 
+            {
 
-            if (isExist) throw Oops.Oh(ErrorCode.E0001);
-       }
-        
+
+
+                //褰撳墠缂栬緫鏁版嵁浠ュ鏄惁瀛樺湪閲嶅
+                isExist = await _wmsWarehouseRep.AnyAsync(u =>
+                                  u.Id != input.Id
+                                  && u.Code.Equals(input.Code)
+                  , false);
+                if (isExist)
+                {
+                    erorMsg = $"绯荤粺涓�,浠撳簱缂栧彿[{input.Code}]宸插瓨鍦�";
+                    throw Oops.Oh(erorMsg);
+                }
+
+                isExist = await _wmsWarehouseRep.AnyAsync(u =>
+                           u.Id != input.Id
+                           && u.Name.Equals(input.Name)
+                , false);
+                if (isExist)
+                {
+                    erorMsg = $"绯荤粺涓�,浠撳簱鍚嶇О[{input.Name}]宸插瓨鍦�";
+                    throw Oops.Oh(erorMsg);
+                }
+            }
+
+
+        }
+
         /// <summary>
         /// 鏍规嵁鑱斿悎涓婚敭楠岃瘉鏁版嵁鏄惁宸插瓨鍦�-瀵煎叆鏃堕獙璇�
         /// </summary>
         /// <param name="inputs"></param>
         /// <returns></returns>
         private async Task CheckExisitForImport(List<WmsWarehouse> inputs)
-        { 
+        {
             //鏍规嵁鑱斿悎涓婚敭楠岃瘉琛ㄦ牸涓腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�  
-                 if (inputs?.Count <= 0)
-                 {
-                     throw Oops.Oh($"瀵煎叆鏁版嵁涓嶈兘涓虹┖");
-                 }
-                 //鏁版嵁鏄惁閲嶅
-                 var existExcelItem = inputs.GroupBy(g => new {
-                                               g.Code
-                                               })
-                                               .Where(g => g.Count() > 1)
-                                               .Select(s => new {
-                                               s.Key.Code
-                                               }).FirstOrDefault();
-                 if (existExcelItem != null)
-                 {
-                   var wmsWarehouse = existExcelItem.Adapt<WmsWarehouse>();
-                   var item= existExcelItem.Adapt<WmsWarehouse>();
-                   throw Oops.Oh($"瀵煎叆鐨勮〃鏍间腑,浠撳簱缂栧彿[{item.Code}]宸插瓨鍦�");
-                 }
-                      
+            if (inputs?.Count <= 0)
+            {
+                throw Oops.Oh($"瀵煎叆鏁版嵁涓嶈兘涓虹┖");
+            }
+            //鏁版嵁鏄惁閲嶅
+            var existExcelItem = inputs.GroupBy(g => new
+            {
+                g.Code
+            })
+                                          .Where(g => g.Count() > 1)
+                                          .Select(s => new
+                                          {
+                                              s.Key.Code
+                                          }).FirstOrDefault();
+            if (existExcelItem != null)
+            {
+                var item = existExcelItem.Adapt<WmsWarehouse>();
+                throw Oops.Oh($"瀵煎叆鐨勮〃鏍间腑,浠撳簱缂栧彿[{item.Code}]宸插瓨鍦�");
+            }
+
+            var existExcelItem2 = inputs.GroupBy(g => new
+            {
+                g.Name
+            })
+                                            .Where(g => g.Count() > 1)
+                                            .Select(s => new
+                                            {
+                                                s.Key.Name
+                                            }).FirstOrDefault();
+            if (existExcelItem2 != null)
+            {
+                var item = existExcelItem2.Adapt<WmsWarehouse>();
+                throw Oops.Oh($"瀵煎叆鐨勮〃鏍间腑,浠撳簱鍚嶇О[{item.Name}]宸插瓨鍦�");
+            }
 
 
-
-    //鏍规嵁鑱斿悎涓婚敭楠岃瘉鏁版嵁搴撲腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�
-                 var existDBItem = await _wmsWarehouseRep.DetachedEntities.FirstOrDefaultAsync(w=> 
-                                                                         inputs.Select(s=>""
-                                                                           +s.Code
+            //鏍规嵁鑱斿悎涓婚敭楠岃瘉鏁版嵁搴撲腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�
+            var existDBItem = await _wmsWarehouseRep.DetachedEntities.FirstOrDefaultAsync(w =>
+                                                                         inputs.Select(s => ""
+                                                                           + s.Code
                                                                         )
                                                                         .Contains(""
-                                                                         +w.Code
+                                                                         + w.Code
                   ));
-                  if (existDBItem != null)
-                 {
-                   var wmsWarehouse = existExcelItem.Adapt<WmsWarehouse>();
-                   var item= existExcelItem.Adapt<WmsWarehouse>();
-                   throw Oops.Oh($"绯荤粺涓�,浠撳簱缂栧彿[{item.Code}]宸插瓨鍦�");
-                 }
+            if (existDBItem != null)
+            {
+                var item = existDBItem.Adapt<WmsWarehouse>();
+                throw Oops.Oh($"绯荤粺涓�,浠撳簱缂栧彿[{item.Code}]宸插瓨鍦�");
+            }
+
+            var existDBItem2 = await _wmsWarehouseRep.DetachedEntities.FirstOrDefaultAsync(w =>
+                                                                     inputs.Select(s => ""
+                                                                       + s.Name
+                                                                    )
+                                                                    .Contains(""
+                                                                     + w.Name
+              ));
+            if (existDBItem2 != null)
+            {
+                var item = existDBItem2.Adapt<WmsWarehouse>();
+                throw Oops.Oh($"绯荤粺涓�,浠撳簱鍚嶇О[{item.Name}]宸插瓨鍦�");
+            }
         }
 
         #endregion

--
Gitblit v1.9.3