From 4d14b84903bf0277c5e8b9b3138c5e1d981e95db Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周四, 25 4月 2024 11:01:31 +0800
Subject: [PATCH] Merge branch 'master' of http://222.71.245.114:9086/r/iWare_RawMaterialWarehouse

---
 iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/BaseCustomer/BaseCustomerService.cs |  211 +++++++++++++++++++++-------------------------------
 1 files changed, 87 insertions(+), 124 deletions(-)

diff --git a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/BaseCustomer/BaseCustomerService.cs b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/BaseCustomer/BaseCustomerService.cs
index b8be889..0f9c112 100644
--- a/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/BaseCustomer/BaseCustomerService.cs
+++ b/iWare_RawMaterialWarehouse_Wms/Admin.NET.Application/Service/WmsBase/BaseCustomer/BaseCustomerService.cs
@@ -16,7 +16,7 @@
 namespace Admin.NET.Application
 {
     /// <summary>
-    /// 瀹㈡埛妗f鏈嶅姟
+    /// 寰�鏉ュ叧绯绘湇鍔�
     /// </summary>
     [ApiDescriptionSettings("WmsBase", Name = "BaseCustomer", Order = 100)]
     [Route("api")]
@@ -42,7 +42,7 @@
         }
 
         /// <summary>
-        /// 鍒嗛〉鏌ヨ瀹㈡埛妗f
+        /// 鍒嗛〉鏌ヨ寰�鏉ュ叧绯�
         /// </summary>
         /// <param name="input"></param>
         /// <returns></returns>
@@ -51,11 +51,10 @@
         {
             var baseCustomers = await _baseCustomerRep.DetachedEntities
                                      .Where(!string.IsNullOrEmpty(input.CustCode), u => u.CustCode == input.CustCode)
-                                     .Where(!string.IsNullOrEmpty(input.CustChinaName), u => EF.Functions.Like(u.CustChinaName, $"%{input.CustChinaName.Trim()}%"))
+                                     .Where(!string.IsNullOrEmpty(input.CustChinaName), u => u.CustChinaName == input.CustChinaName)
                                      .Where(!string.IsNullOrEmpty(input.CustEnglishName), u => u.CustEnglishName == input.CustEnglishName)
                                      .Where(!string.IsNullOrEmpty(input.MnemonicCode), u => u.MnemonicCode == input.MnemonicCode)
                                      .Where(input.CustType != null, u => u.CustType == input.CustType)
-                                     .Where(!string.IsNullOrEmpty(input.CustTypeName), u => u.CustTypeName == input.CustTypeName)
                                      .Where(!string.IsNullOrEmpty(input.LinkMan), u => u.LinkMan == input.LinkMan)
                                      .Where(!string.IsNullOrEmpty(input.Phone), u => u.Phone == input.Phone)
                                      .Where(!string.IsNullOrEmpty(input.Email), u => u.Email == input.Email)
@@ -75,10 +74,10 @@
         }
 
         /// <summary>
-        /// 涓嶅垎椤垫煡璇㈠鎴锋。妗堝垪琛�
+        /// 涓嶅垎椤垫煡璇㈠線鏉ュ叧绯诲垪琛�
         /// </summary>
