-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Forecast hours by consultant #73
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Added `consultingHours` fields to various revenue tracking types in the GraphQL schema to capture consulting hours data. - Updated the `_compute_revenue_tracking_base` function to calculate and aggregate consulting hours across different entities, including cases, sponsors, clients, and account managers. - Enhanced the `ProjectSummary`, `CaseSummary`, `SponsorSummary`, and `ClientSummary` classes to include consulting hours in their respective summaries. These changes improve the revenue tracking capabilities by providing a more detailed view of consulting hours, facilitating better analysis and decision-making.
- Added new fields for consulting hours to various forecast types in the GraphQL schema, including `realizedConsultingHours`, `oneMonthAgoConsultingHours`, `twoMonthsAgoConsultingHours`, and `threeMonthsAgoConsultingHours`. - Updated the `compute_forecast` function to calculate and aggregate consulting hours across clients, sponsors, cases, and projects. - Improved the overall forecasting capabilities by providing a more detailed view of consulting hours, facilitating better analysis and decision-making.
- Introduced a normalization toggle to the Revenue Forecast page, allowing users to view revenue data adjusted for working days. - Updated rendering logic to support normalized values for various revenue metrics, improving clarity and accuracy in financial data representation. - Refactored cell rendering functions to accommodate both normalized and raw values, enhancing user experience and data insights. - Enhanced sorting functionality to consider normalized values, providing a more comprehensive analysis of revenue trends. These changes improve the usability and analytical capabilities of the revenue forecasting interface, facilitating better decision-making.
…culations - Added new field `consultingFeeNew` to various revenue tracking types in the GraphQL schema to capture additional consulting fee data. - Updated the `_compute_revenue_tracking_base` function to calculate and aggregate the new consulting fee across clients, sponsors, cases, and projects. - Enhanced summary classes (`AccountManagerSummary`, `ProjectSummary`, `CaseSummary`, `SponsorSummary`, `ClientSummary`) to include the new consulting fee calculations. These changes improve the revenue tracking capabilities by providing a more detailed view of consulting fees, facilitating better analysis and decision-making.
- Added new fields for consulting fees to various forecast types in the GraphQL schema, including `inAnalysisConsultingFeeNew`, `oneMonthAgoConsultingFeeNew`, `twoMonthsAgoConsultingFeeNew`, and `threeMonthsAgoConsultingFeeNew`. - Updated the `compute_forecast` function to calculate and aggregate the new consulting fee metrics across clients, sponsors, cases, and projects. - Improved the overall forecasting capabilities by providing a more detailed view of consulting fees, facilitating better analysis and decision-making. These changes enhance the revenue forecasting process by incorporating additional consulting fee data, leading to more informed financial insights.
- Introduced a new `ConsultingTable` component to streamline the display of consulting revenue data within the Revenue Forecast page. - The component encapsulates sorting, normalization, and rendering logic for consulting data, improving code organization and maintainability. - Updated the `RevenueForecastPage` to utilize the new `ConsultingTable`, enhancing the user interface and experience for analyzing consulting revenue trends. - This change supports better financial insights by providing a dedicated view for consulting metrics, aligning with previous enhancements to forecasting capabilities.
- Introduced a new `forecastData.ts` file containing interfaces and functions for managing revenue forecast data, including `getForecastData`, `processForecastData`, and validation utilities. - Refactored the `RevenueForecastPage` to utilize the new data processing functions, improving code organization and reducing redundancy in data handling. - Enhanced data validation to ensure the integrity of forecast data before processing, providing better error handling and user feedback. - These changes streamline the revenue forecasting logic, making it more maintainable and robust for future enhancements.
… Imports - Cleaned up the `RevenueForecastPage` component by removing unused imports and functions, enhancing code readability and maintainability. - Consolidated the data processing logic by retaining only the necessary functions from `forecastData`, improving overall performance. - This refactor supports better organization of the codebase, making it easier to manage and extend in future updates.
- Refactored the ConsultingTable component to utilize a dedicated render function for the table header, improving code organization and readability. - Added new metrics for consulting fees in the forecast data structure, including `threeMonthsAgoConsultingFeeNew`, `twoMonthsAgoConsultingFeeNew`, `oneMonthAgoConsultingFeeNew`, and `realizedConsultingFeeNew`. - Updated the GraphQL query to include the new consulting fee metrics, ensuring comprehensive data retrieval for revenue forecasting. - Enhanced the rendering logic in the ConsultingTable to display new consulting fee metrics, providing better insights into consulting revenue trends. These changes improve the overall functionality and usability of the revenue forecasting interface, facilitating more informed financial analysis.
- Added new fields to the GraphQL schema for revenue tracking, including `byConsultant` in `RevenueTrackingSummaries` and a new type `RevenueTrackingByConsultant` to capture consulting metrics. - Implemented a `ConsultantSummary` class to compute and aggregate consulting fees and hours for each consultant, enhancing the revenue tracking logic. - Updated the `compute_regular_revenue_tracking` function to include a breakdown of revenue by worker, providing more granular insights into consulting performance. - Enhanced the `compute_summaries` function to include a summary of revenue by consultant, improving overall analytics capabilities. These changes improve the revenue tracking system by providing detailed insights into consulting performance, facilitating better financial analysis and decision-making.
- Added a new field `byConsultant` to the GraphQL schema for detailed consulting metrics, including a new type `ForecastConsultingByConsultantEntry` to capture various consulting data points. - Updated the `compute_forecast` function to aggregate consulting fees and hours by consultant, improving the granularity of revenue insights. - Enhanced data processing to filter and structure consultant data effectively, ensuring comprehensive analytics for consulting performance. These changes improve the forecasting capabilities by providing a more detailed view of consulting metrics, facilitating better financial analysis and decision-making.
…rics - Refactored the ConsultingTable component to improve code organization by introducing dedicated components for table headers, rows, and cells. - Added new metrics for consultants in the forecast data structure, including `consultants` in the `ForecastSection` and corresponding fields in the GraphQL query. - Implemented utility functions for formatting currency and percentages, enhancing the display of financial data. - Updated rendering logic to incorporate new metrics and improve the overall user experience in analyzing consulting revenue trends. These changes enhance the functionality and maintainability of the revenue forecasting interface, providing better insights into consulting performance.
…eamlining Code - Removed unused imports from the ConsultingTable component, enhancing code clarity and maintainability. - Retained only essential utility functions for formatting currency, simplifying the component's dependencies. - Improved overall organization of the code, supporting better readability and future enhancements. These changes contribute to a cleaner codebase and facilitate easier management of the ConsultingTable component.
- Added a new field `inAnalysis` to the `ForecastDates` type in the GraphQL schema to represent the date currently under analysis. - Updated the `compute_forecast` function to include `in_analysis` in the forecast data structure, ensuring accurate date tracking. - Modified the revenue forecast GraphQL query to retrieve the new `inAnalysis` field. - Refactored the `TableHeaderComponent` to correctly render the `inAnalysis` date, improving the display of financial data. These changes enhance the forecasting capabilities by providing a clearer view of the date being analyzed, facilitating better financial analysis and decision-making.
- Added a new `highlightYellow` prop to the `TableCellComponent` to conditionally apply a yellow background based on significant value increases. - Implemented a utility function `isSignificantlyHigher` in the `TableRowComponent` to determine if the current month's value is more than 10% higher than the same day value from previous months. - Updated multiple instances of `TableCellComponent` within `TableRowComponent` to utilize the new highlighting feature, improving visual cues for significant revenue changes. These changes enhance the user experience by providing clearer visual indicators of significant financial trends in the revenue forecast tables.
…nsion Control - Added `hideExpansion` prop to the `TableRowComponent` to conditionally control the visibility of expansion buttons based on user preferences. - Updated the `ConsultingTableByConsultant` component to utilize the new `hideExpansion` prop, improving user experience by allowing for a cleaner table view when expansion is not needed. These changes enhance the flexibility of the consulting table interface, allowing users to customize their view of the revenue forecast data.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.