Fix Error: Se modifica el código para que el monitor emita el sonido de pase a la consulta cada 30s
This commit is contained in:
@@ -7,13 +7,12 @@ load_dotenv()
|
|||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
|
|
||||||
def obtener_turnos():
|
def obtener_turnos():
|
||||||
|
|
||||||
conn = get_connection()
|
conn = get_connection()
|
||||||
if not conn:
|
if not conn:
|
||||||
return []
|
return []
|
||||||
try:
|
try:
|
||||||
cursor = conn.cursor()
|
cursor = conn.cursor()
|
||||||
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")
|
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 = 12 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")
|
||||||
datos = cursor.fetchall()
|
datos = cursor.fetchall()
|
||||||
cursor.close()
|
cursor.close()
|
||||||
conn.close()
|
conn.close()
|
||||||
@@ -22,6 +21,22 @@ def obtener_turnos():
|
|||||||
print(f"Error al conectar: {e}")
|
print(f"Error al conectar: {e}")
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
def obtener_pie():
|
||||||
|
conn = get_connection()
|
||||||
|
if not conn:
|
||||||
|
return []
|
||||||
|
try:
|
||||||
|
cursor = conn.cursor()
|
||||||
|
cursor.execute("SELECT MENSAJE FROM CSMK_MONITOR_PIE WHERE MONITOR_ID = 12 AND INACTIVO = 0 ORDER BY MONITOR_PIE_ID ASC")
|
||||||
|
mensajes = [fila[0] for fila in cursor.fetchall()]
|
||||||
|
mensaje_final = " ".join(mensajes)
|
||||||
|
cursor.close()
|
||||||
|
conn.close()
|
||||||
|
return mensaje_final
|
||||||
|
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")
|
||||||
@@ -31,5 +46,10 @@ def api_datos():
|
|||||||
filas = obtener_turnos()
|
filas = obtener_turnos()
|
||||||
return jsonify(filas)
|
return jsonify(filas)
|
||||||
|
|
||||||
|
@app.route('/api/footer')
|
||||||
|
def api_pie():
|
||||||
|
mensaje = obtener_pie()
|
||||||
|
return jsonify(mensaje)
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
app.run(debug=True)
|
app.run(debug=True)
|
||||||
+13
-6
@@ -7,6 +7,14 @@ function cargarTabla() {
|
|||||||
.then(filas => {
|
.then(filas => {
|
||||||
const tbody = document.getElementById("turnos");
|
const tbody = document.getElementById("turnos");
|
||||||
tbody.innerHTML = "";
|
tbody.innerHTML = "";
|
||||||
|
|
||||||
|
let sizeClass ="";
|
||||||
|
if (filas.length <= 7){
|
||||||
|
sizeClass ="text-7xl px-4 py-2";
|
||||||
|
} else {
|
||||||
|
sizeClass ="text-5xl px-3 py-1"
|
||||||
|
}
|
||||||
|
|
||||||
filas.forEach(fila => {
|
filas.forEach(fila => {
|
||||||
const id = fila[0];
|
const id = fila[0];
|
||||||
|
|
||||||
@@ -14,7 +22,7 @@ function cargarTabla() {
|
|||||||
|
|
||||||
const td1 = document.createElement("td");
|
const td1 = document.createElement("td");
|
||||||
td1.textContent = fila[0];
|
td1.textContent = fila[0];
|
||||||
td1.className = "border px-4 py-2 bg-[#114b94] align-middle";
|
td1.className = `border bg-[#114b94] align-middle ${sizeClass}`;
|
||||||
tr.appendChild(td1);
|
tr.appendChild(td1);
|
||||||
|
|
||||||
const td2 = document.createElement("td");
|
const td2 = document.createElement("td");
|
||||||
@@ -24,18 +32,17 @@ function cargarTabla() {
|
|||||||
|
|
||||||
if (estadoConsulta == 0) {
|
if (estadoConsulta == 0) {
|
||||||
td2.textContent = "-";
|
td2.textContent = "-";
|
||||||
td2.className = "border px-4 py-2 bg-[#a9a9a9] align-middle";
|
td2.className = `border bg-[#a9a9a9] align-middle ${sizeClass}`;
|
||||||
} else if (estadoConsulta == 1) {
|
} else if (estadoConsulta == 1) {
|
||||||
td2.textContent = fila[2];
|
td2.textContent = fila[2];
|
||||||
if (estadoTurno == 1) {
|
if (estadoTurno == 1) {
|
||||||
sonido.play();
|
td2.className = `border blink-yellow align-middle ${sizeClass}`;
|
||||||
td2.className = "border px-4 py-2 blink-yellow align-middle";
|
|
||||||
} else {
|
} else {
|
||||||
td2.className = "border px-4 py-2 bg-[#0a6eb2] align-middle";
|
td2.className = `border bg-[#0a6eb2] align-middle ${sizeClass}`;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
td2.textContent = fila[2];
|
td2.textContent = fila[2];
|
||||||
td2.className = "border px-4 py-2 bg-[#a9a9a9] align-middle";
|
td2.className = `border bg-[#a9a9a9] align-middle ${sizeClass}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (estadoAnterior[id] === 2 && estadoTurno === 1) {
|
if (estadoAnterior[id] === 2 && estadoTurno === 1) {
|
||||||
|
|||||||
@@ -27,13 +27,13 @@
|
|||||||
<th class="border px-4 py-2 bg-[#0a6eb2]">TURNO</th>
|
<th class="border px-4 py-2 bg-[#0a6eb2]">TURNO</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody id="turnos" class="text-7xl">
|
<tbody id="turnos">
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<footer class="w-full bg-[#008968] overflow-hidden h-14">
|
<footer class="w-full bg-[#008968] overflow-hidden h-14">
|
||||||
<div id="footer-text" class="whitespace-nowrap animate-scroll px-4 text-white"></div>
|
<div id="footer-text" class="text-4xl whitespace-nowrap animate-scroll px-4 text-white"></div>
|
||||||
</footer>
|
</footer>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
Reference in New Issue
Block a user