示例#1
0
        private void attributionDuneSalleToolStripMenuItem_Click(object sender, EventArgs e)
        {
            List <Activite> lesActiviteSansSalle = new List <Activite>();
            Activite        act          = new Activite();
            List <Activite> lesActivites = new List <Activite>();

            lesActivites = act.InitActivite();

            foreach (Activite a in lesActivites)
            {
                if (string.IsNullOrEmpty(a.Salle))
                {
                    lesActiviteSansSalle.Add(a);
                }
            }

            if (lesActiviteSansSalle.Count != 0)
            {
                FormAtributionSalle = new AttributionSalle();
                fermerFormFille();
                FormAtributionSalle.Text      = "Attribuer une salle";
                FormAtributionSalle.MdiParent = this;
                FormAtributionSalle.Show();
            }
            else
            {
                MessageBox.Show("Toutes les activitées ont deja des salles");
            }
        }
示例#2
0
        /// <summary>
        /// Fait un Read dans la BD sur la table Activite
        /// </summary>
        /// <param name="idActivite">l'id de l'activite que l'on veut read</param>
        /// <returns>une Activite; null sinon</returns>
        public Activite Read(int idActivite)
        {
            Activite activiteModel = null;

            try {
                using (MySqlConnection connection = connexion.getConnection()) {
                    connection.Open();
                    using (MySqlCommand command = new MySqlCommand(ActiviteService.READ_ACTIVITE_QUERY, connection)) {
                        command.Prepare();
                        command.Parameters.AddWithValue("id", idActivite);
                        using (MySqlDataReader reader = command.ExecuteReader()) {
                            if (reader.Read())
                            {
                                activiteModel             = new Activite();
                                activiteModel.id          = reader.GetInt32("id");
                                activiteModel.Nom         = reader.GetString("nom");
                                activiteModel.Prix        = reader.GetDouble("prix");
                                activiteModel.Description = reader.GetString("description");
                                activiteModel.Duree       = reader.GetInt32("duree");
                                activiteModel.Image       = reader.GetString("image");
                            }
                        }
                    }
                }
            }
            catch (MySqlException mysqlException) {
                System.Diagnostics.Debug.WriteLine(mysqlException.Message);
            }
            return(activiteModel);
        }
示例#3
0
        public async Task <IActionResult> PutActivite([FromRoute] string id, [FromBody] Activite activite)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != activite.NomActivite)
            {
                return(BadRequest());
            }

            _context.Entry(activite).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ActiviteExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
示例#4
0
文件: Utils.cs 项目: amrsoudy/ASP.NET
        public List <Activite> getListActivite()
        {
            List <Activite> listAct = new List <Activite>();


            SqlConnection connection = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;Integrated Security=True");
            SqlCommand    cmd        = new SqlCommand();

            cmd.CommandText = "GetListActivite";
            cmd.CommandType = System.Data.CommandType.StoredProcedure;
            cmd.Connection  = connection;
            SqlDataReader reader;

            connection.Open();

            reader = cmd.ExecuteReader();


            while (reader.Read())
            {
                Activite activite = new Activite();

                activite.nom   = reader["nom"].ToString();
                activite.duree = Int32.Parse(reader["duree"].ToString());
                activite.cout  = double.Parse(reader["cout"].ToString());

                listAct.Add(activite);
            }
            connection.Close();

            return(listAct);
        }
示例#5
0
        public ActionResult Create(Activite act, HttpPostedFileBase activiteResim)
        {
            if (ModelState.IsValid)
            {
                if (activiteResim != null)
                {
                    WebImage img      = new WebImage(activiteResim.InputStream);
                    FileInfo fotoinfo = new FileInfo(activiteResim.FileName);

                    string newfoto = Guid.NewGuid().ToString() + fotoinfo.Extension;
                    img.Resize(300, 200);
                    img.Save("~/Uploads/" + newfoto);
                    act.activiteResim = "/Uploads/" + newfoto;
                    act.active        = true;
                    db.Activites.Add(act);
                    db.SaveChanges();
                    return(RedirectToAction("Index", "AdminActivite"));
                }
                else
                {
                    ModelState.AddModelError("Fotoğraf", "Fotoğraf Seçiniz");
                }
            }

            return(View(act));
        }
示例#6
0
        public void accesseursTest()
        {
            Activite a = new Activite(new TypeActivite("Toto"), "lel", new TimeMartien(0), new TimeMartien(10), new Lieu(0, 0));

            Assert.AreEqual(a.getDescription(), "lel", "getDescription ne renvoie pas le bon résultat");
            Assert.AreEqual(a.getDuree(), new TimeMartien(10), "getDuree ne renvoie pas le bon résultat");
            Assert.AreEqual(a.getHeureDebut(), new TimeMartien(0), "getHeureDebut ne renvoie pas le bon résultat");
            Assert.AreEqual(a.getHeureFin(), new TimeMartien(10), "getHeureFin ne renvoie pas le bon résultat");
            Assert.AreEqual(a.getLieu(), new Lieu(0, 0), "getLieu ne renvoie pas le bon résultat");
            Assert.AreEqual(a.getNom(), "Toto", "getNom ne renvoie pas le bon résultat");
            Assert.AreEqual(a.getTypeActivite(), new TypeActivite("Toto"), "getTypeActivite ne renvoie pas le bon résultat");
            Assert.AreEqual(a.isActiviteExterieure(), false, "isActiviteExterieure ne renvoie pas le bon résultat");
            Assert.AreEqual(a.isExperience(), false, "isExperience ne renvoie pas le bon résultat");
            Assert.AreEqual(a.isExploration(), false, "isExploration ne renvoie pas le bon résultat");
            Assert.AreEqual(a.isModifiable(), true, "isModifiable ne renvoie pas le bon résultat");

            a.setDescription("ahah");
            a.setHeureDebut(new TimeMartien(1));
            a.setHeureFin(new TimeMartien(5));
            a.setLieu(new Lieu(50, -60));

            Assert.AreEqual(a.getDescription(), "ahah", "setDescription ne fonctionne pas");
            Assert.AreEqual(a.getDuree(), new TimeMartien(4), "setDuree ne fonctionne pas");
            Assert.AreEqual(a.getHeureDebut(), new TimeMartien(1), "setHeureDebut ne fonctionne pas");
            Assert.AreEqual(a.getHeureFin(), new TimeMartien(5), "setHeureFin ne fonctionne pas");
            Assert.AreEqual(a.getLieu(), new Lieu(50, -60), "setLieu ne fonctionne pas");

            String str = "";
            for (int i = 0; i < 500; ++i)
                str += i.ToString();

            bool texteOK = a.setDescription(str);
            Assert.IsFalse(texteOK, "La description dépasse les 400 caractères");
        }
        public async Task <ActionResult> DeleteConfirmedForLieu(int id)
        {
            try
            {
                Activite activite = await _applicationDbContext.Activites.FindAsync(id);

                BusinessRuleResult result = AssoBusinessRules.CanDelete(_applicationDbContext, activite);

                if (result.Success)
                {
                    _applicationDbContext.Activites.Remove(activite);
                    await _applicationDbContext.SaveChangesAsync();

                    return(Json(new { success = result.Success, message = result.Message }));
                }
                else
                {
                    return(Json(new { success = result.Success, message = result.Message }));
                }
            }
            catch (DbUpdateException ex)
            {
                return(Json(new { success = false, message = "Suppression impossible. Vérifiez si des Formules sont liées." }));
            }
        }
        public async Task <IActionResult> Post([FromBody] ActiviteViewModel activite)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    Activite _activite = Mapper.Map <Activite>(activite);
                    //_activite.Name = _activite.Name.ToUpper();

                    _activite.ProcessId = activite.ProcessId;
                    _activite.Process   = _unitOfWork.Process.GetSingleOrDefault(e => e.Id == activite.ProcessId);

                    _unitOfWork.Activite.Add(_activite);
                    await _unitOfWork.SaveChangesAsync();

                    return(Ok("OK"));
                }
                catch (Exception ex)
                {
                    return(BadRequest(ex.Data));
                }
            }
            else
            {
                return(BadRequest(ModelState));
            }
        }
