Skip to content
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

Feature Idea: Welcome Dashboard #132

Open
tobru opened this issue Nov 7, 2022 · 3 comments
Open

Feature Idea: Welcome Dashboard #132

tobru opened this issue Nov 7, 2022 · 3 comments

Comments

@tobru
Copy link
Member

tobru commented Nov 7, 2022

I would love to have a welcome dashboard which shows some interesting data in an overview, leaving out all the details behind the already existing detailed views. And it could / should be some fun.

Ideas:

  • Sum of worked hours this year/month/week so far
  • Percentage of hours-to-be-worked already reached this year/month/week
  • Number of Legal Leaves taken so far, planned so far (future) and still to be planned
  • Current Calculated Balance
  • Last Definitive Balance
  • List of missing Timesheet entries, huge green checkmark if Timesheet is up-to-date
@ccremer
Copy link
Contributor

ccremer commented Nov 7, 2022

Those are some good ideas! In a way we have this dashboard already, though it could be reworked a bit.
Let me break down some of them and potential issues / implementation notes

Sum of worked hours this year/month/week so far

Sum of week we already have, it's displayed right in /report. Sum of month might be somewhat doable. But year might not make sense as that only adds performance impact with little value. The page loads slower towards the end of the year, as around ~1000 attendance entries need to be loaded per request per user. Here I'd argue that the dedicated yearly report might be sufficient.

Percentage of hours-to-be-worked already reached this year/month/week

This might not be that easy, especially for the year. Because to calculate a percentage, we need the maximum that the employee should work ahead, but that's more theoretical. Issues that impact the percentage in advance, especially towards end of year:

  • Employee changing the working schedule ("pensum") later
  • Employee not using all holidays
  • Employee not compensating all overtime

The calculation gets mighty complicated, not sure if it makes sense to implement this before going Odoo > 8. An imprecise calculation might only confuse users, especially if the calculation is off and users start wondering why, then it raises more questions than it answers.

Number of Legal Leaves taken so far, planned so far (future) and still to be planned

Should be "easy" enough. Though arguably this can be done in Odoo itself, but it may not be as easy to figure out as it should be.

Current Calculated Balance

Doable. This information requires the info from the last issued payslip. This logic is mostly the same as with the monthly report, only that the individual days aren't displayed. What needs to be addressed is that there can be a few days where a new month is started, but the payslip hasn't received the last definitive overtime info yet by PeopleOps.

Last Definitive Balance

Doable. Similar problem as before. There is a period of time where we need to look up now - 2months of payslips to be able to figure out the last issued balance. When displaying the number, it should also display the month / payslip name from where it was taken. That should help the user to recognize that a newer payslip didn't yet receive a new definitive balance of the last month (which is done by PeopleOps a few days after starting the new month).

List of missing Timesheet entries, huge green checkmark if Timesheet is up-to-date

Currently, odootools lacks any kind of validation logic of reducing attendances to shifts, therefore any calculation goes kaputt when a entry is missing a signout or signin. I guess this can be implemented, but special attention needs to go into timezones as well for VSHNeers in Canada.

@ccremer
Copy link
Contributor

ccremer commented Nov 7, 2022

Another idea: If we want to display some fun stats, maybe we can create a dashboard with some fast, basic numbers, and a dedicated "stats" page with more statistical values that may take a few seconds to calculate. for example

  • average overtime per month over last 12/24 months
  • number of attendance entries
  • number or avg duration of shifts (signin + signout pairs)
  • average length of lunchtime maybe?
  • ratio of normal work shifts vs oncall over last x months
  • trends and predictions of overtime towards end of year, maybe some charts?

I'm sure there's much interesting stuff that can be read from attendances alone :)

@tobru
Copy link
Member Author

tobru commented Nov 8, 2022

In a way we have this dashboard already, though it could be reworked a bit.

It's a bit like a Dashboard, but it shows too much for a Welcome board. I'd expect just a few numbers and no details, which I can then dive into if I want.

Thanks for the analysis. I'd say let's do the ones which are doable and don't need an overly huge amount of effort or will significantly slow down the app because it needs to load too much data from Odoo.

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

No branches or pull requests

2 participants