Exemplo n.º 1
0
        public ActionResult Create(Person person)
        {
            try
            {
                if (ViewData.ModelState.IsValid)
                {
                    person.LastUpdateTimeStamp = DateTime.Now;
                    person.LastUpdateUser      = GetCurrentUser().Id;
                    ActionConfirmation saveOrUpdateConfirmation =
                        _personManagementService.SaveOrUpdate(person);

                    if (saveOrUpdateConfirmation.WasSuccessful)
                    {
                        TempData[ControllerEnums.GlobalViewDataProperty.PageMessage.ToString()] =
                            saveOrUpdateConfirmation.Message;
                        return(RedirectToAction("Search"));
                    }
                }
                else
                {
                    person = null;
                }
            }
            catch (PreconditionException pce)
            {
                TempData[ControllerEnums.GlobalViewDataProperty.PageMessage.ToString()] =
                    pce.Message;
            }

            PersonFormViewModel viewModel =
                _personManagementService.CreateFormViewModelFor(person);

            return(View(viewModel));
        }
Exemplo n.º 2
0
        public ActionResult Edit(int id)
        {
            PersonFormViewModel viewModel =
                _personManagementService.CreateFormViewModelFor(id);

            return(View(viewModel));
        }
Exemplo n.º 3
0
        public ActionResult Create()
        {
            PersonFormViewModel viewModel =
                _personManagementService.CreateFormViewModel();

            return(View(viewModel));
        }
Exemplo n.º 4
0
        public PersonFormViewModel CreateFormViewModelFor(Person person)
        {
            PersonFormViewModel viewModel = CreateFormViewModel();

            viewModel.Person = person;
            return(viewModel);
        }
Exemplo n.º 5
0
        public ActionResult Save([Bind(Include = "Id,Name,BirthDate,CityId,GenderId,Image")] Person person)
        {//Model Binding: Binding PersonViewModel or Person data from request
            if (!ModelState.IsValid)
            {
                PersonFormViewModel formVM = new PersonFormViewModel()
                {
                    Countries = uow.CountryRepository.GetAll().ToList(),
                    Cities    = uow.CityRepository.GetAll().ToList(),
                    Genders   = uow.GenderRepository.GetAll().ToList()
                };
                return(View("PersonForm", formVM));
            }
            if (person.Id == 0)
            {
                uow.PersonRepository.Add(person);
                uow.Commit();
            }
            else
            {
                Person personInDB = uow.PersonRepository.GetById(person.Id);
                uow.PersonRepository.Update(person, uow);
            }

            ViewBag.CityId   = new SelectList(uow.CityRepository.GetAll(), "Id", "Name", person.CityId);
            ViewBag.GenderId = new SelectList(uow.GenderRepository.GetAll(), "Id", "Name", person.GenderId);
            return(RedirectToAction("Index", "People"));
        }
Exemplo n.º 6
0
        public void CannotUpdateInvalidPersonFromForm()
        {
            // Establish Context
            var personFromForm    = new Person();
            var viewModelToExpect = new PersonFormViewModel();

            var testUser = new Person();

            testUser.SetAssignedIdTo(1);
            _authenticationProvider.Expect(r => r.GetLoggedInUser()).Return("user1");
            _personManagementService.Expect(r => r.GetByUserName("user1")).Return(testUser);

            _personManagementService.Expect(r => r.UpdateWith(personFromForm, 0))
            .Return(ActionConfirmation.CreateFailureConfirmation("not updated"));
            _personManagementService.Expect(r => r.CreateFormViewModelFor(personFromForm))
            .Return(viewModelToExpect);

            // Act
            ViewResult result =
                _peopleController.Edit(personFromForm).AssertViewRendered();

            // Assert
            result.ViewData.Model.ShouldNotBeNull();
            (result.ViewData.Model as PersonFormViewModel).ShouldNotBeNull();
        }
Exemplo n.º 7
0
        // GET: Contacts
        public ActionResult Create()
        {
            var viewModel = new PersonFormViewModel
            {
                Genders = _context.Genders.ToList()
            };

            return(View(viewModel));
        }
Exemplo n.º 8
0
        public IActionResult New()
        {
            var viewModel = new PersonFormViewModel()
            {
                Sources = _context.Sources.ToList()
            };

            return(View("PersonForm", viewModel));
        }
Exemplo n.º 9
0
        public ActionResult RegisterPerson()
        {
            var viewModel = new PersonFormViewModel()
            {
                Faculties = _unitOfWork.Faculties.GetFaculties()
            };

            return(View("PersonForm", viewModel));
        }