-        /// <param name="input">瀹㈡埛妗f鏌ヨ鍙傛暟</param>
-        /// <returns>(瀹㈡埛妗f)瀹炰緥鍒楄〃</returns>
+        /// <param name="input">寰�鏉ュ叧绯绘煡璇㈠弬鏁�</param>
+        /// <returns>(寰�鏉ュ叧绯�)瀹炰緥鍒楄〃</returns>
         [HttpGet("BaseCustomer/listNonPage")]
         public async Task<List<BaseCustomerOutput>> ListNonPageAsync([FromQuery] BaseCustomerSearchNonPage input)
         {
@@ -87,7 +86,6 @@
             var pCustEnglishName = input.CustEnglishName?.Trim() ?? "";
             var pMnemonicCode = input.MnemonicCode?.Trim() ?? "";
             var pCustType = input.CustType;
-            var pCustTypeName = input.CustTypeName?.Trim() ?? "";
             var pLinkMan = input.LinkMan?.Trim() ?? "";
             var pPhone = input.Phone?.Trim() ?? "";
             var pEmail = input.Email?.Trim() ?? "";
@@ -102,11 +100,10 @@
             var pUpdatedUserName = input.UpdatedUserName?.Trim() ?? "";
             var baseCustomers = await _baseCustomerRep.DetachedEntities
                 .Where(!string.IsNullOrEmpty(pCustCode), u => u.CustCode == pCustCode)
-                .Where(!string.IsNullOrEmpty(pCustChinaName), u => EF.Functions.Like(u.CustChinaName, $"%{pCustChinaName}%")) 
+                .Where(!string.IsNullOrEmpty(pCustChinaName), u => u.CustChinaName == pCustChinaName)
                 .Where(!string.IsNullOrEmpty(pCustEnglishName), u => u.CustEnglishName == pCustEnglishName)
                 .Where(!string.IsNullOrEmpty(pMnemonicCode), u => u.MnemonicCode == pMnemonicCode)
                 .Where(pCustType != null, u => u.CustType == pCustType)
-                .Where(!string.IsNullOrEmpty(pCustTypeName), u => u.CustTypeName == pCustTypeName)
                 .Where(!string.IsNullOrEmpty(pLinkMan), u => u.LinkMan == pLinkMan)
                 .Where(!string.IsNullOrEmpty(pPhone), u => u.Phone == pPhone)
                 .Where(!string.IsNullOrEmpty(pEmail), u => u.Email == pEmail)
@@ -126,7 +123,7 @@
         }
 
          /// <summary>
-        /// 鑾峰彇瀹㈡埛妗f
+        /// 鑾峰彇寰�鏉ュ叧绯�
         /// </summary>
         /// <param name="input"></param>
         /// <returns></returns>
@@ -137,7 +134,7 @@
         }
 
         /// <summary>
-        /// 鑾峰彇瀹㈡埛妗f鍒楄〃
+        /// 鑾峰彇寰�鏉ュ叧绯诲垪琛�
         /// </summary>
         /// <param name="input"></param>
         /// <returns></returns>
@@ -150,7 +147,7 @@
         #region 澧炪�佸垹銆佹敼
 
         /// <summary>
-        /// 澧炲姞瀹㈡埛妗f
+        /// 澧炲姞寰�鏉ュ叧绯�
         /// </summary>
         /// <param name="input"></param>
         /// <returns></returns>
@@ -158,9 +155,11 @@
         public async Task Add(AddBaseCustomerInput input)
         {
             var baseCustomer = input.Adapt<BaseCustomer>();
-                        //楠岃瘉
-            await CheckExisit(baseCustomer);
+            baseCustomer.CustCode = Yitter.IdGenerator.YitIdHelper.NextId().ToString();//TODO 瑕佽皟鐢ㄧ敓鎴� 缂栧彿鐨勬柟娉� 鍏堢敤闆姳ID
+            baseCustomer.CustTypeName = baseCustomer.CustType.ToString();
 
+            //楠岃瘉
+            await CheckExisit(baseCustomer);
             baseCustomer.CreatedUserId = baseCustomer.UpdatedUserId = SysHelper.GetUserId();
             baseCustomer.CreatedUserName = baseCustomer.UpdatedUserName = SysHelper.GetUserName();
             baseCustomer.CreatedTime = baseCustomer.UpdatedTime = SysHelper.GetNowTime();
@@ -168,7 +167,7 @@
         }
 
         /// <summary>
-        /// 鍒犻櫎瀹㈡埛妗f
+        /// 鍒犻櫎寰�鏉ュ叧绯�
         /// </summary>
         /// <param name="input"></param>
         /// <returns></returns>
@@ -181,7 +180,7 @@
         }
 
         /// <summary>
-        /// 鏇存柊瀹㈡埛妗f
+        /// 鏇存柊寰�鏉ュ叧绯�
         /// </summary>
         /// <param name="input"></param>
         /// <returns></returns>
@@ -206,7 +205,7 @@
         #region 瀵煎叆
 
         /// <summary>
