diff --git a/app/build.gradle b/app/build.gradle
index cb0003f..cd01784 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -46,6 +46,7 @@ dependencies {
compile 'com.github.HITGIF:TextFieldBoxes:1.3.3'
compile 'io.github.luizgrp.sectionedrecyclerviewadapter:sectionedrecyclerviewadapter:1.1.3'
compile 'com.squareup.okhttp3:logging-interceptor:3.9.0'
+ compile 'com.github.badoualy:stepper-indicator:1.0.7'
compile 'q.rorbin:badgeview:1.1.0'
testCompile 'junit:junit:4.12'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index a08c05c..b172af9 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -1,6 +1,5 @@
-
@@ -20,10 +19,11 @@
-
-
-
-
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/java/ch/pizzalink/android/activity/MainActivity.java b/app/src/main/java/ch/pizzalink/android/activity/MainActivity.java
index 3dfb6e7..20c6f96 100644
--- a/app/src/main/java/ch/pizzalink/android/activity/MainActivity.java
+++ b/app/src/main/java/ch/pizzalink/android/activity/MainActivity.java
@@ -52,6 +52,7 @@ public class MainActivity extends BaseActivity {
private FragmentManager fragmentManager;
private String currentFragmentName = "";
private int currentCategoryId = -1;
+ private boolean isStartWithOrderHistory;
private ArrayList categoryList = new ArrayList<>();
private NavigationMenuRecyclerAdapter navigationMenuRecyclerAdapter;
private Badge badge;
@@ -63,9 +64,14 @@ public class MainActivity extends BaseActivity {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
+ getDataFromIntent();
initViews();
}
+ private void getDataFromIntent(){
+ isStartWithOrderHistory = getIntent().getBooleanExtra("isStartWithOrderHistory", false);
+ }
+
private void initViews(){
initNavigationDrawer();
initBottomNavigationView();
@@ -75,7 +81,12 @@ public class MainActivity extends BaseActivity {
private void showStartScreen(){
fragmentManager = getSupportFragmentManager();
- openProductsScreen(categoryList.get(2));
+ if(isStartWithOrderHistory){
+ bottomNavigationView.setCurrentItem(2);
+ }
+ else {
+ openProductsScreen(categoryList.get(2));
+ }
}
private void initBottomNavigationView(){
diff --git a/app/src/main/java/ch/pizzalink/android/activity/OrderActivity.java b/app/src/main/java/ch/pizzalink/android/activity/OrderActivity.java
new file mode 100644
index 0000000..0260669
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/activity/OrderActivity.java
@@ -0,0 +1,138 @@
+package ch.pizzalink.android.activity;
+
+import android.content.Intent;
+import android.os.Bundle;
+import android.support.v4.app.FragmentManager;
+import android.support.v4.view.ViewPager;
+import android.view.View;
+import android.widget.TextView;
+
+import com.badoualy.stepperindicator.StepperIndicator;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+import butterknife.OnClick;
+import ch.pizzalink.android.R;
+import ch.pizzalink.android.adapter.pager.OrderPagerAdapter;
+import ch.pizzalink.android.fragment.order.OrderResultFragment;
+import ch.pizzalink.android.fragment.order.OrderSummaryFragment;
+import ch.pizzalink.android.fragment.order.PaymentMethodFragment;
+import ch.pizzalink.android.fragment.order.ShippingAddressFragment;
+import ch.pizzalink.android.fragment.order.ShippingMethodFragment;
+import ch.pizzalink.android.helper.SharedPrefsHelper;
+import ch.pizzalink.android.view.NoSwipeViewPager;
+import ch.pizzalink.android.view.PizzalinkToolbar;
+
+public class OrderActivity extends BaseActivity {
+
+ @BindView(R.id.orderToolbar) PizzalinkToolbar orderToolbar;
+ @BindView(R.id.stepperIndicator) StepperIndicator stepperIndicator;
+ @BindView(R.id.previousTextView) TextView previousTextView;
+ @BindView(R.id.nextTextView) TextView nextTextView;
+
+ private FragmentManager fragmentManager;
+ private String currentFragmentName = "";
+ private int currentPosition;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_order);
+ ButterKnife.bind(this);
+ initViews();
+ }
+
+ @OnClick({R.id.previousTextView, R.id.nextTextView})
+ protected void onClick(View view){
+ switch (view.getId()){
+ case R.id.previousTextView:
+ if(currentPosition == 0){
+ onBackPressed();
+ break;
+ }
+ openFragment(--currentPosition);
+ break;
+ case R.id.nextTextView:
+ if(currentPosition == 4){
+ Intent mainActivityIntent = new Intent(this, MainActivity.class);
+ mainActivityIntent.putExtra("isStartWithOrderHistory", true);
+ startActivity(mainActivityIntent);
+ SharedPrefsHelper.setCartItemCount(0);
+ finishAffinity();
+ break;
+ }
+ openFragment(++currentPosition);
+ break;
+
+ }
+ }
+
+ private void initViews(){
+ orderToolbar.setBackIconClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ onBackPressed();
+ }
+ });
+ fragmentManager = getSupportFragmentManager();
+ initStepIndicator();
+ openFragment(0);
+ }
+
+ private void initStepIndicator(){
+ /*
+ 5 fragment var, ama sonuncu step'te tik göstersin diye step sayısını, fragment sayısı - 1 yaptık
+ */
+ stepperIndicator.setStepCount(4);
+ /*
+ stepperIndicator.addOnStepClickListener(new StepperIndicator.OnStepClickListener() {
+ @Override
+ public void onStepClicked(int step) {
+ openFragment(step);
+ }
+ });
+ */
+ }
+
+ private void openFragment(int position){
+ switch (position){
+ case 0:
+ fragmentManager.beginTransaction().replace(R.id.orderFragmentsContainer,
+ ShippingMethodFragment.newInstance()).commit();
+ break;
+ case 1:
+ fragmentManager.beginTransaction().replace(R.id.orderFragmentsContainer,
+ ShippingAddressFragment.newInstance()).commit();
+ break;
+ case 2:
+ fragmentManager.beginTransaction().replace(R.id.orderFragmentsContainer,
+ PaymentMethodFragment.newInstance()).commit();
+ break;
+ case 3:
+ fragmentManager.beginTransaction().replace(R.id.orderFragmentsContainer,
+ OrderSummaryFragment.newInstance()).commit();
+ break;
+ case 4:
+ fragmentManager.beginTransaction().replace(R.id.orderFragmentsContainer,
+ OrderResultFragment.newInstance()).commit();
+ break;
+ }
+ stepperIndicator.setCurrentStep(position);
+
+ }
+
+ /*
+ private void initOrderViewPager(){
+ orderPagerAdapter = new OrderPagerAdapter(getSupportFragmentManager());
+ orderViewPager.setAdapter(orderPagerAdapter);
+ stepperIndicator.setViewPager(orderViewPager, true);
+ stepperIndicator.setCurrentStep();
+ stepperIndicator.addOnStepClickListener(new StepperIndicator.OnStepClickListener() {
+ @Override
+ public void onStepClicked(int step) {
+ orderViewPager.setCurrentItem(step, true);
+ }
+ });
+ }
+ */
+}
diff --git a/app/src/main/java/ch/pizzalink/android/adapter/pager/OrderPagerAdapter.java b/app/src/main/java/ch/pizzalink/android/adapter/pager/OrderPagerAdapter.java
new file mode 100644
index 0000000..3d1cd6c
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/adapter/pager/OrderPagerAdapter.java
@@ -0,0 +1,52 @@
+package ch.pizzalink.android.adapter.pager;
+
+import android.support.v4.app.Fragment;
+import android.support.v4.app.FragmentManager;
+import android.support.v4.app.FragmentPagerAdapter;
+
+import ch.pizzalink.android.fragment.order.OrderResultFragment;
+import ch.pizzalink.android.fragment.order.OrderSummaryFragment;
+import ch.pizzalink.android.fragment.order.PaymentMethodFragment;
+import ch.pizzalink.android.fragment.order.ShippingAddressFragment;
+import ch.pizzalink.android.fragment.order.ShippingMethodFragment;
+
+/**
+ * Created by cimenmus on 17/10/2017.
+ */
+
+public class OrderPagerAdapter extends FragmentPagerAdapter {
+
+ public OrderPagerAdapter(FragmentManager fm) {
+ super(fm);
+ }
+
+ @Override
+ public Fragment getItem(int position) {
+ switch (position){
+ case 0:
+ return ShippingMethodFragment.newInstance();
+ case 1:
+ return ShippingAddressFragment.newInstance();
+ case 2:
+ return PaymentMethodFragment.newInstance();
+ case 3:
+ return OrderSummaryFragment.newInstance();
+ case 4:
+ return OrderResultFragment.newInstance();
+ default:
+ return ShippingMethodFragment.newInstance();
+ }
+ }
+
+ @Override
+ public int getCount() {
+ return 5;
+ }
+
+ /*
+ @Override
+ public CharSequence getPageTitle(int position) {
+ return "Page " + position;
+ }
+ */
+}
\ No newline at end of file
diff --git a/app/src/main/java/ch/pizzalink/android/adapter/recycler/PaymentMethodsRecyclerAdapter.java b/app/src/main/java/ch/pizzalink/android/adapter/recycler/PaymentMethodsRecyclerAdapter.java
new file mode 100644
index 0000000..83088df
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/adapter/recycler/PaymentMethodsRecyclerAdapter.java
@@ -0,0 +1,119 @@
+package ch.pizzalink.android.adapter.recycler;
+
+import android.support.v7.widget.AppCompatRadioButton;
+import android.support.v7.widget.RecyclerView;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.TextView;
+
+import java.util.ArrayList;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+import ch.pizzalink.android.R;
+import ch.pizzalink.android.interfaces.RecyclerItemClickListener;
+import ch.pizzalink.android.model.PaymentMethodModel;
+
+/**
+ * Created by cimenmus on 17/10/2017.
+ */
+
+public class PaymentMethodsRecyclerAdapter extends RecyclerView.Adapter{
+
+ private final int HOLDER_PAYMENT_METHOD = 0;
+ private final int HOLDER_SPACE = 1;
+
+ private ArrayList paymentMethodList = new ArrayList<>();
+ private RecyclerItemClickListener recyclerItemClickListener;
+
+ public static class OrderViewHolder extends RecyclerView.ViewHolder {
+
+ @BindView(R.id.paymentMethodRadioButton) AppCompatRadioButton paymentMethodRadioButton;
+
+ public OrderViewHolder(final View view, final RecyclerItemClickListener recyclerItemClickListener) {
+ super(view);
+ ButterKnife.bind(this, view);
+ view.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ if(recyclerItemClickListener != null)
+ recyclerItemClickListener.onItemClick(view, getAdapterPosition());
+ }
+ });
+ }
+ }
+
+ public static class SpaceViewHolder extends RecyclerView.ViewHolder{
+ public SpaceViewHolder(final View view) {
+ super(view);
+ }
+ }
+
+ @Override
+ public int getItemViewType(int position) {
+
+ if(position == paymentMethodList.size())
+ return HOLDER_SPACE;
+
+ return HOLDER_PAYMENT_METHOD;
+ }
+
+ public PaymentMethodsRecyclerAdapter(ArrayList paymentMethodList,
+ RecyclerItemClickListener recyclerItemClickListener){
+ this.paymentMethodList = paymentMethodList;
+ this.recyclerItemClickListener = recyclerItemClickListener;
+ }
+
+ @Override
+ public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int viewType) {
+
+ RecyclerView.ViewHolder viewHolder;
+ View view;
+ LayoutInflater inflater = LayoutInflater.from(viewGroup.getContext());
+
+ switch (viewType){
+
+ case HOLDER_PAYMENT_METHOD:
+ view = inflater.inflate(R.layout.row_payment_method, viewGroup, false);
+ viewHolder = new OrderViewHolder(view, recyclerItemClickListener);
+ break;
+
+ case HOLDER_SPACE:
+ view = inflater.inflate(R.layout.row_space, viewGroup, false);
+ viewHolder = new SpaceViewHolder(view);
+ break;
+
+ default:
+ view = inflater.inflate(R.layout.row_payment_method, viewGroup, false);
+ viewHolder = new OrderViewHolder(view, recyclerItemClickListener);
+ break;
+ }
+
+ return viewHolder;
+ }
+
+
+ @Override
+ public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {
+
+ switch (holder.getItemViewType()){
+ case HOLDER_PAYMENT_METHOD :
+ OrderViewHolder orderViewHolder = (OrderViewHolder) holder;
+ orderViewHolder.paymentMethodRadioButton.setText(paymentMethodList.get(position).getName());
+ orderViewHolder.paymentMethodRadioButton.setChecked(paymentMethodList.get(position).isSelected());
+ break;
+
+ case HOLDER_SPACE :
+ SpaceViewHolder spaceViewHolder = (SpaceViewHolder) holder;
+ break;
+ }
+
+ }
+
+ @Override
+ public int getItemCount() {
+ return paymentMethodList.size() + 1 ;
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/ch/pizzalink/android/adapter/recycler/ShippingAddressesRecyclerAdapter.java b/app/src/main/java/ch/pizzalink/android/adapter/recycler/ShippingAddressesRecyclerAdapter.java
new file mode 100644
index 0000000..2b6dcaf
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/adapter/recycler/ShippingAddressesRecyclerAdapter.java
@@ -0,0 +1,119 @@
+package ch.pizzalink.android.adapter.recycler;
+
+import android.support.v7.widget.AppCompatRadioButton;
+import android.support.v7.widget.RecyclerView;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.TextView;
+
+import java.util.ArrayList;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+import ch.pizzalink.android.R;
+import ch.pizzalink.android.interfaces.RecyclerItemClickListener;
+import ch.pizzalink.android.model.AddressModel;
+
+/**
+ * Created by cimenmus on 17/10/2017.
+ */
+
+public class ShippingAddressesRecyclerAdapter extends RecyclerView.Adapter{
+
+ private final int HOLDER_SHIPPING_ADDRESS = 0;
+ private final int HOLDER_SPACE = 1;
+
+ private ArrayList addressList = new ArrayList<>();
+ private RecyclerItemClickListener recyclerItemClickListener;
+
+ public static class OrderViewHolder extends RecyclerView.ViewHolder {
+
+ @BindView(R.id.shipmentAddressRadioButton) AppCompatRadioButton shipmentAddressRadioButton;
+
+ public OrderViewHolder(final View view, final RecyclerItemClickListener recyclerItemClickListener) {
+ super(view);
+ ButterKnife.bind(this, view);
+ view.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ if(recyclerItemClickListener != null)
+ recyclerItemClickListener.onItemClick(view, getAdapterPosition());
+ }
+ });
+ }
+ }
+
+ public static class SpaceViewHolder extends RecyclerView.ViewHolder{
+ public SpaceViewHolder(final View view) {
+ super(view);
+ }
+ }
+
+ @Override
+ public int getItemViewType(int position) {
+
+ if(position == addressList.size())
+ return HOLDER_SPACE;
+
+ return HOLDER_SHIPPING_ADDRESS;
+ }
+
+ public ShippingAddressesRecyclerAdapter(ArrayList addressList,
+ RecyclerItemClickListener recyclerItemClickListener){
+ this.addressList = addressList;
+ this.recyclerItemClickListener = recyclerItemClickListener;
+ }
+
+ @Override
+ public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int viewType) {
+
+ RecyclerView.ViewHolder viewHolder;
+ View view;
+ LayoutInflater inflater = LayoutInflater.from(viewGroup.getContext());
+
+ switch (viewType){
+
+ case HOLDER_SHIPPING_ADDRESS:
+ view = inflater.inflate(R.layout.row_shipment_address, viewGroup, false);
+ viewHolder = new OrderViewHolder(view, recyclerItemClickListener);
+ break;
+
+ case HOLDER_SPACE:
+ view = inflater.inflate(R.layout.row_space, viewGroup, false);
+ viewHolder = new SpaceViewHolder(view);
+ break;
+
+ default:
+ view = inflater.inflate(R.layout.row_shipment_address, viewGroup, false);
+ viewHolder = new OrderViewHolder(view, recyclerItemClickListener);
+ break;
+ }
+
+ return viewHolder;
+ }
+
+
+ @Override
+ public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {
+
+ switch (holder.getItemViewType()){
+ case HOLDER_SHIPPING_ADDRESS :
+ OrderViewHolder orderViewHolder = (OrderViewHolder) holder;
+ orderViewHolder.shipmentAddressRadioButton.setText(addressList.get(position).getAddress());
+ orderViewHolder.shipmentAddressRadioButton.setChecked(addressList.get(position).isSelected());
+ break;
+
+ case HOLDER_SPACE :
+ SpaceViewHolder spaceViewHolder = (SpaceViewHolder) holder;
+ break;
+ }
+
+ }
+
+ @Override
+ public int getItemCount() {
+ return addressList.size() + 1 ;
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/ch/pizzalink/android/adapter/recycler/ShippingMethodsRecyclerAdapter.java b/app/src/main/java/ch/pizzalink/android/adapter/recycler/ShippingMethodsRecyclerAdapter.java
new file mode 100644
index 0000000..38fe98e
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/adapter/recycler/ShippingMethodsRecyclerAdapter.java
@@ -0,0 +1,121 @@
+package ch.pizzalink.android.adapter.recycler;
+
+import android.support.v7.widget.AppCompatRadioButton;
+import android.support.v7.widget.RecyclerView;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.TextView;
+
+import java.util.ArrayList;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+import ch.pizzalink.android.R;
+import ch.pizzalink.android.interfaces.RecyclerItemClickListener;
+import ch.pizzalink.android.model.ShippingMethodModel;
+
+/**
+ * Created by cimenmus on 17/10/2017.
+ */
+
+public class ShippingMethodsRecyclerAdapter extends RecyclerView.Adapter{
+
+ private final int HOLDER_SHIPPING_METHOD = 0;
+ private final int HOLDER_SPACE = 1;
+
+ private ArrayList shippingMethodList = new ArrayList<>();
+ private RecyclerItemClickListener recyclerItemClickListener;
+
+ public static class OrderViewHolder extends RecyclerView.ViewHolder {
+
+ @BindView(R.id.shipmentMethodRadioButton) AppCompatRadioButton shipmentMethodRadioButton;
+ @BindView(R.id.shipmentMethodPriceTextView) TextView shipmentMethodPriceTextView;
+
+ public OrderViewHolder(final View view, final RecyclerItemClickListener recyclerItemClickListener) {
+ super(view);
+ ButterKnife.bind(this, view);
+ view.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ if(recyclerItemClickListener != null)
+ recyclerItemClickListener.onItemClick(view, getAdapterPosition());
+ }
+ });
+ }
+ }
+
+ public static class SpaceViewHolder extends RecyclerView.ViewHolder{
+ public SpaceViewHolder(final View view) {
+ super(view);
+ }
+ }
+
+ @Override
+ public int getItemViewType(int position) {
+
+ if(position == shippingMethodList.size())
+ return HOLDER_SPACE;
+
+ return HOLDER_SHIPPING_METHOD;
+ }
+
+ public ShippingMethodsRecyclerAdapter(ArrayList shippingMethodList,
+ RecyclerItemClickListener recyclerItemClickListener){
+ this.shippingMethodList = shippingMethodList;
+ this.recyclerItemClickListener = recyclerItemClickListener;
+ }
+
+ @Override
+ public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int viewType) {
+
+ RecyclerView.ViewHolder viewHolder;
+ View view;
+ LayoutInflater inflater = LayoutInflater.from(viewGroup.getContext());
+
+ switch (viewType){
+
+ case HOLDER_SHIPPING_METHOD:
+ view = inflater.inflate(R.layout.row_shipment_method, viewGroup, false);
+ viewHolder = new OrderViewHolder(view, recyclerItemClickListener);
+ break;
+
+ case HOLDER_SPACE:
+ view = inflater.inflate(R.layout.row_space, viewGroup, false);
+ viewHolder = new SpaceViewHolder(view);
+ break;
+
+ default:
+ view = inflater.inflate(R.layout.row_shipment_method, viewGroup, false);
+ viewHolder = new OrderViewHolder(view, recyclerItemClickListener);
+ break;
+ }
+
+ return viewHolder;
+ }
+
+
+ @Override
+ public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {
+
+ switch (holder.getItemViewType()){
+ case HOLDER_SHIPPING_METHOD :
+ OrderViewHolder orderViewHolder = (OrderViewHolder) holder;
+ orderViewHolder.shipmentMethodPriceTextView.setText(shippingMethodList.get(position).getPrice());
+ orderViewHolder.shipmentMethodRadioButton.setText(shippingMethodList.get(position).getName());
+ orderViewHolder.shipmentMethodRadioButton.setChecked(shippingMethodList.get(position).isSelected());
+ break;
+
+ case HOLDER_SPACE :
+ SpaceViewHolder spaceViewHolder = (SpaceViewHolder) holder;
+ break;
+ }
+
+ }
+
+ @Override
+ public int getItemCount() {
+ return shippingMethodList.size() + 1 ;
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/ch/pizzalink/android/api/ApiEndPoints.java b/app/src/main/java/ch/pizzalink/android/api/ApiEndPoints.java
index 0b4e27a..40e422f 100644
--- a/app/src/main/java/ch/pizzalink/android/api/ApiEndPoints.java
+++ b/app/src/main/java/ch/pizzalink/android/api/ApiEndPoints.java
@@ -14,8 +14,10 @@ public class ApiEndPoints {
public static final String API_GET_CLEAR_CART = PREFIX + "clearBasket" + SUFFIX;
public static final String API_GET_PRODUCTS_BY_CATEGORY = PREFIX + "getProductsByCategory" + SUFFIX;
public static final String API_GET_PRODUCT = PREFIX + "getProduct" + SUFFIX;
- //public static final String API_ADD_PRODUCTS_TO_BASKET = PREFIX + "addProductsToBasket" + SUFFIX + "&token=sor37aVmOYP1v4OxpCsv11w3DkeGDttB";
- //public static final String API_ADD_PRODUCTS_TO_BASKET = PREFIX + "addProductsToBasket" + SUFFIX;
public static final String API_ADD_PRODUCTS_TO_BASKET = PREFIX + "addProductsToBasket" + SUFFIX + "&token=";
+ public static final String API_GET_SHIPPING_METHODS = PREFIX + "getShippingMethods" + SUFFIX;
+ public static final String API_GET_CUSTOMER_ADDRESSES = PREFIX + "getAddresses" + SUFFIX;
+ public static final String API_GET_PAYMENT_METHODS = PREFIX + "getPaymentMethods" + SUFFIX;
+
}
diff --git a/app/src/main/java/ch/pizzalink/android/api/ApiInterface.java b/app/src/main/java/ch/pizzalink/android/api/ApiInterface.java
index 6a41da4..cc2760c 100644
--- a/app/src/main/java/ch/pizzalink/android/api/ApiInterface.java
+++ b/app/src/main/java/ch/pizzalink/android/api/ApiInterface.java
@@ -3,6 +3,9 @@ package ch.pizzalink.android.api;
import java.util.HashMap;
import ch.pizzalink.android.model.AddProductToBasketResponseModel;
+import ch.pizzalink.android.model.AddressModel;
+import ch.pizzalink.android.model.PaymentMethodModel;
+import ch.pizzalink.android.model.ShippingMethodModel;
import ch.pizzalink.android.model.cart.CartInfoModel;
import ch.pizzalink.android.model.CategoryModel;
import ch.pizzalink.android.model.OrderModel;
@@ -77,5 +80,13 @@ public interface ApiInterface {
@POST
Call> addProductsToBasket(@Url String url,
@FieldMap HashMap body);
+ @GET(ApiEndPoints.API_GET_SHIPPING_METHODS)
+ Call> getShippingMethods(@Query("token") String token);
+
+ @GET(ApiEndPoints.API_GET_CUSTOMER_ADDRESSES)
+ Call> getCustomerAddresses(@Query("token") String token);
+
+ @GET(ApiEndPoints.API_GET_PAYMENT_METHODS)
+ Call> getPaymentMethods(@Query("token") String token);
}
diff --git a/app/src/main/java/ch/pizzalink/android/fragment/CartFragment.java b/app/src/main/java/ch/pizzalink/android/fragment/CartFragment.java
index bfa6015..234086c 100644
--- a/app/src/main/java/ch/pizzalink/android/fragment/CartFragment.java
+++ b/app/src/main/java/ch/pizzalink/android/fragment/CartFragment.java
@@ -1,5 +1,6 @@
package ch.pizzalink.android.fragment;
+import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v7.widget.LinearLayoutManager;
@@ -25,6 +26,7 @@ import butterknife.OnClick;
import ch.pizzalink.android.R;
import ch.pizzalink.android.activity.BaseActivity;
import ch.pizzalink.android.activity.MainActivity;
+import ch.pizzalink.android.activity.OrderActivity;
import ch.pizzalink.android.adapter.recycler.CartRecyclerAdapter;
import ch.pizzalink.android.api.ApiErrorUtils;
import ch.pizzalink.android.api.ApiService;
@@ -105,6 +107,7 @@ public class CartFragment extends BaseFragment {
});
break;
case R.id.continueCartButton:
+ startActivity(new Intent(BaseActivity.currentActivity, OrderActivity.class));
break;
}
}
diff --git a/app/src/main/java/ch/pizzalink/android/fragment/order/OrderResultFragment.java b/app/src/main/java/ch/pizzalink/android/fragment/order/OrderResultFragment.java
new file mode 100644
index 0000000..9e5cea4
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/fragment/order/OrderResultFragment.java
@@ -0,0 +1,42 @@
+package ch.pizzalink.android.fragment.order;
+
+import android.os.Bundle;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import butterknife.BindString;
+import butterknife.ButterKnife;
+import ch.pizzalink.android.R;
+import ch.pizzalink.android.fragment.BaseFragment;
+
+/**
+ * Created by cimenmus on 17/10/2017.
+ */
+
+public class OrderResultFragment extends BaseFragment {
+
+ public static final java.lang.String FRAGMENT_NAME = "orderResultFragment";
+
+ public OrderResultFragment() {}
+
+ public static OrderResultFragment newInstance() {
+ return new OrderResultFragment();
+ }
+
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ }
+
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ View view = inflater.inflate(R.layout.fragment_order_result, container, false);
+ ButterKnife.bind(this, view);
+ initViews();
+ return view;
+ }
+
+ private void initViews(){
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/ch/pizzalink/android/fragment/order/OrderSummaryFragment.java b/app/src/main/java/ch/pizzalink/android/fragment/order/OrderSummaryFragment.java
new file mode 100644
index 0000000..1a2834d
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/fragment/order/OrderSummaryFragment.java
@@ -0,0 +1,42 @@
+package ch.pizzalink.android.fragment.order;
+
+import android.os.Bundle;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import butterknife.BindString;
+import butterknife.ButterKnife;
+import ch.pizzalink.android.R;
+import ch.pizzalink.android.fragment.BaseFragment;
+
+/**
+ * Created by cimenmus on 17/10/2017.
+ */
+
+public class OrderSummaryFragment extends BaseFragment {
+
+ public static final java.lang.String FRAGMENT_NAME = "orderSummaryFragment";
+
+ public OrderSummaryFragment() {}
+
+ public static OrderSummaryFragment newInstance() {
+ return new OrderSummaryFragment();
+ }
+
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ }
+
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ View view = inflater.inflate(R.layout.fragment_order_summary, container, false);
+ ButterKnife.bind(this, view);
+ initViews();
+ return view;
+ }
+
+ private void initViews(){
+ }
+}
diff --git a/app/src/main/java/ch/pizzalink/android/fragment/order/PaymentMethodFragment.java b/app/src/main/java/ch/pizzalink/android/fragment/order/PaymentMethodFragment.java
new file mode 100644
index 0000000..c44d0e3
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/fragment/order/PaymentMethodFragment.java
@@ -0,0 +1,124 @@
+package ch.pizzalink.android.fragment.order;
+
+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 java.util.ArrayList;
+
+import butterknife.BindString;
+import butterknife.BindView;
+import butterknife.ButterKnife;
+import ch.pizzalink.android.R;
+import ch.pizzalink.android.activity.BaseActivity;
+import ch.pizzalink.android.adapter.recycler.PaymentMethodsRecyclerAdapter;
+import ch.pizzalink.android.api.ApiErrorUtils;
+import ch.pizzalink.android.api.ApiService;
+import ch.pizzalink.android.api.ResponseArray;
+import ch.pizzalink.android.fragment.BaseFragment;
+import ch.pizzalink.android.helper.DialogHelper;
+import ch.pizzalink.android.helper.SessionHelper;
+import ch.pizzalink.android.interfaces.RecyclerItemClickListener;
+import ch.pizzalink.android.model.PaymentMethodModel;
+import retrofit2.Call;
+import retrofit2.Callback;
+import retrofit2.Response;
+
+/**
+ * Created by cimenmus on 17/10/2017.
+ */
+
+public class PaymentMethodFragment extends BaseFragment {
+
+ @BindView(R.id.paymentMethodsRecyclerView) RecyclerView paymentMethodsRecyclerView;
+
+ private ArrayList paymentMethodList = new ArrayList<>();
+ private PaymentMethodsRecyclerAdapter paymentMethodsRecyclerAdapter;
+
+ public static final java.lang.String FRAGMENT_NAME = "paymentMethodFragment";
+
+ public PaymentMethodFragment() {}
+
+ public static PaymentMethodFragment newInstance() {
+ return new PaymentMethodFragment();
+ }
+
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ }
+
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ View view = inflater.inflate(R.layout.fragment_payment_method, container, false);
+ ButterKnife.bind(this, view);
+ initViews();
+ //getPaymentMethods();
+ createSamplePaymentModels();
+ return view;
+ }
+
+ private void initViews(){
+ initRecyclerView();
+ }
+
+ private void getPaymentMethods(){
+ DialogHelper.showLoadingDialog();
+ Call> call = ApiService.apiInterface.getPaymentMethods(
+ SessionHelper.getCustomerToken().getToken());
+ call.enqueue(new Callback>() {
+ @Override
+ public void onResponse(Call> call, Response> response) {
+ DialogHelper.hideLoadingDialog();
+ if(response.isSuccessful() &&
+ response.body().getData() != null &&
+ response.body().isSuccess()){
+ fillAndNotifyAdapter(response.body().getData());
+ }
+ else {
+ ApiErrorUtils.parseError(response);
+ }
+ }
+
+ @Override
+ public void onFailure(Call> call, Throwable t) {
+ DialogHelper.hideLoadingDialog();
+ DialogHelper.showFailedDialog();
+ }
+ });
+ }
+
+ private void fillAndNotifyAdapter(ArrayList paymentMethodModels){
+ PaymentMethodModel.checkNull(paymentMethodModels);
+ paymentMethodList.clear();
+ paymentMethodList.addAll(paymentMethodModels);
+ paymentMethodsRecyclerAdapter.notifyDataSetChanged();
+ }
+
+ private void initRecyclerView(){
+ paymentMethodsRecyclerAdapter = new PaymentMethodsRecyclerAdapter(paymentMethodList, new RecyclerItemClickListener() {
+ @Override
+ public void onItemClick(View view, int position) {
+ for (PaymentMethodModel paymentMethodModel : paymentMethodList){
+ paymentMethodModel.setSelected(false);
+ }
+ paymentMethodList.get(position).setSelected(true);
+ paymentMethodsRecyclerAdapter.notifyDataSetChanged();
+ }
+ });
+ LinearLayoutManager layoutManager = new LinearLayoutManager(BaseActivity.currentActivity);
+ paymentMethodsRecyclerView.setLayoutManager(layoutManager);
+ paymentMethodsRecyclerView.setAdapter(paymentMethodsRecyclerAdapter);
+ }
+
+ private void createSamplePaymentModels(){
+ paymentMethodList.add(new PaymentMethodModel("Kapıda Ödeme"));
+ paymentMethodList.add(new PaymentMethodModel("Havale"));
+ paymentMethodList.add(new PaymentMethodModel("Kredi Kartı"));
+ paymentMethodList.add(new PaymentMethodModel("Banka kartı"));
+ paymentMethodsRecyclerAdapter.notifyDataSetChanged();
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/ch/pizzalink/android/fragment/order/ShippingAddressFragment.java b/app/src/main/java/ch/pizzalink/android/fragment/order/ShippingAddressFragment.java
new file mode 100644
index 0000000..118059e
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/fragment/order/ShippingAddressFragment.java
@@ -0,0 +1,114 @@
+package ch.pizzalink.android.fragment.order;
+
+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 java.util.ArrayList;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+import ch.pizzalink.android.R;
+import ch.pizzalink.android.activity.BaseActivity;
+import ch.pizzalink.android.adapter.recycler.ShippingAddressesRecyclerAdapter;
+import ch.pizzalink.android.api.ApiErrorUtils;
+import ch.pizzalink.android.api.ApiService;
+import ch.pizzalink.android.api.ResponseArray;
+import ch.pizzalink.android.fragment.BaseFragment;
+import ch.pizzalink.android.helper.DialogHelper;
+import ch.pizzalink.android.helper.SessionHelper;
+import ch.pizzalink.android.interfaces.RecyclerItemClickListener;
+import ch.pizzalink.android.model.AddressModel;
+import retrofit2.Call;
+import retrofit2.Callback;
+import retrofit2.Response;
+
+/**
+ * Created by cimenmus on 17/10/2017.
+ */
+
+public class ShippingAddressFragment extends BaseFragment {
+
+ @BindView(R.id.shippingAddressesRecyclerView) RecyclerView shippingAddressesRecyclerView;
+
+ private ArrayList addressList = new ArrayList<>();
+ private ShippingAddressesRecyclerAdapter shippingAddressesRecyclerAdapter;
+
+ public static final java.lang.String FRAGMENT_NAME = "shippingAddressMethod";
+
+ public ShippingAddressFragment() {}
+
+ public static ShippingAddressFragment newInstance() {
+ return new ShippingAddressFragment();
+ }
+
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ }
+
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ View view = inflater.inflate(R.layout.fragment_shipping_address, container, false);
+ ButterKnife.bind(this, view);
+ initViews();
+ getCustomerShippingAddresses();
+ return view;
+ }
+
+ private void initViews(){
+ initRecyclerView();
+ }
+
+ private void getCustomerShippingAddresses(){
+ DialogHelper.showLoadingDialog();
+ Call> call = ApiService.apiInterface.getCustomerAddresses(
+ SessionHelper.getCustomerToken().getToken());
+ call.enqueue(new Callback>() {
+ @Override
+ public void onResponse(Call> call, Response> response) {
+ DialogHelper.hideLoadingDialog();
+ if(response.isSuccessful() &&
+ response.body().getData() != null &&
+ response.body().isSuccess()){
+ fillAndNotifyAdapter(response.body().getData());
+ }
+ else {
+ ApiErrorUtils.parseError(response);
+ }
+ }
+
+ @Override
+ public void onFailure(Call> call, Throwable t) {
+ DialogHelper.hideLoadingDialog();
+ DialogHelper.showFailedDialog();
+ }
+ });
+ }
+
+ private void fillAndNotifyAdapter(ArrayList addressModels){
+ AddressModel.checkNull(addressModels);
+ addressList.clear();
+ addressList.addAll(addressModels);
+ shippingAddressesRecyclerAdapter.notifyDataSetChanged();
+ }
+
+ private void initRecyclerView(){
+ shippingAddressesRecyclerAdapter = new ShippingAddressesRecyclerAdapter(addressList, new RecyclerItemClickListener() {
+ @Override
+ public void onItemClick(View view, int position) {
+ for(AddressModel addressModel : addressList){
+ addressModel.setSelected(false);
+ }
+ addressList.get(position).setSelected(true);
+ shippingAddressesRecyclerAdapter.notifyDataSetChanged();
+ }
+ });
+ LinearLayoutManager layoutManager = new LinearLayoutManager(BaseActivity.currentActivity);
+ shippingAddressesRecyclerView.setLayoutManager(layoutManager);
+ shippingAddressesRecyclerView.setAdapter(shippingAddressesRecyclerAdapter);
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/ch/pizzalink/android/fragment/order/ShippingMethodFragment.java b/app/src/main/java/ch/pizzalink/android/fragment/order/ShippingMethodFragment.java
new file mode 100644
index 0000000..1d89e05
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/fragment/order/ShippingMethodFragment.java
@@ -0,0 +1,122 @@
+package ch.pizzalink.android.fragment.order;
+
+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 java.util.ArrayList;
+
+import butterknife.BindString;
+import butterknife.BindView;
+import butterknife.ButterKnife;
+import ch.pizzalink.android.R;
+import ch.pizzalink.android.activity.BaseActivity;
+import ch.pizzalink.android.adapter.recycler.ShippingMethodsRecyclerAdapter;
+import ch.pizzalink.android.api.ApiErrorUtils;
+import ch.pizzalink.android.api.ApiService;
+import ch.pizzalink.android.api.ResponseArray;
+import ch.pizzalink.android.fragment.BaseFragment;
+import ch.pizzalink.android.helper.DialogHelper;
+import ch.pizzalink.android.helper.SessionHelper;
+import ch.pizzalink.android.interfaces.RecyclerItemClickListener;
+import ch.pizzalink.android.model.ShippingMethodModel;
+import retrofit2.Call;
+import retrofit2.Callback;
+import retrofit2.Response;
+
+/**
+ * Created by cimenmus on 17/10/2017.
+ */
+
+public class ShippingMethodFragment extends BaseFragment {
+
+ @BindView(R.id.shippingMethodsRecyclerView) RecyclerView shippingMethodsRecyclerView;
+
+ private ArrayList shippingMethodList = new ArrayList<>();
+ private ShippingMethodsRecyclerAdapter shippingMethodsRecyclerAdapter;
+
+ public static final java.lang.String FRAGMENT_NAME = "shippingMethodFragment";
+
+ public ShippingMethodFragment() {}
+
+ public static ShippingMethodFragment newInstance() {
+ return new ShippingMethodFragment();
+ }
+
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ }
+
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ View view = inflater.inflate(R.layout.fragment_shipping_method, container, false);
+ ButterKnife.bind(this, view);
+ initViews();
+ //getShippingMethods();
+ createSampleShippingMethods();
+ return view;
+ }
+
+ private void initViews(){
+ initRecyclerView();
+ }
+
+ private void getShippingMethods(){
+ DialogHelper.showLoadingDialog();
+ Call> call = ApiService.apiInterface.getShippingMethods(
+ SessionHelper.getCustomerToken().getToken());
+ call.enqueue(new Callback>() {
+ @Override
+ public void onResponse(Call> call, Response> response) {
+ DialogHelper.hideLoadingDialog();
+ if(response.isSuccessful() &&
+ response.body().getData() != null &&
+ response.body().isSuccess()){
+ fillAndNotifyAdapter(response.body().getData());
+ }
+ else {
+ ApiErrorUtils.parseError(response);
+ }
+ }
+
+ @Override
+ public void onFailure(Call> call, Throwable t) {
+ DialogHelper.hideLoadingDialog();
+ DialogHelper.showFailedDialog();
+ }
+ });
+ }
+
+ private void fillAndNotifyAdapter(ArrayList shippingMethodModels){
+ ShippingMethodModel.checkNull(shippingMethodModels);
+ shippingMethodList.clear();
+ shippingMethodList.addAll(shippingMethodModels);
+ shippingMethodsRecyclerAdapter.notifyDataSetChanged();
+ }
+
+ private void initRecyclerView(){
+ shippingMethodsRecyclerAdapter = new ShippingMethodsRecyclerAdapter(shippingMethodList, new RecyclerItemClickListener() {
+ @Override
+ public void onItemClick(View view, int position) {
+ for(ShippingMethodModel shippingMethodModel : shippingMethodList){
+ shippingMethodModel.setSelected(false);
+ }
+ shippingMethodList.get(position).setSelected(true);
+ shippingMethodsRecyclerAdapter.notifyDataSetChanged();
+ }
+ });
+ LinearLayoutManager layoutManager = new LinearLayoutManager(BaseActivity.currentActivity);
+ shippingMethodsRecyclerView.setLayoutManager(layoutManager);
+ shippingMethodsRecyclerView.setAdapter(shippingMethodsRecyclerAdapter);
+ }
+
+ private void createSampleShippingMethods(){
+ shippingMethodList.add(new ShippingMethodModel("Gel al", "CHF 0.00"));
+ shippingMethodList.add(new ShippingMethodModel("Kapına gelsin", "CHF 5.00"));
+ shippingMethodsRecyclerAdapter.notifyDataSetChanged();
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/ch/pizzalink/android/model/AddressModel.java b/app/src/main/java/ch/pizzalink/android/model/AddressModel.java
new file mode 100644
index 0000000..6678308
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/model/AddressModel.java
@@ -0,0 +1,59 @@
+package ch.pizzalink.android.model;
+
+import com.google.gson.annotations.Expose;
+import com.google.gson.annotations.SerializedName;
+
+import java.util.ArrayList;
+
+/**
+ * Created by cimenmus on 17/10/2017.
+ */
+
+public class AddressModel {
+
+ @Expose
+ @SerializedName("address_id")
+ private String id;
+
+ private String address;
+ private boolean isSelected;
+
+ private void checkNull(){
+
+ if(id == null)
+ id = "";
+
+ if(address == null)
+ address = "";
+ }
+
+ public static void checkNull(ArrayList addressModelList){
+ for(AddressModel addressModel : addressModelList){
+ addressModel.checkNull();
+ }
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getAddress() {
+ return address;
+ }
+
+ public void setAddress(String address) {
+ this.address = address;
+ }
+
+ public boolean isSelected() {
+ return isSelected;
+ }
+
+ public void setSelected(boolean selected) {
+ isSelected = selected;
+ }
+}
diff --git a/app/src/main/java/ch/pizzalink/android/model/CreateOrderModel.java b/app/src/main/java/ch/pizzalink/android/model/CreateOrderModel.java
new file mode 100644
index 0000000..f672b58
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/model/CreateOrderModel.java
@@ -0,0 +1,8 @@
+package ch.pizzalink.android.model;
+
+/**
+ * Created by cimenmus on 17/10/2017.
+ */
+
+public class CreateOrderModel {
+}
diff --git a/app/src/main/java/ch/pizzalink/android/model/PaymentMethodModel.java b/app/src/main/java/ch/pizzalink/android/model/PaymentMethodModel.java
new file mode 100644
index 0000000..a157fc6
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/model/PaymentMethodModel.java
@@ -0,0 +1,52 @@
+package ch.pizzalink.android.model;
+
+import java.util.ArrayList;
+
+/**
+ * Created by cimenmus on 17/10/2017.
+ */
+
+public class PaymentMethodModel {
+
+ private String id;
+ private String name;
+ private boolean isSelected;
+
+ public PaymentMethodModel(String name) {
+ this.name = name;
+ }
+
+ private void checkNull(){
+
+ }
+
+ public static void checkNull(ArrayList paymentMethodList){
+ for(PaymentMethodModel paymentMethodModel : paymentMethodList){
+ paymentMethodModel.checkNull();
+ }
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public boolean isSelected() {
+ return isSelected;
+ }
+
+ public void setSelected(boolean selected) {
+ isSelected = selected;
+ }
+}
diff --git a/app/src/main/java/ch/pizzalink/android/model/ShippingMethodModel.java b/app/src/main/java/ch/pizzalink/android/model/ShippingMethodModel.java
new file mode 100644
index 0000000..ec66810
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/model/ShippingMethodModel.java
@@ -0,0 +1,53 @@
+package ch.pizzalink.android.model;
+
+import java.util.ArrayList;
+
+/**
+ * Created by cimenmus on 17/10/2017.
+ */
+
+public class ShippingMethodModel {
+
+ private String name;
+ private String price;
+ private boolean isSelected;
+
+ public ShippingMethodModel(String name, String price) {
+ this.name = name;
+ this.price = price;
+ }
+
+ private void checkNull(){
+
+ }
+
+ public static void checkNull(ArrayList shippingMethodList){
+ for(ShippingMethodModel shippingMethodModel : shippingMethodList){
+ shippingMethodModel.checkNull();
+ }
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getPrice() {
+ return price;
+ }
+
+ public void setPrice(String price) {
+ this.price = price;
+ }
+
+ public boolean isSelected() {
+ return isSelected;
+ }
+
+ public void setSelected(boolean selected) {
+ isSelected = selected;
+ }
+}
diff --git a/app/src/main/java/ch/pizzalink/android/view/NoSwipeViewPager.java b/app/src/main/java/ch/pizzalink/android/view/NoSwipeViewPager.java
new file mode 100644
index 0000000..142d872
--- /dev/null
+++ b/app/src/main/java/ch/pizzalink/android/view/NoSwipeViewPager.java
@@ -0,0 +1,47 @@
+package ch.pizzalink.android.view;
+
+import android.content.Context;
+import android.support.v4.view.ViewPager;
+import android.util.AttributeSet;
+import android.view.MotionEvent;
+
+/**
+ * Created by cimenmus on 17/10/2017.
+ */
+
+public class NoSwipeViewPager extends ViewPager {
+
+ private boolean enabled;
+
+ public NoSwipeViewPager(Context context, AttributeSet attrs) {
+ super(context, attrs);
+ this.enabled = false;
+ }
+
+ @Override
+ public boolean onTouchEvent(MotionEvent event) {
+ if (this.enabled) {
+ return super.onTouchEvent(event);
+ }
+
+ return false;
+ }
+
+ @Override
+ public boolean onInterceptTouchEvent(MotionEvent event) {
+ if (this.enabled) {
+ return super.onInterceptTouchEvent(event);
+ }
+
+ return false;
+ }
+
+ public void setPagingEnabled(boolean enabled) {
+ this.enabled = enabled;
+ }
+
+ @Override
+ public boolean canScrollHorizontally(int direction) {
+ return false;
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_order.xml b/app/src/main/res/layout/activity_order.xml
new file mode 100644
index 0000000..aea5c41
--- /dev/null
+++ b/app/src/main/res/layout/activity_order.xml
@@ -0,0 +1,98 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/fragment_order_result.xml b/app/src/main/res/layout/fragment_order_result.xml
new file mode 100644
index 0000000..51fd1f0
--- /dev/null
+++ b/app/src/main/res/layout/fragment_order_result.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_order_summary.xml b/app/src/main/res/layout/fragment_order_summary.xml
new file mode 100644
index 0000000..7683b08
--- /dev/null
+++ b/app/src/main/res/layout/fragment_order_summary.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_payment_method.xml b/app/src/main/res/layout/fragment_payment_method.xml
new file mode 100644
index 0000000..9d799e8
--- /dev/null
+++ b/app/src/main/res/layout/fragment_payment_method.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_shipping_address.xml b/app/src/main/res/layout/fragment_shipping_address.xml
new file mode 100644
index 0000000..9ae70f6
--- /dev/null
+++ b/app/src/main/res/layout/fragment_shipping_address.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_shipping_method.xml b/app/src/main/res/layout/fragment_shipping_method.xml
new file mode 100644
index 0000000..89371c2
--- /dev/null
+++ b/app/src/main/res/layout/fragment_shipping_method.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/row_payment_method.xml b/app/src/main/res/layout/row_payment_method.xml
new file mode 100644
index 0000000..c650b71
--- /dev/null
+++ b/app/src/main/res/layout/row_payment_method.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/row_shipment_address.xml b/app/src/main/res/layout/row_shipment_address.xml
new file mode 100644
index 0000000..d1e794b
--- /dev/null
+++ b/app/src/main/res/layout/row_shipment_address.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/row_shipment_method.xml b/app/src/main/res/layout/row_shipment_method.xml
new file mode 100644
index 0000000..e8d8401
--- /dev/null
+++ b/app/src/main/res/layout/row_shipment_method.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 120e3ba..98c9331 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -121,5 +121,17 @@
is not selected.
Sepetinizdeki ürünleri silmek istediğinize emin misiniz?
+ Sipariş Ver
+
+ NEXT
+ PREVIOUS
+
+
+ - Shipping Method
+ - Shipping Address
+ - Payment Method
+ - Summary
+
+