4 Commits

Author SHA1 Message Date
kyh
335fde4cde Saved buyer Result 처리 완료(Get 까지 ) 2022-11-23 15:50:44 +09:00
kyh
76532e1cd5 Create SavedBuyerResult Table 2022-11-23 15:15:10 +09:00
kyh
856adf9043 Main Log 데이터 가져갈 수 있도록 수정 2022-11-23 15:09:09 +09:00
kyh
b961c71eba Log 데이터 저장 기능 완료 2022-11-23 15:04:14 +09:00
3 changed files with 287 additions and 7 deletions

View File

@@ -48,7 +48,7 @@ namespace Million_Buyer
private bool unlimitChecker = false; private bool unlimitChecker = false;
private long second = 0; private long second = 0;
private string mode = "Buyer";
private int cycleCount = 0; private int cycleCount = 0;
private double cycleBuyMoney = 0; private double cycleBuyMoney = 0;
@@ -74,8 +74,12 @@ namespace Million_Buyer
Million.DbManagement.DBConnection.QueryUpdateExcuter Million.DbManagement.DBConnection.QueryUpdateExcuter
(CommonProperty.DbConnectionResultData, DbServiceFunctions.CreateSavedResultDataTableQuery()); (CommonProperty.DbConnectionResultData, DbServiceFunctions.CreateSavedResultDataTableQuery());
Million.DbManagement.DBConnection.QueryUpdateExcuter Million.DbManagement.DBConnection.QueryUpdateExcuter
(CommonProperty.DbConnectionResultData, DbServiceFunctions.CreateRealTimeIndicatorTableQuery()); (CommonProperty.DbConnectionResultData, DbServiceFunctions.CreateRealTimeIndicatorTableQuery());
Million.DbManagement.DBConnection.QueryUpdateExcuter
(CommonProperty.DbConnectionResultData, DbServiceFunctions.CreateMainLogTableQuery());
Million.DbManagement.DBConnection.QueryUpdateExcuter
(CommonProperty.DbConnectionResultData, DbServiceFunctions.CreateSavedBuyerResultDataTableQuery());
_saveResultData = new SavedResultData _saveResultData = new SavedResultData
{ {
BuySetupList = new List<object>(), BuySetupList = new List<object>(),
@@ -99,7 +103,8 @@ namespace Million_Buyer
/// <param name="sender"></param> /// <param name="sender"></param>
/// <param name="e"></param> /// <param name="e"></param>
private void rd_Realtime_CheckedChanged(object sender, EventArgs e) private void rd_Realtime_CheckedChanged(object sender, EventArgs e)
{ {
mode = "RealTime";
RealTimeMode = true; RealTimeMode = true;
SetReadOnly(true); SetReadOnly(true);
} }
@@ -111,6 +116,7 @@ namespace Million_Buyer
/// <param name="e"></param> /// <param name="e"></param>
private void rd_buyer_CheckedChanged(object sender, EventArgs e) private void rd_buyer_CheckedChanged(object sender, EventArgs e)
{ {
mode = "Buyer";
RealTimeMode = false; RealTimeMode = false;
SetReadOnly(false); SetReadOnly(false);
} }
@@ -658,6 +664,7 @@ namespace Million_Buyer
string str = "Sell : " + item + ",\r\n Sell Candle Data : " + JsonConvert.SerializeObject(recentlyData) + "\r\n"; string str = "Sell : " + item + ",\r\n Sell Candle Data : " + JsonConvert.SerializeObject(recentlyData) + "\r\n";
LogManager.WriteLog(str, item); LogManager.WriteLog(str, item);
//처리한 buyList는 삭제 //처리한 buyList는 삭제
buyList.Remove(buyItem); buyList.Remove(buyItem);
InsertLog(buyItem.ConGoodsData.CoinFullName + " Market Data 판매 DateTime : " + time.ToString("yyyy-MM-dd HH:mm:ss")); InsertLog(buyItem.ConGoodsData.CoinFullName + " Market Data 판매 DateTime : " + time.ToString("yyyy-MM-dd HH:mm:ss"));
@@ -665,6 +672,9 @@ namespace Million_Buyer
{ {
try try
{ {
//result data insert
DBConnection.QueryInsertExcuter_SavedBuyerResultData(cb_UserList.Text, mode, time, result);
//Grid 처리 //Grid 처리
TreeListNode buyNode = null; TreeListNode buyNode = null;
@@ -838,7 +848,9 @@ namespace Million_Buyer
lb_log.Items.Clear(); lb_log.Items.Clear();
} }
lb_log.Items.Insert(0, log); lb_log.Items.Insert(0, log);
})); DBConnection.QueryInsertExcuter_MainLog(DateTime.Now, cb_UserList.Text, log);
}));
return true; return true;
} }
/// <summary> /// <summary>

