Show only owners shares
This commit is contained in:
@ -110,13 +110,22 @@ namespace StockInfo
|
||||
|
||||
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 = new frmMyStocks(_stockRepository, _stockMarketRepository);
|
||||
stockWindow = new frmMyStocks(_stockRepository, _stockMarketRepository, _stockPersonConnect);
|
||||
stockWindow.ConnectedPerson = person;
|
||||
stockWindow.Stocks = _stockMarketRepository.StockMarketList;
|
||||
Cursor.Current = DefaultCursor;
|
||||
stockWindow.ShowDialog();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@ -18,6 +18,8 @@ namespace StockInfo
|
||||
Color hdrColor;
|
||||
private readonly IStockRepository _stockRepository;
|
||||
private readonly IStockMarketRepository _stockMarketRepository;
|
||||
private readonly IStockPersonConnect _stockPersonConnect;
|
||||
|
||||
public decimal BoughtSum { get; set; }
|
||||
public decimal TotalDiff { get; set; }
|
||||
public decimal CurrentSum { get; set; }
|
||||
@ -26,13 +28,15 @@ namespace StockInfo
|
||||
|
||||
public Dictionary<string, DiTraderStockRow> Stocks { get; set; }
|
||||
public IEnumerable<StockMember> CurrentStocks { get; set; }
|
||||
public Person ConnectedPerson { get; set; }
|
||||
|
||||
public frmMyStocks(IStockRepository stockRepository, IStockMarketRepository stockMarketRepository)
|
||||
public frmMyStocks(IStockRepository stockRepository, IStockMarketRepository stockMarketRepository,IStockPersonConnect stockPersonConnect)
|
||||
{
|
||||
hdrColor = Color.CadetBlue;
|
||||
InitializeComponent();
|
||||
_stockRepository = stockRepository;
|
||||
_stockMarketRepository = stockMarketRepository;
|
||||
_stockPersonConnect = stockPersonConnect;
|
||||
numericUpDown1.Value = timer1.Interval / 60000;
|
||||
numericUpDown1.Enabled = false;
|
||||
}
|
||||
@ -48,6 +52,8 @@ namespace StockInfo
|
||||
TotalMinus = 0m;
|
||||
TotalPlus = 0m;
|
||||
var tmpStocks = new List<StockMember>();
|
||||
var personStocks = new List<StockMember>();
|
||||
//Update all handled shares
|
||||
foreach (var stock in CurrentStocks)
|
||||
{
|
||||
stock.ActValue = Stocks[stock.StockId.Trim()].LatestPrice;
|
||||
@ -55,7 +61,10 @@ namespace StockInfo
|
||||
_stockRepository.UpdateActualPrice(stock.Id, stock.ActValue);
|
||||
tmpStocks.Add(stock);
|
||||
}
|
||||
foreach(var stk in tmpStocks.OrderByDescending(s => s.ActAmount * (s.ActValue -s.BuyValue)))
|
||||
//Use only Stocks belonging to person
|
||||
var connects =_stockPersonConnect.GetAllConnectionsByPersId(ConnectedPerson.Id);
|
||||
personStocks.AddRange(tmpStocks.Where(ts => connects.Any(c => c.StockId == ts.Id)).ToList());
|
||||
foreach(var stk in personStocks.OrderByDescending(s => s.ActAmount * (s.ActValue -s.BuyValue)))
|
||||
{
|
||||
AddItemToListView(stk);
|
||||
}
|
||||
@ -144,6 +153,7 @@ namespace StockInfo
|
||||
|
||||
private void frmMyStocks_Shown(object sender, EventArgs e)
|
||||
{
|
||||
this.Text = $"{ConnectedPerson.Id} - {ConnectedPerson.FirstName} {ConnectedPerson.LastName}'s Shares";
|
||||
ReloadData();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user