combined booking classes
This commit is contained in:
		
							parent
							
								
									46f08ecb09
								
							
						
					
					
						commit
						bb23d12201
					
				
					 9 changed files with 221 additions and 268 deletions
				
			
		|  | @ -70,8 +70,7 @@ | |||
|             android:label="Availabilities" | ||||
|             android:screenOrientation="portrait" /> | ||||
|         <activity android:name=".SignUpPart2" /> | ||||
|         <activity android:name=".ServiceProviderBookings" /> | ||||
|         <activity android:name=".HomeOwnerBookings" /> | ||||
|         <activity android:name=".Bookings" /> | ||||
|         <activity android:name=".FindServiceProvider" /> | ||||
|         <activity android:name=".MakeBooking" /> | ||||
|         <activity android:name=".HomeOwnerEditProfile"></activity> | ||||
|  |  | |||
|  | @ -0,0 +1,184 @@ | |||
| package com.uottawa.olympus.olympusservices; | ||||
| 
 | ||||
| import android.content.Context; | ||||
| import android.content.DialogInterface; | ||||
| import android.content.Intent; | ||||
| import android.support.annotation.NonNull; | ||||
| import android.support.v7.app.AlertDialog; | ||||
| import android.support.v7.app.AppCompatActivity; | ||||
| import android.os.Bundle; | ||||
| import android.support.v7.widget.RecyclerView; | ||||
| import android.view.LayoutInflater; | ||||
| import android.view.View; | ||||
| import android.view.ViewGroup; | ||||
| import android.widget.TextView; | ||||
| import android.widget.Toast; | ||||
| 
 | ||||
