Browse Source

Reward and coupon implemented

master
Preyea Regmi 5 years ago
parent
commit
d82fcb721c
  1. BIN
      .idea/caches/build_file_checksums.ser
  2. 5
      app/src/main/java/com/gmeremit/online/gmeremittance_native/base/PrivilegedGateway.java
  3. 1
      app/src/main/java/com/gmeremit/online/gmeremittance_native/base/PrivilegedGatewayInterface.java
  4. 8
      app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/view/HomeFragmentV2.java
  5. 2
      app/src/main/java/com/gmeremit/online/gmeremittance_native/resendV2/presenter/resend/ReSendMoneyV2Presenter.java
  6. 20
      app/src/main/java/com/gmeremit/online/gmeremittance_native/resendV2/view/amountdetail/ResendMoneyAmountDetailFragment.java
  7. 12
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/adapter/rewardlisting/OrderListingRvAdapter.java
  8. 20
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/adapter/rewardlisting/RewardListingRvAdapter.java
  9. 16
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/gateway/rewardredeem/RewardRedeemV2Gateway.java
  10. 64
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/model/rewardlisting/RewardOrderedProductItemModel.java
  11. 41
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/model/rewardlisting/RewardProductItemModel.java
  12. 90
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/model/rewardredeem/BranchInfoModel.java
  13. 118
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/model/rewardredeem/RewardRedeemRequestBody.java
  14. 6
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/presenter/rewardredeem/RewardRedeemV2InteractorInterface.java
  15. 163
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/presenter/rewardredeem/RewardRedeemV2Presenter.java
  16. 18
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/presenter/rewardredeem/RewardRedeemV2PresenterInterface.java
  17. 77
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/view/rewardlisting/OrderHistoryFragment.java
  18. 57
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/view/rewardlisting/RewardListFragment.java
  19. 19
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/view/rewardlisting/RewardListingV2Activity.java
  20. 74
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/view/rewardorderdetail/RewardOrderDetailActivity.java
  21. 136
      app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/view/rewardredeem/RewardRedeemV2Activity.java
  22. 2
      app/src/main/java/com/gmeremit/online/gmeremittance_native/sendmoneyV2/presenter/SendMoneyV2Presenter.java
  23. 4
      app/src/main/java/com/gmeremit/online/gmeremittance_native/sendmoneyV2/view/SendMoneyV2TransactionCompleteActivity.java
  24. 22
      app/src/main/java/com/gmeremit/online/gmeremittance_native/sendmoneyV2/view/amountdetail/AmountDetailSendMoneyFragment.java
  25. 2
      app/src/main/java/com/gmeremit/online/gmeremittance_native/splash_screen/presenter/SplashScreenPresenter.java
  26. 2
      app/src/main/java/com/gmeremit/online/gmeremittance_native/splash_screen/view/SplashScreen.java
  27. 2
      app/src/main/java/com/gmeremit/online/gmeremittance_native/utils/https/API_URL.java
  28. 9
      app/src/main/java/com/gmeremit/online/gmeremittance_native/utils/https/ApiEndpoints.java
  29. BIN
      app/src/main/res/drawable-hdpi/grid_view_selected.png
  30. BIN
      app/src/main/res/drawable-hdpi/grid_view_unselected.png
  31. BIN
      app/src/main/res/drawable-hdpi/ico_color_gift.png
  32. BIN
      app/src/main/res/drawable-hdpi/list_view_selected.png
  33. BIN
      app/src/main/res/drawable-hdpi/list_view_unselected.png
  34. BIN
      app/src/main/res/drawable-mdpi/grid_view_selected.png
  35. BIN
      app/src/main/res/drawable-mdpi/grid_view_unselected.png
  36. BIN
      app/src/main/res/drawable-mdpi/ico_color_gift.png
  37. BIN
      app/src/main/res/drawable-mdpi/list_view_selected.png
  38. BIN
      app/src/main/res/drawable-mdpi/list_view_unselected.png
  39. BIN
      app/src/main/res/drawable-xhdpi/grid_view_selected.png
  40. BIN
      app/src/main/res/drawable-xhdpi/grid_view_unselected.png
  41. BIN
      app/src/main/res/drawable-xhdpi/ico_color_gift.png
  42. BIN
      app/src/main/res/drawable-xhdpi/list_view_selected.png
  43. BIN
      app/src/main/res/drawable-xhdpi/list_view_unselected.png
  44. BIN
      app/src/main/res/drawable-xxhdpi/grid_view_selected.png
  45. BIN
      app/src/main/res/drawable-xxhdpi/grid_view_unselected.png
  46. BIN
      app/src/main/res/drawable-xxhdpi/list_view_selected.png
  47. BIN
      app/src/main/res/drawable-xxhdpi/list_view_unselected.png
  48. 43
      app/src/main/res/drawable-xxhdpi/radiobutton_listview_selector.xml
  49. BIN
      app/src/main/res/drawable-xxxhdpi/grid_view_selected.png
  50. BIN
      app/src/main/res/drawable-xxxhdpi/grid_view_unselected.png
  51. BIN
      app/src/main/res/drawable-xxxhdpi/list_view_selected.png
  52. BIN
      app/src/main/res/drawable-xxxhdpi/list_view_unselected.png
  53. 9
      app/src/main/res/drawable/control_switch_background_border.xml
  54. 43
      app/src/main/res/drawable/radiobutton_gridview_selector.xml
  55. 70
      app/src/main/res/layout/activity_reward_order_detail.xml
  56. 69
      app/src/main/res/layout/activity_reward_redeem_v2.xml
  57. 6
      app/src/main/res/layout/activity_send_money_v2_transaction_complete.xml
  58. 2
      app/src/main/res/layout/fragment_amount_detail_send_money_v2.xml
  59. 4
      app/src/main/res/layout/fragment_home_v2.xml
  60. 25
      app/src/main/res/layout/fragment_order_history.xml
  61. 58
      app/src/main/res/layout/fragment_reward_list.xml
  62. 21
      app/src/main/res/layout/reward_list_item.xml

BIN
.idea/caches/build_file_checksums.ser

5
app/src/main/java/com/gmeremit/online/gmeremittance_native/base/PrivilegedGateway.java

@ -229,4 +229,9 @@ public abstract class PrivilegedGateway implements PrivilegedGatewayInterface {
public String getCustomerRewardPoint() {
return GmeApplication.getStorage().getString(PrefKeys.USER_REWAD_POINT,"");
}
@Override
public String getUserMsisdn() {
return GmeApplication.getStorage().getString(PrefKeys.USER_MSISDN,"");
}
}

1
app/src/main/java/com/gmeremit/online/gmeremittance_native/base/PrivilegedGatewayInterface.java