-        /// Excel妯℃澘瀵煎叆瀹㈡埛妗f鍔熻兘
+        /// Excel妯℃澘瀵煎叆寰�鏉ュ叧绯诲姛鑳�
         /// </summary>
         /// <param name="file">Excel妯℃澘鏂囦欢</param>
         /// <returns>瀵煎叆鐨勮褰曟暟</returns>
@@ -247,20 +246,20 @@
                                           
                            var addItem = new BaseCustomer()
                             {
+                               CustCode = Yitter.IdGenerator.YitIdHelper.NextId().ToString(),//TODO 瑕佽皟鐢ㄧ敓鎴� 缂栧彿鐨勬柟娉� 鍏堢敤闆姳ID
                                CreatedTime = SysHelper.GetNowTime(),
                                CreatedUserId = SysHelper.GetUserId(),
                                CreatedUserName = SysHelper.GetUserName(),
                                UpdatedTime = SysHelper.GetNowTime(),
                                UpdatedUserId = SysHelper.GetUserId(),
                                UpdatedUserName = SysHelper.GetUserName()
+
                              };
                           #region 瀹氫箟鍙橀噺
-                           var _CustCode = "";//瀹㈡埛缂栧彿
                            var _CustChinaName = "";//瀹㈡埛涓枃鍚嶇О
                            var _CustEnglishName = "";//瀹㈡埛鑻辨枃鍚嶇О
                            var _MnemonicCode = "";//鍔╄鐮�
                            var _CustType = "";//绫诲瀷
-                           var _CustTypeName = "";//绫诲瀷鍚嶇О
                            var _LinkMan = "";//鑱旂郴浜�
                            var _Phone = "";//鐢佃瘽
                            var _Email = "";//鐢靛瓙閭欢
@@ -269,17 +268,14 @@
                            var _City = "";//鍩庡競
                            var _Address = "";//鍦板潃
                            var _IsDisabled = "";//鏄惁绂佺敤
-                           var _Id = "";//Id涓婚敭
                           #endregion
                           
                           
                           #region 鍙栧��
-                           _CustCode = row["瀹㈡埛缂栧彿"]?.ToString() ;
                            _CustChinaName = row["瀹㈡埛涓枃鍚嶇О"]?.ToString() ;
                            _CustEnglishName = row["瀹㈡埛鑻辨枃鍚嶇О"]?.ToString() ;
                            _MnemonicCode = row["鍔╄鐮�"]?.ToString() ;
                            _CustType = row["绫诲瀷"]?.ToString() ;
-                           _CustTypeName = row["绫诲瀷鍚嶇О"]?.ToString() ;
                            _LinkMan = row["鑱旂郴浜�"]?.ToString() ;
                            _Phone = row["鐢佃瘽"]?.ToString() ;
                            _Email = row["鐢靛瓙閭欢"]?.ToString() ;
@@ -287,22 +283,11 @@
                            _Province = row["鐪佷唤"]?.ToString() ;
                            _City = row["鍩庡競"]?.ToString() ;
                            _Address = row["鍦板潃"]?.ToString() ;
-                           _IsDisabled = row["鏄惁绂佺敤"]?.ToString() ;
-                           _Id = row["Id涓婚敭"]?.ToString() ;
+
                           #endregion
                           
                           
                           #region 楠岃瘉
