Q-Nomy home assigment
עליך ליצור עמוד אינטרנט שבו כל משתמש יכול להכניס לתור, לקרוא לממתין ולצפות ברשימת הממתינים. העמוד צריך להיראות באופן הבא:
כל הרשומות ישמרו בDB לפי סטטוס הפניה הנוכחי שלהם: סטטוס ממתין: 0 סטטוס בשירות: 1 סטטוס הושלם טיפול: 2
- הקריאה להבא בתור תהיה בתצורת FIFO.
- לא תתאפשר הכנסה אנונימית לתור.
- מבנה הטבלאות והנתונים נתון לשיקול דעתך. 3 הגישה לבסיס הנתונים תיעשה דרך web service/Web API.
Everything used with default settings without additional installation. Just simple Next, Next, Next should be fine
- For some strange reason I personally run into this issue: Failed to start 'npm': Ensure that 'npm' is installed and can be found in one of the PATH directories and most of the solutions failed to resolve Stackoverflow. So I devided this project to 2: Client (Angular) and Server (.NET Core only WebAPI)
- Clone this git repostiory:
git clone https://github.com/jasper22/Q-Nomy.git
- Enter into \Q-Nomy folder
- Run
docker-compose build
It should success building without eny errors, pull images, compile, etc.. - Run
docker-compose up
It should start all containers, update database, etc... - Open http://localhost:85
- Enjoy 😋
- Clone this git repostiory:
git clone https://github.com/jasper22/Q-Nomy.git
- Enter into \Q-Nomy folder
- Run
docker build . --file one-container.Dockerfile --tag one-container:1.0
to build image with version 1.0 - Run
docker run --rm -it -p 6001:6001 -p 8081:80/tcp one-container:1.0
to run container- WebAPI project will listen on port 6001
- Angular (frontend) project will listen on port 80
- Open your browser at: http://www.localhost:8081/
- Enjoy 😋
- Clone this git repostiory:
git clone https://github.com/jasper22/Q-Nomy.git
- Enter into Q-Nomy\src\client and install all Angular packages:
npm install
- Restore all dotnet core packages by running:
dotnet restore QNomy.sln
in root folder of git repository - Review SQL connection string at:
Q-Nomy\src\server\appsettings.json
. Currently it points to default location of default installation of SQL Server Express. Make changes if you need - If you don't have Microsoft Entity Core 3.1 Tools installed you can install it in Powershell by running command:
Install-Package Microsoft.EntityFrameworkCore.Tools
from Administrative prompt- In Visual Studio 2019 it's already pre-installed and you could run those command from 'Package Manager' window
- More information is here: Entity Framework Core tools reference - Package Manager Console in Visual Studio
- Update/Install database by running:
Update-Database
- Once all this completes sucsesfully you are ready to run this client/server application
Check this tutorial: kuberentes/minikube install and configuration
- Enter into
Q-Nomy\src\server
folder and run the server by command:dotnet run
. Server should start and listening on http://localhost on port 6287 - Enter into
Q-Nomy\src\client
folder and start the client app by runningnpm start
. Once client is started navigate your browser to: http://localhost:6286/
- Application should be translated to Hebrew as in original Q-Nomy request
- More tests should be added to
QNomy.Test
project - Resolve strange issue when Angular and WebAPI could not be started both from VS 2019
- ✔️
Dockerize both project + SQL server