Przeglądaj źródła

每天凌晨重置昨天交易额

lcl 1 rok temu
rodzic
commit
6af971f8d5

+ 15 - 4
AppStart/Helper/StatResetService.cs

@@ -86,11 +86,8 @@ namespace MySystem
                     var date = start.ToString("yyyy-MM-dd");
                     var smonth = start.ToString("yyyy-MM");
                     var emonth = start.AddMonths(1).ToString("yyyy-MM");
-                    CustomerSqlConn.op("delete from QrCodePlateStatServer.MerchantTradeSummary" + date.Replace("-", "") + " where  MerchantId=" + merchantId + " and TradeDate='" + date.Replace("-", "") + "'", AppConfig.Base.StatSqlConn);
-                    CustomerSqlConn.op("INSERT INTO QrCodePlateStatServer.MerchantTradeSummary" + date.Replace("-", "") + " (MerchantId,TradeDate,TradeMonth,TradeAmount,InFactAmount,OderCount,WeChatInfactAmount,AliPayInFactAmount,ActAmount,NonActAmount) select MerchantId,DATE_FORMAT(CreateDate,'%Y%m%d') Date ,DATE_FORMAT(CreateDate,'%Y%m') Month,sum(PayMoney) TradeAmount,sum(MerchantActualAmount) InFactAmount,count(Id) Count,sum(if(PayMode=2,MerchantActualAmount,0)) WeChatInfactAmount,sum(if(PayMode=1,MerchantActualAmount,0)) AliPayInFactAmount,sum(if(IsAct=1,PayMoney,0)) ActAmount,sum(if(IsAct=0,PayMoney,0)) NonActAmount from ConsumerOrders where Status>0 AND MerchantId=" + merchantId + " AND CreateDate>='" + date + " 00:00:00' and CreateDate<='" + date + " 23:59:59' group by MerchantId,DATE_FORMAT(CreateDate,'%Y%m%d'),DATE_FORMAT(CreateDate,'%Y%m')", AppConfig.Base.SqlConn);
 
-                    CustomerSqlConn.op("delete from MerchantAmountSummay where  MerchantId=" + merchantId + " and TradeDate='" + date.Replace("-", "") + "'", AppConfig.Base.SqlConn);
-                    CustomerSqlConn.op("INSERT INTO MerchantAmountSummay (PayMode,TotalActual,TradeAmount,TradeDate,TradeMonth,MerchantId,TradeCount,IsAct) select PayMode,sum(MerchantActualAmount) TotalActual,sum(PayMoney) TradeAmount,DATE_FORMAT(CreateDate,'%Y%m%d') TradeDate,DATE_FORMAT(CreateDate,'%Y%m') TradeMonth,MerchantId,count(Id) TradeCount,IsAct from ConsumerOrders where Status>0 AND MerchantId=" + merchantId + " AND CreateDate>='" + date + " 00:00:00' and CreateDate<='" + date + " 23:59:59' group by MerchantId,PayMode,IsAct,DATE_FORMAT(CreateDate,'%Y%m%d'),DATE_FORMAT(CreateDate,'%Y%m')", AppConfig.Base.SqlConn);
+                    ResetMerchantTrade(date, merchantId);
 
                     CustomerSqlConn.op("delete from UserAmountSummary where  UserId in(" + ParentNav + ") and TradeDate='" + date.Replace("-", "") + "'", AppConfig.Base.SqlConn);
                     CustomerSqlConn.op("INSERT INTO UserAmountSummary (SeoTitle,PayMode,TotalAmount,TradeMonth,TradeDate,UserId,TradeCount,IsAct) select 'self' SeoTitle,PayMode,SUM(PayMoney) TotalAmount,DATE_FORMAT(CreateDate,'%Y%m') TradeMonth,DATE_FORMAT(CreateDate,'%Y%m%d') TradeDate, " + merchant.UserId + " UserId,count(Id) TradeCount,IsAct from ConsumerOrders where Status>0 AND MerchantId=" + merchantId + " AND CreateDate>='" + date + " 00:00:00' and CreateDate<='" + date + " 23:59:59' group by PayMode,IsAct,DATE_FORMAT(CreateDate,'%Y%m%d'),DATE_FORMAT(CreateDate,'%Y%m')", AppConfig.Base.SqlConn);
@@ -117,6 +114,20 @@ namespace MySystem
             function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") + "\n\n", "重置商户交易额日志");
         }
 
