Пример #1
0
        public bool AddNewPersonJob(EmploymentsViewModel eVM, long Id)
        {
            try
            {
                Person p = personUnityOfWork.PersonRepo.GetById(Id);
                personUnityOfWork.PersonRepo.Attach(ref p);

                Job j = new Job
                {
                    CompanyName = eVM.CompanyName,
                    Description = eVM.Description,
                    EndDate     = eVM.EndDate,
                    Person      = p,
                    Position    = eVM.Position,
                    StartDate   = eVM.StartDate
                };

                p.Jobs = p.Jobs ?? new List <Job>();
                p.Jobs.Add(j);

                personUnityOfWork.JobRepo.Add(j);
                personUnityOfWork.PersonRepo.Update(p);
                personUnityOfWork.UnityOfWork.SaveChanges();

                return(true);
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                personUnityOfWork.UnityOfWork.Dispose();
            }
        }
Пример #2
0
        public async Task <ActionResult> Create()
        {
            var tracker = (Guid)Session["@Tracker"];

            var primary = await _context.Employements.FirstOrDefaultAsync(it => it.Applicant.Tracker == tracker && it.IsPrimary);

            if (primary == null)
            {
                return(View());
            }

            var previous = await _context.Employements.FirstOrDefaultAsync(it => it.Applicant.Tracker == tracker && !it.IsPrimary);

            if (previous == null)
            {
                return(View());
            }

            var viewModel = new EmploymentsViewModel
            {
                Primary  = _mapper.Map <EmploymentViewModel>(primary),
                Previous = _mapper.Map <EmploymentViewModel>(previous)
            };

            return(View(viewModel));
        }
Пример #3
0
        public async Task <ActionResult> Create(EmploymentsViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(View(viewModel));
            }

            var tracker = (Guid)Session["@Tracker"];

            var applicant = await _context.Applicant.FirstOrDefaultAsync(it => it.Tracker == tracker);

            var existingPrimary = await _context.Employements.FirstOrDefaultAsync(it => it.Applicant.Tracker == tracker && it.IsPrimary);

            if (existingPrimary != null)
            {
                _mapper.Map(viewModel.Primary, existingPrimary);
                _context.Entry(existingPrimary).State = EntityState.Modified;
            }
            else
            {
                var primary = _mapper.Map <Employement>(viewModel.Primary);
                primary.Applicant = applicant;
                primary.IsPrimary = true;
                _context.Employements.Add(primary);
            }

            var existingPrevious = await _context.Employements.FirstOrDefaultAsync(it => it.Applicant.Tracker == tracker && !it.IsPrimary);

            if (existingPrevious != null)
            {
                _mapper.Map(viewModel.Previous, existingPrevious);
                _context.Entry(existingPrevious).State = EntityState.Modified;
            }
            else
            {
                var previous = _mapper.Map <Employement>(viewModel.Previous);
                previous.Applicant = applicant;
                previous.IsPrimary = false;
                _context.Employements.Add(previous);
            }

            await _context.SaveChangesAsync();

            return(RedirectToAction("Create", "Vehicle"));
        }
Пример #4
0
        public ActionResult AddJob(EmploymentsViewModel cVM)
        {
            if (ModelState.IsValid)
            {
                //Person p = Session["Person"] as Person;

                if (hrServices.AddNewPersonJob(cVM, cVM.Id))
                {
                    ViewBag.Message = "Pomyślnie dodano miejsce zatrudnienia";
                    return(RedirectToAction("DisplaySuccessOfAddWorker"));
                }
                else
                {
                    ModelState.AddModelError("", "Nieznany blad");
                    return(View("DisplaySuccessOfAddWorker"));
                }
            }
            else
            {
            }

            return(View());
        }