Reslve transactionList bug, add Save on all change

pull/69/head
Titouan LOUVET 2 years ago
parent 55ea5ef387
commit c41ac7d0f6

@ -34,6 +34,7 @@
<!-- Raw Assets (also remove the "Resources\Raw" prefix) -->
<MauiAsset Include="Resources\Raw\**" LogicalName="%(RecursiveDir)%(Filename)%(Extension)" />
<Compile Remove="Views\Converters\ReverseList.cs" />
<MauiImage Include="Resources\Images\sources\accounts.svg" />
<MauiImage Include="Resources\Images\sources\dotnet_bot.svg" />
<MauiImage Include="Resources\Images\sources\help.svg" />

@ -11,6 +11,9 @@ using System.Threading.Tasks;
namespace Banquale.DataContractPersistance
{
// Nous ne pouvons utiliser la persitance avec JSON dans notre application car la persitance avec JSON n'accepte pas
// les références, nous sommes pourtant obligé d'utiliser des références pour la sauvegarde des transactions
public class DataContractPersJSON : IPersistenceManager
{

@ -1,4 +1,5 @@
using Model;
using Android.Telephony;
using Model;
namespace Banquale.Views.Balance;
@ -13,4 +14,9 @@ public partial class BalancePage : ContentPage
BindingContext = Mgr.SelectedAccount;
}
public void RefreshPage()
{
BindingContext = Mgr.SelectedAccount;
}
}

@ -18,6 +18,7 @@ public partial class CategoryView : ContentView
if (selectedItem != null)
{
Mgr.SelectedTransaction.ChangeCategory(selectedItem);
Mgr.Persistence.DataSave(Mgr.CustomersList, Mgr.Consultant);
await Shell.Current.Navigation.PopAsync();
}

@ -13,7 +13,7 @@ public partial class HelpPage : ContentPage
{
if(Subject.Text.Length >= 50 || Description.Text.Length >= 200)
{
DisplayAlert("Erreur", "Trop de caracteres", "OK");
await DisplayAlert("Erreur", "Trop de caracteres", "OK");
}
else
{

@ -1,4 +1,5 @@
using System.Diagnostics;
using Banquale.Views.Balance;
using Model;
namespace Banquale.Views;
@ -26,6 +27,7 @@ public partial class SwitchAccountPage : ContentPage
}
else
{
//BalancePage.re
await Shell.Current.GoToAsync("//balance");
}
}

@ -23,6 +23,7 @@ public partial class TransactionsPage : ContentPage
async void Objection_Clicked(System.Object sender, System.EventArgs e)
{
Mgr.SelectedTransaction.IsOpposition = true;
Mgr.Persistence.DataSave(Mgr.CustomersList, Mgr.Consultant);
await Shell.Current.Navigation.PopAsync();
}

@ -37,6 +37,7 @@ public partial class RequestPage : ContentPage
return;
}
acc.DoTransactions(acc, Convert.ToDouble(Sum.Text), true); // Type true car c'est un virement que le SelectedAccount reçoit
Mgr.Persistence.DataSave(Mgr.CustomersList, Mgr.Consultant);
await Shell.Current.Navigation.PopAsync();
return;
}

@ -35,6 +35,7 @@ public partial class TransferPage : ContentPage
return;
}
Mgr.SelectedAccount.DoTransactions(acc, Convert.ToDouble(Sum.Text), true); // Type true car c'est un virement
Mgr.Persistence.DataSave(Mgr.CustomersList, Mgr.Consultant);
await Shell.Current.Navigation.PopAsync();
return;
}

@ -132,13 +132,13 @@ namespace Model
if (type) // si le type est True => c'est un débit, on doit donc ajouter la transaction pour l'autre compte
{
Transaction transaction = new Transaction(type, sum, involvedAccount, DateTime.Now);
TransactionsList.Add(transaction);
TransactionsList.Insert(0, transaction);
Balance = Balance - sum;
involvedAccount.DoTransactions(this, sum, !type);
}
else // Sinon, c'est un crédit, on a juste à l'ajouter à notre liste de transactions
{
TransactionsList.Add(new Transaction(type, sum, involvedAccount, DateTime.Now));
TransactionsList.Insert(0, new Transaction(type, sum, involvedAccount, DateTime.Now));
Balance = Balance + sum;
}
}

Loading…
Cancel
Save