public IHttpActionResult Add(AddExperienceViewModel model)
        {
            if (model != null && ModelState.IsValid)
            {
                var experience = AutoMapper.Mapper.Map<Experience>(model);
                var organization = this.GetOrganization(model);

                experience.Organization = organization;
                experience.OrganizationId = organization.Id;

                //experience.JosSeekerProfile =
                //    this.data.JobSeekerProfiles.All().FirstOrDefault(x => x.UserId == this.CurrentUser.Id);

                this.data.Experience.Add(experience);
                this.data.SaveChanges();

                model.Id = experience.Id;

                this.data.SaveChanges();

                return this.Ok(model);
            }

            return this.BadRequest();
        }
Beispiel #2
0
 protected void UpdateExperienceFromView(AddExperienceViewModel model, UserExperience original)
 {
     original.Company          = model.Company;
     original.Position         = model.Position;
     original.Responsibilities = model.Responsibilities;
     original.Start            = model.Start;
     original.End = model.End;
 }
        private Organization GetOrganization(AddExperienceViewModel model)
        {
            var organization = this.data.Organizations.All().Where(x => !x.IsDeleted)
                .FirstOrDefault(x => x.Name == model.OrganizationName);

            if (organization == null)
            {
                organization = new Organization()
                {
                    Name = model.OrganizationName,
                    Industry = (Industry)model.Industry
                };
            }

            this.data.Organizations.Add(organization);
            this.data.SaveChanges();

            return organization;
        }
Beispiel #4
0
        public async Task <bool> AddNewExperience(AddExperienceViewModel experience)
        {
            try
            {
                var exp = new UserExperience
                {
                    Id        = ObjectId.GenerateNewId().ToString(),
                    IsDeleted = false
                };
                UpdateExperienceFromView(experience, exp);

                await _userExperienceRepository.Add(exp);

                return(true);
            }
            catch (MongoException e)
            {
                return(false);
            }
        }