source: source/freeparkingspace/src/main/java/com/proekt/Controller/Reservation.java

Last change on this file was 31d67c0, checked in by zlatko2810 <zlatko.stojanovski@…>, 22 months ago

proekt

  • Property mode set to 100644
File size: 3.7 KB
Line 
1package com.proekt.Controller;
2
3import com.proekt.Repository.*;
4import com.proekt.model.Avtomobil;
5import com.proekt.model.Korisnik.Korisnik;
6import com.proekt.model.Korisnik.KorisnikKey;
7import com.proekt.model.Plakjanje;
8import com.proekt.model.Rezervacija;
9import org.apache.tomcat.jni.Local;
10import org.springframework.stereotype.Controller;
11import org.springframework.ui.Model;
12import org.springframework.web.bind.annotation.GetMapping;
13import org.springframework.web.bind.annotation.PostMapping;
14import org.springframework.web.bind.annotation.RequestMapping;
15import org.springframework.web.bind.annotation.RequestParam;
16
17import java.time.LocalDateTime;
18import java.util.List;
19
20@Controller
21@RequestMapping("/reservation")
22public class Reservation {
23
24 private final RezervacijaRepository rezervacijaRepository;
25 private final KorisnikRepository korisnikRepository;
26 private final PlakjanjeRepository plakjanjeRepository;
27 private final NajavaRepository najavaRepository;
28 private final ParkingMestoRepository parkingMestoRepository;
29 private final AvtomobilRepository avtomobilRepository;
30
31 public Reservation(RezervacijaRepository rezervacijaRepository, KorisnikRepository korisnikRepository, PlakjanjeRepository plakjanjeRepository, NajavaRepository najavaRepository, ParkingMestoRepository parkingMestoRepository, AvtomobilRepository avtomobilRepository) {
32 this.rezervacijaRepository = rezervacijaRepository;
33 this.korisnikRepository = korisnikRepository;
34 this.plakjanjeRepository = plakjanjeRepository;
35 this.najavaRepository = najavaRepository;
36 this.parkingMestoRepository = parkingMestoRepository;
37 this.avtomobilRepository = avtomobilRepository;
38 }
39
40 @RequestMapping("/parking-place")
41 public String getRegisterPage(@RequestParam(value = "broj_na_pmesta", required = false) Integer broj_na_pmesta, Model model) {
42
43 model.addAttribute("parking", this.parkingMestoRepository.findById(broj_na_pmesta).get());
44 model.addAttribute("bodyContent","reservation");
45 return "master-template";
46 }
47
48 @PostMapping("/parking-place/add")
49 public String register(@RequestParam String reg_tablica,
50 @RequestParam String marka,
51 @RequestParam String boja,
52 @RequestParam String pocetno_vreme,
53 @RequestParam String krajno_vreme,
54 @RequestParam Integer broj_na_pmesta
55
56 ) {
57
58 // LocalDateTime dateTime = LocalDateTime.parse(pocetno_vreme);
59 // LocalDateTime dateTime2 = LocalDateTime.parse(krajno_vreme);
60 KorisnikKey korisnikKey = new KorisnikKey();
61 korisnikKey.setUser(this.najavaRepository.findById("Majkl0810").get());
62 Korisnik korisnik = korisnikRepository.findById(korisnikKey).get();
63
64 Avtomobil avtomobil = new Avtomobil();
65 avtomobil.setRegTablica(reg_tablica);
66 avtomobil.setKorisnickoIme(korisnik);
67 avtomobil.setBoja(boja);
68 avtomobil.setMarka(marka);
69 this.avtomobilRepository.save(avtomobil);
70
71 Rezervacija rezervacija = new Rezervacija();
72
73 List<Rezervacija> rezervacijaList = this.rezervacijaRepository.findAll();
74 int sizeRezervacija = rezervacijaList.size() + 1;
75 rezervacija.setIdRezervacija(sizeRezervacija);
76
77 rezervacija.setRegTablica(avtomobil);
78 //rezervacija.setPocetnoVreme(dateTime);
79 //rezervacija.setKrajnoVreme(dateTime2);
80 rezervacija.setBrojNaPmesta(this.parkingMestoRepository.findById(broj_na_pmesta).get());
81 Plakjanje plakjanje = plakjanjeRepository.findById(113).get();
82 rezervacija.setIdPlakanje(plakjanje);
83 this.rezervacijaRepository.save(rezervacija);
84 return "redirect:/success";
85 }
86
87
88
89
90}
Note: See TracBrowser for help on using the repository browser.