- Timestamp:
- 02/08/23 14:41:27 (22 months ago)
- Branches:
- master
- Children:
- 2c7a732
- Parents:
- 39a45e6 (diff), 90317ea (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - Location:
- src/main
- Files:
-
- 1 added
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
src/main/java/com/example/moviezone/repository/EventRepository.java
r39a45e6 r632e3d8 2 2 3 3 import com.example.moviezone.model.Event; 4 import com.example.moviezone.model.Film; 4 5 import org.springframework.data.jpa.repository.JpaRepository; 6 import org.springframework.data.jpa.repository.query.Procedure; 7 8 import java.util.List; 5 9 6 10 public interface EventRepository extends JpaRepository<Event,Integer> { 11 @Procedure("project.getEventsFromCinema") 12 List<Event> getFilmsFromCinema(int id); 13 @Procedure("project.getEventsFromNow") 14 List<Event> getFilmsFromCinemaNow(); 15 7 16 } -
src/main/java/com/example/moviezone/repository/FilmRepository.java
r39a45e6 r632e3d8 17 17 @Procedure("project.getFilmsFromCinema1") 18 18 List<Film> getFilmsFromCinema(int id); 19 19 @Procedure("project.getFilmsFromCinemaNow") 20 List<Film> getFilmsFromCinemaNow(int id); 21 @Procedure("project.getFilmsNow") 22 List<Film> getFilmsNow(); 20 23 } -
src/main/java/com/example/moviezone/service/EventService.java
r39a45e6 r632e3d8 5 5 import java.time.LocalDate; 6 6 import java.util.List; 7 import java.util.Optional; 7 8 8 9 public interface EventService { 9 10 List<Event> findAllEvents(); 10 11 Event save(LocalDate start_date,String theme,String duration,String repeating,String url); 12 List<Event> getEventsNow(); 13 List<Event> getEventsFromCinema(int id); 14 Optional<Event> getEventById(Long id); 11 15 } -
src/main/java/com/example/moviezone/service/FilmService.java
r39a45e6 r632e3d8 14 14 Optional<Film> getFilmById(Long id); 15 15 List<Film> getFilmsFromCinema(int id); 16 List<Film> getFilmsFromCinemaNow(int id); 17 List<Film> getFilmsNow(); 16 18 } -
src/main/java/com/example/moviezone/service/Impl/EventServiceImpl.java
r39a45e6 r632e3d8 7 7 8 8 import java.time.LocalDate; 9 import java.util.Collections; 9 10 import java.util.List; 11 import java.util.Optional; 10 12 11 13 @Service … … 26 28 return eventRepository.save(new Event(theme,duration,repeating,start_date,img_url)); 27 29 } 30 31 @Override 32 public List<Event> getEventsNow() { 33 return eventRepository.getFilmsFromCinemaNow(); 34 } 35 36 @Override 37 public List<Event> getEventsFromCinema(int id) { 38 return eventRepository.getFilmsFromCinema(id); 39 } 40 41 @Override 42 public Optional<Event> getEventById(Long id) { 43 return eventRepository.findAllById(Collections.singleton(id.intValue())).stream().findFirst(); 44 } 28 45 } -
src/main/java/com/example/moviezone/service/Impl/FilmServiceImpl.java
r39a45e6 r632e3d8 40 40 } 41 41 42 @Override 43 public List<Film> getFilmsFromCinemaNow(int id) { 44 return filmRepository.getFilmsFromCinemaNow(id); 45 } 46 47 @Override 48 public List<Film> getFilmsNow() { 49 return filmRepository.getFilmsNow(); 50 } 51 42 52 } -
src/main/java/com/example/moviezone/web/HomeController.java
r39a45e6 r632e3d8 16 16 import org.springframework.web.bind.annotation.*; 17 17 18 import javax.naming.event.EventDirContext; 18 19 import javax.servlet.http.HttpSession; 19 20 import javax.transaction.Transactional; … … 79 80 return "master-template"; 80 81 } 81 82 @GetMapping("/getEvent/{id}") 83 public String getEvent(@PathVariable Long id, Model model) { 84 Event event =eventService.getEventById(id).get(); 85 model.addAttribute("event", event); 86 model.addAttribute("bodyContent", "event"); 87 88 return "master-template"; 89 } 82 90 @GetMapping("/login") 83 91 public String getLoginPage(Model model) … … 149 157 return "master-template"; 150 158 } 151 159 @Transactional 152 160 @GetMapping("/projections") 153 public String getProjectionsPage(Model model) 154 { 155 model.addAttribute("projections",projectionService.findAllProjections()); 156 model.addAttribute("bodyContent","projections"); 161 public String getProjectionsPage(Model model,@RequestParam(required = false) Integer id_cinema) 162 { 163 model.addAttribute("cinemas",cinemaService.findAllCinemas()); 164 if (id_cinema!=null) { 165 model.addAttribute("films",filmService.getFilmsFromCinemaNow(id_cinema)); 166 }else{ 167 List<FilmsReturnTable> pom=new LinkedList<>(); 168 model.addAttribute("films",filmService.getFilmsNow()); 169 } 170 model.addAttribute("bodyContent","films"); 157 171 return "master-template"; 158 172 } 159 173 @GetMapping("/events") 160 public String getEventsPage(Model model) 161 { 162 model.addAttribute("events",eventService.findAllEvents()); 174 @Transactional 175 public String getEventsPage(Model model,@RequestParam(required = false) Integer id_cinema) 176 { 177 model.addAttribute("cinemas",cinemaService.findAllCinemas()); 178 if (id_cinema!=null) { 179 model.addAttribute("events",eventService.getEventsFromCinema(id_cinema)); 180 }else{ 181 List<FilmsReturnTable> pom=new LinkedList<>(); 182 model.addAttribute("events",eventService.getEventsNow()); 183 } 163 184 model.addAttribute("bodyContent","events"); 164 185 return "master-template"; -
src/main/resources/templates/events.html
r39a45e6 r632e3d8 194 194 border-radius: 20px; 195 195 } 196 .form-group{ 197 width: 200px; 198 } 196 199 </style> 200 <div> 201 <form th:action="@{'/home/events'}" 202 th:method="GET"> 203 204 <div class="form-group"> 205 <label style="color: white;font-size: 20px;font-weight: bold">Кино</label> 206 <select name="id_cinema" class="form-control" id="id_cinema"> 207 <option 208 th:selected="${cinemas.get(1)}" 209 th:each="cinema : ${cinemas}" 210 th:value="${cinema.getId_cinema()}" 211 th:text="${cinema.getName()}"> 212 </option> 213 </select> 214 215 </div> 216 <button class="button" type="submit">Filter</button> 217 </form> 218 197 219 <div xmlns:th="http://www.thymeleaf.org"> 220 <h1 style="color: white">Настани</h1> 198 221 <div class="main"> 199 222 <div th:each="event : ${events}" class="container"> … … 208 231 <span th:text="${event.getDuration()}"></span> 209 232 </div> 210 <form th:action="@{'/home/get Film/{id}' (id=${event.getId_event()})}"233 <form th:action="@{'/home/getEvent/{id}' (id=${event.getId_event()})}" 211 234 th:method="GET"> 212 235 <button class="button" type="submit">Датали</button> … … 218 241 </div> 219 242 </div> 243 </div> -
src/main/resources/templates/films.html
r39a45e6 r632e3d8 219 219 220 220 <div xmlns:th="http://www.thymeleaf.org"> 221 <div class="main" >221 <div class="main" style="width: available;height: available"> 222 222 <div th:if="${films.isEmpty()} == false" 223 223 th:each="film : ${films}" class="container"> -
src/main/resources/templates/projections.html
r39a45e6 r632e3d8 198 198 <div class="main"> 199 199 200 <!--<div th:each="projection: ${projections}">--> 201 202 <div th:each="projection: ${projections}" class="container"> 200 201 <div th:each="film: ${films}" class="container"> 203 202 <div class="card"> 204 203 <div class="imgBx"> 205 <img th:src="@{${ projection.film.getUrl()}}"/>204 <img th:src="@{${film.getUrl()}}"/> 206 205 </div> 207 206 <div class="contentBx"> 208 <h2 th:text="${ projection.film.getName()}"></h2>207 <h2 th:text="${film.getName()}"></h2> 209 208 <div class="size"> 210 209 <h3>Duration :</h3> 211 <span th:text="${ projection.film.getDuration()}"></span>210 <span th:text="${film.getDuration()}"></span> 212 211 </div> 213 212 <div class="color"> 214 213 <h3>Genre:</h3> 215 <span th:text="${ projection.film.getGenre()}"></span>214 <span th:text="${film.getGenre()}"></span> 216 215 </div> 217 216 </div> -
src/main/resources/templates/workers.html
r39a45e6 r632e3d8 1 1 <div xmlns:th="http://www.thymeleaf.org"> 2 <section class="jumbotron text-center"> 3 <div class="container"> 4 <h1 class="jumbotron-heading">Вработени</h1> 5 </div> 6 </section> 7 2 <h1 style="color: white">Вработени</h1> 8 3 <div class="container mb-4"> 9 4 <div class="row">
Note:
See TracChangeset
for help on using the changeset viewer.