from flask import Flask, jsonify, request, render_template
import sqlite3

app = Flask(__name__)

# Ruta obligatoria que solicitaste
DATABASE = "/home/Daniel1712/papeleria.db"

def get_db():
    conn = sqlite3.connect(DATABASE, timeout=10, check_same_thread=False)
    conn.row_factory = sqlite3.Row
    return conn

@app.route('/api/datos', methods=['GET'])
def api_datos():
    conn = get_db()
    cursor = conn.cursor()
    cursor.execute("SELECT nombre, precio, cantidad FROM productos")
    productos = [{"nombre": r["nombre"], "precio": r["precio"], "cantidad": r["cantidad"]} for r in cursor.fetchall()]
    
    cursor.execute("SELECT producto, cantidad, total, fecha FROM ventas ORDER BY id DESC")
    ventas = [{"producto": r["producto"], "cantidad": r["cantidad"], "total": r["total"], "fecha": r["fecha"]} for r in cursor.fetchall()]
    conn.close()
    return jsonify({"productos": productos, "ventas": ventas})

@app.route('/api/sincronizar_todo', methods=['POST'])
def api_sincronizar_todo():
    data = request.json or {}
    inventario = data.get('inventario', {})
    
    conn = get_db()
    cursor = conn.cursor()
    for nombre, info in inventario.items():
        cursor.execute("""
            INSERT INTO productos (nombre, precio, cantidad) 
            VALUES (?, ?, ?)
            ON CONFLICT(nombre) DO UPDATE SET precio=excluded.precio, cantidad=excluded.cantidad
        """, (nombre, info['precio'], info['cantidad']))
    conn.commit()
    conn.close()
    return jsonify({"success": True})

@app.route('/')
def index():
    conn = get_db()
    cursor = conn.cursor()
    cursor.execute("SELECT * FROM productos")
    productos = cursor.fetchall()
    cursor.execute("SELECT * FROM ventas ORDER BY id DESC")
    ventas = cursor.fetchall()
    conn.close()
    return render_template('index.html', productos=productos, ventas=ventas)

if __name__ == '__main__':
    app.run(debug=True)
    

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: