campaign banners on splash
This commit is contained in:
@@ -5,6 +5,8 @@ import android.content.pm.PackageInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.support.v7.widget.LinearLayoutManager;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import android.view.View;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
@@ -22,6 +24,7 @@ import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
import butterknife.OnClick;
|
||||
import ch.pizzaleu.android.R;
|
||||
import ch.pizzaleu.android.adapter.recycler.CampaignBannerRecyclerAdapter;
|
||||
import ch.pizzaleu.android.api.ApiConstants;
|
||||
import ch.pizzaleu.android.api.ApiEndPoints;
|
||||
import ch.pizzaleu.android.api.ApiErrorUtils;
|
||||
@@ -34,6 +37,7 @@ import ch.pizzaleu.android.helper.PriceHelper;
|
||||
import ch.pizzaleu.android.helper.SessionHelper;
|
||||
import ch.pizzaleu.android.helper.SharedPrefsHelper;
|
||||
import ch.pizzaleu.android.model.AppVersionModel;
|
||||
import ch.pizzaleu.android.model.CampaignBannerModel;
|
||||
import ch.pizzaleu.android.model.CategoryModel;
|
||||
import ch.pizzaleu.android.model.StoreModel;
|
||||
import ch.pizzaleu.android.model.cart.CartInfoModel;
|
||||
@@ -44,12 +48,15 @@ import retrofit2.Response;
|
||||
public class SplashActivity extends BaseActivity {
|
||||
|
||||
@BindView(R.id.pizzappSplashLogoImageView) ImageView pizzappSplashLogoImageView;
|
||||
@BindView(R.id.campaignBannerRecyclerView) RecyclerView campaignBannerRecyclerView;
|
||||
@BindView(R.id.postCodeTextView) TextView postCodeTextView;
|
||||
|
||||
@BindString(R.string.alert_invalid_post_code) String choosePostCodeAlert;
|
||||
|
||||
private ArrayList<StoreModel> storeList = new ArrayList<>();
|
||||
private ArrayList<CampaignBannerModel> campaignBannerList = new ArrayList<>();
|
||||
private StoreModel selectedStoreModel;
|
||||
private CampaignBannerRecyclerAdapter campaignBannerRecyclerAdapter;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
@@ -57,6 +64,7 @@ public class SplashActivity extends BaseActivity {
|
||||
setContentView(R.layout.activity_splash);
|
||||
ButterKnife.bind(this);
|
||||
//DisplayHelper.changeStatusColor();
|
||||
initCampaignBannerRecyclerView();
|
||||
if(NetworkHelper.isNetworkAvailable()){
|
||||
registerNotificationTag();
|
||||
getStoreList();
|
||||
@@ -66,6 +74,13 @@ public class SplashActivity extends BaseActivity {
|
||||
}
|
||||
}
|
||||
|
||||
private void initCampaignBannerRecyclerView(){
|
||||
campaignBannerRecyclerAdapter = new CampaignBannerRecyclerAdapter(campaignBannerList);
|
||||
campaignBannerRecyclerView.setAdapter(campaignBannerRecyclerAdapter);
|
||||
LinearLayoutManager layoutManager = new LinearLayoutManager(BaseActivity.currentActivity);
|
||||
campaignBannerRecyclerView.setLayoutManager(layoutManager);
|
||||
}
|
||||
|
||||
@OnClick({R.id.choosePostCodeLayout, R.id.choosePostCodeButton})
|
||||
protected void onClick(View view){
|
||||
switch (view.getId()){
|
||||
@@ -98,11 +113,47 @@ public class SplashActivity extends BaseActivity {
|
||||
call.enqueue(new Callback<ResponseArray<StoreModel>>() {
|
||||
@Override
|
||||
public void onResponse(Call<ResponseArray<StoreModel>> call, Response<ResponseArray<StoreModel>> response) {
|
||||
DialogHelper.hideLoadingDialog();
|
||||
if(response.isSuccessful() &&
|
||||
response.body().getData() != null &&
|
||||
response.body().isSuccess() && !response.body().getData().isEmpty()){
|
||||
storeList.addAll(response.body().getData());
|
||||
getCampaignBanners();
|
||||
}
|
||||
else {
|
||||
DialogHelper.hideLoadingDialog();
|
||||
ApiErrorUtils.parseError(response);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<ResponseArray<StoreModel>> call, Throwable t) {
|
||||
DialogHelper.hideLoadingDialog();
|
||||
DialogHelper.showFailedDialog();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void getCampaignBanners(){
|
||||
Call<ResponseArray<CampaignBannerModel>> call = ApiService.apiInterface.getCampaignBanners();
|
||||
call.enqueue(new Callback<ResponseArray<CampaignBannerModel>>() {
|
||||
@Override
|
||||
public void onResponse(Call<ResponseArray<CampaignBannerModel>> call, Response<ResponseArray<CampaignBannerModel>> response) {
|
||||
DialogHelper.hideLoadingDialog();
|
||||
if(response.isSuccessful() &&
|
||||
response.body().getData() != null &&
|
||||
response.body().isSuccess() && !response.body().getData().isEmpty()){
|
||||
campaignBannerList.clear();
|
||||
campaignBannerList.addAll(response.body().getData());
|
||||
sortCampaignBannerList();
|
||||
campaignBannerRecyclerAdapter.notifyDataSetChanged();
|
||||
if(campaignBannerList.isEmpty()){
|
||||
pizzappSplashLogoImageView.setVisibility(View.VISIBLE);
|
||||
campaignBannerRecyclerView.setVisibility(View.GONE);
|
||||
}
|
||||
else {
|
||||
pizzappSplashLogoImageView.setVisibility(View.GONE);
|
||||
campaignBannerRecyclerView.setVisibility(View.VISIBLE);
|
||||
}
|
||||
}
|
||||
else {
|
||||
ApiErrorUtils.parseError(response);
|
||||
@@ -110,7 +161,7 @@ public class SplashActivity extends BaseActivity {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<ResponseArray<StoreModel>> call, Throwable t) {
|
||||
public void onFailure(Call<ResponseArray<CampaignBannerModel>> call, Throwable t) {
|
||||
DialogHelper.hideLoadingDialog();
|
||||
DialogHelper.showFailedDialog();
|
||||
}
|
||||
@@ -376,6 +427,23 @@ public class SplashActivity extends BaseActivity {
|
||||
}
|
||||
|
||||
|
||||
private void sortCampaignBannerList(){
|
||||
ArrayList<CampaignBannerModel> tempList = new ArrayList<>();
|
||||
for(CampaignBannerModel campaignBannerModel : campaignBannerList){
|
||||
if(campaignBannerModel.isActive()){
|
||||
tempList.add(campaignBannerModel);
|
||||
}
|
||||
}
|
||||
campaignBannerList.clear();
|
||||
campaignBannerList.addAll(tempList);
|
||||
tempList.clear();
|
||||
Collections.sort(campaignBannerList, new Comparator<CampaignBannerModel>() {
|
||||
@Override
|
||||
public int compare(CampaignBannerModel b1, CampaignBannerModel b2) {
|
||||
return b1.getOrder().compareTo(b2.getOrder());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user