View File

@@ -149,6 +149,56 @@ namespace Million.DbManagement
return returnData; return returnData;
} }
/// <summary>
/// Get Log Data
/// </summary>
/// <param name="strDBCon"></param>
/// <param name="sqlQuery"></param>
/// <returns></returns>
public static List<Dictionary<string, object>> QueryGetExcuter_MainLog(string strDBCon, string userName, DateTime startDate, DateTime endDate)
{
var returnData = new List<Dictionary<string, object>>();
var sqlQuery = string.Format(@"SELECT * FROM [ResultData].[dbo].[MainLog] WHERE UserName = '{0}' AND SavedDateTime >= '{1}' AND SavedDateTime < '{2}",
userName, startDate.ToString("yyyy-MM-dd HH:mm:ss"), endDate.ToString("yyyy-MM-dd HH:mm:ss"));
using (var conn = new SqlConnection(strDBCon))
{
using (var cmd = new SqlCommand(sqlQuery, conn))
{
try
{
conn.Open();
using (var rdr = cmd.ExecuteReader())
{
while (rdr.Read())
{
var dateTime = rdr["SavedDateTime"]?.ToString();
var data = new Dictionary<string, object>();
data["SavedDateTime"] = Convert.ToDateTime(dateTime);
data["UserName"] = rdr["UserName"].ToString();
data["Data"] = rdr["Data"].ToString();
returnData.Add(data);
}
}
conn.Close();
}
catch (Exception ex)
{
Console.WriteLine(" ============= exception ===============");
Console.WriteLine(ex.Message);
conn.Close();
return returnData;
}
}
}
return returnData;
}
/// <summary> /// <summary>
/// Get Candle Data List /// Get Candle Data List
/// </summary> /// </summary>
@@ -216,7 +266,59 @@ namespace Million.DbManagement
conn.Close(); conn.Close();
} }
} }
/// <summary>
/// Insert Saved Buyer Result Data
/// </summary>
/// <param name="userName"></param>
/// <param name="mode"></param>
/// <param name="savedDateTime"></param>
/// <param name="data"></param>
/// <returns></returns>
public static bool QueryInsertExcuter_SavedBuyerResultData(string userName, string mode, DateTime savedDateTime, SearchResult data)
{
var binaryFormatter = new BinaryFormatter();
var sqlQuery = DbServiceFunctions.InsertSavedBuyerResultDataQuery(userName, mode, savedDateTime);
var strDBCon = CommonProperty.DbConnectionResultData;
SqlConnection conn = null;
SqlDataReader rdr = null;
try
{
using (conn = new SqlConnection(strDBCon))
{
using (var cmd = new SqlCommand(sqlQuery, conn))
{
var setupListStream = new MemoryStream();
binaryFormatter.Serialize(setupListStream, data);
setupListStream.Position = 0;
cmd.Parameters.Add("@data", SqlDbType.VarBinary, (int)setupListStream.Length).Value = setupListStream.ToArray();
conn.Open();
using (rdr = cmd.ExecuteReader())
{
}
}
conn.Close();
}
return true;
}
catch (Exception e)
{
Console.WriteLine(" ============= exception ===============");
Console.WriteLine(e.Message);
if (rdr != null)
rdr.Close();
if (conn != null)
conn.Close();
return false;
}
}
/// <summary> /// <summary>
/// Insert SavedResultData /// Insert SavedResultData
/// </summary> /// </summary>
@@ -273,7 +375,56 @@ namespace Million.DbManagement
conn.Close(); conn.Close();
return false; return false;
} }
} }
/// <summary>
/// Insert Log
/// </summary>
/// <param name="savedData"></param>
/// <returns></returns>
public static bool QueryInsertExcuter_MainLog(DateTime savedData, string user, string data)
{
var sqlQuery = string.Format(@"INSERT INTO [ResultData].[dbo].[MainLog] VALUES('{0}', '{1}', '{2}');",
user, savedData.ToString("yyyy-MM-dd HH:mm:ss"), data);
var strDBCon = CommonProperty.DbConnectionResultData;
SqlConnection conn = null;
SqlDataReader rdr = null;
try
{
using (conn = new SqlConnection(strDBCon))
{
using (var cmd = new SqlCommand(sqlQuery, conn))
{
conn.Open();
using (rdr = cmd.ExecuteReader())
{
}
}
conn.Close();
}
return true;
}
catch (Exception e)
{
Console.WriteLine(" ============= exception ===============");
Console.WriteLine(e.Message);
if (rdr != null)
rdr.Close();
if (conn != null)
conn.Close();
return false;
}
return true;
}
/// <summary> /// <summary>
/// insert RealTimeIndicator /// insert RealTimeIndicator
@@ -430,6 +581,56 @@ namespace Million.DbManagement
} }
} }
/// <summary>
/// Saved Get Buyer Result Data
/// </summary>
/// <param name="userName"></param>
/// <param name="mode"></param>
/// <param name="startDate"></param>
/// <param name="endDate"></param>
/// <returns></returns>
public static List<SearchResult> QueryGetExcuter_SavedBuyerResultData(string userName, string mode, DateTime startDate, DateTime endDate)
{
var returnData = new List<SearchResult>();
var sqlQuery = string.Format(@"SELECT * FROM [ResultData].[dbo].[SavedBuyerResultData] WHERE [Mode] = '{0}' AND [UserName] = '{1}'
AND [SavedDateTime] >= '{2}' AND [SavedDateTime] <= '{3}';",
mode, userName, startDate.ToString("yyyy-MM-dd HH:mm:ss"), endDate.ToString("yyyy-MM-dd HH:mm:ss"));
var strDBCon = CommonProperty.DbConnectionResultData;
using (var conn = new SqlConnection(strDBCon))
{
using (var cmd = new SqlCommand(sqlQuery, conn))
{
try
{
conn.Open();
using (var rdr = cmd.ExecuteReader())
{
while (rdr.Read())
{
var data = new SearchResult();
data = (SearchResult)GetBinaryConvertClass(rdr, "Data");
returnData.Add(data);
}
}
conn.Close();
}
catch (Exception ex)
{
Console.WriteLine(" ============= exception ===============");
Console.WriteLine(ex.Message);
conn.Close();
return returnData;
}
}
}
return returnData;
}
/// <summary> /// <summary>
/// Get SavedResultData /// Get SavedResultData
/// idList가 null일 경우 전체 다 가져옴 /// idList가 null일 경우 전체 다 가져옴