示例#9
0
        public static string AnnulerActivite(int noActivite, int?noMembreCo, out Activite activite)
        {
            ClubContactContext db = new ClubContactContext();

            activite = db.Activites.Where(p => p.noActivite == noActivite).Include(m => m.listeAvisActivite).Include(m => m.listePhotosActivites).Include(m => m.membresParticipants).FirstOrDefault();

            if (activite == null)
            {
                return("Activité non trouvée.");
            }

            if (noMembreCo != null)
            {
                if (activite.noMembreOrganisateur != noMembreCo)
                {
                    return("Interdit");
                }
            }

            try
            {
                activite.annulee = true;

                db.SaveChanges();

                return("Reussi");
            }
            catch (Exception e)
            {
                throw Utilitaires.templateException("annulerActivite", "Objet Utilitaires.cs", "Suppression de l'activité n'as pas fonctionné.", e);
            }
        }
示例#10
0
        public void EqualsTest()
        {
            Activite a  = new Activite(new TypeActivite("Toto"), "lel", new TimeMartien(0), new TimeMartien(10), new Lieu(0, 0));
            Activite a2 = new Activite(new TypeActivite("Toto"), "lel", new TimeMartien(0), new TimeMartien(10), new Lieu(0, 0));

            Assert.IsTrue(a.Equals(a2), "La méthode Equals ne fonctionne pas");
        }
示例#11
0
        public void activiteEnCoursTest()
        {
            Activite a = new Activite(new TypeActivite("Toto"), "lel", new TimeMartien(0), new TimeMartien(10), new Lieu(0, 0));

            a.activiteEnCours();
            Assert.AreEqual(a.getEtat(), Constantes.ETAT_ENCOURS, "L'état de l'activité n'est pas le bon");
        }
示例#12
0
        public async Task <BaseResponseDto <ActiviteDto> > UpdateActivite(Guid Id, Activite activite)
        {
            BaseResponseDto <ActiviteDto> getResponse = new BaseResponseDto <ActiviteDto>();

            try
            {
                if (Id != null)
                {
                    Activite oldActivite = await _activiteRepository.GetAsync(Id);

                    if (oldActivite != null)
                    {
                        oldActivite.MyUserId   = activite.MyUserId;
                        oldActivite.ContenuAct = activite.ContenuAct;
                        oldActivite.DateAct    = activite.DateAct;

                        await _activiteRepository.UpdateAsync(oldActivite);
                    }
                    else
                    {
                        return(null);
                    }
                }
                else
                {
                    getResponse.Errors.Add("Activity can't be update.");
                }
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, ex.Message);
                getResponse.Errors.Add(ex.Message);
            }
            return(getResponse);
        }
示例#13
0
        public async Task <BaseResponseDto <ActiviteDto> > GetActiviteById(Guid Id)
        {
            BaseResponseDto <ActiviteDto> getResponse = new BaseResponseDto <ActiviteDto>();

            try
            {
                Activite activite = await _activiteRepository.GetAsync(Id);

                if (activite != null)
                {
                    getResponse.Data = new ActiviteDto
                    {
                        Id         = activite.Id,
                        MyUserId   = activite.MyUserId,
                        ContenuAct = activite.ContenuAct,
                        DateAct    = activite.DateAct
                    };
                }
                else
                {
                    getResponse.Errors.Add("Activity not found. ");
                }
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, ex.Message);
                getResponse.Errors.Add(ex.Message);
            }
            return(getResponse);
        }
示例#14
0
        /// <summary>
        /// Ajouter une Activite
        /// </summary>
        /// <param name="a">Une Activite</param>
        public void ajouterActivite(Activite a)
        {
            listeActivites.Add(a);

            if (a.isActiviteExterieure())
                journeeExterieure = true;
        }
示例#15
0
        public void trouverActivitesTest()
        {
            Journee j = new Journee();

            j.setListeActivites(new List <Activite>());
            Activite a1 = new Activite(new TypeActivite("Lel1"), "xD1", new TimeMartien(0), new TimeMartien(10), new Lieu(0, 0));
            Activite a2 = new Activite(new TypeActivite("Lel2"), "xD2", new TimeMartien(10), new TimeMartien(20), new Lieu(20, 30));
            Activite a3 = new Activite(new TypeActivite("Lel3"), "xD3", new TimeMartien(20), new TimeMartien(0, 24, 40, 0), new Lieu(12, 45));
            Activite a4 = new Activite(new TypeActivite("Lel4"), "xD4", new TimeMartien(10), new TimeMartien(15), new Lieu(20, 30));

            j.ajouterActivite(a1);
            j.ajouterActivite(a2);
            j.ajouterActivite(a3);
            j.ajouterActivite(a4);

            List <Activite> trouvees = j.trouverActivites(11);

            Assert.IsNotNull(trouvees, "La fonction trouverActivites ne fonctionne pas");
            Assert.IsTrue(a2.Equals(trouvees.Find(e => e.getNom().Equals(a2.getNom()))), "La méthode a trouvé une activité qui ne correspond pas à ce qui est recherché");
            Assert.IsTrue(trouvees.Count == 2, "La méthode n'a pas trouvé le bon nombre d'éléments");

            trouvees = j.trouverActivites(36);

            Assert.IsNotNull(trouvees, "La fonction trouverActivites ne fonctionne pas");
            Assert.IsTrue(a2.Equals(trouvees.Find(e => e.getNom().Equals(a2.getNom()))), "La méthode a trouvé une activité qui ne correspond pas à ce qui est recherché");
            Assert.IsTrue(trouvees.Count == 2, "La méthode n'a pas trouvé le bon nombre d'éléments");
        }
