Commit Graph
790 Commits
Author SHA1 Message Date
Jeppe Bundgaard 943a143a19 Optimize condition and task name handling by integrating department and product names, add global cache for improved request efficiency, and streamline object fetching methods. 2026-01-20 12:24:44 +01:00
Jeppe Bundgaard d0ddf29235 Refactor self-serve condition and task handling to use formatted names, streamline setters, and optimize attachment methods 2026-01-20 12:21:01 +01:00
Jeppe Bundgaard 80c4d16eff Restrict vehicle type selection and validation in MyWashStart.vue and apply product-based filtering in VehicleTypeSelection.vue. 2026-01-20 12:03:34 +01:00
Jeppe Bundgaard fbf55c6d18 Restrict vehicle type selection in MyWashStart.vue to available product IDs 2026-01-20 11:41:48 +01:00
Jeppe Bundgaard 11dde044e0 Refactor self-serve logic to simplify filters, add task prioritization, and improve attachment handling 2026-01-20 11:12:16 +01:00
Jeppe Bundgaard 0bef66201b Add logging for task attachment fetching and enhance UI with data-fetching status indicators in self-serve modals 2026-01-20 11:04:52 +01:00
Jeppe Bundgaard c4ab40c76f Disable debug mode by default and hide debug button in MyWashStart.vue 2026-01-19 14:56:43 +01:00
Jeppe Bundgaard 5de72344f8 Ensure user ownership of the vehicle before saving conditions in MyWashStart.vue
- Added `doesUserVehicleExist` check to validate ownership before saving conditions to the server.
- Skipped server-side condition save for unowned vehicles with an appropriate log message.
2026-01-19 14:51:08 +01:00
Jeppe Bundgaard 241efe34aa Add detailed logging for restoration and saving processes in MyWashStart.vue
- Introduced `instanceId` for better logging differentiation during multiple component instances.
- Enhanced restoration logic with stricter protections against unintended state changes.
- Updated `saveProgress` to handle triggers, destruction states, and invalid step resets more robustly.
- Improved logging visibility for debugging restoration, saving, and flow issues.
- Streamlined event handling for `beforeunload` and `onUnmounted` scenarios.
2026-01-19 14:46:01 +01:00
Jeppe Bundgaard 017737df19 Enhance wash restoration logic in MyWashStart.vue
- Added a timeout-based restoration process (`isRestoring`) to handle incomplete or timed-out washes.
- Prevented unintended state changes during restoration by refining watchers and condition checks.
- Introduced a 2-hour expiration for saved progress to avoid restoring outdated data.
2026-01-19 14:19:31 +01:00
Jeppe Bundgaard 10fe180ad2 Split "Questions" and "Tasks" into separate steps in MyWashStart.vue to improve navigation and step clarity
- Introduced a dedicated `TASKS` step and adjusted `currentStep` logic accordingly.
- Updated `onStartWash` calls, validation, and clickable step logic to align with the new step structure.
- Refined UI by separating "Questions" and "Tasks" into distinct step components and improving visibility conditions.
2026-01-19 14:15:16 +01:00
Jeppe Bundgaard ac4f3912ff Streamline wash start flow and improve UI logic in MyWashStart.vue
- Simplified step logic with updated `onStartWash` calls and condition checks.
- Added watcher for `allVisibleQuestionsAnswered` to trigger wash start dynamically.
- Enhanced `Confirm and Start Wash` button visibility logic to account for ongoing washes.
- Refined answer and task reset logic to prevent unintended state changes during washes.
2026-01-19 14:09:14 +01:00
Jeppe Bundgaard 632cd83a4a Add "Confirm and Start Wash" button in MyWashStart.vue
- Introduced `onConfirmAndStartWash` method to handle wash start without leaving the questions step.
- Added a conditional button to allow users to confirm and start the wash when all visible questions are answered.
2026-01-19 13:47:56 +01:00
Jeppe Bundgaard 35ffc82aa0 Add editAnswers state management and UI updates in MyWashStart.vue
- Introduced `editAnswers` state to track and toggle edit mode for answers.
- Added watcher to reset `editAnswers` when navigating away from the `QUESTIONS` step.
- Enhanced UI with "Edit Answers" and "Finish" buttons for improved user control.
- Updated visibility and validation logic to account for `editAnswers` state.
2026-01-19 13:42:19 +01:00
Jeppe Bundgaard 989ee5acce Combine "Questions" and "Tasks" steps for streamlined navigation in MyWashStart.vue
- Merged `QUESTIONS` and `TASKS` steps into a single step for improved user flow and consistency.
- Adjusted logic to dynamically display "Questions & Tasks" based on visibility and progress.
- Refactored navigation and validation to simplify step transitions and state handling.
- Consolidated UI for tasks and questions, including conditional visibility and improved answer tracking.
2026-01-19 13:36:05 +01:00
Jeppe Bundgaard 603bef2d44 Simplify rule evaluation logic and condition filtering in useSelfServeLogic
- Removed unnecessary checks for empty sub-rules, allowing rule evaluations to fail gracefully.
- Standardized `parseInt` usage to improve consistency across condition and task filtering.
- Enhanced filtering logic to handle default values for departments, products, and lanes more flexibly.
2026-01-19 13:04:27 +01:00
Jeppe Bundgaard d770da869f Add debug UI for task visibility and improve lane filtering logic
- Added a debug section in `MyWashStart.vue` and `SelfServeTryModal.vue` to display task visibility, conditions, and rule evaluations for enhanced testing and visibility.
- Updated lane filtering logic in `useSelfServeLogic` to handle `null` and missing lane values more consistently.
2026-01-19 12:41:25 +01:00
Jeppe Bundgaard 479962e755 Refactor Self-Serve logic into composable
- Extracted reusable Self-Serve logic into `useSelfServeLogic` composable.
- Replaced redundant data fetching, rule evaluation, and attachment handling logic in `MyWashStart.vue` and `SelfServeTryModal.vue` with `useSelfServeLogic`.
- Improved maintainability and consistency by consolidating shared functionality.
- Added debug UI with conditions and rule evaluations to `MyWashStart.vue` for enhanced visibility and testing.
2026-01-19 12:37:46 +01:00
Jeppe Bundgaard e65f4b2fc6 Refactor filtering and condition rule evaluation across Self-Serve components
- Standardized `filters` usage in `get.all` methods for `MyWashStart.vue`, `SelfServeTryModal.vue`, and `ObjectsGlobal.vue`.
- Updated rule evaluation logic to return `false` for empty condition rules and simplified sub-rule handling.
- Improved filter transformation to handle arrays in the `ObjectsGlobal.vue` API for more flexible requests.
- Consolidated duplicate logic for conditions and tasks across modules.
2026-01-19 12:07:10 +01:00
Jeppe Bundgaard 85b84df7f7 Refactor MyWashStart.vue to enhance wash flow and step navigation
- Simplified `currentStep` assignment by removing redundant `washInProgress` checks.
- Updated `onStartWash` to accept a `targetStep` parameter for better step control.
- Enhanced clickable steps logic to handle ongoing washes consistently.
- Added sticky header UI for "Wash In Progress" state.
- Fixed button disabling logic in navigation for ongoing washes.
2026-01-19 11:51:48 +01:00
Jeppe Bundgaard e7ccb29b05 Add task management and improve navigation flow in MyWashStart.vue and SelfServeTryModal.vue
- Added task completion tracking with `completedTasks` state and checkbox UI.
- Refactored step navigation flow in `MyWashStart.vue` to include `QUESTIONS` and `TASKS` steps.
- Updated validation and data persistence logic for additional steps.
- Enhanced task UI in `SelfServeTryModal.vue` with completion checkboxes and dynamic styling for completed tasks.
2026-01-19 11:35:18 +01:00
Jeppe Bundgaard 3ecaee7aed Add image preview and download link support for task attachments in Self-Serve components
- Updated `MyWashStart.vue` and `SelfServeTryModal.vue` to fetch and display download links for image attachments.
- Enhanced UI to show inline image previews for attachments with valid download links.
- Introduced `isImage` utility function to identify image formats.
2026-01-19 11:23:42 +01:00
Jeppe Bundgaard 2435a85ff9 Add attachment handling and password reset endpoints to Self-Serve module
- Introduced attachment fetching and downloading logic in `MyWashStart.vue` and `SelfServeTryModal.vue`.
- Enhanced task-related UI to display and handle attachments.
- Added password reset API endpoints (`request`, `validate`, `set`) in `openapi.yaml`.
2026-01-19 11:19:52 +01:00
Jeppe Bundgaard f2e82f8812 Extend Self-Serve API with new commands, schemas, and configuration support
- Added `SelfServeLaneStatus` and `SelfServeConfig` schemas to improve data handling and API responses.
- Enhanced `/modules/self-serve/lane/command` to support `RESERVE`, `RELEASE`, and `license_plate`.
- Updated `/modules/self-serve/config` endpoints to include request/response schemas for configuration management.
2026-01-19 10:54:41 +01:00
Jeppe Bundgaard 143ca80eb4 Add license plate and customer number watchers to fetch previous answers in MyWashStart.vue
- Introduced `fetchPreviousAnswers` function to retrieve and populate previous answers based on license plate and customer number.
- Added logic to clear answers state when license plate or customer number changes.
- Updated watchers to trigger data fetching and ensure answers reflect the latest state.
2026-01-15 12:46:01 +01:00
Jeppe Bundgaard 40884fc9e6 Refactor MyWashStart.vue and SelfServeTryModal.vue to optimize rule fetching logic
- Replaced pre-fetching of all condition rules with conditional fetching based on relevant condition IDs.
- Updated question rendering in `MyWashStart.vue` to use `WhiteBoxCard` for improved UI structure.
2026-01-15 12:40:48 +01:00
Jeppe Bundgaard 52529fec3e Add filtering support to get.all methods and enhance Self-Serve data fetching logic
- Updated `get.all` methods across multiple Self-Serve components (`Questions`, `Conditions`, `Tasks`, `ConditionRules`, `Vehicles`) to accept optional filters.
- Refactored `MyWashStart.vue` and `SelfServeTryModal.vue` to leverage filters for context-specific data fetching (e.g., department, product, lane).
2026-01-15 11:42:14 +01:00
Jeppe Bundgaard 2c7d69c458 Add vehicle condition confirmation step in MyWashStart.vue
- Introduced new "Vehicle Configuration" step with dynamic question and task visibility.
- Enhanced `onStartWash` to persist user answers before starting the wash.
- Added `answers` state and related handling for vehicle condition questions.
- Updated navigation logic and UI to incorporate vehicle confirmation.
2026-01-15 11:31:09 +01:00
Jeppe Bundgaard 4bac68f098 Refactor wash commands in MyWashStart.vue to consolidate logic and improve reusability
- Introduced `executeSelfServeCommand` for shared command execution logic across wash actions.
- Replaced custom command handling in `onStartWash`, `onStopWash`, `onReserveWashLane`, and `onReleaseWashLane` with `executeSelfServeCommand`.
- Added new vehicle confirmation step and related UI updates.
- Adjusted default `forceNearestDepartmentEvaluationId` to `6`.
- Updated default behavior and validation logic in `VehicleDataStructure.vue`.
2026-01-15 11:06:28 +01:00
Jeppe Bundgaard 3cf3dc4146 Update forceNearestDepartmentEvaluationId default to 0 in MyWashStart.vue 2026-01-14 21:30:13 +01:00
Jeppe Bundgaard c1873d76c9 Merge remote-tracking branch 'origin/master' 2026-01-14 21:20:10 +01:00
Jeppe Bundgaard 3618c570b5 Update DesktopNavigationBuefy and Viewport layout logic for better responsiveness
- Removed unnecessary visibility check for `DesktopNavigationBuefy`.
- Introduced `watch` in `Viewport` to dynamically update header height on state changes.
- Adjusted grid column spans to handle hidden states and ultra-wide screen devices.
2026-01-13 12:40:02 +01:00
Jeppe Bundgaard b637b9dc5f Add SelfServeVehicleConditions feature to Self-Serve module
- Introduced `SelfServeVehicleConditions` object and related CRUD operations for managing vehicle-specific conditions.
- Added pagination, table, and detail views for managing vehicle conditions within the Department dashboard.
- Updated routing and navigation to include `selfservevehicleconditions` path and entry points.
- Extended `openapi.yaml` to document new endpoints for vehicle condition management.
2026-01-13 12:35:51 +01:00
gold-dev 21e763b25a Feat: remove unused sections from landing page 2026-01-12 18:40:25 +02:00
gold-dev b59d4cff01 Feat: Set mx auto for form 2026-01-12 18:39:17 +02:00
gold-dev 4300f5c646 Feat: Fix sticky bug for employee login 2026-01-12 18:37:10 +02:00
gold-dev 2b7f29b6ef Feat: New pages for 202512 - truckwash.io slides 1-9 2026-01-12 18:33:08 +02:00
Jeppe Bundgaard 70029d72d9 Refactor ActionSettingsWheelButton to adjust lane link behavior based on device type 2026-01-12 10:53:58 +01:00
gold-dev 1749f52f24 Feat: Change styles for 202512 - truckwash.io Set button same width 2026-01-09 16:58:31 +02:00
Jeppe Bundgaard a6867643fc Merge remote-tracking branch 'origin/master' 2026-01-09 15:41:18 +01:00
Jeppe Bundgaard 4ea93ff0c8 Extend SelfServeConditionRules with support for nested evaluation of IS_TRUE_OR_ANY_TRUE and IS_FALSE_OR_ANY_FALSE rule types 2026-01-09 15:26:38 +01:00
Jeppe Bundgaard 36b60038b9 Enhance SelfServeTryModal with tooltips and dynamic rule evaluation
- Added `BTooltip` from Buefy for displaying detailed information about conditions and rules.
- Implemented `getRuleTypeLabel` and `getConditionById` methods for improved condition and rule handling.
- Updated UI to include tooltips with rule descriptions, evaluation states, and fallback text for missing rules.
2026-01-09 15:08:33 +01:00
Jeppe Bundgaard b20953e51b Add IS_TRUE_OR_ANY_TRUE and IS_FALSE_OR_ANY_FALSE rule types to condition evaluation
- Extended `SelfServeConditionRules` and its UI to support new rule types.
- Updated `openapi.yaml` to document the newly added options.
- Refactored `evaluateCondition` logic to handle nested evaluation with added rule types.
2026-01-09 15:03:52 +01:00
Jeppe Bundgaard 0591d39a1d Add "Prøv" button and lane-specific filtering to SelfServeTryModal
- Updated `DepartmentWashLane` to include a "Prøv" button for opening `SelfServeTryModal`.
- Enhanced modal logic to support filtering by department, vehicle type, and lane.
- Improved UI with lane-specific context in the modal's title and dynamic data handling.
2026-01-09 14:33:01 +01:00
Jeppe Bundgaard 66307a9aad Add SelfServeTryModal to DepartmentSelfServeQuestions and enable vehicle-type-specific test flows
- Introduced `SelfServeTryModal` component for handling department and vehicle-type-specific test flows.
- Added a "Prøv" button in `DepartmentSelfServeQuestions` for opening the modal.
- Implemented logic for fetching and filtering questions, conditions, rules, and tasks based on department and vehicle type.
- Enhanced UI to support answering questions, evaluating conditions, and managing tasks within the modal.
2026-01-09 14:29:14 +01:00
Jeppe Bundgaard 32e557a9df Add IS_TRUE_OR_NOT_SET and IS_FALSE_OR_NOT_SET options to SelfServeConditionRules 2026-01-09 14:22:25 +01:00
Jeppe Bundgaard 585e56a87f Add IS_SET and IS_NOT_SET options to SelfServeConditionRules and update UI with new rule creation button
- Extended condition rules with `IS_SET` and `IS_NOT_SET` options.
- Added "Tilføj betingelsesregel" button in `SelfServeConditionRulesModal` for enhanced rule management.
2026-01-09 14:13:56 +01:00
Jeppe Bundgaard 1c13e2c80d Add condition_id support to SelfServeConditions, SelfServeConditionRules, and related components
- Renamed `question_condition` to `condition_id` for consistency across `SelfServeConditions`, `SelfServeTasks`, and `SelfServeQuestions`.
- Introduced CRUD operations for `SelfServeConditionRules` with logic for managing condition rules.
- Enhanced existing components to support `condition_id`, including dynamic filtering and table parsing.
- Updated UI elements to reflect changes, including new rule creation options and improved field handling for `condition_id`.
2026-01-09 14:08:53 +01:00
Jeppe Bundgaard aaa0298bae Rename question_condition to condition_id in SelfServeQuestions for consistency and update related methods, parsing, and table logic 2026-01-09 13:58:30 +01:00
Jeppe Bundgaard b1ffa45bc5 Rename question field to condition_id in SelfServeTasks for consistency and update related filtering, parsing, and table logic 2026-01-09 13:54:20 +01:00