Browse Source

埋点推送数据给java

lcl 8 months ago
parent
commit
51ab9e22e1

+ 79 - 44
AppStart/Helper/PosPushDataHelper.cs

@@ -14,70 +14,105 @@ namespace MySystem
         //绑定数据
         public static void Bind(PosMerchantInfo mer)
         {
-            Dictionary<string, object> dataContent = new Dictionary<string, object>();
-            dataContent.Add("pos_sn", mer.KqSnNo); //机具sn
-            dataContent.Add("mer_no", mer.KqMerNo); //商户号
-            dataContent.Add("id_card", mer.MerIdcardNo); //商户身份证
-            dataContent.Add("mer_name", mer.MerchantName); //商户姓名
-            dataContent.Add("mer_mobile", mer.MerchantMobile); //商户手机号
-            dataContent.Add("request_id", mer.CreateDate.Value.ToString("yyyyMMddHHmmssfff") + function.get_Random(8)); //流水号
-            dataContent.Add("bind_time", mer.CreateDate); //绑定时间
-            dataContent.Add("brand", mer.BrandId); //品牌
-            Push("bind", dataContent);
+            try
+            {
+                Dictionary<string, object> dataContent = new Dictionary<string, object>();
+                dataContent.Add("pos_sn", mer.KqSnNo); //机具sn
+                dataContent.Add("mer_no", mer.KqMerNo); //商户号
+                dataContent.Add("id_card", mer.MerIdcardNo); //商户身份证
+                dataContent.Add("mer_name", mer.MerchantName); //商户姓名
+                dataContent.Add("mer_mobile", mer.MerchantMobile); //商户手机号
+                dataContent.Add("request_id", mer.CreateDate.Value.ToString("yyyyMMddHHmmssfff") + function.get_Random(8)); //流水号
+                dataContent.Add("bind_time", mer.CreateDate); //绑定时间
+                dataContent.Add("brand", mer.BrandId); //品牌
+                Push("bind", dataContent);
+            }
+            catch (Exception ex)
+            {
+                function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString() + "\n\n", "推送绑定数据异常");
+            }
         }
 
         //解绑数据
         public static void UnBind(PosMerchantInfo mer)
         {
-            Dictionary<string, object> dataContent = new Dictionary<string, object>();
-            dataContent.Add("pos_sn", mer.KqSnNo); //机具sn
-            dataContent.Add("mer_no", mer.KqMerNo); //商户号
-            dataContent.Add("request_id", DateTime.Now.ToString("yyyyMMddHHmmssfff") + function.get_Random(8)); //流水号
-            dataContent.Add("un_bind_time", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); //绑定时间
-            dataContent.Add("brand", mer.BrandId); //品牌
-            Push("un_bind", dataContent);
+            try
+            {
+                Dictionary<string, object> dataContent = new Dictionary<string, object>();
+                dataContent.Add("pos_sn", mer.KqSnNo); //机具sn
+                dataContent.Add("mer_no", mer.KqMerNo); //商户号
+                dataContent.Add("request_id", DateTime.Now.ToString("yyyyMMddHHmmssfff") + function.get_Random(8)); //流水号
+                dataContent.Add("un_bind_time", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); //绑定时间
+                dataContent.Add("brand", mer.BrandId); //品牌
+                Push("un_bind", dataContent);
+            }
+            catch (Exception ex)
+            {
+                function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString() + "\n\n", "推送解绑数据异常");
+            }
         }
 
         //换绑数据
         public static void ChangeBind(PosMerchantInfo mer, PosMachinesTwo source, PosMachinesTwo pos)
         {
-            Dictionary<string, object> dataContent = new Dictionary<string, object>();
-            dataContent.Add("request_id", DateTime.Now.ToString("yyyyMMddHHmmssfff") + function.get_Random(8)); //流水号
-            dataContent.Add("mer_no", mer.KqMerNo); //商户号
-            dataContent.Add("source_pos_sn", source.PosSn); //来源机具sn
-            dataContent.Add("source_brand", source.BrandId); //来源品牌
-            dataContent.Add("to_pos_sn", pos.PosSn); //兑换机具sn
-            dataContent.Add("to_brand", pos.BrandId); //兑换品牌
-            dataContent.Add("change_bind_time", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); //换绑时间
-            Push("change_bind", dataContent);
+            try
+            {
+                Dictionary<string, object> dataContent = new Dictionary<string, object>();
+                dataContent.Add("request_id", DateTime.Now.ToString("yyyyMMddHHmmssfff") + function.get_Random(8)); //流水号
+                dataContent.Add("mer_no", mer.KqMerNo); //商户号
+                dataContent.Add("source_pos_sn", source.PosSn); //来源机具sn
+                dataContent.Add("source_brand", source.BrandId); //来源品牌
+                dataContent.Add("to_pos_sn", pos.PosSn); //兑换机具sn
+                dataContent.Add("to_brand", pos.BrandId); //兑换品牌
+                dataContent.Add("change_bind_time", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); //换绑时间
+                Push("change_bind", dataContent);
+            }
+            catch (Exception ex)
+            {
+                function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString() + "\n\n", "推送换绑数据异常");
+            }
         }
 
         //押金数据
         public static void Deposit(PosMerchantInfo mer, decimal amt)
         {
-            Dictionary<string, object> dataContent = new Dictionary<string, object>();
-            dataContent.Add("pos_sn", mer.KqSnNo); //机具sn
-            dataContent.Add("mer_no", mer.KqMerNo); //商户号
-            dataContent.Add("request_id", DateTime.Now.ToString("yyyyMMddHHmmssfff") + function.get_Random(8)); //流水号
-            dataContent.Add("deposit_amount", amt); //押金金额
-            dataContent.Add("trade_time", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); //交易时间
-            dataContent.Add("brand", mer.BrandId); //品牌
-            Push("deposit", dataContent);
+            try
+            {
+                Dictionary<string, object> dataContent = new Dictionary<string, object>();
+                dataContent.Add("pos_sn", mer.KqSnNo); //机具sn
+                dataContent.Add("mer_no", mer.KqMerNo); //商户号
+                dataContent.Add("request_id", DateTime.Now.ToString("yyyyMMddHHmmssfff") + function.get_Random(8)); //流水号
+                dataContent.Add("deposit_amount", amt); //押金金额
+                dataContent.Add("trade_time", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); //交易时间
+                dataContent.Add("brand", mer.BrandId); //品牌
+                Push("deposit", dataContent);
+            }
+            catch (Exception ex)
+            {
+                function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString() + "\n\n", "推送押金数据异常");
+            }
         }
 
         //交易数据
         public static void Trade(TradeRecord trade)
         {
-            Dictionary<string, object> dataContent = new Dictionary<string, object>();
-            dataContent.Add("pos_sn", trade.SnNo); //机具sn
-            dataContent.Add("mer_no", trade.MerNo); //商户号
-            dataContent.Add("request_id", trade.TradeSerialNo); //流水号
-            dataContent.Add("trade_amount", trade.TradeAmount); //交易金额
-            dataContent.Add("trade_time", trade.CreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss")); //交易时间
-            dataContent.Add("brand", trade.BrandId); //品牌
-            dataContent.Add("card_type", trade.BankCardType); //卡类型
-            dataContent.Add("qr_pay_flag", trade.QrPayFlag); //云闪付标记
-            Push("trade", dataContent);
+            try
+            {
+                Dictionary<string, object> dataContent = new Dictionary<string, object>();
+                dataContent.Add("pos_sn", trade.SnNo); //机具sn
+                dataContent.Add("mer_no", trade.MerNo); //商户号
+                dataContent.Add("request_id", trade.TradeSerialNo); //流水号
+                dataContent.Add("trade_amount", trade.TradeAmount); //交易金额
+                dataContent.Add("trade_time", trade.CreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss")); //交易时间
+                dataContent.Add("brand", trade.BrandId); //品牌
+                dataContent.Add("card_type", trade.BankCardType); //卡类型
+                dataContent.Add("qr_pay_flag", trade.QrPayFlag); //云闪付标记
+                Push("trade", dataContent);
+            }
+            catch (Exception ex)
+            {
+                function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString() + "\n\n", "推送交易数据异常");
+            }
         }
 
         public static void Push(string dataType, Dictionary<string, object> dataContent)

+ 3 - 0
AppStart/Helper/SycnSpServer/SycnSpActiveService.cs

@@ -68,6 +68,9 @@ namespace MySystem
                                 {
                                     StatService.Instance.PreActPrize(db, pos, merchant, act.SeoTitle);
                                 }
+
+                                //推送数据给java
+                                PosPushDataHelper.Deposit(merchant, Deposit);
                             }
 
                             if(pos.BrandId == 7 || pos.BrandId == 12 || pos.BrandId == 13 || pos.BrandId == 15 || pos.BrandId == 16 || pos.BrandId == 22)

