Answered step by step
Verified Expert Solution
Question
1 Approved Answer
This request is to modify the previous code (I have below at the end of the question) and to now make use of functions and
This request is to modify the previous code (I have below at the end of the question) and to now make use of functions and call functions. There are also additional requirements in the section of 'task overview' and 'User Overview'. ** Please see full questions below in the screenshots & help as I have been stuck on this for days on end ** :(
Thank you kindly :)
My Previous Code:
Compulsory Task 1 Follow these steps: - Create a copy of your previous Capstone project (task_manager.py) and save it in the Dropbox folder for this project. Also, copy and paste the text files (user.txt and tasks.txt) that accompanied the previous Capstone project to this folder. Modify this program as follows: - Modify the code of your previous project so that functions are used. Adding functions will improve the modularity of your code. Your program should include at least the following functions: reg_user - that is called when the user selects ' r ' to register a user. add_task - that is called when a user selects 'a' to add a new task. view_all - that is called when users type 'va' to view all the tasks listed in 'tasks.txt'. view mine - that is called when users type ' v m' to view all the tasks that have been assigned to them. - Modify the function called reg_user to make sure that you don't duplicate usernames when you add a new user to user.txt. If a user tries to add a username that already exists in user.txt, provide a relevant error message and allow them to try to add a user with a different username. - Add the following functionality when the user selects 'vm' to view all the tasks assigned to them: Display all tasks in a manner that is easy to read. Make sure that each task is displayed with a corresponding number which can be used to identify the task. Allow the user to select either a specific task by entering a number or input '-1' to return to the main menu. If the user selects a specific task, they should be able to choose to either mark the task as complete or edit the task. If the user chooses to mark a task as complete, the 'Yes'/'No' value that describes whether the task has been completed or not should be changed to 'Yes'. When the user chooses to edit a task, the username of the person to whom the task is assigned or the due date of the task can be edited. The task can only be edited if it has not yet been completed. Add an option to generate reports to the main menu of the application. The menu for the admin user should now look something like this: Please select one of the following options: r - register user a - add task va - view all tasks vin - view my tasks gr - generare reports ds - display statistics e - exit When the user chooses to generate reports, two text files, called task_overview.txt and user_overview.txt, should be generated. Both these text files should output data in a user-friendly, easy to read manner. task_overview.txt should contain: - The total number of tasks that have been generated and tracked using the task_manager.py. - The total number of completed tasks. - The total number of uncompleted tasks. - The total number of tasks that haven't been completed and that are overdue. - The percentage of tasks that are incomplete. - The percentage of tasks that are overdue. user_overview.txt should contain: - The total number of users registered with task_manager.py. - The total number of tasks that have been generated and tracked using the task_manager.py. - For each user also describe: - The total number of tasks assigned to that user. - What percentage of the total number of tasks have been assigned to that user? - What percentage of the tasks assigned to that user have been completed? - What percentage of the tasks assigned to that user must still be completed? - What percentage of the tasks assigned to that user have not yet been completed and are overdue? Modify the menu option that allows the admin to display statistics so that If these text files don't exist (because the user hasn't selected to generate them yet), first call the code to generate the text filesStep by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started