Răsfoiți Sursa

通过MQ推送SP原始数据,已正常

lichunlei 3 luni în urmă
părinte
comite
ed20873a72

+ 4 - 2
AppStart/Helper/PublicImportDataService.cs

@@ -570,7 +570,7 @@ namespace MySystem
             return "0";
         }
 
-        private void PushData(string tableName, string fields, string fieldvals)
+        public void PushData(string tableName, string fields, string fieldvals)
         {
             try
             {
@@ -584,8 +584,10 @@ namespace MySystem
                     {
                         string fieldItem = fieldList[i];
                         string fieldValItem = fieldValList[i].Trim('\'');
-                        spData.Add(fieldItem.Substring(0, 1).ToLower() + fieldItem.Substring(1), fieldValItem);
                         mainData.Add(fieldItem, fieldValItem);
+                        if(fieldItem == "CreateDate" && !fields.Contains("CreateTime")) fieldItem = "createTime";
+                        if(fieldItem == "UpdateDate" && !fields.Contains("UpdateTime")) fieldItem = "updateTime";
+                        spData.Add(fieldItem.Substring(0, 1).ToLower() + fieldItem.Substring(1), fieldValItem);
                     }
                 }
                 RabbitMQClient2.Instance.Push("SpDataQueue", tableName + "#cut#" + Newtonsoft.Json.JsonConvert.SerializeObject(spData));

+ 20 - 3
AppStart/RabbitMQClient2.cs

@@ -23,14 +23,31 @@ namespace MySystem
         public static IConnection _connection;
         public void CreateConn()
         { 
+            // var factory = new ConnectionFactory()
+            // {
+            //     HostName = HostName,
+            //     UserName = UserName,
+            //     Password = Password,
+            //     // VirtualHost = VirtualHostName
+            // };
+            // _connection = factory.CreateConnection();
+
             var factory = new ConnectionFactory()
             {
-                HostName = HostName,
                 UserName = UserName,
                 Password = Password,
-                VirtualHost = VirtualHostName
+                AutomaticRecoveryEnabled = true,  //如果connection挂掉是否重新连接
+                TopologyRecoveryEnabled = true,  //连接恢复后,连接的交换机,队列等是否一同恢复
+                VirtualHost = VirtualHostName,
             };
-            _connection = factory.CreateConnection();
+            List<AmqpTcpEndpoint> p = new List<AmqpTcpEndpoint>();
+            string[] HostNames = HostName.Split(',');
+            foreach (string subHostName in HostNames)
+            {
+                string[] subHostNameData = subHostName.Split(':');
+                p.Add(new AmqpTcpEndpoint(subHostNameData[0], int.Parse(subHostNameData[1])));
+            }
+            _connection = factory.CreateConnection(p);
         }
 
         #region 单对单接收

+ 14 - 13
Controllers/HomeController.cs

@@ -56,19 +56,20 @@ namespace MySystem.Controllers
             // aesKey = PublicImportDataService.Instance.LDZZBDecrypt(aesKey);
             // string content = PublicImportDataService.Instance.AesDecrypt("BgKSwUe/rs76m+xvJ39FYRFP+jAd/9eIuDgLWtPEh+Qgf+RqfMG8C4KP1X09a+4nc0U7N8Xlb9fit/CI8i5j+3Hti0vFSGQwO6OAzKqIxpYitV8/aftiCxyo8N0LnaiF6xmVJSY1x3riwXkjzqyiIVP8kl3wg+3oR37QUdaHbDPyu19VVItSUnBW+NV0fcXI", aesKey);
             // return content;
-            string content = "bind|30|{\"orgCode\":\"979307\",\"agentNo\":22811427,\"agencyNo\":31309873,\"externalCustomerNo\":\"8226510581309JM\",\"customerName\":\"万维**\",\"legalName\":\"陈*\",\"posSn\":\"00007902C12510030223\",\"posType\":\"ZPOS4G\",\"termNo\":\"L2132328\",\"type\":\"BIND\",\"operateTime\":\"2025-06-26 11:39:42\"}";
-            string[] data = content.Split('|');
-            string jsonString = data[2];
-            int BrandId = int.Parse(data[1]);
-            string Kind = data[0];
-            WebCMSEntities db = new WebCMSEntities();
-            string key = "kxs_" + Kind + "_list_" + BrandId;
-            JobMqMsg obj = RedisDbconn.Instance.GetList<JobMqMsg>("GetSpData", 1, 1000).FirstOrDefault(m => m.OrderString.Contains(key));
-            if(obj != null)
-            {
-                PublicImportDataService.Instance.InsertData(key, jsonString, obj, BrandId);
-            }
-            db.Dispose();
+            // string content = "bind|30|{\"orgCode\":\"979307\",\"agentNo\":22811427,\"agencyNo\":31309873,\"externalCustomerNo\":\"8226510581309JM\",\"customerName\":\"万维**\",\"legalName\":\"陈*\",\"posSn\":\"00007902C12510030223\",\"posType\":\"ZPOS4G\",\"termNo\":\"L2132328\",\"type\":\"BIND\",\"operateTime\":\"2025-06-26 11:39:42\"}";
+            // string[] data = content.Split('|');
+            // string jsonString = data[2];
+            // int BrandId = int.Parse(data[1]);
+            // string Kind = data[0];
+            // WebCMSEntities db = new WebCMSEntities();
+            // string key = "kxs_" + Kind + "_list_" + BrandId;
+            // JobMqMsg obj = RedisDbconn.Instance.GetList<JobMqMsg>("GetSpData", 1, 1000).FirstOrDefault(m => m.OrderString.Contains(key));
+            // if(obj != null)
+            // {
+            //     PublicImportDataService.Instance.InsertData(key, jsonString, obj, BrandId);
+            // }
+            // db.Dispose();
+            PublicImportDataService.Instance.PushData("TradeRecord", "CreateDate,UpdateDate,SeoTitle,SeoKeyword,SeoDescription,ChannelSerial,AgentNo,ProductType,Remark,SettleMethod,SettleFee,BankCardNo,ReceiptType,IsStoreCashier,DigAmt,DigAmtFlag,MerMobile,DeviceType,TradeSnNo,BankCardType,SerEntryMode,TradeType,TradeTime,TradeDate,ErrorMsg,ErrorCode,TradeStatus,DiscountRateFlag,BankAuthCode,TradeReferNo,TradeAmount,MerName,MerNo,TradeSerialNo,Field5,Field4,Field3,Field2,Field1", "'2025-07-09 15:05:41','2025-07-09 15:05:41','','','%7b%22direct_agent_id%22%3a%2250915020%22%2c%22merch_no%22%3a%22N00000Z018E0509%22%2c%22amount%22%3a%22212500%22%2c%22agent_id%22%3a%2250915020%22%2c%22latitude%22%3a%220%22%2c%22area_code%22%3a%220%22%2c%22sign%22%3a%22IN46SK5wKbrmB%2bd0%2fPfGcwZvoQtZq63C9UKHm4QHGyJ4ll5I8q5wCHKmVcv5Gkq4kD7GjCt4%2fMA2BMq7LJHYlpR%2b2QWUeQkB0TIQtcYkjV37crrO6bE9%2bCya0wGSRAssBK9l5vAPKrn3Kq0cZTG2bxCdbyyZBR3D23b9VENvRkje28NIXVicUb2rOQBBYdMP6A1gQD0GZbE%2fHaMbEoRhtIOUyH0zn2g6BLRpoUljrh6N%2b1ibZqTcVkSwkOwiq%2fSwMutRVUd2ZEY4VDDLOcIgsDFbXGlfa8uTv9qFR4VMsxleMZs%2f63QKnt3a1YJUkVa%2b3xld7YwXG%2b2YdJruvdOd5w%3d%3d%22%2c%22busi_sub_type%22%3a%220104%22%2c%22trans_id%22%3a%22461146160371924552908848%22%2c%22trans_time%22%3a%2220250709150541%22%2c%22ret_msg%22%3a%22%e4%ba%a4%e6%98%93%e6%88%90%e5%8a%9f%22%2c%22refer_no%22%3a%22091505908848%22%2c%22term_no%22%3a%22NO3CS1CH%22%2c%22fee_amount%22%3a%221275%22%2c%22card_no%22%3a%22622600****6377%22%2c%22busi_type%22%3a%222103%22%2c%22pos_sn%22%3a%22WME52S0148336%22%2c%22pay_type%22%3a%2202%22%2c%22channel_type%22%3a%22unionpay%22%2c%22order_id%22%3a%22461146160371924552908848%22%2c%22ret_code%22%3a%2200%22%2c%22longitude%22%3a%220%22%2c%22trans_type%22%3a%22bankpay%22%7d','','50915020','22','','',0.00,'622600****6377','','',0.00,'','','','WME52S0148336','02','','2103','','','','','00','','','',212500.00,'','N00000Z018E0509','461146160371924552908848','','091505908848','0','0104','NO3CS1CH'");
             return "ok";
         }
     

