Add project files.
This commit is contained in:
268
StockInfoCore/frmInitial.cs
Normal file
268
StockInfoCore/frmInitial.cs
Normal file
@ -0,0 +1,268 @@
|
||||
using StockDal.Interface;
|
||||
using StockDAL.Interface;
|
||||
using DataDomain;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using System.Text.Json;
|
||||
using System.IO;
|
||||
using Helpers;
|
||||
using StockBL.Interface;
|
||||
using SqliteBackups.Interfaces;
|
||||
|
||||
namespace StockInfoCore
|
||||
{
|
||||
public partial class frmInitial : Form
|
||||
{
|
||||
private readonly IStockRepository _stockRepository;
|
||||
private readonly IStockMarketRepository _stockMarketRepository;
|
||||
private readonly IPersonRepository _personRepository;
|
||||
private readonly IAddressRepository _addressRepository;
|
||||
private readonly IStockPersonConnect _stockPersonConnect;
|
||||
private readonly IBackupRepository _backupRepository;
|
||||
private readonly IBackupRoutines _backupRoutines;
|
||||
private readonly IPersonStockFacade _personStockFacade;
|
||||
private readonly frmRegisterStock _regWindow;
|
||||
private readonly frmMyStocks _stockWindow;
|
||||
private readonly frmSelling _sellWindow;
|
||||
private readonly frmPerson _personWindow;
|
||||
private readonly frmPersonShareConnect _personShareConnect;
|
||||
private readonly frmBackup _backupWindow;
|
||||
|
||||
//private frmRegisterStock regWindow;
|
||||
//private frmMyStocks stockWindow;
|
||||
//private frmSelling sellWindow;
|
||||
//private frmPerson personWindow;
|
||||
//private frmPersonShareConnect personShareConnect;
|
||||
//private frmBackup backupWindow;
|
||||
public int SelectedPersonId { get; set; } = 0;
|
||||
|
||||
public frmInitial(
|
||||
IStockRepository stockMemberRepository,
|
||||
IStockMarketRepository stockMarketRepository,
|
||||
IPersonRepository personRepository,
|
||||
IAddressRepository addressRepository,
|
||||
IStockPersonConnect stockPersonConnect,
|
||||
IBackupRepository backupRepository,
|
||||
IBackupRoutines backupRoutines,
|
||||
IPersonStockFacade personStockFacade,
|
||||
frmRegisterStock regWindow,
|
||||
frmMyStocks stockWindow,
|
||||
frmSelling sellWindow,
|
||||
frmPerson personWindow,
|
||||
frmPersonShareConnect personShareConnect,
|
||||
frmBackup backupWindow
|
||||
)
|
||||
{
|
||||
InitializeComponent();
|
||||
_stockRepository = stockMemberRepository;
|
||||
_stockMarketRepository = stockMarketRepository;
|
||||
_personRepository = personRepository;
|
||||
_addressRepository = addressRepository;
|
||||
_stockPersonConnect = stockPersonConnect;
|
||||
_backupRepository = backupRepository;
|
||||
_backupRoutines = backupRoutines;
|
||||
_personStockFacade = personStockFacade;
|
||||
_regWindow = regWindow;
|
||||
_stockWindow = stockWindow;
|
||||
_sellWindow = sellWindow;
|
||||
_personWindow = personWindow;
|
||||
_personShareConnect = personShareConnect;
|
||||
_backupWindow = backupWindow;
|
||||
}
|
||||
|
||||
private void Form1_Load(object sender, EventArgs e)
|
||||
{
|
||||
ReloadData();
|
||||
btnRestoreShares.Enabled = false;
|
||||
btnBackupShares.Enabled = false;
|
||||
btnReloadShares.Enabled = false;
|
||||
btnBackupAll.Enabled = false;
|
||||
}
|
||||
|
||||
private void ReloadData()
|
||||
{
|
||||
var allStocks = _stockRepository.GetAllStocks();
|
||||
dataGridView.DataSource = allStocks;
|
||||
// SaveStocks(allStocks);
|
||||
lblTotalRecords.Text = $"Total records: {dataGridView.RowCount}";
|
||||
}
|
||||
|
||||
|
||||
private void btnReload_Click(object sender, EventArgs e)
|
||||
{
|
||||
ReloadData();
|
||||
}
|
||||
|
||||
private void btnTestScrapFunction_Click(object sender, EventArgs e)
|
||||
{
|
||||
_stockMarketRepository.LoadStockMarketList(chbShowBrowser.Checked);
|
||||
var stocklist = _stockMarketRepository.StockMarketList;
|
||||
lblStockRows.Text = stocklist.Count().ToString();
|
||||
btnReloadShares.Enabled = true;
|
||||
}
|
||||
|
||||
private void frmInitial_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
_stockMarketRepository.Clean();
|
||||
}
|
||||
|
||||
|
||||
|
||||
private void Button1reload()
|
||||
{
|
||||
lblStockRows.Text = "";
|
||||
_stockMarketRepository.RefreshMarketList();
|
||||
var stocklist = _stockMarketRepository.StockMarketList;
|
||||
lblStockRows.Text = stocklist.Count().ToString();
|
||||
}
|
||||
|
||||
private void btnStockReg_Click(object sender, EventArgs e)
|
||||
{
|
||||
Cursor.Current = Cursors.WaitCursor;
|
||||
_stockMarketRepository.LoadStockMarketList();
|
||||
_regWindow.Stocks = _stockMarketRepository.StockMarketList;
|
||||
Cursor.Current = DefaultCursor;
|
||||
_regWindow.ShowDialog();
|
||||
|
||||
_stockRepository.InsertMany(_regWindow.RegisteredStocks);
|
||||
|
||||
ReloadData();
|
||||
}
|
||||
|
||||
private void btnValueView_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (SelectedPersonId == 0)
|
||||
{
|
||||
MessageBox.Show($"Ingen person vald ({SelectedPersonId})");
|
||||
}
|
||||
else
|
||||
{
|
||||
var person = _personRepository.GetPersonById(SelectedPersonId);
|
||||
Cursor.Current = Cursors.WaitCursor;
|
||||
_stockMarketRepository.LoadStockMarketList();
|
||||
_stockWindow.ConnectedPerson = person;
|
||||
_stockWindow.Stocks = _stockMarketRepository.StockMarketList;
|
||||
Cursor.Current = DefaultCursor;
|
||||
_stockWindow.ShowDialog();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
private void chkEnableBackRes_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (chkEnableBackRes.Checked)
|
||||
{
|
||||
btnRestoreShares.Enabled = true;
|
||||
btnBackupShares.Enabled = true;
|
||||
btnBackupAll.Enabled = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
btnRestoreShares.Enabled = false;
|
||||
btnBackupShares.Enabled = false;
|
||||
btnBackupAll.Enabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void btnBackupShares_Click(object sender, EventArgs e)
|
||||
{
|
||||
var stockList = _stockRepository.GetAllStocks();
|
||||
var jsonStr = JsonSerializer.Serialize(stockList);
|
||||
sfdSaver.Title = "Backup your sharedata";
|
||||
sfdSaver.Filter = "Backup file (.json)|*.json";
|
||||
sfdSaver.FileName = $"StockBackup{DateTime.Now.ToFileTime()}";
|
||||
|
||||
if (sfdSaver.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
File.WriteAllText(sfdSaver.FileName, jsonStr);
|
||||
}
|
||||
}
|
||||
|
||||
private void btnRestoreShares_Click(object sender, EventArgs e)
|
||||
{
|
||||
ofdOpener.Title = "Restore your share data";
|
||||
ofdOpener.Filter = "Restore file (.json)|*.json";
|
||||
ofdOpener.CheckFileExists = true;
|
||||
if (ofdOpener.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
var jsonStr = File.ReadAllText(ofdOpener.FileName);
|
||||
var stockList = JsonSerializer.Deserialize<List<StockMember>>(jsonStr);
|
||||
|
||||
_stockRepository.RestoreStockMembers(stockList);
|
||||
};
|
||||
}
|
||||
|
||||
private void btnReloadShares_Click(object sender, EventArgs e)
|
||||
{
|
||||
Button1reload();
|
||||
}
|
||||
|
||||
private void btnStockSale_Click(object sender, EventArgs e)
|
||||
{
|
||||
_sellWindow.ShowDialog();
|
||||
ReloadData();
|
||||
}
|
||||
private void btnEditPerson_Click(object sender, EventArgs e)
|
||||
{
|
||||
Cursor.Current = Cursors.WaitCursor;
|
||||
_personWindow.PersonId = SelectedPersonId;
|
||||
Cursor.Current = DefaultCursor;
|
||||
_personWindow.ShowDialog();
|
||||
LoadCmbOwners();
|
||||
}
|
||||
|
||||
private void btnConnShares_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (SelectedPersonId == 0)
|
||||
{
|
||||
MessageBox.Show($"Ingen person vald ({SelectedPersonId})");
|
||||
}
|
||||
else
|
||||
{
|
||||
var person = _personRepository.GetPersonById(SelectedPersonId);
|
||||
Cursor.Current = Cursors.WaitCursor;
|
||||
_personShareConnect.ConnectPerson = person;
|
||||
Cursor.Current = DefaultCursor;
|
||||
_personShareConnect.ShowDialog();
|
||||
}
|
||||
}
|
||||
|
||||
private void frmInitial_Shown(object sender, EventArgs e)
|
||||
{
|
||||
LoadCmbOwners();
|
||||
}
|
||||
|
||||
private void LoadCmbOwners()
|
||||
{
|
||||
cmbOwners.Items.Clear();
|
||||
var owners = _personRepository.GetAllOwners();
|
||||
if (owners.Count() > 0)
|
||||
{
|
||||
foreach (var person in owners)
|
||||
{
|
||||
var itemIndex = cmbOwners.Items.Add(new ComboboxItem($"{person.FirstName} {person.LastName} ({person.NickName})", person.Id));
|
||||
}
|
||||
}
|
||||
cmbOwners.Items.Add(new ComboboxItem($"< ny person> ", 0));
|
||||
}
|
||||
|
||||
private void cmbOwners_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
SelectedPersonId = ((ComboboxItem)cmbOwners.SelectedItem).HiddenValue;
|
||||
}
|
||||
|
||||
private void btnBackupAll_Click(object sender, EventArgs e)
|
||||
{
|
||||
// backupWindow = new frmBackup(_backupRepository, _backupRoutines);
|
||||
_backupWindow.ShowDialog();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user