Ejemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public static async Task ReCreerFichierRoaming()
        {
            await DemarrageRoaming();


            var echeancierBusiess = new EcheancierBusiness();
            await echeancierBusiess.Initialization;

            _roamingEcheancier.ListeEcheancier = new List <Echeancier>(await echeancierBusiess.GetEcheancier());

            await SaveFile();
        }
Ejemplo n.º 2
0
        /// <summary>
        /// exporte les données
        /// </summary>
        /// <returns>true si ok</returns>
        public async Task <bool> Sauvegarde()
        {
            try
            {
                var data = new SauvegardeModel
                {
                    Application =
                    {
                        IdLangue     = await _applicationBusiness.GetLangueAppli(),
                        IdBackGround = await _applicationBusiness.GetIdCouleurBackGround()
                    },
                    ListeCategorie     = await _categorieBusiness.GetCategoriePerso(),
                    ListeSousCategorie = await _categorieBusiness.GetSousCategoriesPerso(),
                    ListeBanque        = await _compteBusiness.GetResumeCompte(),
                    ListeEcheancier    = await _echeancierBusiness.GetEcheancier(),
                    ListeMouvement     = await _mouvementBusiness.GetListeMouvement(),
                    ListeSoldeInit     = await _compteBusiness.GetAllSoldeInitial()
                };

                var xs = new XmlSerializer(typeof(SauvegardeModel));
                var wr = new StringWriter();
                xs.Serialize(wr, data);

                if (IsMdp)
                {
                    var dataCrypt = CryptUtils.AesEncryptStringToByteArray(wr.ToString(), MotDePasse, MotDePasse);
                    await FileIO.WriteBytesAsync(Fichier, dataCrypt);
                }
                else
                {
                    await FileIO.WriteTextAsync(Fichier, wr.ToString(), Windows.Storage.Streams.UnicodeEncoding.Utf8);
                }
            }
            catch (Exception)
            {
                return(false);
            }

            return(true);
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Charge la liste des échéancier
 /// </summary>
 /// <returns>la task</returns>
 private async Task ChargerEcheancier()
 {
     ListeEcheancier = new ObservableCollection <Echeancier>(await _echeancierBusiness.GetEcheancier());
 }
Ejemplo n.º 4
0
        /// <summary>
        /// Met à jour le solde du compte en fonction de la date entrée
        /// </summary>
        /// <returns></returns>
        public async Task UpdateDateSoldeCompte()
        {
            //si on fait des prévisions dans le futur on doit prendre en compte les échéanciers
            if (DateSoldeCompte > DateTime.Today)
            {
                double rajouterAuSolde = 0;
                var    listeEcheancier = await _echeancierBusiness.GetEcheancier();

                ListeRajoutMouvement = new List <Mouvement>();
                var dateFictive = DateTime.Today;
                do
                {
                    if (listeEcheancier.Count(x => x.Date == dateFictive) > 0)
                    {
                        foreach (var echeancier in listeEcheancier.Where(x => x.Date == dateFictive))
                        {
                            if ((echeancier.IsDateLimite && echeancier.DateLimite < dateFictive.AddDays(1)) ||
                                !echeancier.IsDateLimite)
                            {
                                var mouv = new Mouvement
                                {
                                    Date                = new DateTime(dateFictive.Year, dateFictive.Month, dateFictive.Day, 0, 0, 0),
                                    Credit              = echeancier.Credit,
                                    Debit               = echeancier.Debit,
                                    Commentaire         = echeancier.Commentaire,
                                    IdCompte            = echeancier.IdCompte,
                                    IdType              = echeancier.IdType,
                                    IsPasse             = false,
                                    IdMouvementVirement = 0,
                                    IsTypePerso         = echeancier.IsTypePerso,
                                    Numero              = 0,
                                    ModeMouvement       = echeancier.ModeMouvement,
                                    Lock                = true
                                };
                                ListeRajoutMouvement.Add(mouv);
                                if (mouv.Debit > 0)
                                {
                                    rajouterAuSolde -= mouv.Debit;
                                }
                                if (mouv.Credit > 0)
                                {
                                    rajouterAuSolde += mouv.Credit;
                                }

                                echeancier.Date =
                                    EcheancierBusiness.GetNbJoursPeriodicite(
                                        (PeriodiciteEnum)echeancier.IdPeriodicite, echeancier.Date, echeancier.NbJours);
                            }
                        }
                    }

                    dateFictive = dateFictive.AddDays(1);
                } while (dateFictive <= DateSoldeCompte);

                await RecompterPage(ListeRajoutMouvement);
                await RecalculerSoldeCompte(rajouterAuSolde);
            }
            else
            {
                ListeRajoutMouvement.Clear();
                await RecompterPage(null);
                await RecalculerSoldeCompte(null);
            }
        }