Team-Safety-Toolbox / Safety-Toolbox

Capstone project to create a centralized safety application.
GNU General Public License v3.0
0 stars 1 forks source link

Safety Toolbox Banner Project Day Poster (36 x 24 in)

Members

Colorful Team Introduction Instagram Post

Project Idea

Our project is an open-source safety system tracking app. It will keep track of employee training and certifications, items for Toolbox Talks such as prompts, attendance sheets, and notes, and it will act as a central library of requirements and documents that can be revised and updated as needed.

Project Background/Business Opportunity

Our customer is Ralph McKay Industries Inc. They are in need of a tool that can keep track of their training requirements. Their current process is to keep track using a combination of spreadsheets and written documents. They have looked at using other HR tools before, but they haven’t found one that would suit their needs. Their main concerns are the fact that OH+S requirements are different province by province, so they can’t just use any tool, and they want their data to remain in-house instead of on some company’s server. Our solution would solve these problems for them.

Video Links

Vlog 1 - Link here!

Vlog 2 - Link here!

Vlog 3 - Link here!

Demo Video - Link here!

Commercial - Link here!

Project Board

Can be found under the Projects tab!

Mentor

Craig Gelowitz Ph.D., P.Eng.

Additional Credits

Icons used in the project come from Austin Andrews, License: CC0-1.0 https://github.com/Templarian/WindowsIcons

INSTALL INSTRUCTIONS

Prerequisites

Option 1: Use the prebuilt version provided

  1. Download the zipped Release folder and unzip it to the desired location
  2. The executable file (Safety Toolbox.exe) inside this folder requires the dependancies that are also inside this folder, so leave everything in the folder together. You can create a shortcut to the application on your desktop, or pin it to your taskbar for easy access.
  3. Skip down to the Database Setup section below to set up your database.

Option 2: Build it yourself

  1. In the folder Safety-Toolbox\App\Safety Toolbox, run the following command:

    dotnet publish -f net7.0-windows10.0.19041.0 -c Release -p:RuntimeIdentifierOverride=win10-x64 -p:WindowsPackageType=None -p:WindowsAppSDKSelfContained=true --self-contained

  2. Once the command has finished running, the path that the build will end up in is here: Safety-Toolbox\App\Safety Toolbox\Safety Toolbox\bin\Release\net7.0-windows10.0.19041.0\win10-x64

  3. The executable file (Safety Toolbox.exe) inside this folder requires the dependancies that are also inside this folder.

  4. Proceed to the Database Setup section below to set up your database.

Database Setup

  1. In SQL Server, run the setup code provided here. This will set up the tables needed for the app to operate.
  2. Optionally, you can also run this demo setup file if you would like some demo values

    Running the app for the first time

  3. The first time you launch the app it won't be connected to your database. Login with the username admin and the password Adm1nU$er. (This account can only be used to change the settings, it cannot access anything else.)
  4. Once logged in, go to the settings page and fill in the fields required, such as the database string and the folder paths.
  5. Toggle the Signup page switch to 'on'. You're going to need to make a proper account for yourself.
  6. Click the save button at the bottom of the page.
  7. Restart the app, and this time click the Signup button and choose your desired username and password.
    • if you get a popup with a connection error for the database, your connection string in step 2 is likely incorrect.
  8. You can now log in to the app with your new account. This account is a read-only account, meaning you will be unable to edit anything but you will be able to view most pages now.
    • To change your account to an editor-level account, you must do so in the backend with SQL statements
    • In the Users table, you need to change the RoleID to 1 (IT Role) or 2 (Managemant Role) depending on your needs.
      • The IT account is able to access the Settings page at any time and has editing access throughout the app.
      • The Management account also has editing access throughout the app, but cannot access the settings page.
    • All future accounts that need edit access must be handled in the backend like this
  9. You're all set up! Head over to our Demo Video or Our User Guide to learn more about how to use this app!