Пример #1
0
        /// <summary>
        /// Ajoute ou modifie en base un échéancier en base
        /// </summary>
        /// <param name="echeancier">l'échéancier à sauvegardé (Id à zéro pour un ajout)</param>
        /// <returns>l'id de l'échéancier</returns>
        public async Task <int> SaveEcheancier(Echeancier echeancier)
        {
            if (echeancier.Id == 0)
            {
                var echeancierId = await Bdd.Connection.Table <Echeancier>().OrderByDescending(x => x.Id).FirstOrDefaultAsync();

                var id = 1;
                if (echeancierId != null)
                {
                    id = echeancierId.Id + 1;
                }
                echeancier.Id   = id;
                echeancier.Date = new DateTime(echeancier.Date.Year, echeancier.Date.Month, echeancier.Date.Day);
                if (echeancier.IsDateLimite)
                {
                    echeancier.DateLimite = new DateTime(echeancier.DateLimite.Year, echeancier.DateLimite.Month, echeancier.DateLimite.Day);
                }

                await Bdd.AjouterDonnee(echeancier);

                await RoamingEcheancierBusiness.AjouterEcheancierRoaming(echeancier);
            }
            else
            {
                await Bdd.UpdateDonnee(echeancier);

                await RoamingEcheancierBusiness.ModifierEcheancierRoaming(echeancier);
            }
            return(echeancier.Id);
        }
Пример #2
0
        /// <summary>
        /// Supprimer un échéancier de la base de donnée
        /// </summary>
        /// <param name="idEcheancier">l'id de l'échéancier à supprimer</param>
        /// <returns>la task</returns>
        public async Task SupprimerEcheancier(int idEcheancier)
        {
            var obj = await Bdd.Connection.Table <Echeancier>().Where(x => x.Id == idEcheancier).FirstOrDefaultAsync();

            await Bdd.DeleteDonnee(obj);

            await RoamingEcheancierBusiness.SupprimerEcheancier(obj);
        }
Пример #3
0
        /// <summary>
        /// active ou désactive la synchro du roaming des catégories
        /// </summary>
        /// <returns>la task</returns>
        public async Task ChangeSynchroEcheancier()
        {
            await _applicationBusiness.SetRoamingEcheancierActive(IsRoamingEcheancierActive);

            App.IsRoamingEcheancierActive = IsRoamingEcheancierActive;
            if (!IsRoamingEcheancierActive)
            {
                await RoamingEcheancierBusiness.DeleteRoaming();
            }
            else
            {
                await RoamingEcheancierBusiness.ReCreerFichierRoaming();
            }
        }
Пример #4
0
        /// <summary>
        /// Recalcul les infos d'espace pour le romaing
        /// </summary>
        private async Task CalculerEspaceDispo()
        {
            var espaceTotal = await RoamingUtils.GetEspaceRoamingOccupePourcent();

            EspaceDispoTextBlock.Text       = ResourceLoader.GetForCurrentView().GetString("EspaceDispo") + " " + espaceTotal + " %";
            EspaceDispoTextBlock.Foreground = espaceTotal >= ContexteStatic.EspaceMaxAutoriseRoaming ? new SolidColorBrush(Color.FromArgb(255, 255, 0, 0)) : new SolidColorBrush(Color.FromArgb(255, 0, 0, 0));
            EspaceCompteOccupe.Text         = await RoamingCompteBusiness.GetEspaceFichierOccupePourcent() + " %";

            EspaceMouvementOccupe.Text = await RoamingMouvementBusiness.GetEspaceFichierOccupePourcent() + " %";

            EcheancierCheckBox.Content = await RoamingEcheancierBusiness.GetEspaceFichierOccupePourcent() + " %";

            CategorieCheckBox.Content = await RoamingCategorieBusiness.GetEspaceFichierOccupePourcent() + " %";
        }
