ncc-erp / ncc-erp-timesheet

Tool ERP-Timesheet
MIT License
4 stars 8 forks source link

TimeSheet

Overview

TimeSheet is an open-source application that a versatile application utilized by both companies and employees for efficient time management, encompassing various functionalities such as work hours tracking and request submissions for time off. It seamlessly integrates with other internal applications, acting as a hub that connects tools like the check-in/out app and the komu app. This integration facilitates the seamless dissemination of notifications to employees within the company. Additionally, it collaborates with trackers to accurately monitor and record employees' working hours, ensuring comprehensive timekeeping

Table of Contents

Getting Started

Prerequisites

Before you begin, ensure you have met the following requirements:

Clone project

  1. Create a folder to store the backend and frontend code.

    • example: folder timesheet
  2. Open a command prompt in the created folder.

  3. Clone the backend repository using the following command:

    git clone https://github.com/ncc-erp/ncc-erp-timesheet.git

Backend Setup

  1. Open the backend solution using Visual Studio 2022:
{
  "ConnectionStrings": {
    "Default": "Server=servername; Database=local-timesheet; User ID=yourUserId;Password=yourPassword;"
  },
  // ... other settings ...
}
  1. Generate your own local database :
    • Press F5 or select Debug > Start Debugging to run the backend.
    • Press Ctrl + f5 or select Debug > Start without Debugging to run the backend without debug Default port backend: http://localhost:21023/

Frontend Setup

  1. Open Front-end repository

    • Select timesheet folder > ncc-erp-timesheet > angular
    • open code
      code .
  2. Install Angular CLI 7.1.3 globally:


npm install -g @angular/cli@7.1.3
  1. Install frontend dependencies:
    npm install
  2. Run front-end
    npm start

    Building

    To build the project, follow these steps:

1.Build the backend using Visual Studio Code or the command line.

2.Build the frontend:

npm run build

Running

To run the project, use these commands:

  1. Start the backend using Visual Studio Code or the command line.

  2. Start the frontend:

npm start

Screenshot Tutorial

Check out our screenshot tutorial on how to use TimeSheet:

navbar navbar

Admin page

Admin page has full features of basic user should have.

  1. My profile : Show user profile information.**

  2. Admin : This page contains various features intended for administrators. admin

  3. Project : Manage projects within the internal of company

  4. My timsheets:Add new daily timesheets and submit time worked for a week or a month.

  5. My request off/remote/onsite: Manage and view the status of my submitted requests, including pending, approved, or rejected requests.

  6. My working time :View and register working hours, with the ability to send the registration to a project manager for confirmation.

  7. Manage timesheets : Oversee and manage timesheet records.

  8. Manage request off/remote/onsite :Manage and monitor employee requests, displaying statuses such as pending, approved, or rejected.

  9. Manage working times : Manage and monitor records submitted to project managers, with a default view of pending records.

  10. Team Working calender : Export team working calendar information to an Excel file.

  11. Timesheets Monitoring: Provide an overview of the company's timesheets.

  12. Retro: Provides a platform for reflection and evaluation based on the recent working period.(a month,1 quater of year,...)

  13. Review intern: View and create reports for intern performance review.

  14. Report: ReportFeatures Generate and manage various reports, including features shown in the provided image.

  15. Team building: Organize and manage team-building activities. team-building

    Basic user page

    basic user

  16. My profile : Show user profile information

  17. My timsheets:Add new daily timesheets and submit time worked for a week or a month.

  18. My request off/remote/onsite: Manage and view the status of my submitted requests, including pending,

  19. My working time :View and register working hours, with the ability to send the registration to a project manager for confirmation.

  20. Team Working calender : view team working calender.