public static Boolean SaveProduit(Produit pModel) { bool estModifie; using (MontRealEstateEntities db = new MontRealEstateEntities()) { //Option lorsque certain champs ne doit pas etre updatés if (pModel.Id > 0) { Produit modelToSave = Produit.GetById(pModel.Id, db); modelToSave.CategorieProduitId = pModel.CategorieProduitId; modelToSave.UtilisateurId = pModel.UtilisateurId; modelToSave.Nom = pModel.Nom; modelToSave.Description = pModel.Description; modelToSave.PrixParJour = pModel.PrixParJour; modelToSave.Adresse = pModel.Adresse; modelToSave.Ville = pModel.Ville; modelToSave.Province = pModel.Province; modelToSave.Pays = pModel.Pays; modelToSave.CodePostal = pModel.CodePostal; // modelToSave.DerniereDateLocation = pModel.DerniereDateLocation; modelToSave.NbMaxPersonnes = pModel.NbMaxPersonnes; modelToSave.NbChambres = pModel.NbChambres; modelToSave.SejourMinimum = pModel.SejourMinimum; modelToSave.NbChambres = pModel.NbPhotosMax; modelToSave.DateModification = DateTime.Now; Outils.ConnectWebSecurity(); modelToSave.ModifiePar = WebSecurity.CurrentUserId; estModifie = true; } else { //logique suplementaire dans le cas d'un New Outils.ConnectWebSecurity(); pModel.UtilisateurId = WebSecurity.CurrentUserId; pModel.DateCreation = DateTime.Now; pModel.DateModification = DateTime.Now; pModel.CreePar = WebSecurity.CurrentUserId; pModel.ModifiePar = WebSecurity.CurrentUserId; pModel.Actif = true; pModel.NbPhotosMax = 6; db.Produits.AddObject(pModel); estModifie = false; } db.SaveChanges(); FonctionnalitesProduit.SaveFonctionnaliteProduit(pModel.FonctionnalitesProduit); foreach (NotesProduit note in pModel.NotesProduits) { NotesProduit.Save(note); } foreach (PhotosProduit photo in pModel.PhotosProduits) { PhotosProduit.SavePhotoProduit(photo); } } return(true); }
/// Recuperer un favoris specifique public static NotesProduit GetById(int pUserId, int pProdId, MontRealEstateEntities pDb = null) { bool dbEstNull = false; if (pDb == null) { pDb = new MontRealEstateEntities(); dbEstNull = true; } NotesProduit rValue = pDb.NotesProduits.Where(m => m.UtilisateurId == pUserId && m.ProduitId == pProdId).FirstOrDefault(); if (dbEstNull) { pDb.Dispose(); } return(rValue); }
//==========DELETES=================// /// Supprimer un faboris specifique public static bool DeleteById(int pUserId, int pProdId) { bool retour = false; if (pUserId > 0 && pProdId > 0) { using (MontRealEstateEntities db = new MontRealEstateEntities()) { NotesProduit notesProduit = GetById(pUserId, pProdId, db); if (notesProduit != null) { db.DeleteObject(notesProduit); db.SaveChanges(); retour = true; } } } return(retour); }
//==========INSERTS ET UPDATES=================// public static void Save(NotesProduit pModel) { using (MontRealEstateEntities db = new MontRealEstateEntities()) { NotesProduit notesProduitModif = GetById(pModel.UtilisateurId, pModel.ProduitId, db); //modification if (notesProduitModif != null) { notesProduitModif.Confort = pModel.Confort; notesProduitModif.Proprete = pModel.Proprete; notesProduitModif.Localisation = pModel.Localisation; notesProduitModif.Valeur = pModel.Valeur; } else { //add db.NotesProduits.AddObject(pModel); } //enregistrer les modifications db.SaveChanges(); } }