//[ValidateAntiForgeryToken]
        public ActionResult LoginAuth(AccountLoginViewModel login)
        {
            EncriptPasswordSha3 encript = new EncriptPasswordSha3();

            if (string.IsNullOrEmpty(login.Username))
            {
                ModelState.AddModelError("Username", "El Usuario es obligatorio");
            }

            if (string.IsNullOrEmpty(login.Password))
            {
                ModelState.AddModelError("Password", "La contraseña es obligatoria");
            }

            if (ModelState.IsValid)
            {
                //var resUsCheca = _Empleados.ObtenerEmpleados(login.Username);

                if (MembershipService.ValidateUser(login.Username, login.Password))
                {
                    var usuario = _Empleados.ObtenerEmpleados(login.Username);

                    Session[Constantes.Session.Usuario] = usuario.Result;
                    Session[Constantes.Session.Empresa] = usuario.Result.Id_Empresa;

                    FormsAuthentication.SetAuthCookie(usuario.Result.Id_Empleado.ToString(), false);


                    return(RedirectToLocal(login.returnUrl));
                }
                else
                {
                    ViewBag.MensajeError = "Usuario o password incorrecto";
                }
            }

            ViewBag.Login = true;

            return(View(login));
        }
Exemple #2
0
        public JsonResult GuardarEmpleado(int idEmpleado, int frIdEmpresa, string Nombre, string Puesto, int?JefeInmediato, string fecha_nacimiento, string fecha_ingreso, string Email, string Skype, string Movil, string Casa,
                                          string Domicilio, int IsLogin, string Usuario, string Password, string Password2, int estado, string hdPermisos)
        {
            if (!Password.Equals(Password2))
            {
                return(Json(new { success = false, message = "Contraseña y repetir contraseña deben ser iguales." }, JsonRequestBehavior.AllowGet));
            }

            EncriptPasswordSha3 encript = new EncriptPasswordSha3();
            var empleados = new EmpleadosDTO();

            empleados.Id_Empleado     = idEmpleado;
            empleados.Id_Empresa      = frIdEmpresa;
            empleados.Nombre_Empleado = Nombre;
            empleados.Email_Empleado  = Email;
            empleados.Puesto_Empleado = Puesto;
            if (fecha_nacimiento != string.Empty)
            {
                empleados.Fecha_Nacimiento_Empleado = Convert.ToDateTime(fecha_nacimiento);
            }
            if (fecha_ingreso != string.Empty)
            {
                empleados.Antiguedad_Empleado = Convert.ToDateTime(fecha_ingreso);
            }
            empleados.Skype_Empleado      = Skype;
            empleados.Domicilio_Empleado  = Domicilio;
            empleados.Telefono_L_Empleado = Casa;
            empleados.Telefono_M_Empleado = Movil;
            if (JefeInmediato != 0)
            {
                empleados.Id_JefeInmediato_Empleado = JefeInmediato;
            }
            else
            {
                empleados.Id_JefeInmediato_Empleado = null;
            }
            empleados.IsLogIn          = IsLogin;
            empleados.Usuario_Empleado = Usuario;
            empleados.Estado           = estado == 1;

            if (Password != String.Empty)

            {
                //string salt = "E524F5DDD49564AB7C10A42C2A187A1340ECB854877DB019A370809E1C6840E3C35299A7CBEF656E0C656B5F0C1DD46E1051BC61F165266993908633FEFAE5FF";
                var salt       = encript.CreateSalt512();
                var passHashed = encript.GenerateHMAC(Password, salt.Result);

                empleados.Password_Empleado = passHashed.Result;
                empleados.Salt = salt.Result;
            }



            var     jArray = JArray.Parse(hdPermisos);
            JObject a      = JObject.Parse(jArray.First().ToString());

            #region productos
            var permisos = new List <EmpleadoPermisoDTO>();
            foreach (var prod in ((JArray)a.SelectToken("ltsPermisos")))
            {
                EmpleadoPermisoDTO permiso = new EmpleadoPermisoDTO();
                permiso.Id_Empleado  = empleados.Id_Empleado;
                permiso.Id_Permiso   = Convert.ToInt16(((JValue)prod.SelectToken("Id_Permiso")).Value);
                permiso.Tipo_Permiso = Convert.ToInt16(((JValue)prod.SelectToken("Tipo_Permiso")).Value);
                permisos.Add(permiso);
            }
            #endregion

            empleados.EmpleadoPermiso = permisos;


            var gdAsignacion = new EmpreadosData().GuardarEmpleado(empleados);

            if (gdAsignacion.Code != 0)
            {
                return(Json(new { success = false, message = gdAsignacion.Message }, JsonRequestBehavior.AllowGet));
            }



            return(Json(new { success = true }, JsonRequestBehavior.AllowGet));
        }