Specifications
Your task is to develop a web application using AngularJS that displays movies and their schedules in a cinema. The web application is expected to have the following requirements
A MySQL database using NodeJS that stores the movies and their show times.
An Angular app for displaying the list of movies and their show times, including update and delete actions.
A RESTful API to fetch the details of the list of movies and their show times, including update and delete actions.
Part 1 – Setup MySQL database using NodeJS
You are required to complete the following requirements using NodeJS (see Module 4):
Install a MySQL server, connect to the MySQL server, and create a new database called “cinema_db” by creating a file named “cinema_db.js”.
Create two new tables called movie and showtime that store the list of movies and the showtimes that the movies are playing.
o In the movie table, create the following fields: movie_ID (PK), title, genre, rating, description
o In the showtime table, create the following fields: showtime_ID (PK), movie_ID (FK), time (you either can use string or datetime type), and location (i.e. the suburb where the movie is playing). Note that one movie can be played in multiple locations at the same time.
o For the two tables above, use appropriate data type for each of the fields
Insert at least 5 records into the movie table and at least 10 records into the showtime table
Part 2 – Create a RESTFul API and Angular project
You are required to complete the following requirements:
Create a RESTful API using Node and ExpressJS to fetch data from the database and display the data on the page. You will need to use GET request (see Module 4).
Create an Angular project and import all the required modules such as HttpClient etc.
Using Angular component, add a page in your Angular project to display the details of movies including their times and locations (see Module 5).
You are free to decide the layout of this page as long as it shows the required information
Part 3 – Extend the RESTful API and add more components
You are required to complete the following requirements:
Extend the Restful API to implement the above functionalities (you will need to use POST, PUT, and DELETE requests) – see Module 4.
Add another two Angular components to your Angular project to implement the following pages (see Module 5):
o A page to create a new record in the showtime table
o A page to update and delete existing records in the showtime table
You are free to decide the layout of these pages as long as it can perform the required actions.
Each page in your project must correspond to a unique URL, and users should be able to navigate between the pages. You may use Angular router to handle multiple components (see Module 5-6)
Please note that you are not required to add, edit, or delete any records from the movie table.
Students succeed in their courses by connecting and communicating with an expert until they receive help on their questions
Consult our trusted tutors.