View File

@@ -82,6 +82,45 @@ namespace Million.DbManagement
)"; )";
} }
/// <summary>
/// Create Main Log Table
/// </summary>
/// <returns></returns>
public static string CreateMainLogTableQuery()
{
return @"if not exists (select * from sysobjects where name='MainLog' and xtype='U')
create table " + "\"MainLog\"" + @"(
UserName nvarchar(50) NOT NULL,
SavedDateTime datetime NULL,
Data nvarchar(MAX) NOT NULL
)";
}
/// <summary>
/// Create Saved Buyer Result Table
/// </summary>
/// <returns></returns>
public static string CreateSavedBuyerResultDataTableQuery()
{
return @"if not exists (select * from sysobjects where name='SavedBuyerResultData' and xtype='U')
create table " + "\"SavedBuyerResultData\"" + @"(
UserName nvarchar(50) NOT NULL,
SavedDateTime datetime NULL,
Mode nvarchar(50) NOT NULL,
Data varbinary(MAX) NULL,
)";
}
/// <summary>
/// Select Main Log Table
/// </summary>
/// <returns></returns>
public static string SelectMainLogQuery()
{
return @"SELECT * FROM [ResultData].[dbo].[MainLog]";
}
/// <summary> /// <summary>
/// DB Market 테이블 생성 /// DB Market 테이블 생성
/// </summary> /// </summary>
@@ -592,6 +631,34 @@ namespace Million.DbManagement
return str; return str;
} }
/// <summary>
/// Saved Buyer Result Query
/// </summary>
/// <param name="userName"></param>
/// <param name="mode"></param>
/// <param name="dateTime"></param>
/// <returns></returns>
public static string InsertSavedBuyerResultDataQuery(string userName, string mode, DateTime dateTime)
{
var str = string.Format(@"INSERT INTO [ResultData].[dbo].[SavedBuyerResultData]
(
[UserName],
[SavedDateTime],
[Mode],
[Data]
)VALUES(
'{0}',
'{1}',
'{2}',
@data);",
userName,
dateTime.ToString("yyyy-MM-dd HH:mm:ss"),
mode
);
return str;
}
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>