+ 3 - 0
AppStart/Helper/SycnSpServer/SycnSpChangeBindService.cs

@@ -134,6 +134,9 @@ namespace MySystem
                             add.ChangeSnExpand = ChangeSnExpand; //机具SN
                             db.SaveChanges();
 
+                            //推送数据给java
+                            PosPushDataHelper.ChangeBind(merchant, oldpos, newpos);
+
                             ChangeBindRecord edit = spdb.ChangeBindRecord.FirstOrDefault(m => m.Id == Bind.Id);
                             if (edit != null)
                             {

+ 3 - 0
AppStart/Helper/SycnSpServer/SycnSpMerchantRecordService.cs

@@ -48,6 +48,9 @@ namespace MySystem
                                 merinfo.MgrNo = Mer.AgentNo; //代理商号
                                 merinfo.MgrName = Mer.Field2; //终端类型
                                 db.SaveChanges();
+
+                                //推送数据给java
+                                PosPushDataHelper.Bind(merinfo);
                             }
                             int IsFirst = 1;
                             if(!string.IsNullOrEmpty(Mer.LegalIdCard))

+ 6 - 0
AppStart/Helper/SycnSpServer/SycnSpMerchantService.cs

@@ -239,6 +239,12 @@ namespace MySystem
                                     WifiSendPrize(db, pos, add);
                                 }
 
