public bool L_EliminarRepresentanteLegal(int IdRepresentante)
        {
            bool           Resultado = false;
            CatUsuarios    UsuarioDelRepresentante = new CatUsuarios();
            LogicaUsuarios LogicaUsuario           = new LogicaUsuarios();

            UsuarioDelRepresentante = LogicaUsuario.L_DetallesUsuarioPorRepresentante(IdRepresentante);
            LogicaUsuario.L_EliminarUsuario(UsuarioDelRepresentante.U_IdUsuario);
            Resultado = DatosAuxiliar.D_EliminarRepresentanteLegal(IdRepresentante);
            return(Resultado);
        }
Exemplo n.º 2
0
        public ActionResult EjecutarAccionUsuario(CatUsuarios UsuarioPorEditar, string Accion, IEnumerable <HttpPostedFileBase> files)
        {
            string           RFCAsociado   = Session["RFCAsociado"].ToString();
            string           Validacion    = "";
            MetodosGenerales MetodoGeneral = new MetodosGenerales();


            try
            {
                CatUsuarios Usuario = (CatUsuarios)Session["Usuario"];

                if (Usuario == null || Usuario.U_IdTipoUsuario != 2)
                {
                    TempData["notice"] = "La sesión ha expirado.";
                    return(RedirectToAction("Logout", "Home"));
                }

                switch (Accion)
                {
                case "Insertar":
                    Validacion = MetodoGeneral.ValidarFIEL(files, UsuarioPorEditar.U_ClavePrivada, RFCAsociado);
                    if (Validacion == "Validación exitosa")
                    {
                        LogicaUsuarios LogicaUsuario    = new LogicaUsuarios();
                        CatUsuarios    UsuarioExistente = LogicaUsuario.L_DetallesUsuarioPorNombreUnicamente(UsuarioPorEditar.U_Nombre);

                        if (UsuarioExistente.U_IdUsuario != null && UsuarioExistente.U_IdUsuario > 0)
                        {
                            TempData["notice"]    = "Ya existe una cuenta de usuario con el mismo nombre, por favor elige otro.";
                            Session["TipoAlerta"] = "Error";
                            return(View("Insertar", UsuarioPorEditar));
                        }
                        else
                        {
                            if (UsuarioPorEditar.U_Password != UsuarioPorEditar.U_ConfirmarPassword)
                            {
                                TempData["notice"]    = "Las contraseñas no coinciden.";
                                Session["TipoAlerta"] = "Error";
                                return(View("Insertar", UsuarioPorEditar));
                            }
                            else
                            {
                                int IdRepresentanteLegal = Usuario.U_IdRepresentanteAsociado;
                                UsuarioPorEditar.U_Activo        = true;
                                UsuarioPorEditar.U_IdTipoUsuario = 1;
                                if (LogicaUsuario.L_InsertarUsuario(UsuarioPorEditar, Usuario.U_IdEmpresa, IdRepresentanteLegal))
                                {
                                    TempData["notice"]    = "El usuario operativo ha sido creado.";
                                    Session["TipoAlerta"] = "Correcto";
                                    return(RedirectToAction("Index"));
                                }
                                else
                                {
                                    TempData["notice"]    = "No se pudo crear el Representante legal, por favor revise la información";
                                    Session["TipoAlerta"] = "Error";
                                    return(RedirectToAction("Insertar", UsuarioPorEditar));
                                }
                            }
                        }
                    }
                    else
                    {
                        TempData["notice"]    = Validacion;
                        Session["TipoAlerta"] = "Error";
                        return(RedirectToAction("Insertar", UsuarioPorEditar));
                    }


                case "Eliminar":
                    Validacion = MetodoGeneral.ValidarFIEL(files, UsuarioPorEditar.U_ClavePrivada, RFCAsociado);
                    if (Validacion == "Validación exitosa")
                    {
                        if (LogicaUsuario.L_EliminarUsuario(UsuarioPorEditar.U_IdUsuario))
                        {
                            if (UsuarioPorEditar.U_IdUsuario == Usuario.U_IdUsuario)
                            {
                                return(RedirectToAction("Index", "Home"));
                            }
                            else
                            {
                                TempData["notice"]    = "Se ha eliminado el usuario.";
                                Session["TipoAlerta"] = "Correcto";
                                return(RedirectToAction("Index", "Usuarios"));
                            }
                        }
                        else
                        {
                            TempData["notice"]    = "Operación no concluida, favor de comunicarse con un administrador de SENER.";
                            Session["TipoAlerta"] = "Error";
                            return(RedirectToAction("Eliminar", new { IdUsuario = UsuarioPorEditar.U_IdUsuario }));
                        }
                    }
                    else
                    {
                        TempData["notice"]    = Validacion;
                        Session["TipoAlerta"] = "Error";
                        return(RedirectToAction("Eliminar", new { IdUsuario = UsuarioPorEditar.U_IdUsuario }));
                    }



                default:
                    return(RedirectToAction("Index"));
                }
            }
            catch (Exception ex)
            {
                TempData["notice"]    = ConfigurationManager.AppSettings["MensajeError"].ToString();
                Session["TipoAlerta"] = "Error";
                MetodoGeneral.RegistroDeError(ex.Message, "Usuarios: EjecutarAccionUsuario(" + Accion + ")");
                return(RedirectToAction("Index"));
            }
        }