Add clanker code

This commit is contained in:
2026-02-17 15:33:05 +01:00
parent ced3cbfe6e
commit 9874f78329
24 changed files with 1884 additions and 31 deletions

131
NOTES.md Normal file
View File

@@ -0,0 +1,131 @@
# Pozn<7A>mky k projektu - Evidence Autobazaru
## Spln<6C>n<EFBFBD> zad<61>n<EFBFBD>
### ? Z<>kladn<64> po<70>adavky
- [x] WPF aplikace
- [x] Evidence autobazaru
- [x] Serializace a deserializace (JSON)
- [x] CRUD operace (Create, Read, Update, Delete)
- [x] <20>ist<73> a organizovan<61> k<>d
- [x] Separation of Concerns (SoC)
### ? Model Auto (Vehicle)
- [x] Zna<6E>ka
- [x] Model
- [x] SPZ
- [x] Rok v<>roby
- [x] Palivo (Benz<6E>n, Nafta, Elektro, Hybrid, LPG, CNG)
- [x] N<>jezd v km
- [x] Barva (s color pickerem)
- [x] Fotografie (Base64)
- [x] Cena
### ? Model Vlastn<74>k (Owner)
- [x] Jm<4A>no
- [x] P<><50>jmen<65>
- [x] Adresa
- [x] Telefon
- [x] Email
- [x] Propojen<65> s autem
### ? GUI Features
- [x] Hlavn<76> okno se seznamem vozidel
- [x] Zobrazen<65> z<>kladn<64>ch <20>daj<61> (SPZ, zna<6E>ka+model, barva, rok, palivo)
- [x] Detail vozidla po kliknut<75> (double-click nebo tla<6C><61>tko)
- [x] Okno pro p<>id<69>n<EFBFBD> vozidla
- [x] Okno pro <20>pravu vozidla
- [x] Okno s detaily vozidla
- [x] V<>b<EFBFBD>r barvy pomoc<6F> Color Dialogu
- [x] V<>b<EFBFBD>r fotografie
## Technick<63> implementace
### Serializace
- Pou<6F>it **System.Text.Json** pro JSON serializaci
- Data ulo<6C>ena v souboru `vehicles.json`
- Automatick<63> na<6E>ten<65> p<>i startu aplikace
- Automatick<63> ukl<6B>d<EFBFBD>n<EFBFBD> po ka<6B>d<EFBFBD> zm<7A>n<EFBFBD>
### Validace
- <20><>seln<6C> vstupy (rok, km, cena) - validace pomoc<6F> `PreviewTextInput`
- SPZ - automatick<63> p<>evod na velk<6C> p<>smena
- Obr<62>zky - o<>et<65>en<65> chyb p<>i na<6E><61>t<EFBFBD>n<EFBFBD>/ukl<6B>d<EFBFBD>n<EFBFBD>
### Separation of Concerns
```
??? Models
? ??? Vehicle.cs # Datov<6F> model vozidla
? ??? Owner.cs # Datov<6F> model vlastn<74>ka
??? Data
? ??? DataManager.cs # Spr<70>va dat, serializace
??? Views
??? MainWindow.xaml/.cs # Hlavn<76> okno
??? AddVehicleWindow.xaml/.cs # P<>id<69>n<EFBFBD> vozidla
??? EditVehicleWindow.xaml/.cs # <20>prava vozidla
??? VehicleDetailWindow.xaml/.cs # Detail vozidla
```
## Pou<6F>it<69> technologie
- .NET 8.0
- WPF (Windows Presentation Foundation)
- System.Text.Json (JSON serializace)
- Windows Forms ColorDialog (v<>b<EFBFBD>r barvy)
- XAML pro UI design
## Budouc<75> vylep<65>en<65> (pro roz<6F><7A><EFBFBD>en<65>)
- [ ] Filtrov<6F>n<EFBFBD> a vyhled<65>v<EFBFBD>n<EFBFBD> vozidel
- [ ] <20>azen<65> podle r<>zn<7A>ch sloupc<70>
- [ ] Export do PDF/Excel
- [ ] V<>ce obr<62>zk<7A> na vozidlo
- [ ] Historie zm<7A>n vozidla
- [ ] Statistiky (pr<70>m<EFBFBD>rn<72> cena, nejstar<61><72>/nejnov<6F>j<EFBFBD><6A> vozidlo, atd.)
- [ ] Validace emailu a telefonn<6E>ho <20><>sla
- [ ] Podpora pro v<>ce autobazar<61>
- [ ] Cloudov<6F> synchronizace dat
## Zn<5A>m<EFBFBD> limitace
- Fotografie je ulo<6C>ena jako Base64 p<><70>mo v JSON (m<><6D>e zp<7A>sobit velk<6C> soubory)
- Validace vstup<75> je pouze na UI <20>rovni
- <20><>dn<64> autentizace/autorizace
-?u<>ivatelsk<73> aplikace (bez datab<61>ze)
## Testov<6F>n<EFBFBD>
Pro testov<6F>n<EFBFBD> aplikace pou<6F>ijte uk<75>zkov<6F> soubor `vehicles.example.json`:
1. P<>ejmenujte `vehicles.example.json` na `vehicles.json`
2. Spus<75>te aplikaci
3. Data se automaticky na<6E>tou
## Klasifika<6B>n<EFBFBD> krit<69>ria
### GUI (User Interface)
- ? P<>ehledn<64> a intuitivn<76> rozhran<61>
- ? Responsivn<76> design
- ? Spr<70>vn<76> pou<6F>it<69> WPF kontrol
- ? Color picker pro v<>b<EFBFBD>r barvy
- ? N<>hled fotografi<66>
### <20>istota k<>du
- ? Jasn<73> pojmenov<6F>n<EFBFBD>
- ? Odd<64>len<65> t<><74>dy pro r<>zn<7A> <20><>ely
- ? Try-catch bloky pro o<>et<65>en<65> chyb
- ? Koment<6E><74>e kde je to vhodn<64>
- ? Konzistentn<74> styl k<>du
### Funk<6E>nost
- ? V<>echny CRUD operace funguj<75>
- ? Serializace a deserializace funguje
- ? Validace vstup<75>
- ? O<>et<65>en<65> chyb
- ? Aplikace nepad<61>
### Separation of Concerns
- ? Model (Vehicle, Owner)
- ? Data Logic (DataManager)
- ? View (XAML)
- ? View Logic (Code-behind)
## Autorstv<74>
- **Autor**: Petr (23ib22_petr)
- **P<>edm<64>t**: PTA25 - Programov<6F>n<EFBFBD> v C#
- **Term<72>n odevzd<7A>n<EFBFBD>**: 1. 3. 2026