|
|
@@ -208,6 +208,97 @@ namespace MySystem
|
|
|
|
|
|
|
|
|
|
|
|
+
|
|
|
+ public void AddRds()
|
|
|
+ {
|
|
|
+ // AddTradeDaySummary(); //补TradeDaySummary数据
|
|
|
+ // AddUserAccountRecord(); //补UserAccountRecord数据
|
|
|
+ // AddProfitRecord(); //补ProfitRecord数据
|
|
|
+ // AddSubsidyRecord(); //补SubsidyRecord数据
|
|
|
+ AddRdsData("UserAccountRecord");
|
|
|
+ AddRdsData("ProfitRecord");
|
|
|
+ AddRdsData("SubsidyRecord");
|
|
|
+ }
|
|
|
+
|
|
|
+ public void AddRdsData(string TableName)
|
|
|
+ {
|
|
|
+ Thread th = new Thread(AddRdsDataDo);
|
|
|
+ th.IsBackground = true;
|
|
|
+ th.Start(TableName);
|
|
|
+ }
|
|
|
+ public void AddRdsDataDo(object sender)
|
|
|
+ {
|
|
|
+ string TableName = sender.ToString();
|
|
|
+ while (true)
|
|
|
+ {
|
|
|
+ if(RedisDbconn.Instance.Get<string>(TableName + "ThreadStatus") == "1")
|
|
|
+ {
|
|
|
+ RdsDataDo(TableName);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ Thread.Sleep(5000);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ public void RdsDataDo(string TableName)
|
|
|
+ {
|
|
|
+ WebCMSEntities db = new WebCMSEntities();
|
|
|
+ PxcModels.WebCMSEntities maindb = new PxcModels.WebCMSEntities();
|
|
|
+ try
|
|
|
+ {
|
|
|
+ string sql = "";
|
|
|
+ int startId = int.Parse(function.CheckInt(function.ReadInstance("/TradeRecord/" + TableName + "Id.txt")));
|
|
|
+ DataTable dt = CustomerSqlConn.dtable("select * from " + TableName + " where Id>" + startId + " order by Id limit 100", AppConfig.Base.ProfitSqlConn);
|
|
|
+ if(dt.Rows.Count > 0)
|
|
|
+ {
|
|
|
+ foreach(DataRow dr in dt.Rows)
|
|
|
+ {
|
|
|
+ string fields = "";
|
|
|
+ string vals = "";
|
|
|
+ foreach(DataColumn dc in dt.Columns)
|
|
|
+ {
|
|
|
+ fields += dc.ColumnName + ",";
|
|
|
+ if(dc.DataType == typeof(DateTime))
|
|
|
+ {
|
|
|
+ string val = dr[dc.ColumnName].ToString();
|
|
|
+ if(string.IsNullOrEmpty(val))
|
|
|
+ {
|
|
|
+ val = "NULL";
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ val = "'" + DateTime.Parse(val).ToString("yyyy-MM-dd HH:mm:ss") + "'";
|
|
|
+ }
|
|
|
+ vals = dr[dc.ColumnName].ToString() + ",";
|
|
|
+ }
|
|
|
+ if(dc.DataType == typeof(int) || dc.DataType == typeof(decimal))
|
|
|
+ {
|
|
|
+ vals = dr[dc.ColumnName].ToString() + ",";
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ vals = dr[dc.ColumnName].ToString() + ",";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ sql += "insert into (" + fields.TrimEnd(',') + ") values (" + vals.TrimEnd(',') + ");\n";
|
|
|
+ startId = int.Parse(function.CheckInt(dr["Id"].ToString()));
|
|
|
+ }
|
|
|
+ CustomerSqlConn.op(sql, AppConfig.Base.ProfitSqlConn);
|
|
|
+ function.WritePage("/TradeRecord/", TableName + "Id.txt", startId.ToString());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ catch (Exception ex)
|
|
|
+ {
|
|
|
+ function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "补" + TableName + "数据异常");
|
|
|
+ }
|
|
|
+ maindb.Dispose();
|
|
|
+ db.Dispose();
|
|
|
+ function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") + "\n\n", "补" + TableName + "数据");
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
// 补TradeDaySummary数据
|
|
|
public void AddTradeDaySummary()
|
|
|
{
|