示例#16
0
        public ActionResult Create(ActiviteVM ActiviteVM, HttpPostedFileBase Affiche)
        {
            if (!ModelState.IsValid || Affiche == null || Affiche.ContentLength == 0)
            {
                RedirectToAction("Create");
            }
            Activite ActiviteDomain = new Activite()
            {
                Title       = ActiviteVM.Title,
                Description = ActiviteVM.Description,
                Affiche     = Affiche.FileName,
                Theme       = ActiviteVM.Theme,
                Outils      = ActiviteVM.Outils,
                AgeMin      = ActiviteVM.AgeMin,
                AgeMax      = ActiviteVM.AgeMax,
                ClassSize   = ActiviteVM.ClassSize,
                Duration    = ActiviteVM.Duration,
                Professor   = ActiviteVM.Professor,
                Start       = ActiviteVM.Start,
                Location    = ActiviteVM.Location,
                //    nomuser = User.Identity.GetUserName(),
                UserId = "f43c21cf-f35a-4897-a9e3-343c00afe7b3"
            };

            activiteService.Add(ActiviteDomain);
            activiteService.Commit();

            var path = Path.Combine(Server.MapPath("~/Content/Uploads"), Affiche.FileName);

            Affiche.SaveAs(path);
            return(RedirectToAction("Index"));
        }
示例#17
0
        public async Task <IActionResult> PostActivite([FromBody] Activite activite)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            _context.Activite.Add(activite);
            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                if (ActiviteExists(activite.NomActivite))
                {
                    return(new StatusCodeResult(StatusCodes.Status409Conflict));
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetActivite", new { id = activite.NomActivite }, activite));
        }
示例#18
0
        public ActionResult Create()
        {
            Activite activite = new Activite();

            activite.annulee = false;

            ViewBag.listeProvinces = new SelectList(db.Provinces, "noProvince", "nomProvince", activite.province);

            ViewBagNecessaireModifierActivite(activite);

            ViewBag.Create = true;

            DateTime?abonnementLePlusRecent = null;

            int noMembreCo;

            if (verifierSiCookieNoMembreExiste(out noMembreCo))
            {
                abonnementLePlusRecent = db.Abonnements.Where(m => m.noMembre == noMembreCo).OrderByDescending(m => m.dateFin).Select(m => m.dateFin).FirstOrDefault();
            }

            if (abonnementLePlusRecent != null)
            {
                ViewBag.finAbonnement = abonnementLePlusRecent;
            }

            return(View("Edit", activite));
        }
示例#19
0
        public async Task <Activite> ActiviteDetails(string UID)
        {
            try
            {
                var activite = (await Firebase
                                .Child("activite")
                                .OnceAsync <Activite>())
                               .Where(a => a.Object.UID == UID)
                               .Select(item => new Activite()
                {
                    Nom       = item.Object.Nom,
                    Date      = item.Object.Date,
                    Encadreur = item.Object.Encadreur,
                    Enfants   = item.Object.Enfants,
                    Lieu      = item.Object.Lieu
                }).FirstOrDefault();

                var it = new Activite()
                {
                    Nom       = activite.Nom,
                    Date      = activite.Date,
                    Encadreur = activite.Encadreur,
                    Enfants   = activite.Enfants,
                    Lieu      = activite.Lieu
                };

                return(it);
            }
            catch (Exception e)
            {
                Debug.WriteLine(e.Message);
                throw;
            }
        }
示例#20
0
        public void trouverActiviteTest()
        {
            Journee j = new Journee();

            j.setListeActivites(new List <Activite>());
            Activite a1 = new Activite(new TypeActivite("Lel1"), "xD1", new TimeMartien(0), new TimeMartien(10), new Lieu(0, 0));
            Activite a2 = new Activite(new TypeActivite("Lel2"), "xD2", new TimeMartien(10), new TimeMartien(20), new Lieu(20, 30));
            Activite a3 = new Activite(new TypeActivite("Lel3"), "xD3", new TimeMartien(20), new TimeMartien(0, 24, 40, 0), new Lieu(12, 45));
            Activite a4 = new Activite(new TypeActivite("Lel4"), "xD4", new TimeMartien(10), new TimeMartien(15), new Lieu(20, 30));

            j.ajouterActivite(a1);
            j.ajouterActivite(a2);
            j.ajouterActivite(a3);
            j.ajouterActivite(a4);

            Assert.IsNull(j.trouverActivite(null, true), "On ne peut pas rechercher quelque chose de null");

            Activite trouve = j.trouverActivite(new TimeMartien(8), true);

            Assert.IsNotNull(trouve, "La fonction trouverActivite ne fonctionne pas");
            Assert.IsTrue(trouve.getNom().Equals(a1.getNom()), "La méthode a trouvé une activité qui ne correspond pas à ce qui est recherché");

            trouve = j.trouverActivite(new TimeMartien(0), false);

            Assert.IsNotNull(trouve, "La fonction trouverActivite ne fonctionne pas");
            Assert.IsTrue(trouve.getNom().Equals(a3.getNom()), "La méthode a trouvé une activité qui ne correspond pas à ce qui est recherché");
        }
        public static BusinessRuleResult CanDelete(ApplicationDbContext context, Activite activite)
        {
            if (activite == null)
            {
                return new BusinessRuleResult {
                           Success = false, Message = "L'activité n'existe pas."
                }
            }
            ;

            bool hasFormules = context.Formules.Where(f => f.ActiviteId == activite.ActiviteId)
                               .Any();

            if (hasFormules)
            {
                return new BusinessRuleResult()
                       {
                           Success = false, Message = "L'activté ne peut être supprimée car des formules y sont liées."
                       }
            }
            ;
            else
            {
                return new BusinessRuleResult()
                       {
                           Success = true
                       }
            };
        }
示例#22
0
        public async Task <IActionResult> Edit(int id, [Bind("ActiviteId,Nom,Description,NbEnfantsMax,Lieu,Visible")] Activite activite)
        {
            if (id != activite.ActiviteId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(activite);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ActiviteExists(activite.ActiviteId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(activite));
        }
        public async Task <IActionResult> Delete(int id)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    Activite _activite = _unitOfWork.Activite.GetSingleOrDefault(e => e.Id == id);
                    if (_activite != null)
                    {
                        _unitOfWork.Activite.Remove(_activite);
                        await _unitOfWork.SaveChangesAsync();

                        return(Ok("OK"));
                    }
                    else
                    {
                        return(BadRequest());
                    }
                }
                catch (Exception ex)
                {
                    return(BadRequest(ex.Data));
                }
            }
            else
            {
                return(BadRequest(ModelState));
            }
        }
示例#24
0
        public IHttpActionResult PutActivite(int id, Activite activite)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != activite.Id)
            {
                return(BadRequest());
            }

            db.Entry(activite).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ActiviteExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
示例#25
0
        public void ajouterActiviteTest()
        {
            Journee j = new Journee();
            Activite a = new Activite(new TypeActivite("Lel"), "xD", new TimeMartien(0, 0, 0, 0), new TimeMartien(1, 2, 3, 4), new Lieu(0, 0));
            j.ajouterActivite(a);

            Assert.IsNotNull(j.getActivites(), "L'ajout d'activité a échoué");
        }
