Advertisement
Guest User

Plan

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