From f4078b75fe80f03e58af3217bf642d0de118d1c9 Mon Sep 17 00:00:00 2001
From: liuying <1427574514@qq.com>
Date: 周四, 09 5月 2024 13:01:19 +0800
Subject: [PATCH] 流程图

---
 iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/WmsFactory/WmsFactoryService.cs |  129 ++++++++++++++++++++++++++++--------------
 1 files changed, 86 insertions(+), 43 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 5a5328b..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
@@ -16,7 +16,7 @@
 namespace Admin.NET.Application
 {
     /// <summary>
-    /// 宸ュ巶淇℃伅琛ㄦ湇鍔�
+    /// 宸ュ巶淇℃伅鏈嶅姟
     /// </summary>
     [ApiDescriptionSettings("WmsBase", Name = "WmsFactory", Order = 100)]
     [Route("api")]
@@ -42,7 +42,7 @@
         }
 
         /// <summary>
-        /// 鍒嗛〉鏌ヨ宸ュ巶淇℃伅琛�
+        /// 鍒嗛〉鏌ヨ宸ュ巶淇℃伅
         /// </summary>
         /// <param name="input"></param>
         /// <returns></returns>
@@ -65,10 +65,10 @@
         }
 
         /// <summary>
-        /// 涓嶅垎椤垫煡璇㈠伐鍘備俊鎭〃鍒楄〃
+        /// 涓嶅垎椤垫煡璇㈠伐鍘備俊鎭垪琛�
         /// </summary>
-        /// <param name="input">宸ュ巶淇℃伅琛ㄦ煡璇㈠弬鏁�</param>
-        /// <returns>(宸ュ巶淇℃伅琛�)瀹炰緥鍒楄〃</returns>
+        /// <param name="input">宸ュ巶淇℃伅鏌ヨ鍙傛暟</param>
+        /// <returns>(宸ュ巶淇℃伅)瀹炰緥鍒楄〃</returns>
         [HttpGet("WmsFactory/listNonPage")]
         public async Task<List<WmsFactoryOutput>> ListNonPageAsync([FromQuery] WmsFactorySearchNonPage input)
         {
@@ -96,7 +96,7 @@
         }
 
          /// <summary>
-        /// 鑾峰彇宸ュ巶淇℃伅琛�
+        /// 鑾峰彇宸ュ巶淇℃伅
         /// </summary>
         /// <param name="input"></param>
         /// <returns></returns>
@@ -107,7 +107,7 @@
         }
 
         /// <summary>
-        /// 鑾峰彇宸ュ巶淇℃伅琛ㄥ垪琛�
+        /// 鑾峰彇宸ュ巶淇℃伅鍒楄〃
         /// </summary>
         /// <param name="input"></param>
         /// <returns></returns>
@@ -120,7 +120,7 @@
         #region 澧炪�佸垹銆佹敼
 
         /// <summary>
-        /// 澧炲姞宸ュ巶淇℃伅琛�
+        /// 澧炲姞宸ュ巶淇℃伅
         /// </summary>
         /// <param name="input"></param>
         /// <returns></returns>
@@ -138,7 +138,7 @@
         }
 
         /// <summary>
-        /// 鍒犻櫎宸ュ巶淇℃伅琛�
+        /// 鍒犻櫎宸ュ巶淇℃伅
         /// </summary>
         /// <param name="input"></param>
         /// <returns></returns>
@@ -151,7 +151,7 @@
         }
 
         /// <summary>
-        /// 鏇存柊宸ュ巶淇℃伅琛�
+        /// 鏇存柊宸ュ巶淇℃伅
         /// </summary>
         /// <param name="input"></param>
         /// <returns></returns>
@@ -176,7 +176,7 @@
         #region 瀵煎叆
 
         /// <summary>
-        /// Excel妯℃澘瀵煎叆宸ュ巶淇℃伅琛ㄥ姛鑳�
+        /// Excel妯℃澘瀵煎叆宸ュ巶淇℃伅鍔熻兘
         /// </summary>
         /// <param name="file">Excel妯℃澘鏂囦欢</param>
         /// <returns>瀵煎叆鐨勮褰曟暟</returns>
@@ -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
                           
 
@@ -309,7 +292,7 @@
         }
 
         /// <summary>
-        /// 鏍规嵁鐗堟湰涓嬭浇宸ュ巶淇℃伅琛ㄧ殑Excel瀵煎叆妯℃澘
+        /// 鏍规嵁鐗堟湰涓嬭浇宸ュ巶淇℃伅鐨凟xcel瀵煎叆妯℃澘
         /// </summary>
         /// <param name="version">妯℃澘鐗堟湰</param>
         /// <returns>涓嬭浇鐨勬ā鏉挎枃浠�</returns>
@@ -317,7 +300,7 @@
         public IActionResult DownloadExcelTemplate([FromQuery] string version)
         {
             string _path = TemplateConst.EXCEL_TEMPLATEFILE_瀵煎叆妯$増璺緞 + $"\\WmsFactory{TemplateConst.EXCEL_TEMPLATEFILE_瀵煎叆妯$増鍚嶇О鍚庣紑}.xlsx";
-            var fileName = HttpUtility.UrlEncode($"瀵煎叆妯℃澘(宸ュ巶淇℃伅琛�).xlsx", Encoding.GetEncoding("UTF-8"));
+            var fileName = HttpUtility.UrlEncode($"瀵煎叆妯℃澘(宸ュ巶淇℃伅).xlsx", Encoding.GetEncoding("UTF-8"));
             return new FileStreamResult(new FileStream(_path, FileMode.Open), "application/octet-stream") { FileDownloadName = fileName };
         }
 
@@ -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