Shares can be handled by owners
This commit is contained in:
@ -1,4 +1,6 @@
|
||||
using DataDomain;
|
||||
using StockBL.Interface;
|
||||
using StockDAL.Interface;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
@ -13,16 +15,75 @@ namespace StockInfo
|
||||
{
|
||||
public partial class frmPersonShareConnect : Form
|
||||
{
|
||||
private readonly IPersonStockFacade _personStockFacade;
|
||||
private readonly IStockPersonConnect _stockPersonConnect;
|
||||
private readonly IStockRepository _stockRepository;
|
||||
|
||||
public Person ConnectPerson { get; set; }
|
||||
public frmPersonShareConnect()
|
||||
public frmPersonShareConnect(IPersonStockFacade personStockFacade, IStockPersonConnect stockPersonConnect,IStockRepository stockRepository)
|
||||
{
|
||||
InitializeComponent();
|
||||
_personStockFacade = personStockFacade;
|
||||
_stockPersonConnect = stockPersonConnect;
|
||||
_stockRepository = stockRepository;
|
||||
}
|
||||
|
||||
private void frmPersonShareConnect_Shown(object sender, EventArgs e)
|
||||
{
|
||||
this.Text = $"{ConnectPerson.Id} - {ConnectPerson.FirstName} {ConnectPerson.LastName}'s Shares";
|
||||
this.lblShareHolder.Text = $"{ConnectPerson.FirstName} {ConnectPerson.LastName}'s Shares";
|
||||
RefreshShareList();
|
||||
RefreshConnectedList();
|
||||
}
|
||||
|
||||
private void RefreshShareList()
|
||||
{
|
||||
var dataSource = _personStockFacade.GetUnconnectedShares();
|
||||
lstShares.DataSource = dataSource;
|
||||
lstShares.DisplayMember = "StockId";
|
||||
lstShares.ValueMember = "Id";
|
||||
lstShares.Refresh();
|
||||
}
|
||||
|
||||
private void RefreshConnectedList()
|
||||
{
|
||||
var dataSource = _personStockFacade.GetAllSharesConnectedTo(ConnectPerson.Id);
|
||||
lstPersConnected.DataSource = dataSource;
|
||||
lstPersConnected.DisplayMember = "StockId";
|
||||
lstPersConnected.ValueMember = "Id";
|
||||
lstPersConnected.Refresh();
|
||||
}
|
||||
|
||||
|
||||
private void btnConnect_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (lstShares.SelectedIndex != -1)
|
||||
{
|
||||
PersonStock ps = new PersonStock();
|
||||
ps.PersonId = ConnectPerson.Id;
|
||||
ps.StockId = int.Parse(lstShares.SelectedValue.ToString());
|
||||
_stockPersonConnect.SavePersonStockConnection(ps);
|
||||
RefreshShareList();
|
||||
RefreshConnectedList();
|
||||
}
|
||||
}
|
||||
|
||||
private void btnDisconnect_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (lstPersConnected.SelectedIndex != -1)
|
||||
{
|
||||
PersonStock ps = new PersonStock();
|
||||
ps.PersonId = ConnectPerson.Id;
|
||||
ps.StockId = int.Parse(lstPersConnected.SelectedValue.ToString());
|
||||
_stockPersonConnect.RemoveConnectedShare(ps);
|
||||
RefreshShareList();
|
||||
RefreshConnectedList();
|
||||
}
|
||||
}
|
||||
|
||||
private void btnClose_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.Close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user