Commit Graph

56 Commits

Author SHA1 Message Date
Cauê Faleiros
440c8cee1f combine ready products in campaign payload
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 46s
2026-05-27 16:31:26 -03:00
Cauê Faleiros
62a0bcfbc9 docs: add project context and remove boilerplate
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 44s
2026-05-27 16:18:10 -03:00
Cauê Faleiros
5e0bb1d83a accumulate stock deltas before campaigns
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 52s
2026-05-27 16:14:09 -03:00
Cauê Faleiros
72ded82ec7 extract frontend analytics helpers
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m12s
2026-05-27 15:58:12 -03:00
Cauê Faleiros
8c2590c56a refactor backend and persist stock campaign queue
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 2m32s
2026-05-27 15:00:23 -03:00
Cauê Faleiros
6ba8219596 fix: map N8N_WHATSAPP_TRIGGER_URL to backend container in docker-compose
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m7s
2026-05-26 15:57:53 -03:00
Cauê Faleiros
69f99b97c5 feat: add observability logs to stock waiting room for easier debugging in Portainer
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 2m8s
2026-05-26 15:11:00 -03:00
Cauê Faleiros
1f8baabf69 style: remove dynamic color coding from stock column to match table styling
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 2m26s
2026-05-25 11:35:15 -03:00
Cauê Faleiros
c47a64d831 feat: display available stock balance on products page based on n8n inventory updates 2026-05-25 11:26:00 -03:00
Cauê Faleiros
4ce1e9aedb style: remove WhatsApp link from client phone number
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m24s
2026-05-22 13:57:13 -03:00
Cauê Faleiros
fc8a5e47a0 fix: send Fone_Cliente from backend to frontend API response 2026-05-22 13:40:31 -03:00
Cauê Faleiros
174bb4841e feat: display customer phone number on client details page with WhatsApp quick link 2026-05-22 12:10:10 -03:00
Cauê Faleiros
9e52b2e44f feat: safely implement database idempotency, fallback IDs, and WhatsApp marketing export
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 2m30s
2026-05-22 10:54:54 -03:00
Cauê Faleiros
c77da0a9d0 feat: translate CSV export headers to pt-BR and format currency values
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m3s
2026-05-20 10:33:03 -03:00
Cauê Faleiros
ceecbc354d feat: add CSV export functionality to Clients and Products pages 2026-05-20 10:27:04 -03:00
Cauê Faleiros
2d85d2dcd5 feat: add date filter to clients page to analyze purchasing behavior within specific timeframes
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 50s
2026-05-15 11:46:26 -03:00
Cauê Faleiros
985d182743 fix: correctly initialize auto-refresh interval state from localStorage
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m7s
2026-05-15 11:10:27 -03:00
Cauê Faleiros
6aa9fff34c feat: persist auto-refresh interval across page reloads using localStorage
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 2m3s
2026-05-15 09:43:59 -03:00
Cauê Faleiros
fbd35d65af feat: make charts and legends clickable to navigate to product details
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 2m2s
2026-05-11 16:49:06 -03:00
Cauê Faleiros
8be7dbbe06 feat: make database idempotent by adding unique index and using UPSERT for order insertions
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m2s
2026-05-08 15:48:37 -03:00
Cauê Faleiros
d4fad9f6c1 style: replace insertion timestamp with original purchase date in client details 2026-05-08 15:33:48 -03:00
Cauê Faleiros
f6d4be1afb fix: safely parse n8n stringified numbers and add ID_Pedido to API response
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 2m16s
2026-05-08 14:10:06 -03:00
Cauê Faleiros
e66a90d583 feat: parse and display n8n order ID instead of data do pedido in client details 2026-05-08 10:58:36 -03:00
Cauê Faleiros
7959e18210 style: unify filter UI, add custom to-from date picker, and ensure all buttons use pointer cursors
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m10s
2026-05-07 16:05:22 -03:00
Cauê Faleiros
802558510f fix: override native browser date input format to explicitly show DD/MM/YY in custom period selector 2026-05-07 15:55:43 -03:00
Cauê Faleiros
df5f60e540 style: unify filter UI, add custom to-from date picker, and ensure all buttons use pointer cursors 2026-05-07 15:18:32 -03:00
Cauê Faleiros
b048c963dd feat: hide auto-refresh controls outside of dashboard and update refresh UI design 2026-05-07 15:07:44 -03:00
Cauê Faleiros
b986eafb98 feat: replace SSE with Grafana-style client polling and rich date presets 2026-05-07 14:52:45 -03:00
Cauê Faleiros
3bb46cff1a fix: stabilize color mapping by using persistent global hash and add SSE heartbeat
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m18s
2026-05-07 14:08:38 -03:00
Cauê Faleiros
d3167dbac1 fix: add X-Accel-Buffering header to bypass Nginx Proxy Manager buffering for SSE
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 40s
2026-05-07 13:25:18 -03:00
Cauê Faleiros
44028d3b41 feat: add pagination to Clients and Products pages to improve performance with large datasets
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m9s
2026-05-07 12:44:35 -03:00
Cauê Faleiros
4324e8e078 fix: disable nginx proxy buffering to allow SSE real-time updates in production
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 52s
2026-05-07 12:00:21 -03:00
Cauê Faleiros
e7f39a1e35 feat: implement consistent 20-color mapping for visible products across dashboard charts
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 2m30s
2026-05-07 11:28:37 -03:00
Cauê Faleiros
9e20dc997a feat: implement consistent 20-color mapping for visible products across dashboard charts
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 55s
2026-05-06 18:23:53 -03:00
Cauê Faleiros
a7bdd07c09 feat: implement consistent color mapping for products across charts
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m4s
2026-05-06 17:44:49 -03:00
Cauê Faleiros
c15de19180 feat: display revenue as currency in PieChart tooltip
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m12s
2026-05-06 17:24:11 -03:00
Cauê Faleiros
8f17f7b4fd feat: change PieChart to display Revenue by Product instead of quantity 2026-05-06 17:07:56 -03:00
Cauê Faleiros
8eb5d34247 fix: resolve SyntaxError in backend/index.js causing server crash
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 47s
2026-05-06 16:48:31 -03:00
Cauê Faleiros
16962c89ee feat: implement SSE real-time frontend updates on new payload reception
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 57s
2026-05-06 16:12:05 -03:00
Cauê Faleiros
c409276698 feat: unify chart legend styles and fix dynamic tooltip colors
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 48s
2026-05-06 15:45:24 -03:00
Cauê Faleiros
2c1e75593c feat: increase chart container heights and implement dynamic colored tooltips
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m16s
2026-05-06 15:20:32 -03:00
Cauê Faleiros
6c2ed8c301 fix: significantly increase X-axis height and margin to completely prevent label cutoff
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 43s
2026-05-06 14:33:35 -03:00
Cauê Faleiros
1d45dd3649 fix: force all X-axis labels to display on charts and prevent cutoff
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m9s
2026-05-06 14:07:10 -03:00
Cauê Faleiros
cf3f79b3da fix: invert backend sorting to make new payloads appear first and fix group sorting
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 51s
2026-05-06 11:09:25 -03:00
Cauê Faleiros
41a1afc0e5 fix: format reception timestamp as DD/MM/YYYY HH:MM:SS
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 56s
2026-05-06 10:42:27 -03:00
Cauê Faleiros
00942fd9b1 feat: display payload reception timestamp on client details page for debugging 2026-05-06 10:37:45 -03:00
Cauê Faleiros
940b2113cc fix: use robust date parsing utility to handle varying n8n date formats
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 2m26s
2026-05-06 09:58:10 -03:00
Cauê Faleiros
4ffe97ede8 fix: resolve TS2503 Cannot find namespace JSX in App.tsx
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 59s
2026-05-04 16:01:42 -03:00
Cauê Faleiros
7a291120c7 fix: resolve syntax error in backend console.log
Some checks failed
Build and Deploy / build-and-deploy (push) Failing after 1m0s
2026-05-04 15:50:59 -03:00
Cauê Faleiros
b1e8cc55df feat: add secure login page with jwt authentication and button animation 2026-05-04 15:46:08 -03:00