Inserto función para obtener los turnos
This commit is contained in:
Binary file not shown.
@@ -1,31 +1,35 @@
|
|||||||
from flask import Flask, render_template, jsonify
|
from flask import Flask, render_template, jsonify
|
||||||
import os
|
from conexion import get_connection
|
||||||
from dotenv import load_dotenv
|
from dotenv import load_dotenv
|
||||||
import cx_Oracle
|
|
||||||
|
|
||||||
load_dotenv()
|
load_dotenv()
|
||||||
|
|
||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
|
|
||||||
user = os.getenv("DB_USER")
|
def obtener_turnos():
|
||||||
password = os.getenv("DB_PASSWORD")
|
|
||||||
host = os.getenv("DB_HOST")
|
|
||||||
port = os.getenv("DB_PORT", "1521")
|
|
||||||
sid = os.getenv("DB_SID")
|
|
||||||
|
|
||||||
dsn = cx_Oracle.makedsn(host, port, sid=sid)
|
conn = get_connection()
|
||||||
|
if not conn:
|
||||||
def conectar_oracle(user, password, dsn):
|
return []
|
||||||
try:
|
try:
|
||||||
connection = cx_Oracle.connect(user=user, password=password, dsn=dsn)
|
cursor = conn.cursor()
|
||||||
return connection
|
cursor.execute("SELECT CONS_ESTAD.CODIGO_IMPRESION CONSULTA, CONS_ESTAD.ESTADO_ID ESTADO_CONSULTA, TM.CODIGO_TURNO TURNO, TM.ESTADO_ID ESTADO_TURNO FROM CSMK_TURNO_MON TM, (SELECT ROW_NUMBER() OVER (PARTITION BY ESTADO.ESTANCIA_ID ORDER BY CONSULTA_ESTADO_ID DESC) AS RN, ESTADO.ESTADO_ID, ESTANCIA.* FROM CSMK_CONSULTA_ESTADO ESTADO, CSMK_ESTANCIA ESTANCIA WHERE ESTADO.FECHA = TRUNC (SYSDATE) AND ESTADO.ESTANCIA_ID = ESTANCIA.ESTANCIA_ID AND ESTANCIA.MONITOR_ID = 3 ORDER BY ESTADO.CONSULTA_ESTADO_ID DESC) CONS_ESTAD WHERE CONS_ESTAD.RN = 1 AND TM.ESTANCIA_ID = CONS_ESTAD.ESTANCIA_ID AND TM.MONITOR_ID = CONS_ESTAD.MONITOR_ID AND TM.ESTADO_ID IN (1,2) AND TM.FECHA = TRUNC(SYSDATE) ORDER BY CONSULTA ASC")
|
||||||
except cx_Oracle.DatabaseError as e:
|
datos = cursor.fetchall()
|
||||||
print(f"Error de conexión: {e}")
|
cursor.close()
|
||||||
raise
|
conn.close()
|
||||||
|
return datos
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error al conectar: {e}")
|
||||||
|
return None
|
||||||
|
|
||||||
@app.route('/')
|
@app.route('/')
|
||||||
def index():
|
def index():
|
||||||
return render_template("index.html")
|
return render_template("index.html")
|
||||||
|
|
||||||
|
@app.route('/api/datos')
|
||||||
|
def api_datos():
|
||||||
|
filas = obtener_turnos()
|
||||||
|
return jsonify(filas)
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
app.run(debug=True)
|
app.run(debug=True)
|
||||||
+22
@@ -0,0 +1,22 @@
|
|||||||
|
import os
|
||||||
|
from dotenv import load_dotenv
|
||||||
|
import cx_Oracle
|
||||||
|
|
||||||
|
load_dotenv()
|
||||||
|
|
||||||
|
def get_connection():
|
||||||
|
try:
|
||||||
|
user = os.getenv("DB_USER")
|
||||||
|
password = os.getenv("DB_PASSWORD")
|
||||||
|
host = os.getenv("DB_HOST")
|
||||||
|
port = os.getenv("DB_PORT", "1521")
|
||||||
|
sid = os.getenv("DB_SID")
|
||||||
|
|
||||||
|
dsn = cx_Oracle.makedsn(host, port, sid=sid)
|
||||||
|
|
||||||
|
connection = cx_Oracle.connect(user=user, password=password, dsn=dsn)
|
||||||
|
|
||||||
|
return connection
|
||||||
|
except cx_Oracle.DatabaseError as e:
|
||||||
|
print(f"Error al conectar a la base de datos: {e}")
|
||||||
|
raise
|
||||||
Reference in New Issue
Block a user