Index: src/main/java/com/example/moviezone/model/Seat.java
===================================================================
--- src/main/java/com/example/moviezone/model/Seat.java	(revision 93341f8a2c40e639fb074ff87779c127f420acda)
+++ src/main/java/com/example/moviezone/model/Seat.java	(revision 89438a3e15a293270ff211b0af79b71cdc49a678)
@@ -19,5 +19,5 @@
     @ManyToOne
     @JoinColumn(name = "id_room")
-    Projection_Room projection_room;
+    Projection_Room projection;
     @ManyToOne
     @JoinColumn(name = "id_category")
Index: src/main/java/com/example/moviezone/model/procedures/FilmsReturnTable.java
===================================================================
--- src/main/java/com/example/moviezone/model/procedures/FilmsReturnTable.java	(revision 93341f8a2c40e639fb074ff87779c127f420acda)
+++ src/main/java/com/example/moviezone/model/procedures/FilmsReturnTable.java	(revision 89438a3e15a293270ff211b0af79b71cdc49a678)
@@ -18,3 +18,15 @@
         this.name = name;
     }
+
+    public Integer getId_film() {
+        return id_film;
+    }
+
+    public LocalDate getStart_date() {
+        return start_date;
+    }
+
+    public String getName() {
+        return name;
+    }
 }
Index: src/main/java/com/example/moviezone/repository/FilmRepository.java
===================================================================
--- src/main/java/com/example/moviezone/repository/FilmRepository.java	(revision 93341f8a2c40e639fb074ff87779c127f420acda)
+++ src/main/java/com/example/moviezone/repository/FilmRepository.java	(revision 89438a3e15a293270ff211b0af79b71cdc49a678)
@@ -7,6 +7,7 @@
 import org.springframework.data.repository.query.Param;
 
+import javax.transaction.Transactional;
 import java.util.List;
-
+@Transactional
 public interface FilmRepository extends JpaRepository<Film,Integer> {
     @Procedure("project.getFilmsFromCinema")
Index: src/main/java/com/example/moviezone/repository/ProjectionIsPlayedInRoomRepository.java
===================================================================
--- src/main/java/com/example/moviezone/repository/ProjectionIsPlayedInRoomRepository.java	(revision 93341f8a2c40e639fb074ff87779c127f420acda)
+++ src/main/java/com/example/moviezone/repository/ProjectionIsPlayedInRoomRepository.java	(revision 89438a3e15a293270ff211b0af79b71cdc49a678)
@@ -4,8 +4,11 @@
 import com.example.moviezone.model.manytomany.ProjectionIsPlayedInRoomId;
 import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
 
 import java.util.List;
 
 public interface ProjectionIsPlayedInRoomRepository extends JpaRepository<ProjectionIsPlayedInRoom, ProjectionIsPlayedInRoomId> {
-    List<ProjectionIsPlayedInRoom> findAllById_projection(Integer id_projection);
+    @Query("SELECT pir FROM ProjectionIsPlayedInRoom pir WHERE pir.id_projection = :id_projection")
+    List<ProjectionIsPlayedInRoom> findAllByProjectionId(@Param("id_projection") Integer id_projection);
 }
Index: src/main/java/com/example/moviezone/repository/SeatRepository.java
===================================================================
--- src/main/java/com/example/moviezone/repository/SeatRepository.java	(revision 93341f8a2c40e639fb074ff87779c127f420acda)
+++ src/main/java/com/example/moviezone/repository/SeatRepository.java	(revision 89438a3e15a293270ff211b0af79b71cdc49a678)
@@ -10,4 +10,4 @@
 @Repository
 public interface SeatRepository extends JpaRepository<Seat,Integer> {
-    List<Seat> findAllByProjection_room(Projection_Room projection_room);
+    List<Seat> findAllByProjection(Projection_Room projection);
 }
Index: src/main/java/com/example/moviezone/service/FilmService.java
===================================================================
--- src/main/java/com/example/moviezone/service/FilmService.java	(revision 93341f8a2c40e639fb074ff87779c127f420acda)
+++ src/main/java/com/example/moviezone/service/FilmService.java	(revision 89438a3e15a293270ff211b0af79b71cdc49a678)
@@ -2,4 +2,5 @@
 
 import com.example.moviezone.model.Film;
+import com.example.moviezone.model.procedures.FilmsReturnTable;
 
 import java.time.LocalDate;
@@ -12,3 +13,4 @@
               String age_category, String url, String director, LocalDate start_date,LocalDate end_date);
     Optional<Film> getFilmById(Long id);
