Replace import_orders (insert-per-run) with orders table (one row per order, upsert on conflict). Eliminates dedup CTE on every dashboard query and prevents unbounded row growth at 4-500 orders/sync. Key changes: - orders table: PK order_number, upsert via ON CONFLICT DO UPDATE; COALESCE preserves id_comanda once set; times_skipped auto-increments - sync_run_orders: lightweight junction (sync_run_id, order_number) replaces sync_run_id column on orders - order_items: PK changed to (order_number, sku), INSERT OR IGNORE - Auto-migration in init_sqlite(): import_orders → orders on first boot, old table renamed to import_orders_bak - /api/dashboard/orders: period_days param (3/7/30/0=all, default 7) - Dashboard: period selector buttons in orders card header - start.sh: stop existing process on port 5003 before restart; remove --reload (broken on WSL2 /mnt/e/) - Add invoice_service, E2E Playwright tests, Oracle package updates Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
13 lines
615 B
SQL
13 lines
615 B
SQL
-- ====================================================================
|
|
-- 07_alter_articole_terti_sters.sql
|
|
-- Adauga coloana "sters" in ARTICOLE_TERTI pentru soft-delete real
|
|
-- (separat de "activ" care e toggle business)
|
|
-- ====================================================================
|
|
|
|
ALTER TABLE ARTICOLE_TERTI ADD sters NUMBER(1) DEFAULT 0;
|
|
ALTER TABLE ARTICOLE_TERTI ADD CONSTRAINT chk_art_terti_sters CHECK (sters IN (0, 1));
|
|
|
|
-- Verifica ca toate randurile existente au sters=0
|
|
-- SELECT COUNT(*) FROM ARTICOLE_TERTI WHERE sters IS NULL;
|
|
-- UPDATE ARTICOLE_TERTI SET sters = 0 WHERE sters IS NULL;
|