public JsonResult ActualizaPassword(int idUser, string passwordActual, string passwordNuevo, string passwordConfirmar)
        {
            try
            {
                var result = from u in db.mUsuarios where (u.UsuarioId == idUser) select u;

                if (result.Count() != 0)
                {
                    var    dbUsu = result.First();
                    string contrasenaAct;
                    contrasenaAct = EncriptarController.GetMD5(passwordActual);

                    if (contrasenaAct == dbUsu.PasswordUsuario)
                    {
                        if (passwordNuevo.Trim() == passwordConfirmar.Trim())
                        {
                            string contrasenaNueva;
                            contrasenaNueva       = EncriptarController.GetMD5(passwordConfirmar);
                            dbUsu.PasswordUsuario = contrasenaNueva;
                            db.SaveChanges();

                            return(Json(new { Success = true, id = idUser, Message = "Contraseña actualizada correctamente." }));
                        }
                        else
                        {
                            return(Json(new { Success = false, id = idUser, tipo = 1, Message = "Las contraseñas no coinciden." }));
                        }
                    }
                    else
                    {
                        return(Json(new { Success = false, id = idUser, tipo = 2, Message = "La contraseña actual es incorrecta." }));
                    }
                }
                else
                {
                    return(Json(new { Success = false, id = idUser, Message = "Usuario no existe." }));
                }


                //var resultado = db.Database.SqlQuery<string>("execute [dbo].[sp_CambiarPassword] @p0,@p1,@p2,@p3", idUser, passwordActual, passwordNuevo, passwordConfirmar).FirstOrDefault();
                //string[] resultados = resultado.Split('|');

                //if (resultados[0] == "0")
                //{
                //    return Json(new { Success = true, id = idUser, Message = resultados[1] });

                //}
                //else
                //{
                //    return Json(new { Success = false, id = idUser, Message = "Error : " + resultados[1] });
                //}
            }
#pragma warning disable CS0168 // La variable 'exp' se ha declarado pero nunca se usa
            catch (Exception exp)
#pragma warning restore CS0168 // La variable 'exp' se ha declarado pero nunca se usa
            {
                return(Json(new { Success = false, Message = "No fue posible guardar la información." }));
            }
        }
        public JsonResult Nuevo(mUsuarios pobjModelo, int RegionId, int ZonaId, int idUsuario)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var jRegion = (from j in db.mCoordinacionRegionZonaUsuario
                                   where j.CoordinacionRegionId == RegionId
                                   select j).ToList();

                    var jZona = (from z in db.mCoordinacionZonaUsuario
                                 where z.CoordinacionZonaId == ZonaId &&
                                 z.JefeCoordinacionZona == true
                                 select z).ToList();

                    if (correoExistente(pobjModelo.EmailUsuario) == true)
                    {
                        return(Json(new { Success = false, Message = "El correo electrónico del usuario ya está en uso." }));
                    }
                    else if (loginExistente(pobjModelo.LoginUsuario))
                    {
                        return(Json(new { Success = false, Message = "El usuario inicio de sesión ya está en uso." }));
                    }
                    else if (RFCExistente(pobjModelo.RFCUsuario))
                    {
                        return(Json(new { Success = false, Message = "El RFC ya esta registrado con otro usuario." }));
                    }
                    else
                    {
                        string contrasenaRec;
                        contrasenaRec = EncriptarController.GetMD5(pobjModelo.PasswordUsuario);
                        var fig = (pobjModelo.RolId == 2 ? 1 : (pobjModelo.RolId == 4 ? 2 : (pobjModelo.RolId == 5 ? 3 : 0)));
                        pobjModelo.FechaCreacion   = DateTime.Now;
                        pobjModelo.ImagenUsuario   = pobjModelo.ImagenUsuario == null ? null : pobjModelo.ImagenUsuario;
                        pobjModelo.PasswordUsuario = contrasenaRec;
                        pobjModelo.NumeroEmpleado  = pobjModelo.NumeroEmpleado;
                        if (fig != 0)
                        {
                            pobjModelo.TipoFiguraId = fig;
                        }
                        db.mUsuarios.Add(pobjModelo);
                        db.SaveChanges();

                        if (jZona.Count() == 0 && pobjModelo.RolId == 3)
                        {
                            mCoordinacionZonaUsuario objCoordinacionZona = new mCoordinacionZonaUsuario();

                            objCoordinacionZona.UsuarioId            = pobjModelo.UsuarioId;
                            objCoordinacionZona.CoordinacionZonaId   = ZonaId;
                            objCoordinacionZona.JefeCoordinacionZona = true;
                            objCoordinacionZona.UsuarioCreacionId    = idUsuario;
                            objCoordinacionZona.FechaCreacion        = DateTime.Now;
                            db.mCoordinacionZonaUsuario.Add(objCoordinacionZona);
                            db.SaveChanges();
                        }
                        else if (pobjModelo.RolId != 6)
                        {
                            if (pobjModelo.RolId == 2 || pobjModelo.RolId == 4 || pobjModelo.RolId == 5)
                            {
                                mCoordinacionZonaUsuario objCoordinacionZona = new mCoordinacionZonaUsuario();

                                objCoordinacionZona.UsuarioId            = pobjModelo.UsuarioId;
                                objCoordinacionZona.CoordinacionZonaId   = ZonaId;
                                objCoordinacionZona.JefeCoordinacionZona = false;
                                objCoordinacionZona.UsuarioCreacionId    = idUsuario;
                                objCoordinacionZona.FechaCreacion        = DateTime.Now;
                                db.mCoordinacionZonaUsuario.Add(objCoordinacionZona);
                                db.SaveChanges();
                            }
                            else if (pobjModelo.RolId == 3)
                            {
                                var temp = jZona.First();
                                temp.UsuarioId = pobjModelo.UsuarioId;
                                db.SaveChanges();
                            }
                            else
                            {
                                if (ZonaId != 0)
                                {
                                    mCoordinacionZonaUsuario objCoordinacionZona = new mCoordinacionZonaUsuario();

                                    objCoordinacionZona.UsuarioId            = pobjModelo.UsuarioId;
                                    objCoordinacionZona.CoordinacionZonaId   = ZonaId;
                                    objCoordinacionZona.JefeCoordinacionZona = false;
                                    objCoordinacionZona.UsuarioCreacionId    = idUsuario;
                                    objCoordinacionZona.FechaCreacion        = DateTime.Now;
                                    db.mCoordinacionZonaUsuario.Add(objCoordinacionZona);
                                    db.SaveChanges();
                                }
                            }
                        }

                        if (jRegion.Count() == 0 && pobjModelo.RolId == 6)
                        {
                            mCoordinacionRegionZonaUsuario objCoordinacionZonaRegion = new mCoordinacionRegionZonaUsuario();

                            objCoordinacionZonaRegion.UsuarioJefeRegionId = pobjModelo.UsuarioId;
                            //objCoordinacionZonaRegion.CoordinacionZonaId = ZonaId;
                            objCoordinacionZonaRegion.CoordinacionRegionId = RegionId;
                            db.mCoordinacionRegionZonaUsuario.Add(objCoordinacionZonaRegion);
                            db.SaveChanges();
                        }
                        else
                        {
                            if (pobjModelo.RolId == 6)
                            {
                                var dbjefe = jRegion.First();
                                dbjefe.UsuarioJefeRegionId = pobjModelo.UsuarioId;
                                db.SaveChanges();
                            }
                        }


                        return(Json(new { Success = true, id = pobjModelo.UsuarioId, Message = "Se guardó correctamente el usuario " }));
                    }
                }