| public class Bookings extends AppCompatActivity { | ||||
| 
 | ||||
|     //field for RecyclerView | ||||
|     private RecyclerView mRecyclerView; | ||||
|     //field for adapter of Recycler view | ||||
|     private RecyclerView.Adapter mAdapter; | ||||
|     //field for layout manager of Recyler view. | ||||
|     private RecyclerView.LayoutManager mLayoutManager; | ||||
| 
 | ||||
|     String username; | ||||
|     DBHelper dbhelper; | ||||
| 
 | ||||
|     @Override | ||||
|     protected void onCreate(Bundle savedInstanceState) { | ||||
|         super.onCreate(savedInstanceState); | ||||
|         setContentView(R.layout.activity_bookings); | ||||
|         Bundle bundle = getIntent().getExtras(); | ||||
|         username = bundle.getString("username"); | ||||
|         dbhelper = new DBHelper(this); | ||||
| 
 | ||||
|        /* | ||||
|         Booking[] bookings; | ||||
|         //get bookings here | ||||
|         mRecyclerView = (RecyclerView) findViewById(R.id.Bookings); | ||||
|         mLayoutManager = new LinearLayoutManager(this); | ||||
|         mRecyclerView.setLayoutManager(mLayoutManager); | ||||
|         mAdapter = new AdminServicesList.MyAdapter(booking, this); | ||||
|         mRecyclerView.setAdapter(mAdapter); | ||||
|         */ | ||||
|     } | ||||
| 
 | ||||
|     /** | ||||
|      * Override so that previous screen refreshes when pressing the | ||||
|      * back button on this activity of the app. | ||||
|      * | ||||
|      */ | ||||
|     @Override | ||||
|     public void onBackPressed(){ | ||||
|         Intent intent = new Intent(getApplicationContext(),Welcome.class); | ||||
|         intent.putExtra("username", username); | ||||
|         startActivity(intent); | ||||
|         finish(); | ||||
|     } | ||||
| 
 | ||||
| 
 | ||||
|     public class MyAdapter extends RecyclerView.Adapter<MyAdapter.BookingHolder> { | ||||
| 
 | ||||
|         private Booking[] bookings; | ||||
|         private Context context; | ||||
| 
 | ||||
|         // Provide a reference to the views for each data item | ||||
|         // Complex data items may need more than one view per item, and | ||||
|         // you provide access to all the views for a data item in a view holder | ||||
| 
 | ||||
|         // Provide a suitable constructor (depends on the kind of dataset) | ||||
|         public MyAdapter(Booking[] bookings, Context context) { | ||||
|             this.bookings = bookings; | ||||
|         } | ||||
| 
 | ||||
|         // Create new views (invoked by the layout manager) | ||||
|         @NonNull | ||||
|         @Override | ||||
|         public BookingHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { | ||||
|             View v = LayoutInflater.from(parent.getContext()) | ||||
|                     .inflate(R.layout.booking_list_item, parent, false); | ||||
|             BookingHolder vh = new BookingHolder(v); | ||||
|             return vh; | ||||
|         } | ||||
| 
 | ||||
|         // Replace the contents of a view (invoked by the layout manager) | ||||
|         @Override | ||||
|         public void onBindViewHolder(BookingHolder holder, int position) { | ||||
|             Booking booking = bookings[position]; | ||||
|             //holder.name.setText(booking.getServiceprovider().getFirstname()+" "+booking.getServiceprovider().getLastname()); | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|         } | ||||
| 
 | ||||
|         // Return the size of your dataset (invoked by the layout manager) | ||||
|         @Override | ||||
|         public int getItemCount() { | ||||
|             return bookings.length; | ||||
|         } | ||||
| 
 | ||||
|         class BookingHolder extends RecyclerView.ViewHolder implements View.OnClickListener{ | ||||
| 
 | ||||
|             TextView homeowner; | ||||
|             TextView serviceprovider; | ||||
|             TextView date; | ||||
|             TextView start; | ||||
|             TextView end; | ||||
|             TextView status; | ||||
| 
 | ||||
|             public BookingHolder(View row){ | ||||
|                 super(row); | ||||
|                 homeowner = row.findViewById(R.id.HomeOwnerName); | ||||
|                 serviceprovider = row.findViewById(R.id.ServiceProviderName); | ||||
|                 date = row.findViewById(R.id.DateName); | ||||
|                 start = row.findViewById(R.id.StartTime); | ||||
|                 end = row.findViewById(R.id.EndTime); | ||||
|                 status = row.findViewById(R.id.StatusName); | ||||
| 
 | ||||
|                 row.setOnClickListener(this); | ||||
|             } | ||||
|             @Override | ||||
|             public void onClick(View view) { | ||||
|                 if(dbhelper.findUserByUsername(username).getRole()=="ServiceProvider"){ | ||||
|                     AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(Bookings.this); | ||||
|                     alertDialogBuilder.setMessage("Cancel or Confirm your booking"); | ||||
|                             alertDialogBuilder.setPositiveButton("Confirm", | ||||
|                                     new DialogInterface.OnClickListener() { | ||||
|                                         @Override | ||||
|                                         public void onClick(DialogInterface arg0, int arg1) { | ||||
|                                             //confirm booking | ||||
|                                             Toast.makeText(Bookings.this,"Booking is confirmed",Toast.LENGTH_LONG).show(); | ||||
|                                             Bookings.this.recreate(); | ||||
|                                         } | ||||
|                                     }); | ||||
| 
 | ||||
|                     alertDialogBuilder.setNegativeButton("No", | ||||
|                             new DialogInterface.OnClickListener() { | ||||
|                         @Override | ||||
|                         public void onClick(DialogInterface dialog, int which) { | ||||
|                             //delete booking | ||||
|                             Toast.makeText(Bookings.this,"Booking is deleted",Toast.LENGTH_LONG).show(); | ||||
|                             Bookings.this.recreate(); | ||||
|                         } | ||||
|                     }); | ||||
| 
 | ||||
|                     AlertDialog alertDialog = alertDialogBuilder.create(); | ||||
|                     alertDialog.show(); | ||||
|                 } | ||||
|                 else{ | ||||
|                     AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(Bookings.this); | ||||
|                     alertDialogBuilder.setMessage("Are you sure you want to cancel your booking"); | ||||
|                     alertDialogBuilder.setPositiveButton("Cancel", | ||||
|                             new DialogInterface.OnClickListener() { | ||||
|                                 @Override | ||||
|                                 public void onClick(DialogInterface arg0, int arg1) { | ||||
|                                     //cancel booking | ||||
|                                     Toast.makeText(Bookings.this,"Booking is cancelled",Toast.LENGTH_LONG).show(); | ||||
|                                     Bookings.this.recreate(); | ||||
|                                 } | ||||
|                             }); | ||||
| 
 | ||||
|                     alertDialogBuilder.setNegativeButton("Nevermind", | ||||
|                             new DialogInterface.OnClickListener() { | ||||
|                                 @Override | ||||
|                                 public void onClick(DialogInterface dialog, int which) { | ||||
| 
 | ||||
|                                 } | ||||
|                             }); | ||||
| 
 | ||||
|                     AlertDialog alertDialog = alertDialogBuilder.create(); | ||||
|                     alertDialog.show(); | ||||
| 
 | ||||
|                 } | ||||
| 
 | ||||
| 
 | ||||
|             } | ||||
| 
 | ||||
| 
 | ||||
|         } | ||||
| 
 | ||||
| 
 | ||||
|     } | ||||
| } | ||||
|  | @ -1,120 +0,0 @@ | |||
| package com.uottawa.olympus.olympusservices; | ||||
| 
 | ||||
| import android.content.Context; | ||||
| import android.content.Intent; | ||||
| import android.support.annotation.NonNull; | ||||
| import android.support.v7.app.AppCompatActivity; | ||||
| import android.os.Bundle; | ||||
| import android.support.v7.widget.LinearLayoutManager; | ||||
| import android.support.v7.widget.RecyclerView; | ||||
| import android.view.LayoutInflater; | ||||
| import android.view.View; | ||||
| import android.view.ViewGroup; | ||||
| import android.widget.TextView; | ||||
| 
 | ||||
| public class HomeOwnerBookings extends AppCompatActivity { | ||||
| 
 | ||||
|     //field for RecyclerView | ||||
|     private RecyclerView mRecyclerView; | ||||
|     //field for adapter of Recycler view | ||||
|     private RecyclerView.Adapter mAdapter; | ||||
|     //field for layout manager of Recyler view. | ||||
|     private RecyclerView.LayoutManager mLayoutManager; | ||||
| 
 | ||||
|     String username; | ||||
| 
 | ||||
|     @Override | ||||
|     protected void onCreate(Bundle savedInstanceState) { | ||||
|         super.onCreate(savedInstanceState); | ||||
|         setContentView(R.layout.activity_home_owner_bookings); | ||||
|         Bundle bundle = getIntent().getExtras(); | ||||
|         username = bundle.getString("username"); | ||||
| 
 | ||||
|        /* | ||||
|         Booking[] bookings; | ||||
|         //get bookings here | ||||
|         mRecyclerView = (RecyclerView) findViewById(R.id.Bookings); | ||||
|         mLayoutManager = new LinearLayoutManager(this); | ||||
|         mRecyclerView.setLayoutManager(mLayoutManager); | ||||
|         mAdapter = new AdminServicesList.MyAdapter(booking, this); | ||||
|         mRecyclerView.setAdapter(mAdapter); | ||||
|         */ | ||||
|     } | ||||
| 
 | ||||
|     /** | ||||
|      * Override so that previous screen refreshes when pressing the | ||||
|      * back button on this activity of the app. | ||||
|      * | ||||
|      */ | ||||
|     @Override | ||||
|     public void onBackPressed(){ | ||||
|         Intent intent = new Intent(getApplicationContext(),Welcome.class); | ||||
|         intent.putExtra("username", username); | ||||
|         startActivity(intent); | ||||
|         finish(); | ||||
|     } | ||||
| 
 | ||||
|     public class MyAdapter extends RecyclerView.Adapter<MyAdapter.BookingHolder> { | ||||
| 
 | ||||
|         private Booking[] bookings; | ||||
|         private Context context; | ||||
| 
 | ||||
|         // Provide a reference to the views for each data item | ||||
|         // Complex data items may need more than one view per item, and | ||||
|         // you provide access to all the views for a data item in a view holder | ||||
| 
 | ||||
|         // Provide a suitable constructor (depends on the kind of dataset) | ||||
|         public MyAdapter(Booking[] bookings, Context context) { | ||||
|             this.bookings = bookings; | ||||
|         } | ||||
| 
 | ||||
|         // Create new views (invoked by the layout manager) | ||||
|         @NonNull | ||||
|         @Override | ||||
|         public BookingHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { | ||||
|             View v = LayoutInflater.from(parent.getContext()) | ||||
|                     .inflate(R.layout.booking_list_item, parent, false); | ||||
|             BookingHolder vh = new BookingHolder(v); | ||||
|             return vh; | ||||
|         } | ||||
| 
 | ||||
|         // Replace the contents of a view (invoked by the layout manager) | ||||
|         @Override | ||||
|         public void onBindViewHolder(BookingHolder holder, int position) { | ||||
|             Booking booking = bookings[position]; | ||||
|             holder.name.setText(booking.getServiceprovider().getFirstname()+" "+booking.getServiceprovider().getLastname()); | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|         } | ||||
| 
 | ||||
|         // Return the size of your dataset (invoked by the layout manager) | ||||
|         @Override | ||||
|         public int getItemCount() { | ||||
|             return bookings.length; | ||||
|         } | ||||
| 
 | ||||
|         class BookingHolder extends RecyclerView.ViewHolder implements View.OnClickListener{ | ||||
| 
 | ||||
|             TextView name; | ||||
|             TextView rate; | ||||
| 
 | ||||
|             public BookingHolder(View row){ | ||||
|                 super(row); | ||||
|                 name = row.findViewById(R.id.Name); | ||||
|                 rate = row.findViewById(R.id.Rate); | ||||
|                 row.setOnClickListener(this); | ||||
|             } | ||||
|             @Override | ||||
|             public void onClick(View view) { | ||||
|                 TextView nameview = (TextView)view.findViewById(R.id.Name); | ||||
|                 String name = nameview.getText().toString(); | ||||
| 
 | ||||
|             } | ||||
| 
 | ||||
| 
 | ||||
|         } | ||||
| 
 | ||||
| 
 | ||||
|     } | ||||
| } | ||||
|  | @ -1,120 +0,0 @@ | |||
| package com.uottawa.olympus.olympusservices; | ||||
| 
 | ||||
| import android.content.Context; | ||||
| import android.content.Intent; | ||||
| import android.support.annotation.NonNull; | ||||
| import android.support.v7.app.AppCompatActivity; | ||||
| import android.os.Bundle; | ||||
| import android.support.v7.widget.LinearLayoutManager; | ||||
| import android.support.v7.widget.RecyclerView; | ||||
| import android.view.LayoutInflater; | ||||
| import android.view.View; | ||||
| import android.view.ViewGroup; | ||||
| import android.widget.TextView; | ||||
| 
 | ||||
| public class ServiceProviderBookings extends AppCompatActivity { | ||||
| 
 | ||||
|     //field for RecyclerView | ||||
|     private RecyclerView mRecyclerView; | ||||
|     //field for adapter of Recycler view | ||||
|     private RecyclerView.Adapter mAdapter; | ||||
|     //field for layout manager of Recyler view. | ||||
|     private RecyclerView.LayoutManager mLayoutManager; | ||||
| 
 | ||||
|     String username; | ||||
| 
 | ||||
|     @Override | ||||
|     protected void onCreate(Bundle savedInstanceState) { | ||||
|         super.onCreate(savedInstanceState); | ||||
|         setContentView(R.layout.activity_home_owner_bookings); | ||||
|         Bundle bundle = getIntent().getExtras(); | ||||
|         username = bundle.getString("username"); | ||||
| 
 | ||||
|         /* | ||||
|         Booking[] bookings; | ||||
|         //get bookings here | ||||
|         mRecyclerView = (RecyclerView) findViewById(R.id.Bookings); | ||||
|         mLayoutManager = new LinearLayoutManager(this); | ||||
|         mRecyclerView.setLayoutManager(mLayoutManager); | ||||
|         mAdapter = new AdminServicesList.MyAdapter(booking, this); | ||||
|         mRecyclerView.setAdapter(mAdapter); | ||||
|         */ | ||||
|     } | ||||
| 
 | ||||
|     /** | ||||
|      * Override so that previous screen refreshes when pressing the | ||||
|      * back button on this activity of the app. | ||||
|      * | ||||
|      */ | ||||
|     @Override | ||||
|     public void onBackPressed(){ | ||||
|         Intent intent = new Intent(getApplicationContext(),Welcome.class); | ||||
|         intent.putExtra("username", username); | ||||
|         startActivity(intent); | ||||
|         finish(); | ||||
|     } | ||||
| 
 | ||||
|     public class MyAdapter extends RecyclerView.Adapter<MyAdapter.BookingHolder> { | ||||
| 
 | ||||
|         private Booking[] bookings; | ||||
|         private Context context; | ||||
| 
 | ||||
|         // Provide a reference to the views for each data item | ||||
|         // Complex data items may need more than one view per item, and | ||||
|         // you provide access to all the views for a data item in a view holder | ||||
| 
 | ||||
|         // Provide a suitable constructor (depends on the kind of dataset) | ||||
|         public MyAdapter(Booking[] bookings, Context context) { | ||||
|             this.bookings = bookings; | ||||
|         } | ||||
| 
 | ||||
|         // Create new views (invoked by the layout manager) | ||||
|         @NonNull | ||||
|         @Override | ||||
|         public BookingHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { | ||||
|             View v = LayoutInflater.from(parent.getContext()) | ||||
|                     .inflate(R.layout.booking_list_item, parent, false); | ||||
|             BookingHolder vh = new BookingHolder(v); | ||||
|             return vh; | ||||
|         } | ||||
| 
 | ||||
|         // Replace the contents of a view (invoked by the layout manager) | ||||
|         @Override | ||||
|         public void onBindViewHolder(BookingHolder holder, int position) { | ||||
|             Booking booking = bookings[position]; | ||||
|             holder.name.setText(booking.getServiceprovider().getFirstname()+" "+booking.getServiceprovider().getLastname()); | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|         } | ||||
| 
 | ||||
|         // Return the size of your dataset (invoked by the layout manager) | ||||
|         @Override | ||||
|         public int getItemCount() { | ||||
|             return bookings.length; | ||||
|         } | ||||
| 
 | ||||
|         class BookingHolder extends RecyclerView.ViewHolder implements View.OnClickListener{ | ||||
| 
 | ||||
|             TextView name; | ||||
|             TextView rate; | ||||
| 
 | ||||
|             public BookingHolder(View row){ | ||||
|                 super(row); | ||||
|                 name = row.findViewById(R.id.Name); | ||||
|                 rate = row.findViewById(R.id.Rate); | ||||
|                 row.setOnClickListener(this); | ||||
|             } | ||||
|             @Override | ||||
|             public void onClick(View view) { | ||||
|                 TextView nameview = (TextView)view.findViewById(R.id.Name); | ||||
|                 String name = nameview.getText().toString(); | ||||
| 
 | ||||
|             } | ||||
| 
 | ||||
| 
 | ||||
|         } | ||||
| 
 | ||||
| 
 | ||||
|     } | ||||
| } | ||||
|  | @ -79,7 +79,7 @@ public class ServiceProviderWelcome extends AppCompatActivity { | |||
|         finish(); | ||||
|     } | ||||
|     public void SeeBookings(View view){ | ||||
|         Intent intent = new Intent(getApplicationContext(),ServiceProviderBookings.class); | ||||
|         Intent intent = new Intent(getApplicationContext(),Bookings.class); | ||||
|         intent.putExtra("username", username); | ||||
|         startActivity(intent); | ||||
|         finish(); | ||||
|  |  | |||
|  | @ -61,7 +61,7 @@ public class Welcome extends AppCompatActivity { | |||
|     } | ||||
| 
 | ||||
|     public void SeeBookings(View view){ | ||||
|         Intent intent = new Intent(getApplicationContext(),HomeOwnerBookings.class); | ||||
|         Intent intent = new Intent(getApplicationContext(),Bookings.class); | ||||
|         intent.putExtra("username", username); | ||||
|         startActivity(intent); | ||||
|         finish(); | ||||
|  |  | |||
|  | @ -11,7 +11,7 @@ | |||
|     android:paddingRight="@dimen/activity_horizontal_margin" | ||||
|     android:paddingTop="@dimen/activity_vertical_margin" | ||||
|     android:background="@drawable/background" | ||||
|     tools:context=".HomeOwnerBookings"> | ||||
|     tools:context=".Bookings"> | ||||
| 
 | ||||
|     <android.support.v7.widget.RecyclerView | ||||
|         android:id="@+id/Bookings" | ||||
|  | @ -1,22 +0,0 @@ | |||
| <?xml version="1.0" encoding="utf-8"?> | ||||
| <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" | ||||
|     xmlns:app="http://schemas.android.com/apk/res-auto" | ||||
|     xmlns:tools="http://schemas.android.com/tools" | ||||
|     android:layout_width="match_parent" | ||||
|     android:layout_height="match_parent" | ||||
|     android:gravity="center_horizontal" | ||||
|     android:orientation="vertical" | ||||
|     android:paddingBottom="@dimen/activity_vertical_margin" | ||||
|     android:paddingLeft="@dimen/activity_horizontal_margin" | ||||
|     android:paddingRight="@dimen/activity_horizontal_margin" | ||||
|     android:paddingTop="@dimen/activity_vertical_margin" | ||||
|     android:background="@drawable/background" | ||||
|     tools:context=".ServiceProviderBookings"> | ||||
| 
 | ||||
|     <android.support.v7.widget.RecyclerView | ||||
|         android:id="@+id/Bookings" | ||||
|         android:scrollbars="vertical" | ||||
|         android:layout_width="match_parent" | ||||
|         android:layout_height="500dp"/> | ||||
| 
 | ||||
| </LinearLayout> | ||||
|  | @ -122,7 +122,39 @@ | |||
|                 android:layout_width="wrap_content" | ||||
|                 android:layout_height="45dp" | ||||
|                 android:layout_weight="1" | ||||
|                 android:text="Date  Start-End" | ||||
|                 android:text="Date" | ||||
|                 android:textColor="@color/colorBlack" | ||||
|                 android:textSize="15sp" | ||||
|                 /> | ||||
|             <TextView | ||||
|                 android:id="@+id/StartTime" | ||||
|                 android:paddingLeft="10dp" | ||||
|                 android:paddingTop="6dp" | ||||
|                 android:layout_width="wrap_content" | ||||
|                 android:layout_height="45dp" | ||||
|                 android:layout_weight="1" | ||||
|                 android:text="Start" | ||||
|                 android:textColor="@color/colorBlack" | ||||
|                 android:textSize="15sp" | ||||
|                 /> | ||||
|             <TextView | ||||
|                 android:id="@+id/Textfield" | ||||
|                 android:paddingTop="6dp" | ||||
|                 android:layout_width="5dp" | ||||
|                 android:layout_height="45dp" | ||||
|                 android:layout_weight="1" | ||||
|                 android:text="-" | ||||
|                 android:textColor="@color/colorBlack" | ||||
|                 android:textSize="15sp" | ||||
|                 /> | ||||
|             <TextView | ||||
|                 android:id="@+id/EndTime" | ||||
|                 android:paddingLeft="10dp" | ||||
|                 android:paddingTop="6dp" | ||||
|                 android:layout_width="wrap_content" | ||||
|                 android:layout_height="45dp" | ||||
|                 android:layout_weight="1" | ||||
|                 android:text="End" | ||||
|                 android:textColor="@color/colorBlack" | ||||
|                 android:textSize="15sp" | ||||
|                 /> | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue