|
|
@@ -5,7 +5,7 @@ using LitJson;
|
|
|
using System.Linq;
|
|
|
using System.Data;
|
|
|
using System.Threading;
|
|
|
-using MySystem.PxcModels;
|
|
|
+using MySystem.KxsReadModels;
|
|
|
|
|
|
namespace MySystem
|
|
|
{
|
|
|
@@ -321,5 +321,439 @@ namespace MySystem
|
|
|
}
|
|
|
return sql;
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ public void StartCheck()
|
|
|
+ {
|
|
|
+ Thread th = new Thread(StartCheckDo);
|
|
|
+ th.IsBackground = true;
|
|
|
+ th.Start();
|
|
|
+ }
|
|
|
+ public void StartCheckDo()
|
|
|
+ {
|
|
|
+ while (true)
|
|
|
+ {
|
|
|
+ string content = RedisDbconn.Instance.RPop<string>("StatTradeCheck2Queue");
|
|
|
+ if(!string.IsNullOrEmpty(content))
|
|
|
+ {
|
|
|
+ StatTradeAmountCheck2Do(content);
|
|
|
+ StatTradeAmountCheck2BeforeDo(content);
|
|
|
+ StatTradeAmountCheck2AfterDo(content);
|
|
|
+
|
|
|
+ StatTradeAmountCheckDo(content);
|
|
|
+ StatTradeAmountCheckBeforeDo(content);
|
|
|
+ StatTradeAmountCheckAfterDo(content);
|
|
|
+ Thread.Sleep(100);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ Thread.Sleep(10000);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public void StatTradeAmountCheckDo(string date)
|
|
|
+ {
|
|
|
+ function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), "统计交易额日志");
|
|
|
+ try
|
|
|
+ {
|
|
|
+ date = date.Replace("-", "");
|
|
|
+ WebCMSEntities db = new WebCMSEntities();
|
|
|
+ List<TradeDaySummary> list = db.TradeDaySummary.Where(m => m.TradeDate == date).ToList();
|
|
|
+ List<int> uids = list.Select(m => m.UserId).Distinct().ToList();
|
|
|
+ var users = db.Users.Select(m => new { m.Id, m.ParentNav }).Where(m => uids.Contains(m.Id)).ToList();
|
|
|
+ db.Dispose();
|
|
|
+ foreach(TradeDaySummary sub in list.Where(m => m.SeoTitle == "team").ToList())
|
|
|
+ {
|
|
|
+ string puidstr = "," + sub.UserId + ",";
|
|
|
+ List<int> subuids = users.Where(m => m.Id == sub.UserId || m.ParentNav.Contains(puidstr)).ToList().Select(m => m.Id).ToList();
|
|
|
+ bool op = list.Any(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount);
|
|
|
+ if(op)
|
|
|
+ {
|
|
|
+ decimal ProfitDirectTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDirectTradeAmt);
|
|
|
+ decimal HelpDirectTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.HelpDirectTradeAmt);
|
|
|
+ decimal NotHelpDirectTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.NotHelpDirectTradeAmt);
|
|
|
+
|
|
|
+ decimal ProfitDirectDebitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDirectDebitTradeAmt);
|
|
|
+ decimal ProfitDirectDebitCapTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDirectDebitCapTradeAmt);
|
|
|
+ decimal ProfitDirectDebitCapNum = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDirectDebitCapNum);
|
|
|
+ decimal HelpDirectDebitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.HelpDirectDebitTradeAmt);
|
|
|
+ decimal HelpDirectDebitCapTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.HelpDirectDebitCapTradeAmt);
|
|
|
+ decimal HelpDirectDebitCapNum = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.HelpDirectDebitCapNum);
|
|
|
+ decimal NotHelpDirectDebitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.NotHelpDirectDebitTradeAmt);
|
|
|
+ decimal NotHelpDirectDebitCapTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.NotHelpDirectDebitCapTradeAmt);
|
|
|
+ decimal NotHelpDirectDebitCapNum = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.NotHelpDirectDebitCapNum);
|
|
|
+
|
|
|
+ string setField = "";
|
|
|
+ if(sub.ProfitNonDirectTradeAmt != ProfitDirectTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "ProfitNonDirectTradeAmt=" + ProfitDirectTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.HelpNonDirectTradeAmt != HelpDirectTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "HelpNonDirectTradeAmt=" + HelpDirectTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.NotHelpNonDirectTradeAmt != NotHelpDirectTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "NotHelpNonDirectTradeAmt=" + NotHelpDirectTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.ProfitNonDirectDebitTradeAmt != ProfitDirectDebitTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "ProfitNonDirectDebitTradeAmt=" + ProfitDirectDebitTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.ProfitDirectDebitCapTradeAmt != ProfitDirectDebitCapTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "ProfitDirectDebitCapTradeAmt=" + ProfitDirectDebitCapTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.ProfitDirectDebitCapNum != ProfitDirectDebitCapNum)
|
|
|
+ {
|
|
|
+ setField += "ProfitDirectDebitCapNum=" + ProfitDirectDebitCapNum + ",";
|
|
|
+ }
|
|
|
+ if(sub.HelpNonDirectDebitTradeAmt != HelpDirectDebitTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "HelpNonDirectDebitTradeAmt=" + HelpDirectDebitTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.HelpDirectDebitCapTradeAmt != HelpDirectDebitCapTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "HelpDirectDebitCapTradeAmt=" + HelpDirectDebitCapTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.HelpDirectDebitCapNum != HelpDirectDebitCapNum)
|
|
|
+ {
|
|
|
+ setField += "HelpDirectDebitCapNum=" + HelpDirectDebitCapNum + ",";
|
|
|
+ }
|
|
|
+ if(sub.NotHelpNonDirectDebitTradeAmt != NotHelpDirectDebitTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "NotHelpNonDirectDebitTradeAmt=" + NotHelpDirectDebitTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.NotHelpDirectDebitCapTradeAmt != NotHelpDirectDebitCapTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "NotHelpDirectDebitCapTradeAmt=" + NotHelpDirectDebitCapTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.NotHelpDirectDebitCapNum != NotHelpDirectDebitCapNum)
|
|
|
+ {
|
|
|
+ setField += "NotHelpDirectDebitCapNum=" + NotHelpDirectDebitCapNum + ",";
|
|
|
+ }
|
|
|
+ if(!string.IsNullOrEmpty(setField))
|
|
|
+ {
|
|
|
+ function.WriteLog("UserId:" + sub.UserId + "; TradeDate:" + sub.TradeDate + "; BrandId:" + sub.BrandId + ";", "交易不一致的创客");
|
|
|
+ function.WriteLog("update TradeDaySummary set " + setField.TrimEnd(',') + " where Id=" + sub.Id, "要执行的sql脚本");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ catch (Exception ex)
|
|
|
+ {
|
|
|
+ function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "统计交易额异常");
|
|
|
+ }
|
|
|
+ function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), "统计交易额日志");
|
|
|
+ }
|
|
|
+ public void StatTradeAmountCheckBeforeDo(string date)
|
|
|
+ {
|
|
|
+ function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), "统计交易额日志");
|
|
|
+ try
|
|
|
+ {
|
|
|
+ date = date.Replace("-", "");
|
|
|
+ WebCMSEntities db = new WebCMSEntities();
|
|
|
+ List<TradeDaySummaryBefore> list = db.TradeDaySummaryBefore.Where(m => m.TradeDate == date).ToList();
|
|
|
+ List<int> uids = list.Select(m => m.UserId).Distinct().ToList();
|
|
|
+ var users = db.Users.Select(m => new { m.Id, m.ParentNav }).Where(m => uids.Contains(m.Id)).ToList();
|
|
|
+ db.Dispose();
|
|
|
+ foreach(TradeDaySummaryBefore sub in list.Where(m => m.SeoTitle == "team").ToList())
|
|
|
+ {
|
|
|
+ string puidstr = "," + sub.UserId + ",";
|
|
|
+ List<int> subuids = users.Where(m => m.Id == sub.UserId || m.ParentNav.Contains(puidstr)).ToList().Select(m => m.Id).ToList();
|
|
|
+ bool op = list.Any(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount);
|
|
|
+ if(op)
|
|
|
+ {
|
|
|
+ decimal ProfitDirectTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDirectTradeAmt);
|
|
|
+ decimal HelpDirectTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.HelpDirectTradeAmt);
|
|
|
+ decimal NotHelpDirectTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.NotHelpDirectTradeAmt);
|
|
|
+
|
|
|
+ decimal ProfitDirectDebitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDirectDebitTradeAmt);
|
|
|
+ decimal ProfitDirectDebitCapTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDirectDebitCapTradeAmt);
|
|
|
+ decimal ProfitDirectDebitCapNum = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDirectDebitCapNum);
|
|
|
+ decimal HelpDirectDebitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.HelpDirectDebitTradeAmt);
|
|
|
+ decimal HelpDirectDebitCapTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.HelpDirectDebitCapTradeAmt);
|
|
|
+ decimal HelpDirectDebitCapNum = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.HelpDirectDebitCapNum);
|
|
|
+ decimal NotHelpDirectDebitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.NotHelpDirectDebitTradeAmt);
|
|
|
+ decimal NotHelpDirectDebitCapTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.NotHelpDirectDebitCapTradeAmt);
|
|
|
+ decimal NotHelpDirectDebitCapNum = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.NotHelpDirectDebitCapNum);
|
|
|
+
|
|
|
+ string setField = "";
|
|
|
+ if(sub.ProfitNonDirectTradeAmt != ProfitDirectTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "ProfitNonDirectTradeAmt=" + ProfitDirectTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.HelpNonDirectTradeAmt != HelpDirectTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "HelpNonDirectTradeAmt=" + HelpDirectTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.NotHelpNonDirectTradeAmt != NotHelpDirectTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "NotHelpNonDirectTradeAmt=" + NotHelpDirectTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.ProfitNonDirectDebitTradeAmt != ProfitDirectDebitTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "ProfitNonDirectDebitTradeAmt=" + ProfitDirectDebitTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.ProfitDirectDebitCapTradeAmt != ProfitDirectDebitCapTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "ProfitDirectDebitCapTradeAmt=" + ProfitDirectDebitCapTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.ProfitDirectDebitCapNum != ProfitDirectDebitCapNum)
|
|
|
+ {
|
|
|
+ setField += "ProfitDirectDebitCapNum=" + ProfitDirectDebitCapNum + ",";
|
|
|
+ }
|
|
|
+ if(sub.HelpNonDirectDebitTradeAmt != HelpDirectDebitTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "HelpNonDirectDebitTradeAmt=" + HelpDirectDebitTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.HelpDirectDebitCapTradeAmt != HelpDirectDebitCapTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "HelpDirectDebitCapTradeAmt=" + HelpDirectDebitCapTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.HelpDirectDebitCapNum != HelpDirectDebitCapNum)
|
|
|
+ {
|
|
|
+ setField += "HelpDirectDebitCapNum=" + HelpDirectDebitCapNum + ",";
|
|
|
+ }
|
|
|
+ if(sub.NotHelpNonDirectDebitTradeAmt != NotHelpDirectDebitTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "NotHelpNonDirectDebitTradeAmt=" + NotHelpDirectDebitTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.NotHelpDirectDebitCapTradeAmt != NotHelpDirectDebitCapTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "NotHelpDirectDebitCapTradeAmt=" + NotHelpDirectDebitCapTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.NotHelpDirectDebitCapNum != NotHelpDirectDebitCapNum)
|
|
|
+ {
|
|
|
+ setField += "NotHelpDirectDebitCapNum=" + NotHelpDirectDebitCapNum + ",";
|
|
|
+ }
|
|
|
+ if(!string.IsNullOrEmpty(setField))
|
|
|
+ {
|
|
|
+ function.WriteLog("UserId:" + sub.UserId + "; TradeDate:" + sub.TradeDate + "; BrandId:" + sub.BrandId + ";", "交易不一致的创客");
|
|
|
+ function.WriteLog("update TradeDaySummaryBefore set " + setField.TrimEnd(',') + " where Id=" + sub.Id, "要执行的sql脚本");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ catch (Exception ex)
|
|
|
+ {
|
|
|
+ function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "统计交易额异常");
|
|
|
+ }
|
|
|
+ function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), "统计交易额日志");
|
|
|
+ }
|
|
|
+ public void StatTradeAmountCheckAfterDo(string date)
|
|
|
+ {
|
|
|
+ function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), "统计交易额日志");
|
|
|
+ try
|
|
|
+ {
|
|
|
+ date = date.Replace("-", "");
|
|
|
+ WebCMSEntities db = new WebCMSEntities();
|
|
|
+ List<TradeDaySummaryAfter> list = db.TradeDaySummaryAfter.Where(m => m.TradeDate == date).ToList();
|
|
|
+ List<int> uids = list.Select(m => m.UserId).Distinct().ToList();
|
|
|
+ var users = db.Users.Select(m => new { m.Id, m.ParentNav }).Where(m => uids.Contains(m.Id)).ToList();
|
|
|
+ db.Dispose();
|
|
|
+ foreach(TradeDaySummaryAfter sub in list.Where(m => m.SeoTitle == "team").ToList())
|
|
|
+ {
|
|
|
+ string puidstr = "," + sub.UserId + ",";
|
|
|
+ List<int> subuids = users.Where(m => m.Id == sub.UserId || m.ParentNav.Contains(puidstr)).ToList().Select(m => m.Id).ToList();
|
|
|
+ bool op = list.Any(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount);
|
|
|
+ if(op)
|
|
|
+ {
|
|
|
+ decimal ProfitDirectTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDirectTradeAmt);
|
|
|
+ decimal HelpDirectTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.HelpDirectTradeAmt);
|
|
|
+ decimal NotHelpDirectTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.NotHelpDirectTradeAmt);
|
|
|
+
|
|
|
+ decimal ProfitDirectDebitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDirectDebitTradeAmt);
|
|
|
+ decimal ProfitDirectDebitCapTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDirectDebitCapTradeAmt);
|
|
|
+ decimal ProfitDirectDebitCapNum = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDirectDebitCapNum);
|
|
|
+ decimal HelpDirectDebitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.HelpDirectDebitTradeAmt);
|
|
|
+ decimal HelpDirectDebitCapTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.HelpDirectDebitCapTradeAmt);
|
|
|
+ decimal HelpDirectDebitCapNum = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.HelpDirectDebitCapNum);
|
|
|
+ decimal NotHelpDirectDebitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.NotHelpDirectDebitTradeAmt);
|
|
|
+ decimal NotHelpDirectDebitCapTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.NotHelpDirectDebitCapTradeAmt);
|
|
|
+ decimal NotHelpDirectDebitCapNum = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.NotHelpDirectDebitCapNum);
|
|
|
+
|
|
|
+ string setField = "";
|
|
|
+ if(sub.ProfitNonDirectTradeAmt != ProfitDirectTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "ProfitNonDirectTradeAmt=" + ProfitDirectTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.HelpNonDirectTradeAmt != HelpDirectTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "HelpNonDirectTradeAmt=" + HelpDirectTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.NotHelpNonDirectTradeAmt != NotHelpDirectTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "NotHelpNonDirectTradeAmt=" + NotHelpDirectTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.ProfitNonDirectDebitTradeAmt != ProfitDirectDebitTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "ProfitNonDirectDebitTradeAmt=" + ProfitDirectDebitTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.ProfitDirectDebitCapTradeAmt != ProfitDirectDebitCapTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "ProfitDirectDebitCapTradeAmt=" + ProfitDirectDebitCapTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.ProfitDirectDebitCapNum != ProfitDirectDebitCapNum)
|
|
|
+ {
|
|
|
+ setField += "ProfitDirectDebitCapNum=" + ProfitDirectDebitCapNum + ",";
|
|
|
+ }
|
|
|
+ if(sub.HelpNonDirectDebitTradeAmt != HelpDirectDebitTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "HelpNonDirectDebitTradeAmt=" + HelpDirectDebitTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.HelpDirectDebitCapTradeAmt != HelpDirectDebitCapTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "HelpDirectDebitCapTradeAmt=" + HelpDirectDebitCapTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.HelpDirectDebitCapNum != HelpDirectDebitCapNum)
|
|
|
+ {
|
|
|
+ setField += "HelpDirectDebitCapNum=" + HelpDirectDebitCapNum + ",";
|
|
|
+ }
|
|
|
+ if(sub.NotHelpNonDirectDebitTradeAmt != NotHelpDirectDebitTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "NotHelpNonDirectDebitTradeAmt=" + NotHelpDirectDebitTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.NotHelpDirectDebitCapTradeAmt != NotHelpDirectDebitCapTradeAmt)
|
|
|
+ {
|
|
|
+ setField += "NotHelpDirectDebitCapTradeAmt=" + NotHelpDirectDebitCapTradeAmt + ",";
|
|
|
+ }
|
|
|
+ if(sub.NotHelpDirectDebitCapNum != NotHelpDirectDebitCapNum)
|
|
|
+ {
|
|
|
+ setField += "NotHelpDirectDebitCapNum=" + NotHelpDirectDebitCapNum + ",";
|
|
|
+ }
|
|
|
+ if(!string.IsNullOrEmpty(setField))
|
|
|
+ {
|
|
|
+ function.WriteLog("UserId:" + sub.UserId + "; TradeDate:" + sub.TradeDate + "; BrandId:" + sub.BrandId + ";", "交易不一致的创客");
|
|
|
+ function.WriteLog("update TradeDaySummaryAfter set " + setField.TrimEnd(',') + " where Id=" + sub.Id, "要执行的sql脚本");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ catch (Exception ex)
|
|
|
+ {
|
|
|
+ function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "统计交易额异常");
|
|
|
+ }
|
|
|
+ function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), "统计交易额日志");
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public void StatTradeAmountCheck2Do(string date)
|
|
|
+ {
|
|
|
+ function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), "统计交易额日志");
|
|
|
+ try
|
|
|
+ {
|
|
|
+ date = date.Replace("-", "");
|
|
|
+ WebCMSEntities db = new WebCMSEntities();
|
|
|
+ List<TradeDaySummary2> list = db.TradeDaySummary2.Where(m => m.TradeDate == date).ToList();
|
|
|
+ List<int> uids = list.Select(m => m.UserId).Distinct().ToList();
|
|
|
+ var users = db.Users.Select(m => new { m.Id, m.ParentNav }).Where(m => uids.Contains(m.Id)).ToList();
|
|
|
+ db.Dispose();
|
|
|
+ foreach(TradeDaySummary2 sub in list.Where(m => m.SeoTitle == "team").ToList())
|
|
|
+ {
|
|
|
+ string puidstr = "," + sub.UserId + ",";
|
|
|
+ List<int> subuids = users.Where(m => m.Id == sub.UserId || m.ParentNav.Contains(puidstr)).ToList().Select(m => m.Id).ToList();
|
|
|
+ bool op = list.Any(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount);
|
|
|
+ if(op)
|
|
|
+ {
|
|
|
+ decimal ProfitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitTradeAmt);
|
|
|
+ decimal ProfitDebitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDebitTradeAmt);
|
|
|
+ decimal ProfitDebitCapTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDebitCapTradeAmt);
|
|
|
+ decimal ProfitDebitCapNum = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDebitCapNum);
|
|
|
+ if(sub.ProfitTradeAmt != ProfitTradeAmt || sub.ProfitDebitTradeAmt != ProfitDebitTradeAmt || sub.ProfitDebitCapTradeAmt != ProfitDebitCapTradeAmt || sub.ProfitDebitCapNum != ProfitDebitCapNum)
|
|
|
+ {
|
|
|
+ function.WriteLog("UserId:" + sub.UserId + "; TradeDate:" + sub.TradeDate + "; BrandId:" + sub.BrandId + "; ProfitTradeAmt:" + sub.ProfitTradeAmt + "-" + ProfitTradeAmt + "; ProfitDebitTradeAmt:" + sub.ProfitDebitTradeAmt + "-" + ProfitDebitTradeAmt + "; ProfitDebitCapTradeAmt:" + sub.ProfitDebitCapTradeAmt + "-" + ProfitDebitCapTradeAmt + "; ProfitDebitCapNum:" + sub.ProfitDebitCapNum + "-" + ProfitDebitCapNum + ";", "交易不一致的创客");
|
|
|
+ function.WriteLog("update TradeDaySummary2 set ProfitTradeAmt=" + ProfitTradeAmt + ",ProfitDebitTradeAmt=" + ProfitDebitTradeAmt + ",ProfitDebitCapTradeAmt=" + ProfitDebitCapTradeAmt + ",ProfitDebitCapNum=" + ProfitDebitCapNum + " where Id=" + sub.Id, "要执行的sql脚本");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ catch (Exception ex)
|
|
|
+ {
|
|
|
+ function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "统计交易额异常");
|
|
|
+ }
|
|
|
+ function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), "统计交易额日志");
|
|
|
+ }
|
|
|
+ public void StatTradeAmountCheck2BeforeDo(string date)
|
|
|
+ {
|
|
|
+ function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), "统计交易额日志");
|
|
|
+ try
|
|
|
+ {
|
|
|
+ date = date.Replace("-", "");
|
|
|
+ WebCMSEntities db = new WebCMSEntities();
|
|
|
+ List<TradeDaySummary2Before> list = db.TradeDaySummary2Before.Where(m => m.TradeDate == date).ToList();
|
|
|
+ List<int> uids = list.Select(m => m.UserId).Distinct().ToList();
|
|
|
+ var users = db.Users.Select(m => new { m.Id, m.ParentNav }).Where(m => uids.Contains(m.Id)).ToList();
|
|
|
+ db.Dispose();
|
|
|
+ foreach(TradeDaySummary2Before sub in list.Where(m => m.SeoTitle == "team").ToList())
|
|
|
+ {
|
|
|
+ string puidstr = "," + sub.UserId + ",";
|
|
|
+ List<int> subuids = users.Where(m => m.Id == sub.UserId || m.ParentNav.Contains(puidstr)).ToList().Select(m => m.Id).ToList();
|
|
|
+ bool op = list.Any(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount);
|
|
|
+ if(op)
|
|
|
+ {
|
|
|
+ decimal ProfitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitTradeAmt);
|
|
|
+ decimal ProfitDebitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDebitTradeAmt);
|
|
|
+ decimal ProfitDebitCapTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDebitCapTradeAmt);
|
|
|
+ decimal ProfitDebitCapNum = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDebitCapNum);
|
|
|
+ if(sub.ProfitTradeAmt != ProfitTradeAmt || sub.ProfitDebitTradeAmt != ProfitDebitTradeAmt || sub.ProfitDebitCapTradeAmt != ProfitDebitCapTradeAmt || sub.ProfitDebitCapNum != ProfitDebitCapNum)
|
|
|
+ {
|
|
|
+ function.WriteLog("UserId:" + sub.UserId + "; TradeDate:" + sub.TradeDate + "; BrandId:" + sub.BrandId + "; ProfitTradeAmt:" + sub.ProfitTradeAmt + "-" + ProfitTradeAmt + "; ProfitDebitTradeAmt:" + sub.ProfitDebitTradeAmt + "-" + ProfitDebitTradeAmt + "; ProfitDebitCapTradeAmt:" + sub.ProfitDebitCapTradeAmt + "-" + ProfitDebitCapTradeAmt + "; ProfitDebitCapNum:" + sub.ProfitDebitCapNum + "-" + ProfitDebitCapNum + ";", "交易不一致的创客");
|
|
|
+ function.WriteLog("update TradeDaySummary2Before set ProfitTradeAmt=" + ProfitTradeAmt + ",ProfitDebitTradeAmt=" + ProfitDebitTradeAmt + ",ProfitDebitCapTradeAmt=" + ProfitDebitCapTradeAmt + ",ProfitDebitCapNum=" + ProfitDebitCapNum + " where Id=" + sub.Id, "要执行的sql脚本");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ catch (Exception ex)
|
|
|
+ {
|
|
|
+ function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "统计交易额异常");
|
|
|
+ }
|
|
|
+ function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), "统计交易额日志");
|
|
|
+ }
|
|
|
+ public void StatTradeAmountCheck2AfterDo(string date)
|
|
|
+ {
|
|
|
+ function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), "统计交易额日志");
|
|
|
+ try
|
|
|
+ {
|
|
|
+ date = date.Replace("-", "");
|
|
|
+ WebCMSEntities db = new WebCMSEntities();
|
|
|
+ List<TradeDaySummary2After> list = db.TradeDaySummary2After.Where(m => m.TradeDate == date).ToList();
|
|
|
+ List<int> uids = list.Select(m => m.UserId).Distinct().ToList();
|
|
|
+ var users = db.Users.Select(m => new { m.Id, m.ParentNav }).Where(m => uids.Contains(m.Id)).ToList();
|
|
|
+ db.Dispose();
|
|
|
+ foreach(TradeDaySummary2After sub in list.Where(m => m.SeoTitle == "team").ToList())
|
|
|
+ {
|
|
|
+ string puidstr = "," + sub.UserId + ",";
|
|
|
+ List<int> subuids = users.Where(m => m.Id == sub.UserId || m.ParentNav.Contains(puidstr)).ToList().Select(m => m.Id).ToList();
|
|
|
+ bool op = list.Any(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount);
|
|
|
+ if(op)
|
|
|
+ {
|
|
|
+ decimal ProfitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitTradeAmt);
|
|
|
+ decimal ProfitDebitTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDebitTradeAmt);
|
|
|
+ decimal ProfitDebitCapTradeAmt = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDebitCapTradeAmt);
|
|
|
+ decimal ProfitDebitCapNum = list.Where(m => subuids.Contains(m.UserId) && m.BrandId == sub.BrandId && m.TradeDate == sub.TradeDate && m.SeoTitle == "self" && m.PayType == sub.PayType && m.VipFlag == sub.VipFlag && m.QueryCount == sub.QueryCount).Sum(m => m.ProfitDebitCapNum);
|
|
|
+ if(sub.ProfitTradeAmt != ProfitTradeAmt || sub.ProfitDebitTradeAmt != ProfitDebitTradeAmt || sub.ProfitDebitCapTradeAmt != ProfitDebitCapTradeAmt || sub.ProfitDebitCapNum != ProfitDebitCapNum)
|
|
|
+ {
|
|
|
+ function.WriteLog("UserId:" + sub.UserId + "; TradeDate:" + sub.TradeDate + "; BrandId:" + sub.BrandId + "; ProfitTradeAmt:" + sub.ProfitTradeAmt + "-" + ProfitTradeAmt + "; ProfitDebitTradeAmt:" + sub.ProfitDebitTradeAmt + "-" + ProfitDebitTradeAmt + "; ProfitDebitCapTradeAmt:" + sub.ProfitDebitCapTradeAmt + "-" + ProfitDebitCapTradeAmt + "; ProfitDebitCapNum:" + sub.ProfitDebitCapNum + "-" + ProfitDebitCapNum + ";", "交易不一致的创客");
|
|
|
+ function.WriteLog("update TradeDaySummary2After set ProfitTradeAmt=" + ProfitTradeAmt + ",ProfitDebitTradeAmt=" + ProfitDebitTradeAmt + ",ProfitDebitCapTradeAmt=" + ProfitDebitCapTradeAmt + ",ProfitDebitCapNum=" + ProfitDebitCapNum + " where Id=" + sub.Id, "要执行的sql脚本");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ catch (Exception ex)
|
|
|
+ {
|
|
|
+ function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "统计交易额异常");
|
|
|
+ }
|
|
|
+ function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), "统计交易额日志");
|
|
|
+ }
|
|
|
}
|
|
|
}
|