+    List<FilmsReturnTable> getFilmsFromCinema(int id);
 }
Index: src/main/java/com/example/moviezone/service/Impl/FilmServiceImpl.java
===================================================================
--- src/main/java/com/example/moviezone/service/Impl/FilmServiceImpl.java	(revision 93341f8a2c40e639fb074ff87779c127f420acda)
+++ src/main/java/com/example/moviezone/service/Impl/FilmServiceImpl.java	(revision 89438a3e15a293270ff211b0af79b71cdc49a678)
@@ -2,4 +2,5 @@
 
 import com.example.moviezone.model.Film;
+import com.example.moviezone.model.procedures.FilmsReturnTable;
 import com.example.moviezone.repository.FilmRepository;
 import com.example.moviezone.service.FilmService;
@@ -34,3 +35,8 @@
     }
 
+    @Override
+    public List<FilmsReturnTable> getFilmsFromCinema(int id) {
+        return filmRepository.getFilmsFromCinema(id);
+    }
+
 }
Index: src/main/java/com/example/moviezone/service/Impl/ProjectionIsPlayedInRoomServiceImpl.java
===================================================================
--- src/main/java/com/example/moviezone/service/Impl/ProjectionIsPlayedInRoomServiceImpl.java	(revision 93341f8a2c40e639fb074ff87779c127f420acda)
+++ src/main/java/com/example/moviezone/service/Impl/ProjectionIsPlayedInRoomServiceImpl.java	(revision 89438a3e15a293270ff211b0af79b71cdc49a678)
@@ -1,7 +1,11 @@
 package com.example.moviezone.service.Impl;
 
+import com.example.moviezone.model.manytomany.ProjectionIsPlayedInRoom;
 import com.example.moviezone.repository.ProjectionIsPlayedInRoomRepository;
 import com.example.moviezone.service.ProjectionIsPlayedInRoomService;
 import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Optional;
 
 @Service
@@ -13,3 +17,7 @@
     }
 
+    @Override
+    public List<ProjectionIsPlayedInRoom> getProjectionPlayedInRoom(Integer id) {
+        return projectionIsPlayedInRoomRepository.findAllByProjectionId(id);
+    }
 }
Index: src/main/java/com/example/moviezone/service/Impl/SeatServiceImpl.java
===================================================================
--- src/main/java/com/example/moviezone/service/Impl/SeatServiceImpl.java	(revision 93341f8a2c40e639fb074ff87779c127f420acda)
+++ src/main/java/com/example/moviezone/service/Impl/SeatServiceImpl.java	(revision 89438a3e15a293270ff211b0af79b71cdc49a678)
@@ -24,5 +24,5 @@
     @Override
     public List<Seat> findAllByProjection_Room(Projection_Room projection_room) {
-        return seatRepository.findAllByProjection_room(projection_room);
+        return seatRepository.findAllByProjection(projection_room);
     }
 }
Index: src/main/java/com/example/moviezone/service/ProjectionIsPlayedInRoomService.java
===================================================================
--- src/main/java/com/example/moviezone/service/ProjectionIsPlayedInRoomService.java	(revision 93341f8a2c40e639fb074ff87779c127f420acda)
+++ src/main/java/com/example/moviezone/service/ProjectionIsPlayedInRoomService.java	(revision 89438a3e15a293270ff211b0af79b71cdc49a678)
@@ -1,6 +1,12 @@
 package com.example.moviezone.service;
 
