Commit Graph

103 Commits

Author SHA1 Message Date
chamikaJ
d6686d64be feat(project-currency): implement project-specific currency support
- Added a currency column to the projects table to allow different projects to use different currencies.
- Updated existing projects to default to 'USD' if no currency is set.
- Enhanced project finance controller to handle currency retrieval and updates.
- Introduced API endpoints for updating project currency with validation.
- Updated frontend components to display and manage project currency effectively.
2025-06-04 11:30:51 +05:30
chamiakJ
1ec9759434 feat(reporting-allocation): update members and utilization filters to handle "Clear All" scenario
- Enhanced members filter logic to return no data when no members are selected.
- Updated utilization filter to return an empty array when no utilization states are selected, improving clarity in reporting results.
2025-06-03 17:45:03 +05:30
chamiakJ
13baf36e3c feat(reporting-allocation): add helper method for billable query with custom alias and enhance logging for debugging
- Introduced a new method to build billable queries with customizable table aliases, improving query flexibility.
- Enhanced logging throughout the reporting allocation process to aid in debugging and provide clearer insights into query generation and utilization state calculations.
2025-06-03 16:23:07 +05:30
chamiakJ
e82bb23cd5 feat(members-time-sheet): enhance API response handling and add noCategory filter 2025-06-03 14:33:22 +05:30
chamiakJ
71638ce52a refactor(task-list): update task list components and remove deprecated files
- Replaced StatusGroupTables with TaskGroupList in multiple components to streamline task grouping functionality.
- Updated imports to reflect new component structure and paths.
- Removed obsolete task list components and styles to clean up the codebase.
- Enhanced task list filters for improved user experience and consistency across the application.
2025-06-02 23:04:03 +05:30
chamikaJ
45d9049d27 feat(reporting-allocation): enhance working hours calculation and localization updates
- Improved the logic for calculating total working hours, introducing a minimal baseline for non-working days to ensure accurate utilization metrics.
- Updated individual member calculations to reflect over-utilization during non-working periods.
- Added new localization keys for "Overtime Work" and "Review work-life balance policies" in English, Spanish, and Portuguese time report JSON files to enhance user experience.
2025-06-02 17:10:37 +05:30
chamikaJ
b6be411162 fix(database-functions): correct JSON handling for task members in SQL function
- Updated the handling of the 'members' field in the SQL function to ensure proper JSON formatting.
- Replaced the use of type casting with direct JSON handling for improved clarity and performance.
2025-06-02 16:23:34 +05:30
chamikaJ
dc6a62a66a feat(reporting-allocation): enhance query logic and filters for reporting allocations
- Added logging for SQL queries and results to aid in debugging.
- Introduced additional filters for categories and projects in the reporting allocation query.
- Modified the duration clause to handle cases with no project IDs.
- Improved total calculations for time logs and estimated hours based on filtered results.
- Refactored SQL query to optimize performance and clarity in data retrieval.
2025-06-02 16:08:35 +05:30
chamikaJ
4e43780769 Merge branch 'feature/member-time-progress-and-utilization' of https://github.com/Worklenz/worklenz into feature/project-finance 2025-05-30 15:08:22 +05:30
chamikaJ
fef50bdfb1 feat(task-logging): enhance time log functionality with subtask handling and UI improvements
- Implemented recursive task hierarchy in SQL query to support subtasks in time logging.
- Updated time log export to include task names for better clarity.
- Added tooltips to inform users when time logging and timer functionalities are disabled due to subtasks.
- Enhanced UI components in the task drawer to reflect new time log features and improve user experience.
- Introduced responsive design adjustments for better accessibility on mobile devices.
2025-05-30 13:28:47 +05:30
chamikaJ
43c6701d3a feat(finance): enhance project finance view with export functionality and UI improvements
- Implemented export functionality for finance data, allowing users to download project finance reports in Excel format.
- Refactored project finance header to streamline UI components and improve user experience.
- Removed deprecated FinanceTab and GroupByFilterDropdown components, consolidating functionality into the main finance view.
- Updated the project finance view to utilize new components for better organization and interaction.
- Enhanced group selection for finance data, allowing users to filter by status, priority, or phases.
2025-05-30 12:42:43 +05:30
chamikaJ
8cdc8b3ad0 chore(dependencies): update rimraf version and clean up package-lock.json
- Removed deprecated rimraf entries from package-lock.json to streamline dependencies.
- Added an override for rimraf in package.json to ensure compatibility with version 6.0.1.
- Refactored useTaskDragAndDrop and useTaskSocketHandlers hooks to use separate selectors for improved performance.
- Made minor style adjustments in project-view-header and project-view components for consistency.
2025-05-30 12:19:02 +05:30
chamikaJ
b6e4ed9883 Merge branch 'fix/performance-improvements' of https://github.com/Worklenz/worklenz into feature/project-finance 2025-05-30 11:42:48 +05:30
chamikaJ
65af5f659e refactor(build): remove Gruntfile and transition to npm scripts for build process
- Deleted Gruntfile.js to streamline the build process.
- Updated package.json to include new npm scripts for build, clean, and watch tasks.
- Added dependencies for concurrent execution and CSRF token management.
- Integrated csrf-sync for improved CSRF protection in the application.
- Refactored app and API client to utilize the new CSRF token management approach.
2025-05-30 10:56:19 +05:30
chamikaJ
b0fb0a2759 refactor(auth): remove debug logging from authentication processes
- Eliminated extensive console logging in the auth controller, deserialize, serialize, and passport strategies to streamline code and improve performance.
- Simplified response handling in the auth controller by directly returning the AuthResponse object.
- Updated session middleware to enhance clarity and maintainability by removing unnecessary debug functions and logs.
2025-05-30 09:48:47 +05:30
Chamika J
4bc1b4fa73 Merge pull request #146 from shancds/feature/reporting-time-members-filtter
Feature/reporting time members filtter
2025-05-30 08:41:21 +05:30
shancds
8d6c43c59c fix(reporting): update total utilization calculation precision and remove debug log from member time sheets 2025-05-29 17:57:16 +05:30
shancds
1f6bbce0ae feat(reporting): add total time utilization component and update member time sheets to include totals 2025-05-29 17:50:11 +05:30
chamikaJ
d1fe23b431 feat(database): add progress tracking and finance module tables
- Introduced a new ENUM type for progress modes in tasks to enhance progress tracking capabilities.
- Updated the projects and tasks tables to include new columns for manual and weighted progress tracking.
- Added new finance-related tables for rate cards and project rate card roles to support financial management within projects.
- Enhanced project members table to link with finance project rate card roles, improving data integrity and relationships.
2025-05-29 17:06:19 +05:30
chamikaJ
935165d751 refactor(session): simplify pg_sessions table structure and query logic
- Removed the created_at column from the pg_sessions table definition to streamline session management.
- Updated the recent sessions query to order by expire instead of created_at, enhancing the relevance of retrieved session data.
2025-05-29 17:04:08 +05:30
chamikaJ
2f0fb92e3e feat(session): add session store debugging and pg_sessions table management
- Implemented a test function for the session store to verify database connection and check the existence of the pg_sessions table.
- Added logic to create the pg_sessions table if it does not exist, including defining its structure and constraints.
- Enhanced session store methods with detailed logging for session set and get operations, improving traceability and debugging capabilities.
2025-05-29 16:54:27 +05:30
chamikaJ
a3d5e63635 fix(session): update session middleware configuration
- Changed session middleware settings to resave sessions when uninitialized and prevent saving uninitialized sessions.
- Updated cookie settings to enable httpOnly and set secure to false, enhancing security measures for session management.
2025-05-29 16:48:25 +05:30
chamikaJ
6a2e9afff8 feat(auth): enhance session and user deserialization logging
- Added detailed logging for session checks in the auth controller, including session ID and full session object.
- Implemented user existence verification in the deserialize function, with improved logging for user checks and database query results.
- Enhanced the serialize function to log the serialized user object and completion of the serialization process, improving traceability in authentication workflows.
2025-05-29 16:44:40 +05:30
chamikaJ
a0f36968b3 feat(auth): add debug logging for authentication processes
- Introduced detailed console logging in the auth controller, deserialize, serialize, and passport strategies to aid in debugging authentication flows.
- Enhanced error handling and response messaging during user registration and login processes, providing clearer feedback for success and failure scenarios.
- Updated the signup and login functions to include more informative logs, improving traceability of user actions and system responses.
2025-05-29 16:13:36 +05:30
shancds
b94c56f50d feat(reporting): enhance utilization tracking and filtering in time reports 2025-05-29 15:38:25 +05:30
shancds
549728cdaf feat(reporting): implement member selection and filtering in time reports 2025-05-29 08:24:16 +05:30
chamiakJ
b8cc9b5b73 feat(project-finance): add finance data export functionality
- Implemented a new endpoint in the project finance controller to export financial data as an Excel file, allowing users to download project finance details.
- Enhanced the frontend to include an export button that triggers the finance data export, with appropriate loading states and error handling.
- Added functionality to group exported data by status, priority, or phases, improving the usability of the exported reports.
- Updated the project finance API service to handle the export request and return the generated Excel file as a Blob.
2025-05-29 01:17:05 +05:30
chamiakJ
a87ea46b97 feat(project-finance): implement hierarchical task loading and subtasks retrieval
- Enhanced the project finance controller to support hierarchical loading of tasks, allowing for better aggregation of financial data from parent and subtasks.
- Introduced a new endpoint to fetch subtasks along with their financial details, improving the granularity of task management.
- Updated the frontend to handle subtasks, including UI adjustments for displaying subtasks and their associated financial data.
- Added necessary Redux actions and state management for fetching and displaying subtasks in the finance table.
- Improved user experience by providing tooltips and disabling time estimation for tasks with subtasks, ensuring clarity in task management.
2025-05-29 00:59:59 +05:30
chamiakJ
07bc5e6030 feat(project-finance): implement time formatting utilities and update task time handling
- Added utility functions to format time in hours, minutes, and seconds, and to parse time strings back to seconds.
- Updated the project finance controller to use seconds for estimated time and total time logged, improving accuracy in calculations.
- Modified frontend components to reflect changes in time handling, ensuring consistent display of time in both seconds and formatted strings.
- Adjusted Redux slice and types to accommodate new time formats, enhancing data integrity across the application.
2025-05-28 12:28:03 +05:30
chamiakJ
ca0c958918 fix(project-finance-controller): correct estimated hours calculation to reflect hours instead of minutes 2025-05-27 16:42:51 +05:30
shancds
cf0eaad077 feat(ratecard-table): improve rate handling and focus management in the ratecard table 2025-05-27 14:16:45 +05:30
shancds
f22a91b690 feat(ratecard): enhance ratecard update logic and add unsaved changes alert 2025-05-27 12:42:34 +05:30
chamikaJ
b0ed3f67e8 feat(task-breakdown-api): implement task financial breakdown API and related enhancements
- Added a new API endpoint `GET /api/project-finance/task/:id/breakdown` to retrieve detailed financial breakdown for individual tasks, including labor hours and costs grouped by job roles.
- Introduced a new SQL migration to add a `fixed_cost` column to the tasks table for improved financial calculations.
- Updated the project finance controller to handle task breakdown logic, including calculations for estimated and actual costs.
- Enhanced frontend components to integrate the new task breakdown API, providing real-time financial data in the finance drawer.
- Updated localization files to reflect changes in financial terminology across English, Spanish, and Portuguese.
- Implemented Redux state management for selected tasks in the finance drawer.
2025-05-26 16:36:25 +05:30
Chamika J
399d8b420a Merge pull request #137 from shancds/feature/project-finance
Feature/project finance (project-ratecard-member-add)
2025-05-26 08:33:29 +05:30
shancds
659ede7fb5 feat(project-ratecard-member): ratecard member handle backend and frontend and all update fix bug 2025-05-23 13:57:53 +05:30
chamikaJ
b320a7b260 feat(project-finance): enhance project finance view and calculations
- Added a new SQL view `project_finance_view` to aggregate project financial data.
- Updated `project-finance-controller.ts` to fetch and group tasks by status, priority, or phases, including financial calculations for estimated costs, actual costs, and variances.
- Enhanced frontend components to display total time logged, estimated costs, and fixed costs in the finance table.
- Introduced new utility functions for formatting hours and calculating totals.
- Updated localization files to include new financial columns in English, Spanish, and Portuguese.
- Implemented Redux slice for managing project finance state and actions for updating task costs.
2025-05-23 08:32:48 +05:30
shancds
e245530a15 Merge branch 'feature/project-finance' of https://github.com/Worklenz/worklenz into feature/project-finance 2025-05-23 06:22:00 +05:30
shancds
87bd1b8801 feat(ratecard): crud rename and ratecard-assignee-selector create 2025-05-22 16:46:58 +05:30
shancds
a711d48c9c feat(ratecard): implement insertOne functionality for single role creation and update API integration 2025-05-22 13:03:08 +05:30
shancds
a879176c24 feat(ratecard): update currency default to USD and align rate columns to the right 2025-05-22 09:12:40 +05:30
chamikaJ
49fc89ae3a Merge branch 'feature/recurring-tasks' of https://github.com/Worklenz/worklenz into feature/project-finance 2025-05-22 08:11:27 +05:30
chamiakJ
d7a5f08058 feat(project-finance): implement project finance API and frontend integration for task retrieval 2025-05-22 06:24:00 +05:30
chamiakJ
c1e923c703 feat(ownership-transfer): implement transfer_team_ownership function for team ownership management
- Added a new PostgreSQL function to handle the transfer of team ownership between users
2025-05-21 21:42:16 +05:30
shancds
3ce81272b2 feat(ratecard): enhance project rate card functionality with job title retrieval and bulk save feature 2025-05-21 18:59:04 +05:30
shancds
c3bec74897 feat(project-ratecard): implement project rate card management with CRUD operations and integrate into frontend 2025-05-21 17:16:35 +05:30
chamiakJ
0cb0efe43e feat(cron-jobs): conditionally enable recurring tasks based on environment variable
- Updated the cron job initialization to start recurring tasks only if the ENABLE_RECURRING_JOBS environment variable is set to "true". This allows for more flexible job management based on deployment configurations.
2025-05-21 11:28:10 +05:30
Chamika J
69e7938365 Merge branch 'feature/project-finance' into finance-module 2025-05-21 10:05:17 +05:30
chamiakJ
84c7428fed feat(recurring-tasks): enhance recurring task functionality and documentation
- Expanded schedule options for recurring tasks, including new intervals for every X days, weeks, and months.
- Added future task creation logic to ensure tasks are created within defined limits based on their schedule type.
- Updated user guide to reflect new scheduling options and future task creation details.
- Improved backend logic for recurring task creation, including batch processing and future limit calculations.
- Added environment configuration for enabling recurring jobs.
- Enhanced frontend localization for recurring task configuration labels.
2025-05-21 08:07:59 +05:30
shancds
ded0ad693c refactor: remove debug console logs from selection cell components and database migration table column change 2025-05-21 07:56:38 +05:30
shancds
7d81b7784b feat(ratecard): update job role references and enhance rate card functionality 2025-05-20 17:46:41 +05:30