vshn / odootools

VSHN-specific Odoo tool suite
https://odootools.vshn.net
BSD 3-Clause "New" or "Revised" License
3 stars 0 forks source link

Feature Idea: Welcome Dashboard #132

Open tobru opened 1 year ago

tobru commented 1 year ago

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:

ccremer commented 1 year ago

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:

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 commented 1 year ago

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

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

tobru commented 1 year ago

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.