+import com.example.moviezone.model.Film;
+import com.example.moviezone.model.manytomany.ProjectionIsPlayedInRoom;
+
+import java.util.List;
+import java.util.Optional;
+
 public interface ProjectionIsPlayedInRoomService {
-
+    List<ProjectionIsPlayedInRoom> getProjectionPlayedInRoom(Integer id);
 
 }
Index: src/main/java/com/example/moviezone/web/HomeController.java
===================================================================
--- src/main/java/com/example/moviezone/web/HomeController.java	(revision 93341f8a2c40e639fb074ff87779c127f420acda)
+++ src/main/java/com/example/moviezone/web/HomeController.java	(revision 89438a3e15a293270ff211b0af79b71cdc49a678)
@@ -4,6 +4,10 @@
 import com.example.moviezone.model.*;
 import com.example.moviezone.model.exceptions.PasswordsDoNotMatchException;
+
 import com.example.moviezone.model.manytomany.ProjectionIsPlayedInRoom;
 import com.example.moviezone.repository.ProjectionIsPlayedInRoomRepository;
+
+import com.example.moviezone.model.procedures.FilmsReturnTable;
+
 import com.example.moviezone.service.*;
 import org.springframework.format.annotation.DateTimeFormat;
@@ -14,4 +18,5 @@
 import javax.servlet.http.HttpSession;
 import java.time.LocalDate;
+import java.util.LinkedList;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -31,8 +36,9 @@
 private final CinemaOrganizesEventService cinemaOrganizesEventService;
 private final CinemaPlaysFilmService cinemaPlaysFilmService;
-private final ProjectionIsPlayedInRoomRepository projectionIsPlayedInRoomRepository;
-
-
-    public HomeController(FilmService filmService, UserService userService, ProjectionService projectionService, EventService eventService, TicketService ticketService, WorkerService workerService, CustomerRatesFilmService customerRatesFilmService, CinemaService cinemaService, CinemaOrganizesEventService cinemaOrganizesEventService, CinemaPlaysFilmService cinemaPlaysFilmService, ProjectionIsPlayedInRoomRepository projectionIsPlayedInRoomRepository) {
+private final ProjectionIsPlayedInRoomService projectionIsPlayedInRoomService;
+
+
+    public HomeController(FilmService filmService, UserService userService, ProjectionService projectionService, EventService eventService, TicketService ticketService, WorkerService workerService, CustomerRatesFilmService customerRatesFilmService, CinemaService cinemaService, CinemaOrganizesEventService cinemaOrganizesEventService, CinemaPlaysFilmService cinemaPlaysFilmService, ProjectionIsPlayedInRoomRepository projectionIsPlayedInRoomRepository)
+    {
 
         this.filmService = filmService;
@@ -46,5 +52,5 @@
         this.cinemaOrganizesEventService = cinemaOrganizesEventService;
         this.cinemaPlaysFilmService = cinemaPlaysFilmService;
-        this.projectionIsPlayedInRoomRepository = projectionIsPlayedInRoomRepository;
+        this.projectionIsPlayedInRoomService = projectionIsPlayedInRoomService;
     }
 
@@ -127,13 +133,31 @@
 
     }
-
     @GetMapping("/films")
     public String getFilmsPage(Model model){
         model.addAttribute("cinemas",cinemaService.findAllCinemas());
-        model.addAttribute("films",filmService.findAllFilms());
+            List<FilmsReturnTable> pom=new LinkedList<>();
+            model.addAttribute("films",pom);
+            boolean h=pom.isEmpty();
+            List<FilmsReturnTable> help=filmService.getFilmsFromCinema(2);
         model.addAttribute("bodyContent","films");
         return "master-template";
     }
 
+    public String getFilmsPage1(Model model,Integer id_cinema){
+        model.addAttribute("cinemas",cinemaService.findAllCinemas());
+        if (id_cinema!=null) {
+            model.addAttribute("films",filmService.getFilmsFromCinema(id_cinema.intValue()));
+        }else{
+            List<FilmsReturnTable> pom=new LinkedList<>();
+            model.addAttribute("films",pom);
+        }
+
+        model.addAttribute("bodyContent","films");
+        return "master-template";
+    }
+    @PostMapping("/getFilmsFromCinema")
+    public String getFilmsFromCinema(@RequestParam Integer cinema, Model model){
+        return getFilmsPage1(model,cinema);
+    }
     @GetMapping("/projections")
     public String getProjectionsPage(Model model)
