Michael
0c1d3c10bd
feat: implement admin AI chat API with SQL execution and schema retrieval tools
2026-04-10 15:23:46 +02:00
Michael
4994d55ffc
feat: implement admin AI chat route with SQL execution tools and multi-provider support
2026-04-10 15:16:34 +02:00
Michael
ade120a9da
feat: add settings page with database configuration, AI provider management, and FF API status tracking.
2026-04-10 15:05:51 +02:00
Michael
d0ca0c3602
feat: implement database and AI provider configuration settings with Google GenAI integration
2026-04-10 15:00:47 +02:00
Michael
7372885e48
feat: implement AI chat interface with markdown support and model cost tracking
2026-04-10 13:55:56 +02:00
Michael
9f05eb9bc9
feat: implement admin AI chat API with SQL execution and database schema tools
2026-04-10 13:51:18 +02:00
Michael
6891aff668
feat: implement admin AI chat route with SQL execution and database schema access tools
2026-04-10 13:38:26 +02:00
Michael
63d89e5029
feat: add API endpoint to fetch and format OpenRouter models list
2026-04-10 13:35:54 +02:00
Michael
d9859ff9e0
feat: add API route to fetch and format OpenRouter models with pricing data
2026-04-10 13:29:31 +02:00
Michael
a2c4a065dd
feat: add ExportDropdown component with Excel and PDF export functionality for grid data
2026-04-10 13:25:19 +02:00
Michael
78cdc608d0
feat: implement admin AI chat interface with model selection and real-time cost tracking
2026-04-10 13:23:35 +02:00
Michael
f21f38f805
feat: add client-side component to display and filter automatic order data by site
2026-04-08 16:47:39 +02:00
Michael
910b0c96ef
feat: add PostgreSQL client for bulk data retrieval and configure Claude permissions
2026-04-08 16:41:28 +02:00
Michael
638c4b5f3b
feat: implement direct PostgreSQL data access and API proxy for automated orders
2026-04-08 16:37:42 +02:00
Michael
70c425befb
feat: implement sidebar navigation and automated order management module with PostgreSQL client integration
2026-04-08 15:53:59 +02:00
Michael
d25ffdb3e7
feat: implement pg-ff-client to replace per-article HTTP calls with bulk PostgreSQL queries
2026-04-08 12:14:18 +02:00
Michael
ff81bc1fc4
feat: implement interactive stock negative and no-sales data table with filtering, sorting, and Excel export functionality
2026-04-08 09:59:14 +02:00
Michael
5a13640884
feat: implement pg-ff-client to replace per-article HTTP calls with bulk PostgreSQL queries
2026-04-07 17:36:27 +02:00
Michael
e8fb472a9f
feat: implement shared LoadingModal component and integrate into dashboard route loading states
2026-04-07 17:16:33 +02:00
Michael
2264ced494
feat: add client-side data table components for negative stock and stagnant inventory with sorting and Excel export capabilities
2026-04-07 16:56:57 +02:00
Michael
ac1c9a5522
feat: implement collapsible sidebar, PostgreSQL client for bulk data fetching, and stock-negatif page
2026-04-07 16:51:52 +02:00
Michael
d96995fce9
feat: implement PostgreSQL bulk data client to replace per-article HTTP requests
2026-04-07 16:15:19 +02:00
Michael
a378bff7e2
feat: implement pg-ff-client to replace HTTP per-article requests with bulk SQL queries
2026-04-07 15:37:01 +02:00
Michael
7bf42dfc01
feat: implement direct PostgreSQL bulk querying for FF Nancy data to replace per-article HTTP requests
2026-04-07 15:33:01 +02:00
Michael
13414c970c
feat: implement client-side interactive table for advertising data with filtering and sorting capabilities
2026-04-07 13:04:12 +02:00
Michael
480cf5c460
feat: add PublicitesClient component with filtering, sorting, and data visualization for advertising performance
2026-04-07 13:00:58 +02:00
Michael
5e6b1d354b
feat: add PublicitesClient component for displaying and filtering advertising data by year
2026-04-07 12:45:20 +02:00
Michael
acd30cfdea
feat: implement authentication middleware and configure Claude project permissions
2026-04-07 12:31:58 +02:00
Michael
b5bda8abf7
feat: add dashboard page for publicites data retrieval and display
2026-04-07 12:22:18 +02:00
Michael
2bd40ae876
feat: add PublicitesPage to display advertising data with year-based filtering
2026-04-07 11:09:54 +02:00
Michael
78495cb8b6
feat: add interactive HitParadeClient component with filtering, sorting, and date range controls
2026-04-07 10:15:29 +02:00
Michael
f1b0a74c5f
feat: add HitParadeClient component with filtering, sorting, and date selection capabilities
2026-04-07 09:28:10 +02:00
Michael
f5b2083c42
feat: add HitParadeClient component with filtering, sorting, and date selection capabilities
2026-04-07 09:24:06 +02:00
Michael
9469738ef0
feat: implement hit-parade dashboard with interactive filtering, sorting, and data visualization components
2026-04-07 08:49:38 +02:00
Michael
2c02807493
feat: implement Hit Parade dashboard with PostgreSQL-backed data aggregation and pivot logic
2026-04-07 08:38:25 +02:00
Michael
788bf96006
feat: implement grid feature with server-side data fetching and product analytics dashboard
2026-04-07 08:21:22 +02:00
Michael and Claude Sonnet 4.6
de46e056d2
fix: robustify suspended product filter using ::text cast
...
The previous ::boolean cast caused query failure when suspendu column
is not a native boolean type. Casting to ::text first handles all
column types (char, varchar, int, boolean).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-03 12:07:07 +02:00
Michael and Claude Sonnet 4.6
a60e21eb04
fix: exclude suspended products from supplier grid
...
Add WHERE NOT COALESCE(af.suspendu::boolean, false) AND NOT COALESCE(a.suspendu::boolean, false)
to pgGetArticlesByFournisseur — products flagged as suspended in artfou1
or articles table are no longer shown in the grid.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-03 12:04:08 +02:00
Michael and Claude Sonnet 4.6
6b26676836
feat: flag products whose last registered supplier differs from current view
...
Instead of unreliable preference=1, use artfou1.no_id DESC (most recently
added artfou1 entry) to identify the last supplier for each product.
Shows an amber warning icon in the Désignation column when the last
supplier ≠ current supplier view, with tooltip showing who to attribute
the sales to.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-03 11:55:42 +02:00
Michael and Claude Sonnet 4.6
6ef23de317
feat: restrict AI analysis to admin role only
...
- FloatingSummaryBar: hide BulkAiAnalyzer button for non-admins
- AiInsightBlock: hide individual Analyser button for non-admins
- Both use useSession() to check role === "admin"
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-03 11:43:48 +02:00
Michael and Claude Sonnet 4.6
bbb04a4d2a
fix: immediate AI loading feedback + auto-fallback for deprecated model
...
- BulkAiAnalyzer: set isAnalyzing=true immediately on click (before
context fetch), so the spinner appears instantly instead of after
1-2 seconds of silence
- analyze/route.ts: if configured model returns 400/404 (e.g., deprecated
google/gemini-flash-1.5), automatically retry with google/gemini-2.0-flash-001
- batch-analyze/route.ts: same fallback logic
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-03 11:34:14 +02:00
Michael and Claude Sonnet 4.6
2aa9cbecaa
revert: restore grid to pre-infinite-scroll state
...
Remove infinite grid loading, useInfiniteGrid hook, and server-side
pagination API route. Revert grid components to the simpler version
that avoids 2MB+ cache failures from unstable_cache.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-03 11:26:13 +02:00
Michael
bd21f07c8e
feat: implement bulk PostgreSQL client to replace per-article HTTP API calls
2026-04-03 11:21:38 +02:00
Michael
e90a567446
feat: implement bulk PostgreSQL data fetching client to replace per-article HTTP requests
2026-04-03 11:17:04 +02:00
Michael
b4ea795770
feat: add settings page with database configuration, API status monitoring, and theme toggling
2026-04-03 11:07:34 +02:00
Michael
ebd819bfa4
feat: implement PostgreSQL bulk data access client to replace per-article HTTP requests
2026-04-03 10:58:43 +02:00
Michael
83d101ddc1
feat: add interactive client component for Hit Parade data visualization with sorting, filtering, and date range controls
2026-04-03 10:46:09 +02:00
Michael
687009dba1
feat: add HitParadeClient component with filtering, sorting, and date selection capabilities
2026-04-03 07:46:43 +02:00
Michael
e9e1fdd246
feat: implement PostgreSQL client for bulk data retrieval to replace per-article HTTP requests
2026-04-03 07:40:05 +02:00
Michael
5a506c750c
feat: add pg-ff-client to replace per-article HTTP requests with bulk SQL queries
2026-04-03 07:19:45 +02:00