Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package ca.sheridancollege.servlets;
- import ca.sheridancollege.beans.Book;
- import ca.sheridancollege.database.DatabaseAccess;
- import java.io.IOException;
- import java.io.PrintWriter;
- import javax.servlet.RequestDispatcher;
- import javax.servlet.ServletException;
- import javax.servlet.annotation.WebServlet;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- @WebServlet(name = "buyBooksServlet", urlPatterns = {"/buyBooksServlet"})
- public class buyBooksServlet extends HttpServlet {
- public HttpServletRequest requestNew;
- public HttpServletResponse responseNew;
- //database access
- public DatabaseAccess database = new DatabaseAccess();
- protected void processRequest(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- response.setContentType("text/html;charset=UTF-8");
- try (PrintWriter out = response.getWriter()) {
- }
- }
- @Override
- protected void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- //setting request and response values into public variables
- requestNew = request;
- responseNew = response;
- //campus data
- String campus = request.getParameter("campus");
- //setting attributes for campus
- switch (campus) {
- case "davisBooks":
- request.setAttribute("campus", "Davis Book Store");
- break;
- case "hmcBooks":
- request.setAttribute("campus", "HMC Book Store");
- break;
- default:
- request.setAttribute("campus", "Trafalgar Book Store");
- break;
- }
- //Books
- exists(database.getBook(Integer.parseInt(request.getParameter("id1")), campus), campus, Integer.parseInt(request.getParameter("amount1")), "1");
- exists(database.getBook(Integer.parseInt(request.getParameter("id2")), campus), campus, Integer.parseInt(request.getParameter("amount2")), "2");
- exists(database.getBook(Integer.parseInt(request.getParameter("id3")), campus), campus, Integer.parseInt(request.getParameter("amount3")), "3");
- exists(database.getBook(Integer.parseInt(request.getParameter("id4")), campus), campus, Integer.parseInt(request.getParameter("amount4")), "4");
- exists(database.getBook(Integer.parseInt(request.getParameter("id5")), campus), campus, Integer.parseInt(request.getParameter("amount5")), "5");
- //sending to jsp
- RequestDispatcher view = requestNew.getRequestDispatcher("boughtBook.jsp");
- view.forward(requestNew, responseNew);
- }
- //gets an input book object
- public void exists(Book inputBook, String campus, int orderAmount, String bookNum) throws ServletException, IOException {
- //error chcecking
- if (inputBook.getId() == 0) {
- //record doesnt exist
- RequestDispatcher view = requestNew.getRequestDispatcher("recordDoesntExist.jsp");
- view.forward(requestNew, responseNew);
- processRequest(requestNew, responseNew);
- } else if (inputBook.getQuantity() < orderAmount) {
- //not enough in the sotre to finish order
- RequestDispatcher view = requestNew.getRequestDispatcher("amountTooBig.jsp");
- view.forward(requestNew, responseNew);
- } else {
- inputBook.setQuantity(inputBook.getQuantity() - orderAmount);
- database.editRecord(inputBook.getId(), campus, inputBook.getName(), inputBook.getAuthor(), inputBook.getPrice(), inputBook.getQuantity(), inputBook.getRelatedCourses());
- double totalPrice = orderAmount * inputBook.getPrice();
- //setting atttributes
- requestNew.setAttribute("buyingBook" + bookNum, inputBook);
- requestNew.setAttribute("amount" + bookNum, orderAmount);
- requestNew.setAttribute("price" + bookNum, totalPrice);
- }
- // return false;
- }
- @Override
- public String getServletInfo() {
- return "Short description";
- }// </editor-fold>
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement