Status page can be shown , a lot of refactoring is still required

This commit is contained in:
2022-02-03 23:03:04 +01:00
parent b776847980
commit 8b74067a10
8 changed files with 175 additions and 13 deletions

View File

@ -12,6 +12,8 @@ using System.Threading.Tasks;
using System.Reflection;
using System.Diagnostics;
using StockDAL.Interface;
using BrowserHelper.Driver;
using BrowserHelper.Settings;
namespace StockDal
{
@ -27,12 +29,20 @@ namespace StockDal
public IWebDriver driver;
private readonly IStockPersonConnect _stockPersonConnect;
private readonly IStockRepository _stockRepository;
private readonly TestSettings _testSettings;
private readonly IStockScrapePage _scrapePage;
public StockMarketRepository(IStockPersonConnect stockPersonConnect, IStockRepository stockRepository )
public StockMarketRepository(
IStockPersonConnect stockPersonConnect,
IStockRepository stockRepository,
TestSettings testSettings,
IStockScrapePage scrapePage)
{
ViewBrowser = false;
_stockPersonConnect = stockPersonConnect;
_stockRepository = stockRepository;
_testSettings = testSettings;
_scrapePage = scrapePage;
}
private void Find_Data()
@ -206,6 +216,31 @@ namespace StockDal
}
private void saveStockData(List<DiTraderStockRow> saveRow)
{
foreach(var row in saveRow)
{
try
{
StockMarketList.Add(row.StockName, row);
}
catch (ArgumentException)
{
try
{
StockMarketList.Add(row.StockName + "-2", row);
}
catch (Exception)
{
DumpObjects.Add(row);
}
}
//break;
}
}
public void LoadStockMarketList(int persId)
{
StockMarketList = new Dictionary<string, DiTraderStockRow>();
@ -214,6 +249,38 @@ namespace StockDal
//var connStocks = _stockPersonConnect.GetAllConnectionsByPersId(persId);
var groupedStocks = _stockRepository.GetStocksGroupedPerPerson(persId);
var lastGroup = string.Empty;
var stockList = new List<string>();
foreach(var groupedStock in groupedStocks)
{
if (groupedStock.StockGroup != lastGroup)
{
if(lastGroup != string.Empty)
{
_testSettings.StockWishes = stockList.ToArray();
stockList.Clear();
saveStockData( _scrapePage.GetMyStockStatus(lastGroup));
lastGroup = groupedStock.StockGroup;
}
else
{
lastGroup = groupedStock.StockGroup;
}
stockList.Add(groupedStock.StockId);
}
else
{
stockList.Add(groupedStock.StockId);
}
}
if(stockList.Count > 0)
{
_testSettings.StockWishes = stockList.ToArray();
stockList.Clear();
saveStockData(_scrapePage.GetMyStockStatus(lastGroup));
}
//OpenBrowser(null);
//Find_Data();