@@ -262,5 +286,5 @@
 
 
-        List<ProjectionIsPlayedInRoom> p= projectionIsPlayedInRoomRepository.findAllById_projection(id_projection);
+        List<ProjectionIsPlayedInRoom> p= projectionIsPlayedInRoomService.getProjectionPlayedInRoom(id_projection);
 
         model.addAttribute("projection",projection);
Index: src/main/resources/templates/films.html
===================================================================
--- src/main/resources/templates/films.html	(revision 93341f8a2c40e639fb074ff87779c127f420acda)
+++ src/main/resources/templates/films.html	(revision 89438a3e15a293270ff211b0af79b71cdc49a678)
@@ -200,7 +200,10 @@
 </style>
 <div>
+    <form th:action="@{'/home/getFilm/{id}' (id=${film.getId_film()})}"
+          th:method="POST">
+
     <div class="form-group">
         <label style="color: white;font-size: 20px;font-weight: bold">Кино</label>
-        <select name="cinemas" class="form-control">
+        <select name="cinemas" class="form-control" id="cinema">
             <option
                     th:selected="${cinemas.get(1)}"
@@ -210,49 +213,28 @@
             </option>
         </select>
+
     </div>
+        <button class="button" type="submit">Filter</button>
+</form>
 
 </div>
 <div xmlns:th="http://www.thymeleaf.org">
     <div class="main">
-<!--        <div th:each="film : ${films}" class="container">-->
-<!--            <div class="card">-->
-<!--                <div class="imgBx">-->
-<!--                    <img th:src="@{${film.getUrl()}}"/>-->
-<!--                </div>-->
-<!--                <div class="contentBx">-->
-<!--                    <h2  th:text="${film.getName()}"></h2>-->
-<!--                    <div class="size">-->
-<!--                        <h3>Duration :</h3>-->
-<!--                        <span th:text="${film.getDuration()}"></span>-->
-<!--                    </div>-->
-<!--                    <div class="color">-->
-<!--                        <h3>Genre:</h3>-->
-<!--                        <span th:text="${film.getGenre()}"></span>-->
-<!--                    </div>-->
-<!--                    <form th:action="@{'/home/getFilm/{id}' (id=${film.getId_film()})}"-->
-<!--                          th:method="GET">-->
-<!--                        <button class="button" type="submit">Details</button>-->
-<!--                    </form>-->
-
-
-<!--                </div>-->
-<!--            </div>-->
-<!--        </div>-->
-        <div th:each="film : ${films}" class="container">
+        <div    th:if="${films.isEmpty()} == false"
+                th:each="film : ${films}" class="container">
             <div class="card">
                 <div class="imgBx">
-                    <img th:src="@{${film.getUrl()}}"/>
+                    <img th:src=""/>
                 </div>
                 <div class="contentBx">
-                    <h2  th:text="${film.getName()}"></h2>
-                    <div class="size">
-                        <h3>Duration :</h3>
-                        <span th:text="${film.getDuration()}"></span>
+                    <h2  th:if="${films.isEmpty()} == false"
+                            th:text="${film.getName()}"></h2>
+                    <div class="color">
+                        <h3>Start Date:</h3>
+                        <span th:if="${films.isEmpty()} == false"
+                                th:text="${film.getStart_date()}"></span>
                     </div>
-                    <div class="color">
-                        <h3>Genre:</h3>
-                        <span th:text="${film.getGenre()}"></span>
-                    </div>
-                    <form th:action="@{'/home/getFilm/{id}' (id=${film.getId_film()})}"
+                    <form th:if="${films.isEmpty()} == false"
+                            th:action="@{'/home/getFilm/{id}' (id=${film.getId_film()})}"
                           th:method="GET">
                         <button class="button" type="submit">Details</button>
