public JsonResult EliminarResolucion() { string msj, titulo, carpeta = "", carpeta1 = ""; Proceso proceso = HttpContext.Session.GetComplexData <Proceso>("Proceso"); string[] ruta = proceso.Resolucion.CopiaDoc.Split("\\"); Boolean validar = false; for (int i = 0; i < ruta.Length - 1; i++) { if (i < ruta.Length - 2) { carpeta = Path.Combine(carpeta, ruta[i]); } carpeta1 = Path.Combine(carpeta, ruta[i]); } try { System.IO.File.Delete(proceso.Resolucion.CopiaDoc); System.IO.Directory.Delete(carpeta1); //Carpeta resolucion System.IO.Directory.Delete(carpeta); //Carpeta con el id de la solicitud int respuesta = ConsultaResolucion.EliminarResolucion(proceso.Resolucion.Id); if (respuesta == 1) { proceso.Resolucion = null; proceso.Estado = 2; HttpContext.Session.SetComplexData("Proceso", proceso); validar = true; titulo = "Eliminación exitosa"; msj = "Se ha eliminado la resolución exitosamente"; } else { validar = false; titulo = "Se ha producido un problema"; msj = "La resolución no se ha podido eliminar. Verifique que tenga conexión a internet e intentelo nuevamente. Si el problema persiste favor de contactarse con soporte."; } } catch (Exception ex) { Console.WriteLine(ex); validar = false; titulo = "Error"; msj = "Es probable que no se pueda eliminar la resolucion debido a que la carpeta donde se encuentra la resolucion no se encuentre vacia."; } 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)); }