+        public void ResetMerchantTrade(string date, string merchantId = "0")
+        {
+            string MerchantCondition = "";
+            if(merchantId != "0")
+            {
+                MerchantCondition = "MerchantId=" + merchantId + " and ";
+            }
+            CustomerSqlConn.op("delete from QrCodePlateStatServer.MerchantTradeSummary" + date.Replace("-", "") + " where  " + MerchantCondition + "TradeDate='" + date.Replace("-", "") + "'", AppConfig.Base.StatSqlConn);
+            CustomerSqlConn.op("INSERT INTO QrCodePlateStatServer.MerchantTradeSummary" + date.Replace("-", "") + " (MerchantId,TradeDate,TradeMonth,TradeAmount,InFactAmount,OderCount,WeChatInfactAmount,AliPayInFactAmount,ActAmount,NonActAmount) select MerchantId,DATE_FORMAT(CreateDate,'%Y%m%d') Date ,DATE_FORMAT(CreateDate,'%Y%m') Month,sum(PayMoney) TradeAmount,sum(MerchantActualAmount) InFactAmount,count(Id) Count,sum(if(PayMode=2,MerchantActualAmount,0)) WeChatInfactAmount,sum(if(PayMode=1,MerchantActualAmount,0)) AliPayInFactAmount,sum(if(IsAct=1,PayMoney,0)) ActAmount,sum(if(IsAct=0,PayMoney,0)) NonActAmount from ConsumerOrders where Status>0 AND " + MerchantCondition + "CreateDate>='" + date + " 00:00:00' and CreateDate<='" + date + " 23:59:59' group by MerchantId,DATE_FORMAT(CreateDate,'%Y%m%d'),DATE_FORMAT(CreateDate,'%Y%m')", AppConfig.Base.SqlConn);
+
+            CustomerSqlConn.op("delete from MerchantAmountSummay where " + MerchantCondition + "TradeDate='" + date.Replace("-", "") + "'", AppConfig.Base.SqlConn);
+            CustomerSqlConn.op("INSERT INTO MerchantAmountSummay (PayMode,TotalActual,TradeAmount,TradeDate,TradeMonth,MerchantId,TradeCount,IsAct) select PayMode,sum(MerchantActualAmount) TotalActual,sum(PayMoney) TradeAmount,DATE_FORMAT(CreateDate,'%Y%m%d') TradeDate,DATE_FORMAT(CreateDate,'%Y%m') TradeMonth,MerchantId,count(Id) TradeCount,IsAct from ConsumerOrders where Status>0 AND " + MerchantCondition + "CreateDate>='" + date + " 00:00:00' and CreateDate<='" + date + " 23:59:59' group by MerchantId,PayMode,IsAct,DATE_FORMAT(CreateDate,'%Y%m%d'),DATE_FORMAT(CreateDate,'%Y%m')", AppConfig.Base.SqlConn);
+        }
+
         public void StartResetSnDo()
         {
             while (true)

+ 15 - 4
AppStart/Helper/StatResetService2.cs

@@ -87,11 +87,8 @@ namespace MySystem
                     var date = start.ToString("yyyy-MM-dd");
                     var smonth = start.ToString("yyyy-MM");
                     var emonth = start.AddMonths(1).ToString("yyyy-MM");
-                    CustomerSqlConn.op("delete from QrCodePlateStatServer2.MerchantTradeSummary" + date.Replace("-", "") + " where  MerchantId=" + merchantId + " and TradeDate='" + date.Replace("-", "") + "'", AppConfig.Base.StatSqlConn2);
-                    CustomerSqlConn.op("INSERT INTO QrCodePlateStatServer2.MerchantTradeSummary" + date.Replace("-", "") + " (MerchantId,TradeDate,TradeMonth,TradeAmount,InFactAmount,OderCount,WeChatInfactAmount,AliPayInFactAmount,ActAmount,NonActAmount) select MerchantId,DATE_FORMAT(CreateDate,'%Y%m%d') Date ,DATE_FORMAT(CreateDate,'%Y%m') Month,sum(PayMoney) TradeAmount,sum(MerchantActualAmount) InFactAmount,count(Id) Count,sum(if(PayMode=2,MerchantActualAmount,0)) WeChatInfactAmount,sum(if(PayMode=1,MerchantActualAmount,0)) AliPayInFactAmount,sum(if(IsAct=1,PayMoney,0)) ActAmount,sum(if(IsAct=0,PayMoney,0)) NonActAmount from ConsumerOrders where Status>0 AND MerchantId=" + merchantId + " AND CreateDate>='" + date + " 00:00:00' and CreateDate<='" + date + " 23:59:59' group by MerchantId,DATE_FORMAT(CreateDate,'%Y%m%d'),DATE_FORMAT(CreateDate,'%Y%m')", AppConfig.Base.SqlConn2);
 
-                    CustomerSqlConn.op("delete from MerchantAmountSummay where  MerchantId=" + merchantId + " and TradeDate='" + date.Replace("-", "") + "'", AppConfig.Base.SqlConn2);
-                    CustomerSqlConn.op("INSERT INTO MerchantAmountSummay (PayMode,TotalActual,TradeAmount,TradeDate,TradeMonth,MerchantId,TradeCount,IsAct) select PayMode,sum(MerchantActualAmount) TotalActual,sum(PayMoney) TradeAmount,DATE_FORMAT(CreateDate,'%Y%m%d') TradeDate,DATE_FORMAT(CreateDate,'%Y%m') TradeMonth,MerchantId,count(Id) TradeCount,IsAct from ConsumerOrders where Status>0 AND MerchantId=" + merchantId + " AND CreateDate>='" + date + " 00:00:00' and CreateDate<='" + date + " 23:59:59' group by MerchantId,PayMode,IsAct,DATE_FORMAT(CreateDate,'%Y%m%d'),DATE_FORMAT(CreateDate,'%Y%m')", AppConfig.Base.SqlConn2);
+                    ResetMerchantTrade(date, merchantId);
 
                     CustomerSqlConn.op("delete from UserAmountSummary where  UserId in(" + ParentNav + ") and TradeDate='" + date.Replace("-", "") + "'", AppConfig.Base.SqlConn2);
                     CustomerSqlConn.op("INSERT INTO UserAmountSummary (SeoTitle,PayMode,TotalAmount,TradeMonth,TradeDate,UserId,TradeCount,IsAct) select 'self' SeoTitle,PayMode,SUM(PayMoney) TotalAmount,DATE_FORMAT(CreateDate,'%Y%m') TradeMonth,DATE_FORMAT(CreateDate,'%Y%m%d') TradeDate, " + merchant.UserId + " UserId,count(Id) TradeCount,IsAct from ConsumerOrders where Status>0 AND MerchantId=" + merchantId + " AND CreateDate>='" + date + " 00:00:00' and CreateDate<='" + date + " 23:59:59' group by PayMode,IsAct,DATE_FORMAT(CreateDate,'%Y%m%d'),DATE_FORMAT(CreateDate,'%Y%m')", AppConfig.Base.SqlConn2);
@@ -117,6 +114,20 @@ namespace MySystem
             }
         }
 
+        public void ResetMerchantTrade(string date, string merchantId = "0")
+        {
+            string MerchantCondition = "";
+            if(merchantId != "0")
+            {
+                MerchantCondition = "MerchantId=" + merchantId + " and ";
+            }
+            CustomerSqlConn.op("delete from QrCodePlateStatServer2.MerchantTradeSummary" + date.Replace("-", "") + " where  " + MerchantCondition + "TradeDate='" + date.Replace("-", "") + "'", AppConfig.Base.StatSqlConn2);
+            CustomerSqlConn.op("INSERT INTO QrCodePlateStatServer2.MerchantTradeSummary" + date.Replace("-", "") + " (MerchantId,TradeDate,TradeMonth,TradeAmount,InFactAmount,OderCount,WeChatInfactAmount,AliPayInFactAmount,ActAmount,NonActAmount) select MerchantId,DATE_FORMAT(CreateDate,'%Y%m%d') Date ,DATE_FORMAT(CreateDate,'%Y%m') Month,sum(PayMoney) TradeAmount,sum(MerchantActualAmount) InFactAmount,count(Id) Count,sum(if(PayMode=2,MerchantActualAmount,0)) WeChatInfactAmount,sum(if(PayMode=1,MerchantActualAmount,0)) AliPayInFactAmount,sum(if(IsAct=1,PayMoney,0)) ActAmount,sum(if(IsAct=0,PayMoney,0)) NonActAmount from ConsumerOrders where Status>0 AND " + MerchantCondition + "CreateDate>='" + date + " 00:00:00' and CreateDate<='" + date + " 23:59:59' group by MerchantId,DATE_FORMAT(CreateDate,'%Y%m%d'),DATE_FORMAT(CreateDate,'%Y%m')", AppConfig.Base.SqlConn2);
+
+            CustomerSqlConn.op("delete from MerchantAmountSummay where " + MerchantCondition + "TradeDate='" + date.Replace("-", "") + "'", AppConfig.Base.SqlConn2);
+            CustomerSqlConn.op("INSERT INTO MerchantAmountSummay (PayMode,TotalActual,TradeAmount,TradeDate,TradeMonth,MerchantId,TradeCount,IsAct) select PayMode,sum(MerchantActualAmount) TotalActual,sum(PayMoney) TradeAmount,DATE_FORMAT(CreateDate,'%Y%m%d') TradeDate,DATE_FORMAT(CreateDate,'%Y%m') TradeMonth,MerchantId,count(Id) TradeCount,IsAct from ConsumerOrders where Status>0 AND " + MerchantCondition + "CreateDate>='" + date + " 00:00:00' and CreateDate<='" + date + " 23:59:59' group by MerchantId,PayMode,IsAct,DATE_FORMAT(CreateDate,'%Y%m%d'),DATE_FORMAT(CreateDate,'%Y%m')", AppConfig.Base.SqlConn2);
+        }
+
         public void StartResetSnDo()
         {
             while (true)

+ 3 - 0
AppStart/Helper/StatService.cs

@@ -39,6 +39,9 @@ namespace MySystem
                     {
                         RedisDbconn.Instance.Set("ResetUserTradeFlag:" + yesterday, "ok");
                         RedisDbconn.Instance.SetExpire("ResetUserTradeFlag:" + yesterday, 3600 * 5);
+
+                        StatResetService.Instance.ResetMerchantTrade(yesterday);
+                        StatResetService2.Instance.ResetMerchantTrade(yesterday);
                         RedisDbconn.Instance.AddList("ResetUserTradeQueue", yesterday);
                         RedisDbconn.Instance.AddList("ResetUserTrade2Queue", yesterday);
                     }