Exemplo n.º 10
0
        public PersonFormViewModel CreateFormViewModel()
        {
            var viewModel = new PersonFormViewModel
            {
                Orgs         = _orgManagementService.GetAll(),
                Supervisors  = _personRepository.GetActiveSupervisors(-1, "LastName", "Asc"),
                SupportTeams = _supportTeamRepository.GetAll(),
                Roles        = _roleManagementService.GetAll()
            };

            return(viewModel);
        }
        public void CanCreateFormViewModel()
        {
            // Establish Context
            var viewModelToExpect = new PersonFormViewModel();

            // Act
            PersonFormViewModel viewModelRetrieved =
                _personManagementService.CreateFormViewModel();

            // Assert
            viewModelRetrieved.ShouldNotBeNull();
            viewModelRetrieved.Person.ShouldBeNull();
        }
Exemplo n.º 12
0
        public ActionResult New()
        {
            var viewModel = new PersonFormViewModel(new Person(), _context.Flags, _context.Boroughs, _context.Services.Where(s => s.Level == ServiceLevel.Site && s.Display));

            ViewBag.TitleID      = new SelectList(_context.Titles, "ID", "TitleValue");
            ViewBag.FinanceCode  = new SelectList(_context.CostCentres, "Code", "CCName");
            ViewBag.SubjectiveID = new SelectList(_context.Subjectives, "Code", "Subname");
            ViewBag.CohortID     = new SelectList(_context.Cohorts.OrderBy(c => c.Number), "ID", "CohortDescription");
            ViewBag.LineManID    = new SelectList(_context.People.Where(p => p.Flags.Select(f => f.ID).Contains("LMR")), "ID", "FullName");
            ViewBag.TeamList     = _context.Teams.OrderBy(t => t.TeamName);
            ViewBag.ServiceList  = _context.Services.Where(s => s.Level == ServiceLevel.Speciality && s.Display).OrderBy(s => s.ServiceName);

            return(View("PersonForm", viewModel));
        }
Exemplo n.º 13
0
        public ActionResult AddNewPerson()
        {
            var genders   = _context.Genders.ToList();
            var roles     = _context.Roles.ToList();
            var courses   = _context.Courses.ToList();
            var viewModel = new PersonFormViewModel
            {
                Genders = genders,
                Roles   = roles,
                Courses = courses
            };

            return(View("AddNewPerson", viewModel));
        }
Exemplo n.º 14
0
        public void CanInitEdit()
        {
            // Establish Context
            var viewModel = new PersonFormViewModel();

            _personManagementService.Expect(r => r.CreateFormViewModelFor(1))
            .Return(viewModel);

            // Act
            ViewResult result = _peopleController.Edit(1).AssertViewRendered();

            // Assert
            result.ViewData.Model.ShouldNotBeNull();
            (result.ViewData.Model as PersonFormViewModel).ShouldNotBeNull();
        }
Exemplo n.º 15
0
        // GET: People/Create
        public ActionResult New()
        {
            ViewBag.CountryList = new SelectList(uow.CountryRepository.GetAll(), "Id", "Name");

            //uow.CountryRepository.GetById(ViewBag.CountryList.)

            ViewBag.CityId   = new SelectList(uow.CityRepository.GetAll(), "Id", "Name");
            ViewBag.GenderId = new SelectList(uow.GenderRepository.GetAll(), "Id", "Name");

            PersonFormViewModel formVM = new PersonFormViewModel()
            {
                //Countries = uow.CountryRepository.GetAll().ToList(),
                //Cities = uow.CityRepository.GetAll().ToList(),
                //Genders = uow.GenderRepository.GetAll().ToList()
            };

            return(View("PersonForm", formVM));
        }
Exemplo n.º 16
0
        public ActionResult Edit(int id)
        {
            var person = _context.People.SingleOrDefault(p => p.Id == id);

            if (person == null)
            {
                return(HttpNotFound());
            }
            var viewModel = new PersonFormViewModel
            {
                Person  = person,
                Courses = _context.Courses.ToList(),
                Genders = _context.Genders.ToList(),
                Roles   = _context.Roles.ToList()
            };

            return(View("AddNewPerson", viewModel));
        }
Exemplo n.º 17
0
        public IActionResult Edit(long id)
        {
            var personInDb = _context.People.SingleOrDefault(p => p.Id == id);

            if (personInDb == null)
            {
                return(NotFound());
            }

            var viewModel = new PersonFormViewModel()
            {
                PersonDto = new PersonDto(),
                OldCI     = personInDb.CI,
                Sources   = _context.Sources.ToList()
            };

            TransferData.Transfer(personInDb, viewModel.PersonDto, _context);
            return(View("PersonForm", viewModel));
        }
        public void CanCreateFormViewModelForPerson()
        {
            // Establish Context
            var viewModelToExpect = new PersonFormViewModel();

            Person person =
                PersonInstanceFactory.CreateValidTransientPerson();

            _personRepository.Expect(r => r.Get(1))
            .Return(person);

            // Act
            PersonFormViewModel viewModelRetrieved =
                _personManagementService.CreateFormViewModelFor(1);

            // Assert
            viewModelRetrieved.ShouldNotBeNull();
            viewModelRetrieved.Person.ShouldNotBeNull();
            viewModelRetrieved.Person.ShouldEqual(person);
        }
Exemplo n.º 19
0
        public async Task <ActionResult> RegisterPerson(PersonFormViewModel viewModel)
        {
            if (ModelState.IsValid) //TODO: ispravi ovo!!!
            {
                var user = new ApplicationUser()
                {
                    UserName = viewModel.RegisterViewModel.Email,
                    Email    = viewModel.RegisterViewModel.Email,
                    IsActive = true
                };
                var result = await UserManager.CreateAsync(user, viewModel.RegisterViewModel.Password);

                if (result.Succeeded)
                {
                    UserManager.AddToRole(user.Id, RoleName.StudentRoleName);

                    //int aaa = viewModel.Faculty;
                    Person Person = new Person()
                    {
                        Name      = viewModel.Name,
                        Phone     = viewModel.Phone,
                        Address   = viewModel.Address,
                        FacultyId = viewModel.Faculty,
                        //PhysicianId = user.Id
                    };
                    UserManager.AddClaim(user.Id, new Claim(ClaimTypes.GivenName, Person.Name));
                    //Mapper.Map<ProfesorFormViewModel, Profesor>(model, Profesor);
                    _unitOfWork.Persons.Add(Person);
                    _unitOfWork.Complete();
                    return(RedirectToAction("Index", "Persons"));
                }

                this.AddErrors(result);
            }

            viewModel.Faculties = _unitOfWork.Faculties.GetFaculties();

            // If we got this far, something failed, redisplay form
            return(View("PersonForm", viewModel));
        }
Exemplo n.º 20
0
        public IActionResult Save(PersonFormViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                viewModel.Sources = _context.Sources.ToList();
                return(View("PersonForm", viewModel));
            }

            var  personInDb      = _context.People.SingleOrDefault(p => p.CI == viewModel.OldCI);
            bool newPersonExists = _context.People.SingleOrDefault(p => p.CI == viewModel.PersonDto.CI) != null;

            if (personInDb != null)
            {
                bool isModifiedCI = viewModel.OldCI != viewModel.PersonDto.CI;
                if (isModifiedCI && newPersonExists)
                {
                    viewModel.ExistOtherInDb = true;
                    viewModel.Sources        = _context.Sources.ToList();
                    return(View("PersonForm", viewModel));
                }
                TransferData.Transfer(viewModel.PersonDto, personInDb, _context);
            }
            else if (newPersonExists)
            {
                viewModel.ExistOtherInDb = true;
                viewModel.Sources        = _context.Sources.ToList();
                return(View("PersonForm", viewModel));
            }
            else
            {
                var newPerson = new Person();
                TransferData.Transfer(viewModel.PersonDto, newPerson, _context);
                _context.People.Add(newPerson);
            }

            _context.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemplo n.º 21
0
        public ActionResult Create(PersonFormViewModel viewModel)
        {
            //var gender = _context.Genders.Single(g => g.Id == viewModel.GenderId);

            if (!ModelState.IsValid)
            {
                viewModel.Genders = _context.Genders.ToList();
                return(View("Create", viewModel));
            }

            var contact = new Person
            {
                FirstName   = viewModel.FirstName,
                LastName    = viewModel.LastName,
                DateOfBirth = viewModel.GetDateOfBirth(),
                GenderId    = viewModel.GenderId
            };

            _context.Contacts.Add(contact);
            _context.SaveChanges();

            return(RedirectToAction("Index", "Home"));
        }