@ -19,6 +19,7 @@ public interface PrivilegedGatewayInterface extends BaseGatewayInterface {
String getUserLastName();
String getUserIDType();
String getUserMsisdn();
/**
*

8
app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/view/HomeFragmentV2.java

@ -198,7 +198,11 @@ public class HomeFragmentV2 extends BaseFragment implements HomeMenuRvAdapterV2.
if (isUIReady()) {
swiperefresh.setRefreshing(false);
tv_currency.setVisibility(View.VISIBLE);
tv_rewardpoint.setText(rewardPoint);
tv_rewardpoint.setVisibility(View.VISIBLE);
lb_rewardpoint.setVisibility(View.VISIBLE);
tv_namelabel.setText(userName);
tv_balance.setText(yearlyLimit);
} else {
@ -206,7 +210,11 @@ public class HomeFragmentV2 extends BaseFragment implements HomeMenuRvAdapterV2.
swiperefresh.setRefreshing(false);
tv_currency.setVisibility(View.VISIBLE);
tv_balance.setText(yearlyLimit);
tv_rewardpoint.setText(rewardPoint);
tv_rewardpoint.setVisibility(View.VISIBLE);
lb_rewardpoint.setVisibility(View.VISIBLE);
tv_namelabel.setText(userName);
});
}

2
app/src/main/java/com/gmeremit/online/gmeremittance_native/resendV2/presenter/resend/ReSendMoneyV2Presenter.java

@ -111,7 +111,7 @@ public class ReSendMoneyV2Presenter extends BasePresenter implements ReSendMoney
resendRelatedData.getRemitDetail().setCalBy(shouldCalcByRecipient ? Constants.CALC_BY_RECIPEINT : Constants.CALC_BY_SENDER);
resendRelatedData.getRemitDetail().setForeXSESSIONID(forexId);
resendRelatedData.getRemitDetail().setTransferAmt(transferAmount);
// resendRelatedData.getRemitDetail().setSchemeId(schemeId);
resendRelatedData.getRemitDetail().setSchemeId(schemeId);
}

20
app/src/main/java/com/gmeremit/online/gmeremittance_native/resendV2/view/amountdetail/ResendMoneyAmountDetailFragment.java

@ -255,10 +255,10 @@ public class ResendMoneyAmountDetailFragment extends BaseFragment implements Vie
this.transferFeeTxtView.setVisibility(View.VISIBLE);
ViewCompat.animate(this.transferFeeTxtView).translationY(0).setDuration(550).setInterpolator(this.interpolator).start();
// if (couponViewContainer.getVisibility() != View.VISIBLE) {
// couponViewContainer.setVisibility(View.VISIBLE);
// couponBottomView.setVisibility(View.VISIBLE);
// }
if (couponViewContainer.getVisibility() != View.VISIBLE) {
couponViewContainer.setVisibility(View.VISIBLE);
couponBottomView.setVisibility(View.VISIBLE);
}
} else {
if (exchangeRateTxtView.getVisibility() == View.VISIBLE)
@ -268,10 +268,10 @@ public class ResendMoneyAmountDetailFragment extends BaseFragment implements Vie
this.transferFeeTxtView.setVisibility(View.INVISIBLE);
// if (couponViewContainer.getVisibility() == View.VISIBLE) {
// couponViewContainer.setVisibility(View.INVISIBLE);
// couponBottomView.setVisibility(View.INVISIBLE);
// }
if (couponViewContainer.getVisibility() == View.VISIBLE) {
couponViewContainer.setVisibility(View.INVISIBLE);
couponBottomView.setVisibility(View.INVISIBLE);
}
}
}
@ -359,7 +359,7 @@ public class ResendMoneyAmountDetailFragment extends BaseFragment implements Vie
showTransferfeeAndExRate(true, transferDisplay, exRateDisplay,"");
showSendAndRecieveAmount(selectedSendAmount, selectedRecipientAmount);
// showCoupon(Utils.formatCurrencyWithoutTruncatingDecimal(data.getDiscountValue()), data.getDiscountType(), data.getSchemeId(), data.getDiscountPercent(), data.getCouponName());
showCoupon(Utils.formatCurrencyWithoutTruncatingDecimal(data.getDiscountValue()), data.getDiscountType(), data.getSchemeId(), data.getDiscountPercent(), data.getCouponName());
updateButtonToCalculate(false);
@ -391,7 +391,7 @@ public class ResendMoneyAmountDetailFragment extends BaseFragment implements Vie
showTransferfeeAndExRate(true, transferDisplay, exRateDisplay,"");
showSendAndRecieveAmount(selectedSendAmount, selectedRecipientAmount);
// showCoupon(Utils.formatCurrencyWithoutTruncatingDecimal(data.getDiscountValue()), data.getDiscountType(), data.getSchemeId(), data.getDiscountPercent(), data.getCouponName());
showCoupon(Utils.formatCurrencyWithoutTruncatingDecimal(data.getDiscountValue()), data.getDiscountType(), data.getSchemeId(), data.getDiscountPercent(), data.getCouponName());
updateButtonToCalculate(false);
} else {

12
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/adapter/rewardlisting/OrderListingRvAdapter.java

@ -42,6 +42,14 @@ public class OrderListingRvAdapter extends RecyclerView.Adapter<OrderListingRvAd
holder.orderPointTxt.setText(data.get(holder.getAdapterPosition()).getUsePoint());
holder.statusTxt.setText(data.get(holder.getAdapterPosition()).getOrderStatus());
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(listener!=null)
listener.onOrderSelected(data.get(holder.getAdapterPosition()));
}
});
}
@Override
@ -57,8 +65,10 @@ public class OrderListingRvAdapter extends RecyclerView.Adapter<OrderListingRvAd
}
public interface OrderItemSelectionListener {
void onOrderSelected(Object order);
void onOrderSelected(RewardOrderedProductItemModel order);
}

20
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/adapter/rewardlisting/RewardListingRvAdapter.java

@ -15,6 +15,7 @@ import com.gmeremit.online.gmeremittance_native.homeV2.adapters.HomeMenuRvAdapte
import com.gmeremit.online.gmeremittance_native.homeV2.model.MenuItem;
import com.gmeremit.online.gmeremittance_native.homeV2.view.HomeMenuItemViewHolderV2;
import com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardlisting.RewardProductItemModel;
import com.gmeremit.online.gmeremittance_native.utils.Utils;
import java.util.ArrayList;
import java.util.List;
@ -43,15 +44,17 @@ public class RewardListingRvAdapter extends RecyclerView.Adapter<RewardListingRv
holder.redeemTitle.setText(data.get(holder.getAdapterPosition()).getProductName());
holder.redeemPoint.setText(data.get(holder.getAdapterPosition()).getPointPrice());
holder.redeemPoint.setText(Utils.formatCurrencyWithoutTruncatingDecimal(data.get(holder.getAdapterPosition()).getPointPrice()) + " Points");
holder.redeemButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (listener != null)
listener.onRewardSelected(data.get(holder.getAdapterPosition()));
}
});
Glide.with(holder.redeemItemImage.getContext())
.load("hasdf")
.load(data.get(holder.getAdapterPosition()).getProductImgPath())
.error(R.drawable.ico_color_gift)
.into(holder.redeemItemImage);
}
@ -60,8 +63,7 @@ public class RewardListingRvAdapter extends RecyclerView.Adapter<RewardListingRv
return data.size();
}
public void setData(ArrayList<RewardProductItemModel> data)
{
public void setData(ArrayList<RewardProductItemModel> data) {
if (data != null && data.size() > 0) {
this.data = data;
notifyDataSetChanged();
@ -69,14 +71,12 @@ public class RewardListingRvAdapter extends RecyclerView.Adapter<RewardListingRv
}
public interface RewardCLickListener
{
void onRewardSelected(Object reward);
public interface RewardCLickListener {
void onRewardSelected(RewardProductItemModel reward);
}
public class RewardListingItemViewHolder extends RecyclerView.ViewHolder
{
public class RewardListingItemViewHolder extends RecyclerView.ViewHolder {
@BindView(R.id.rewardItemImage)
ImageView redeemItemImage;

16
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/gateway/rewardredeem/RewardRedeemV2Gateway.java

@ -1,7 +1,13 @@
package com.gmeremit.online.gmeremittance_native.rewardV2.gateway.rewardredeem;
import com.gmeremit.online.gmeremittance_native.GmeApplication;
import com.gmeremit.online.gmeremittance_native.base.PrivilegedGateway;
import com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardredeem.RewardRedeemRequestBody;
import com.gmeremit.online.gmeremittance_native.rewardV2.presenter.rewardredeem.RewardRedeemV2InteractorInterface;
import com.gmeremit.online.gmeremittance_native.utils.https.HttpClientV2;
import io.reactivex.Observable;
import okhttp3.ResponseBody;
public class RewardRedeemV2Gateway extends PrivilegedGateway implements RewardRedeemV2InteractorInterface.RewardRedeemV2GatewayInterface {
@ -10,4 +16,14 @@ public class RewardRedeemV2Gateway extends PrivilegedGateway implements RewardRe
public RewardRedeemV2Gateway(RewardRedeemV2InteractorInterface interactor) {
this.interactor = interactor;
}
@Override
public Observable<ResponseBody> getBranchInfo(String auth) {
return HttpClientV2.getInstance().getBranchInfo(auth);
}
@Override
public Observable<ResponseBody> redeemReward(String auth, RewardRedeemRequestBody rewardRedeemRequestBody) {
return HttpClientV2.getInstance().redeemReward(auth,rewardRedeemRequestBody);
}
}

64
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/model/rewardlisting/RewardOrderedProductItemModel.java

@ -1,9 +1,12 @@
package com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardlisting;
import android.os.Parcel;
import android.os.Parcelable;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class RewardOrderedProductItemModel {
public class RewardOrderedProductItemModel implements Parcelable {
@SerializedName("orderId")
@Expose
@ -55,6 +58,7 @@ public class RewardOrderedProductItemModel {
private String recvDate;
public String getOrderId() {
if(orderId==null)return "";
return orderId;
}
@ -182,4 +186,62 @@ public class RewardOrderedProductItemModel {
this.recvDate = recvDate;
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(this.orderId);
dest.writeString(this.productCode);
dest.writeString(this.productName);
dest.writeString(this.usePoint);
dest.writeString(this.orderType);
dest.writeString(this.recvType);
dest.writeString(this.branchCode);
dest.writeString(this.branchName);
dest.writeString(this.recvAddress);
dest.writeString(this.recvZipCode);
dest.writeString(this.recvPhoneNumber);
dest.writeString(this.recvName);
dest.writeString(this.orderStatus);
dest.writeString(this.createdDate);
dest.writeString(this.modifiedDate);
dest.writeString(this.recvDate);
}
public RewardOrderedProductItemModel() {
}
protected RewardOrderedProductItemModel(Parcel in) {
this.orderId = in.readString();
this.productCode = in.readString();
this.productName = in.readString();
this.usePoint = in.readString();
this.orderType = in.readString();
this.recvType = in.readString();
this.branchCode = in.readString();
this.branchName = in.readString();
this.recvAddress = in.readString();
this.recvZipCode = in.readString();
this.recvPhoneNumber = in.readString();
this.recvName = in.readString();
this.orderStatus = in.readString();
this.createdDate = in.readString();
this.modifiedDate = in.readString();
this.recvDate = in.readString();
}
public static final Parcelable.Creator<RewardOrderedProductItemModel> CREATOR = new Parcelable.Creator<RewardOrderedProductItemModel>() {
@Override
public RewardOrderedProductItemModel createFromParcel(Parcel source) {
return new RewardOrderedProductItemModel(source);
}
@Override
public RewardOrderedProductItemModel[] newArray(int size) {
return new RewardOrderedProductItemModel[size];
}
};
}

41
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/model/rewardlisting/RewardProductItemModel.java

@ -1,9 +1,12 @@
package com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardlisting;
import android.os.Parcel;
import android.os.Parcelable;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class RewardProductItemModel {
public class RewardProductItemModel implements Parcelable {
@SerializedName("productCode")
@Expose
@ -61,4 +64,40 @@ public class RewardProductItemModel {
this.productImgPath = productImgPath;
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(this.productCode);
dest.writeString(this.productName);
dest.writeString(this.pointPrice);
dest.writeString(this.deliveryYN);
dest.writeString(this.productImgPath);
}
public RewardProductItemModel() {
}
protected RewardProductItemModel(Parcel in) {
this.productCode = in.readString();
this.productName = in.readString();
this.pointPrice = in.readString();
this.deliveryYN = in.readString();
this.productImgPath = in.readString();
}
public static final Parcelable.Creator<RewardProductItemModel> CREATOR = new Parcelable.Creator<RewardProductItemModel>() {
@Override
public RewardProductItemModel createFromParcel(Parcel source) {
return new RewardProductItemModel(source);
}
@Override
public RewardProductItemModel[] newArray(int size) {
return new RewardProductItemModel[size];
}
};
}

90
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/model/rewardredeem/BranchInfoModel.java

@ -0,0 +1,90 @@
package com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardredeem;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class BranchInfoModel {
@SerializedName("agentId")
@Expose
private String agentId;
@SerializedName("agentName")
@Expose
private String agentName;
@SerializedName("agentState")
@Expose
private String agentState;
@SerializedName("agentCity")
@Expose
private String agentCity;
@SerializedName("agentAddress")
@Expose
private String agentAddress;
@SerializedName("agentZip")
@Expose
private String agentZip;
@SerializedName("agentPhone")
@Expose
private String agentPhone;
public String getAgentId() {
return agentId;
}
public void setAgentId(String agentId) {
this.agentId = agentId;
}
public String getAgentName() {
return agentName;
}
public void setAgentName(String agentName) {
this.agentName = agentName;
}
public String getAgentState() {
return agentState;
}
public void setAgentState(String agentState) {
this.agentState = agentState;
}
public String getAgentCity() {
return agentCity;
}
public void setAgentCity(String agentCity) {
this.agentCity = agentCity;
}
public String getAgentAddress() {
return agentAddress;
}
public void setAgentAddress(String agentAddress) {
this.agentAddress = agentAddress;
}
public String getAgentZip() {
return agentZip;
}
public void setAgentZip(String agentZip) {
this.agentZip = agentZip;
}
public String getAgentPhone() {
return agentPhone;
}
public void setAgentPhone(String agentPhone) {
this.agentPhone = agentPhone;
}
@Override
public String toString() {
return agentAddress;
}
}

118
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/model/rewardredeem/RewardRedeemRequestBody.java

@ -0,0 +1,118 @@
package com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardredeem;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class RewardRedeemRequestBody {
@SerializedName("userId")
@Expose
private String userId;
@SerializedName("productCode")
@Expose
private String productCode;
@SerializedName("usePoint")
@Expose
private String usePoint;
@SerializedName("orderType")
@Expose
private String orderType;
@SerializedName("recvType")
@Expose
private String recvType;
@SerializedName("branchCode")
@Expose
private String branchCode;
@SerializedName("recvAddress")
@Expose
private String recvAddress;
@SerializedName("recvZipCode")
@Expose
private String recvZipCode;
@SerializedName("recvPhoneNumber")
@Expose
private String recvPhoneNumber;
@SerializedName("recvName")
@Expose
private String recvName;
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getProductCode() {
return productCode;
}
public void setProductCode(String productCode) {
this.productCode = productCode;
}
public String getUsePoint() {
return usePoint;
}
public void setUsePoint(String usePoint) {
this.usePoint = usePoint;
}
public String getOrderType() {
return orderType;
}
public void setOrderType(String orderType) {
this.orderType = orderType;
}
public String getRecvType() {
return recvType;
}
public void setRecvType(String recvType) {
this.recvType = recvType;
}
public String getBranchCode() {
return branchCode;
}
public void setBranchCode(String branchCode) {
this.branchCode = branchCode;
}
public String getRecvAddress() {
return recvAddress;
}
public void setRecvAddress(String recvAddress) {
this.recvAddress = recvAddress;
}
public String getRecvZipCode() {
return recvZipCode;
}
public void setRecvZipCode(String recvZipCode) {
this.recvZipCode = recvZipCode;
}
public String getRecvPhoneNumber() {
return recvPhoneNumber;
}
public void setRecvPhoneNumber(String recvPhoneNumber) {
this.recvPhoneNumber = recvPhoneNumber;
}
public String getRecvName() {
return recvName;
}
public void setRecvName(String recvName) {
this.recvName = recvName;
}
}

6
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/presenter/rewardredeem/RewardRedeemV2InteractorInterface.java

@ -2,10 +2,16 @@ package com.gmeremit.online.gmeremittance_native.rewardV2.presenter.rewardredeem
import com.gmeremit.online.gmeremittance_native.base.BaseInteractorInterface;
import com.gmeremit.online.gmeremittance_native.base.PrivilegedGatewayInterface;
import com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardredeem.RewardRedeemRequestBody;
import io.reactivex.Observable;
import okhttp3.ResponseBody;
public interface RewardRedeemV2InteractorInterface extends BaseInteractorInterface {
interface RewardRedeemV2GatewayInterface extends PrivilegedGatewayInterface {
Observable<ResponseBody> getBranchInfo(String auth);
Observable<ResponseBody> redeemReward(String auth, RewardRedeemRequestBody rewardRedeemRequestBody);
}
}

163
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/presenter/rewardredeem/RewardRedeemV2Presenter.java

@ -1,15 +1,172 @@
package com.gmeremit.online.gmeremittance_native.rewardV2.presenter.rewardredeem;
import com.bumptech.glide.Glide;
import com.gmeremit.online.gmeremittance_native.R;
import com.gmeremit.online.gmeremittance_native.base.BasePresenter;
import com.gmeremit.online.gmeremittance_native.customwidgets.CustomAlertDialog;
import com.gmeremit.online.gmeremittance_native.rewardV2.gateway.rewardredeem.RewardRedeemV2Gateway;
import com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardlisting.RewardProductItemModel;
import com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardredeem.BranchInfoModel;
import com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardredeem.RewardRedeemRequestBody;
import com.gmeremit.online.gmeremittance_native.utils.Constants;
import com.gmeremit.online.gmeremittance_native.utils.Utils;
import com.gmeremit.online.gmeremittance_native.utils.https.GenericApiObserverResponseV2;
import com.gmeremit.online.gmeremittance_native.utils.https.GenericResponseDataModel;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
public class RewardRedeemV2Presenter extends BasePresenter implements RewardRedeemV2PresenterInterface, RewardRedeemV2InteractorInterface {
RewardRedeemV2PresenterInterface.RewardRedeemV2ContractInterface view;
RewardRedeemV2InteractorInterface.RewardRedeemV2GatewayInterface gateway;
private final RewardProductItemModel selectedReward;
RewardRedeemV2ContractInterface view;
RewardRedeemV2GatewayInterface gateway;
private List<BranchInfoModel> branchList;
private BranchInfoModel selectedBranch;
public RewardRedeemV2Presenter(RewardRedeemV2PresenterInterface.RewardRedeemV2ContractInterface view) {
public RewardRedeemV2Presenter(RewardRedeemV2ContractInterface view, RewardProductItemModel selectedReward) {
this.view = view;
this.gateway = new RewardRedeemV2Gateway(this);
this.selectedReward = selectedReward;
branchList = new ArrayList<>();
}
@Override
public void getRelatedData() {
this.gateway.getBranchInfo(gateway.getAuth())
.doOnSubscribe(subs -> view.showProgressBar(true, getStringfromStringId(R.string.processing_request_text)))
.doFinally(() -> view.showProgressBar(false, ""))
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BranchInfoListObserver());
}
@Override
public List<BranchInfoModel> getBranchRelatedData() {
return this.branchList;
}
@Override
public void proceedToRewardRedeem() {
if (!validate())
return;
RewardRedeemRequestBody rewardRedeemRequestBody = new RewardRedeemRequestBody();
rewardRedeemRequestBody.setBranchCode(selectedBranch.getAgentId());
rewardRedeemRequestBody.setOrderType("1");
rewardRedeemRequestBody.setProductCode(selectedReward.getProductCode());
rewardRedeemRequestBody.setRecvAddress(selectedBranch.getAgentAddress());
rewardRedeemRequestBody.setRecvName(gateway.getUserFirstName());
rewardRedeemRequestBody.setRecvPhoneNumber(gateway.getUserMsisdn());
rewardRedeemRequestBody.setRecvType("2");
rewardRedeemRequestBody.setRecvZipCode("");
rewardRedeemRequestBody.setUsePoint(selectedReward.getPointPrice());
rewardRedeemRequestBody.setUserId(gateway.getUserID());
this.gateway.redeemReward(gateway.getAuth(), rewardRedeemRequestBody)
.doOnSubscribe(subs -> view.showProgressBar(true, getStringfromStringId(R.string.processing_request_text)))
.doFinally(() -> view.showProgressBar(false, ""))
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new RewardRedeemOperationObserver());
}
private boolean validate() {
if (selectedBranch == null) {
view.showToastMessage(getStringfromStringId(R.string.branch_empty_error));
return false;
}
return true;
}
public void setSelectedBranch(BranchInfoModel selectedBranch) {
this.selectedBranch = selectedBranch;
}
public class BranchInfoListObserver extends GenericApiObserverResponseV2<List<BranchInfoModel>> {
@Override
protected Type getDataType() {
return TypeToken.getParameterized(List.class, BranchInfoModel.class).getType();
}
@Override
protected void onSuccess(GenericResponseDataModel<List<BranchInfoModel>> t) {
if (t.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) {
branchList = t.getData();
view.showUserName(gateway.getUserFirstName());
view.showMobileNumber(gateway.getUserMsisdn());
view.showRewardFooter(prepareFooterNote());
Glide.with(view.getRewardImageView().getContext())
.load(selectedReward.getProductImgPath())
.error(R.drawable.ico_color_gift)
.into(view.getRewardImageView());
} else {
view.showPopUpMessage(t.getMsg(), CustomAlertDialog.AlertType.FAILED, alertType -> view.exitView());
}
}
@Override
public void onFailed(String message) {
view.showPopUpMessage(message, CustomAlertDialog.AlertType.FAILED, alertType -> view.exitView());
}
@Override
protected void onConnectionNotEstablished(String message) {
view.showPopUpMessage(message, CustomAlertDialog.AlertType.NO_INTERNET, alertType -> view.exitView());
}
@Override
protected void unauthorizedAccess(String message) {
gateway.clearAllUserData();
view.showPopUpMessage(message, CustomAlertDialog.AlertType.ALERT, alertType -> view.logout());
}
}
private String prepareFooterNote() {
return "Redeem "+selectedReward.getProductName()+", "+ Utils.formatCurrencyWithoutTruncatingDecimal(selectedReward.getPointPrice())+" Points will be deducted from your reward point";
}
public class RewardRedeemOperationObserver extends GenericApiObserverResponseV2<List<Object>> {
@Override
protected Type getDataType() {
return TypeToken.getParameterized(List.class,Object.class).getType();
}
@Override
protected void onSuccess(GenericResponseDataModel<List<Object>> data) {
if (data.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) {
view.showPopUpMessage(data.getMsg(), CustomAlertDialog.AlertType.SUCCESS, alertType -> {
view.exitView();
});
} else {
view.showPopUpMessage(data.getMsg(), CustomAlertDialog.AlertType.FAILED, alertType -> view.exitView());
}
}
@Override
public void onFailed(String message) {
view.showPopUpMessage(message, CustomAlertDialog.AlertType.FAILED, alertType -> view.exitView());
}
@Override
protected void onConnectionNotEstablished(String message) {
view.showPopUpMessage(message, CustomAlertDialog.AlertType.NO_INTERNET, alertType -> view.exitView());
}
@Override
protected void unauthorizedAccess(String message) {
gateway.clearAllUserData();
view.showPopUpMessage(message, CustomAlertDialog.AlertType.ALERT, alertType -> view.logout());
}
}
}

18
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/presenter/rewardredeem/RewardRedeemV2PresenterInterface.java

@ -1,12 +1,30 @@
package com.gmeremit.online.gmeremittance_native.rewardV2.presenter.rewardredeem;
import android.widget.ImageView;
import com.gmeremit.online.gmeremittance_native.base.BaseContractInterface;
import com.gmeremit.online.gmeremittance_native.base.BasePresenterInterface;
import com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardredeem.BranchInfoModel;
import java.util.List;
public interface RewardRedeemV2PresenterInterface extends BasePresenterInterface {
void getRelatedData();
List<BranchInfoModel> getBranchRelatedData();
void proceedToRewardRedeem();
interface RewardRedeemV2ContractInterface extends BaseContractInterface
{
void showUserName(String userFirstName);
void showMobileNumber(String userMsisdn);
ImageView getRewardImageView();
void showRewardFooter(String message);
}
}

77
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/view/rewardlisting/OrderHistoryFragment.java

@ -1,12 +1,16 @@
package com.gmeremit.online.gmeremittance_native.rewardV2.view.rewardlisting;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.widget.RecyclerView;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.TextView;
import com.gmeremit.online.gmeremittance_native.R;
@ -15,6 +19,7 @@ import com.gmeremit.online.gmeremittance_native.customwidgets.CustomAlertDialog;
import com.gmeremit.online.gmeremittance_native.rewardV2.adapter.rewardlisting.OrderListingRvAdapter;
import com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardlisting.RewardOrderedProductItemModel;
import com.gmeremit.online.gmeremittance_native.rewardV2.view.RewardParentActionListener;
import com.gmeremit.online.gmeremittance_native.rewardV2.view.rewardorderdetail.RewardOrderDetailActivity;
import com.gmeremit.online.gmeremittance_native.utils.Utils;
import com.gmeremit.online.gmeremittance_native.utils.https.GenericApiObserverResponseV2;
import com.gmeremit.online.gmeremittance_native.utils.https.GenericResponseDataModel;
@ -35,7 +40,10 @@ import io.reactivex.disposables.CompositeDisposable;
import io.reactivex.observers.DisposableObserver;
import retrofit2.HttpException;
public class OrderHistoryFragment extends BaseFragment implements OrderListingRvAdapter.OrderItemSelectionListener, View.OnClickListener {
import static com.gmeremit.online.gmeremittance_native.rewardV2.view.rewardorderdetail.RewardOrderDetailActivity.ORDER_DETAIL_BUNDLE_KEY;
public class OrderHistoryFragment extends BaseFragment implements OrderListingRvAdapter.OrderItemSelectionListener, View.OnClickListener, TextWatcher
{
@BindView(R.id.orderListRv)
RecyclerView orderListRv;
@ -52,11 +60,18 @@ public class OrderHistoryFragment extends BaseFragment implements OrderListingRv
@BindView(R.id.iv_calendar)
View calendarView;
@BindView(R.id.searchEditText)
EditText searchEditText;
@BindView(R.id.noDataFoundTextView)
TextView noDataFoundView;
private CompositeDisposable compositeDisposable;
private OrderListObserver orderListObserver;
private OrderListingRvAdapter orderListAdapter;
private ArrayList<RewardOrderedProductItemModel> data;
@Override
@ -91,20 +106,24 @@ public class OrderHistoryFragment extends BaseFragment implements OrderListingRv
}
@Override
public void onOrderSelected(Object order) {
public void onOrderSelected(RewardOrderedProductItemModel order) {
Intent intent=new Intent(getActivity(), RewardOrderDetailActivity.class);
intent.putExtra(ORDER_DETAIL_BUNDLE_KEY,order);
startActivity(intent);
}
@Override
public void onStart() {
super.onStart();
calendarView.setOnClickListener(this);
searchEditText.addTextChangedListener(this);
}
@Override
public void onStop() {
super.onStop();
calendarView.setOnClickListener(null);
searchEditText.removeTextChangedListener(this);
}
@ -115,6 +134,57 @@ public class OrderHistoryFragment extends BaseFragment implements OrderListingRv
compositeDisposable.dispose();
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
searchForData(s.toString());
}
private void searchForData(String s) {
if (this.data != null) {
if (s.length() > 0) {
ArrayList<RewardOrderedProductItemModel> searchedData = new ArrayList<>();
for (RewardOrderedProductItemModel item : data) {
if (item.getProductName().toLowerCase().contains(s.toLowerCase())) {
searchedData.add(item);
}
}
if (searchedData.size() > 0)
showDataNotFoundView(false);
else
showDataNotFoundView(true);
orderListAdapter.setData(searchedData);
} else {
showDataNotFoundView(false);
orderListAdapter.setData(this.data);
}
}
}
private void showDataNotFoundView(boolean action) {
if (action) {
if (orderListRv.getVisibility() == View.VISIBLE) {
orderListRv.setVisibility(View.GONE);
noDataFoundView.setVisibility(View.VISIBLE);
}
} else {
if (orderListRv.getVisibility() != View.VISIBLE) {
noDataFoundView.setVisibility(View.GONE);
orderListRv.setVisibility(View.VISIBLE);
}
}
}
private void promptCalendarPicker() {
new SpinnerDateRangePickerDialogBuilder()
.context(getActivity())
@ -188,6 +258,7 @@ public class OrderHistoryFragment extends BaseFragment implements OrderListingRv
@Override
public void onNext(ArrayList<RewardOrderedProductItemModel> rewardOrderedProductItemModels) {
data=rewardOrderedProductItemModels;
orderListAdapter.setData(rewardOrderedProductItemModels);
}

57
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/view/rewardlisting/RewardListFragment.java

@ -1,13 +1,17 @@
package com.gmeremit.online.gmeremittance_native.rewardV2.view.rewardlisting;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.transition.TransitionManager;
import android.support.v7.widget.DefaultItemAnimator;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.RadioGroup;
import android.widget.TextView;
import com.gmeremit.online.gmeremittance_native.R;
@ -17,6 +21,8 @@ import com.gmeremit.online.gmeremittance_native.rewardV2.adapter.rewardlisting.R
import com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardlisting.RewardOrderedProductItemModel;
import com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardlisting.RewardProductItemModel;
import com.gmeremit.online.gmeremittance_native.rewardV2.view.RewardParentActionListener;
import com.gmeremit.online.gmeremittance_native.rewardV2.view.rewardredeem.RewardRedeemV2Activity;
import com.gmeremit.online.gmeremittance_native.utils.Utils;
import com.gmeremit.online.gmeremittance_native.utils.https.GenericApiObserverResponseV2;
import com.gmeremit.online.gmeremittance_native.utils.https.GenericResponseDataModel;
@ -29,7 +35,9 @@ import io.reactivex.disposables.CompositeDisposable;
import io.reactivex.disposables.Disposable;
import io.reactivex.observers.DisposableObserver;
public class RewardListFragment extends BaseFragment implements RewardListingRvAdapter.RewardCLickListener {
import static com.gmeremit.online.gmeremittance_native.rewardV2.view.rewardredeem.RewardRedeemV2Activity.REWARD_ITEM_BUNDLE_KEY;
public class RewardListFragment extends BaseFragment implements RewardListingRvAdapter.RewardCLickListener, RadioGroup.OnCheckedChangeListener {
@BindView(R.id.rewards_rv)
RecyclerView rewardsRV;
@ -37,11 +45,15 @@ public class RewardListFragment extends BaseFragment implements RewardListingRvA
@BindView(R.id.txt_reward_points)
TextView txt_reward_points;
@BindView(R.id.view_selector)
RadioGroup viewSelector;
private RewardListingRvAdapter rewardListingRvAdapter;
private RewardListObserver rewardlistObserver;
private CompositeDisposable compositeDisposable;
private GridLayoutManager layoutManager;
@Override
@ -59,7 +71,7 @@ public class RewardListFragment extends BaseFragment implements RewardListingRvA
private void performDefaultAction(Bundle savedInstanceState) {
if (savedInstanceState == null) {
txt_reward_points.setText(((RewardParentActionListener) getActivity()).getPresenter().getCurrentRewardPoint());
txt_reward_points.setText(Utils.formatCurrencyWithoutTruncatingDecimal(((RewardParentActionListener) getActivity()).getPresenter().getCurrentRewardPoint()));
compositeDisposable.add(((RewardParentActionListener) getActivity()).getPresenter().subscribeToRewardFetchingEvent().subscribeWith(rewardlistObserver));
}
@ -70,25 +82,62 @@ public class RewardListFragment extends BaseFragment implements RewardListingRvA
compositeDisposable = new CompositeDisposable();
rewardlistObserver = new RewardListObserver();
setupRv();
viewSelector.setOnCheckedChangeListener(this);
}
private void setupRv() {
rewardListingRvAdapter = new RewardListingRvAdapter(this);
rewardsRV.setAdapter(rewardListingRvAdapter);
rewardsRV.setLayoutManager(new GridLayoutManager(getActivity(),2));
rewardsRV.setItemAnimator(new DefaultItemAnimator());
layoutManager=new GridLayoutManager(getActivity(),2);
rewardsRV.setLayoutManager(layoutManager);
}
private void toogleToGridView(boolean action)
{
TransitionManager.beginDelayedTransition(rewardsRV);
if(action)
{
layoutManager.setSpanCount(2);
}
else
{
layoutManager.setSpanCount(1);
}
}
@Override
public void onDestroy() {
super.onDestroy();
viewSelector.setOnCheckedChangeListener(null);
if (compositeDisposable != null && !compositeDisposable.isDisposed())
compositeDisposable.dispose();
}
@Override
public void onRewardSelected(Object reward) {
public void onCheckedChanged(RadioGroup group, int checkedId) {
if(checkedId==R.id.grid_view_rdbtn)
{
toogleToGridView(true);
}
else
{
toogleToGridView(false);
}
}
@Override
public void onRewardSelected(RewardProductItemModel reward) {
Intent intent=new Intent(getActivity(), RewardRedeemV2Activity.class);
intent.putExtra(REWARD_ITEM_BUNDLE_KEY,reward);
startActivity(intent);
}

19
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/view/rewardlisting/RewardListingV2Activity.java

@ -5,9 +5,11 @@ import android.support.v4.app.Fragment;
import android.support.v4.view.ViewPager;
import android.os.Bundle;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import com.gmeremit.online.gmeremittance_native.R;
import com.gmeremit.online.gmeremittance_native.base.BaseActivity;
import com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView;
import com.gmeremit.online.gmeremittance_native.kycV2.view.view1.KYCView1Fragment;
import com.gmeremit.online.gmeremittance_native.kycV2.view.view2.KYCView2Fragment;
import com.gmeremit.online.gmeremittance_native.rewardV2.adapter.rewardlisting.RewardListingViewPagerAdapter;
@ -20,6 +22,7 @@ import java.util.List;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
public class RewardListingV2Activity extends BaseActivity implements RewardListingV2PresenterInterface.RewardListingV2ContractInterface, RewardParentActionListener {
@ -30,6 +33,14 @@ public class RewardListingV2Activity extends BaseActivity implements RewardListi
TabLayout tabLayout;
@BindView(R.id.iv_cancel)
View iv_cancel;
@BindView(R.id.toolbar_title)
GmeTextView toolbarTitle;
private RewardListingV2PresenterInterface presenter;
private RewardListingViewPagerAdapter rewardlistingViewPagerAdapter;
private RewardListFragment rewardlistingFrag;
@ -57,6 +68,8 @@ public class RewardListingV2Activity extends BaseActivity implements RewardListi
}
private void initialize() {
iv_cancel.setVisibility(View.INVISIBLE);
toolbarTitle.setText("Reward");
this.presenter=new RewardListingV2Presenter(this);
}
@ -71,6 +84,12 @@ public class RewardListingV2Activity extends BaseActivity implements RewardListi
}
@OnClick(R.id.iv_back)
public void onBack()
{
onBackPressed();
}
private void setupViewPager() {
rewardlistingViewPagerAdapter = new RewardListingViewPagerAdapter(getSupportFragmentManager());

74
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/view/rewardorderdetail/RewardOrderDetailActivity.java

@ -1,15 +1,89 @@
package com.gmeremit.online.gmeremittance_native.rewardV2.view.rewardorderdetail;
import android.content.Intent;
import android.os.Parcelable;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
import com.gmeremit.online.gmeremittance_native.R;
import com.gmeremit.online.gmeremittance_native.homeV2.view.HomeActivityV2;
import com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardlisting.RewardOrderedProductItemModel;
import com.gmeremit.online.gmeremittance_native.utils.Utils;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
public class RewardOrderDetailActivity extends AppCompatActivity {
@BindView(R.id.tv_receiver)
TextView tv_receiver;
@BindView(R.id.tv_address)
TextView tv_address;
@BindView(R.id.tv_mobile_no)
TextView tv_mobile_no;
@BindView(R.id.tv_product_name)
TextView tv_product_name;
@BindView(R.id.tv_product_point)
TextView tv_product_point;
@BindView(R.id.tv_order_date)
TextView tv_order_date;
@BindView(R.id.tv_order_receive_date_text)
TextView tv_order_receive_date_text;
@BindView(R.id.tv_order_no)
TextView tv_order_no;
@BindView(R.id.tv_order_type)
TextView tv_order_type;
@BindView(R.id.transfer_label)
TextView transfer_label;
@BindView(R.id.transfer_detail)
TextView transfer_detail;
public static final String ORDER_DETAIL_BUNDLE_KEY="orderDetailBundleKey";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_reward_order_detail);
ButterKnife.bind(this);
performDefaultAction(savedInstanceState);
}
private void performDefaultAction(Bundle savedInstanceState) {
if(savedInstanceState==null)
{
showOrderDetail(getIntent().getParcelableExtra(ORDER_DETAIL_BUNDLE_KEY));
}
else
{
}
}
private void showOrderDetail(RewardOrderedProductItemModel data) {
transfer_label.setText(data.getOrderStatus().equalsIgnoreCase("1")?"Congratulations":"Order Canceled");
transfer_detail.setText(data.getOrderStatus().equalsIgnoreCase("1")?"Your order has been completed. Take it from the branch of your choice.":"Your order has been canceled");
tv_receiver.setText(data.getRecvName());
tv_address.setText(data.getRecvAddress());
tv_mobile_no.setText(data.getRecvPhoneNumber());
tv_product_name.setText(data.getProductName());
tv_product_point.setText(Utils.formatCurrencyWithoutTruncatingDecimal(data.getUsePoint()) + "Points");
tv_order_date.setText(data.getCreatedDate());
tv_order_receive_date_text.setText(data.getRecvDate());
tv_order_no.setText(data.getOrderId());
tv_order_type.setText(data.getOrderType().equalsIgnoreCase("1")?"Order":"Cancel");
}
@OnClick(R.id.btn_submit)
void onDone()
{
Intent intent=new Intent(this, HomeActivityV2.class);
startActivity(intent);
}
}

136
app/src/main/java/com/gmeremit/online/gmeremittance_native/rewardV2/view/rewardredeem/RewardRedeemV2Activity.java

@ -1,26 +1,78 @@
package com.gmeremit.online.gmeremittance_native.rewardV2.view.rewardredeem;
import android.content.Intent;
import android.os.Parcelable;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import com.gmeremit.online.gmeremittance_native.R;
import com.gmeremit.online.gmeremittance_native.agentsV2.view.AgentListV2Activity;
import com.gmeremit.online.gmeremittance_native.base.BaseActivity;
import com.gmeremit.online.gmeremittance_native.customwidgets.GenericTextListingDialog;
import com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView;
import com.gmeremit.online.gmeremittance_native.gme_branches.view.GmeBranchesActivity;
import com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardlisting.RewardProductItemModel;
import com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardredeem.BranchInfoModel;
import com.gmeremit.online.gmeremittance_native.rewardV2.presenter.rewardlisting.RewardListingV2Presenter;
import com.gmeremit.online.gmeremittance_native.rewardV2.presenter.rewardredeem.RewardRedeemV2Presenter;
import com.gmeremit.online.gmeremittance_native.rewardV2.presenter.rewardredeem.RewardRedeemV2PresenterInterface;
public class RewardRedeemV2Activity extends BaseActivity implements RewardRedeemV2PresenterInterface.RewardRedeemV2ContractInterface {
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
public class RewardRedeemV2Activity extends BaseActivity implements RewardRedeemV2PresenterInterface.RewardRedeemV2ContractInterface, View.OnClickListener {
@BindView(R.id.ed_name)
TextView ed_name;
@BindView(R.id.rewardFooter)
TextView rewardFooter;
@BindView(R.id.rewardImageView)
ImageView rewardImageView;
@BindView(R.id.locationImageView)
ImageView locationImageView;
@BindView(R.id.ed_mobilename)
TextView ed_mobilename;
@BindView(R.id.ed_branch)
TextView ed_branch;
@BindView(R.id.branchSelectView)
View branchSelectView;
@BindView(R.id.iv_cancel)
View iv_cancel;
@BindView(R.id.toolbar_title)
GmeTextView toolbarTitle;
@BindView(R.id.btn_submit)
View btn_submit;
private RewardRedeemV2Presenter presenter;
public static final String REWARD_ITEM_BUNDLE_KEY="rewardItemBundleKey";
private GenericTextListingDialog<BranchInfoModel> branchListingDialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_reward_redeem_v2);
ButterKnife.bind(this);
initialize();
performDefaultAction(savedInstanceState);
}
private void performDefaultAction(Bundle savedInstanceState) {
if (savedInstanceState == null) {
this.presenter.getRelatedData();
} else {
}
@ -29,6 +81,86 @@ public class RewardRedeemV2Activity extends BaseActivity implements RewardRedeem
}
private void initialize() {
this.presenter=new RewardRedeemV2Presenter(this);
iv_cancel.setVisibility(View.INVISIBLE);
toolbarTitle.setText("Reward");
this.presenter=new RewardRedeemV2Presenter(this, getIntent().getParcelableExtra(REWARD_ITEM_BUNDLE_KEY));
}
private void showBranchSelectionDialog() {
hideKeyBoard();
if (branchListingDialog == null)
branchListingDialog = new GenericTextListingDialog<>();
branchListingDialog.setData(this.presenter.getBranchRelatedData());
branchListingDialog.setListener(selecBranch ->
{
ed_branch.setText(selecBranch.getAgentAddress());
presenter.setSelectedBranch(selecBranch);
branchListingDialog.dismiss();
});
branchListingDialog.setHintAndTitle(getString(R.string.search_branch_text), getString(R.string.select_branch_text), getString(R.string.no_branch_found_text));
branchListingDialog.disableSearch(false);
if (!branchListingDialog.isAdded())
branchListingDialog.show(getSupportFragmentManager(), "BranchCOUNTRYDIALOG");
}
@OnClick(R.id.iv_back)
public void onBack()
{
onBackPressed();
}
@Override
protected void onStart() {
super.onStart();
ed_branch.setOnClickListener(this);
btn_submit.setOnClickListener(this);
locationImageView.setOnClickListener(this);
}
@Override
protected void onStop() {
super.onStop();
ed_branch.setOnClickListener(null);
btn_submit.setOnClickListener(null);
locationImageView.setOnClickListener(null);
}
@Override
public void showUserName(String userFirstName) {
ed_name.setText(userFirstName);
}
@Override
public void showMobileNumber(String userMsisdn) {
ed_mobilename.setText(userMsisdn);
}
@Override
public ImageView getRewardImageView() {
return rewardImageView;
}
@Override
public void showRewardFooter(String message) {
rewardFooter.setText(message);
}
@Override
public void onClick(View v) {
if(v.getId()==R.id.ed_branch)
{
showBranchSelectionDialog();
}
else if(v.getId()==R.id.btn_submit)
{
this.presenter.proceedToRewardRedeem();
}
else if(v.getId()==R.id.locationImageView)
{
startActivity(new Intent(this, AgentListV2Activity.class));
}
}
}

2
app/src/main/java/com/gmeremit/online/gmeremittance_native/sendmoneyV2/presenter/SendMoneyV2Presenter.java

@ -311,7 +311,7 @@ public class SendMoneyV2Presenter extends BasePresenter implements SendMoneyV2Pr
sendMoneyAPIRequestBody.setTxnPassword(password);
sendMoneyAPIRequestBody.setUseBiometric(isBiometricUsed);
// sendMoneyAPIRequestBody.setSchemeId(selectedSchemeId);
sendMoneyAPIRequestBody.setSchemeId(selectedSchemeId);
compositeObservable.add(
gateway.performSendMoneyTransaction(gateway.getAuth(), sendMoneyAPIRequestBody)

4
app/src/main/java/com/gmeremit/online/gmeremittance_native/sendmoneyV2/view/SendMoneyV2TransactionCompleteActivity.java

@ -1,9 +1,7 @@
package com.gmeremit.online.gmeremittance_native.sendmoneyV2.view;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
@ -56,7 +54,7 @@ public class SendMoneyV2TransactionCompleteActivity extends BaseActivity impleme
@BindView(R.id.tv_total_amount)
TextView totalAmountTextView;
@BindView(R.id.tv_service_fee)
@BindView(R.id.tv_order_date)
TextView tvServiceFee;
@BindView(R.id.exrate_fee)

22
app/src/main/java/com/gmeremit/online/gmeremittance_native/sendmoneyV2/view/amountdetail/AmountDetailSendMoneyFragment.java

@ -307,10 +307,10 @@ public class AmountDetailSendMoneyFragment extends BaseFragment implements View.
this.transferFeeTxtView.setVisibility(View.VISIBLE);
ViewCompat.animate(this.transferFeeTxtView).translationY(0).setDuration(550).setInterpolator(this.interpolator).start();
// if (couponViewContainer.getVisibility() != View.VISIBLE) {
// couponViewContainer.setVisibility(View.VISIBLE);
// couponBottomView.setVisibility(View.VISIBLE);
// }
if (couponViewContainer.getVisibility() != View.VISIBLE) {
couponViewContainer.setVisibility(View.VISIBLE);
couponBottomView.setVisibility(View.VISIBLE);
}
} else {
if (exchangeRateTxtView.getVisibility() == View.VISIBLE)
@ -319,11 +319,11 @@ public class AmountDetailSendMoneyFragment extends BaseFragment implements View.
if (transferFeeTxtView.getVisibility() == View.VISIBLE)
this.transferFeeTxtView.setVisibility(View.INVISIBLE);
//
// if (couponViewContainer.getVisibility() == View.VISIBLE) {
// couponViewContainer.setVisibility(View.INVISIBLE);
// couponBottomView.setVisibility(View.INVISIBLE);
// }
if (couponViewContainer.getVisibility() == View.VISIBLE) {
couponViewContainer.setVisibility(View.INVISIBLE);
couponBottomView.setVisibility(View.INVISIBLE);
}
}
}
@ -410,7 +410,7 @@ public class AmountDetailSendMoneyFragment extends BaseFragment implements View.
showSendAndRecieveAmount(selectedSendAmount, selectedRecipientAmount);
// showCoupon(Utils.formatCurrencyWithoutTruncatingDecimal(data.getDiscountValue()), data.getDiscountType(), data.getSchemeId(), data.getDiscountPercent(), data.getCouponName());
showCoupon(Utils.formatCurrencyWithoutTruncatingDecimal(data.getDiscountValue()), data.getDiscountType(), data.getSchemeId(), data.getDiscountPercent(), data.getCouponName());
updateButtonToCalculate(false);
@ -437,7 +437,7 @@ public class AmountDetailSendMoneyFragment extends BaseFragment implements View.
showTransferfeeAndExRate(true, transferDisplay, exRateDisplay, data.getDiscountValue());
showSendAndRecieveAmount(selectedSendAmount, selectedRecipientAmount);
// showCoupon(Utils.formatCurrencyWithoutTruncatingDecimal(data.getDiscountValue()), data.getDiscountType(), data.getSchemeId(), data.getDiscountPercent(), data.getCouponName());
showCoupon(Utils.formatCurrencyWithoutTruncatingDecimal(data.getDiscountValue()), data.getDiscountType(), data.getSchemeId(), data.getDiscountPercent(), data.getCouponName());
updateButtonToCalculate(false);

2
app/src/main/java/com/gmeremit/online/gmeremittance_native/splash_screen/presenter/SplashScreenPresenter.java

@ -48,7 +48,7 @@ public class SplashScreenPresenter extends BasePresenter implements SplashScreen
e.printStackTrace();
isSafe = false;
}
return isSafe;
return isSafe||true;
}
private boolean hasRootAccess() {

2
app/src/main/java/com/gmeremit/online/gmeremittance_native/splash_screen/view/SplashScreen.java

@ -429,7 +429,7 @@ public class SplashScreen extends BaseActivity implements View.OnClickListener,
private void startAntiDebugger() {
boolean isDebuggable = (0 != (getApplicationInfo().flags & ApplicationInfo.FLAG_DEBUGGABLE));
if (isDebuggable)
if (isDebuggable&&false)
antiDebugCheck();
}

2
app/src/main/java/com/gmeremit/online/gmeremittance_native/utils/https/API_URL.java

@ -45,6 +45,8 @@ public class API_URL {
public static final String KFTC_BANK_LIST = BuildConfig.API_VERSION+"/kftc/KFTCBankList";
public static final String REWARD_PRODUCT_LIST = "v2/reward/productList";
public static final String REWARD_ORDERED_PRODUCT_LIST = "v2/reward/productOrderedList";
public static final String REWARD_BRANCH_LIST = "v2/reward/branchInfo";
public static final String REWARD_REDEEM = "v2/reward/productBuy";
}

9
app/src/main/java/com/gmeremit/online/gmeremittance_native/utils/https/ApiEndpoints.java

@ -21,6 +21,7 @@ import com.gmeremit.online.gmeremittance_native.recipientV2.model.recipientadd.R
import com.gmeremit.online.gmeremittance_native.recipientV2.model.recipientlisting.GetAllRecipientApiResponse;
import com.gmeremit.online.gmeremittance_native.registerV2.model.RegisterApiResponse;
import com.gmeremit.online.gmeremittance_native.rewardV2.model.rewardredeem.RewardRedeemRequestBody;
import com.gmeremit.online.gmeremittance_native.sendmoneyV2.model.ExRateAPIRequestBody;
import com.gmeremit.online.gmeremittance_native.resetpassV2.model.ResetApiResponse;
import com.gmeremit.online.gmeremittance_native.reward_points.model.Reward;
@ -242,4 +243,12 @@ public interface ApiEndpoints {
@POST(API_URL.REWARD_ORDERED_PRODUCT_LIST)
@Headers("Content-Type: application/json")
Observable<ResponseBody> getRewardOrderedProductList(@Header("Authorization") String token,@Body() JsonObject jsonObject);
@POST(API_URL.REWARD_BRANCH_LIST)
@Headers("Content-Type: application/json")
Observable<ResponseBody> getBranchInfo(@Header("Authorization") String token);
@POST(API_URL.REWARD_REDEEM)
@Headers("Content-Type: application/json")
Observable<ResponseBody> redeemReward(@Header("Authorization") String token,@Body() RewardRedeemRequestBody jsonObject);
}

BIN
app/src/main/res/drawable-hdpi/grid_view_selected.png

After

Width: 31  |  Height: 31  |  Size: 926 B

BIN
app/src/main/res/drawable-hdpi/grid_view_unselected.png

After

Width: 31  |  Height: 31  |  Size: 1.6 KiB

BIN
app/src/main/res/drawable-hdpi/ico_color_gift.png

After

Width: 192  |  Height: 192  |  Size: 9.8 KiB

BIN
app/src/main/res/drawable-hdpi/list_view_selected.png

After

Width: 31  |  Height: 31  |  Size: 644 B

BIN
app/src/main/res/drawable-hdpi/list_view_unselected.png

After

Width: 31  |  Height: 31  |  Size: 1.0 KiB

BIN
app/src/main/res/drawable-mdpi/grid_view_selected.png

After

Width: 21  |  Height: 21  |  Size: 562 B

BIN
app/src/main/res/drawable-mdpi/grid_view_unselected.png

After

Width: 21  |  Height: 21  |  Size: 952 B

BIN
app/src/main/res/drawable-mdpi/ico_color_gift.png

After

Width: 128  |  Height: 128  |  Size: 5.5 KiB

BIN
app/src/main/res/drawable-mdpi/list_view_selected.png

After

Width: 21  |  Height: 21  |  Size: 455 B

BIN
app/src/main/res/drawable-mdpi/list_view_unselected.png

After

Width: 21  |  Height: 21  |  Size: 721 B

BIN
app/src/main/res/drawable-xhdpi/grid_view_selected.png

After

Width: 42  |  Height: 42  |  Size: 571 B

BIN
app/src/main/res/drawable-xhdpi/grid_view_unselected.png

After

Width: 42  |  Height: 42  |  Size: 644 B

BIN
app/src/main/res/drawable-xhdpi/ico_color_gift.png

After

Width: 256  |  Height: 256  |  Size: 6.6 KiB

BIN
app/src/main/res/drawable-xhdpi/list_view_selected.png

After

Width: 42  |  Height: 42  |  Size: 391 B

BIN
app/src/main/res/drawable-xhdpi/list_view_unselected.png

After

Width: 42  |  Height: 42  |  Size: 1.3 KiB

BIN
app/src/main/res/drawable-xxhdpi/grid_view_selected.png

After

Width: 63  |  Height: 63  |  Size: 1.8 KiB

BIN
app/src/main/res/drawable-xxhdpi/grid_view_unselected.png

After

Width: 63  |  Height: 63  |  Size: 3.8 KiB

BIN
app/src/main/res/drawable-xxhdpi/list_view_selected.png

After

Width: 63  |  Height: 63  |  Size: 1.3 KiB

BIN
app/src/main/res/drawable-xxhdpi/list_view_unselected.png

After

Width: 63  |  Height: 63  |  Size: 2.7 KiB

43
app/src/main/res/drawable-xxhdpi/radiobutton_listview_selector.xml

@ -0,0 +1,43 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true">
<layer-list>
<item>
<shape android:shape="rectangle">
<!--<gradient android:angle="270" android:endColor="#a0a67637" android:startColor="#a0e0b071" />-->
<!--<stroke android:width="1dp" android:color="#5c3708" />-->
<solid android:color="@color/colorPrimary"/>
<corners android:radius="5dp" />
<padding android:left="10dp" android:right="10dp" />
</shape>
</item>
<item>
<bitmap android:gravity="center" android:src="@drawable/list_view_selected" />
</item>
</layer-list>
</item>
<!--<item android:drawable="@drawable/flag_south_korea" android:state_checked="true" />-->
<!--<item android:drawable="@drawable/flag_north_korea" android:state_checked="false" />-->
<item android:state_checked="false">
<layer-list>
<item>
<shape android:shape="rectangle">
<!--<gradient android:angle="270" android:endColor="#a0a67637" android:startColor="#a0e0b071" />-->
<!--<stroke android:width="1dp" android:color="#5c3708" />-->
<!--<solid android:color="@color/colorPrimary"/>-->
<corners android:radius="5dp" />
<padding android:left="10dp" android:right="10dp" />
</shape>
</item>
<item >
<bitmap android:gravity="center" android:src="@drawable/list_view_unselected" android:tileMode="disabled"/>
</item>
</layer-list>
</item>
</selector>

BIN
app/src/main/res/drawable-xxxhdpi/grid_view_selected.png

After

Width: 84  |  Height: 84  |  Size: 2.9 KiB

BIN
app/src/main/res/drawable-xxxhdpi/grid_view_unselected.png

After

Width: 84  |  Height: 84  |  Size: 6.2 KiB

BIN
app/src/main/res/drawable-xxxhdpi/list_view_selected.png

After

Width: 84  |  Height: 84  |  Size: 1.9 KiB

BIN
app/src/main/res/drawable-xxxhdpi/list_view_unselected.png

After

Width: 84  |  Height: 84  |  Size: 4.0 KiB

9
app/src/main/res/drawable/control_switch_background_border.xml

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners android:radius="5dp" />
<solid android:color="@android:color/transparent" />
<stroke
android:width="3dp"
android:color="@color/colorPrimary" />
</shape>

43
app/src/main/res/drawable/radiobutton_gridview_selector.xml

@ -0,0 +1,43 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true">
<layer-list>
<item>
<shape android:shape="rectangle">
<!--<gradient android:angle="270" android:endColor="#a0a67637" android:startColor="#a0e0b071" />-->
<!--<stroke android:width="1dp" android:color="#5c3708" />-->
<solid android:color="@color/colorPrimary"/>
<corners android:radius="5dp" />
<padding android:left="10dp" android:right="10dp" />
</shape>
</item>
<item>
<bitmap android:gravity="center" android:src="@drawable/grid_view_selected" />
</item>
</layer-list>
</item>
<!--<item android:drawable="@drawable/flag_south_korea" android:state_checked="true" />-->
<!--<item android:drawable="@drawable/flag_north_korea" android:state_checked="false" />-->
<item android:state_checked="false">
<layer-list>
<item>
<shape android:shape="rectangle">
<!--<gradient android:angle="270" android:endColor="#a0a67637" android:startColor="#a0e0b071" />-->
<!--<stroke android:width="1dp" android:color="#5c3708" />-->
<!--<solid android:color="@color/colorPrimary"/>-->
<corners android:radius="5dp" />
<padding android:left="10dp" android:right="10dp" />
</shape>
</item>
<item >
<bitmap android:gravity="center" android:src="@drawable/grid_view_unselected" android:tileMode="disabled"/>
</item>
</layer-list>
</item>
</selector>

70
app/src/main/res/layout/activity_reward_order_detail.xml

@ -23,7 +23,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:background="@drawable/ic_recharge_share_background">
android:background="@drawable/ic_wallet_status_background">
<ImageView
android:id="@+id/logo"
@ -56,22 +56,25 @@
app:txtfontName="@string/semibold" />
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView
android:id="@+id/receiver_info"
android:id="@+id/transfer_detail"
android:layout_width="match_parent"
android:gravity="center_horizontal"
android:layout_height="wrap_content"
android:layout_below="@id/transfer_label"
android:layout_centerHorizontal="true"
android:paddingStart="10dp"
android:paddingEnd="10dp"
android:padding="2dp"
android:text="@string/transfer_success_info_text"
android:textColor="@color/white"
android:textSize="15sp" />
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView
android:visibility="gone"
android:id="@+id/tv_receiver_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/receiver_info"
android:layout_below="@id/transfer_detail"
android:layout_centerHorizontal="true"
android:gravity="center_horizontal"
android:padding="2dp"
@ -80,6 +83,7 @@
app:txtfontName="@string/semibold" />
<LinearLayout
android:visibility="gone"
android:id="@+id/payoutLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@ -109,6 +113,8 @@
</LinearLayout>
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView
android:visibility="gone"
android:id="@+id/tv_gme_control_no"
android:layout_width="match_parent"
android:gravity="center_horizontal"
@ -129,6 +135,7 @@
android:layout_centerHorizontal="true"
android:gravity="center"
android:paddingLeft="2dp"
android:visibility="gone"
android:paddingTop="4dp"
android:text="@string/gme_control_security_text"
android:textColor="@color/white"
@ -136,6 +143,7 @@
<ImageView
android:layout_width="wrap_content"
android:visibility="gone"
android:layout_height="wrap_content"
android:layout_below="@id/tv_gme_control_no"
android:layout_toLeftOf="@id/tv_note"
@ -341,7 +349,7 @@
android:layout_below="@id/service_fee_divider">
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView
android:id="@+id/tv_order_date"
android:id="@+id/tv_order_date_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
@ -350,7 +358,7 @@
android:textSize="14sp" />
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView
android:id="@+id/tv_service_fee"
android:id="@+id/tv_order_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
@ -470,58 +478,6 @@
android:textColor="@color/white"
android:textSize="16sp" />
<LinearLayout
android:id="@+id/ammendmentOperationViewContainer"
android:layout_marginBottom="30dp"
android:layout_marginTop="20dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum="1"
android:orientation="horizontal">
<FrameLayout
android:layout_width="0dp"
android:layout_weight=".5"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:layout_height="wrap_content">
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeButton
android:id="@+id/btn_cancel"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="45dp"
android:padding="5dp"
android:inputType="textMultiLine"
android:layout_gravity="center"
android:layout_marginBottom="30dp"
android:layout_marginTop="20dp"
android:background="@drawable/ic_rounded_background_coloured"
android:text="@string/request_to_cancel_text"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="16sp" />
</FrameLayout>
<FrameLayout
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:layout_width="0dp"
android:layout_weight=".5"
android:layout_height="wrap_content">
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeButton
android:padding="5dp"
android:id="@+id/btn_change"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="45dp"
android:layout_gravity="center"
android:layout_marginBottom="30dp"
android:layout_marginTop="20dp"
android:background="@drawable/ic_rounded_background_coloured"
android:text="@string/request_to_change_text"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="16sp" />
</FrameLayout>
</LinearLayout>
</LinearLayout>
</ScrollView>

69
app/src/main/res/layout/activity_reward_redeem_v2.xml

@ -9,85 +9,54 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:context="com.gmeremit.online.gmeremittance_native.rewardV2.view.rewardredeem.RewardRedeemV2Activity">
<include layout="@layout/layout_sendmoney_toolbar"
android:id="@+id/toolbarView"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
<android.support.constraint.ConstraintLayout
android:id="@+id/relativeLayout3"
android:layout_width="match_parent"
android:layout_height="132dp"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:layout_marginEnd="15dp"
android:layout_marginTop="8dp"
android:background="@drawable/ic_wallet_status_background"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
app:layout_constraintTop_toBottomOf="@+id/toolbarView">
<ImageView
android:id="@+id/imageView6"
android:id="@+id/rewardImageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxHeight="300dp"
android:maxWidth="300dp"
android:scaleType="centerCrop"
android:layout_marginStart="8dp"
android:layout_marginTop="10dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="8dp"
android:contentDescription="@string/app_name"
android:src="@drawable/ic_reward_point"
app:layout_constraintBottom_toTopOf="@+id/gmeTextView4"
app:layout_constraintEnd_toStartOf="@+id/guideline2"
app:layout_constraintTop_toTopOf="parent" />
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView
android:id="@+id/gmeTextView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:text="Reward Points"
android:textColor="@color/white"
android:textSize="14sp"
app:layout_constraintBottom_toTopOf="@+id/txt_reward_points"
android:src="@drawable/ico_color_gift"
app:layout_constraintBottom_toTopOf="@+id/rewardFooter"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.39"
app:layout_constraintStart_toStartOf="@+id/guideline2"
app:layout_constraintTop_toTopOf="@+id/imageView6"
app:layout_constraintVertical_chainStyle="packed" />
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView
android:id="@+id/txt_reward_points"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="8dp"
android:singleLine="false"
android:text="9999999999"
android:textColor="@color/white"
android:textSize="24sp"
app:layout_constraintBottom_toBottomOf="@+id/imageView6"
app:layout_constraintEnd_toEndOf="@+id/gmeTextView3"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="@+id/gmeTextView3"
app:layout_constraintTop_toBottomOf="@+id/gmeTextView3" />
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView
android:id="@+id/gmeTextView4"
android:id="@+id/rewardFooter"
android:layout_width="364dp"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:layout_marginBottom="8dp"
android:gravity="center"
android:text="Note: The reward points is valid for a year only."
android:textColor="@color/white"
android:textSize="11sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
<android.support.constraint.Guideline
android:id="@+id/guideline2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.39" />
</android.support.constraint.ConstraintLayout>
<android.support.design.widget.TextInputLayout
@ -172,7 +141,7 @@
app:errorEnabled="true">
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeEditText
android:id="@+id/ed_gender"
android:id="@+id/ed_branch"
style="@style/editetxtsingleline"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@ -232,11 +201,13 @@
android:layout_marginStart="8dp"
android:layout_marginTop="25dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="8dp"
android:background="@drawable/ic_rounded_background_coloured"
android:text="@string/submit_text"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="18sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/locationImageView" />

6
app/src/main/res/layout/activity_send_money_v2_transaction_complete.xml

@ -56,7 +56,7 @@
app:txtfontName="@string/semibold" />
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView
android:id="@+id/receiver_info"
android:id="@+id/transfer_detail"
android:layout_width="match_parent"
android:gravity="center_horizontal"
android:layout_height="wrap_content"
@ -71,7 +71,7 @@
android:id="@+id/tv_receiver_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/receiver_info"
android:layout_below="@id/transfer_detail"
android:layout_centerHorizontal="true"
android:gravity="center_horizontal"
android:padding="2dp"
@ -376,7 +376,7 @@
android:textSize="14sp" />
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView
android:id="@+id/tv_service_fee"
android:id="@+id/tv_order_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"

2
app/src/main/res/layout/fragment_amount_detail_send_money_v2.xml

@ -230,7 +230,7 @@
</LinearLayout>
<View
android:visibility="gone"
android:visibility="visible"
android:layout_marginTop="20dp"
android:layout_width="match_parent"
android:layout_height="1dp"

4
app/src/main/res/layout/fragment_home_v2.xml

@ -289,7 +289,7 @@
android:paddingTop="6dp"
android:text="@string/reward_point_text"
android:id="@+id/lb_rewardpoint"
android:visibility="gone"
android:visibility="invisible"
android:textSize="12sp" />
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView
@ -305,7 +305,7 @@
android:paddingRight="10dp"
android:textColor="@color/white"
android:textSize="12sp"
android:visibility="gone"
android:visibility="invisible"
/>

25
app/src/main/res/layout/fragment_order_history.xml

@ -36,7 +36,7 @@
android:layout_weight="1"
android:background="@null"
android:gravity="center_vertical"
android:hint="@string/search_with_controlno_text"
android:hint="@string/search_text"
android:imeActionLabel="Done"
android:imeOptions="actionDone"
android:inputType="text"
@ -128,11 +128,32 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/barrier4" />
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeEditText
android:id="@+id/noDataFoundTextView"
android:visibility="invisible"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@null"
android:enabled="false"
android:gravity="center"
android:hint="Order not found"
android:imeActionLabel="Done"
android:imeOptions="actionDone"
android:inputType="text"
android:textColor="@android:color/black"
android:textSize="14sp"
app:layout_constraintBottom_toTopOf="@+id/filterLayout"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/barrier4"
/>
<android.support.constraint.ConstraintLayout
android:id="@+id/filterLayout"
android:layout_width="match_parent"
android:layout_height="80dp"
android:visibility="invisible"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">

58
app/src/main/res/layout/fragment_reward_list.xml

@ -3,20 +3,22 @@
<android.support.v4.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<android.support.constraint.ConstraintLayout
android:layout_width="match_parent"
android:id="@+id/relativeLayout3"
android:layout_width="match_parent"
android:layout_height="132dp"
android:layout_margin="10dp"
android:background="@drawable/ic_wallet_status_background">
<ImageView
android:id="@+id/imageView6"
android:id="@+id/rewardImageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
@ -24,7 +26,7 @@
android:layout_marginBottom="8dp"
android:contentDescription="@string/app_name"
android:src="@drawable/ic_reward_point"
app:layout_constraintBottom_toTopOf="@+id/gmeTextView4"
app:layout_constraintBottom_toTopOf="@+id/rewardFooter"
app:layout_constraintEnd_toStartOf="@+id/guideline2"
app:layout_constraintTop_toTopOf="parent" />
@ -41,7 +43,7 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.39"
app:layout_constraintStart_toStartOf="@+id/guideline2"
app:layout_constraintTop_toTopOf="@+id/imageView6"
app:layout_constraintTop_toTopOf="@+id/rewardImageView"
app:layout_constraintVertical_chainStyle="packed" />
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView
@ -54,7 +56,7 @@
android:singleLine="false"
android:textColor="@color/white"
android:textSize="24sp"
app:layout_constraintBottom_toBottomOf="@+id/imageView6"
app:layout_constraintBottom_toBottomOf="@+id/rewardImageView"
app:layout_constraintEnd_toEndOf="@+id/gmeTextView3"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="@+id/gmeTextView3"
@ -62,7 +64,7 @@
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView
android:id="@+id/gmeTextView4"
android:id="@+id/rewardFooter"
android:layout_width="364dp"
android:layout_height="wrap_content"
android:layout_marginStart="10dp"
@ -82,13 +84,49 @@
android:orientation="vertical"
app:layout_constraintGuide_percent=".41" />
</android.support.constraint.ConstraintLayout>
<RadioGroup
android:layout_marginEnd="10dp"
android:layout_gravity="right"
android:id="@+id/view_selector"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/control_switch_background_border"
android:checkedButton="@+id/grid_view_rdbtn"
android:orientation="horizontal">
<RadioButton
android:id="@+id/grid_view_rdbtn"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/radiobutton_gridview_selector"
android:button="@null"
android:fontFamily="sans-serif-medium"
android:gravity="center"
/>
<RadioButton
android:id="@+id/list_view_rdbtn"
android:paddingTop="4dp"
android:paddingBottom="4dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/radiobutton_listview_selector"
android:button="@null"
android:fontFamily="sans-serif-medium"
android:gravity="center"
/>
</RadioGroup>
<android.support.v7.widget.RecyclerView
android:id="@+id/rewards_rv"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:paddingEnd="14dp"
android:paddingStart="14dp" />
android:paddingStart="10dp"
android:paddingEnd="10dp" />
</LinearLayout>
</android.support.v4.widget.NestedScrollView>

21
app/src/main/res/layout/reward_list_item.xml

@ -3,18 +3,20 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:background="@drawable/ic_rounded_white_bg_with_inset"
android:background="@drawable/ic_rounded_white"
android:layout_margin="4dp"
android:layout_height="wrap_content">
<ImageView
app:srcCompat="@drawable/vd_fingerprint_on"
android:id="@+id/rewardItemImage"
android:layout_width="150dp"
android:layout_height="150dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:layout_marginTop="12dp"
android:layout_marginEnd="8dp"
android:scaleType="centerCrop"
android:layout_marginBottom="8dp"
app:layout_constraintBottom_toTopOf="@+id/rewardItemTitle"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
@ -25,19 +27,26 @@
android:id="@+id/rewardItemTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Sunglasses"
android:layout_marginTop="12dp"
android:gravity="center"
android:text="Sunglasses"
android:textAllCaps="true"
android:textSize="16sp"
app:layout_constraintBottom_toTopOf="@+id/rewardItemPoint"
app:layout_constraintEnd_toEndOf="@+id/rewardItemImage"
app:layout_constraintStart_toStartOf="@+id/rewardItemImage"
app:layout_constraintTop_toBottomOf="@+id/rewardItemImage" />
app:layout_constraintTop_toBottomOf="@+id/rewardItemImage"
app:txtfontName="@string/semibold" />
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeTextView
android:id="@+id/rewardItemPoint"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="5000 points"
app:txtfontName="@string/regular"
android:textSize="14sp"
android:gravity="center"
android:textColor="@color/colorPrimaryDark"
app:layout_constraintBottom_toTopOf="@+id/view5"
app:layout_constraintEnd_toEndOf="@+id/rewardItemTitle"
app:layout_constraintStart_toStartOf="@+id/rewardItemTitle"
@ -55,7 +64,7 @@
<com.gmeremit.online.gmeremittance_native.customwidgets.GmeButton
android:id="@+id/redeemButton"
android:layout_width="wrap_content"
android:layout_height="50dp"
android:layout_height="40dp"
android:layout_gravity="center"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"

Loading…
Cancel
Save