public ActionResult Participer(ParticipationRequest PF_element)
        {
            var id_prestataire = User.Identity.GetUserId();

            // dbmetier..Entry(marché).State = EntityState.Modified;
            Models.Participation participation = dbmetier.Participations.Where(a => a.id_prestataire_participation == id_prestataire && a.id_marché_participation == PF_element.id_marche).FirstOrDefault();
            participation.budget_prestation = PF_element.budget_prestation;

            Profil prof = new Profil();
            Participation_profil pf;

            foreach (Models.viewmodel.Profil_cout_chargeVM item in PF_element.listeprofil_cout)
            {
                prof = dbmetier.Profils.Where(a => a.libelle_profil == item.libelle).FirstOrDefault();
                pf   = new Participation_profil
                {
                    id_participation_fk = participation.id_participation,
                    id_profil_fk        = prof.id_profil,
                    cout_unit_ht        = item.cout
                };
                dbmetier.Participation_profil.Add(pf);
            }


            dbmetier.SaveChanges();
            return(RedirectToAction("MarchePropose"));
        }
        public ActionResult Create(MarcheViewModel marche)
        {
            var userId = User.Identity.GetUserId();

            Projet pro = dbmetier.Projets.Find(marche.id_projet);
            Marché mar = new Marché();

            mar.Délai        = marche.Délai;
            mar.date_fin     = marche.date_fin;
            mar.date_debut   = System.DateTime.Now;
            mar.budget_prevu = marche.budget_prevu;
            mar.id_projet_fk = marche.id_projet;
            mar.matricule    = marche.matricule;

            mar.id_responsable_fk = userId;
            dbmetier.Marché.Add(mar);
            dbmetier.SaveChanges();
            foreach (var item in marche.listeprestataire)
            {
                Models.Participation par = new Models.Participation();

                par.id_marché_participation      = mar.id_marché;
                par.id_prestataire_participation = item;
                dbmetier.Participations.Add(par);
                dbmetier.SaveChanges();
            }

            foreach (MissionViewModel item in marche.listMission)
            {
                //ajout de domaine
                Domaine domaine = dbmetier.Domaines.Where(x => x.libelle_domaine == item.domaine).FirstOrDefault();

                Mission mision = new Mission
                {
                    id_mission            = item.id_mission,
                    libelle_mission       = item.libelle_mission,
                    id_domaine_mission_fk = domaine.id_domaine,
                    id_marche_mission     = mar.id_marché
                };
                dbmetier.Missions.Add(mision);
                dbmetier.SaveChanges();
                foreach (var profillib in item.listeprofils)
                {
                    Profil prof = dbmetier.Profils.Where(x => x.libelle_profil == profillib.libelle).FirstOrDefault();
                    Affectation_profils afectation = new Affectation_profils
                    {
                        id_mission_affectation = mision.id_mission,
                        id_profils_affectation = prof.id_profil,
                        charge_profil          = profillib.charge
                    };
                    dbmetier.Affectation_profils.Add(afectation);
                    dbmetier.SaveChanges();
                }
            }

            return(Content("<script language='javascript' type='text/javascript'>alert('sucsssflly!');</script>"));
        }