#pragma warning disable CS0168 // La variable 'exp' se ha declarado pero nunca se usa
                catch (Exception exp)
#pragma warning restore CS0168 // La variable 'exp' se ha declarado pero nunca se usa
                {
                    return(Json(new { Success = false, Message = "No fue posible guardar la información" }));
                }
            }

            return(Json(new { Success = false, Message = "Información incompleta" }));
        }
        public JsonResult Actualiza(mUsuarios pobjModelo, int RegionId, int ZonaId, int idUsuario)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    if (pobjModelo.EstatusId == 6)
                    {
                        var result = from u in db.mUsuarios where (u.UsuarioId == pobjModelo.UsuarioId) select u;
                        var dbUsu  = result.First();
                        dbUsu.EstatusId = pobjModelo.EstatusId;
                        db.SaveChanges();

                        return(Json(new { Success = true, id = pobjModelo.UsuarioId, Message = "Se actualizó correctamente el usuario " }));
                    }
                    else
                    {
                        var jRegion = (from j in db.mCoordinacionRegionZonaUsuario
                                       where j.CoordinacionRegionId == RegionId
                                       select j).ToList();

                        var usarioexisteReg = (from j in db.mCoordinacionRegionZonaUsuario
                                               where j.UsuarioJefeRegionId == pobjModelo.UsuarioId
                                               select j).ToList();

                        var jZona = (from z in db.mCoordinacionZonaUsuario
                                     where z.CoordinacionZonaId == ZonaId &&
                                     z.JefeCoordinacionZona == true
                                     select z).ToList();

                        var jZonaActual = (from z in db.mCoordinacionZonaUsuario
                                           where z.UsuarioId == pobjModelo.UsuarioId &&
                                           z.JefeCoordinacionZona == true
                                           select z).ToList();

                        if (jZonaActual.Count() != 0)
                        {
                            var czona = jZonaActual.First();

                            var notificaciones = (from z in db.mNotificaciones
                                                  where z.CoordinacionZonaUsuarioId == czona.CordinacionZonaUsuarioId
                                                  select z).ToList();
                            db.mNotificaciones.RemoveRange(notificaciones);
                            db.SaveChanges();

                            db.mCoordinacionZonaUsuario.RemoveRange(jZonaActual);
                            db.SaveChanges();
                        }

                        var usarioexisteZona = (from j in db.mCoordinacionZonaUsuario
                                                where j.UsuarioId == pobjModelo.UsuarioId
                                                select j).ToList();

                        var    result = from u in db.mUsuarios where (u.UsuarioId == pobjModelo.UsuarioId) select u;
                        string contrasenaRec;
                        if (result.First().PasswordUsuario != pobjModelo.PasswordUsuario)
                        {
                            contrasenaRec = EncriptarController.GetMD5(pobjModelo.PasswordUsuario);
                        }
                        else
                        {
                            contrasenaRec = result.First().PasswordUsuario;
                        }

                        if (result.Count() != 0)
                        {
                            var dbUsu = result.First();
                            if (dbUsu.EmailUsuario != pobjModelo.EmailUsuario)
                            {
                                if (correoExistente(pobjModelo.EmailUsuario))
                                {
                                    return(Json(new { Success = false, Message = "El correo electrónico del usuario ya está en uso" }));
                                }
                            }

                            if (dbUsu.LoginUsuario != pobjModelo.LoginUsuario)
                            {
                                if (loginExistente(pobjModelo.LoginUsuario))
                                {
                                    return(Json(new { Success = false, Message = "El login del usuario ya está en uso." }));
                                }
                            }

                            if (dbUsu.RFCUsuario != pobjModelo.RFCUsuario)
                            {
                                if (RFCExistente(pobjModelo.RFCUsuario))
                                {
                                    return(Json(new { Success = false, Message = "El RFC ya esta registrado con otro usuario." }));
                                }
                            }


                            dbUsu.NombresUsuario   = pobjModelo.NombresUsuario;
                            dbUsu.ApellidosUsuario = pobjModelo.ApellidosUsuario;
                            dbUsu.LoginUsuario     = pobjModelo.LoginUsuario;
                            dbUsu.PasswordUsuario  = contrasenaRec;
                            dbUsu.EmailUsuario     = pobjModelo.EmailUsuario;
                            dbUsu.RFCUsuario       = pobjModelo.RFCUsuario;
                            dbUsu.RolId            = pobjModelo.RolId;
                            dbUsu.NumeroEmpleado   = pobjModelo.NumeroEmpleado;
                            var fig = (pobjModelo.RolId == 2 ? 1 : (pobjModelo.RolId == 4 ? 2 : (pobjModelo.RolId == 5 ? 3 : 0)));
                            if (fig != 0)
                            {
                                dbUsu.TipoFiguraId = fig;
                            }
                            if (pobjModelo.ImagenUsuario != null)
                            {
                                dbUsu.ImagenUsuario = pobjModelo.ImagenUsuario;
                            }

                            dbUsu.EstatusId = pobjModelo.EstatusId;


                            db.SaveChanges();

                            if (jZona.Count() == 0 && pobjModelo.RolId == 3)
                            {
                                if (jZona.Count == 0)
                                {
                                    mCoordinacionZonaUsuario objCoordinacionZona = new mCoordinacionZonaUsuario();

                                    objCoordinacionZona.UsuarioId            = pobjModelo.UsuarioId;
                                    objCoordinacionZona.CoordinacionZonaId   = ZonaId;
                                    objCoordinacionZona.JefeCoordinacionZona = true;
                                    objCoordinacionZona.UsuarioCreacionId    = idUsuario;
                                    objCoordinacionZona.FechaCreacion        = DateTime.Now;
                                    db.mCoordinacionZonaUsuario.Add(objCoordinacionZona);
                                    db.SaveChanges();
                                }
                                else
                                {
                                    var col = db.mCoordinacionZonaUsuario.Where(t => t.UsuarioId == pobjModelo.UsuarioId);
                                    db.mCoordinacionZonaUsuario.RemoveRange(col);
                                    db.SaveChanges();

                                    mCoordinacionZonaUsuario objCoordinacionZona = new mCoordinacionZonaUsuario();

                                    objCoordinacionZona.UsuarioId            = pobjModelo.UsuarioId;
                                    objCoordinacionZona.CoordinacionZonaId   = ZonaId;
                                    objCoordinacionZona.JefeCoordinacionZona = true;
                                    objCoordinacionZona.UsuarioCreacionId    = idUsuario;
                                    objCoordinacionZona.FechaCreacion        = DateTime.Now;
                                    db.mCoordinacionZonaUsuario.Add(objCoordinacionZona);
                                    db.SaveChanges();
                                }
                            }
                            else if (pobjModelo.RolId != 6)
                            {
                                if (pobjModelo.RolId == 2 || pobjModelo.RolId == 4 || pobjModelo.RolId == 5)
                                {
                                    var usuarioZona = (from j in db.mCoordinacionZonaUsuario
                                                       where j.UsuarioId == pobjModelo.UsuarioId
                                                       select j).ToList();
                                    if (usuarioZona.Count() == 0)
                                    {
                                        mCoordinacionZonaUsuario objCoordinacionZona = new mCoordinacionZonaUsuario();

                                        objCoordinacionZona.UsuarioId            = pobjModelo.UsuarioId;
                                        objCoordinacionZona.CoordinacionZonaId   = ZonaId;
                                        objCoordinacionZona.JefeCoordinacionZona = false;
                                        objCoordinacionZona.UsuarioCreacionId    = idUsuario;
                                        objCoordinacionZona.FechaCreacion        = DateTime.Now;
                                        db.mCoordinacionZonaUsuario.Add(objCoordinacionZona);
                                        db.SaveChanges();
                                    }
                                    else
                                    {
                                        //var col = db.mCoordinacionZonaUsuario.Where(t => t.UsuarioId == pobjModelo.UsuarioId);
                                        //db.mCoordinacionZonaUsuario.RemoveRange(col);
                                        //db.SaveChanges();

                                        //mCoordinacionZonaUsuario objCoordinacionZona = new mCoordinacionZonaUsuario();

                                        //objCoordinacionZona.UsuarioId = pobjModelo.UsuarioId;
                                        //objCoordinacionZona.CoordinacionZonaId = ZonaId;
                                        //objCoordinacionZona.JefeCoordinacionZona = false;
                                        //objCoordinacionZona.UsuarioCreacionId = idUsuario;
                                        //objCoordinacionZona.FechaCreacion = DateTime.Now;
                                        //db.mCoordinacionZonaUsuario.Add(objCoordinacionZona);
                                        //db.SaveChanges();
                                        var dbTemp = usarioexisteZona.First();
                                        dbTemp.CoordinacionZonaId = ZonaId;
                                        db.SaveChanges();
                                    }
                                }
                                else if (pobjModelo.RolId == 3)
                                {
                                    var temp = jZona.First();
                                    temp.UsuarioId = pobjModelo.UsuarioId;
                                    db.SaveChanges();
                                }
                                else
                                {
                                    var usuarioZona = (from j in db.mCoordinacionZonaUsuario
                                                       where j.UsuarioId == pobjModelo.UsuarioId
                                                       select j).ToList();
                                    if (usuarioZona.Count() != 0)
                                    {
                                        var col = db.mCoordinacionZonaUsuario.Where(t => t.UsuarioId == pobjModelo.UsuarioId);
                                        db.mCoordinacionZonaUsuario.RemoveRange(col);
                                        db.SaveChanges();
                                    }

                                    if (ZonaId != 0)
                                    {
                                        mCoordinacionZonaUsuario objCoordinacionZona = new mCoordinacionZonaUsuario();

                                        objCoordinacionZona.UsuarioId            = pobjModelo.UsuarioId;
                                        objCoordinacionZona.CoordinacionZonaId   = ZonaId;
                                        objCoordinacionZona.JefeCoordinacionZona = false;
                                        objCoordinacionZona.UsuarioCreacionId    = idUsuario;
                                        objCoordinacionZona.FechaCreacion        = DateTime.Now;
                                        db.mCoordinacionZonaUsuario.Add(objCoordinacionZona);
                                        db.SaveChanges();
                                    }
                                }
                            }

                            if (jRegion.Count() == 0 && pobjModelo.RolId == 6)
                            {
                                if (usarioexisteReg.Count() == 0)
                                {
                                    mCoordinacionRegionZonaUsuario objCoordinacionZonaRegion = new mCoordinacionRegionZonaUsuario();

                                    objCoordinacionZonaRegion.UsuarioJefeRegionId = pobjModelo.UsuarioId;
                                    //objCoordinacionZonaRegion.CoordinacionZonaId = ZonaId;
                                    objCoordinacionZonaRegion.CoordinacionRegionId = RegionId;
                                    db.mCoordinacionRegionZonaUsuario.Add(objCoordinacionZonaRegion);
                                    db.SaveChanges();
                                }
                                else
                                {
                                    var col = db.mCoordinacionRegionZonaUsuario.Where(t => t.UsuarioJefeRegionId == pobjModelo.UsuarioId);
                                    db.mCoordinacionRegionZonaUsuario.RemoveRange(col);
                                    db.SaveChanges();

                                    mCoordinacionRegionZonaUsuario objCoordinacionZonaRegion = new mCoordinacionRegionZonaUsuario();

                                    objCoordinacionZonaRegion.UsuarioJefeRegionId = pobjModelo.UsuarioId;
                                    //objCoordinacionZonaRegion.CoordinacionZonaId = ZonaId;
                                    objCoordinacionZonaRegion.CoordinacionRegionId = RegionId;
                                    db.mCoordinacionRegionZonaUsuario.Add(objCoordinacionZonaRegion);
                                    db.SaveChanges();
                                }
                            }
                            else
                            {
                                if (pobjModelo.RolId == 6)
                                {
                                    var dbjefe = jRegion.First();
                                    dbjefe.UsuarioJefeRegionId = pobjModelo.UsuarioId;
                                    db.SaveChanges();
                                }
                            }
                        }
                        return(Json(new { Success = true, id = pobjModelo.UsuarioId, Message = "Se actualizó correctamente el usuario " }));
                    }
                }
