Step-1: Final Timesheet Application
The final Timesheet application has four different roles - Admin, Developer, Manager, and an Employee. As explained below, each of these roles has a specific set of permissions to perform tasks:
Employee:
- Should be able to create Timesheetdetails for each day and save them.

- Should be able to submit a Timesheet for a Timesheet period (1st-15th or 16th to end-of-month in our sample application) when the Timesheet is in Open or Rejected status.

- Should be able to set daily reminders to receive an email at a specific time during the day.

Manager:
- Should be able to view a list of timesheets submitted by employees for each specific time period and approve/reject timesheets.

- Should be able to view the details of each submitted timesheet and approve/reject timesheets.

Developer:
-
Should be able to enter the lookup data in Timeofftype and Timesheetstatus entities/tables.
-
Should be able to access Entity Audit add-on to debug production issues.
-
Should be able to access Reports to setup the Cube.js schema files for ad-hoc end-user reporting.
Admin:
-
Should be able to create users/roles and assign permissions to users/roles.
-
Should be able to setup data in four lookup tables - Customer, Project, Task, UserTask.
-
Should be able to access reports & dashboard functionality for generating administration type of reports & dashboards.
-
Should be able to access Jobs scheduler to schedule jobs coded by the developer from the back-end.
Updated almost 2 years ago