예제 #1
0
        public JsonResult EliminarSolicitud()
        {
            Boolean validar;
            string  titulo, msj;
            Proceso proceso    = HttpContext.Session.GetComplexData <Proceso>("Proceso");
            int     validacion = ConsultaSolicitud.EliminarSolicitud(proceso.Solicitud.Id);

            if (validacion > 0)
            {
                HttpContext.Session.SetComplexData("Proceso", null);
                validar = true;
                titulo  = "Solicitud eliminada existosamente";
                msj     = "Se ha eliminado los datos de la solicitud en el sistema sin inconveniente.";
            }
            else if (validacion == -2)
            {
                validar = false;
                titulo  = "Se ha producido un problema";
                msj     = "La solicitud no se pudo eliminar. Esto puede suceder a causa de valores erroneos internamente. Si el problema persiste, favor de contactarse con soporte.";
            }
            else
            {
                validar = false;
                titulo  = "Se ha producido un problema";
                msj     = "La solicitud no se pudo eliminar. Verifique que tenga conexión a internet e intentelo nuevamente. Si el problema persiste favor de contactarse con soporte.";
            }

            var datos = new
            {
                validar,
                titulo,
                msj
            };

            return(Json(datos));
        }
        public JsonResult EliminarPoceso(int IdSolicitud, int IdResolucion, int IdDeclaracionGastos, int fechaTerminoEvento, String EstadoFinal)
        {
            String  tipoUsuario = HttpContext.Session.GetString("TipoUsuario");
            string  webRootPath = _webHostEnvironment.WebRootPath, msj, titulo;
            int     eliminarSolicitud = -1, eliminarResolucion = -1, eliminarDG = -1;
            Boolean eliminarCarpeta = false, validar = false;

            if (tipoUsuario.Equals("Estudiante dirigente"))
            {
                Usuario             usuario        = HttpContext.Session.GetComplexData <Usuario>("DatosUsuario");
                List <Organizacion> organizaciones = ConsultaUsuario.LeerOrganizacion(usuario.Id, tipoUsuario);
                Organizacion        organizacion   = organizaciones[0];

                if (IdDeclaracionGastos != -1)
                {
                    eliminarDG = ConsultaDeclaracionGastos.EliminarDocumentosDG(IdDeclaracionGastos);
                    if (eliminarDG == 1)
                    {
                        eliminarResolucion = ConsultaResolucion.EliminarResolucion(IdResolucion);
                        if (eliminarResolucion == 1)
                        {
                            eliminarSolicitud = ConsultaSolicitud.EliminarSolicitud(IdSolicitud);
                            eliminarCarpeta   = true;
                        }
                    }
                }
                else if (IdResolucion != -1)
                {
                    eliminarResolucion = ConsultaResolucion.EliminarResolucion(IdResolucion);
                    if (eliminarResolucion == 1)
                    {
                        eliminarSolicitud = ConsultaSolicitud.EliminarSolicitud(IdSolicitud);
                        eliminarCarpeta   = true;
                    }
                }
                else
                {
                    eliminarSolicitud = ConsultaSolicitud.EliminarSolicitud(IdSolicitud);
                    eliminarCarpeta   = true;
                }

                try
                {
                    if (eliminarCarpeta)
                    {
                        string rutaCarpetaProceso = Path.Combine(webRootPath, "Procesos", organizacion.Nombre, fechaTerminoEvento.ToString(), IdSolicitud.ToString());
                        if (Directory.Exists(rutaCarpetaProceso))
                        {
                            Directory.Delete(rutaCarpetaProceso, true);
                        }
                        titulo  = "Eliminación exitosa";
                        msj     = "El proceso se ha eliminado correctamente";
                        validar = true;
                    }
                    else
                    {
                        titulo  = "Se ha producido un problema";
                        msj     = "El proceso no se ha podido eliminar. Verifique que tenga conexión a internet e intentelo nuevamente. Si el problema persiste favor de contactarse con soporte.";
                        validar = false;
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex);
                    titulo  = "Error";
                    msj     = "Es probable que no se pueda eliminar el proceso debido a que exista algun problema de conexión o no exista la carpeta del proceso. Favor de contactarse con soporte";
                    validar = false;
                }
            }
            else
            {
                titulo  = "Error";
                msj     = "Usted no tiene permisos para eliminar procesos ya que no es un usuario representante";
                validar = false;
            }

            var datos = new
            {
                validar,
                titulo,
                msj
            };

            return(Json(datos));
        }