Advertisement
Guest User

Untitled

a guest
Jan 20th, 2018
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 31.91 KB | None | 0 0
  1.  package ModelClass;
  2.  
  3. import com.sun.xml.ws.runtime.dev.Session;
  4. import java.io.Serializable;
  5. import java.sql.CallableStatement;
  6. import java.sql.Connection;
  7. import java.sql.DriverManager;
  8. import java.sql.ResultSet;
  9. import java.sql.SQLException;
  10. import java.sql.Statement;
  11. import java.sql.Types;
  12. import java.util.ArrayList;
  13. import java.util.HashMap;
  14. import java.util.List;
  15. import java.util.Map;
  16. import java.util.logging.Level;
  17. import java.util.logging.Logger;
  18. import javax.annotation.PostConstruct;
  19. import javax.faces.application.FacesMessage;
  20. import javax.faces.bean.ManagedBean;
  21. import javax.faces.bean.SessionScoped;
  22. import javax.faces.context.FacesContext;
  23. import org.primefaces.event.NodeSelectEvent;
  24. import org.primefaces.event.RateEvent;
  25.  
  26. @ManagedBean(name = "Plan")
  27. @SessionScoped
  28. public class Plan {
  29.  
  30.     private int EMERGENCY_ID;
  31.     public Integer rt=3;
  32.     private int SHOPPING_ID;
  33.     private int INTRA_REGION_TRANSPORT_ID;
  34.     private int INTER_REGION_TRANSPORT_ID;
  35.     private int RESTAURANT_ID;
  36.     private int HOTEL_ID;
  37.     private int LANDMARK_ID;
  38.     private int USER_ID;
  39.     private int PLAN_ID;
  40.     private int BUDGET;
  41.     private int DAYS;
  42.     private String EMERGENCY_NAME;
  43.     private String SHOPPING_NAME;
  44.     private String INTRA_REGION_NAME;
  45.     private String INTER_REGION_NAME;
  46.     private String RESTAURANT_NAME;
  47.     private String HOTEL_NAME;
  48.     private String LANDMARK_NAME;
  49.     private String DESTINATION;
  50.     private String LOCATION;
  51.     private final DBConnection dbconnection = new DBConnection();
  52.     private Map<String, String> regions;
  53.     private List<String> landmarks = new ArrayList<>();
  54.     private List<String> selectedlandmarks = new ArrayList<>();
  55.     private List<Hotels> hotels = new ArrayList<>();
  56.     private Hotels selectedhotel ;
  57.     private List<Restaurant> restaurants = new ArrayList<>();
  58.     private Restaurant selectedrestaurant ;
  59.     private List<IntraRegionTransport> intratransport = new ArrayList<>();
  60.     private List<IntraRegionTransport> selectedintratransport = new ArrayList<>(); ;
  61.     private List<InterRegionTransport> intertransport = new ArrayList<>();
  62.     private InterRegionTransport selectedintertransport;
  63.     private List<String> emergency = new ArrayList<>();
  64.     private List<String> market = new ArrayList<>();
  65.  
  66.     public List<String> getEmergency() {
  67.         return emergency;
  68.     }
  69.  
  70.     public void setEmergency(List<String> emergency) {
  71.         this.emergency = emergency;
  72.     }
  73.  
  74.     public List<String> getMarket() {
  75.         return market;
  76.     }
  77.  
  78.     public void setMarket(List<String> market) {
  79.         this.market = market;
  80.     }
  81.  
  82.    
  83.     PageController pc = new PageController();
  84.     private Map<String, String> intratransportMode;
  85.     private int totalSpent;
  86.  
  87.     public int getTotalSpent() {
  88.         return totalSpent;
  89.     }
  90.  
  91.     public void setTotalSpent(int totalSpent) {
  92.         this.totalSpent = totalSpent;
  93.     }
  94.  
  95.     public Map<String, String> getIntratransportMode() {
  96.         return intratransportMode;
  97.     }
  98.  
  99.     public void setIntratransportMode(Map<String, String> intratransportMode) {
  100.         this.intratransportMode = intratransportMode;
  101.     }
  102.    
  103.     public int getBUDGET() {
  104.         return BUDGET;
  105.     }
  106.  
  107.     public void setBUDGET(int BUDGET) {
  108.         this.BUDGET = BUDGET;
  109.     }
  110.     public String Demo() {
  111.        System.out.println(getBUDGET() + " working? " + getDAYS());
  112.        findPlan();
  113.        return "okay";
  114.    }
  115.    
  116.     public List<InterRegionTransport> getIntertransport() {
  117.         return intertransport;
  118.     }
  119.  
  120.     public void setIntertransport(List<InterRegionTransport> intertransport) {
  121.         this.intertransport = intertransport;
  122.     }
  123.  
  124.     public InterRegionTransport getSelectedintertransport() {
  125.         return selectedintertransport;
  126.     }
  127.  
  128.     public void setSelectedintertransport(InterRegionTransport selectedintertransport) {
  129.         this.selectedintertransport = selectedintertransport;
  130.     }
  131.    
  132.     public List<Hotels> getHotels() {
  133.         return hotels;
  134.     }
  135.  
  136.     public void setHotels(List<Hotels> hotels) {
  137.         this.hotels = hotels;
  138.     }
  139.  
  140.     public Hotels getSelectedhotel() {
  141.         return selectedhotel;
  142.     }
  143.  
  144.     public void setSelectedhotel(Hotels selectedhotel) {
  145.         this.selectedhotel = selectedhotel;
  146.     }
  147.  
  148.  
  149.     public int getDAYS() {
  150.         return DAYS;
  151.     }
  152.  
  153.     public void setDAYS(int DAYS) {
  154.         this.DAYS = DAYS;
  155.     }
  156.  
  157.     public List<String> getLandmarks() {
  158.         return landmarks;
  159.     }
  160.  
  161.     public void setLandmarks(List<String> landmarks) {
  162.         this.landmarks = landmarks;
  163.     }
  164.  
  165.     public List<String> getSelectedlandmarks() {
  166.         return selectedlandmarks;
  167.     }
  168.  
  169.     public void setSelectedlandmarks(List<String> selectedlandmarks) {
  170.         this.selectedlandmarks = selectedlandmarks;
  171.     }
  172.  
  173.    
  174.  
  175.  
  176.  
  177.     public Map<String, String> getRegions() {
  178.         return regions;
  179.     }
  180.  
  181.     public void setRegions(Map<String, String> regions) {
  182.         this.regions = regions;
  183.     }
  184.  
  185.     public String getDESTINATION() {
  186.         return DESTINATION;
  187.     }
  188.  
  189.     public void setDESTINATION(String DESTINATION) {
  190.         this.DESTINATION = DESTINATION;
  191.     }
  192.  
  193.     public String getLOCATION() {
  194.         return LOCATION;
  195.     }
  196.  
  197.     public void setLOCATION(String LOCATION) {
  198.         this.LOCATION = LOCATION;
  199.     }
  200.  
  201.     public String getEMERGENCY_NAME() {
  202.         return EMERGENCY_NAME;
  203.     }
  204.  
  205.     public void setEMERGENCY_NAME(String EMERGENCY_NAME) {
  206.         this.EMERGENCY_NAME = EMERGENCY_NAME;
  207.     }
  208.  
  209.     public String getSHOPPING_NAME() {
  210.         return SHOPPING_NAME;
  211.     }
  212.  
  213.     public void setSHOPPING_NAME(String SHOPPING_NAME) {
  214.         this.SHOPPING_NAME = SHOPPING_NAME;
  215.     }
  216.  
  217.     public String getINTRA_REGION_NAME() {
  218.         return INTRA_REGION_NAME;
  219.     }
  220.  
  221.     public void setINTRA_REGION_NAME(String INTRA_REGION_NAME) {
  222.         this.INTRA_REGION_NAME = INTRA_REGION_NAME;
  223.     }
  224.  
  225.     public String getINTER_REGION_NAME() {
  226.         return INTER_REGION_NAME;
  227.     }
  228.  
  229.     public void setINTER_REGION_NAME(String INTER_REGION_NAME) {
  230.         this.INTER_REGION_NAME = INTER_REGION_NAME;
  231.     }
  232.  
  233.     public String getRESTAURANT_NAME() {
  234.         return RESTAURANT_NAME;
  235.     }
  236.  
  237.     public void setRESTAURANT_NAME(String RESTAURANT_NAME) {
  238.         this.RESTAURANT_NAME = RESTAURANT_NAME;
  239.     }
  240.  
  241.     public String getHOTEL_NAME() {
  242.         return HOTEL_NAME;
  243.     }
  244.  
  245.     public void setHOTEL_NAME(String HOTEL_NAME) {
  246.         this.HOTEL_NAME = HOTEL_NAME;
  247.     }
  248.  
  249.     public String getLANDMARK_NAME() {
  250.         return LANDMARK_NAME;
  251.     }
  252.  
  253.     public void setLANDMARK_NAME(String LANDMARK_NAME) {
  254.         this.LANDMARK_NAME = LANDMARK_NAME;
  255.     }
  256.  
  257.     public int getEMERGENCY_ID() {
  258.         return EMERGENCY_ID;
  259.     }
  260.  
  261.     public void setEMERGENCY_ID(int EMERGENCY_ID) {
  262.         this.EMERGENCY_ID = EMERGENCY_ID;
  263.     }
  264.  
  265.     public int getSHOPPING_ID() {
  266.         return SHOPPING_ID;
  267.     }
  268.  
  269.     public void setSHOPPING_ID(int SHOPPING_ID) {
  270.         this.SHOPPING_ID = SHOPPING_ID;
  271.     }
  272.  
  273.     public int getINTRA_REGION_TRANSPORT_ID() {
  274.         return INTRA_REGION_TRANSPORT_ID;
  275.     }
  276.  
  277.     public void setINTRA_REGION_TRANSPORT_ID(int INTRA_REGION_TRANSPORT_ID) {
  278.         this.INTRA_REGION_TRANSPORT_ID = INTRA_REGION_TRANSPORT_ID;
  279.     }
  280.  
  281.     public int getINTER_REGION_TRANSPORT_ID() {
  282.         return INTER_REGION_TRANSPORT_ID;
  283.     }
  284.  
  285.     public void setINTER_REGION_TRANSPORT_ID(int INTER_REGION_TRANSPORT_ID) {
  286.         this.INTER_REGION_TRANSPORT_ID = INTER_REGION_TRANSPORT_ID;
  287.     }
  288.  
  289.     public int getRESTAURANT_ID() {
  290.         return RESTAURANT_ID;
  291.     }
  292.  
  293.     public void setRESTAURANT_ID(int RESTAURANT_ID) {
  294.         this.RESTAURANT_ID = RESTAURANT_ID;
  295.     }
  296.  
  297.     public int getHOTEL_ID() {
  298.         return HOTEL_ID;
  299.     }
  300.  
  301.     public void setHOTEL_ID(int HOTEL_ID) {
  302.         this.HOTEL_ID = HOTEL_ID;
  303.     }
  304.  
  305.     public int getLANDMARK_ID() {
  306.         return LANDMARK_ID;
  307.     }
  308.  
  309.     public void setLANDMARK_ID(int LANDMARK_ID) {
  310.         this.LANDMARK_ID = LANDMARK_ID;
  311.     }
  312.  
  313.     public int getUSER_ID() {
  314.         return USER_ID;
  315.     }
  316.  
  317.     public void setUSER_ID(int USER_ID) {
  318.         this.USER_ID = USER_ID;
  319.     }
  320.  
  321.     public int getPLAN_ID() {
  322.         return PLAN_ID;
  323.     }
  324.  
  325.     public void setPLAN_ID(int PLAN_ID) {
  326.         this.PLAN_ID = PLAN_ID;
  327.     }
  328.  
  329.    
  330.     public void onLocationChange() {
  331.         System.out.println(LOCATION);
  332.     }
  333.  
  334.     public void onDestinationChange() throws SQLException {
  335.         landmarks.clear();
  336.         getSelectedlandmarks().clear();
  337.         Statement stmt2 = null;
  338.         Connection con = null;
  339.         ResultSet rs1 = null;
  340.         DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
  341.         String dbURL2 = "jdbc:oracle:thin:@localhost:1521:orcl";
  342.         con = DriverManager.getConnection(dbURL2, dbconnection.user, dbconnection.password);
  343.         if (con != null) {
  344.             stmt2 = con.createStatement();
  345.             try {
  346.                 String query = "SELECT REGION_ID FROM REGION WHERE REGION_NAME ='" + DESTINATION + "'";
  347.                 rs1 = stmt2.executeQuery(query);
  348.                 if (rs1.next()) {
  349.                     int i = rs1.getInt(1);
  350.                     rs1 = stmt2.executeQuery("SELECT LANDMARK_NAME FROM LANDMARKS WHERE REGION_ID = " + i);
  351.                     while (rs1.next()) {
  352.                         landmarks.add(rs1.getString(1));
  353.                     }
  354.                 }
  355.             } catch (Exception e) {
  356.                 System.out.println(e);
  357.             } finally {
  358.                 try {
  359.                     con.close();
  360.                     stmt2.close();
  361.                 } catch (SQLException e) {
  362.                     System.out.println(e);
  363.                 }
  364.             }
  365.         }
  366.     }
  367.  
  368.     @PostConstruct
  369.     public void init() {
  370.         regions = new HashMap<String, String>();
  371.         Statement stmt = null;
  372.         Connection con = null;
  373.         ResultSet rs = null;
  374.         String value;
  375.  
  376.         try {
  377.             DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
  378.  
  379.             String dbURL2 = "jdbc:oracle:thin:@localhost:1521:orcl";
  380.             con = DriverManager.getConnection(dbURL2, dbconnection.user, dbconnection.password);
  381.             if (con != null) {
  382.                 stmt = con.createStatement();
  383.                 try {
  384.                     rs = stmt.executeQuery("SELECT REGION_NAME FROM REGION");
  385.                     while (rs.next()) {
  386.                         value = rs.getString(1);
  387.                         regions.put(value, value);
  388.                     }
  389.                 } catch (SQLException e) {
  390.                     System.out.println("No data found");
  391.                 }
  392.             }
  393.         } catch (SQLException e) {
  394.             System.out.println(e.toString());
  395.         } finally {
  396.             try {
  397.                 con.close();
  398.                 stmt.close();
  399.             } catch (Exception e) {
  400.                 e.printStackTrace();
  401.             }
  402.         }
  403.        
  404.        
  405.     }
  406.    
  407.     public void findPlan()
  408.     {
  409.         System.out.println(LOCATION);
  410.         System.out.println("budget: "+BUDGET);
  411.         //regions = new HashMap<String, String>();
  412.        
  413.         Hotels hot=new Hotels();
  414.         Restaurant res = new Restaurant();
  415.         InterRegionTransport inter = new InterRegionTransport();
  416.         IntraRegionTransport intra = new IntraRegionTransport();
  417.         Statement stmt = null,stmt1=null,stmt2=null;
  418.         CallableStatement cstmt;
  419.         Connection con = null;
  420.         ResultSet rs = null,rs1=null,rs2=null;
  421.         String sql;
  422.         int currentBalance = BUDGET,temp = 0, id1=0, id2=0;
  423.         intratransportMode = new HashMap<String, String>();
  424.  
  425.         try {
  426.             DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
  427.  
  428.             String dbURL2 = "jdbc:oracle:thin:@localhost:1521:orcl";
  429.             con = DriverManager.getConnection(dbURL2, dbconnection.user, dbconnection.password);
  430.             if (con != null) {
  431.                 stmt = con.createStatement();
  432.                 stmt1 = con.createStatement();
  433.                 stmt2 = con.createStatement();
  434.                 try {
  435.                     //suggest inter region transport
  436.                     intertransport.clear();
  437.                     rs = stmt.executeQuery("SELECT REGION_ID FROM REGION WHERE REGION_NAME='"+LOCATION+"'");
  438.                     //System.out.print();
  439.                     if(rs.next()) {
  440.                         id1 = rs.getInt(1);
  441.                         rs1 = stmt1.executeQuery("SELECT REGION_ID FROM REGION WHERE REGION_NAME='"+DESTINATION+"'");
  442.                        if(rs1.next())
  443.                         {
  444.                             id2 = rs1.getInt(1);
  445.                             String query = "SELECT VEHICLE_NAME,EXPENSE FROM INTER_REGION_TRANSPORT WHERE FROM_DIST="
  446.                             +id1+" AND TO_DIST="+ id2 +" AND 2*EXPENSE<="+currentBalance;
  447.                             System.out.print(query);
  448.                             rs2 = stmt2.executeQuery(query);
  449.                             while(rs2.next())
  450.                             {
  451.                                 inter.setVEHICLE_NAME(rs2.getString(1));
  452.                                 inter.setEXPENSE(rs2.getInt(2));
  453.                                 intertransport.add(inter);
  454.                                 System.out.print("inserted");
  455.                                
  456.                             }
  457.                            
  458.                         }
  459.                     }
  460.                    
  461.                         //sql = "{? = CALL MINIMUM_SPENT_INTER(?,?,?)}";
  462.                         cstmt = con.prepareCall("{? = call MINIMUM_SPENT_INTER(?,?,?)}");
  463.                         cstmt.registerOutParameter(1, Types.INTEGER);
  464.                         cstmt.setInt(2, id1);
  465.                         cstmt.setInt(3, id2);
  466.                         cstmt.setInt(4, currentBalance);
  467.                         cstmt.execute();
  468.                         temp = cstmt.getInt(1);
  469.                         currentBalance -= temp;
  470.                         System.out.println(temp+" current:"+currentBalance);
  471.                        
  472.                         //suggest Hotel options
  473.                         hotels.clear();
  474.                         sql = "SELECT HOTEL_NAME,MINIMUM_COST FROM HOTELS_AND_RESORTS WHERE REGION_ID="
  475.                                 + id2 +" AND MINIMUM_COST*"+DAYS+"<="+currentBalance;
  476.                         System.out.println(sql);
  477.                         if(DAYS>0)
  478.                         {
  479.                                 rs=stmt.executeQuery(sql);
  480.                                 while(rs.next())
  481.                                 {
  482.                                     hot.setNAME(rs.getString(1));
  483.                                     hot.setMINIMUM_COST(rs.getInt(2));
  484.                                     hotels.add(hot);
  485.                                     System.out.println(hot+" inserted");
  486.                                 }
  487.  
  488.                             cstmt = con.prepareCall("{? = call MINIMUM_SPENT_HOTEL(?,?,?)}");
  489.                             cstmt.registerOutParameter(1, Types.INTEGER);
  490.                             cstmt.setInt(2, id2);
  491.                             cstmt.setInt(3, currentBalance);
  492.                             cstmt.setInt(4, DAYS);
  493.                             cstmt.execute();
  494.                             temp = cstmt.getInt(1);
  495.                             currentBalance -= temp;
  496.                             System.out.println(temp+" current:"+currentBalance);
  497.                         //suggest intra region transport options
  498.                         }
  499.                         intratransport.clear();
  500.                         for(int i=0;i<landmarks.size();i++)
  501.                         {
  502.                             sql = "SELECT MODE_OF_TRANSPORT,FROM_DEST,TO_DEST,EXPENSE FROM INTRA_REGION_TRANSPORT WHERE FROM_DEST ='"+DESTINATION+"' AND TO_DEST ='"+
  503.                                     landmarks.get(i)+"' AND 2*EXPENSE<="+currentBalance;
  504.                             System.out.println(sql);
  505.                             rs = stmt.executeQuery(sql);
  506.                             while(rs.next())
  507.                             {
  508.                                 intra.setMODE_OF_TRANSPORT(rs.getString(1));
  509.                                 intra.setFROM_DEST(rs.getString(2));
  510.                                 intra.setTO_DEST(rs.getString(3));
  511.                                 intra.setEXPENSE(rs.getInt(4));
  512.                                 intratransport.add(intra);
  513.                                 intratransportMode.put(intra.getMODE_OF_TRANSPORT(),landmarks.get(i));
  514.                                 System.out.println(intra +" inserted");
  515.                             }
  516.                                 System.out.println(DESTINATION+" "+landmarks.get(i));
  517.                                 cstmt = con.prepareCall("{? = call MINIMUM_SPENT_INTRA(?,?,?)}");
  518.                                 cstmt.registerOutParameter(1, Types.INTEGER);
  519.                                 cstmt.setString(2, DESTINATION);
  520.                                 cstmt.setString(3, landmarks.get(i));
  521.                                 cstmt.setInt(4, currentBalance);
  522.                                 cstmt.execute();
  523.                                 temp = cstmt.getInt(1);
  524.                                 currentBalance -= temp;
  525.                                 System.out.println(temp+" current:"+currentBalance);
  526.                         }
  527.                        
  528.                         //suggest Restaurants options
  529.                         restaurants.clear();
  530.                         sql = "SELECT RESTAURANT_NAME,AVERAGE_COST FROM RESTAURANTS WHERE "
  531.                                 + "REGION_ID="+id2+" AND AVERAGE_COST*"+DAYS+"<="+currentBalance;
  532.                         System.out.println(sql);
  533.                         if(DAYS>0)
  534.                         {
  535.                             rs = stmt.executeQuery(sql);
  536.                             while(rs.next())
  537.                             {
  538.                                 res.setRESTAURANT_NAME(rs.getString(1));
  539.                                 res.setAVERAGE_COST(rs.getInt(2));
  540.                                 restaurants.add(res);
  541.                                 System.out.println("inserted "+res);
  542.                             }
  543.                             cstmt = con.prepareCall("{? = call MINIMUM_SPENT_RESTAURANT(?,?,?)}");
  544.                             cstmt.registerOutParameter(1, Types.INTEGER);
  545.                             cstmt.setInt(2, id2);
  546.                             cstmt.setInt(3, currentBalance);
  547.                             cstmt.setInt(4, DAYS);
  548.                             cstmt.execute();
  549.                             temp = cstmt.getInt(1);
  550.                             currentBalance -= temp;
  551.                             System.out.println(temp+" current:"+currentBalance);
  552.                        
  553.                         }
  554.                 } catch (SQLException e) {
  555.                     System.out.println("No data found");
  556.                 }
  557.             }
  558.         } catch (SQLException e) {
  559.             System.out.println(e.toString());
  560.         } finally {
  561.             try {
  562.                 con.close();
  563.                 stmt.close();
  564.             } catch (Exception e) {
  565.                 e.printStackTrace();
  566.             }
  567.         }
  568.        
  569.     }
  570.    
  571.     public boolean storePln()
  572.     {
  573.         System.out.println("In storePlan");
  574.         //selectedintratransport = new ArrayList<String>();
  575.         Statement stmt = null,stmt2 = null;
  576.         Connection con = null;
  577.         ResultSet rs = null,rs1 = null;
  578.         String value,sql;
  579.         int id1=0, id2=0,uid=0,interid=0,intraid=0,hotelid=0,restaurantid=0,planid=0,lid=0;
  580.  
  581.         try {
  582.             DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
  583.  
  584.             String dbURL2 = "jdbc:oracle:thin:@localhost:1521:orcl";
  585.             con = DriverManager.getConnection(dbURL2, dbconnection.user, dbconnection.password);
  586.             if (con != null) {
  587.                 stmt = con.createStatement();
  588.                 stmt2 = con.createStatement();
  589.                 try {
  590.                     //GET PLAN ID
  591.                     sql = "SELECT PLAN_ID_VAL.NEXTVAL FROM DUAL";
  592.                     System.out.println(sql);
  593.                     rs = stmt.executeQuery(sql);
  594.                     if(rs.next())
  595.                     {
  596.                         planid = rs.getInt(1);
  597.                         System.out.println("Got plan id: "+planid);
  598.                     }
  599.                     //GET LOCATION ID
  600.                     sql="SELECT REGION_ID FROM REGION WHERE REGION_NAME='"
  601.                     +LOCATION+"'";
  602.                     System.out.println(sql);
  603.                     rs = stmt.executeQuery(sql);
  604.                     if(rs.next())
  605.                     {
  606.                         id1 = rs.getInt(1);
  607.                         System.out.println("Got location id: "+id1);
  608.                     }
  609.                     //GET DESTINATION ID
  610.                     sql="SELECT REGION_ID FROM REGION WHERE REGION_NAME='"
  611.                     +DESTINATION+"'";
  612.                     System.out.println(sql);
  613.                     rs = stmt.executeQuery(sql);
  614.                     if(rs.next())
  615.                     {
  616.                         id2 = rs.getInt(1);
  617.                         System.out.println("Got DESTINATION id: "+id2);
  618.                     }
  619.                    
  620.                     //get User id
  621.                     sql = "SELECT USER_ID FROM USER_INFO WHERE USER_NAME ='"+pc.getUser()+"'";
  622.                     System.out.println(sql);
  623.                     rs = stmt.executeQuery(sql);
  624.                    
  625.                     if(rs.next())
  626.                     {
  627.                         uid = rs.getInt(1);
  628.                         System.out.println("user id: "+uid);
  629.                     }
  630.                     //store used inter region
  631.                     sql = "SELECT INTER_REGION_TRANSPORT_ID FROM INTER_REGION_TRANSPORT WHERE FROM_DIST="+id1+" AND TO_DIST="
  632.                             +id2+" AND VEHICLE_NAME ='"+selectedintertransport.getVEHICLE_NAME()+"'";
  633.                     System.out.println(sql);
  634.                     rs = stmt.executeQuery(sql);
  635.                     if(rs.next())
  636.                     {
  637.                         interid = rs.getInt(1);
  638.                         System.out.println("inter region id: "+interid);
  639.                     }
  640.                     sql = "INSERT INTO USED_INTER_REGION_TRANSPORT VALUES("+uid+","+interid+",0,'')";
  641.                     System.out.println(sql);
  642.                     stmt.executeUpdate(sql);
  643.                     //store hotels
  644.                     //find hotel id
  645.                     sql = "SELECT PLACE_ID FROM HOTELS_AND_RESORTS WHERE REGION_ID="+id2+" AND HOTEL_NAME='"
  646.                             +selectedhotel.getNAME()+ "'";
  647.                     System.out.println(sql);
  648.                     rs = stmt.executeQuery(sql);
  649.                     if(rs.next())
  650.                     {
  651.                         hotelid = rs.getInt(1);
  652.                         System.out.println("hotel id: "+hotelid);
  653.                     }
  654.                     //now store
  655.                     sql ="INSERT INTO STAYED_AT VALUES("+uid+","+id2+","+hotelid+",'','',0,0)";
  656.                     System.out.println(sql);
  657.                     stmt.executeUpdate(sql);
  658.                    
  659.                     //storing restaurants
  660.                     sql = "SELECT RESTAURANT_ID FROM RESTAURANTS WHERE REGION_ID="+id2+" AND RESTAURANT_NAME='"
  661.                             +selectedrestaurant.getRESTAURANT_NAME()+ "'";
  662.                     System.out.println(sql);
  663.                     rs = stmt.executeQuery(sql);
  664.                     if(rs.next())
  665.                     {
  666.                         restaurantid = rs.getInt(1);
  667.                         System.out.println("restaurant id: "+restaurantid);
  668.                     }
  669.                     //now store
  670.                     sql ="INSERT INTO VISITED_RESTAURANTS VALUES("+uid+","+restaurantid+","+0+",'',"+id2+")";
  671.                     System.out.println(sql);
  672.                     stmt.executeUpdate(sql);
  673.                    
  674.                     //store in plan
  675.                     sql ="INSERT INTO PLANS VALUES("+planid+","+uid+","+hotelid+","+restaurantid+","+interid+","+0+","+0+")";
  676.                     System.out.println(sql);
  677.                     stmt.executeUpdate(sql);
  678.                    
  679.                     //storing used intra region transport
  680.                     System.out.println(selectedintratransport.size());
  681.                     for(int i=0;i<selectedintratransport.size();i++)
  682.                     {
  683.                         sql = "SELECT INTRA_REGION_TRANSPORT_ID FROM INTRA_REGION_TRANSPORT WHERE FROM_DEST='"+DESTINATION+"' AND MODE_OF_TRANSPORT='"
  684.                             +selectedintratransport.get(i).getMODE_OF_TRANSPORT()+ "' AND TO_DEST='"+intratransportMode.get(selectedintratransport.get(i).getMODE_OF_TRANSPORT())+"'";
  685.                         System.out.println(sql);
  686.                         rs = stmt.executeQuery(sql);
  687.                         if(rs.next())
  688.                         {
  689.                             intraid = rs.getInt(1);
  690.                             System.out.println("intra id: "+intraid);
  691.                         }
  692.                         //now store
  693.                         sql ="INSERT INTO USED_INTRA_REGION_TRANSPORT VALUES("+uid+","+intraid+","+0+",'',"+planid+")";
  694.                         System.out.println(sql);
  695.                         stmt.executeUpdate(sql);
  696.  
  697.                        
  698.                     }
  699.                     //store landmarks
  700.                         System.out.println(selectedlandmarks.size());
  701.                         for(int i=0;i<selectedlandmarks.size();i++)
  702.                         {
  703.                             sql = "SELECT LANDMARK_ID FROM LANDMARKS WHERE REGION_ID="+id2+" AND LANDMARK_NAME='"
  704.                                      +selectedlandmarks.get(i)+"'";
  705.                             System.out.println(sql);
  706.                             rs = stmt.executeQuery(sql);
  707.                             if(rs.next())
  708.                             {
  709.                                 lid = rs.getInt(1);
  710.                                 System.out.println("landmark id: "+lid);
  711.                             }
  712.                             //now store
  713.                             sql ="INSERT INTO VISITED_LANDMARKS VALUES("+uid+","+lid+","+0+",'',"+planid+")";
  714.                             System.out.println(sql);
  715.                             stmt.executeUpdate(sql);
  716.                         }
  717.                    
  718.                 } catch (SQLException e) {
  719.                     System.out.println("No data found");
  720.                 }
  721.             }
  722.         } catch (SQLException e) {
  723.             System.out.println(e.toString());
  724.         } finally {
  725.             try {
  726.                 con.close();
  727.                 stmt.close();
  728.             } catch (Exception e) {
  729.                 e.printStackTrace();
  730.             }
  731.         }
  732.         return true;
  733.     }
  734.    
  735.     public void onrate(NodeSelectEvent event){
  736.         FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Succesful!", "Account Created!"));
  737.                    
  738.     }
  739.    
  740.     public void Preview()
  741.     {
  742.         //add interregion cost
  743.         totalSpent = 0;
  744.         totalSpent += selectedintertransport.getEXPENSE();
  745.         //add intraregion cost
  746.         for(int i=0;i<selectedintratransport.size();i++)
  747.         {
  748.             totalSpent += selectedintratransport.get(i).getEXPENSE();
  749.         }
  750.         //add restaurant cost
  751.         totalSpent += selectedrestaurant.getAVERAGE_COST();
  752.         //add hotel cost
  753.         totalSpent += (selectedhotel.getMAXIMUM_COST() + selectedhotel.getMINIMUM_COST())/2;
  754.     }
  755.    
  756.     public void insert() throws SQLException {
  757.  
  758.         /*  Statement stmt = null;
  759.     Connection con = null;
  760.     ResultSet rs = null;
  761.     DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
  762.            
  763.     String dbURL2 = "jdbc:oracle:thin:@localhost:1521:orcl";
  764.     con = DriverManager.getConnection(dbURL2, user, password);
  765.     System.out.print("In insert function "+getRegionID()+getRegionName());
  766.             if (con!= null) {
  767.                 System.out.println("Connected with connection #2");
  768.                 stmt = con.createStatement();
  769.             try {
  770.             rs = stmt.executeQuery("SELECT * FROM REGION WHERE REGION_NAME = '"+getRegionName()+"'");
  771.                 if(!rs.next())
  772.                 {
  773.                 stmt.executeUpdate("INSERT INTO REGION (REGION_ID, REGION_NAME)"+" VALUES(REGION_ID_VAL.NEXTVAL"+", "+"'"+getRegionName()+"')");
  774.                 System.out.print("In insert function "+getRegionID()+getRegionName());
  775.                 }
  776.             }
  777.             catch(SQLException e)
  778.             {
  779.                 System.out.println("No data found while inserting");
  780.             }
  781.             finally
  782.             {
  783.                 try
  784.                 {
  785.                     con.close();
  786.                     stmt.close();
  787.                 }
  788.                 catch(SQLException e)
  789.                 {
  790.                            System.out.println(e);
  791.                 }
  792.             }
  793.             }  */
  794.     }
  795.  
  796.     public void delete() throws SQLException {
  797.         /*  Statement stmt = null;
  798.     Connection con = null;
  799.     DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
  800.            
  801.     String dbURL2 = "jdbc:oracle:thin:@localhost:1521:orcl";
  802.     con = DriverManager.getConnection(dbURL2, user, password);
  803.     System.out.print("In delete function "+getRegionName());
  804.     if (con!= null) {
  805.             System.out.println("Connected with connection #2");
  806.             stmt = con.createStatement();
  807.             try {
  808.             stmt.executeUpdate("DELETE FROM REGION WHERE REGION_NAME = '"+getDelRegionName()+"'");
  809.             System.out.print("In delete function "+getRegionName());
  810.             }
  811.             catch(SQLException e)
  812.             {
  813.                 System.out.println("No data found during deletion");
  814.             }
  815.             finally
  816.             {
  817.                 try
  818.                 {
  819.                     con.close();
  820.                     stmt.close();
  821.                 }
  822.                 catch(SQLException e)
  823.                 {
  824.                            System.out.println(e);
  825.                 }
  826.             }
  827.             }  */
  828.  
  829.     }
  830.  
  831.     /**
  832.      * @return the restaurants
  833.      */
  834.     public List<Restaurant> getRestaurants() {
  835.         return restaurants;
  836.     }
  837.  
  838.     /**
  839.      * @param restaurants the restaurants to set
  840.      */
  841.     public void setRestaurants(List<Restaurant> restaurants) {
  842.         this.restaurants = restaurants;
  843.     }
  844.  
  845.     /**
  846.      * @return the selectedrestaurant
  847.      */
  848.     public Restaurant getSelectedrestaurant() {
  849.         return selectedrestaurant;
  850.     }
  851.  
  852.     /**
  853.      * @param selectedrestaurant the selectedrestaurant to set
  854.      */
  855.     public void setSelectedrestaurant(Restaurant selectedrestaurant) {
  856.         this.selectedrestaurant = selectedrestaurant;
  857.     }
  858.  
  859.     /**
  860.      * @return the intratransport
  861.      */
  862.     public List<IntraRegionTransport> getIntratransport() {
  863.         return intratransport;
  864.     }
  865.  
  866.     /**
  867.      * @param intratransport the intratransport to set
  868.      */
  869.     public void setIntratransport(List<IntraRegionTransport> intratransport) {
  870.         this.intratransport = intratransport;
  871.     }
  872.  
  873.     /**
  874.      * @return the selectedintratransport
  875.      */
  876.     public List<IntraRegionTransport> getSelectedintratransport() {
  877.         return selectedintratransport;
  878.     }
  879.  
  880.     /**
  881.      * @param selectedintratransport the selectedintratransport to set
  882.      */
  883.     public void setSelectedintratransport(List<IntraRegionTransport> selectedintratransport) {
  884.         this.selectedintratransport = selectedintratransport;
  885.     }
  886.  
  887. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement