public async Task <ActionResult> PutEducator(EducatorUpdateDTO edc)
        {
            var _edc = await _educatorRepository.GetById(edc.Id);

            var _userAccount = await _userAccountRepository.GetById(edc.UserAccountId);

            if (_edc == null || _userAccount == null)
            {
                return(NotFound());
            }

            _edc.FirstName = edc.FirstName;
            _edc.LastName  = edc.LastName;
            _edc.Email     = edc.Email;
            _edc.Phone     = edc.Phone;
            _edc.Title     = edc.Title;


            _userAccount.Username  = edc.Username;
            _userAccount.Password  = edc.Password;
            _userAccount.AvatarUrl = edc.AvatarUrl;
            _userAccount.Active    = edc.Active;

            _educatorRepository.UpdateEducator(_edc);
            _userAccountRepository.UpdateUserAccount(_userAccount);

            return(NoContent());
        }
Пример #2
0
        public async Task <ActionResult> PutUserAccount(UserDTO user)
        {
            UserAccount userAccount = await _userAccountRepository.GetByUsername(user.Username);

            if (userAccount != null)
            {
                if (userAccount.AccountTypeId == 1)
                {
                    Administrator userAdmin = await _administratorRepository.GetByUserAccountId(userAccount.Id);

                    if (userAdmin != null)
                    {
                        userAccount.Password  = user.Password;
                        userAccount.AvatarUrl = user.AvatarUrl;
                        userAdmin.FirstName   = user.FirstName;
                        userAdmin.LastName    = user.LastName;
                        userAdmin.Email       = user.Email;
                        userAdmin.Phone       = user.Phone;

                        _userAccountRepository.UpdateUserAccount(userAccount);
                        _administratorRepository.UpdateAdmin(userAdmin);

                        return(NoContent());
                    }
                }
                else if (userAccount.AccountTypeId == 2)
                {
                    Educator userEducator = await _educatorRepository.GetByUserAccountId(userAccount.Id);

                    if (userEducator != null)
                    {
                        userAccount.Password   = user.Password;
                        userAccount.AvatarUrl  = user.AvatarUrl;
                        userEducator.FirstName = user.FirstName;
                        userEducator.LastName  = user.LastName;
                        userEducator.Email     = user.Email;
                        userEducator.Phone     = user.Phone;

                        _userAccountRepository.UpdateUserAccount(userAccount);
                        _educatorRepository.UpdateEducator(userEducator);

                        return(NoContent());
                    }
                }
                else if (userAccount.AccountTypeId == 3)
                {
                    Student userStudent = await _studentRepository.GetByUserAccountId(userAccount.Id);

                    if (userStudent != null)
                    {
                        userAccount.Password  = user.Password;
                        userAccount.AvatarUrl = user.AvatarUrl;
                        userStudent.FirstName = user.FirstName;
                        userStudent.LastName  = user.LastName;
                        userStudent.Email     = user.Email;
                        userStudent.Phone     = user.Phone;

                        _userAccountRepository.UpdateUserAccount(userAccount);
                        _studentRepository.UpdateStudent(userStudent);

                        return(NoContent());
                    }
                }
                else
                {
                    return(NotFound());
                }
            }



            return(NotFound());
        }