public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Person person = dao.GetPersonById((int)id);

            if (person == null)
            {
                return(HttpNotFound());
            }
            ApplicationUser user = System.Web.HttpContext.Current.GetOwinContext().GetUserManager <ApplicationUserManager>().FindById(System.Web.HttpContext.Current.User.Identity.GetUserId());
            GIDOLog         gl   = new GIDOLog()
            {
                Author   = user.FirstName + " " + user.Surname,
                AuthorId = user.Id,
                Date     = DateTime.Now,
                Changes  = "Usunięto dane użytkownika:" + person.ToString()
            };

            dao.SaveGIDOLog(gl);

            dao.RemovePersonById((int)id);
            return(PartialView("PeopleList", dao.GetPeopleList()));
        }
        public ActionResult Create(PersonViewModel personVM)
        {
            if (ModelState.IsValid)
            {
                bool   cvSaved = true;
                string path    = null;
                if (personVM.CVFile != null)
                {
                    path    = Utils.Utils.CreatePath(Server, personVM.CVFile, Utils.AppConfig.CVFolderRelative);
                    cvSaved = dao.SaveFileOnServer(path, personVM.CVFile);
                }
                Person person = new Person()
                {
                    CanContact             = personVM.CanContact,
                    City                   = personVM.City,
                    CVPath                 = path,
                    Email                  = personVM.Email,
                    Name                   = personVM.Name,
                    PersonalDataProcessing = personVM.PersonalDataProcessing,
                    PhoneNumber            = personVM.PhoneNumber,
                    Street                 = personVM.Street,
                    Surname                = personVM.Surname,
                    Zip        = personVM.Zip,
                    Candidates = new List <Candidate>(),
                    Notes      = new List <PersonNote>(),
                    Tags       = new List <SkillTag>(),
                };

                List <string> tagList = personVM.Tags.Split(new char[] { ';', ' ', ',' }).ToList <string>();
                foreach (var tag in tagList)
                {
                    if ((!string.IsNullOrEmpty(tag)) && (person.Tags.Where(x => x.Tag == tag).Count() <= 0))
                    {
                        SkillTag skillTag = new SkillTag()
                        {
                            People = new List <Person>(),
                            Tag    = tag
                        };
                        skillTag.People.Add(person);
                        person.Tags.Add(skillTag);
                    }
                }

                ApplicationUser user = System.Web.HttpContext.Current.GetOwinContext().GetUserManager <ApplicationUserManager>().FindById(System.Web.HttpContext.Current.User.Identity.GetUserId());
                GIDOLog         gl   = new GIDOLog()
                {
                    Author   = user.FirstName + " " + user.Surname,
                    AuthorId = user.Id,
                    Date     = DateTime.Now,
                    Changes  = "Dodanie danych personalnych do bazy: " + Json(person)
                };
                dao.SaveGIDOLog(gl);

                dao.SavePerson(person);

                return(RedirectToAction("Index", "People"));
            }

            return(View("CreatePerson", personVM));
        }
        public ActionResult Edit(EditPersonViewModel personVM)
        {
            if (ModelState.IsValid)
            {
                bool   cvSaved = true;
                string path    = personVM.CVPath;
                if (personVM.CVFile != null)
                {
                    if (string.IsNullOrEmpty(personVM.CVPath))
                    {
                        path = Utils.Utils.CreatePath(Server, personVM.CVFile, Utils.AppConfig.CVFolderRelative);
                    }
                    cvSaved = dao.SaveFileOnServer(path, personVM.CVFile);
                }

                Person person = dao.GetPersonById(personVM.Id);

                person.Name                   = personVM.Name;
                person.Surname                = personVM.Surname;
                person.CanContact             = personVM.CanContact;
                person.City                   = personVM.City;
                person.Email                  = personVM.Email;
                person.PersonalDataProcessing = personVM.PersonalDataProcessing;
                person.PhoneNumber            = personVM.PhoneNumber;
                person.Street                 = personVM.Street;
                person.Zip    = personVM.Zip;
                person.CVPath = path;

                ApplicationUser user = System.Web.HttpContext.Current.GetOwinContext().GetUserManager <ApplicationUserManager>().FindById(System.Web.HttpContext.Current.User.Identity.GetUserId());
                GIDOLog         gl   = new GIDOLog()
                {
                    Author   = user.FirstName + " " + user.Surname,
                    AuthorId = user.Id,
                    Date     = DateTime.Now,
                    Changes  = "Zmodyfikowano dane użytkownika:" + person.ToString()
                };
                dao.SaveGIDOLog(gl);


                dao.UpdatatePerson(person);


                return(RedirectToAction("Index"));
            }
            return(View(personVM));
        }
Beispiel #4
0
        public ActionResult Apply(ApplyViewModel model)
        {
            //bool letterSaved = dao.SaveFileOnServer(Server, model.LetterFile, AppConfig.LettersFolderRelative);
            //bool photoSaved = dao.SaveFileOnServer(Server, model.PhotoFile, AppConfig.PhotosFolderRelative);
            if (ModelState.IsValid)
            {
                bool   cvSaved = true;
                string path    = null;
                if (model.CVFile != null)
                {
                    path    = Utils.Utils.CreatePath(Server, model.CVFile, Utils.AppConfig.CVFolderRelative);
                    cvSaved = dao.SaveFileOnServer(path, model.CVFile);
                }
                Person person = new Person()
                {
                    CanContact             = model.CanContact,
                    City                   = model.City,
                    CVPath                 = path,
                    Email                  = model.Email,
                    Name                   = model.Name,
                    PersonalDataProcessing = model.PersonalDataProcessing,
                    PhoneNumber            = model.PhoneNumber,
                    Street                 = model.Street,
                    Surname                = model.Surname,
                    Zip        = model.Zip,
                    Candidates = new List <Candidate>(),
                    Notes      = new List <PersonNote>(),
                    Tags       = new List <SkillTag>(),
                };

                Recruitment recruitment = dao.GetRecruitmentById(model.OfferNumber);

                Candidate candidate = new Candidate()
                {
                    FinancialExpectations = model.FinancialExpectations,
                    Invited           = false,
                    MeetsRequirements = true,
                    Person            = person,
                    ReadyToMove       = model.ReadyToMove,
                    Recruitment       = recruitment,
                    ApplyTime         = DateTime.Now
                };

                RecruitmentEvent ev = new RecruitmentEvent()
                {
                    Author      = "HR Manager",
                    AuthorId    = "HR Manager",
                    Recruitment = recruitment,
                    Time        = DateTime.Now,
                    Event       = person.GetFullName() + " zaaplikował/a na stanowisko"
                };


                GIDOLog gl = new GIDOLog()
                {
                    Author   = person.Name + " " + person.Surname,
                    AuthorId = "",
                    Date     = DateTime.Now,
                    Changes  = "Zmodyfikowano dane użytkownika:" + person.ToString()
                };
                dao.SaveGIDOLog(gl);

                recruitment.Events.Add(ev);
                recruitment.Candidate.Add(candidate);

                //dao.SavePerson(person);
                //dao.SaveCandidate(candidate);
                dao.UpdatateRecruitment(recruitment);

                return(View("ApplyComplete", cvSaved));
            }
            else
            {
                return(View(model));
            }
        }