public ActionResult Add(string utilisateurId, [FromBody] FormationAcademiqueViewModel formationAcademique)
        {
            var utilisateur = utilisateurGraphRepository.GetOne(utilisateurId);

            var instituition = new Instituition()
            {
                Nom = formationAcademique.Etablissement, Pays = new Pays {
                    Nom = formationAcademique.Pays
                }
            };

            var formationAcademiqueModel = FormationScolaire.CreateFormationScolaire(
                diplome: formationAcademique.Diplome,
                dateConlusion: formationAcademique.Annee,
                equivalence: false,
                niveau: formationAcademique.Niveau.ToString(),
                principal: formationAcademique.Principal,
                instituition: instituition
                );

            formationScolaireGraphRepository.Add(formationAcademiqueModel);
            editionObjectGraphRepository.AjouterNoeud(
                objetAjoute: formationAcademiqueModel,
                viewModelProprieteNom: "FormationsScolaires",
                noeudModifie: utilisateur.Conseiller);

            formationAcademique.GraphId = formationAcademiqueModel.GraphKey;
            formationAcademique.GraphIdEtablissement = formationAcademiqueModel.Ecole.GraphKey;
            return(Json(formationAcademique));
        }
Ejemplo n.º 2
0
        public Utilisateur Map(CVViewModel cVViewModel)
        {
            Utilisateur utilisateur = new Utilisateur();

            utilisateur.GraphKey = cVViewModel.GraphIdUtilisateur;
            utilisateur.Prenom   = cVViewModel.Prenom;
            utilisateur.Nom      = cVViewModel.Nom;

            utilisateur.Conseiller = new Conseiller {
                GraphKey = cVViewModel.GraphIdConseiller
            };

            utilisateur.Conseiller.Fonction             = new Fonction();
            utilisateur.Conseiller.Fonction.GraphKey    = cVViewModel.GraphIdFonction;
            utilisateur.Conseiller.Fonction.Description = cVViewModel.Fonction;

            utilisateur.Conseiller.CVs.Add(new CV());
            utilisateur.Conseiller.CVs.First().GraphKey         = cVViewModel.GraphIdCV;
            utilisateur.Conseiller.CVs.First().ResumeExperience = cVViewModel.Biographie;

            foreach (DomaineDInterventionViewModel domaineDIntervention in cVViewModel.DomainesDIntervention)
            {
                utilisateur.Conseiller.DomaineDInterventions.Add(new DomaineDIntervention {
                    GraphKey = domaineDIntervention.GraphId, Description = domaineDIntervention.Description
                });
            }

            foreach (FormationAcademiqueViewModel formationAcademique in cVViewModel.FormationsAcademique)
            {
                FormationScolaire formationScolaire = new FormationScolaire();
                formationScolaire.GraphKey       = formationAcademique.GraphId;
                formationScolaire.Diplome        = formationAcademique.Diplome;
                formationScolaire.DateConclusion = formationAcademique.Annee;
                formationScolaire.Ecole          = new Instituition();
                formationScolaire.Ecole.GraphKey = formationAcademique.GraphIdEtablissement;
                formationScolaire.Ecole.Nom      = formationAcademique.Etablissement;

                utilisateur.Conseiller.FormationsScolaires.Add(formationScolaire);
            }

            foreach (CertificationViewModel certification in cVViewModel.Certifications)
            {
                utilisateur.Conseiller.Formations.Add(new Formation {
                    GraphKey = certification.GraphId, Description = certification.Description, AnAcquisition = certification.Annee, Type = new Genre {
                        GraphKey = certification.GraphIdGenre, Descriminator = "Formation", Description = "Certification"
                    }
                });
            }

            foreach (MandatViewModel mandatViewModel in cVViewModel.Mandats)
            {
                Mandat mandat = new Mandat();
                mandat.GraphKey = mandatViewModel.GraphId;

                mandat.Projet = new Projet {
                    GraphKey = mandatViewModel.GraphIdProjet
                };
                mandat.Projet.Client = new Client {
                    GraphKey = mandatViewModel.GraphIdClient
                };
                mandat.Projet.Client.Nom = mandatViewModel.NomClient;

                mandat.Numero = mandatViewModel.NumeroMandat.ToString();

                mandat.Projet.SocieteDeConseil = new Employeur {
                    GraphKey = mandatViewModel.GraphIdSocieteDeConseil
                };
                mandat.Projet.SocieteDeConseil.Nom = mandatViewModel.NomEntreprise;
                mandat.Projet.Nom       = mandatViewModel.TitreProjet;
                mandat.Titre            = mandatViewModel.TitreMandat;
                mandat.Projet.Envergure = mandatViewModel.Envergure;
                mandat.Efforts          = mandatViewModel.Efforts;

                mandat.Fonction = new Fonction {
                    GraphKey = mandatViewModel.GraphIdFonction
                };
                mandat.Fonction.Description = mandatViewModel.Fonction;
                mandat.Projet.Description   = mandatViewModel.ContexteProjet;
                mandat.Description          = mandatViewModel.PorteeDesTravaux;
                mandat.Projet.DateDebut     = mandatViewModel.DebutProjet;
                mandat.Projet.DateFin       = mandatViewModel.FinProjet;
                mandat.DateDebut            = mandatViewModel.DebutMandat;
                mandat.DateFin                    = mandatViewModel.FinMandat;
                mandat.Projet.NomReference        = mandatViewModel.NomReference;
                mandat.Projet.TelephoneReference  = mandatViewModel.TelephoneReference;
                mandat.Projet.CellulaireReference = mandatViewModel.CellulaireReference;
                mandat.Projet.CourrielReference   = mandatViewModel.CourrielReference;
                mandat.Projet.FonctionReference   = mandatViewModel.FonctionReference;

                foreach (TechnologieViewModel technologie in mandatViewModel.Technologies)
                {
                    mandat.Projet.Technologies.Add(new Technologie {
                        GraphKey = technologie.GraphId, Nom = technologie.Description
                    });
                }

                foreach (TacheViewModel tache in mandatViewModel.Taches)
                {
                    mandat.Taches.Add(new Tache {
                        GraphKey = tache.GraphId, Description = tache.Description
                    });
                }

                utilisateur.Conseiller.Mandats.Add(mandat);
            }

            foreach (TechnologieViewModel technologie in cVViewModel.Technologies)
            {
                utilisateur.Conseiller.Technologies.Add(new Technologie {
                    GraphKey = technologie.GraphId, Nom = technologie.Description, MoisDExperience = technologie.Mois
                });
            }

            foreach (PerfectionnementViewModel perfeccionnement in cVViewModel.Perfectionnements)
            {
                utilisateur.Conseiller.Formations.Add(new Formation {
                    GraphKey = perfeccionnement.GraphId, Description = perfeccionnement.Description, AnAcquisition = perfeccionnement.Annee, Type = new Genre {
                        GraphKey = perfeccionnement.GraphIdGenre, Descriminator = "Formation", Description = "Perfectionnement"
                    }
                });
            }


            foreach (LangueViewModel langueViewModel in cVViewModel.Langues)
            {
                Langue langue = new Langue();
                langue.GraphKey = langueViewModel.GraphId;
                langue.Nom      = langueViewModel.Nom;

                if (langueViewModel.NiveauParle == null)
                {
                    langue.Parle = Niveau.Avancé;
                }
                else
                {
                    langue.Parle = (Niveau)System.Enum.Parse(typeof(Niveau), langueViewModel.NiveauParle);
                }

                if (langueViewModel.NiveauEcrit == null)
                {
                    langue.Ecrit = Niveau.Avancé;
                }
                else
                {
                    langue.Ecrit = (Niveau)System.Enum.Parse(typeof(Niveau), langueViewModel.NiveauEcrit);
                }

                if (langueViewModel.NiveauLu == null)
                {
                    langue.Lu = Niveau.Avancé;
                }
                else
                {
                    langue.Lu = (Niveau)System.Enum.Parse(typeof(Niveau), langueViewModel.NiveauLu);
                }

                utilisateur.Conseiller.Langues.Add(langue);
            }

            return(utilisateur);
        }