-                          
-                          if (string.IsNullOrEmpty(_CustCode))
-                          {
-                            throw Oops.Oh($"绗瑊index}琛孾瀹㈡埛缂栧彿]{_CustCode}涓嶈兘涓虹┖锛�");
-                          }
-                          
-                          if(!string.IsNullOrEmpty(_CustCode))
-                          {
-                                addItem.CustCode = (string)_CustCode;
-                           }
                           
                           if (string.IsNullOrEmpty(_CustChinaName))
                           {
@@ -329,23 +314,18 @@
                           
                           if(!string.IsNullOrEmpty(_CustType))
                           {
-                              if (!int.TryParse(_CustType, out int outCustType)&&!string.IsNullOrEmpty(_CustType))
+                          Admin.NET.Core.BaseCustomerTypeEnum  enumCustType = default(Admin.NET.Core.BaseCustomerTypeEnum);
+                          
+                             if(!Enum.TryParse<Admin.NET.Core.BaseCustomerTypeEnum>(_CustType, out enumCustType)&&!string.IsNullOrEmpty(_CustType))
                               {
-                                 throw Oops.Oh($"绗瑊index}琛孾绫诲瀷]{_CustType}鍊间笉姝g‘锛�");
-                              }
-                              if (outCustType <= 0&&!string.IsNullOrEmpty(_CustType))
-                              {
-                                 throw Oops.Oh($"绗瑊index}琛孾绫诲瀷]{_CustType}鍊间笉鑳藉皬浜庣瓑浜�0锛�");
+                                throw Oops.Oh($"绗瑊index}琛孾绫诲瀷]{_CustType}鍊间笉姝g‘锛�");
                               }
                               else
                               {
-                                 addItem.CustType = outCustType;
+                                 addItem.CustType = enumCustType;
+                                 addItem.CustTypeName = addItem.CustType.ToString();
                               }
                           
-                          }
-                          if(!string.IsNullOrEmpty(_CustTypeName))
-                          {
-                                addItem.CustTypeName = (string)_CustTypeName;
                            }
                           if(!string.IsNullOrEmpty(_LinkMan))
                           {
@@ -386,24 +366,9 @@
                                bool outIsDisabled = _IsDisabled.Equals("鏄�") ? true : false;
                                addItem.IsDisabled = outIsDisabled;
                              }
-                             }
+                           }
                           
-                          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
                           
 
@@ -417,7 +382,7 @@
         }
 
         /// <summary>
-        /// 鏍规嵁鐗堟湰涓嬭浇瀹㈡埛妗f鐨凟xcel瀵煎叆妯℃澘
+        /// 鏍规嵁鐗堟湰涓嬭浇寰�鏉ュ叧绯荤殑Excel瀵煎叆妯℃澘
         /// </summary>
         /// <param name="version">妯℃澘鐗堟湰</param>
         /// <returns>涓嬭浇鐨勬ā鏉挎枃浠�</returns>
@@ -425,7 +390,7 @@
         public IActionResult DownloadExcelTemplate([FromQuery] string version)
         {
             string _path = TemplateConst.EXCEL_TEMPLATEFILE_瀵煎叆妯$増璺緞 + $"\\BaseCustomer{TemplateConst.EXCEL_TEMPLATEFILE_瀵煎叆妯$増鍚嶇О鍚庣紑}.xlsx";
-            var fileName = HttpUtility.UrlEncode($"瀵煎叆妯℃澘(瀹㈡埛妗f).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 };
         }
 
@@ -439,80 +404,78 @@
         /// <param name="input"></param>
         /// <param name="isEdit"></param>
         /// <returns></returns>
-        private async Task CheckExisit( BaseCustomer input,bool isEdit=false)
+        private async Task CheckExisit(BaseCustomer input, bool isEdit = false)
         {
-           
 
-           
-           bool isExist = false;
-           if (!isEdit)//鏂板
-           {
-                   //鏁版嵁鏄惁瀛樺湪閲嶅
-                   isExist = await _baseCustomerRep.AnyAsync(u =>
-                                   u.CustCode.Equals(input.CustCode)
-                   ,false);
-          }
-           else//缂栬緫 
-          {
 
-          
-                
-                 //褰撳墠缂栬緫鏁版嵁浠ュ鏄惁瀛樺湪閲嶅
-                  isExist = await _baseCustomerRep.AnyAsync(u => 
-                                    u.Id != input.Id
-                                    &&u.CustCode.Equals(input.CustCode)
-                    ,false);
-               }
-               
-        
+
+            bool isExist = false;
+            if (!isEdit)//鏂板
+            {
+                //鏁版嵁鏄惁瀛樺湪閲嶅
+                isExist = await _baseCustomerRep.AnyAsync(u =>
+                                u.CustChinaName.Equals(input.CustChinaName)
+                , false);
+            }
+            else//缂栬緫 
+            {
+
+
+
+                //褰撳墠缂栬緫鏁版嵁浠ュ鏄惁瀛樺湪閲嶅
+                isExist = await _baseCustomerRep.AnyAsync(u =>
+                                  u.Id != input.Id
+                                  && u.CustChinaName.Equals(input.CustChinaName)
+                  , false);
+            }
+
+
 
             if (isExist) throw Oops.Oh(ErrorCode.E0001);
-       }
-        
+        }
+
         /// <summary>
         /// 鏍规嵁鑱斿悎涓婚敭楠岃瘉鏁版嵁鏄惁宸插瓨鍦�-瀵煎叆鏃堕獙璇�
         /// </summary>
         /// <param name="inputs"></param>
         /// <returns></returns>
         private async Task CheckExisitForImport(List<BaseCustomer> inputs)