示例#26
0
        public ActionResult DeleteConfirmed(int id)
        {
            Activite activite = db.Activites.Find(id);

            db.Activites.Remove(activite);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
示例#27
0
        public void ajouterActiviteTest()
        {
            Journee  j = new Journee();
            Activite a = new Activite(new TypeActivite("Lel"), "xD", new TimeMartien(0, 0, 0, 0), new TimeMartien(1, 2, 3, 4), new Lieu(0, 0));

            j.ajouterActivite(a);

            Assert.IsNotNull(j.getActivites(), "L'ajout d'activité a échoué");
        }
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            Activite activite = await db.Activites.FindAsync(id);

            db.Activites.Remove(activite);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
示例#29
0
        public ActionResult Delete(int id, FormCollection collection)
        {
            Activite p = activiteService.GetById(id);

            activiteService.Delete(p);
            activiteService.Commit();
            // TODO: Add delete logic here

            return(RedirectToAction("Index"));
        }
        public ActionResult CreateForLieu(int lieuId)
        {
            ViewBag.CategorieActiviteId = new SelectList(_applicationDbContext.CategoriesActivite, "Id", "CategorieActiviteNom");
            Activite activite = new Activite();

            activite.DateDebut = DateTime.Now;
            activite.DateFin   = DateTime.Now.AddMonths(1);
            activite.LieuId    = lieuId;
            return(PartialView("_CreateForLieu", activite));
        }
示例#31
0
 public static void Persist(Activite activite, IEnumerable <int> territoireIds)
 {
     territoireIds.Each(id =>
     {
         PrestationTerritoireDAO.AddActivite(activite.PrestationID, id, new Activite()
         {
             Nom = activite.Nom, PrestationID = activite.PrestationID, TerritoireID = id
         });
     });
 }
        public void AjouterActivite(String nom_activite, int capacite, String date_debut, String date_fin, double prix_unitaire, double montant_prevu, double montant_actuel, String categorie, String nomOrganisateur, String date_debut_inscription, String date_fin_inscription, int nbr_point)
        {
            DateValue dDebut            = new DateValue(date_debut);
            DateValue dFin              = new DateValue(date_fin);
            DateValue dDebutInscription = new DateValue(date_debut_inscription);
            DateValue dFinInscription   = new DateValue(date_fin_inscription);

            if ((int.Parse(dDebut.getYear()) != bDA.LastYear()) || (int.Parse(dFin.getYear()) != bDA.LastYear()) || (int.Parse(dDebutInscription.getYear()) != bDA.LastYear()) || (int.Parse(dFinInscription.getYear()) != bDA.LastYear()))
            {
                MessageBox.Show("Nous sommes en " + bDA.LastYear() + " ", "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                DateTime debut            = new DateTime(int.Parse(dDebut.getYear()), int.Parse(dDebut.getMonth()), int.Parse(dDebut.getDay()));
                DateTime fin              = new DateTime(int.Parse(dFin.getYear()), int.Parse(dFin.getMonth()), int.Parse(dFin.getDay()));
                DateTime debutInscription = new DateTime(int.Parse(dDebutInscription.getYear()), int.Parse(dDebutInscription.getMonth()), int.Parse(dDebutInscription.getDay()));
                DateTime finInscription   = new DateTime(int.Parse(dFinInscription.getYear()), int.Parse(dFinInscription.getMonth()), int.Parse(dFinInscription.getDay()));
                int      r1 = DateTime.Compare(debut, fin);
                int      r2 = DateTime.Compare(debutInscription, finInscription);
                int      r3 = DateTime.Compare(finInscription, debut);
                if (r1 != -1)
                {
                    MessageBox.Show("La date de début d'activité doit être antérieur que la date fin d'activité", "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    if (r2 != -1)
                    {
                        MessageBox.Show("La date de début d'inscription doit être antérieur que la date fin d'inscription", "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else
                    {
                        if (r3 != -1)
                        {
                            MessageBox.Show("La date de fin d'inscription doit être antérieur que la date début d'activité", "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                        else
                        {
                            a = new Activite(0, nom_activite, capacite, 0, date_debut, date_fin, prix_unitaire, montant_prevu, montant_actuel, getIdBudgetCat(categorie), oDA.findIdByNomOrganisateur(nomOrganisateur), date_debut_inscription, date_fin_inscription, nbr_point);
                            Boolean test = aDA.insert(a);
                            if (test == true)
                            {
                                Thread thread = new Thread(() => mailing(nom_activite, date_debut, date_fin));
                                thread.Start();
                                MessageBox.Show("L'ajout d'une activité effectué avec succès", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            }
                            else
                            {
                                MessageBox.Show(" Erreur ! Vérifiez les valeurs des champs", "Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                        }
                    }
                }
            }
        }
示例#33
0
        public async Task <IActionResult> Create([Bind("ActiviteId,Nom,Description,NbEnfantsMax,Lieu,Visible")] Activite activite)
        {
            if (ModelState.IsValid)
            {
                _context.Add(activite);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(activite));
        }
        /// <summary>
        /// Permet de procéder aux modifications
        /// </summary>
        /// <param name="sender">Objet source</param>
        /// <param name="e">Evènement</param>
        private void ok_Click(object sender, EventArgs e)
        {
            TimeMartien d = new TimeMartien(0, (int) debutHeure.Value, (int) debutMinute.Value, 0);
            TimeMartien f = new TimeMartien(0, (int) finHeure.Value, (int) finMinute.Value, 0);

            if (d < f || (d > f && f.Equals(new TimeMartien(0))))
            {
                String type = treeView.SelectedNode.Text;
                journeeAModifier.supprimerActivite(activiteAModifier);

                try
                {
                    lieu = new Lieu(int.Parse(lieuTB.Text.Split(';')[0]), int.Parse(lieuTB.Text.Split(';')[1]));
                }
                catch
                {
                    lieu = new Lieu(0, 0);
                }

                Activite a;

                if (exterieurRadio.Checked)
                {
                    ITransport transport;

                    if (vehiculeRadio.Checked)
                        transport = new Vehicule();
                    else
                        transport = new Scaphandre();

                    if (explorationRadio.Checked)
                        a = new ExplorationExterieure(new TypeActivite(type), descriptionTB.Text, new TimeMartien(0, (int)debutHeure.Value, (int)debutMinute.Value, 0), new TimeMartien(0, (int)finHeure.Value, (int)finMinute.Value, 0), lieu, transport);
                    else
                        a = new ExperienceExterieure(new TypeActivite(type), descriptionTB.Text, new TimeMartien(0, (int)debutHeure.Value, (int)debutMinute.Value, 0), new TimeMartien(0, (int)finHeure.Value, (int)finMinute.Value, 0), lieu, transport);
                }
                else
                    a = new Activite(new TypeActivite(type), descriptionTB.Text, new TimeMartien(0, (int)debutHeure.Value, (int)debutMinute.Value, 0), new TimeMartien(0, (int)finHeure.Value, (int)finMinute.Value, 0), new Lieu(0, 0));

                if (a.getDuree().getTotalMinutes() > 0)
                {
                    if (a.getHeureFin().getHeures() == 0 && a.getHeureFin().getMinutes() == 0 && a.getHeureFin().getSecondes() == 0)
                        a.setHeureFin(new TimeMartien(0, 24, 39, 59));

                    /* Découpage activité */
                    if (activiteAModifier.getHeureFin().getHeures() == 0 && activiteAModifier.getHeureFin().getMinutes() == 0 && activiteAModifier.getHeureFin().getSecondes() == 0)
                        activiteAModifier.setHeureFin(new TimeMartien(0, 24, 39, 59));

                    if (activiteAModifier.getDuree().getTotalMinutes() == 10 || activiteAModifier.getDuree().getTotalMinutes() == 9)
                        journeeAModifier.ajouterActivite(a);
                    else if (activiteAModifier.getDuree().getTotalMinutes() == 20 || activiteAModifier.getDuree().getTotalMinutes() == 19)
                    {
                        if (activiteAModifier.getHeureDebut() < a.getHeureDebut())
                            activiteAModifier.setHeureFin(new TimeMartien(0, (int)debutHeure.Value, (int)debutMinute.Value, 0));
                        else
                            activiteAModifier.setHeureDebut(new TimeMartien(0, (int)finHeure.Value, (int)finMinute.Value, 0));

                        journeeAModifier.ajouterActivite(a);
                        journeeAModifier.ajouterActivite(activiteAModifier);
                    }
                    else if (activiteAModifier.getDuree().getTotalMinutes() > 20)
                    {
                        if (activiteAModifier.getHeureDebut() < a.getHeureDebut()
                            && activiteAModifier.getHeureFin() > a.getHeureFin())
                        {
                            Activite copie = (activiteAModifier.isActiviteExterieure()) ? null : new Activite(activiteAModifier);

                            if (copie == null && activiteAModifier.isExploration())
                                copie = new ExplorationExterieure((ExplorationExterieure)activiteAModifier);
                            else if (copie == null)
                                copie = new ExperienceExterieure((ExperienceExterieure)activiteAModifier);

                            activiteAModifier.setHeureFin(new TimeMartien(0, (int)debutHeure.Value, (int)debutMinute.Value, 0));
                            copie.setHeureDebut(new TimeMartien(0, (int)finHeure.Value, (int)finMinute.Value, 0));

                            journeeAModifier.ajouterActivite(copie);
                            journeeAModifier.ajouterActivite(activiteAModifier);
                        }
                        else if (activiteAModifier.getHeureDebut() < a.getHeureDebut()
                                    && activiteAModifier.getHeureFin() == a.getHeureFin())
                        {
                            activiteAModifier.setHeureFin(new TimeMartien(0, (int)debutHeure.Value, (int)debutMinute.Value, 0));
                            journeeAModifier.ajouterActivite(activiteAModifier);
                        }
                        else if (activiteAModifier.getHeureDebut() == a.getHeureDebut()
                                    && activiteAModifier.getHeureFin() > a.getHeureFin())
                        {
                            activiteAModifier.setHeureDebut(new TimeMartien(0, (int)finHeure.Value, (int)finMinute.Value, 0));
                            journeeAModifier.ajouterActivite(activiteAModifier);
                        }

                        journeeAModifier.ajouterActivite(a);
                    }

                    if (a.getHeureFin().getHeures() == 24 && a.getHeureFin().getMinutes() == 39 && a.getHeureFin().getSecondes() == 59)
                        a.setHeureFin(new TimeMartien(0));

                    cm.miseAJourEdt(journeeAModifier);
                    dh.Close();
                    cm.ouvrirDernierDetailHeure();
                    fermerFenetre();
                }
                else
                {
                    errDuree.Text = "La durée de l'activité doit être d'au moins 10 minutes";
                    errDuree.Visible = true;
                }
            }
            else
            {
                errDuree.Text = "La date de début doit être inférieure à la date de fin";
                errDuree.Visible = true;
            }
        }
        /// <summary>
        /// Constructeur paramétré
        /// </summary>
        /// <param name="j">Une journée</param>
        /// <param name="a">Une activité la journée</param>
        /// <param name="cm">L'interface graphique CalendrierMission</param>
        /// <param name="dh">L'interface graphique DetailHeure</param>
        public ModificationActivite(Journee j, Activite a, CalendrierMission cm, DetailHeure dh)
        {
            if (a.getHeureFin().getHeures() == 24 && a.getHeureFin().getMinutes() == 39)
                a.setHeureFin(new TimeMartien(0));

            InitializeComponent();
            this.dh = dh;

            if (finHeure.Value == 0 && finMinute.Value == 0)
            {
                finHeure.Value = 24;
                finMinute.Value = 40;
            }

            debutHeure.Maximum = finHeure.Value;

            lieu = new Lieu(0, 0);

            activiteAModifier = a;
            journeeAModifier = j;
            this.cm = cm;

            debutHeure.Value = activiteAModifier.getHeureDebut().getHeures();
            finHeure.Value = activiteAModifier.getHeureFin().getHeures();

            debutMinute.Value = activiteAModifier.getHeureDebut().getMinutes();
            finMinute.Value = activiteAModifier.getHeureFin().getMinutes();

            debutHeure.Minimum = debutHeure.Value;
            finHeure.Maximum = (finHeure.Value == 0) ? 24 : finHeure.Value;

            finHeure.Minimum = (finHeure.Value == 0) ? 0 : debutHeure.Value;

            remplirTreeView();

            descriptionTB.Text = a.getDescription();

            if (a.isActiviteExterieure())
            {
                exterieurRadio.Checked = true;

                if (a.isExploration())
                {
                    explorationRadio.Checked = true;
                    scaphandreRadio.Checked = (((ExplorationExterieure)a).nomTransport().Equals("Scaphandre")) ? true : false;
                    vehiculeRadio.Checked = !scaphandreRadio.Checked;
                }
                else
                {
                    experienceRadio.Checked = true;
                    scaphandreRadio.Checked = (((ExperienceExterieure)a).nomTransport().Equals("Scaphandre")) ? true : false;
                    vehiculeRadio.Checked = !scaphandreRadio.Checked;
                }
            }
            else
                interieurRadio.Checked = true;

            foreach (TreeNode tn in treeView.Nodes)
                foreach (TreeNode tnn in tn.Nodes)
                    if (tnn.Text.Equals(a.getNom()))
                        treeView.SelectedNode = tnn;

            lieuTB.Text = activiteAModifier.getLieu().ToString();

            debutHeure.Maximum = finHeure.Maximum;

            heureDebutStatic = new TimeMartien(0, (int) debutHeure.Value, (int) debutMinute.Value, 0);
            heureFinStatic = new TimeMartien(0, (int) finHeure.Value, (int) finMinute.Value, 0);
        }
示例#36
0
        public void activiteEnCoursTest()
        {
            Activite a = new Activite(new TypeActivite("Toto"), "lel", new TimeMartien(0), new TimeMartien(10), new Lieu(0, 0));

            a.activiteEnCours();
            Assert.AreEqual(a.getEtat(), Constantes.ETAT_ENCOURS, "L'état de l'activité n'est pas le bon");
        }
        /// <summary>
        /// Ajoute une nouvelle activite à la liste à l'aide d'une nouvelle fenêtre
        /// </summary>
        public Activite Add()
        {
            //Affichage du message "ajout en cours"
            ((App)App.Current)._theMainWindow.parametreMain.progressBarMainWindow.IsIndeterminate = true;
            ((App)App.Current)._theMainWindow.parametreMain.textBlockMainWindow.Text = "Ajout d'une activité en cours ...";

            //Initialisation de la fenêtre
            ActiviteWindow activiteWindow = new ActiviteWindow();

            //Création de l'objet temporaire
            Activite tmp = new Activite();

            //Mise de l'objet temporaire dans le datacontext
            activiteWindow.DataContext = tmp;

            //booléen nullable vrai ou faux ou null
            bool? dialogResult = activiteWindow.ShowDialog();

            if (dialogResult.HasValue && dialogResult.Value == true)
            {
                //Si j'appuie sur le bouton Ok, je renvoi l'objet DAO se trouvant dans le datacontext de la fenêtre
                return (Activite)activiteWindow.DataContext;
            }
            else
            {
                try
                {
                    //On détache la commande
                    ((App)App.Current).mySitaffEntities.Detach((Activite)activiteWindow.DataContext);
                }
                catch (Exception)
                {
                }

                //Si j'appuie sur le bouton annuler, je préviens que j'annule mon ajout
                ((App)App.Current)._theMainWindow.parametreMain.progressBarMainWindow.IsIndeterminate = false;
                this.recalculMax();
                ((App)App.Current)._theMainWindow.parametreMain.textBlockMainWindow.Text = "Ajout d'une activité annulée : " + this.mesActivites.Count() + " / " + this.max;

                return null;
            }
        }
示例#38
0
 /// <summary>
 /// Supprimer une Activite
 /// </summary>
 /// <param name="a">Une Activite</param>
 public void supprimerActivite(Activite d)
 {
     // Le Remove n'a pas été utilisé à cause d'un bug inconnu
     // qui supprime la mauvaise Activite dans un seul cas précis...
     listeActivites.Remove(d);
     journeeExterieure = mettreAJourJourneeExterieure();
 }
示例#39
0
        /// <summary>
        /// Permet de charger les données depuis un fichier XML
        /// </summary>
        /// <param name="marsOMatic">Le fichier XML Mars-o-Matic</param>
        /// <param name="activitesRefs">Le fichier XML ActivitesRefs associé au fichier précédent</param>
        private void chargerXml(String marsOMatic, String activitesRefs)
        {
            XmlDocument mars = new XmlDocument();
            mars.Load(marsOMatic);
            XmlDocument acts = new XmlDocument();
            acts.Load(activitesRefs);

            Dictionary<int, Activite> activitesBase = new Dictionary<int, Activite>();

            int nbElements = int.Parse(mars.SelectSingleNode("Donnees").SelectSingleNode("NbElements").InnerText);

            Progression p = new Progression(nbElements);
            p.Show();

            /* Chargement données des activités de base */
            XmlNodeList activites = acts.GetElementsByTagName("Activite");

            foreach (XmlNode n in activites)
            {
                Activite a;

                int num = int.Parse(n.SelectSingleNode("Numero").InnerText);
                bool exterieure = bool.Parse(n.SelectSingleNode("Exterieure").InnerText);
                bool exploration = bool.Parse(n.SelectSingleNode("Exploration").InnerText);
                TypeActivite ta = new TypeActivite(n.SelectSingleNode("TypeActivite").SelectSingleNode("Nom").InnerText);

                if (exterieure)
                    if (exploration)
                        a = new ExplorationExterieure(ta, "", null, null, null, null);
                    else
                        a = new ExperienceExterieure(ta, "", null, null, null, null);
                else
                    a = new Activite(ta);

                activitesBase.Add(num, a);

                p.incrementer();
            }

            /* Chargement données */
            int jour = int.Parse(mars.SelectSingleNode("Donnees").SelectSingleNode("DebutMission").SelectSingleNode("Jour").InnerText);
            int mois = int.Parse(mars.SelectSingleNode("Donnees").SelectSingleNode("DebutMission").SelectSingleNode("Mois").InnerText);
            int annee = int.Parse(mars.SelectSingleNode("Donnees").SelectSingleNode("DebutMission").SelectSingleNode("Annee").InnerText);
            int heures = int.Parse(mars.SelectSingleNode("Donnees").SelectSingleNode("DebutMission").SelectSingleNode("Heures").InnerText);
            int minutes = int.Parse(mars.SelectSingleNode("Donnees").SelectSingleNode("DebutMission").SelectSingleNode("Minutes").InnerText);
            int secondes = int.Parse(mars.SelectSingleNode("Donnees").SelectSingleNode("DebutMission").SelectSingleNode("Secondes").InnerText);

            this.debutMission = new DateTime(annee, mois, jour, heures, minutes, secondes);

            TimeMartien nb = TimeMartien.calculerJours(debutMission);
            int numJour = nb.getJours() + 1;

            if (numJour > 500)
                numJour = 500;

            XmlNodeList astronautesNodes = mars.GetElementsByTagName("Astronaute");

            foreach (XmlNode n in astronautesNodes)
            {
                String nom = n.SelectSingleNode("Nom").InnerText;
                String prenom = n.SelectSingleNode("Prenom").InnerText;
                int age = int.Parse(n.SelectSingleNode("Age").InnerText);

                Astronaute a = new Astronaute(nom, prenom, age);

                Dictionary<int, Journee> joursMission = new Dictionary<int, Journee>();
                a.setJourneesMission(joursMission);

                astronautes.Add(a);
                a.getJourneesMission().Clear();
                astroList.Items.Add(a); // Ajout dans la liste => interface

                XmlNodeList missionNode = n.SelectSingleNode("JourneesMission").SelectNodes("Journee");

                foreach (XmlNode nn in missionNode)
                {
                    int num = int.Parse(nn.SelectSingleNode("Numero").InnerText);
                    String etat = nn.SelectSingleNode("Etat").InnerText;
                    IEtat etatJournee = new Passe();

                    if (etat.Equals("EnCours"))
                        etatJournee = new EnCours();
                    else if (etat.Equals("Futur"))
                        etatJournee = new Futur();

                    String rapport = nn.SelectSingleNode("Rapport").InnerText;

                    Journee j = new Journee(num, rapport, etatJournee, false);
                    j.getActivites().Clear();
                    joursMission.Add(num, j);

                    XmlNodeList activitesNode = nn.SelectSingleNode("Activites").SelectNodes("Activite");

                    foreach (XmlNode nnn in activitesNode)
                    {
                        int numA = int.Parse(nnn.SelectSingleNode("Numero").InnerText);
                        String transport = nnn.SelectSingleNode("Transport").InnerText;
                        ITransport transportAct = null;

                        if (transport.Equals("Scaphandre"))
                            transportAct = new Scaphandre();
                        else if (transport.Equals("Vehicule"))
                            transportAct = new Vehicule();

                        String description = nnn.SelectSingleNode("Description").InnerText;
                        etat = nnn.SelectSingleNode("Etat").InnerText;
                        IEtat etatAct = new Passe();

                        if (etat.Equals("EnCours"))
                            etatAct = new EnCours();
                        else if (etat.Equals("Futur"))
                            etatAct = new Futur();

                        int mD = int.Parse(nnn.SelectSingleNode("HeureDebut").InnerText);

                        int mF = int.Parse(nnn.SelectSingleNode("HeureFin").InnerText);

                        String xy = nnn.SelectSingleNode("XY").InnerText;
                        int x = int.Parse(xy.Split(',')[0]);
                        int y = int.Parse(xy.Split(',')[1]);

                        Lieu l = new Lieu(x, y);

                        Activite aBase = activitesBase[numA];
                        Activite act;

                        if (aBase.isActiviteExterieure())
                            if (aBase.isExperience())
                                act = new ExperienceExterieure(aBase.getTypeActivite(), description, new TimeMartien(0, 0, mD, 0), new TimeMartien(0, 0, mF, 0), l, transportAct);
                            else
                                act = new ExplorationExterieure(aBase.getTypeActivite(), description, new TimeMartien(0, 0, mD, 0), new TimeMartien(0, 0, mF, 0), l, transportAct);
                        else
                            act = new Activite(aBase.getTypeActivite(), description, new TimeMartien(0, 0, mD, 0), new TimeMartien(0, 0, mF, 0), l);

                        act.setDescription(description);

                        act.setEtat(etatAct);

                        j.ajouterActivite(act);

                        p.incrementer();
                    }
                    p.incrementer();
                }
                p.incrementer();
            }

            initialisationInterface();

            astronauteSelectionne = astronautes[0];
            journeesMission = astronauteSelectionne.getJourneesMission();
            journeeActuelle = journeesMission[numJour];

            modificationJourneeActuelle(numJour);

            changerPeriode(periode);
            verificationChangementPeriode();
            mettreAJourHeures();
            miseAJourEdt(journeesMission[journeeSelectionnee]);

            descriptionTexte.Text = journeesMission[journeeSelectionnee].getDescription();
            astroList.SelectedItem = astronauteSelectionne;

            p.fermerFenetre();
        }
        /// <summary>
        /// Met à jour l'état en bas pour l'utilisateur
        /// </summary>
        /// <param name="typeEtat">texte : "Filtrage", "Ajout", "Modification", "Suppression", "Look", "" ("" = Chargement)</param>
        /// <param name="dao">un objet Commande_Fournisseur soit pour l'ajouter au listing, soit pour afficher qui a été modifié ou supprimé</param>
        public void MiseAJourEtat(string typeEtat, Activite act)
        {
            //Je racalcul le nombre max d'élements
            this.recalculMax();
            //En fonction de l'action, j'affiche le message
            if (typeEtat == "Filtrage")
            {
                ((App)App.Current)._theMainWindow.parametreMain.textBlockMainWindow.Text = "filtrage des activités terminée : " + this.mesActivites.Count() + " / " + this.max;
            }
            else if (typeEtat == "Ajout")
            {
                //J'ajoute la commande_fournisseur dans le linsting
                this.mesActivites.Add(act);
                //Je racalcul le nombre max d'élements après l'ajout
                this.recalculMax();
                ((App)App.Current)._theMainWindow.parametreMain.textBlockMainWindow.Text = "Ajout d'une activité dénommée '" + act.Libelle + "' effectué avec succès. Nombre d'élements : " + this.mesActivites.Count() + " / " + this.max;
            }
            else if (typeEtat == "Modification")
            {
                //Je raffraichis mon datagrid
                this._DataGridMain.Items.Refresh();
                ((App)App.Current)._theMainWindow.parametreMain.textBlockMainWindow.Text = "Modification de l'activité dénommée : '" + act.Libelle + "' effectuée avec succès. Nombre d'élements : " + this.mesActivites.Count() + " / " + this.max;
            }
            else if (typeEtat == "Suppression")
            {
                //Je supprime de mon listing l'élément supprimé
                this.mesActivites.Remove(act);
                //Je racalcul le nombre max d'élements après la suppression
                this.recalculMax();
                ((App)App.Current)._theMainWindow.parametreMain.textBlockMainWindow.Text = "Suppression de l'activité dénommée : '" + act.Libelle + "' effectuée avec succès. Nombre d'élements : " + this.mesActivites.Count() + " / " + this.max;
            }
            else if (typeEtat == "Look")
            {

            }
            else
            {
                ((App)App.Current)._theMainWindow.parametreMain.textBlockMainWindow.Text = "Chargement des activités terminé : " + this.mesActivites.Count() + " / " + this.max;
            }
            //Je retri les données dans le sens par défaut
            this.triDatas();
            //J'arrete la progressbar
            ((App)App.Current)._theMainWindow.parametreMain.progressBarMainWindow.IsIndeterminate = false;
        }
示例#41
0
        public void trouverActiviteTest()
        {
            Journee j = new Journee();
            j.setListeActivites(new List<Activite>());
            Activite a1 = new Activite(new TypeActivite("Lel1"), "xD1", new TimeMartien(0), new TimeMartien(10), new Lieu(0, 0));
            Activite a2 = new Activite(new TypeActivite("Lel2"), "xD2", new TimeMartien(10), new TimeMartien(20), new Lieu(20, 30));
            Activite a3 = new Activite(new TypeActivite("Lel3"), "xD3", new TimeMartien(20), new TimeMartien(0, 24, 40, 0), new Lieu(12, 45));
            Activite a4 = new Activite(new TypeActivite("Lel4"), "xD4", new TimeMartien(10), new TimeMartien(15), new Lieu(20, 30));

            j.ajouterActivite(a1);
            j.ajouterActivite(a2);
            j.ajouterActivite(a3);
            j.ajouterActivite(a4);

            Assert.IsNull(j.trouverActivite(null, true), "On ne peut pas rechercher quelque chose de null");

            Activite trouve = j.trouverActivite(new TimeMartien(8), true);

            Assert.IsNotNull(trouve, "La fonction trouverActivite ne fonctionne pas");
            Assert.IsTrue(trouve.getNom().Equals(a1.getNom()), "La méthode a trouvé une activité qui ne correspond pas à ce qui est recherché");

            trouve = j.trouverActivite(new TimeMartien(0), false);

            Assert.IsNotNull(trouve, "La fonction trouverActivite ne fonctionne pas");
            Assert.IsTrue(trouve.getNom().Equals(a3.getNom()), "La méthode a trouvé une activité qui ne correspond pas à ce qui est recherché");
        }
示例#42
0
        public void supprimerActiviteTest()
        {
            Journee j = new Journee();
            Activite a = new Activite(new TypeActivite("Lel"), "xD", new TimeMartien(0, 0, 0, 0), new TimeMartien(1, 2, 3, 4), new Lieu(0, 0));
            j.ajouterActivite(a);
            j.supprimerActivite(a);

            Activite actSuppr = j.getActivites().Find(e => (e.getNom().Equals(a.getNom()) && e.getDescription().Equals(a.getDescription())));

            Assert.IsNull(actSuppr, "La suppression d'activité a échoué");
        }
示例#43
0
 /// <summary>
 /// Stocke dans une liste l'activité si elle se trouve en extérieur
 /// </summary>
 /// <param name="a">Une activité</param>
 private void activiteExterieure(Activite a)
 {
     lieuxADessiner.Clear();
     if (a.isActiviteExterieure())
         lieuxADessiner.Add(a.getLieu());
 }
示例#44
0
        /// <summary>
        /// Constructeur paramétré
        /// </summary>
        /// <param name="a">Activiter à détailler</param>
        public InfoActivite(Activite a)
        {
            if (a.getHeureFin().getHeures() == 24 && a.getHeureFin().getMinutes() == 39)
                a.setHeureFin(new TimeMartien(0));

            InitializeComponent();
            activiteSelectionnee = a;

            debutHeure.Value = activiteSelectionnee.getHeureDebut().getHeures();
            finHeure.Value = activiteSelectionnee.getHeureFin().getHeures();

            debutMinute.Value = activiteSelectionnee.getHeureDebut().getMinutes();
            finMinute.Value = activiteSelectionnee.getHeureFin().getMinutes();

            debutHeure.Minimum = debutHeure.Value;
            finHeure.Maximum = (finHeure.Value == 0) ? 24 : finHeure.Value;

            finHeure.Minimum = (finHeure.Value == 0) ? 0 : debutHeure.Value;

            if (finHeure.Value == 0 && finMinute.Value == 0)
            {
                finHeure.Value = 24;
                finMinute.Value = 40;
            }

            debutHeure.Maximum = finHeure.Value;

            foreach (Domaine d in CalendrierMission.domaines)
            {
                TreeNode tn = treeView.Nodes.Add(d.getNom());

                foreach (TypeActivite ta in d.getActivites())
                    tn.Nodes.Add(ta.getNom());
            }

            descriptionTB.Text = a.getDescription();

            if (a.isActiviteExterieure())
            {
                exterieurRadio.Checked = true;

                if (a.isExploration())
                {
                    explorationRadio.Checked = true;
                    scaphandreRadio.Checked = (((ExplorationExterieure)a).nomTransport().Equals("Scaphandre")) ? true : false;
                    vehiculeRadio.Checked = !scaphandreRadio.Checked;
                }
                else
                {
                    experienceRadio.Checked = true;
                    scaphandreRadio.Checked = (((ExperienceExterieure)a).nomTransport().Equals("Scaphandre")) ? true : false;
                    vehiculeRadio.Checked = !scaphandreRadio.Checked;
                }
            }
            else
                interieurRadio.Checked = true;

            treeView.ExpandAll();

            foreach (TreeNode tn in treeView.Nodes)
                foreach (TreeNode tnn in tn.Nodes)
                    if (tnn.Text.Equals(a.getNom()))
                        treeView.SelectedNode = tnn;

            lieuTB.Text = activiteSelectionnee.getLieu().ToString();
        }
示例#45
0
        public void trouverActivitesTest()
        {
            Journee j = new Journee();
            j.setListeActivites(new List<Activite>());
            Activite a1 = new Activite(new TypeActivite("Lel1"), "xD1", new TimeMartien(0), new TimeMartien(10), new Lieu(0, 0));
            Activite a2 = new Activite(new TypeActivite("Lel2"), "xD2", new TimeMartien(10), new TimeMartien(20), new Lieu(20, 30));
            Activite a3 = new Activite(new TypeActivite("Lel3"), "xD3", new TimeMartien(20), new TimeMartien(0, 24, 40, 0), new Lieu(12, 45));
            Activite a4 = new Activite(new TypeActivite("Lel4"), "xD4", new TimeMartien(10), new TimeMartien(15), new Lieu(20, 30));

            j.ajouterActivite(a1);
            j.ajouterActivite(a2);
            j.ajouterActivite(a3);
            j.ajouterActivite(a4);

            List<Activite> trouvees = j.trouverActivites(11);

            Assert.IsNotNull(trouvees, "La fonction trouverActivites ne fonctionne pas");
            Assert.IsTrue(a2.Equals(trouvees.Find(e => e.getNom().Equals(a2.getNom()))), "La méthode a trouvé une activité qui ne correspond pas à ce qui est recherché");
            Assert.IsTrue(trouvees.Count == 2, "La méthode n'a pas trouvé le bon nombre d'éléments");

            trouvees = j.trouverActivites(36);

            Assert.IsNotNull(trouvees, "La fonction trouverActivites ne fonctionne pas");
            Assert.IsTrue(a2.Equals(trouvees.Find(e => e.getNom().Equals(a2.getNom()))), "La méthode a trouvé une activité qui ne correspond pas à ce qui est recherché");
            Assert.IsTrue(trouvees.Count == 2, "La méthode n'a pas trouvé le bon nombre d'éléments");
        }
示例#46
0
        /// <summary>
        /// Permet de supprimer une activité
        /// </summary>
        /// <param name="sender">Objet source</param>
        /// <param name="e">Evènement</param>
        private void Supprimer_Click(object sender, EventArgs e)
        {
            Activite act = journee.trouverActivite(new TimeMartien(0, heureSelectionnee, minuteSelectionnee, 0), ((heureSelectionnee == 0 && minuteSelectionnee == 0) ? true : false));

            if (act.isModifiable())
            {
                Activite activiteAModifier = act;
                Activite a = new Activite(new TypeActivite("Privé"), "", new TimeMartien(0, activiteAModifier.getHeureDebut().getHeures(), activiteAModifier.getHeureDebut().getMinutes(), 0), new TimeMartien(0, activiteAModifier.getHeureFin().getHeures(), activiteAModifier.getHeureFin().getMinutes(), 0), new Lieu(0, 0));

                journee.supprimerActivite(activiteAModifier);
                journee.ajouterActivite(a);

                this.Close();
                cm.ouvrirDernierDetailHeure();
                cm.miseAJourEdt(journee);
            }
        }
示例#47
0
        public void EqualsTest()
        {
            Activite a = new Activite(new TypeActivite("Toto"), "lel", new TimeMartien(0), new TimeMartien(10), new Lieu(0, 0));
            Activite a2 = new Activite(new TypeActivite("Toto"), "lel", new TimeMartien(0), new TimeMartien(10), new Lieu(0, 0));

            Assert.IsTrue(a.Equals(a2), "La méthode Equals ne fonctionne pas");
        }
示例#48
0
        public void couleurActiviteTest()
        {
            Activite a = new Activite(new TypeActivite("Toto"), "lel", new TimeMartien(0), new TimeMartien(10), new Lieu(0, 0));
            int[] colP = Constantes.COULEUR_PASSE;
            int[] colEC = Constantes.COULEUR_ENCOURS;
            int[] colF = Constantes.COULEUR_FUTUR;

            a.activitePassee();
            Assert.AreEqual(a.couleurActivite(), colP, "La couleur de l'activité n'est pas la bonne");

            a.activiteEnCours();
            Assert.AreEqual(a.couleurActivite(), colEC, "La couleur de l'activité n'est pas la bonne");

            a.activiteAVenir();
            Assert.AreEqual(a.couleurActivite(), colF, "La couleur de l'activité n'est pas la bonne");
        }