/// <summary> /// Supprime une sous catégorie /// </summary> /// <returns>la task</returns> public async Task SuppressionSousCategorie() { await _categorieBusiness.DeleteSousCategorie(SelectedSousCategorie.Id); await ContexteAppli.GenerateCategorieMouvement(); GenererListeCategories(); }
/// <summary> /// Change la langue de l'application /// </summary> /// <param name="langue">la nouvelle langue</param> public async Task ChangeLangueApplication(ListeLangues.LanguesStruct langue) { Strings.ListeLangues.ChangeLangueAppli(langue); await _applicationBusiness.ChangeIdLangue(langue); DeviseUtils.GeneratePays(); DeviseUtils.GenerateDevise(); await ContexteAppli.GenerateCategorieMouvement(); }
/// <summary> /// Charge les données de l'application et ouvre le shell /// </summary> public static async void OpenShell() { //Chargement des données var applicationBusiness = new ApplicationBusiness(); await applicationBusiness.Initialization; //mise en place de la configuration await applicationBusiness.CheckVersion(); ModeApp = await applicationBusiness.GetModeAppli(); IsRoamingCategorieActive = await applicationBusiness.GetRoamingCategorieActive(); IsRoamingEcheancierActive = await applicationBusiness.GetRoamingEcheancierActive(); IdCouleurBackground = await applicationBusiness.GetIdCouleurBackGround(); var idLangue = await applicationBusiness.GetLangueAppli(); if (!string.IsNullOrWhiteSpace(idLangue)) { ListeLangues.ChangeLangueAppli(idLangue); } //génère les catégories await ContexteAppli.GenerateCategorieMouvement(); //a n'éxécuter que s'il s'agit de l'appareil principal if (ModeApp == AppareilEnum.ModeAppareilPrincipal) { //charge les mouvements donné par les appareils secondaires await ContexteAppli.ChargerMouvementRoaming(); //controle les échéanciers await ContexteAppli.ControleEcheancier(); } //sauvegarde den tant que dernier démarrage await applicationBusiness.SetDateDernierDemarrage(); //Chargement de la page principale puis de sa frame var rootFrame = Window.Current.Content as Frame; rootFrame = new Frame(); Window.Current.Content = rootFrame; rootFrame.Navigate(typeof(Shell)); AppShell = rootFrame.Content as Shell; AppShell.NavigateFrame(typeof(AcceuilView)); }
public async void Current_DataChanged(ApplicationData sender, object args) { try { if (AppShell != null) { await ContexteAppli.ChargerMouvementRoaming(); await ContexteAppli.GenerateCategorieMouvement(); } } catch (Exception) { } }
/// <summary> /// Sauvegarde la modification ou l'ajout de la donnée /// </summary> /// <returns>les erreurs sinon une chaine vide</returns> public async Task <string> Save() { var retour = Validate(); if (string.IsNullOrWhiteSpace(retour)) { LibelleSelected = StringUtils.FirstLetterUpper(LibelleSelected); switch (ModeOuverture) { case ModeOuvertureGestionCategorieEnum.OuvertureAjouterCategorie: await _categorieBusiness.AddCategorie(LibelleSelected); break; case ModeOuvertureGestionCategorieEnum.OuvertureAjouterSousCategorie: await _categorieBusiness.AddSousCategorie(LibelleSelected, SelectedCategorie.Id, SelectedCategorie.IsCategPerso); break; case ModeOuvertureGestionCategorieEnum.OuvertureModifierCategorie: SelectedCategorie.Libelle = LibelleSelected; await _categorieBusiness.ModifierCategorie(SelectedCategorie); break; case ModeOuvertureGestionCategorieEnum.OuvertureModifierSousCategorie: SelectedSousCategorie.Libelle = LibelleSelected; await _categorieBusiness.ModifierSousCategorie(SelectedSousCategorie); break; } await ContexteAppli.GenerateCategorieMouvement(); GenererListeCategories(); AnnulerModifAjout(); } return(retour); }
/// <summary> /// importe les données /// </summary> /// <returns>true si ok</returns> public async Task <bool> Restauration() { try { //deserialization string xml; if (IsMdp) { var buffer = await FileIO.ReadBufferAsync(Fichier); byte[] inFile = buffer.ToArray(); xml = CryptUtils.AesDecryptByteArrayToString(inFile, MotDePasse, MotDePasse); } else { xml = await FileIO.ReadTextAsync(Fichier, Windows.Storage.Streams.UnicodeEncoding.Utf8); } var xsb = new XmlSerializer(typeof(SauvegardeModel)); var rd = new StringReader(xml); var resultImport = xsb.Deserialize(rd) as SauvegardeModel; //effacement des données await _applicationBusiness.DeleteForRestauration(); //restauration //appli await _applicationBusiness.ChangeIdCouleurBackground(resultImport.Application.IdBackGround); await _applicationBusiness.ChangeIdLangue(ListeLangues.GetLangueById(resultImport.Application.IdLangue)); ListeLangues.ChangeLangueAppli(resultImport.Application.IdLangue); //banque et compte foreach (var banque in resultImport.ListeBanque) { await _banqueBusiness.AjouterBanqueFmRestauration(banque); foreach (var compte in banque.ListeCompte) { await _compteBusiness.AjouterCompteFmRestauration(compte); } } //solde init foreach (var soldeInitial in resultImport.ListeSoldeInit) { await _compteBusiness.AjouterSoldeInitialFmRestauration(soldeInitial); } //categorie foreach (var category in resultImport.ListeCategorie) { await _categorieBusiness.AjouterCategorieFmRestauration(category); } //sous categorie foreach (var sousCategory in resultImport.ListeSousCategorie) { await _categorieBusiness.AjouterSousCategorieFmRestauration(sousCategory); } //échéancier foreach (var echeancier in resultImport.ListeEcheancier) { await _echeancierBusiness.AjouterEcheancierFmRestauration(echeancier); } //mouvement foreach (var mouvement in resultImport.ListeMouvement) { await _mouvementBusiness.AjouterMouvementFmRestauration(mouvement); } //regénère les catégories await ContexteAppli.GenerateCategorieMouvement(); } catch (Exception) { return(false); } return(true); }