diff --git a/app/src/main/java/ch/pizzalink/android/activity/LoginActivity.java b/app/src/main/java/ch/pizzalink/android/activity/LoginActivity.java index db549f1..e3b3e36 100644 --- a/app/src/main/java/ch/pizzalink/android/activity/LoginActivity.java +++ b/app/src/main/java/ch/pizzalink/android/activity/LoginActivity.java @@ -87,12 +87,17 @@ public class LoginActivity extends BaseActivity { } private void login(){ + DialogHelper.showLoadingDialog(); Call call = ApiService.apiInterface.login( emailPizzalinkEditText.getText(), passwordPizzalinkEditText.getText()); call.enqueue(new Callback() { @Override public void onResponse(Call call, Response response) { - if(response.isSuccessful()){ + DialogHelper.hideLoadingDialog(); + if(response.isSuccessful() && + response.body() != null && + response.body().isSuccess()){ + response.body().getData().checkNull(); SharedPrefsHelper.saveUser(response.body().getData()); SharedPrefsHelper.saveCustomerToken(response.body().getData().getToken()); SharedPrefsHelper.setCustomerLoggedIn(true); @@ -104,6 +109,7 @@ public class LoginActivity extends BaseActivity { @Override public void onFailure(Call call, Throwable t) { + DialogHelper.hideLoadingDialog(); DialogHelper.showFailedDialog(); } }); diff --git a/app/src/main/java/ch/pizzalink/android/activity/RegisterActivity.java b/app/src/main/java/ch/pizzalink/android/activity/RegisterActivity.java index 3225662..68b281e 100644 --- a/app/src/main/java/ch/pizzalink/android/activity/RegisterActivity.java +++ b/app/src/main/java/ch/pizzalink/android/activity/RegisterActivity.java @@ -17,6 +17,7 @@ import ch.pizzalink.android.api.ApiErrorUtils; import ch.pizzalink.android.api.ApiService; import ch.pizzalink.android.helper.DialogHelper; import ch.pizzalink.android.helper.SharedPrefsHelper; +import ch.pizzalink.android.model.UserModel; import ch.pizzalink.android.model.responseModel.LoginCustomerResponseModel; import ch.pizzalink.android.view.PizzalinkButton; import ch.pizzalink.android.view.PizzalinkEditText; @@ -95,6 +96,7 @@ public class RegisterActivity extends BaseActivity { } private void registerUser(){ + DialogHelper.showLoadingDialog(); Call call = ApiService.apiInterface.register( pizzalinkEditTextList.get(0).getText(), pizzalinkEditTextList.get(1).getText(),pizzalinkEditTextList.get(2).getText(), pizzalinkEditTextList.get(3).getText(),pizzalinkEditTextList.get(4).getText(),pizzalinkEditTextList.get(5).getText(), @@ -103,7 +105,11 @@ public class RegisterActivity extends BaseActivity { call.enqueue(new Callback() { @Override public void onResponse(Call call, Response response) { - if(response.isSuccessful()){ + DialogHelper.hideLoadingDialog(); + if(response.isSuccessful() && + response.body() != null && + response.body().isSuccess()){ + response.body().getData().checkNull(); SharedPrefsHelper.saveUser(response.body().getData()); SharedPrefsHelper.saveCustomerToken(response.body().getData().getToken()); SharedPrefsHelper.setCustomerLoggedIn(true); @@ -115,6 +121,7 @@ public class RegisterActivity extends BaseActivity { @Override public void onFailure(Call call, Throwable t) { + DialogHelper.hideLoadingDialog(); DialogHelper.showFailedDialog(); } }); diff --git a/app/src/main/java/ch/pizzalink/android/activity/SplashActivity.java b/app/src/main/java/ch/pizzalink/android/activity/SplashActivity.java index 171b059..bc46ac8 100644 --- a/app/src/main/java/ch/pizzalink/android/activity/SplashActivity.java +++ b/app/src/main/java/ch/pizzalink/android/activity/SplashActivity.java @@ -47,7 +47,9 @@ public class SplashActivity extends BaseActivity { call.enqueue(new Callback() { @Override public void onResponse(Call call, Response response) { - if(response.isSuccessful()){ + if(response.isSuccessful() && + response.body() != null && + response.body().isSuccess()){ CategoryModel.checkNull(response.body().getData()); SharedPrefsHelper.saveCategoryList(response.body().getData()); checkCustomerToken(); diff --git a/app/src/main/java/ch/pizzalink/android/adapter/recycler/OrderHistoryRecyclerAdapter.java b/app/src/main/java/ch/pizzalink/android/adapter/recycler/OrderHistoryRecyclerAdapter.java new file mode 100644 index 0000000..feaf573 --- /dev/null +++ b/app/src/main/java/ch/pizzalink/android/adapter/recycler/OrderHistoryRecyclerAdapter.java @@ -0,0 +1,126 @@ +package ch.pizzalink.android.adapter.recycler; + +import android.support.v7.widget.RecyclerView; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.TextView; + +import java.util.ArrayList; + +import butterknife.BindView; +import butterknife.ButterKnife; +import ch.pizzalink.android.R; +import ch.pizzalink.android.helper.ImageLoadHelper; +import ch.pizzalink.android.interfaces.RecyclerItemClickListener; +import ch.pizzalink.android.model.OrderModel; +import ch.pizzalink.android.model.PizzaModel; + +/** + * Created by cimenmus on 04/10/2017. + */ + +public class OrderHistoryRecyclerAdapter extends RecyclerView.Adapter{ + + private final int HOLDER_ORDER = 0; + private final int HOLDER_SPACE = 1; + + private ArrayList orderHistoryList = new ArrayList<>(); + private RecyclerItemClickListener recyclerItemClickListener; + + public static class OrderViewHolder extends RecyclerView.ViewHolder { + + @BindView(R.id.orderTotalTextView) TextView orderTotalTextView; + @BindView(R.id.orderDateTextView) TextView orderDateTextView; + @BindView(R.id.orderStatusTextView) TextView orderStatusTextView; + @BindView(R.id.cancelOrderImageView) ImageView cancelOrderImageView; + + public OrderViewHolder(final View view, final RecyclerItemClickListener recyclerItemClickListener) { + super(view); + ButterKnife.bind(this, view); + cancelOrderImageView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if(recyclerItemClickListener != null) + recyclerItemClickListener.onItemClick(cancelOrderImageView, getAdapterPosition()); + } + }); + + } + } + + public static class SpaceViewHolder extends RecyclerView.ViewHolder{ + public SpaceViewHolder(final View view) { + super(view); + } + } + + @Override + public int getItemViewType(int position) { + + if(position == orderHistoryList.size()) + return HOLDER_SPACE; + + return HOLDER_ORDER; + } + + public OrderHistoryRecyclerAdapter(ArrayList orderHistoryList, + RecyclerItemClickListener recyclerItemClickListener){ + this.orderHistoryList = orderHistoryList; + 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_ORDER: + view = inflater.inflate(R.layout.row_order_history, 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_order_history, 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_ORDER : + OrderViewHolder orderViewHolder = (OrderViewHolder) holder; + orderViewHolder.orderTotalTextView.setText(orderHistoryList.get(position).getTotalString()); + orderViewHolder.orderDateTextView.setText(orderHistoryList.get(position).getFormattedCreateDate()); + orderViewHolder.orderStatusTextView.setText(orderHistoryList.get(position).getStatus()); + break; + + case HOLDER_SPACE : + SpaceViewHolder spaceViewHolder = (SpaceViewHolder) holder; + break; + } + + } + + @Override + public int getItemCount() { + return orderHistoryList.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 861f179..d999183 100644 --- a/app/src/main/java/ch/pizzalink/android/api/ApiEndPoints.java +++ b/app/src/main/java/ch/pizzalink/android/api/ApiEndPoints.java @@ -8,5 +8,7 @@ public class ApiEndPoints { public static final String API_GET_ALL_CATEGORIES = PREFIX + "getAllCategories" + SUFFIX; public static final String API_REGISTER = PREFIX + "signUp" + SUFFIX; public static final String API_LOGIN = PREFIX + "login" + SUFFIX; + public static final String API_LOGOUT = PREFIX + "logout" + SUFFIX; + public static final String API_GET_ORDER_HISTORY = PREFIX + "getOrders" + 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 a2b94a2..c7037fd 100644 --- a/app/src/main/java/ch/pizzalink/android/api/ApiInterface.java +++ b/app/src/main/java/ch/pizzalink/android/api/ApiInterface.java @@ -1,8 +1,15 @@ package ch.pizzalink.android.api; +import java.util.ArrayList; +import java.util.HashMap; + +import ch.pizzalink.android.model.OrderModel; +import ch.pizzalink.android.model.responseModel.BaseResponseModel; import ch.pizzalink.android.model.responseModel.CategoryResponseModel; import ch.pizzalink.android.model.responseModel.LoginCustomerResponseModel; +import ch.pizzalink.android.model.responseModel.OrderHistoryResponseModel; import retrofit2.Call; +import retrofit2.http.Body; import retrofit2.http.Field; import retrofit2.http.FormUrlEncoded; import retrofit2.http.GET; @@ -37,6 +44,13 @@ public interface ApiInterface { @POST(ApiEndPoints.API_LOGIN) Call login(@Field("email") String email, @Field("password") String password); + @FormUrlEncoded + @POST(ApiEndPoints.API_LOGOUT) + Call logout(@Field("token") String customerToken); + + @POST(ApiEndPoints.API_GET_ORDER_HISTORY) + Call getOrderHistory(@Body HashMap body); + /* @GET(ApiEndPoints.API_GET_ALL_CATEGORIES) diff --git a/app/src/main/java/ch/pizzalink/android/fragment/HistoryFragment.java b/app/src/main/java/ch/pizzalink/android/fragment/HistoryFragment.java index fcaebc6..9086182 100644 --- a/app/src/main/java/ch/pizzalink/android/fragment/HistoryFragment.java +++ b/app/src/main/java/ch/pizzalink/android/fragment/HistoryFragment.java @@ -1,13 +1,33 @@ package ch.pizzalink.android.fragment; 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.LinearLayout; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Objects; 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.OrderHistoryRecyclerAdapter; +import ch.pizzalink.android.api.ApiErrorUtils; +import ch.pizzalink.android.api.ApiService; +import ch.pizzalink.android.helper.DialogHelper; +import ch.pizzalink.android.helper.SessionHelper; +import ch.pizzalink.android.interfaces.RecyclerItemClickListener; +import ch.pizzalink.android.model.OrderModel; +import ch.pizzalink.android.model.responseModel.OrderHistoryResponseModel; +import retrofit2.Call; +import retrofit2.Callback; +import retrofit2.Response; /** * Created by cimenmus on 20/09/2017. @@ -15,10 +35,15 @@ import ch.pizzalink.android.R; public class HistoryFragment extends BaseFragment { + @BindView(R.id.orderHistoryRecyclerView) RecyclerView orderHistoryRecyclerView; + @BindString(R.string.bottom_nav_menu_item_history) String fragmentTitle; public static final java.lang.String FRAGMENT_NAME = "historyFragment"; + private ArrayList orderHistoryList = new ArrayList<>(); + private OrderHistoryRecyclerAdapter orderHistoryRecyclerAdapter; + public HistoryFragment() {} public static HistoryFragment newInstance() { @@ -35,10 +60,59 @@ public class HistoryFragment extends BaseFragment { View view = inflater.inflate(R.layout.fragment_history, container, false); ButterKnife.bind(this, view); initViews(); + getOrderHistory(); return view; } private void initViews(){ setPizzalinkToolbarFields(false, fragmentTitle); + initRecyclerView(); + } + + private void initRecyclerView(){ + orderHistoryRecyclerAdapter = new OrderHistoryRecyclerAdapter(orderHistoryList, new RecyclerItemClickListener() { + @Override + public void onItemClick(View view, int position) { + + } + }); + LinearLayoutManager layoutManager = new LinearLayoutManager(BaseActivity.currentActivity); + orderHistoryRecyclerView.setLayoutManager(layoutManager); + orderHistoryRecyclerView.setAdapter(orderHistoryRecyclerAdapter); + } + + private void getOrderHistory(){ + DialogHelper.showLoadingDialog(); + HashMap params = new HashMap<>(); + params.put("token", SessionHelper.getCustomerToken().getToken()); + Call call = ApiService.apiInterface.getOrderHistory(params); + call.enqueue(new Callback() { + @Override + public void onResponse(Call call, Response response) { + DialogHelper.hideLoadingDialog(); + if(response.isSuccessful() && + response.body() != null && + response.body().isSuccess()){ + fillAndNotifyOrderHistoryList(response.body().getData()); + } + else + ApiErrorUtils.parseError(response); + } + + @Override + public void onFailure(Call call, Throwable t) { + DialogHelper.hideLoadingDialog(); + DialogHelper.showFailedDialog(); + } + }); + } + + private void fillAndNotifyOrderHistoryList(ArrayList orderList){ + if(orderList == null) + return; + OrderModel.checkNull(orderList); + orderHistoryList.clear(); + orderHistoryList.addAll(orderList); + orderHistoryRecyclerAdapter.notifyDataSetChanged(); } } diff --git a/app/src/main/java/ch/pizzalink/android/fragment/ProfileFragment.java b/app/src/main/java/ch/pizzalink/android/fragment/ProfileFragment.java index f44d090..2726b9a 100644 --- a/app/src/main/java/ch/pizzalink/android/fragment/ProfileFragment.java +++ b/app/src/main/java/ch/pizzalink/android/fragment/ProfileFragment.java @@ -1,13 +1,28 @@ package ch.pizzalink.android.fragment; +import android.content.Intent; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.Button; import butterknife.BindString; +import butterknife.BindView; import butterknife.ButterKnife; +import butterknife.OnClick; import ch.pizzalink.android.R; +import ch.pizzalink.android.activity.BaseActivity; +import ch.pizzalink.android.activity.LoginActivity; +import ch.pizzalink.android.api.ApiErrorUtils; +import ch.pizzalink.android.api.ApiService; +import ch.pizzalink.android.helper.DialogHelper; +import ch.pizzalink.android.helper.SessionHelper; +import ch.pizzalink.android.helper.SharedPrefsHelper; +import ch.pizzalink.android.model.responseModel.BaseResponseModel; +import retrofit2.Call; +import retrofit2.Callback; +import retrofit2.Response; /** * Created by cimenmus on 18/09/2017. @@ -15,6 +30,8 @@ import ch.pizzalink.android.R; public class ProfileFragment extends BaseFragment { + @BindView(R.id.logoutButton) Button logoutButton; + @BindString(R.string.bottom_nav_menu_item_profile) String fragmentTitle; public static final java.lang.String FRAGMENT_NAME = "profileFragment"; @@ -38,7 +55,44 @@ public class ProfileFragment extends BaseFragment { return view; } + @OnClick(R.id.logoutButton) + public void onClick(View view){ + logOutOnWeb(); + } + + private void initViews(){ setPizzalinkToolbarFields(false, fragmentTitle); } + + private void logOutOnWeb(){ + DialogHelper.showLoadingDialog(); + Call call = ApiService.apiInterface.logout(SessionHelper.getCustomerToken().getToken()); + call.enqueue(new Callback() { + @Override + public void onResponse(Call call, Response response) { + DialogHelper.hideLoadingDialog(); + if(response.isSuccessful() && + response.body() != null && + response.body().isSuccess()) + logoutLocally(); + else + ApiErrorUtils.parseError(response); + } + + @Override + public void onFailure(Call call, Throwable t) { + DialogHelper.hideLoadingDialog(); + DialogHelper.showFailedDialog(); + } + }); + } + + private void logoutLocally(){ + SharedPrefsHelper.clearCustomerInfo(); + SharedPrefsHelper.clearCustomerToken(); + SharedPrefsHelper.setCustomerLoggedIn(false); + BaseActivity.currentActivity.startActivity(new Intent(BaseActivity.currentActivity, LoginActivity.class)); + BaseActivity.currentActivity.finishAffinity(); + } } diff --git a/app/src/main/java/ch/pizzalink/android/helper/DateTimeHelper.java b/app/src/main/java/ch/pizzalink/android/helper/DateTimeHelper.java new file mode 100644 index 0000000..5e5bb17 --- /dev/null +++ b/app/src/main/java/ch/pizzalink/android/helper/DateTimeHelper.java @@ -0,0 +1,79 @@ +package ch.pizzalink.android.helper; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; + +import ch.pizzalink.android.R; +import ch.pizzalink.android.activity.BaseActivity; + +/** + * Created by cimenmus on 04/10/2017. + */ + +public class DateTimeHelper { + + public static long getMillisFromDateString(String dateString){ + + SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + Calendar calendar = null; + try { + Date date = formatter.parse(dateString); + calendar = Calendar.getInstance(); + calendar.setTime(date); + return calendar.getTimeInMillis(); + } catch (Exception e) { + e.printStackTrace(); + return 0; + } + } + + public static String getFormattedDateFromDateString(String dateString){ + + SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + Calendar calendar = null; + try { + Date date = formatter.parse(dateString); + calendar = Calendar.getInstance(); + calendar.setTime(date); + return calendar.get(Calendar.DAY_OF_MONTH) + " " + + getMonthName(calendar.get(Calendar.MONTH)) + " " + + calendar.get(Calendar.YEAR); + } catch (Exception e) { + e.printStackTrace(); + return ""; + } + } + + private static String getMonthName(int monthIndex){ + switch (monthIndex){ + case 0: + return BaseActivity.currentActivity.getString(R.string.month_name_january); + case 1: + return BaseActivity.currentActivity.getString(R.string.month_name_february); + case 2: + return BaseActivity.currentActivity.getString(R.string.month_name_march); + case 3: + return BaseActivity.currentActivity.getString(R.string.month_name_april); + case 4: + return BaseActivity.currentActivity.getString(R.string.month_name_may); + case 5: + return BaseActivity.currentActivity.getString(R.string.month_name_jun); + case 6: + return BaseActivity.currentActivity.getString(R.string.month_name_july); + case 7: + return BaseActivity.currentActivity.getString(R.string.month_name_august); + case 8: + return BaseActivity.currentActivity.getString(R.string.month_name_september); + case 9: + return BaseActivity.currentActivity.getString(R.string.month_name_october); + case 10: + return BaseActivity.currentActivity.getString(R.string.month_name_november); + case 11: + return BaseActivity.currentActivity.getString(R.string.month_name_december); + default: + return ""; + } + } +} diff --git a/app/src/main/java/ch/pizzalink/android/helper/DialogHelper.java b/app/src/main/java/ch/pizzalink/android/helper/DialogHelper.java index a2cf827..faf471e 100644 --- a/app/src/main/java/ch/pizzalink/android/helper/DialogHelper.java +++ b/app/src/main/java/ch/pizzalink/android/helper/DialogHelper.java @@ -11,6 +11,8 @@ import ch.pizzalink.android.activity.BaseActivity; public class DialogHelper { + private static MaterialDialog loadingDialog; + public static void showDialogWithPositiveButton(Context context, String content) { new MaterialDialog.Builder(context) @@ -63,6 +65,24 @@ public class DialogHelper { .show(); } + public static void showLoadingDialog(){ + if(loadingDialog != null && loadingDialog.isShowing()) + return; + loadingDialog = new MaterialDialog.Builder(BaseActivity.currentActivity) + .content("Content") + .cancelable(false) + .progress(true, 0) + .progressIndeterminateStyle(true) + .show(); + } + + public static void hideLoadingDialog(){ + if(loadingDialog != null && loadingDialog.isShowing()){ + loadingDialog.dismiss(); + loadingDialog = null; + } + } + /* public static void showDialogWithPositiveButtonCallback(Context context, String content, diff --git a/app/src/main/java/ch/pizzalink/android/model/CustomerTokenModel.java b/app/src/main/java/ch/pizzalink/android/model/CustomerTokenModel.java index 4e16ae8..e681753 100644 --- a/app/src/main/java/ch/pizzalink/android/model/CustomerTokenModel.java +++ b/app/src/main/java/ch/pizzalink/android/model/CustomerTokenModel.java @@ -8,6 +8,8 @@ import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; +import ch.pizzalink.android.helper.DateTimeHelper; + /** * Created by cimenmus on 26/09/2017. */ @@ -28,22 +30,19 @@ public class CustomerTokenModel { public boolean isCustomerTokenAlive(){ long millis7days = 86400000 * 7; - return (getTokenDeathDate(expiresIn).getTimeInMillis() - System.currentTimeMillis() >= millis7days); + return DateTimeHelper.getMillisFromDateString(expiresIn) - System.currentTimeMillis() >= millis7days; } - private Calendar getTokenDeathDate(String tokenDeathTime){ + public void checkNull(){ - SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - Calendar calendar = null; - try { - Date date = formatter.parse(tokenDeathTime); - calendar = Calendar.getInstance(); - calendar.setTime(date); - return calendar; - } catch (ParseException e) { - e.printStackTrace(); - return calendar; - } + if(token == null) + token = ""; + + if(expiresIn == null) + expiresIn = ""; + + if(refreshToken == null) + refreshToken = ""; } public String getToken() { diff --git a/app/src/main/java/ch/pizzalink/android/model/OrderModel.java b/app/src/main/java/ch/pizzalink/android/model/OrderModel.java new file mode 100644 index 0000000..f9b59f7 --- /dev/null +++ b/app/src/main/java/ch/pizzalink/android/model/OrderModel.java @@ -0,0 +1,133 @@ +package ch.pizzalink.android.model; + +import com.google.gson.annotations.Expose; +import com.google.gson.annotations.SerializedName; + +import java.util.ArrayList; + +import ch.pizzalink.android.helper.DateTimeHelper; + +/** + * Created by cimenmus on 04/10/2017. + */ + +public class OrderModel { + + @Expose + @SerializedName("order_id") + private String id; + + @Expose + @SerializedName("date_added") + private String createDate; + + @Expose + @SerializedName("currency_code") + private String currencyCode; + + @Expose + @SerializedName("currency_value") + private String currencyValue; + + private String firstname; + private String lastname; + private String status; + private String total; + + public int getTotalInt(){ + try { + return Integer.valueOf(total); + }catch (Exception e){ + return 0; + } + } + + public String getTotalString(){ + return currencyCode + " " + total; + } + + public String getFormattedCreateDate(){ + return DateTimeHelper.getFormattedDateFromDateString(createDate); + } + + private void checkNull(){ + + if(id == null) + id = ""; + + if(createDate == null) + createDate = ""; + + if(currencyCode == null) + currencyCode = ""; + + if(currencyValue == null) + currencyValue = ""; + + if(firstname == null) + firstname = ""; + + if(lastname == null) + lastname = ""; + + if(status == null) + status = ""; + + if(total == null) + total = ""; + } + + public static void checkNull(ArrayList orderHistoryList){ + for(OrderModel orderModel : orderHistoryList){ + orderModel.checkNull(); + } + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getFirstname() { + return firstname; + } + + public void setFirstname(String firstname) { + this.firstname = firstname; + } + + public String getLastname() { + return lastname; + } + + public void setLastname(String lastname) { + this.lastname = lastname; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getCurrencyCode() { + return currencyCode; + } + + public void setCurrency_code(String currencyCode) { + this.currencyCode = currencyCode; + } + + public String getCurrencyValue() { + return currencyValue; + } + + public void setCurrencyValue(String currencyValue) { + this.currencyValue = currencyValue; + } +} diff --git a/app/src/main/java/ch/pizzalink/android/model/UserModel.java b/app/src/main/java/ch/pizzalink/android/model/UserModel.java index 85706d7..f45ca63 100644 --- a/app/src/main/java/ch/pizzalink/android/model/UserModel.java +++ b/app/src/main/java/ch/pizzalink/android/model/UserModel.java @@ -19,6 +19,27 @@ public class UserModel { private String telephone; private CustomerTokenModel token; + public void checkNull(){ + + if(id == null) + id = ""; + + if(firstname == null) + firstname = ""; + + if(lastname == null) + lastname = ""; + + if(email == null) + email = ""; + + if(telephone == null) + telephone = ""; + + if(token != null) + token.checkNull(); + } + public String getId() { return id; } diff --git a/app/src/main/java/ch/pizzalink/android/model/responseModel/OrderHistoryResponseModel.java b/app/src/main/java/ch/pizzalink/android/model/responseModel/OrderHistoryResponseModel.java new file mode 100644 index 0000000..2a78150 --- /dev/null +++ b/app/src/main/java/ch/pizzalink/android/model/responseModel/OrderHistoryResponseModel.java @@ -0,0 +1,22 @@ +package ch.pizzalink.android.model.responseModel; + +import java.util.ArrayList; + +import ch.pizzalink.android.model.OrderModel; + +/** + * Created by cimenmus on 04/10/2017. + */ + +public class OrderHistoryResponseModel extends BaseResponseModel{ + + private ArrayList data; + + public ArrayList getData() { + return data; + } + + public void setData(ArrayList data) { + this.data = data; + } +} diff --git a/app/src/main/res/layout/fragment_history.xml b/app/src/main/res/layout/fragment_history.xml index 2f3baba..02cc1fa 100644 --- a/app/src/main/res/layout/fragment_history.xml +++ b/app/src/main/res/layout/fragment_history.xml @@ -1,15 +1,6 @@ - - - - - \ No newline at end of file + android:layout_height="match_parent"/> diff --git a/app/src/main/res/layout/fragment_profile.xml b/app/src/main/res/layout/fragment_profile.xml index 41a2fcb..19a2296 100644 --- a/app/src/main/res/layout/fragment_profile.xml +++ b/app/src/main/res/layout/fragment_profile.xml @@ -12,4 +12,14 @@ android:layout_centerInParent="true" android:textColor="@color/black"/> +