This website was written using C# .Net Core. The website demonstrates a simple Hair Salon admin portal. The employee can manage stylists and clients and can manipulate, add and delete each as necessary. This version builds on the previous version by adding many to many relationships and adding a 'specialty' model for stylists. All records are saved on a database using MySQL allowing for simple access.
Behavior | Input | Output | Why |
---|---|---|---|
Make basic splash page with buttons allowing the user to click to navigate | No input | No output | Very simple basic view created with a Home controller to setup a default landing page. Simple to implement |
User clicks 'View Stylists' button and a new page is displayed with all of the salon's current stylists listed | None | Page displaying stylists | Simple page that retrieves the stylists from the database |
User clicks 'View Clients' button and a new page is displayed with all of the salon's current clients listed | None | Page displaying clients | Simple page that retrieves the clients from the database |
User clicks 'View Specialties' button and a new page is displayed with all of the salon's current specialties listed | None | Page displaying specialties | Simple page that retrieves the specialties from the database |
User clicks 'Add Stylist' button and a new page is displayed with a form to add a new stylist | Name Experience | Adds the entry to the database and displays the page of all stylists | Simple input gathering page for adding stylists |
User clicks 'Add Client' button and a new page is displayed with a form to add a new client | Name Stylist | Adds the entry to the database and displays the page of all clients | Simple input gathering page for adding clients |
User clicks 'Add Specialty' button and a new page is displayed with a form to add a new specialty | Name | Adds the entry to the database and displays the page of all specialties | Simple input gathering page for adding clients |
Add form validation | No input received in required field | Must fill out this field | Moderately difficult to implement |
Add functionality to update a stylist record | Edit name and/or experience, add clients and/or specialties | Updates shown in new page | Moderately difficult to implement |
Add functionality to update a client record | Edit name and/or stylists optionally add additional stylists | Updates shown in new page | Moderately difficult to implement |
Add functionality to delete a client record | Click Delete | Database updated | Moderately difficult to implement |
Add functionality to delete a stylist record | Click Delete | Database updated | Moderately difficult to implement |
Add functionality to delete a specialty record | Click Delete | Database updated | Moderately difficult to implement |
Add functionality to delete all client records | Click Delete All Clients | Database updated | Moderately difficult to implement |
Add functionality to delete all stylist records | Click Delete All Stylists | Database updated | Moderately difficult to implement |
Add functionality to delete all specialty records | Click Delete All Specialties | Database updated | Moderately difficult to implement |
Add Details page for clients that shows various information and current stylists they are assigned to | None | Details page | Difficult to implement |
Add Details page for stylists that shows various information and current clients they are serving and current specialties | None | Details page | Difficult to implement |
Add Details page for stylists that shows various information and current stylists they are attributed to | None | Details page | Difficult to implement |
- Download and install .Net Core 1.1.4 (Linked below)
- Download and install Mono (Linked below)
- Clone the repo
- Run
dotnet restore
from within the project directory using PowerShell / Terminal
- From the command line, enter the following commands:
> mysql -uroot -proot
> CREATE DATABASE thad_donaghue;
> USE thad_donaghue;
> CREATE TABLE stylists (id serial PRIMARY KEY, name VARCHAR(255), experience INT, client_id INT);
> CREATE TABLE clients (id serial PRIMARY KEY, name VARCHAR(255), stylist_id INT);
- From the cloned repository folder on your machine, locate the
.sql
file that is contained in the root folder - Import the
.sql
file via your web server
- Navigate to the cloned repository on your hard drive
- Navigate to the Model or Controller you wish to test
- Run
dotnet test
from within the directory
- Navigate to the cloned repository on your hard drive
- Open the solution file in Visual Studio
- In the menu bar navigate to 'Test' => 'Run' => 'All Tests'
- Results will display in the test explorer
- Clone the repo
- Make a new branch
- Commit and push your changes
- Create a PR
- .Net Core 1.1.4
- MSTest
- CSS
- HTML
- Bootstrap 4.1.1
- MySQL
- MVC
- Razor
- https://github.com/protatodev/WordCounter
- https://github.com/dotnet/core/blob/master/release-notes/download-archives/1.1.4-download.md
- https://www.mono-project.com/
This software is licensed under the MIT license.
Copyright (c) 2018 Protatodev