新增cash储值分期支付
This commit is contained in:
@@ -13,6 +13,8 @@ plugins {
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
android {
|
||||
|
||||
signingConfigs {
|
||||
|
||||
@@ -20,6 +20,10 @@
|
||||
<!-- receive SDK broadcast, replace package com.dskj.rbchat with your package name -->
|
||||
<uses-permission android:name="com.dskj.rbchat.permission.RECEIVE_MSG" />
|
||||
|
||||
<uses-permission
|
||||
android:name="android.permission.QUERY_ALL_PACKAGES"
|
||||
tools:ignore="QueryAllPackagesPermission" />
|
||||
<uses-permission android:name="android.permission.LAUNCH_APP" />
|
||||
|
||||
<!-- xiaomi push -->
|
||||
<permission
|
||||
|
||||
25
app/src/main/java/com/dskj/rbchat/model/InstallmentBean.java
Normal file
25
app/src/main/java/com/dskj/rbchat/model/InstallmentBean.java
Normal file
@@ -0,0 +1,25 @@
|
||||
package com.dskj.rbchat.model;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
public class InstallmentBean implements Serializable {
|
||||
|
||||
private int periodCount;
|
||||
private int amount;
|
||||
|
||||
public int getPeriodCount() {
|
||||
return periodCount;
|
||||
}
|
||||
|
||||
public void setPeriodCount(int periodCount) {
|
||||
this.periodCount = periodCount;
|
||||
}
|
||||
|
||||
public int getAmount() {
|
||||
return amount;
|
||||
}
|
||||
|
||||
public void setAmount(int amount) {
|
||||
this.amount = amount;
|
||||
}
|
||||
}
|
||||
@@ -22,6 +22,7 @@ import com.dskj.rbchat.model.FukuanResultBean;
|
||||
import com.dskj.rbchat.model.GameBean;
|
||||
import com.dskj.rbchat.model.GroupActionBean;
|
||||
import com.dskj.rbchat.model.GroupBeanResult;
|
||||
import com.dskj.rbchat.model.InstallmentBean;
|
||||
import com.dskj.rbchat.model.InviteDetailsBean;
|
||||
import com.dskj.rbchat.model.LinkBean;
|
||||
import com.dskj.rbchat.model.ListBeanResult;
|
||||
@@ -999,6 +1000,19 @@ public interface ApiService {
|
||||
@GET("/config/list")
|
||||
Observable<Result<List<ConfigBean>>> getConfig();
|
||||
|
||||
/**
|
||||
* 獲取分期費率
|
||||
*/
|
||||
@POST("/payment/zero_card/get_fee")
|
||||
Observable<Result<List<InstallmentBean>>> getFee(@Body Map<String, Object> param);
|
||||
|
||||
|
||||
/**
|
||||
* 零卡分期請求
|
||||
*/
|
||||
@POST("/payment/sendOrder/zero_card")
|
||||
Observable<Result<String>> payInstallment(@Body Map<String, Object> requestBody);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.dskj.rbchat.wallet;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.content.res.ColorStateList;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
@@ -9,7 +9,6 @@ import android.text.Editable;
|
||||
import android.text.TextUtils;
|
||||
import android.text.TextWatcher;
|
||||
import android.view.View;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
@@ -20,24 +19,21 @@ import androidx.recyclerview.widget.GridLayoutManager;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
|
||||
import com.blankj.utilcode.util.ToastUtils;
|
||||
import com.bumptech.glide.Glide;
|
||||
import com.dskj.rbchat.IMUIKitConfig;
|
||||
import com.dskj.rbchat.R;
|
||||
import com.dskj.rbchat.adapter.CommonAdapter;
|
||||
import com.dskj.rbchat.adapter.ViewHolder;
|
||||
import com.dskj.rbchat.databinding.ActivityTopupBinding;
|
||||
import com.dskj.rbchat.databinding.ActivityWalletInfoBinding;
|
||||
import com.dskj.rbchat.dialog.ActionConfirmDialog;
|
||||
import com.dskj.rbchat.login.PhoneLoginActivity;
|
||||
import com.dskj.rbchat.main.mine.ChangeAccoutActionActivity;
|
||||
import com.dskj.rbchat.model.BindBean;
|
||||
import com.dskj.rbchat.model.ExchangeConfBean;
|
||||
import com.dskj.rbchat.model.InstallmentBean;
|
||||
import com.dskj.rbchat.model.SendOrderBean;
|
||||
import com.dskj.rbchat.model.WalletBean;
|
||||
import com.dskj.rbchat.network.Api;
|
||||
import com.dskj.rbchat.network.BaseObserver;
|
||||
import com.dskj.rbchat.network.Result;
|
||||
import com.dskj.rbchat.pay.LipinDuiHuanActivity;
|
||||
import com.dskj.rbchat.utils.AnimUtil;
|
||||
import com.dskj.rbchat.utils.AppUtils;
|
||||
import com.dskj.rbchat.utils.GsonUtils;
|
||||
@@ -61,8 +57,12 @@ public class TopUpActivity extends BaseActivity {
|
||||
WalletBean walletBean;
|
||||
BindBean bindBean;
|
||||
private List<ExchangeConfBean.AmountItemsDTO> globalAmountList = new ArrayList<>();
|
||||
private List<InstallmentBean> installmentBeans = new ArrayList<>();
|
||||
CommonAdapter commonAdapter;
|
||||
CommonAdapter installmentAdapter;
|
||||
int defaultIndex = 0;
|
||||
private boolean isFenqi = false;
|
||||
private int installmentNum; //分期數
|
||||
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
@@ -73,9 +73,30 @@ public class TopUpActivity extends BaseActivity {
|
||||
super.onCreate(savedInstanceState);
|
||||
viewBinding = ActivityTopupBinding.inflate(getLayoutInflater());
|
||||
setContentView(viewBinding.getRoot());
|
||||
setSelector(false);
|
||||
setFenqiView(false);
|
||||
initView();
|
||||
bindInfo();
|
||||
getConf();
|
||||
|
||||
}
|
||||
|
||||
public void setFenqiView(boolean show) {
|
||||
viewBinding.lineInstall.setVisibility(show ? View.VISIBLE : View.GONE);
|
||||
viewBinding.tvPaytypeFenqi.setVisibility(show ? View.VISIBLE : View.GONE);
|
||||
viewBinding.recyclerInstallment.setVisibility(show ? View.VISIBLE : View.GONE);
|
||||
}
|
||||
|
||||
public void setSelector(boolean fenqi) {
|
||||
isFenqi = fenqi;
|
||||
if (fenqi) {
|
||||
viewBinding.tvPaytypeCard.setCompoundDrawablesWithIntrinsicBounds(null, null, getResources().getDrawable(R.mipmap.dialog_gou_ff), null);
|
||||
viewBinding.tvPaytypeFenqi.setCompoundDrawablesWithIntrinsicBounds(null, null, getResources().getDrawable(R.mipmap.ic_single_selected), null);
|
||||
} else {
|
||||
viewBinding.tvPaytypeCard.setCompoundDrawablesWithIntrinsicBounds(null, null, getResources().getDrawable(R.mipmap.ic_single_selected), null);
|
||||
viewBinding.tvPaytypeFenqi.setCompoundDrawablesWithIntrinsicBounds(null, null, getResources().getDrawable(R.mipmap.dialog_gou_ff), null);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -103,14 +124,120 @@ public class TopUpActivity extends BaseActivity {
|
||||
|
||||
}
|
||||
|
||||
private void getFee() {
|
||||
Map<String, Object> params = new HashMap<>();
|
||||
params.put("amount", defaultIndex);
|
||||
Api.getInstance().getFee(params)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new BaseObserver<>() {
|
||||
@Override
|
||||
public void onSuccess(Result<List<InstallmentBean>> feedbackResp) {
|
||||
LogUtils.i("获取到的数据:" + feedbackResp.data);
|
||||
installmentBeans.clear();
|
||||
if (feedbackResp.data != null && feedbackResp.data.size() > 0) {
|
||||
installmentBeans.addAll(feedbackResp.data);
|
||||
installmentNum = 0;
|
||||
}
|
||||
installmentAdapter.notifyDataSetChanged();
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(int code, String msg) {
|
||||
LogUtils.i("获取到的错误:" + code + "" + msg);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void payInstallment(int installment) {
|
||||
if (exchangeConfBean != null) {
|
||||
if ((defaultIndex < exchangeConfBean.getMinAmount()) || (defaultIndex > exchangeConfBean.getMaxAmount())) {
|
||||
ToastUtils.showShort(String.format(getString(R.string.taixiao_topup_txt), exchangeConfBean.getMinAmount() / exchangeConfBean.getExchangeRatio(), exchangeConfBean.getMaxAmount() / exchangeConfBean.getExchangeRatio()));
|
||||
return;
|
||||
}
|
||||
Map<String, Object> maps = new HashMap<>();
|
||||
maps.put("amount", defaultIndex);
|
||||
maps.put("type", 5);
|
||||
maps.put("installment", installment);
|
||||
Api.getInstance().payInstallment(maps)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(new BaseObserver<>() {
|
||||
@Override
|
||||
public void onSuccess(Result<String> feedbackResp) {
|
||||
LogUtils.i("获取到的数据:" + feedbackResp.data);
|
||||
if (!TextUtils.isEmpty(feedbackResp.data)) {
|
||||
// String packageName = "com.chailease.tw.app.android.ccfappcust.uat"; // 目标应用的包名
|
||||
// PackageManager packageManager = getPackageManager();
|
||||
// Intent intent = new Intent();
|
||||
// intent = packageManager.getLaunchIntentForPackage(packageName);
|
||||
// intent.setData(Uri.parse(feedbackResp.data));
|
||||
// if (intent == null) {
|
||||
// ToastUtils.showShort("请安装银角零卡APP");
|
||||
// } else {
|
||||
// startActivity(intent);
|
||||
// }
|
||||
Intent intent = new Intent(Intent.ACTION_VIEW);
|
||||
intent.setData(Uri.parse(feedbackResp.data));
|
||||
startActivity(intent);
|
||||
// Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(feedbackResp.data));
|
||||
// startActivity(intent);
|
||||
// BrowseActivity.Companion.launch(
|
||||
// TopUpActivity.this, getString(R.string.cash_cuzhi_txt), feedbackResp.data);
|
||||
// startActivity(new Intent(TopUpActivity.this, PayWebActivity.class).putExtra("url", feedbackResp.data));
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(int code, String msg) {
|
||||
LogUtils.i("获取到的错误:" + code + "" + msg);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
protected void initView() {
|
||||
Drawable drawable = viewBinding.contactListActivityTitleBar.getBackImageView().getDrawable().mutate();//
|
||||
Drawable drawable = viewBinding.titlebar.getBackImageView().getDrawable().mutate();//
|
||||
Drawable wrap = DrawableCompat.wrap(drawable);
|
||||
DrawableCompat.setTint(wrap, ContextCompat.getColor(this, R.color.color_d4ab90));
|
||||
viewBinding.contactListActivityTitleBar.getBackImageView().setImageDrawable(wrap);
|
||||
viewBinding.contactListActivityTitleBar.getBackImageView().setOnClickListener(v -> finish());
|
||||
viewBinding.titlebar.getBackImageView().setImageDrawable(wrap);
|
||||
viewBinding.titlebar.getBackImageView().setOnClickListener(v -> finish());
|
||||
iniAdapter();
|
||||
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(TopUpActivity.this);
|
||||
linearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
|
||||
viewBinding.recyclerInstallment.setLayoutManager(linearLayoutManager);
|
||||
installmentAdapter = new CommonAdapter<InstallmentBean>(TopUpActivity.this, R.layout.item_bill_installment, installmentBeans) {
|
||||
@Override
|
||||
public void convert(ViewHolder holder, InstallmentBean s, int index) {
|
||||
TextView titleTv = holder.getView(R.id.title_tv);
|
||||
TextView desTv = holder.getView(R.id.des_tv);
|
||||
titleTv.setText(getString(R.string.str_qi, s.getPeriodCount()));
|
||||
desTv.setText(getString(R.string.str_installment_tips, s.getAmount()));
|
||||
LinearLayout big_bg = holder.getView(R.id.big_bg);
|
||||
if (s.getPeriodCount() == installmentNum) {
|
||||
titleTv.setTextColor(Color.parseColor("#654C35"));
|
||||
desTv.setTextColor(Color.parseColor("#654C35"));
|
||||
big_bg.setBackgroundResource(R.drawable.logout_btn_main2);
|
||||
} else {
|
||||
titleTv.setTextColor(getColor(R.color.color_333333));
|
||||
desTv.setTextColor(getColor(R.color.color_333333));
|
||||
big_bg.setBackgroundResource(R.drawable.input_bg_t);
|
||||
}
|
||||
|
||||
big_bg.setOnClickListener(v -> {
|
||||
installmentNum = s.getPeriodCount();
|
||||
notifyDataSetChanged();
|
||||
viewBinding.tvCashvalue.setText("NT$:" + (defaultIndex + s.getAmount()));
|
||||
setSelector(true);
|
||||
});
|
||||
|
||||
}
|
||||
};
|
||||
viewBinding.recyclerInstallment.setAdapter(installmentAdapter);
|
||||
viewBinding.editQueryEt.addTextChangedListener(new TextWatcher() {
|
||||
@Override
|
||||
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
|
||||
@@ -145,16 +272,40 @@ public class TopUpActivity extends BaseActivity {
|
||||
} else if (!bindBean.getPayPasswordSet()) {
|
||||
showDialogPay();
|
||||
} else {
|
||||
sumbit();
|
||||
if (isFenqi) {
|
||||
if (installmentNum == 0) {
|
||||
ToastUtils.showShort(getString(R.string.str_installment_toast));
|
||||
return;
|
||||
}
|
||||
payInstallment(installmentNum);
|
||||
} else {
|
||||
sumbit();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
});
|
||||
viewBinding.tvPaytypeCard.setOnClickListener(v -> {
|
||||
setSelector(false);
|
||||
});
|
||||
viewBinding.tvPaytypeFenqi.setOnClickListener(v -> {
|
||||
setSelector(true);
|
||||
if (defaultIndex > 0) {
|
||||
getFee();
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
private void showBottomType() {
|
||||
viewBinding.tvCashvalue.setText("NT$:" + defaultIndex);
|
||||
setFenqiView(false);
|
||||
if (defaultIndex >= 1000) {
|
||||
setFenqiView(true);
|
||||
getFee();
|
||||
}
|
||||
|
||||
// if (exchangeConfBean != null) {
|
||||
// if(TextUtils.isEmpty(viewBinding.editQueryEt.getText().toString().trim())){
|
||||
// viewBinding.showZidingyiLy.setVisibility(View.GONE);
|
||||
@@ -250,6 +401,7 @@ public class TopUpActivity extends BaseActivity {
|
||||
viewBinding.editQueryEt.clearFocus();
|
||||
notifyDataSetChanged();
|
||||
showBottomType();
|
||||
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
|
||||
<com.netease.yunxin.kit.common.ui.widgets.BackTitleBar
|
||||
android:id="@+id/contact_list_activity_titleBar"
|
||||
android:id="@+id/titlebar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="?actionBarSize"
|
||||
android:background="@color/color_403d51"
|
||||
@@ -18,197 +18,244 @@
|
||||
app:titleText="@string/cash_cuzhi_txt"
|
||||
app:titleTextColor="@color/color_d4ab90" />
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
<ScrollView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@color/color_403d51">
|
||||
android:layout_height="0dp"
|
||||
android:layout_marginBottom="@dimen/dp_70"
|
||||
android:background="@color/color_fffbfb"
|
||||
android:scrollbars="vertical"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/titlebar">
|
||||
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/layout_topup_top"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@mipmap/ic_topup_cashbg"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_30"
|
||||
android:layout_marginTop="@dimen/dp_19"
|
||||
android:text="@string/danqiandianshu_txt"
|
||||
android:textColor="#FCC7A1"
|
||||
android:textSize="14sp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/dianshu_tv"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/sp_30"
|
||||
android:layout_marginTop="@dimen/dp_8"
|
||||
android:textColor="#FCF0A1"
|
||||
android:textSize="@dimen/sp_30"
|
||||
tools:text="0" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
<LinearLayout
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="@dimen/dp_120"
|
||||
android:background="@color/color_fffbfb"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
android:background="@color/color_403d51">
|
||||
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_15"
|
||||
android:layout_marginTop="@dimen/dp_45"
|
||||
android:text="@string/cash_dianshu_xuanze_txt"
|
||||
android:textColor="@color/color_383838"
|
||||
android:textSize="16sp" />
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/recylerview"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@id/title_tv1"
|
||||
android:layout_marginLeft="7.5dp"
|
||||
android:layout_marginTop="7.5dp"
|
||||
android:layout_marginRight="7.5dp"
|
||||
android:visibility="visible">
|
||||
|
||||
</androidx.recyclerview.widget.RecyclerView>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/layout_topup_top"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="64dp"
|
||||
android:layout_marginLeft="@dimen/dp_15"
|
||||
android:layout_marginTop="7.5dp"
|
||||
android:layout_marginRight="@dimen/dp_15"
|
||||
android:background="@drawable/input_bg_t"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@mipmap/ic_topup_cashbg"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="@dimen/dp_10"
|
||||
android:text="@string/zidingyicash_txt"
|
||||
android:textColor="#ff444444"
|
||||
android:textSize="16sp" />
|
||||
|
||||
<EditText
|
||||
android:id="@+id/edit_query_et"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginLeft="20dp"
|
||||
android:layout_weight="1"
|
||||
android:background="@color/transparent"
|
||||
android:digits="0123456789"
|
||||
android:gravity="center_vertical|right"
|
||||
android:hint="0"
|
||||
android:inputType="number"
|
||||
android:maxLength="9"
|
||||
android:paddingRight="@dimen/dp_10"
|
||||
android:textColor="@color/black"
|
||||
android:textColorHint="#BCBCBC"
|
||||
android:textSize="24sp" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/show_zidingyi_ly"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="@dimen/dp_15"
|
||||
android:layout_marginTop="@dimen/dp_15"
|
||||
android:layout_marginRight="@dimen/dp_15"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:visibility="gone">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="NT$:"
|
||||
android:textColor="#ff333333"
|
||||
android:layout_marginStart="@dimen/dp_30"
|
||||
android:layout_marginTop="@dimen/dp_19"
|
||||
android:text="@string/danqiandianshu_txt"
|
||||
android:textColor="#FCC7A1"
|
||||
android:textSize="14sp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/zidingyicash_tv"
|
||||
android:id="@+id/dianshu_tv"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textColor="#FF3B3B"
|
||||
android:textSize="14sp"
|
||||
android:layout_marginStart="@dimen/sp_30"
|
||||
android:layout_marginTop="@dimen/dp_8"
|
||||
android:textColor="#FCF0A1"
|
||||
android:textSize="@dimen/sp_30"
|
||||
tools:text="0" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_15"
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:text="@string/cash_paytype"
|
||||
android:textColor="@color/color_383838"
|
||||
android:textSize="@dimen/sp_16"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_15"
|
||||
android:layout_marginTop="@dimen/dp_15"
|
||||
android:layout_marginEnd="@dimen/dp_15"
|
||||
android:drawableRight="@mipmap/ic_single_selected"
|
||||
android:gravity="center_vertical"
|
||||
android:text="@string/cash_paytype_card"
|
||||
android:textColor="@color/color_383838"
|
||||
android:textSize="@dimen/sp_16" />
|
||||
|
||||
<LinearLayout
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginBottom="@dimen/dp_3"
|
||||
android:gravity="bottom"
|
||||
android:orientation="horizontal"
|
||||
android:visibility="visible">
|
||||
android:layout_marginTop="@dimen/dp_120"
|
||||
android:background="@color/color_fffbfb"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_cashvalue"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="@dimen/dp_48"
|
||||
android:layout_weight="1"
|
||||
android:autoSizeMaxTextSize="@dimen/sp_30"
|
||||
android:autoSizeMinTextSize="@dimen/sp_20"
|
||||
android:autoSizeTextType="uniform"
|
||||
android:gravity="center_vertical"
|
||||
android:maxLines="1"
|
||||
android:paddingStart="@dimen/dp_10"
|
||||
android:paddingEnd="@dimen/dp_10"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_15"
|
||||
android:layout_marginTop="@dimen/dp_15"
|
||||
android:text="@string/cash_dianshu_xuanze_txt"
|
||||
android:textColor="@color/color_383838"
|
||||
android:textSize="16sp"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/recylerview"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@id/title_tv1"
|
||||
android:layout_marginLeft="7.5dp"
|
||||
android:layout_marginTop="7.5dp"
|
||||
android:layout_marginRight="7.5dp"
|
||||
android:visibility="visible">
|
||||
|
||||
</androidx.recyclerview.widget.RecyclerView>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="64dp"
|
||||
android:layout_marginLeft="@dimen/dp_15"
|
||||
android:layout_marginTop="7.5dp"
|
||||
android:layout_marginRight="@dimen/dp_15"
|
||||
android:background="@drawable/input_bg_t"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="@dimen/dp_10"
|
||||
android:text="@string/zidingyicash_txt"
|
||||
android:textColor="#ff444444"
|
||||
android:textSize="16sp" />
|
||||
|
||||
<EditText
|
||||
android:id="@+id/edit_query_et"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginLeft="20dp"
|
||||
android:layout_weight="1"
|
||||
android:background="@color/transparent"
|
||||
android:digits="0123456789"
|
||||
android:gravity="center_vertical|right"
|
||||
android:hint="0"
|
||||
android:inputType="number"
|
||||
android:maxLength="9"
|
||||
android:paddingRight="@dimen/dp_10"
|
||||
android:textColor="@color/black"
|
||||
android:textColorHint="#BCBCBC"
|
||||
android:textSize="24sp" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/show_zidingyi_ly"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="@dimen/dp_15"
|
||||
android:layout_marginTop="@dimen/dp_15"
|
||||
android:layout_marginRight="@dimen/dp_15"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:visibility="gone">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="NT$:"
|
||||
android:textColor="#ff333333"
|
||||
android:textSize="14sp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/zidingyicash_tv"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textColor="#FF3B3B"
|
||||
android:textSize="14sp"
|
||||
tools:text="0" />
|
||||
</LinearLayout>
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_15"
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:text="@string/cash_paytype"
|
||||
android:textColor="@color/color_383838"
|
||||
android:textSize="@dimen/sp_16"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/topup_tv"
|
||||
android:layout_width="@dimen/dp_190"
|
||||
android:layout_height="@dimen/dp_48"
|
||||
android:background="@drawable/bg_topup_btn"
|
||||
android:gravity="center"
|
||||
android:text="@string/lijichuzi_txt"
|
||||
android:textColor="#ffffffff"
|
||||
android:textSize="16sp" />
|
||||
android:id="@+id/tv_paytype_card"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_15"
|
||||
android:layout_marginTop="@dimen/dp_15"
|
||||
android:layout_marginEnd="@dimen/dp_15"
|
||||
android:drawableRight="@mipmap/ic_single_selected"
|
||||
android:gravity="center_vertical"
|
||||
android:text="@string/cash_paytype_card"
|
||||
android:textColor="@color/color_383838"
|
||||
android:textSize="@dimen/sp_16" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
<View
|
||||
android:id="@+id/line_install"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="@dimen/dp_1"
|
||||
android:layout_margin="@dimen/dp_15"
|
||||
android:background="#ebebf1"
|
||||
android:visibility="gone" />
|
||||
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
<TextView
|
||||
android:id="@+id/tv_paytype_fenqi"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_15"
|
||||
android:layout_marginEnd="@dimen/dp_15"
|
||||
android:drawableRight="@mipmap/dialog_gou_ff"
|
||||
android:gravity="center_vertical"
|
||||
android:text="@string/cash_paytype_fenqi"
|
||||
android:textColor="@color/color_383838"
|
||||
android:textSize="@dimen/sp_16"
|
||||
android:visibility="gone" />
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/recycler_installment"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_15"
|
||||
android:layout_marginTop="@dimen/dp_15"
|
||||
android:background="@color/color_fffbfb"
|
||||
android:visibility="gone" />
|
||||
|
||||
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</ScrollView>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/layout_bottom"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="@dimen/dp_48"
|
||||
android:layout_marginTop="@dimen/dp_45"
|
||||
android:layout_marginBottom="@dimen/dp_15"
|
||||
android:background="@android:color/white"
|
||||
android:orientation="horizontal"
|
||||
app:layout_constraintBottom_toBottomOf="parent">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_cashvalue"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_weight="1"
|
||||
android:autoSizeMaxTextSize="@dimen/sp_30"
|
||||
android:autoSizeMinTextSize="@dimen/sp_20"
|
||||
android:autoSizeTextType="uniform"
|
||||
android:gravity="center_vertical"
|
||||
android:maxLines="1"
|
||||
android:paddingStart="@dimen/dp_10"
|
||||
android:paddingEnd="@dimen/dp_10"
|
||||
android:textColor="@color/color_383838"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/topup_tv"
|
||||
android:layout_width="@dimen/dp_190"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@drawable/bg_topup_btn"
|
||||
android:gravity="center"
|
||||
android:text="@string/lijichuzi_txt"
|
||||
android:textColor="#ffffffff"
|
||||
android:textSize="16sp" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
30
app/src/main/res/layout/item_bill_installment.xml
Normal file
30
app/src/main/res/layout/item_bill_installment.xml
Normal file
@@ -0,0 +1,30 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/big_bg"
|
||||
android:layout_width="@dimen/dp_142"
|
||||
android:layout_height="@dimen/dp_68"
|
||||
android:layout_marginEnd="@dimen/dp_15"
|
||||
android:background="@drawable/input_bg_t"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="vertical"
|
||||
tools:ignore="MissingDefaultResource">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/title_tv"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingStart="@dimen/dp_15"
|
||||
android:textSize="16sp"
|
||||
tools:text="" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/des_tv"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:paddingStart="@dimen/dp_15"
|
||||
android:text=""
|
||||
android:textSize="14sp" />
|
||||
</LinearLayout>
|
||||
@@ -882,12 +882,17 @@
|
||||
<string name="shuzhuji_txt">Bead counting machine</string>
|
||||
<string name="danzhujiduizhu_txt">Exchange for marbles</string>
|
||||
<string name="xywkcjf_txt">Wishing House deducts points</string>
|
||||
<string name="xywthjf_txt">Wish House Points Refund</string>
|
||||
<string name="shangjia_txt">Merchant</string>
|
||||
<string name="apptotal_txt"><![CDATA[Total users: <font color=\'#FFC608\'>%d</font> You are the <font color=\'#FFC608\'>%d</font>th user]]></string>
|
||||
<string name="dialog_selectcountry_hint">Search for a country or region</string>
|
||||
<string name="tv_checkmore">See more >></string>
|
||||
<string name="activitymessage_details">Activity Details</string>
|
||||
<string name="cash_paytype">Payment Method</string>
|
||||
<string name="cash_paytype">Payment Methods</string>
|
||||
<string name="cash_paytype_card">Credit Card Payment</string>
|
||||
<string name="cash_paytype_fenqi">Zero Card Installment <font size="20">(The phone needs to install the Yin Jiao Zero Card APP)</font></string>
|
||||
<string name="closeaccount_tips_txt">After the account is closed, your user information will be erased and cannot be recovered. Any related rights, such as transaction history and account balance, will be considered automatically forfeited and void</string>
|
||||
<string name="str_qi">%d Issue</string>
|
||||
<string name="str_installment_tips">Including service fee NT$ %d</string>
|
||||
<string name="str_installment_toast">Please select the number of installments</string>
|
||||
</resources>
|
||||
@@ -880,6 +880,7 @@
|
||||
<string name="shuzhuji_txt">数珠機</string>
|
||||
<string name="danzhujiduizhu_txt">パチンコを交換する</string>
|
||||
<string name="xywkcjf_txt">願掛け屋控除ポイント</string>
|
||||
<string name="xywthjf_txt">願い屋ポイント返還</string>
|
||||
<string name="shangjia_txt">商人</string>
|
||||
<string name="apptotal_txt"><![CDATA[総ユーザー数:<font color=\'#FFC608\'>%d</font> あなたは第<font color=\'#FFC608\'>%d</font>番目のユーザーです]]></string>
|
||||
<string name="dialog_selectcountry_hint">国または地域を検索</string>
|
||||
@@ -887,6 +888,9 @@
|
||||
<string name="activitymessage_details">イベントの詳細</string>
|
||||
<string name="cash_paytype">支払い方法</string>
|
||||
<string name="cash_paytype_card">クレジットカード支払い</string>
|
||||
<string name="cash_paytype_fenqi">ゼロカード分割払い <font size="20">(携帯電話に銀角ゼロカードAPPをインストールする必要があります)</font></string>
|
||||
<string name="closeaccount_tips_txt">アカウントを削除すると、ユーザー情報はすべて消去され、復元することはできません。取引履歴やアカウント残高などの関連する権利も自動的に放棄されたものと見なされ、無効になります</string>
|
||||
|
||||
<string name="str_qi">%d期</string>
|
||||
<string name="str_installment_tips">サービス料込み NT$ %d</string>
|
||||
<string name="str_installment_toast">分割回数を選択してください</string>
|
||||
</resources>
|
||||
@@ -873,12 +873,17 @@
|
||||
<string name="shuzhuji_txt">数珠机</string>
|
||||
<string name="danzhujiduizhu_txt">兑换弹珠</string>
|
||||
<string name="xywkcjf_txt">许愿屋扣除积分</string>
|
||||
<string name="xywthjf_txt">许愿屋退还积分</string>
|
||||
<string name="shangjia_txt">商家</string>
|
||||
<string name="apptotal_txt"><![CDATA[总用户数:<font color=\'#FFC608\'>%d</font> 你是第<font color=\'#FFC608\'>%d</font>位用户]]></string>
|
||||
<string name="dialog_selectcountry_hint">搜索国家或地区</string>
|
||||
<string name="tv_checkmore">查看更多 >></string>
|
||||
<string name="activitymessage_details">活动详情</string>
|
||||
<string name="cash_paytype">赠送方式</string>
|
||||
<string name="cash_paytype">付款方式</string>
|
||||
<string name="cash_paytype_card">信用卡支付</string>
|
||||
<string name="cash_paytype_fenqi">零卡分期<font size="20">(手机需需安装银角零卡APP)</font></string>
|
||||
<string name="closeaccount_tips_txt">账号注销后您的用户信息将被清空且无法找回,历史交易记录及账户余额等相关权益将视为自动放弃并自动作废</string>
|
||||
<string name="str_qi">%d期</string>
|
||||
<string name="str_installment_tips">含服务费NT$ %d</string>
|
||||
<string name="str_installment_toast">请选择分期数</string>
|
||||
</resources>
|
||||
@@ -880,13 +880,18 @@
|
||||
<string name="shuzhuji_txt">数珠機</string>
|
||||
<string name="danzhujiduizhu_txt">兌換彈珠</string>
|
||||
<string name="xywkcjf_txt">許願屋扣除積分</string>
|
||||
<string name="xywthjf_txt">許願屋退還積分</string>
|
||||
<string name="shangjia_txt">商家</string>
|
||||
<string name="apptotal_txt"><![CDATA[總用戶數:<b><font color=\'#FFC608\'>%d</font></b> 你是第<b><font color=\'#FFC608\'>%d</font></b>位用戶]]></string>
|
||||
<string name="dialog_selectcountry_hint">搜尋國家或地區</string>
|
||||
<string name="tv_checkmore">查看更多 >></string>
|
||||
<string name="activitymessage_details">活動詳情</string>
|
||||
<string name="cash_paytype">贈送方式</string>
|
||||
<string name="cash_paytype">付款方式</string>
|
||||
<string name="cash_paytype_card">信用卡支付</string>
|
||||
<string name="cash_paytype_fenqi">零卡分期 <font size="20">(手機需安装銀角零卡APP)</font></string>
|
||||
<string name="closeaccount_tips_txt">帳號註銷後您的用戶資訊將被清空且無法找回,歷史交易記錄及帳戶餘額等相關權益將視為自動放棄並自動作廢</string>
|
||||
<string name="str_qi">%d期</string>
|
||||
<string name="str_installment_tips">含服務費NT$ %d</string>
|
||||
<string name="str_installment_toast">請選擇分期數</string>
|
||||
|
||||
</resources>
|
||||
@@ -49,7 +49,7 @@ public interface ApiService {
|
||||
/**
|
||||
* 正式环境
|
||||
*/
|
||||
// String URL = "https://api.letschat2023.com/";
|
||||
// String URL = "https://api.letschat2023.com/";
|
||||
|
||||
/**
|
||||
* 测试环境
|
||||
|
||||
@@ -30,5 +30,5 @@ android.nonTransitiveRClass=true
|
||||
android.enableJetifier=true
|
||||
android.defaults.buildfeatures.buildconfig=true
|
||||
android.nonFinalResIds=false
|
||||
android.overridePathCheck=false
|
||||
#android.overridePathCheck=false
|
||||
#android.suppressUnsupportedCompileSdk=34 #??????sdk??
|
||||
|
||||
Reference in New Issue
Block a user