|
@@ -1,6 +1,7 @@
|
|
using System;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Collections.Generic;
|
|
using System.Threading.Tasks;
|
|
using System.Threading.Tasks;
|
|
|
|
+using HyperCube.Models;
|
|
using MySql.Data.MySqlClient;
|
|
using MySql.Data.MySqlClient;
|
|
|
|
|
|
namespace HyperCube
|
|
namespace HyperCube
|
|
@@ -58,10 +59,10 @@ namespace HyperCube
|
|
return lastID;
|
|
return lastID;
|
|
}
|
|
}
|
|
|
|
|
|
- public async Task<Dictionary<int, Models.SmartContract>> SQLSelectContracts()
|
|
|
|
|
|
+ public async Task<Dictionary<int, SmartContract>> SQLSelectContracts()
|
|
{
|
|
{
|
|
string sql = "select * from smart_contracts";
|
|
string sql = "select * from smart_contracts";
|
|
- Dictionary<int, Models.SmartContract> contracts = new();
|
|
|
|
|
|
+ Dictionary<int, SmartContract> contracts = new();
|
|
|
|
|
|
bool connected = IsConnect();
|
|
bool connected = IsConnect();
|
|
if (connected)
|
|
if (connected)
|
|
@@ -90,9 +91,9 @@ namespace HyperCube
|
|
return null;
|
|
return null;
|
|
}
|
|
}
|
|
|
|
|
|
- public async Task<Dictionary<int, Models.ArticleModel>> SQLSelectArticles(string sql)
|
|
|
|
|
|
+ public async Task<Dictionary<int, ArticleModel>> SQLSelectArticles(string sql)
|
|
{
|
|
{
|
|
- Dictionary<int, Models.ArticleModel> articleModels = new();
|
|
|
|
|
|
+ Dictionary<int, ArticleModel> articleModels = new();
|
|
Models.ArticleModel articleModel;
|
|
Models.ArticleModel articleModel;
|
|
|
|
|
|
bool connected = IsConnect();
|
|
bool connected = IsConnect();
|
|
@@ -101,23 +102,24 @@ namespace HyperCube
|
|
SQLcom = new(sql, Connection);
|
|
SQLcom = new(sql, Connection);
|
|
MySqlDataReader rdr = SQLcom.ExecuteReader();
|
|
MySqlDataReader rdr = SQLcom.ExecuteReader();
|
|
|
|
|
|
- while (rdr.Read())
|
|
|
|
- {
|
|
|
|
- //Console.WriteLine("{0} {1} {2} {3} {4}", rdr.GetInt32(0), rdr.GetString(1),
|
|
|
|
- // rdr.GetString(2), rdr.GetDateTime(3), rdr.GetString(4));
|
|
|
|
-
|
|
|
|
|
|
+ while (rdr.Read()) ///id, filename, article_name, date_publish, action_type/status
|
|
|
|
+ {
|
|
articleModel = new();
|
|
articleModel = new();
|
|
|
|
+ int id = rdr.GetInt32(0);
|
|
articleModel.Filename = rdr.GetString(1);
|
|
articleModel.Filename = rdr.GetString(1);
|
|
articleModel.Name = rdr.GetString(2);
|
|
articleModel.Name = rdr.GetString(2);
|
|
articleModel.PublishDate = rdr.GetDateTime(3);
|
|
articleModel.PublishDate = rdr.GetDateTime(3);
|
|
articleModel.Authors = rdr.GetString(4);
|
|
articleModel.Authors = rdr.GetString(4);
|
|
|
|
+ articleModel.Status = (ArticleStatus)rdr.GetInt32(5);
|
|
|
|
+
|
|
|
|
+ if (articleModels.ContainsKey(id))
|
|
|
|
+ continue;
|
|
|
|
|
|
- articleModels.Add(rdr.GetInt32(0), articleModel);
|
|
|
|
|
|
+ articleModels.Add(id, articleModel);
|
|
}
|
|
}
|
|
|
|
|
|
await Task.WhenAll();
|
|
await Task.WhenAll();
|
|
rdr.Close();
|
|
rdr.Close();
|
|
- //Console.WriteLine("End reading DB");
|
|
|
|
return articleModels;
|
|
return articleModels;
|
|
}
|
|
}
|
|
else
|
|
else
|
|
@@ -126,9 +128,9 @@ namespace HyperCube
|
|
return null;
|
|
return null;
|
|
}
|
|
}
|
|
|
|
|
|
- public async Task<Models.ArticleModel> SQLSelectArticle(string sql)
|
|
|
|
|
|
+ public async Task<ArticleModel> SQLSelectArticle(string sql)
|
|
{
|
|
{
|
|
- Models.ArticleModel articleModel = new();
|
|
|
|
|
|
+ ArticleModel articleModel = new();
|
|
|
|
|
|
bool connected = IsConnect();
|
|
bool connected = IsConnect();
|
|
if (connected)
|
|
if (connected)
|
|
@@ -136,7 +138,7 @@ namespace HyperCube
|
|
SQLcom = new(sql, Connection);
|
|
SQLcom = new(sql, Connection);
|
|
MySqlDataReader rdr = SQLcom.ExecuteReader();
|
|
MySqlDataReader rdr = SQLcom.ExecuteReader();
|
|
|
|
|
|
- while (rdr.Read()) //id, filename, article_name, authors, date_publish, annotation, keywords
|
|
|
|
|
|
+ while (rdr.Read()) ///id, filename, article_name, authors, date_publish, annotation, keywords, action_type/status
|
|
{
|
|
{
|
|
articleModel.Filename = rdr.GetString(1);
|
|
articleModel.Filename = rdr.GetString(1);
|
|
articleModel.Name = rdr.GetString(2);
|
|
articleModel.Name = rdr.GetString(2);
|
|
@@ -144,6 +146,7 @@ namespace HyperCube
|
|
articleModel.PublishDate = rdr.GetDateTime(4);
|
|
articleModel.PublishDate = rdr.GetDateTime(4);
|
|
articleModel.Annotation = rdr.GetString(5);
|
|
articleModel.Annotation = rdr.GetString(5);
|
|
articleModel.Keywords = rdr.GetString(6);
|
|
articleModel.Keywords = rdr.GetString(6);
|
|
|
|
+ articleModel.Status = (ArticleStatus)rdr.GetInt32(7);
|
|
}
|
|
}
|
|
await Task.WhenAll();
|
|
await Task.WhenAll();
|
|
rdr.Close();
|
|
rdr.Close();
|