Skip to content

Admin Panel

Swasthika edited this page Dec 20, 2019 · 52 revisions

Admin panel for tracking and managing user, project and task.

1. Analytics

  • Admin can view total number of users and their activities.
  • Admin can view total number of projects and their progress.
  • Admin can view total number of tasks and their progress.

1.1 User

  • User snapshot (User name, assigned projects,time spent by the user)
  • Chart for user activities (users vs time)
  • Delete action to remove user.

1.2 Task

  • Task snapshot (Task name, Description, Start date, End date, Time spent on the task)
  • Chart for task(task count v/s day)
  • Delete action to delete task.

1.3 Project

  • Project snapshot (Project name, Total users, List of users Users, Total time spent)
  • Chart for project activities
  • List of projects
  • List of Sub-projects under each project.

2. User Module

Only admin can add a new user.

2.1 Adding a user (required inputs):

  • First name
  • Last name
  • Email address
  • Phone number (Optional)
  • Password

User will be notified by email after successful addition to Database.

2.2 Actions

  • Delete a user. (Tasks are unassigned)
  • Remove a user from project.
  • Disable a user.

3. Project Module

Only admin has the access to add new project and sub-projects under each projects.

3.1 Adding a project (required inputs):

  • Name of the project
  • Module of the project
  • Select User option to assign multiple users to the project
  • Logo of the project
  • Color of the project
  • Start date
  • End date

4. Task Module

Admin can assign new tasks to any users.

4.1 Adding a task (required inputs):

  • Name of the task
  • Description (optional)
  • Select Project to choose project
  • Select User option to assign task to multiple users
  • Choose Project module

4.2 Actions (Specific page):

Admin can see the complete status of the task at different time intervals.

5. Admin Profile

5.1 Profile Details:

Admin can change profile picture and his details in this section.

  • Upload profile picture (Dependency: TODO...)

5.2 Change Password:

Admin can change the password from this section. Required fields:

  • old password
  • new password
  • confirm password

5.3 Logout

Admin can logout from system by clicking on logout.

6. Email templates:

  • New user created.
  • Password reset
  • New task assigned (to the user).
  • User blocked (User disabled case)

7. Design and Implementation

7.1 Database design

Entities

Login Details (Table Name: login_deails)

  • id - Integer (Auto Increment)
  • user_id - Integer (refers to users -> id)
  • task_date - Date
  • start_time - TimeStamp
  • end_time - TimeStamp
  • created_on - DateTime
  • modified_on - DateTime

Task Time Details (Table Name: time_details)

  • id - Integer (Auto Increment)
  • user_id - Integer (refers to users -> id)
  • task_id - Integer (refers to task -> id)
  • task_date - Date
  • start_time - TimeStamp
  • end_time - TimeStamp
  • created_on - Datetime
  • modified_on - Datetime

Projects Assigning (Table name: project_assignee)

  • id - Integer (Auto Increment)
  • project_id - Integer(refers to project -> id)
  • user_id - Integer (refers to users -> id)
  • created_on - Datetime
  • modified_on - Datetime

Project Details(Table name: project)

  • id - Integer (Auto Increment)
  • name - Varchar
  • meta_data - Varchar
  • color_code - Varchar
  • image_name - Varchar
  • created_on - Datetime
  • modified_on - Datetime

Project Module (Table name: project_module)

  • id - Integer (Auto Increment)
  • project_id - Integer(refers to project -> id)
  • name - Varchar
  • meta_data - Varchar
  • created_on - DateTime
  • modified_on - DateTime

Task Details (Table name: task)

  • id - Integer (Auto Increment)
  • task_name - Varchar
  • description - Varchar
  • complete_task - Enum('1', '0')
  • project_id - Integer(refers to project -> id)
  • module_id - Integer(rfers to project_module -> id)
  • created_on - DateTime
  • modified_on - DateTime

Task Assigning (Table name: task_assignee)

  • id - Integer (Auto Increment)
  • task_id - Integer(refers to task -> id)
  • user_id - Integer(refers to users -> id)
  • created_on - DateTime
  • modified_on - DateTime

User Details (Table name: users)

  • id - Integer (Auto Increment)
  • name - Varchar
  • email - Varchar
  • password - Varchar
  • reset_token - Varchar
  • phone - Integer
  • type - Enum('user', 'admin')
  • created_on - Datetime
  • modified_on - Datetime
  • profile - Varchar

8. Dataflow diagram

Admin dataflow

9. Sequence diagram

Admin dataflow

Clone this wiki locally