예제 #1
0
        public ActionResult Login(AccountViewModel accountViewModel)
        {
            usuario.NomUsuario = accountViewModel.Email;
            usuario.Password   = accountViewModel.Password;

            AccountDomainModel accountDomainModel = new AccountDomainModel();

            AutoMapper.Mapper.Map(accountViewModel, accountDomainModel);

            if (IAccountBusiness.ExistUsuario(accountDomainModel))
            {
                accountDomainModel = IAccountBusiness.ValidarLogin(accountDomainModel);


                if (accountDomainModel != null)
                {
                    AccountViewModel viewAccount = new AccountViewModel();
                    AutoMapper.Mapper.Map(accountDomainModel, viewAccount);
                    SessionPersister.AccountSession = viewAccount;
                }
            }
            else
            {
                var res = wsusuariosSoapClient.ConsultaUsuarios(seguridad, usuario);
                //var sigeAlumnp = wsusuariosSoapClient.ConsultaUsuariosAlumno(seguridad, usuario);

                PersonalDomainModel personalDomainModel = new PersonalDomainModel();
                if (res.Nombre_usuario != null && res.Clave != null)
                {
                    _ = res.Nombre == null ? res.Nombre = "..." : res.Nombre = res.Nombre;
                    personalDomainModel.Nombre             = res.Nombre;
                    personalDomainModel.ApellidoPaterno    = res.ApellidoPaterno;
                    personalDomainModel.ApellidoMaterno    = res.ApellidoMaterno;
                    personalDomainModel.AccountDomainModel = new AccountDomainModel {
                        Email = res.Correo_Electronico, Password = usuario.Password, Nombre = usuario.NomUsuario, TipoUsuario = res.TipoUsuario.ToString()
                    };
                    personalDomainModel.strTipoPersonal = res.TipoPersonal.ToString();
                    personalDomainModel.strUniversidad  = res.Universidad;

                    if (IAccountBusiness.AddUsuario(personalDomainModel))
                    {
                        Login(accountViewModel);
                    }
                }
            }
            return(RedirectToAction("Create", "Personal"));
        }