Commit Graph
189 Commits
Author SHA1 Message Date
michaelschal 6916a25822 Limit pending orders displayed and add scrolling functionality
Updates the dashboard to display only the last 4 pending orders and implements vertical scrolling for the pending orders section within `Dashboard.tsx`.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 98f01874-e00c-4bbe-9d71-b0b338001848
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/98f01874-e00c-4bbe-9d71-b0b338001848/XDIQsDu
2025-09-01 20:27:42 +00:00
michaelschal d9120a3e6b Update store badges to use configured colors from the administration module
Modify the Dashboard component to dynamically set the background and border colors of participating store badges based on the `group.color` property, enhancing visual consistency with store configurations. The `selectedStoreId` prop is used to apply a ring effect to the currently active store.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 98f01874-e00c-4bbe-9d71-b0b338001848
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/98f01874-e00c-4bbe-9d71-b0b338001848/XDIQsDu
2025-09-01 20:23:25 +00:00
michaelschal 5fbdc67153 Update dashboard to display total pending orders
Modify the Dashboard component to count all orders with 'pending' status instead of filtering for orders pending over 10 days. Also removes overflow from the pending orders card.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 98f01874-e00c-4bbe-9d71-b0b338001848
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/98f01874-e00c-4bbe-9d71-b0b338001848/XDIQsDu
2025-09-01 20:21:20 +00:00
michaelschal dbca763d4b Display all pending orders on the dashboard regardless of creation date
Updates the dashboard to filter and display all orders with a 'pending' status, including sorting by creation date and highlighting overdue orders.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 98f01874-e00c-4bbe-9d71-b0b338001848
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/98f01874-e00c-4bbe-9d71-b0b338001848/XDIQsDu
2025-09-01 20:19:27 +00:00
michaelschal 8fb739f944 Update dashboard to show only pending orders older than 10 days
Modify the dashboard logic to filter and display only 'pending' orders that were created more than 10 days ago, based on the order's `createdAt` timestamp.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 98f01874-e00c-4bbe-9d71-b0b338001848
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/98f01874-e00c-4bbe-9d71-b0b338001848/XDIQsDu
2025-09-01 20:01:45 +00:00
michaelschal 2549663637 Improve invoice verification process after webhook processing
Update BLReconciliation page to specifically verify the processed delivery after webhook. This involves invalidating cache for '/api/deliveries/bl' and calling `handleVerifyInvoice` with the selected delivery after a 1-second delay.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 98f01874-e00c-4bbe-9d71-b0b338001848
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/98f01874-e00c-4bbe-9d71-b0b338001848/XDIQsDu
2025-09-01 13:54:04 +00:00
michaelschal 8c12f4c18c Trigger invoice verification after webhook completion
After a webhook process finishes, automatically re-fetch delivery data and trigger an invoice verification process by invalidating related queries and calling handleVerifyAllInvoices.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 98f01874-e00c-4bbe-9d71-b0b338001848
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/98f01874-e00c-4bbe-9d71-b0b338001848/XDIQsDu
2025-09-01 13:52:04 +00:00
michaelschal 0e81fbaf41 Add a waiting modal and timeout for webhook processing
Introduce a waiting modal with a countdown timer for webhook processing, handle request timeouts with an AbortController, and improve error reporting for webhook failures.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 98f01874-e00c-4bbe-9d71-b0b338001848
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/98f01874-e00c-4bbe-9d71-b0b338001848/NGEmabJ
2025-09-01 12:44:41 +00:00
michaelschal c09388c0aa Make delivery validation require a mandatory delivery note number
Enforce the requirement for a delivery note number (blNumber) during delivery validation on both the delivery and calendar modules. This change updates the frontend validation schema to make blNumber a required field with a minimum length, modifies the backend logic to reject validations without a blNumber, and integrates a new modal component for handling this validation process within the Deliveries page.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 98f01874-e00c-4bbe-9d71-b0b338001848
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/98f01874-e00c-4bbe-9d71-b0b338001848/yaZkPAT
2025-09-01 11:57:55 +00:00
michaelschal 8dec1c46ba Improve reconciliation process by skipping already validated deliveries
Update client-side logic in BLReconciliation to exclude deliveries with a 'reconciled' status from automatic verification. Modify server-side InvoiceVerificationService to implement permanent caching for reconciled invoices, preventing redundant checks.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: daf3525c-b971-454a-b0c0-7a9845e786cc
Replit-Commit-Checkpoint-Type: full_checkpoint
2025-08-31 07:56:20 +00:00
michaelschal aef303b709 Improve reconciliation process by skipping already processed deliveries
Optimize the reconciliation page by pre-populating results for already reconciled deliveries and skipping them in the auto-verification loop. Also, add an API endpoint for administrators to diagnose cache status for reconciled deliveries.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: daf3525c-b971-454a-b0c0-7a9845e786cc
Replit-Commit-Checkpoint-Type: full_checkpoint
2025-08-31 07:54:35 +00:00
michaelschal e396cbd096 Streamline invoice sending by removing document type selection
Simplify the BL reconciliation process by removing the option to select between invoice or credit note and defaulting to 'Facture', improving user experience and reducing complexity.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 72798e04-65c2-4587-bc41-77a3d4984153
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/72798e04-65c2-4587-bc41-77a3d4984153/QaTgrBu
2025-08-22 10:04:10 +00:00
michaelschal 6a2457ca68 Enable task creation with selected store for administrators
Update TaskFormInline to accept selectedStoreId and user, passing them to the backend for task creation.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 72798e04-65c2-4587-bc41-77a3d4984153
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/72798e04-65c2-4587-bc41-77a3d4984153/rxmoj25
2025-08-22 07:32:16 +00:00
michaelschal 1a7f284cc6 Extend year selection to include a decade of future options
Update `Publicities.tsx` to generate year options from 2025 to 2035, modifying the `yearOptions` array generation logic.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 0ec86cdf-a5be-4b0e-84a3-07b926f5cc80
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/0ec86cdf-a5be-4b0e-84a3-07b926f5cc80/0gylnen
2025-08-21 11:37:01 +00:00
michaelschal cbf2eed63a Update how the current year is displayed in the publicities section
Remove defaultValue and placeholder for the year select component in Publicities.tsx.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 0ec86cdf-a5be-4b0e-84a3-07b926f5cc80
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/0ec86cdf-a5be-4b0e-84a3-07b926f5cc80/0gylnen
2025-08-21 11:36:09 +00:00
michaelschal 393ee4a231 Set default year selection to the current year for better usability
Update the year selector component in Publicities.tsx to default to the current year, improving the user experience by pre-selecting the most relevant year.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 0ec86cdf-a5be-4b0e-84a3-07b926f5cc80
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/0ec86cdf-a5be-4b0e-84a3-07b926f5cc80/0gylnen
2025-08-21 11:34:41 +00:00
michaelschal bac38b76d7 Update year selector in advertising module to show current year and next five
Adjusts the year selection range in the advertising module to display the current year and the following five years, setting the current year as the default.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 0ec86cdf-a5be-4b0e-84a3-07b926f5cc80
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/0ec86cdf-a5be-4b0e-84a3-07b926f5cc80/0gylnen
2025-08-21 11:33:23 +00:00
michaelschal 6cf7631bdf Fix display issues and adjust year range for publicities
Correctly display publicities by fixing an issue that prevented data from rendering, and expand the selectable year range to include years from 2020 onwards.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 0ec86cdf-a5be-4b0e-84a3-07b926f5cc80
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/0ec86cdf-a5be-4b0e-84a3-07b926f5cc80/bg09zFa
2025-08-21 11:25:56 +00:00
michaelschal 19c41f11c3 Improve handling of yearly data to correctly process all years
Update year calculations to accurately reflect week and month assignments, particularly for transitional periods between years, and enhance API logging for debugging.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 0ec86cdf-a5be-4b0e-84a3-07b926f5cc80
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/0ec86cdf-a5be-4b0e-84a3-07b926f5cc80/ZJYssQp
2025-08-21 11:22:14 +00:00
michaelschal 55afb8eb70 Improve year week calculation for accurate display of past and future events
Refactor the `getYearWeeks` function to use a safer `Date` constructor and limit the number of weeks generated, addressing an issue with the year 2025 calculation.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 0ec86cdf-a5be-4b0e-84a3-07b926f5cc80
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/0ec86cdf-a5be-4b0e-84a3-07b926f5cc80/ZJYssQp
2025-08-21 11:20:58 +00:00
michaelschal df061adf7a Sort advertisements by number on the frontend
Fixes an issue where advertisements were not consistently sorted by their publication number on the frontend by implementing a client-side sort function in `Publicities.tsx`.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 0ec86cdf-a5be-4b0e-84a3-07b926f5cc80
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/0ec86cdf-a5be-4b0e-84a3-07b926f5cc80/nmin1YE
2025-08-21 11:16:02 +00:00
michaelschal cca9942178 Fix calendar data filtering for all user roles
Apply store filtering to the calendar view for all user roles, resolving issues with persistent data display after reload.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 15f19c36-9aac-46a4-a181-3dc5f496fabd
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/15f19c36-9aac-46a4-a181-3dc5f496fabd/6vGI9xw
2025-08-20 10:03:42 +00:00
michaelschal e98abae9fe Fix calendar view to correctly filter stores for all user roles
Adjusted the calendar page logic to apply store filtering for all user roles, not just administrators.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 15f19c36-9aac-46a4-a181-3dc5f496fabd
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/15f19c36-9aac-46a4-a181-3dc5f496fabd/s75PPM5
2025-08-20 10:00:03 +00:00
michaelschal 20efd9251e Ensure all users can view relevant data by filtering it by their selected store
Fix data fetching logic to correctly apply store filtering for all user roles, and add an alert for managers/directors if no store is selected.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 15f19c36-9aac-46a4-a181-3dc5f496fabd
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/15f19c36-9aac-46a4-a181-3dc5f496fabd/H1nJA1b
2025-08-20 08:58:29 +00:00
michaelschal c1b5d66f1e Remove rounded corners from task modals and restore the close button
Update task modals to have square corners and reintroduce the close button in the top-right corner for both creation and editing.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: d7bae60c-959e-464e-9a81-d3f674984466
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/d7bae60c-959e-464e-9a81-d3f674984466/7Rj2nWl
2025-08-19 12:56:29 +00:00
michaelschal 31f4cc3b00 Simplify task modal by removing redundant cancel button
Remove duplicate "Annuler" button from the Task creation/editing modal to improve UI clarity.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: d7bae60c-959e-464e-9a81-d3f674984466
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/d7bae60c-959e-464e-9a81-d3f674984466/S7zPZtF
2025-08-19 12:49:30 +00:00
michaelschal fe20a21885 Remove rounded corners from dialogs and task input fields
Update DialogContent component to remove rounded corners by setting `rounded-none` class. Modify TaskFormInline component in Tasks.tsx to remove `borderRadius: '6px'` and set `borderRadius: '0px'` for various input elements and buttons. Also, change the default value of the 'assignedTo' input field from 'admin' to an empty string.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: d7bae60c-959e-464e-9a81-d3f674984466
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/d7bae60c-959e-464e-9a81-d3f674984466/JW835E1
2025-08-19 12:45:23 +00:00
michaelschal 15dc6246ba Align detail modals across orders, deliveries, and calendar
Update Deliveries and Orders pages to use a unified data structure for detail modals, ensuring consistent information display with the Calendar module.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: d7bae60c-959e-464e-9a81-d3f674984466
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/d7bae60c-959e-464e-9a81-d3f674984466/PdrdCCE
2025-08-19 11:44:39 +00:00
michaelschal f407cdceb7 Improve task feedback and show scheduled tasks to directors
Replace alerts with toast notifications for task operations and grant directors visibility into scheduled tasks, previously only visible to admins.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: cc2d271b-82f0-4d6a-9302-a0b067ffb429
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/cc2d271b-82f0-4d6a-9302-a0b067ffb429/IUKNI3f
2025-08-19 11:35:36 +00:00
michaelschal 26579affb3 Restore previous task list view and fix task update issues
Revert client-side task routing to use the previous `TasksListSimple` component and implement server-side data cleaning for task updates, specifically addressing potential issues with `startDate` and `dueDate` when they are empty strings.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: cc2d271b-82f0-4d6a-9302-a0b067ffb429
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/cc2d271b-82f0-4d6a-9302-a0b067ffb429/fN5Ayh3
2025-08-19 11:07:48 +00:00
michaelschal e199100278 Update task management to a simplified, dependency-free version
Refactors the task management route to use a new, self-contained `TasksProductionSimple` component, replacing the previous `Tasks` and `TasksSimplified` implementations. This change aims to reduce external dependencies and improve stability.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: cc2d271b-82f0-4d6a-9302-a0b067ffb429
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/cc2d271b-82f0-4d6a-9302-a0b067ffb429/OMMBlSh
2025-08-19 10:45:14 +00:00
michaelschal 71caf68643 Fix task editing and creation errors in the API
Update task editing endpoint from PATCH to PUT, add logging for API requests and responses, and improve error handling to capture and display API error messages for better debugging of 404 errors.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: cc2d271b-82f0-4d6a-9302-a0b067ffb429
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/cc2d271b-82f0-4d6a-9302-a0b067ffb429/iPlRXOE
2025-08-19 10:37:20 +00:00
michaelschal a0f3984479 Update task creation and editing to use custom modal components
Replace existing modal library components with custom-built modal implementations for task creation and editing in the Tasks page.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: cc2d271b-82f0-4d6a-9302-a0b067ffb429
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/cc2d271b-82f0-4d6a-9302-a0b067ffb429/meVozfu
2025-08-19 10:25:52 +00:00
michaelschal 650c377cf2 Integrate task creation and editing directly into the main task view
Embed the task form within the Tasks page to streamline the user experience and resolve production deployment issues.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: cc2d271b-82f0-4d6a-9302-a0b067ffb429
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/cc2d271b-82f0-4d6a-9302-a0b067ffb429/xMJh9yr
2025-08-19 10:20:15 +00:00
michaelschal 6831b2ea81 Refine task display and form components for consistent behavior
Update the task form component to use a clean implementation and adjust styling classes in the task list for consistency across development and production environments.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: cc2d271b-82f0-4d6a-9302-a0b067ffb429
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/cc2d271b-82f0-4d6a-9302-a0b067ffb429/xVNiZBn
2025-08-19 09:25:24 +00:00
michaelschal 0d863da97e Improve task management by handling date errors and ensuring data integrity
Implement robust error handling and data validation for task dates and properties in both frontend and backend to resolve production issues.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: cc2d271b-82f0-4d6a-9302-a0b067ffb429
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/cc2d271b-82f0-4d6a-9302-a0b067ffb429/0taewQN
2025-08-19 07:39:33 +00:00
michaelschal aa1906a9bb Enhance task management with start dates and improved visibility
Introduce task start dates, allowing for future task scheduling and better visibility for managers and employees. Admins can now see all tasks, while other roles only see tasks that have started or have no start date. Includes UI updates to visually distinguish future tasks and a new form for creating tasks with start and due dates.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: cc2d271b-82f0-4d6a-9302-a0b067ffb429
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/cc2d271b-82f0-4d6a-9302-a0b067ffb429/kX6A8MG
2025-08-19 07:23:52 +00:00
michaelschal 070da4a129 Show the latest announcement in a modal on the dashboard
Fetch and display the most recent announcement created within the last two days in a modal on the dashboard page.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: f9197b9b-a5b3-4469-a27d-930a9e9ee736
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/f9197b9b-a5b3-4469-a27d-930a9e9ee736/b03w3Om
2025-08-18 11:00:51 +00:00
michaelschal 02809d6463 Filter ticket views and stats by selected store for administrators
Refactors the SAV tickets page to allow administrators to filter tickets and statistics based on a selected store (groupId). Updates backend routes to conditionally filter by groupId when provided in the query parameters for both ticket listings and statistics retrieval. Enables query fetching only when user and store are initialized for administrators.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: f9197b9b-a5b3-4469-a27d-930a9e9ee736
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/f9197b9b-a5b3-4469-a27d-930a9e9ee736/icib2nb
2025-08-18 10:24:01 +00:00
michaelschal 2028f761f3 Limit SAV ticket creation to administrative roles
Adjust SAV ticket creation permissions on both frontend and backend to restrict the 'employee' role, allowing only 'admin', 'directeur', and 'manager' roles to create tickets.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: f9197b9b-a5b3-4469-a27d-930a9e9ee736
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/f9197b9b-a5b3-4469-a27d-930a9e9ee736/i2gFnxm
2025-08-18 10:19:01 +00:00
michaelschal 2ff22c4821 Fix ticket assignment to ensure it's assigned to the user's store
Correctly assigns SAV tickets to the user's group, resolving an issue where tickets were not being assigned to the creating user's store. Includes backend and frontend logic adjustments for accurate group assignment based on user roles and available groups.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: f9197b9b-a5b3-4469-a27d-930a9e9ee736
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/f9197b9b-a5b3-4469-a27d-930a9e9ee736/i2gFnxm
2025-08-18 10:17:24 +00:00
michaelschal 32161ae797 Refine stock validation access for specific product statuses
Restrict stock validation button visibility based on product stock status, expiration, and user roles.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: f9197b9b-a5b3-4469-a27d-930a9e9ee736
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/f9197b9b-a5b3-4469-a27d-930a9e9ee736/i2gFnxm
2025-08-18 10:10:11 +00:00
michaelschal e0bf48e41b Limit stock depletion button visibility to active products
Hide the stock depletion button for expired or nearing expiration products, ensuring it's only visible for active items.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: f9197b9b-a5b3-4469-a27d-930a9e9ee736
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/f9197b9b-a5b3-4469-a27d-930a9e9ee736/i2gFnxm
2025-08-18 10:06:18 +00:00
michaelschal 4581b4239d Add helpful tips to explain icon functions for product stock status
Adds tooltips to the "Mark out of stock" and "Restore stock" icons on the DlcPage to clarify their functionality and distinguish between "expired" and "out of stock" states.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: f9197b9b-a5b3-4469-a27d-930a9e9ee736
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/f9197b9b-a5b3-4469-a27d-930a9e9ee736/i2gFnxm
2025-08-18 10:03:24 +00:00
michaelschal 4881833925 Add ability to mark products as out of stock and restore them
Introduce new API endpoints and storage logic for managing product stock status, including 'stock épuisé' and 'restore stock' functionalities with role-based access control.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: f9197b9b-a5b3-4469-a27d-930a9e9ee736
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/f9197b9b-a5b3-4469-a27d-930a9e9ee736/JKfj3tT
2025-08-18 09:10:15 +00:00
michaelschal 08698d6fe6 Improve SAV ticket details display and refresh behavior
Update the SAV ticket detail modal to use real-time data and adjust the layout for better usability, including fixing the status display bug.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: f9197b9b-a5b3-4469-a27d-930a9e9ee736
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/f9197b9b-a5b3-4469-a27d-930a9e9ee736/bqNYoDM
2025-08-18 07:58:01 +00:00
michaelschal 50a8807019 Improve SAV ticket management by fixing status updates and adding new comment indicators
Implement ticket status update mutation, show new comment badges, and refactor SAV modal layout for better client and product information separation.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: f9197b9b-a5b3-4469-a27d-930a9e9ee736
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/f9197b9b-a5b3-4469-a27d-930a9e9ee736/GCVoWnM
2025-08-18 07:32:44 +00:00
michaelschal 5b6be55904 Remove the 'selected store' notification from the dashboard
Remove the badge component that displayed "Magasin sélectionné" when a store was selected by an admin user on the Dashboard page.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: e437ffed-c31b-44eb-9fd5-b6f9faa8e7ce
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/e437ffed-c31b-44eb-9fd5-b6f9faa8e7ce/aVFsaJG
2025-08-16 12:36:14 +00:00
michaelschal 30cfc4b3de Introduce an information system for important announcements
Implement a new announcement system with priority levels, role-based access, and store-specific filtering, replacing the customer order statistics card on the dashboard.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: e437ffed-c31b-44eb-9fd5-b6f9faa8e7ce
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/e437ffed-c31b-44eb-9fd5-b6f9faa8e7ce/biGr9ER
2025-08-16 09:54:34 +00:00
michaelschal 5688450117 Ensure tasks display correctly for selected stores by admins
Fixes an issue where admin users had to refresh the page to see tasks filtered by their selected store. This change ensures the store selection is properly initialized and validated before fetching tasks, preventing stale data and improving the user experience. The backend task fetching logic is also updated to correctly handle store filtering.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: e437ffed-c31b-44eb-9fd5-b6f9faa8e7ce
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/e437ffed-c31b-44eb-9fd5-b6f9faa8e7ce/OvGzl7P
2025-08-16 07:48:04 +00:00