Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package group_project;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
- import java.text.ParseException;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- public class Guest extends Admin {
- String userOnline;
- public Guest() {
- }
- public String getDateUpdate() throws SQLException {
- String query = "SELECT DateUpdate FROM extra_service WHERE ID = ?";
- PreparedStatement statement = getConnection().prepareStatement(query);
- statement.setInt(1, getId());
- ResultSet rs = statement.executeQuery();
- if (rs.next()) {
- dateUpdate = rs.getString(1);
- }
- return dateUpdate;
- }
- /* @author Jasmin Bektic
- *
- * Method acting like LogIn form */
- public void logIn() throws Exception {
- Statement s = getConnection().createStatement();
- s.executeQuery("SELECT UserName, Password FROM information");
- ResultSet rs = s.getResultSet();
- //username and pass input
- boolean boo = true;
- while (boo) {
- System.out.println("Enter username:");
- userName = input.next();
- System.out.println("Enter password:");
- password = input.next();
- //Processing current data and comparing to data from database
- while (rs.next()) {
- String user = rs.getString("UserName");
- String pass = rs.getString("Password");
- if (userName.equals(user) && password.equals(pass)) {
- boo = false;
- break;
- }
- }
- //Supporting message, in case of input failure
- if (boo == true) System.out.println("Incorrect user name or password, try again:");
- }
- System.out.println();
- //Add username in array
- PreparedStatement statement = getConnection().prepareStatement("SELECT UserName FROM information WHERE information.UserName = ?");
- statement.setString(1, userName);
- userOnline = (rs.getString(1));
- rs.close ();
- s.close ();
- setList(userOnline);
- }
- /* Method acts like LogOut form */
- public void logOut() {
- list.remove(list.size() - 1);
- // ovdje ide metoda za glavni meni
- }
- /* @author Jasmin Bektic
- *
- * Method used for guest order option */
- public void orderExtraService() throws SQLException, ParseException {
- int[] extraService = new int[5];
- int sum = 0;
- //Getting old extra service prices and sum
- String query = "SELECT Gym, Cinema, Restaurant, Pool, Sauna FROM extra_service WHERE ID = ?";
- PreparedStatement statement = getConnection().prepareStatement(query);
- statement.setInt(1, getId());
- ResultSet rs = statement.executeQuery();
- while (rs.next()) {
- for (int i = 0; i < 5; i++) {
- extraService[i] = rs.getInt(i + 1);
- sum += rs.getInt(i + 1);
- }
- }
- //Updating extra service list
- System.out.println("1- Gym\n2- Cinema\n3- Restaurant\n4- Pool\n5- Sauna\n\n0- Finish my order");
- int index = 0;
- while (true) {
- System.out.println("Order service entering adequate number or finish your order:");
- index = input.nextInt();
- if (index == 0) break;
- extraService[index - 1] = this.extraService[index - 1];
- }
- //Current date and time
- SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- Date date = new Date();
- String orderDate = df.format(date);
- Date d1 = df.parse(getDateUpdate());
- Date d2 = df.parse(orderDate);
- //Number of days between current date and checkIn date (time is default, 12:00:00)
- long diff = d2.getTime() - d1.getTime();
- long diffDays = diff / (24 * 60 * 60 * 1000);
- String dateTime = orderDate.substring(0, 10) + " 12:00:00";
- int balance = 0;
- if (diffDays == 0) {
- balance = sum;
- } else
- balance = (int) (diffDays * sum);
- //Update query with specified ID
- String sql = "UPDATE extra_service SET Gym = ?, Cinema= ?, Restaurant= ?, Pool = ?, Sauna = ?, Balance = ?, DateUpdate = ? WHERE ID = ?";
- PreparedStatement s = getConnection().prepareStatement(sql);
- s.setInt(1, extraService[0]);
- s.setInt(2, extraService[1]);
- s.setInt(3, extraService[2]);
- s.setInt(4, extraService[3]);
- s.setInt(5, extraService[4]);
- s.setInt(6, balance);
- s.setString(7, dateTime);
- s.setInt(8, getId());
- s.executeUpdate();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement