public JsonResult EliminarLiberacion(int Id)
        {
            try
            {
                //Saul González 16/04/2021: Validaciones de campos nulos
                if (String.IsNullOrEmpty(Id.ToString()))
                {
                    return(Json(new { status = false, mensaje = "Ocurrió un error al obtener el Id de la liberación." }));
                }
                //Saul Gonzalez 16/04/2021: Cargamos los datos del pago
                Tb_Liberaciones Liberacion = db.Tb_Liberaciones.Where(y => y.Id == Id).FirstOrDefault();
                if (Liberacion == null)
                {
                    return(Json(new { status = false, mensaje = "ERROR L-458: Ocurrió un error al encontrar y eliminar los datos de la liberación: " + Id.ToString() }));
                }

                //Saul gonzalez 16/04/2021: Guardamos los cambios en la BD
                db.Tb_Liberaciones.Remove(Liberacion);
                db.SaveChanges();
            }
            catch (Exception error)
            {
                return(Json(new { status = false, mensaje = error.Message }));
            }
            return(Json(new { status = true, mensaje = "Liberación eliminada correctamente" }));
        }
        public JsonResult GuardarLiberacion(string Respuestas, string Folio)
        {
            Tb_Requisiciones REQ     = new Tb_Requisiciones();
            CultureInfo      Culture = new CultureInfo("en-US"); //Definimos la cultura para que el separador de decimal sea por un Punto (.)

            try
            {
                //Saul González 20/04/2021: Validaciones de campos nulos
                if (String.IsNullOrEmpty(Folio))
                {
                    return(Json(new { status = false, mensaje = "Debe indicar un número de folio para ello seleccione el tipo de requisición." }));
                }
                if (String.IsNullOrEmpty(Respuestas))
                {
                    return(Json(new { status = false, mensaje = "Ocurrió un error al leer los datos." }));
                }
                //Realizamos un split para separar los valores
                var Cadena = Respuestas.Split(',');
                //--Primero quitamos los caracteres sobrantes--
                string Monto = Cadena[0].Replace("\"", "");
                Monto = Monto.Replace("[", "");
                if (Monto == string.Empty)
                {
                    Monto = "0";
                }
                //Fecha
                string Fecha = Cadena[1].Replace("\"", "");
                //# Liberacion
                string NumLiberacion = Cadena[2].Replace("\"", "");
                NumLiberacion = NumLiberacion.Replace("]", "");
                //Notas
                string Notas = Cadena[3].Replace("\"", "");
                Notas = Notas.Replace("]", "");

                //Validamos que el formato del monto sea correcto
                decimal PruebaMonto = 0;
                try
                {
                    PruebaMonto = Convert.ToDecimal(Monto, Culture);
                }
                catch (Exception error)
                {
                    return(Json(new { status = false, mensaje = "El monto no debe contener letras ni caracteres especiales." }));
                }
                //Validamos que el formato de la fecha sea correcto
                if (Fecha == string.Empty)
                {
                    return(Json(new { status = false, mensaje = "El campo de fecha no puede estar vacío." }));
                }
                DateTime?PruebaFecha = null;
                try
                {
                    PruebaFecha = Convert.ToDateTime(Fecha);
                }
                catch (Exception error)
                {
                    return(Json(new { status = false, mensaje = "El formato de la fecha no es válido." }));
                }

                //Validamos que el monto sea mayor a 0
                if (Convert.ToDecimal(Monto, Culture) < 1)
                {
                    return(Json(new { status = false, mensaje = "El monto debe ser mayor a 0." }));
                }
                //Guardar los datos en la base de datos
                Tb_Liberaciones LIB = new Tb_Liberaciones();
                LIB.Monto          = Convert.ToDecimal(Monto, Culture);
                LIB.FechaRegistro  = Convert.ToDateTime(Fecha).AddHours(DateTime.Now.Hour);
                LIB.Num_Liberacion = NumLiberacion;
                LIB.Notas          = Notas;
                //Consultamos el id de la requisicion para asignarla a la liberacion
                LIB.Tb_Requisiciones = db.Tb_Requisiciones.Where(x => x.Folio == Folio).FirstOrDefault();
                if (LIB.Tb_Requisiciones == null)
                {
                    return(Json(new { status = false, mensaje = "Error L-428:Ocurrió un problema al asignar la liberación" }));
                }
                //Saul gonzalez 20/04/2021: Guardamos los datos
                db.Tb_Liberaciones.Add(LIB);
                db.SaveChanges();
            }
            catch (Exception error)
            {
                return(Json(new { status = false, mensaje = error.Message }));
            }
            return(Json(new { status = true, mensaje = "Liberación registrada correctamente." }));
        }