示例#1
0
        public ActionResult Edit(string utilisateurId, [FromBody] TechnologieViewModel technologie)
        {
            var utilisateur = utilisateurGraphRepository.GetOne(utilisateurId);

            var Technologies = utilisateur.Conseiller.Technologies;

            if (Technologies.Any(x => x.GraphKey == technologie.GraphId))
            {
                var technologieModel = Technologies.Find(x => x.GraphKey == technologie.GraphId);
                editionObjectGraphRepository.ChangerPropriete(
                    viewModelPropriete: () => technologie.Mois,
                    graphModelPropriete: () => technologieModel.MoisDExperience,
                    noeudModifie: technologieModel);
            }
            else
            {
                var technologieModel = technologieGraphRepository.GetOne(technologie.GraphId);
                technologieModel.MoisDExperience = technologie.Mois;
                technologieModel.Nom             = technologie.Description;

                var edition = utilisateur.Conseiller.EditionObjects.Find(x => x.ObjetAjoute?.GraphKey == technologie.GraphId);
                technologieGraphRepository.Update(technologieModel, edition);
            }

            return(Json(technologie));
        }
示例#2
0
        public ActionResult AddTechnologie(string utilisateurId, string mandatId, [FromBody] TechnologieViewModel technologie)
        {
            var utilisateur = utilisateurGraphRepository.GetOne(utilisateurId);
            var mandatModel = mandatGraphRepository.GetOne(mandatId);

            var technologieModel = technologieGraphRepository.GetOne(technologie.GraphId);

            editionObjectGraphRepository.AjouterNoeud(objetAjoute: technologieModel, viewModelProprieteNom: "Technologies", noeudModifie: mandatModel);

            technologie.GraphId = technologieModel.GraphKey;
            return(Json(technologie));
        }
示例#3
0
        public ActionResult DeleteTechnologie(string utilisateurId, string mandatId, [FromBody] TechnologieViewModel technologie)
        {
            var utilisateur = utilisateurGraphRepository.GetOne(utilisateurId);
            var mandat      = mandatGraphRepository.GetOne(mandatId);

            var technologies = mandat.Projet.Technologies;

            if (technologies.Any(x => x.GraphKey == technologie.GraphId))
            {
                var technologieModel = technologieGraphRepository.GetOne(technologie.GraphId);
                editionObjectGraphRepository.SupprimerNoeud(technologieModel, "Technologies", mandat);
            }
            else
            {
                var edition = mandat.EditionObjects.Find(x => x.ObjetAjoute?.GraphKey == technologie.GraphId);
                editionObjectGraphRepository.Delete(edition);
            }

            return(Json(technologie));
        }