Commit Graph
81 Commits
Author SHA1 Message Date
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 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 70c425befb feat: implement sidebar navigation and automated order management module with PostgreSQL client integration 2026-04-08 15:53:59 +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 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 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
MichaelandClaude 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 b4ea795770 feat: add settings page with database configuration, API status monitoring, and theme toggling 2026-04-03 11:07:34 +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 659019e722 feat: implement PostgreSQL-based bulk data retrieval client for FF Nancy to replace HTTP API calls 2026-04-03 07:14:56 +02:00
Michael a4debe992b feat: implement dashboard page and add loading skeletons for all dashboard modules 2026-04-03 07:12:15 +02:00
Michael 2893114fca feat: implement infinite grid pagination with server-side data fetching and custom hook 2026-04-02 17:17:32 +02:00
Michael 7e4b370267 feat: implement PostgreSQL client for bulk data retrieval to replace per-article HTTP requests and configure Claude permissions 2026-04-02 16:31:11 +02:00
MichaelandClaude Sonnet 4.6 868886db87 feat: hit-parade date range + fournisseur filter; fix create user button layout
- Replace month dropdown with date picker (Du/Au) + Appliquer button
- Add fournisseur filter dropdown (client-side, all suppliers from current data)
- Totals update live when fournisseur filter changes
- SQL: use BETWEEN date range instead of TO_CHAR month match
- Create user button: proper 3-col form layout so button stays on one line

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 13:42:25 +02:00
MichaelandClaude Sonnet 4.6 05354a0e74 fix: restore apple-btn-primary style for create user button; guard Invalid Date on sync status
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 13:35:35 +02:00
MichaelandClaude Sonnet 4.6 f52532343f refactor: redesign Hit Parade table with color-coded site groups and reset sort button
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 13:11:19 +02:00
MichaelandClaude Sonnet 4.6 7923861947 feat: add Hit Parade page — monthly product sales by store with sort by CA/qty
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 11:22:08 +02:00
MichaelandClaude Sonnet 4.6 bc76237f48 feat: sort analytics by name (fournisseur) or code asc (nomenclature); show code in nomenclature label; remove diag-fournisseurs endpoint
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 08:42:21 +02:00
MichaelandClaude Sonnet 4.6 7e8b50e143 fix: remove function prop, unused import and useSearchParams in analytics
- page.tsx: move formatCA into client component (functions not serializable
  across server→client boundary in Next.js — root cause of 500)
- client.tsx: remove unused BarChart2 import
- client.tsx: replace useSearchParams() with direct URL construction to
  avoid Suspense boundary requirement
- pg-ff-client: use OR conditions instead of IN() for Drizzle compatibility

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-31 10:32:21 +02:00
MichaelandClaude Sonnet 4.6 740aed3181 feat: add analytics page with CA TTC comparison by supplier/nomenclature
- pg-ff-client: add pgGetCaByFournisseur() and pgGetCaByNomenclature()
  returning CA TTC per site and month for monthly N vs N-1 comparison
- analytics/page.tsx: server component with pivot logic to reshape raw
  query data into store-separated columns (292/579/total) with evolution %
- analytics/client.tsx: client controls (mode dropdown, month selector)
  and responsive table with color-coded evolution badges
- sidebar: add "Analytics" link to navigation

Features:
- Switch between "Fournisseur" and "Nomenclature" views
- Select any month for comparison vs same month prior year
- Columns split by store: Frouard/Nancy (292), Houdemont (579), Total
- Each store shows: CA this month, CA N-1, evolution %
- Footer totals row matching sum of detail rows
- FR locale currency formatting (€)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-31 09:40:31 +02:00
Michael 2eb196861b feat: Implement initial dashboard page displaying network-level KPIs and individual store statistics. 2026-03-22 10:41:32 +01:00
Michael 38979debb8 feat: implement dashboard page with network KPIs and store statistics. 2026-03-21 19:41:59 +01:00
Michael 33deb033b5 feat: implement dashboard page with network-wide and site-specific KPIs, and top 10 items display. 2026-03-21 19:36:02 +01:00
Michael 46c799bd60 feat: Add dashboard page displaying network KPIs and store statistics, along with a new PostgreSQL data client. 2026-03-21 19:18:41 +01:00
Michael a705d0043d feat: Add dashboard page displaying network KPIs, site statistics, and top-selling items. 2026-03-21 18:55:33 +01:00
Michael 6ee0e3294d feat: Introduce direct PostgreSQL client for FF Nancy data to replace HTTP API calls and add a new dashboard page. 2026-03-21 14:37:02 +01:00
Michael d1bbe290da feat: Implement dashboard layout and a new PostgreSQL client for optimized FF Nancy data fetching via bulk SQL queries. 2026-03-21 13:07:59 +01:00
Michael e3d241a5ff feat: add PostgreSQL client for FF Nancy to replace per-article HTTP API calls with bulk SQL queries. 2026-03-21 11:59:36 +01:00
Michael 1664aaf4cc feat: Implement initial dashboard page displaying key performance indicators, site statistics, top items, and monthly evolution. 2026-03-21 08:54:52 +01:00
Michael 1e393753fa feat: Implement PostgreSQL client for FF Nancy to replace per-article HTTP calls with bulk SQL queries. 2026-03-21 08:37:33 +01:00
Michael 966b13cdf0 feat: implement dashboard page displaying KPIs, site statistics, top items, and monthly evolution using a new PostgreSQL client. 2026-03-21 00:22:14 +01:00
Michael 7cb96966aa feat: implement PostgreSQL client for FF Nancy data, replacing per-article HTTP calls with bulk SQL queries. 2026-03-20 16:09:22 +01:00