Skip to content

#7403 - Enhanced Analytics Dashboard #7405

Open
sulamana wants to merge 1 commit intofinos:masterfrom
hmxlabs:7403-Enhanced-Analytics-Dashboard
Open

#7403 - Enhanced Analytics Dashboard #7405
sulamana wants to merge 1 commit intofinos:masterfrom
hmxlabs:7403-Enhanced-Analytics-Dashboard

Conversation

@sulamana
Copy link
Contributor

Enhanced Dashboard so users can now specify start & End date and frequency the wish to see data for.

The added several new charts to provide a better visualation.

Enhanced Dashboard so users can now specify start & End date and frequency the wish to see data for.

The added several new charts to provide a better visualation.
@sulamana sulamana changed the title changes for issue #7403 changes for issue #7403 - Enhanced Analytics Dashboard Nov 26, 2025
@sulamana
Copy link
Contributor Author

here is a preview of the changes
image

image

@kamransaleem kamransaleem changed the title changes for issue #7403 - Enhanced Analytics Dashboard #7403 - Enhanced Analytics Dashboard Nov 26, 2025
@kamransaleem kamransaleem self-requested a review November 28, 2025 10:07
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reorganise this file so that the paths are together and the routes are together, a bit jumbled atm

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reorganise this file so that the paths are together and the routes are together, a bit jumbled atm

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Parsing and parameter validation should be done at the endpoint. The DAO should not do this, but instead be provided valid, typed parameters

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Parsing and parameter validation should be done at the endpoint. The DAO should not do this, but instead be provided valid, typed parameters

};

ListRoute<AccessLogSummary> findUsersSummaryRoute = (request, response) -> {
String frequency = request.params("frequency"); // year, day, week, month
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should frequency be a ENUM and named Period or perhaps consider the existing Waltz enum called Duration in org,finos,waltz.model?

refer to EntityStatisticEndpoint for it's usage

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

some of the fields of this class are better represented with existing java classes, i.e. Period.

import OperationTrendsChart from "./OperationTrendsChart.svelte";
import AccessLogOperationTrendsChart from "./AccessLogOperationTrendsChart.svelte";

const FREQUENCY_OPTIONS = [
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

define as an enum if not already existing, these live in common/services/enums

];

let selectedFrequency = "month";
let startDate = new Date(new Date().setMonth(new Date().getMonth() - 6)).toISOString().split('T')[0];
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

use moment.js for this, don't rely on string parsing,

return accessLogDao.findMonthOnMonthUsers(mode, currentYear);
}

public List<AccessLogSummary> findAccessLogSummary(String freq, String startDate, String endDate){
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

validation? perhaps endDate > startDate?
Should be using typed parameters here, not strings

refreshing = false;
}}>
{#if refreshing}
🔄 Refreshing...
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

use the existing loading notiication i.e.

<waltz-loading-notification show="$ctrl.visibility.loading"
                                        style="padding-top: 54px;"
                                        name="Loading">
            </waltz-loading-notification>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants