private ResultatBienImmobilier OperationLireDetailsBienImmobilier(SQL.GestionnaireBDD bdd, Tools.Log log, string id, params object[] nonUtilise)
        {
            ResultatBienImmobilier resultat = new ResultatBienImmobilier();

            // Conversion de l'identifiant
            int idBien;

            if (!int.TryParse(id, out idBien))
            {
                Tools.GestionnaireOperation.GererErreur(resultat, log, "L'identifiant du bien immobilier à charger est invalide !");
                return(resultat);
            }

            // Lecture du bien immobilier
            BienImmobilier b = bdd.LireDetailsBienImmobilier(idBien);

            if (b == null)
            {
                Tools.GestionnaireOperation.GererErreur(resultat, log, bdd.ErrorMessage);
                return(resultat);
            }
            resultat.Bien = b;

            return(resultat);
        }
        internal static TResult ExecuterOperation <TResult, TParam1, TParam2>
            (Operation <
                TResult,
                TParam1,
                TParam2> operation,
            TParam1 parametre,
            params TParam2[] autresParametres
            )
            where TResult : DataContracts.ResultatOperation, new()
        {
            SQL.GestionnaireBDD bdd      = new SQL.GestionnaireBDD(Agence.DATABASE_PATH);
            TResult             resultat = null;
            Log l = new Log();

            // Vérification qu'il n'y a pas eu d'erreur à l'initialisation de la base de données
            if (bdd.ErrorMessage != "")
            {
                resultat = new TResult();
                Tools.GestionnaireOperation.GererErreur(resultat, l, bdd.ErrorMessage);
                return(resultat);
            }

            // Connexion à la base de données
            if (!bdd.ConnexionBDD())
            {
                resultat = new TResult();
                Tools.GestionnaireOperation.GererErreur(resultat, l, bdd.ErrorMessage);
                return(resultat);
            }

            // Exécution de l'opération passée en paramètres
            try
            {
                resultat = operation.Invoke(bdd, l, parametre, autresParametres);
            }
            catch (Exception ex)
            {
                if (resultat == null)
                {
                    resultat = new TResult();
                }
                Tools.GestionnaireOperation.GererErreur(resultat, l, ex);
            }
            finally
            {
                // Déconnexion à la base de données
                if (!bdd.DeconnexionBDD())
                {
                    if (resultat == null)
                    {
                        resultat = new TResult();
                    }
                    Tools.GestionnaireOperation.GererErreur(resultat, l, bdd.ErrorMessage);
                }
            }

            return(resultat);
        }
        private ResultatListeBiensImmobiliers OperationLireListeBiensImmobiliers(SQL.GestionnaireBDD bdd, Tools.Log log, CriteresRechercheBiensImmobiliers criteres, params int?[] parametres)
        {
            ResultatListeBiensImmobiliers resultat = new ResultatListeBiensImmobiliers();

            // Chargement des paramètres
            int?page = null, nbBiens = null;

            if (parametres.Length > 0)
            {
                page = parametres[0];
            }
            if (parametres.Length > 1)
            {
                nbBiens = parametres[1];
            }

            if (criteres == null)
            {
                Tools.GestionnaireOperation.LireParametreURI("criteres", out criteres);
            }

            if (page == null)
            {
                int tmp;
                if (Tools.GestionnaireOperation.LireParametreURIEntier("page", out tmp))
                {
                    page = tmp;
                }
            }

            if (nbBiens == null)
            {
                int tmp;
                if (Tools.GestionnaireOperation.LireParametreURIEntier("nbBiens", out tmp))
                {
                    nbBiens = tmp;
                }
            }

            // Lecture des biens immobiliers
            ListeBiensImmobiliers l = bdd.LireContenuBDD(criteres, page, nbBiens);

            if (l == null)
            {
                Tools.GestionnaireOperation.GererErreur(resultat, log, bdd.ErrorMessage);
                return(resultat);
            }
            resultat.Liste.List.AddRange(l.List);
            resultat.Liste.Page        = l.Page;
            resultat.Liste.PagesCount  = l.PagesCount;
            resultat.Liste.Start       = l.Start;
            resultat.Liste.SelectCount = l.SelectCount;
            resultat.Liste.TakeCount   = l.TakeCount;
            resultat.Liste.TotalCount  = l.TotalCount;

            return(resultat);
        }
示例#4
0
        private ResultatBool OperationModifierBienImmobilier(SQL.GestionnaireBDD bdd, Tools.Log log, BienImmobilier bien, params object[] nonUtilise)
        {
            ResultatBool resultat = new ResultatBool();

            // Mise à jour du bien immobilier
            resultat.Valeur = bdd.ModifierBienImmobilier(bien);
            if (!resultat.Valeur)
            {
                Tools.GestionnaireOperation.GererErreur(resultat, log, bdd.ErrorMessage);
                return(resultat);
            }

            return(resultat);
        }
示例#5
0
        private ResultatBool OperationSupprimerBienImmobilier(SQL.GestionnaireBDD bdd, Tools.Log log, string id, params object[] nonUtilise)
        {
            ResultatBool resultat = new ResultatBool();

            // Conversion de l'identifiant
            int idBien;

            if (!int.TryParse(id, out idBien))
            {
                Tools.GestionnaireOperation.GererErreur(resultat, log, "L'identifiant du bien immobilier à charger est invalide !");
                return(resultat);
            }

            // Suppression du bien immobilier
            resultat.Valeur = bdd.SupprimerBienImmobilier(idBien);
            if (!resultat.Valeur)
            {
                Tools.GestionnaireOperation.GererErreur(resultat, log, bdd.ErrorMessage);
                return(resultat);
            }

            return(resultat);
        }