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__)
|
||||
|
||||
def obtener_turnos():
|
||||
|
||||
conn = get_connection()
|
||||
if not conn:
|
||||
return []
|
||||
try:
|
||||
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()
|
||||
cursor.close()
|
||||
conn.close()
|
||||
@@ -22,6 +21,22 @@ def obtener_turnos():
|
||||
print(f"Error al conectar: {e}")
|
||||
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('/')
|
||||
def index():
|
||||
return render_template("index.html")
|
||||
@@ -31,5 +46,10 @@ def api_datos():
|
||||
filas = obtener_turnos()
|
||||
return jsonify(filas)
|
||||
|
||||
@app.route('/api/footer')
|
||||
def api_pie():
|
||||
mensaje = obtener_pie()
|
||||
return jsonify(mensaje)
|
||||
|
||||
if __name__ == '__main__':
|
||||
app.run(debug=True)
|
||||
+13
-6
@@ -7,6 +7,14 @@ function cargarTabla() {
|
||||
.then(filas => {
|
||||
const tbody = document.getElementById("turnos");
|
||||
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 => {
|
||||
const id = fila[0];
|
||||
|
||||
@@ -14,7 +22,7 @@ function cargarTabla() {
|
||||
|
||||
const td1 = document.createElement("td");
|
||||
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);
|
||||
|
||||
const td2 = document.createElement("td");
|
||||
@@ -24,18 +32,17 @@ function cargarTabla() {
|
||||
|
||||
if (estadoConsulta == 0) {
|
||||
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) {
|
||||
td2.textContent = fila[2];
|
||||
if (estadoTurno == 1) {
|
||||
sonido.play();
|
||||
td2.className = "border px-4 py-2 blink-yellow align-middle";
|
||||
td2.className = `border blink-yellow align-middle ${sizeClass}`;
|
||||
} else {
|
||||
td2.className = "border px-4 py-2 bg-[#0a6eb2] align-middle";
|
||||
td2.className = `border bg-[#0a6eb2] align-middle ${sizeClass}`;
|
||||
}
|
||||
} else {
|
||||
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) {
|
||||
|
||||
@@ -27,13 +27,13 @@
|
||||
<th class="border px-4 py-2 bg-[#0a6eb2]">TURNO</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="turnos" class="text-7xl">
|
||||
<tbody id="turnos">
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<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>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user