I’m working on an application which has a timesheet module, to select projects, respective tasks and to log the relative working hours.
To add the first task, we are able to achieve the functionality easily by using groups / repeating groups and also store the respective hours into the database tables. Yet, to add the second row, when we click on the “add item” button, we need to show the list of projects and associated tasks, from which the user may select a task from the same project or completely select a new project and its task item.
If the user select a task from same project, it should get added to the existing list along with the hours inputs boxes. If the user selects a new project and task, then it should be added as a new group in the UI. Also when “save” is clicked, the hours added against each task with respect to the project and days, should be stored in database.
Below, first image shows the list of projects and tasks list, second image shows the task that is selected to add the hours.
The required feature is as depicted below.
Looking forward for any suggestions and ideas.