Exemplo n.º 22
0
        public ActionResult Edit(int id)
        {
            var person = _context.People.SingleOrDefault(p => p.ID == id);

            if (person == null)
            {
                return(HttpNotFound());
            }

            var viewModel = new PersonFormViewModel(person, _context.Flags, _context.Boroughs, _context.Services.Where(s => s.Level == ServiceLevel.Site && s.Display));

            ViewBag.TitleID      = new SelectList(_context.Titles, "ID", "TitleValue");
            ViewBag.FinanceCode  = new SelectList(_context.CostCentres, "Code", "CCName");
            ViewBag.SubjectiveID = new SelectList(_context.Subjectives, "Code", "Subname");
            ViewBag.CohortID     = new SelectList(_context.Cohorts.OrderBy(c => c.Number), "ID", "CohortDescription");
            ViewBag.LineManID    = new SelectList(_context.People.Where(p => p.Flags.Select(f => f.ID).Contains("LMR")), "ID", "FullName");
            List <int> teams = person.MemberOf.Select(m => m.TeamID).ToList();

            ViewBag.TeamList = _context.Teams.Where(t => !teams.Contains(t.ID)).OrderBy(t => t.TeamName);
            List <int> servs = person.Services.Select(s => s.ID).ToList();

            ViewBag.ServiceList = _context.Services.Where(s => !servs.Contains(s.ID) && s.Level == ServiceLevel.Speciality && s.Display).OrderBy(s => s.ServiceName);
            return(View("PersonForm", viewModel));
        }
Exemplo n.º 23
0
 public ActionResult Save(Person person)
 {
     if (!ModelState.IsValid)
     {
         var viewModel = new PersonFormViewModel()
         {
             Person  = person,
             Courses = _context.Courses.ToList(),
             Genders = _context.Genders.ToList(),
             Roles   = _context.Roles.ToList()
         };
         return(View("AddNewPerson", viewModel));
     }
     if (person.Id == null)
     {
         //person.Id = 0;
         _context.People.Add(person);
     }
     else
     {
         //mapper.map(customer,customerInDb)
         var personInDb = _context.People.Single(p => p.Id == person.Id);
         personInDb.Name       = person.Name;
         personInDb.Birthdate  = person.Birthdate;
         personInDb.IsPremium  = person.IsPremium;
         personInDb.Mobile     = person.Mobile;
         personInDb.PostalCode = person.PostalCode;
         personInDb.RoleId     = person.RoleId;
         personInDb.GenderId   = person.GenderId;
         personInDb.CourseId   = person.CourseId;
         personInDb.Email      = person.Email;
         personInDb.Address    = person.Address;
     }
     _context.SaveChanges();
     return(RedirectToAction("Index", "People"));
 }
Exemplo n.º 24
0
        public ActionResult Save(PersonFormViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                ViewBag.TitleID      = new SelectList(_context.Titles, "ID", "TitleValue");
                ViewBag.FinanceCode  = new SelectList(_context.CostCentres, "Code", "CCName");
                ViewBag.SubjectiveID = new SelectList(_context.Subjectives, "Code", "Subname");
                ViewBag.CohortID     = new SelectList(_context.Cohorts.OrderBy(c => c.Number), "ID", "CohortDescription");
                ViewBag.LineManID    = new SelectList(_context.People.Where(p => p.Flags.Select(f => f.ID).Contains("LMR")), "ID", "FullName");
                List <int> teams = _context.People.SingleOrDefault(p => p.ID == viewModel.ID).MemberOf.Select(m => m.TeamID).ToList();
                ViewBag.TeamList = _context.Teams.Where(p => !teams.Contains(p.ID)).OrderBy(t => t.TeamName);
                List <int> servs = _context.People.SingleOrDefault(p => p.ID == viewModel.ID).Services.Select(s => s.ID).ToList();
                ViewBag.ServiceList = _context.Services.Where(s => !servs.Contains(s.ID) && s.Level == ServiceLevel.Speciality && s.Display).OrderBy(s => s.ServiceName);
                return(View("PersonForm", viewModel));
            }

            Person userperson = _context.People.SingleOrDefault(p => p.ID == 0);

            if (viewModel.ID == 0)
            {
                Person person = new Person();

                person.TitleID       = viewModel.TitleID;
                person.Forename      = viewModel.Forename;
                person.MiddleName    = viewModel.MiddleName;
                person.Surname       = viewModel.Surname;
                person.PreferredName = viewModel.PreferredName;
                person.Gender        = viewModel.Gender;
                person.JobTitle      = viewModel.JobTitle;
                person.FinanceCode   = viewModel.FinanceCode;
                person.SubjectiveID  = viewModel.SubjectiveID;
                person.Phone         = viewModel.Phone;
                person.Email         = viewModel.Email;
                person.Comments      = viewModel.Comments;
                person.CohortID      = viewModel.CohortID;
                foreach (var fs in viewModel.Flags.Where(f => f.Selected))
                {
                    person.Flags.Add(_context.Flags.Single(f => f.ID == fs.Flag.ID));
                }
                foreach (var bs in viewModel.Boroughs.Where(b => b.Selected))
                {
                    person.Boroughs.Add(_context.Boroughs.Single(b => b.ID == bs.Boro.ID));
                }
                foreach (var mhc in viewModel.MHCs.Where(m => m.Selected))
                {
                    person.Services.Add(_context.Services.Single(s => s.ID == mhc.Service.ID));
                }
                if (person.TitleID != 0 && person.Gender == null)
                {
                    person.Gender = _context.Titles.SingleOrDefault(t => t.ID == person.TitleID).DefaultGender;
                }

                person.Created  = DateTime.Now;
                person.Creator  = userperson;
                person.Modified = DateTime.Now;
                person.Modifier = userperson;
                _context.People.Add(person);
            }
            else
            {
                var personInDb = _context.People.Single(p => p.ID == viewModel.ID);

                personInDb.TitleID       = viewModel.TitleID;
                personInDb.Forename      = viewModel.Forename;
                personInDb.MiddleName    = viewModel.MiddleName;
                personInDb.Surname       = viewModel.Surname;
                personInDb.PreferredName = viewModel.PreferredName;
                personInDb.Gender        = viewModel.Gender;
                personInDb.JobTitle      = viewModel.JobTitle;
                personInDb.FinanceCode   = viewModel.FinanceCode;
                personInDb.SubjectiveID  = viewModel.SubjectiveID;
                personInDb.Phone         = viewModel.Phone;
                personInDb.Email         = viewModel.Email;
                personInDb.Comments      = viewModel.Comments;
                personInDb.CohortID      = viewModel.CohortID;

                foreach (var fs in viewModel.Flags)
                {
                    Flag flg = _context.Flags.Single(f => f.ID == fs.Flag.ID);
                    if (fs.Selected)
                    {
                        if (!personInDb.Flags.Contains(flg))
                        {
                            personInDb.Flags.Add(flg);
                        }
                    }
                    else
                    {
                        if (personInDb.Flags.Contains(flg))
                        {
                            personInDb.Flags.Remove(flg);
                        }
                    }
                }

                foreach (var bs in viewModel.Boroughs)
                {
                    Borough bo = _context.Boroughs.Single(b => b.ID == bs.Boro.ID);
                    if (bs.Selected)
                    {
                        if (!personInDb.Boroughs.Contains(bo))
                        {
                            personInDb.Boroughs.Add(bo);
                        }
                    }
                    else
                    {
                        if (personInDb.Boroughs.Contains(bo))
                        {
                            personInDb.Boroughs.Remove(bo);
                        }
                    }
                }

                foreach (var mhc in viewModel.MHCs)
                {
                    Service s = _context.Services.Single(serv => serv.ID == mhc.Service.ID);
                    if (mhc.Selected)
                    {
                        if (!personInDb.Services.Contains(s))
                        {
                            personInDb.Services.Add(s);
                        }
                    }
                    else
                    {
                        if (personInDb.Services.Contains(s))
                        {
                            personInDb.Services.Remove(s);
                        }
                    }
                }

                foreach (var mem in viewModel.Memberships)
                {
                    var  memberInDB = _context.TeamMembers.Single(m => m.ID == mem.ID);
                    bool changed    = false;
                    if (memberInDB.Active != mem.Active)
                    {
                        memberInDB.Active = mem.Active;
                        changed           = true;
                    }
                    if (memberInDB.Main != mem.Main)
                    {
                        //if set to main all other records for this person shouldn't be!
                        if (mem.Main)
                        {
                            var staffID      = memberInDB.StaffID;
                            var otherRecords = _context.People.Single(p => p.ID == staffID).MemberOf.Where(m => m.ID != mem.ID);
                            foreach (var otherRecord in otherRecords)
                            {
                                if (otherRecord.Main)
                                {
                                    otherRecord.Main     = false;
                                    otherRecord.Modified = DateTime.Now;
                                    otherRecord.Modifier = userperson;
                                }
                            }
                        }
                        memberInDB.Main = mem.Main;
                        changed         = true;
                    }
                    if (changed)
                    {
                        memberInDB.Modified = DateTime.Now;
                        memberInDB.Modifier = userperson;
                    }
                }

                personInDb.Modified = DateTime.Now;
                personInDb.Modifier = userperson;
            }

            _context.SaveChanges();

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