-        { 
+        {
             //鏍规嵁鑱斿悎涓婚敭楠岃瘉琛ㄦ牸涓腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�  
-                 if (inputs?.Count <= 0)
-                 {
-                     throw Oops.Oh($"瀵煎叆鏁版嵁涓嶈兘涓虹┖");
-                 }
-                 //鏁版嵁鏄惁閲嶅
-                 var existExcelItem = inputs.GroupBy(g => new {
-                                               g.CustCode
-                                               })
-                                               .Where(g => g.Count() > 1)
-                                               .Select(s => new {
-                                               s.Key.CustCode
-                                               }).FirstOrDefault();
-                 if (existExcelItem != null)
-                 {
-                   var baseCustomer = existExcelItem.Adapt<BaseCustomer>();
-                   var item= existExcelItem.Adapt<BaseCustomer>();
-                   throw Oops.Oh($"瀵煎叆鐨勮〃鏍间腑,瀹㈡埛缂栧彿[{item.CustCode}]宸插瓨鍦�");
-                 }
-                      
+            if (inputs?.Count <= 0)
+            {
+                throw Oops.Oh($"瀵煎叆鏁版嵁涓嶈兘涓虹┖");
+            }
+            //鏁版嵁鏄惁閲嶅
+            var existExcelItem = inputs.GroupBy(g => new {
+                g.CustChinaName
+            })
+                                          .Where(g => g.Count() > 1)
+                                          .Select(s => new {
+                                              s.Key.CustChinaName
+                                          }).FirstOrDefault();
+            if (existExcelItem != null)
+            {
+                var item = existExcelItem.Adapt<BaseCustomer>();
+                throw Oops.Oh($"瀵煎叆鐨勮〃鏍间腑,瀹㈡埛涓枃鍚嶇О[{item.CustChinaName}]宸插瓨鍦�");
+            }
 
 
 
-    //鏍规嵁鑱斿悎涓婚敭楠岃瘉鏁版嵁搴撲腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�
-                 var existDBItem = await _baseCustomerRep.DetachedEntities.FirstOrDefaultAsync(w=> 
-                                                                         inputs.Select(s=>""
-                                                                           +s.CustCode
-                                                                        )
-                                                                        .Contains(""
-                                                                         +w.CustCode
-                  ));
-                  if (existDBItem != null)
-                 {
-                   var baseCustomer = existExcelItem.Adapt<BaseCustomer>();
-                   var item= existExcelItem.Adapt<BaseCustomer>();
-                   throw Oops.Oh($"绯荤粺涓�,瀹㈡埛缂栧彿[{item.CustCode}]宸插瓨鍦�");
-                 }
+
+            //鏍规嵁鑱斿悎涓婚敭楠岃瘉鏁版嵁搴撲腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹�
+            var existDBItem = await _baseCustomerRep.DetachedEntities.FirstOrDefaultAsync(w =>
+                                                                    inputs.Select(s => ""
+                                                                      + s.CustChinaName
+                                                                   )
+                                                                   .Contains(""
+                                                                    + w.CustChinaName
+             ));
+            if (existDBItem != null)
+            {
+                var item = existDBItem.Adapt<BaseCustomer>();
+                throw Oops.Oh($"绯荤粺涓�,瀹㈡埛涓枃鍚嶇О[{item.CustChinaName}]宸插瓨鍦�");
+            }
         }
 
         #endregion

--
Gitblit v1.9.3