소스 검색

修改获取识别号。修改查询店铺编码

zhuyiyi 1 주 전
부모
커밋
b93d4a7b37
4개의 변경된 파일62개의 추가작업 그리고 12개의 파일을 삭제
  1. 1 1
      SiteCore/Handler/sync.order.cs
  2. 46 1
      SiteCore/taobao/commonHelper.cs
  3. 7 2
      SiteCore/taobao/dataHelper.cs
  4. 8 8
      SiteCore/taobao/tmcHelper.cs

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 1
SiteCore/Handler/sync.order.cs


+ 46 - 1
SiteCore/taobao/commonHelper.cs

@@ -3734,7 +3734,7 @@ namespace SiteCore
                      }
                      }
                  };
-                 
+
                  try
                  {
                      var response = client.SendAsync(request).Result;
@@ -3749,5 +3749,50 @@ namespace SiteCore
             thread.Start();
 
         }
+
+        public static string generateDateTimeRandomNos()
+        {
+            Random random = new Random();
+            const int maxAttempts = 10;
+            for (int i = 0; i < maxAttempts; i++)
+            {
+                string orderSn = DateTimeNow("yyMMddHHmmssfff") + RandomNumbers(random, 3);
+
+                if (CeErpTradeCell.GetByCode(orderSn) == null)
+                {
+                    return orderSn;
+                }
+
+                // 避免在短时间内重复生成相同的时间戳
+                if (i < maxAttempts - 1)
+                {
+                    Thread.Sleep(1);
+                }
+            }
+            return "";
+        }
+
+        /// <summary>
+        /// 获取当前日期时间的指定格式字符串
+        /// </summary>
+        private static string DateTimeNow(string format)
+        {
+            return DateTime.Now.ToString(format);
+        }
+
+        /// <summary>
+        /// 生成指定长度的随机数字字符串
+        /// </summary>
+        private static string RandomNumbers(Random random, int length)
+        {
+            if (length <= 0) return string.Empty;
+
+            char[] numbers = new char[length];
+            for (int i = 0; i < length; i++)
+            {
+                numbers[i] = (char)('0' + random.Next(0, 10));
+            }
+            return new string(numbers);
+        }
     }
 }

+ 7 - 2
SiteCore/taobao/dataHelper.cs

@@ -363,12 +363,17 @@ namespace SiteCore.Handler
 
                     if (!string.IsNullOrEmpty(row["ShopId"].ToString()) && string.IsNullOrEmpty(shopCode) && string.IsNullOrEmpty(row["posCode"].ToString()))
                     {
-                        string shopsql = string.Format("SELECT posCode FROM [dbo].[view_ErpTradeCell] WHERE ShopId = {0} and posCode <> ''  ORDER BY ID desc;", row["ShopId"]);
+                        string shopsql = string.Format("SELECT top 1 tid FROM [dbo].[CE_ErpTradeCell] WHERE ShopId = {0} AND OrderState = 8 and IsOffLineOrder =0", row["ShopId"]);
 
                         DataTable shopData = DbHelper.DbConn.ExecuteDataset(shopsql).Tables[0];
                         if (shopData != null && shopData.Rows.Count > 0)
                         {
-                            data["shopCode"] = shopData.Rows[0]["posCode"];
+                            CeErpTrade ceErpTrade = CeErpTrade.Get(shopData.Rows[0]["tid"].ToString());
+                            if (ceErpTrade != null)
+                            {
+                                data["shopCode"] = ceErpTrade.posCode;
+
+                            }
                         }
                     }
                     shopCode = data["shopCode"].ToString();

+ 8 - 8
SiteCore/taobao/tmcHelper.cs

@@ -854,7 +854,7 @@ namespace SiteCore
                     //唯一标识
 
                     entity.OrderSn = tObj.refOid;
-                    string orderSn = dataHelper.getSaleOrderSn();
+                    string orderSn = commonHelper.generateDateTimeRandomNos();
                     if (orderSn != "")
                     {
                         entity.OrderSn = orderSn;
@@ -1450,7 +1450,7 @@ namespace SiteCore
                     entity.ctid = tid;
                     //唯一标识
                     entity.OrderSn = tid;
-                    string orderSn = dataHelper.getSaleOrderSn();
+                    string orderSn = commonHelper.generateDateTimeRandomNos();
                     if (orderSn != "")
                     {
                         entity.OrderSn = orderSn;
@@ -1567,7 +1567,7 @@ namespace SiteCore
                     entity.ctid = tid;
                     //唯一标识
                     entity.OrderSn = tid;
-                    string orderSn = dataHelper.getSaleOrderSn();
+                    string orderSn = commonHelper.generateDateTimeRandomNos();
                     if (orderSn != "")
                     {
                         entity.OrderSn = orderSn;
@@ -1836,7 +1836,7 @@ namespace SiteCore
                 entity.ctid = ctid;
                 //唯一标识
                 entity.OrderSn = ctid;
-                string orderSn = dataHelper.getSaleOrderSn();
+                string orderSn = commonHelper.generateDateTimeRandomNos();
                 if (orderSn != "")
                 {
                     entity.OrderSn = orderSn;
@@ -2275,7 +2275,7 @@ namespace SiteCore
                 entity.ctid = ctid;
                 //唯一标识
                 entity.OrderSn = ctid;
-                string orderSn = dataHelper.getSaleOrderSn();
+                string orderSn = commonHelper.generateDateTimeRandomNos();
                 if (orderSn != "")
                 {
                     entity.OrderSn = orderSn;
@@ -2494,7 +2494,7 @@ namespace SiteCore
             if (string.IsNullOrEmpty(entity.OrderSn))
             {
                 //唯一标识
-                string orderSn = dataHelper.getSaleOrderSn();
+                string orderSn = commonHelper.generateDateTimeRandomNos();
                 if (orderSn != "")
                 {
                     entity.OrderSn = orderSn;
@@ -2681,7 +2681,7 @@ namespace SiteCore
             if (string.IsNullOrEmpty(entity.OrderSn))
             {
                 //唯一标识
-                string orderSn = dataHelper.getSaleOrderSn();
+                string orderSn = commonHelper.generateDateTimeRandomNos();
                 if (orderSn != "")
                 {
                     entity.OrderSn = orderSn;
@@ -3053,7 +3053,7 @@ namespace SiteCore
             if (string.IsNullOrEmpty(entity.OrderSn))
             {
                 //唯一标识
-                string orderSn = dataHelper.getSaleOrderSn();
+                string orderSn = commonHelper.generateDateTimeRandomNos();
                 if (orderSn != "")
                 {
                     entity.OrderSn = orderSn;

이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.