+                                //推送数据给java
+                                if(pos.BrandId != 12 && pos.BrandId != 13)
+                                {
+                                    PosPushDataHelper.Bind(add);
+                                }
+
                                 Merchants edit = spdb.Merchants.FirstOrDefault(m => m.Id == Mer.Id);
                                 if (edit != null)
                                 {

+ 11 - 0
AppStart/Helper/SycnSpServer/SycnSpTradeService.cs

@@ -562,6 +562,9 @@ namespace MySystem
                                             //统计商户交易额
                                             string TradeDate = trade.CreateDate == null ? DateTime.Now.ToString("yyyyMMdd") : trade.CreateDate.Value.ToString("yyyyMMdd");
                                             RedisDbconn.Instance.AddList("StatMerTradeAmountQueue", "{\"TradeDate\":\"" + TradeDate + "\",\"TradeAmount\":\"" + TradeAmount + "\",\"MerchantId\":\"" + pos.BindMerchantId + "\",\"BrandId\":\"" + BrandId + "\"}");
+
+                                            //推送数据给java
+                                            PosPushDataHelper.Trade(add);
                                         }
                                         db.SpOrderNos.Add(new PxcModels.SpOrderNos()
                                         {
@@ -613,6 +616,11 @@ namespace MySystem
                             PxcModels.PosMerchantInfo merchant = db.PosMerchantInfo.FirstOrDefault(m => m.Id == pos.BindMerchantId) ?? new PxcModels.PosMerchantInfo();
                             function.WriteLog("PosMerchantInfo:" + merchant.KqMerNo, "服务费奖励发放日志");
                             StatService.Instance.PreActPrize(db, pos, merchant, pos.SeoKeyword);
+
+                            //推送数据给java
+                            decimal Deposit = decimal.Parse(function.CheckNum(pos.SeoKeyword));
+                            if(Deposit > 1000) Deposit = Deposit / 100;
+                            PosPushDataHelper.Deposit(merchant, Deposit);
                         }
                     }
                     spdb.Dispose();
@@ -725,6 +733,9 @@ namespace MySystem
                                             //统计商户交易额
                                             string TradeDate = trade.CreateDate == null ? DateTime.Now.ToString("yyyyMMdd") : trade.CreateDate.Value.ToString("yyyyMMdd");
                                             RedisDbconn.Instance.AddList("StatMerTradeAmountQueue", "{\"TradeDate\":\"" + TradeDate + "\",\"TradeAmount\":\"" + TradeAmount + "\",\"MerchantId\":\"" + pos.BindMerchantId + "\",\"BrandId\":\"" + BrandId + "\"}");
+
+                                            //推送数据给java
+                                            PosPushDataHelper.Trade(add);
                                         }
                                         db.SpOrderNos.Add(new PxcModels.SpOrderNos()
                                         {

+ 3 - 0
AppStart/Helper/SycnSpServer/SycnSpTradeZkbService.cs

@@ -92,6 +92,9 @@ namespace MySystem
                                             TradeDate = pos.BindingTime,
                                         }).Entity;
                                         db.SaveChanges();
+
+                                        //推送数据给java
+                                        PosPushDataHelper.Trade(add);
                                     }
                                     db.SpOrderNos.Add(new PxcModels.SpOrderNos()
                                     {

+ 3 - 0
AppStart/Helper/SycnSpServer/SycnSpUnBindService.cs

@@ -57,6 +57,9 @@ namespace MySystem
                                     PxcModels.PosMerchantInfo merchant = db.PosMerchantInfo.FirstOrDefault(m => m.Id == EditPos.BindMerchantId);
                                     if(merchant != null)
                                     {
+                                        //推送数据给java
+                                        PosPushDataHelper.UnBind(merchant);
+
                                         pos.BindMerchantId = 0;
                                         pos.BindingState = 0;
                                         pos.BindingTime = null;