Commit Graph
80 Commits
Author SHA1 Message Date
Faris Armoush 0e61e52bf8 Connected devices to widgets, and is currently making the necessary and correct api calls for everything to function properly. 2025-05-14 15:35:22 +03:00
Faris Armoush 7515b347ce analytics devices integtation. 2025-05-14 15:03:30 +03:00
Faris Armoush 78d4e58996 Added selected device state/event, and clear data event to AnalyticsDevicesBloc. 2025-05-14 12:50:16 +03:00
Faris Armoush 23b9cb5b78 Injected AnalyticsDevicesBloc into AnalyticsPage. 2025-05-14 12:42:51 +03:00
Faris Armoush 401d0a9788 Created AnalyticsDevicesBloc. 2025-05-14 12:41:44 +03:00
Faris Armoush 4d9e57c8b5 Created and connected a remote implementation that fetches the heat map occupancy per space from the API. 2025-05-14 10:51:37 +03:00
Faris Armoush e8f7c29652 Applies correct business logic of the sidebar. 2025-05-13 16:46:34 +03:00
Faris Armoush ef29d78d70 Clears data when needed. 2025-05-12 10:02:56 +03:00
Faris Armoush 2262d3b2ba bugfix/analytics_expansion_bugfix. 2025-05-12 09:20:01 +03:00
Faris Armoush b7ef9da35d Sp 1513 fe implement device dropdown and live status card presence vacancy (#179)
* Called the widget of presence sensor status widgets.

* Enahnced `PowerClampEnergyDataDeviceDropdown` design and made it a dropdown.

* connected the realtime feature to the occupancy side bar, but with a mock id.

* revert default tab to energyManagement.
2025-05-11 16:59:15 +03:00
Faris Armoush 49e93329c8 Sp 1511 fe build occupancy heat map weekly monthly intensity view (#178)
* set the default tab to occupancy for ease of development.

* Implemented an initial design for the occupancy chart.

* Add Occupacy model and service for occupancy data handling.

* Created `OccupancyBloc`.

* Implemented the sidebar of Occupancy view.

* Moved `OccupancyEndSideBar` widget to its own file.

* Removed unnecessary widgets.

* Matched the `OccupancyChart` with the figma design.

* Added `AnalyticsDateFilterButton` to `OccupancyChartBox`.

* Hides `AnalyticsDateFilterButton` that is in the page header, when the selected tab isn't `AnalyticsPageTab.energyManagement`.

* Added animation to`AnalyticsDateFilterButton`.

* modified the implementation of `FakeOccupacyService` to clamp all the generated values to less than a 100.

* Injected `OccupancyBloc` into `AnalyticsPage`.

* Made `OccupancyChart` read its data from `OccupancyBloc`.

* Refactor AnalyticsCommunitiesSidebar to load data based on selected tab and implement loadEnergyManagementData method

* Refactor Analytics views to use StatefulWidget and load data in initState

* Created `OccupancyHeatMapModel`.

* Add FakeOccupancyHeatMapService implementation.

* Created `OccupancyHeatMapBloc`.

* Injected `OccupancyHeatMapBloc` into `AnalyticsPage`.

* Add OccupancyHeatMapBox widget and integrate into AnalyticsOccupancyView

* Matching the heat map with the design, and added week days.

* Made the HeatMap cells have a dashed border.

* shows months.

* responsiveness.

* Integrate OccupancyHeatMapBloc and update OccupancyHeatMapBox to display heat map data with error handling

* Integrate OccupancyHeatMapBloc and update OccupancyHeatMapBox to display heat map data with error handling

* made the heatmap loading fast af by using painters instead of individually creating a widget for every single event.

* Extracted `OccupancyHeatMapMonths` into its own widgte.

* Moved `OccupancyHeatMapMonths` to its own file.

* Adjusted design of `OccupancyHeatMapMonths`.

* Adjust layout flex properties for `OccupancyEndSideBar` and its parent column in `AnalyticsOccupancyView`.

* moved `OccupancyPaintItem` to `OccupancyPainter`s file.

* removed comments from `OccupancyPainter`.

* used color.withValues instead of .withOpacity.

* re-added `OccupancyHeatMapGradient`.

* Revert initial tab to `energyManagement`.

* Made datepicker dynamic for multiple states.

* Add year picker functionality to date filter button and implement dynamic date selection

* Align date filter button to the end in occupancy chart and heat map boxes for improved UI consistency.

* Enahnced color of border in `OccupancyPainter`.

* Add ClearOccupancyHeatMapEvent to reset heat map state and update occupancy data helper to trigger event on empty selections

* show percentage of value in tool tip of `OccupancyChart`.
2025-05-11 16:58:13 +03:00
Faris Armoush d6f0b53b59 Sp 1494 api integration (#180)
* SP-1494-api-integration.

* fixed left stide titles intervals in total energy consumption chart.

* Adjusted tooltip and title intervals in energy management charts to improve accuracy by incrementing displayed values by one.

* Refactor AnalyticsCommunitiesSidebar to use AnalyticsSpaceTreeView and enhance community/space selection handling

* Gave every tab its own selection logic using the strategy design pattern, along with clearing the selection when changing tabes to avoid collision between features.
2025-05-11 16:46:00 +03:00
Faris Armoush 2e2bc99501 Merge pull request #176 from SyncrowIOT/SP-1510-FE-Build-Occupancy-Bar-Chart-Monthly-Consumption-View
Sp 1510 fe build occupancy bar chart monthly consumption view
2025-05-08 16:32:21 +03:00
Faris Armoush 7f03222c12 Removed unnecessary widgets. 2025-05-07 15:46:24 +03:00
Faris Armoush 9bbf3e75fa bugfixes. 2025-05-07 11:55:04 +03:00
Faris Armoush d539e6266e gets data when changing the date. 2025-05-07 11:12:39 +03:00
Faris Armoush 7467f8d0ea Removed the analytics overview view for now, since there will be no implementation for it. 2025-05-07 10:59:55 +03:00
Faris Armoush a11e20147e preparing for integration, by fetching data when selecting a community. 2025-05-07 10:58:46 +03:00
Faris Armoush 55a6974bdc deselect selected spaces when selecting a new space in analytics side bar. 2025-05-06 15:53:43 +03:00
Faris Armoush ad41a2a87e Implemented calendar widget and bloc. 2025-05-06 15:02:09 +03:00
Faris Armoush 38184ca8b2 Integrated realtime data. 2025-05-05 16:58:48 +03:00
Faris Armoush 1a3006fa43 Power clamp info integration. 2025-05-05 12:57:27 +03:00
Faris Armoush 696978a78d Injected EnergyConsumptionPerDeviceBloc into AnalyticsPage. 2025-05-05 10:20:43 +03:00
Faris Armoush 69c9240641 Injected EnergyConsumptionByPhasesBloc into AnalyticsPage. 2025-05-04 14:22:01 +03:00
Faris Armoush d9cd5d0438 Injected TotalEnergyConsumptionBloc into AnalyticsPage. 2025-04-30 15:46:05 +03:00
Faris Armoush d8f40badc0 animated tab buttons. 2025-04-30 09:20:02 +03:00
Faris Armoush fdd5d0feed rem oved comments and removed copyWith fromAnalyticsTabState because the state object only has one property, so i replaced the state object with AnalyticsPageTab enum. 2025-04-30 09:17:52 +03:00
Faris Armoush fb1f79c7bb Made AnalyticsPageTabsAndChildren responsive. 2025-04-30 09:14:30 +03:00
Faris Armoush 1923ac7014 Progress towards 1493. 2025-04-29 17:00:06 +03:00
Faris Armoush c114161357 SP-1492. 2025-04-29 14:17:08 +03:00