#pragma warning disable CS0168 // La variable 'exp' se ha declarado pero nunca se usa
                catch (Exception exp)
#pragma warning restore CS0168 // La variable 'exp' se ha declarado pero nunca se usa
                {
                    return(Json(new { Success = false, Message = "No fue posible guardar la información." }));
                }
            }

            return(Json(new { Success = false, Message = "Información del usuario esta incompleta" }));
        }
예제 #4
0
        public ActionResult ResetPassword(string NuevoPassword, string confirmaPassword, mResetPassword model)
        {
            ViewBag.errorResetPassword = string.Empty;

            var objResetPassword = (from liga in db.mResetPassword
                                    where liga.Id == model.Id
                                    select liga).FirstOrDefault();

            try
            {
                if (NuevoPassword.Trim() == confirmaPassword.Trim())
                {
                    if (objResetPassword != null)
                    {
                        if (objResetPassword.EstatusId == 5)
                        {
                            DateTime f1 = Convert.ToDateTime(objResetPassword.Fecha).AddHours(3);
                            DateTime f2 = DateTime.Now;

                            var result = DateTime.Compare(f2, f1);
                            if (result < 0)
                            {
                                var Usuario = (from user in db.mUsuarios
                                               where user.UsuarioId == objResetPassword.UsuarioId && user.EstatusId == 5
                                               select user).FirstOrDefault();
                                string contrasenaRec;
                                contrasenaRec              = EncriptarController.GetMD5(confirmaPassword);
                                Usuario.PasswordUsuario    = contrasenaRec;
                                objResetPassword.EstatusId = 6;
                                db.SaveChanges();
                                ViewBag.successChangePassword = "******";
                                ViewBag.error = string.Empty;
                                var objLogin = new Models.Login();
                                return(View("Login", objLogin));
                            }
                            else
                            {
                                ViewBag.errorResetPassword = Resources.Autentificacion.msgLigaNoActiva;
                                return(View());
                            }
                        }
                        else
                        {
                            ViewBag.errorResetPassword = Resources.Autentificacion.msgLigaNoActiva;
                            return(View());
                        }
                    }
                    else
                    {
                        ViewBag.errorResetPassword = Resources.Autentificacion.msgLigaNoExiste;
                        return(View());
                    }
                }
                else
                {
                    ViewBag.errorResetPassword = Resources.Autentificacion.msgPasswordNoCoincide;
                    return(View());
                }
            }
#pragma warning disable CS0168 // La variable 'exp' se ha declarado pero nunca se usa
            catch (Exception exp)
#pragma warning restore CS0168 // La variable 'exp' se ha declarado pero nunca se usa
            {
                ViewBag.error = "Login:"******"Error al guardar la información";
            }
            return(View());
        }
예제 #5
0
        public ActionResult Login(Models.Login model, string returnUrl)
        {
            ViewBag.error = string.Empty;
            try
            {
                //EncriptarController DesencriptaController = new EncriptarController();
                string contrasenaRec;
                contrasenaRec = EncriptarController.GetMD5(model.Contrasena);

                if (ModelState.IsValid)
                {
                    string agentName = model.NombreUsuario;

                    var result = (from user in db.mUsuarios
                                  where user.LoginUsuario == agentName && user.EstatusId == 5
                                  select user).FirstOrDefault();

                    if (result != null)
                    {
                        if (result.PasswordUsuario == contrasenaRec)
                        {
                            FormsAuthentication.SetAuthCookie(result.UsuarioId.ToString(), false);
                            var objCookie = new HttpCookie("data", result.UsuarioId.ToString());
                            Response.Cookies.Add(objCookie);

                            if (returnUrl != null)
                            {
                                return(Redirect(returnUrl));
                            }
                            else
                            {
                                return(Redirect(Url.Content("~/Principal/Inicio")));
                            }
                        }
                        else
                        {
                            ViewBag.error = Resources.Autentificacion.msg2;
                            ViewBag.successChangePassword = string.Empty;
                            return(View());
                        }
                    }
                    else
                    {
                        ViewBag.error = Resources.Autentificacion.msg2;
                        ViewBag.successChangePassword = string.Empty;
                        return(View());
                    }
                }
                else
                {
                    ViewBag.error = Resources.Autentificacion.msg1;
                }
                ViewBag.successChangePassword = string.Empty;
            }
#pragma warning disable CS0168 // La variable 'exp' se ha declarado pero nunca se usa
            catch (Exception exp)
#pragma warning restore CS0168 // La variable 'exp' se ha declarado pero nunca se usa
            {
                ViewBag.error = "Login:"******"Error al obtener la información";
                ViewBag.successChangePassword = string.Empty;
            }

            return(View());
        }