Added in Manager SelectedAccount and SelectedCustomer for DataBinding AND Upgrade DataBinding on BalancePage and SwitchAccountPage

pull/46/head
Titouan LOUVET 2 years ago
parent 28356ff073
commit 9cb4cbf91d

@ -14,6 +14,28 @@ namespace Banquale.Model
public List<Account> AccountList { get; private set; }
public Customer SelectedCustomer
{
get => selectedCustomer;
set
{
selectedCustomer = value;
}
}
private Customer selectedCustomer;
public Account SelectedAccount
{
get => selectedAccount;
set
{
selectedAccount = value;
}
}
private Account selectedAccount;
public IPersistenceManager Persistence { get; set; }
public Manager(IPersistenceManager persistence) {

@ -22,7 +22,7 @@ namespace Banquale.Stub
Transactions Transactions12 = new Transactions(0, 105, Account1, "Test", new DateTime(2023, 8, 17, 18, 54, 35));
Transactions Transactions13 = new Transactions(0, 187, Account1, "Test", new DateTime(2023, 5, 3, 8, 39, 49));
Transactions Transactions2 = new Transactions(1, 54.99, Account2, "Test", new DateTime(2022, 8, 15));
Transactions Transactions3 = new Transactions(0, 1000, Account3, "Test", new DateTime(2020, 9, 1));
Transactions Transactions3 = new Transactions(0, 1000, Account3, "Test", new DateTime(2020, 9, 1, 20, 00, 00));
Debug.WriteLine(Customer1.Name, Customer1.Password);
List<Customer> CustomersList = new List<Customer>();
@ -36,37 +36,38 @@ namespace Banquale.Stub
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions2);
Account1.TransactionsList.Add(Transactions3);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions1);
Account1.TransactionsList.Add(Transactions12);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions2);
Account1.TransactionsList.Add(Transactions3);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions1);
Account1.TransactionsList.Add(Transactions12);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions2);
Account1.TransactionsList.Add(Transactions3);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions1);
//Account1.TransactionsList.Add(Transactions12);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions2);
//Account1.TransactionsList.Add(Transactions3);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions1);
//Account1.TransactionsList.Add(Transactions12);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions2);
//Account1.TransactionsList.Add(Transactions3);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
//Account1.TransactionsList.Add(Transactions13);
Account2.TransactionsList.Add(Transactions2);

@ -35,11 +35,11 @@
HorizontalOptions="Center">
<Label
Text="{Binding CustomersList[currentId].Name}"
Text="{Binding Name}"
Margin="0, 0, 5, 0"/>
<Label
Text="{Binding CustomersList[currentId].FirstName}"
Text="{Binding FirstName}"
Margin="5, 0, 0, 0"/>
</HorizontalStackLayout>
@ -52,14 +52,58 @@
Text="Solde"
Margin="0, 0, 50, 0"/>
<Label
Text="{Binding CustomersList[0].AccountsList[0].Balance, StringFormat='{0} €'}"
Text="{Binding Balance, StringFormat='{0} €'}"
Grid.Column="1"
Margin="50, 0, 5, 0"/>
</Grid>
</Grid>
<local:BalanceView Grid.Row="1"/>
<ListView ItemsSource="{Binding TransactionsList}" Grid.Row="1"
SelectionMode="None">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<Grid
ColumnDefinitions="40, 3*, *"
Margin="20, 5, 20, 5"
HorizontalOptions="Fill">
<Grid.GestureRecognizers>
<TapGestureRecognizer
Tapped="Transaction_Clicked"
NumberOfTapsRequired="1" />
</Grid.GestureRecognizers>
<Image Source="dotnet_bot.png"
Grid.Column="0"
MaximumHeightRequest="30"/>
<Label
Text="{Binding Date, StringFormat='{0:f}'}"
Grid.Column="1"
VerticalOptions="Center"
Margin="10, 0, 0, 0"/>
<Label
Text="{Binding Sum, StringFormat='{0} €'}"
Grid.Column="2"
VerticalOptions="Center"
HorizontalOptions="End"
Margin="0, 0, 20, 0"/>
</Grid>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</Grid>
</ContentPage>

@ -10,10 +10,15 @@ public partial class BalancePage : ContentPage
public BalancePage()
{
InitializeComponent();
BindingContext = Mgr;
BindingContext = Mgr.SelectedAccount;
//BindingContext = new Account(999, "Tatouille", "FR76 9161 9581 6296 8415 2361 004");
}
public async void Transaction_Clicked(System.Object sender, Microsoft.Maui.Controls.TappedEventArgs e)
{
await Shell.Current.Navigation.PushAsync(new TransactionsPage());
}
public async void Balance_Clicked(object sender, EventArgs e)
{
await Shell.Current.Navigation.PushAsync(new NewPage1());

@ -28,6 +28,14 @@ public partial class ConnectionPage : ContentPage
return;
}
//if(int.Parse(currentId) in Mgr.CustomersList) // FONCTIONNE PAS
//{
// Mgr.SelectedCustomer = Mgr.CustomersList[int.Parse(currentId)];
//}
Mgr.SelectedCustomer = Mgr.CustomersList[0]; // 0 à changer
await Navigation.PushModalAsync(new SwitchAccountPage());
}

@ -11,10 +11,34 @@
VerticalOptions="Center"
HorizontalOptions="Center">
<local:SwitchAccountView/>
<local:SwitchAccountView/>
<ListView ItemsSource="{Binding AccountsList}"
SelectionMode="None" Grid.Row="1">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<VerticalStackLayout>
<Button Text="{Binding Name, StringFormat=' Compte Personnel \n {0}'}"
Clicked="Transfer_Clicked"
MinimumHeightRequest="165"
MinimumWidthRequest="100"
FontSize="Large"
Margin="0, 10, 0, 10"
VerticalOptions="Center"/>
</VerticalStackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
<Button Text="Déconnexion"
BorderWidth="2"

@ -1,12 +1,23 @@
using Banquale.Model;
namespace Banquale.Views;
public partial class SwitchAccountPage : ContentPage
{
public SwitchAccountPage()
public Manager Mgr => (App.Current as App).MyManager;
public SwitchAccountPage()
{
InitializeComponent();
BindingContext = Mgr.SelectedCustomer;
}
public async void Transfer_Clicked(object sender, EventArgs e)
{
Mgr.SelectedAccount = Mgr.SelectedCustomer.AccountsList[0]; // 0 à changer
await Shell.Current.GoToAsync("//balance");
}
async void DisconnectionClicked(System.Object sender, System.EventArgs e)
{
await Shell.Current.GoToAsync("///connection");

Loading…
Cancel
Save