Пример #5
0
        /// <summary>
        /// Efface toute les données devant être restauré
        /// </summary>
        /// <returns>la task</returns>
        public async Task DeleteForRestauration()
        {
            await Bdd.Connection.DropTableAsync <Banque>();

            await Bdd.Connection.DropTableAsync <Compte>();

            await Bdd.Connection.DropTableAsync <Echeancier>();

            await Bdd.Connection.DropTableAsync <Mouvement>();

            await Bdd.Connection.DropTableAsync <Categorie>();

            await Bdd.Connection.DropTableAsync <SousCategorie>();

            await Bdd.Connection.DropTableAsync <SoldeInitial>();

            await Bdd.Connection.CreateTableAsync <Banque>();

            await Bdd.Connection.CreateTableAsync <Compte>();

            await Bdd.Connection.CreateTableAsync <Echeancier>();

            await Bdd.Connection.CreateTableAsync <Mouvement>();

            await Bdd.Connection.CreateTableAsync <Categorie>();

            await Bdd.Connection.CreateTableAsync <SousCategorie>();

            await Bdd.Connection.CreateTableAsync <SoldeInitial>();

            await RoamingCategorieBusiness.DeleteRoaming();

            await RoamingCompteBusiness.DeleteRoaming();

            await RoamingEcheancierBusiness.DeleteRoaming();

            await RoamingMouvementBusiness.DeleteRoaming();
        }
Пример #6
0
        /// <summary>
        /// Créer la base de donnée à partir des données présentes dans le fihier Roaming
        /// </summary>
        /// <returns>las task</returns>
        public async Task CreerBaseDeDonneeFromRoaming(AppareilEnum appareil)
        {
            //creer la base
            await CreerBase(appareil);

            if (appareil == AppareilEnum.ModeAppareilPrincipal)
            {
                //ajout des banques et des comptes
                var listeBanques = await RoamingCompteBusiness.GetListeBanques();

                foreach (var banque in listeBanques)
                {
                    // ajout de la banque
                    var banqueId = await Bdd.Connection.Table <Banque>().OrderByDescending(x => x.Id).FirstOrDefaultAsync();

                    var idbanque = 1;
                    if (banqueId != null)
                    {
                        idbanque = banqueId.Id + 1;
                    }
                    banque.Id = idbanque;
                    await Bdd.AjouterDonnee(banque);

                    //ajout des comtpes
                    foreach (var compte in banque.ListeCompte)
                    {
                        var compteId = await Bdd.Connection.Table <Compte>().OrderByDescending(x => x.Id).FirstOrDefaultAsync();

                        var id = 1;
                        if (compteId != null)
                        {
                            id = compteId.Id + 1;
                        }
                        compte.Id       = id;
                        compte.IdBanque = banque.Id;
                        await Bdd.AjouterDonnee(compte);
                    }
                }

                //Ajout des échéanciers
                var listeEcheancier = await RoamingEcheancierBusiness.GetAllEcheancier();

                foreach (var echeancier in listeEcheancier)
                {
                    await Bdd.AjouterDonnee(echeancier);
                }

                //ajout des catégories perso
                var listeCategorie = await RoamingCategorieBusiness.GetCategorieRoaming();

                foreach (var category in listeCategorie)
                {
                    await Bdd.AjouterDonnee(category);
                }

                var listeSousCategorie = await RoamingCategorieBusiness.GetSousCategorieRoaming();

                foreach (var sousCategory in listeSousCategorie)
                {
                    await Bdd.AjouterDonnee(sousCategory);
                }
            }
        }
Пример #7
0
        /// <summary>
        /// Ajoute une échéancier provenant de l'outil de restauration
        /// </summary>
        /// <param name="echeancier"> l'échéancier à ajouter</param>
        /// <returns>la task</returns>
        public async Task AjouterEcheancierFmRestauration(Echeancier echeancier)
        {
            await Bdd.AjouterDonnee(echeancier);

            await RoamingEcheancierBusiness.AjouterEcheancierRoaming(echeancier);
        }