+ 4 - 3
appsettings.Development.json

@@ -30,8 +30,9 @@
     "JwtSecret": "JvDHuowbOnWiyxMIFc9gG5rw1LSSc0xx68L31oRfxS0",
     "JwtIss": "KxsSpServer",
     "JwtAud": "api",
-    "MqUserName": "",
-    "MqPassword": "",
-    "MqHostName": ""
+    "MqUserName": "admin",
+    "MqPassword": "admin",
+    "MqHostName": "47.109.61.191:5672",
+    "MqVirtualHostName": "/"
   }
 }

+ 4 - 3
appsettings.json

@@ -30,8 +30,9 @@
     "JwtSecret": "JvDHuowbOnWiyxMIFc9gG5rw1LSSc0xx68L31oRfxS0",
     "JwtIss": "KxsSpServer",
     "JwtAud": "api",
-    "MqUserName": "",
-    "MqPassword": "",
-    "MqHostName": ""
+    "MqUserName": "MjpyYWJiaXRtcS1zZXJ2ZXJsZXNzLWNuLW80OTNwdms0dTA1OkxUQUk1dEZVMzU2c01HdFNSa0dHbkRRUQ==",
+    "MqPassword": "OEE5OTZDMzg5OUFBNEY5QUNCNTQ3MTFDMkNFQkNFRTA1NUNCNjk1QToxNzE0MzY4OTQwMjY3",
+    "MqHostName": "rabbitmq-serverless-cn-o493pvk4u05.cn-chengdu.amqp-0.vpc.mq.amqp.aliyuncs.com:5672",
+    "MqVirtualHostName": "kxs-rabbitmq-vhost-1"
   }
 }