# Testni zadatak
Napraviti backend/API za aplikaciju.
Aplikacija se sastoji iz 3 modela i 15(+2 bonus) endpointa.
Koristiti .NET CORE 2.2.
Za čuvanje podataka koristit MSSQL.
## Modeli
#### Korisnik/User
* Id
* Ime
* Prezime
* Email (bonus)
* Telefon
* Datum rodjenja
* Grad
* Drzava
* Trenutno stanje racuna(bonus)
#### Artikal/Article
* Id
* Naziv Artikla
* Vlasnik
* Cijena
* Kategorija
* Kratki opis
* Puni opis
* Datum objave(bonus)
#### Kategorija/Category
* Id
* Naziv
## Endpointi
### Users
POST /users/
GET /users/
GET /users/{id}
DELETE /users/{id}
PATCH /users/{id}
### Articles
POST /articles/
GET /articles/
GET /articles/{id}
DELETE /articles/{id}
PATCH /articles/{id}
(BONUS) POST /articles/{id}
### Categories
POST /categories/
GET /categories/
GET /categories/{id}
DELETE /categories/{id}
PATCH /categories/{id}
(BONUS) GET /categories/{id}/articles
## Bonus
Dodatni bonus je korištenje async/await.
Dodatni bonus je korištenje GIT-a.
### Modeli
Polje email u kreaciji korisnika treba biti unikatno, odnosno jedan korisnik jedan email.
Postaviti polje datum objave da na vrijeme kreiranja artikla.
Polje trenutno stanje računa treba da se mijenja prilikom kupovine/prodaje artikala.Svaki korisnik u početku treba da ima 1000 jedinica za trgovanje(novca).
### Endpoints
(Bonus)
Koristiti Status kodove:
1. 200 - za uspijesno izvrsenu operaciju GET
2. 201 - za uspijesno izvrsenu operaciju POST
3. 204 - za uspjesno izvrsenu operaciju koja ne treba da vrati vrijednost
4. 400 - za neizvrsenu opraciju(Greska)
5. 404 - u slucaju da ne postoji odredjeni rezultat
#### Articles
Bonus endpoint treba da promjeni vlasnika artikla nakon što je kupljen , takodje da oduzme vrijednost cijene artikla kupca i proslije vrijednost prodavcu.
#### Categories
Bonus endpoint u kategorijama treba da prikaze artikle jedne kategorije.
## Napomena
Sav napisan kod trebate biti u mogucnosti da objasnite.