第N次提交

This commit is contained in:
xuhuixiang
2025-04-23 14:00:01 +08:00
parent 216fcf8237
commit c90b40d5ef
26 changed files with 2620 additions and 75 deletions

View File

@@ -218,53 +218,53 @@ public class IMApplication extends MultiDexApplication {
private void initLang() {
if (DataUtils.get(getAppContext(), "locale", -1) == -1) {//如果一次都没有设置则需要默认设置一次以便Activity中生效
// PreferencesToolkits.getNew(getAppContext(),"locale",0);
if (Locale.getDefault().getCountry().equals(Locale.TAIWAN.getCountry())) {
DataUtils.set(getAppContext(), "locale", 0);
} else if (Locale.getDefault().equals(Locale.ENGLISH)) {
DataUtils.set(getAppContext(), "locale", 2);
} else if (Locale.getDefault().equals(Locale.JAPANESE)) {
DataUtils.set(getAppContext(), "locale", 3);
} else {
// if (Locale.getDefault().getCountry().equals(Locale.TAIWAN.getCountry())) {
// DataUtils.set(getAppContext(), "locale", 0);
// } else if (Locale.getDefault().equals(Locale.ENGLISH)) {
// DataUtils.set(getAppContext(), "locale", 2);
// } else if (Locale.getDefault().equals(Locale.JAPANESE)) {
// DataUtils.set(getAppContext(), "locale", 3);
// } else {
DataUtils.set(getAppContext(), "locale", 1);
}
// }
}
int loc = DataUtils.get(getAppContext(), "locale", -1);
ChatDataUtils.set(getAppContext(), "locale", loc);
LogUtils.i("下标:" + loc);
switch (loc) {
case 0:
LanguageUtils.updateAppContextLanguage(Locale.TRADITIONAL_CHINESE, null);
applyLanguage(Resources.getSystem(), Locale.TRADITIONAL_CHINESE);
//修复StringUtils获取string的语言
applyLanguage(this.getResources(), Locale.TRADITIONAL_CHINESE);
break;
case 1:
// switch (loc) {
// case 0:
// LanguageUtils.updateAppContextLanguage(Locale.TRADITIONAL_CHINESE, null);
// applyLanguage(Resources.getSystem(), Locale.TRADITIONAL_CHINESE);
// //修复StringUtils获取string的语言
// applyLanguage(this.getResources(), Locale.TRADITIONAL_CHINESE);
// break;
//
// case 1:
LanguageUtils.updateAppContextLanguage(Locale.CHINESE, null);
applyLanguage(Resources.getSystem(), Locale.CHINESE);
//修复StringUtils获取string的语言
applyLanguage(this.getResources(), Locale.CHINESE);
break;
case 2:
LanguageUtils.updateAppContextLanguage(Locale.ENGLISH, null);
applyLanguage(Resources.getSystem(), Locale.ENGLISH);
//修复StringUtils获取string的语言
applyLanguage(this.getResources(), Locale.ENGLISH);
break;
case 3:
LanguageUtils.updateAppContextLanguage(Locale.JAPANESE, null);
applyLanguage(Resources.getSystem(), Locale.JAPANESE);
//修复StringUtils获取string的语言
applyLanguage(this.getResources(), Locale.JAPANESE);
//修复StringUtils获取string的语言
break;
}
// break;
//
// case 2:
// LanguageUtils.updateAppContextLanguage(Locale.ENGLISH, null);
// applyLanguage(Resources.getSystem(), Locale.ENGLISH);
// //修复StringUtils获取string的语言
// applyLanguage(this.getResources(), Locale.ENGLISH);
// break;
//
// case 3:
// LanguageUtils.updateAppContextLanguage(Locale.JAPANESE, null);
// applyLanguage(Resources.getSystem(), Locale.JAPANESE);
// //修复StringUtils获取string的语言
// applyLanguage(this.getResources(), Locale.JAPANESE);
// //修复StringUtils获取string的语言
// break;
//
//
// }
}

View File

@@ -510,6 +510,8 @@ public class JsBridgeActivity extends BaseActivity {
Map<String, Object> map1 = new HashMap<>();
map1.put("code", 0);
map1.put("error", "金币被封禁");
callBackFunction.onCallBack(GsonUtils.beanToJSONString(map1));
toRengong();
return;
}

View File

@@ -0,0 +1,447 @@
package com.hbl.lewan.main.mine;
import android.content.Intent;
import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.text.TextUtils;
import android.view.View;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import androidx.core.content.ContextCompat;
import androidx.core.graphics.drawable.DrawableCompat;
import com.codersun.fingerprintcompat.AonFingerChangeCallback;
import com.codersun.fingerprintcompat.FingerManager;
import com.codersun.fingerprintcompat.SimpleFingerCheckCallback;
import com.hbl.lewan.IMApplication;
import com.hbl.lewan.IMUIKitConfig;
import com.hbl.lewan.R;
import com.hbl.lewan.databinding.ActivityBuyAccountBinding;
import com.hbl.lewan.databinding.ActivityShimingBinding;
import com.hbl.lewan.dialog.ActionConfirmDialog;
import com.hbl.lewan.dialog.PayCashDialog;
import com.hbl.lewan.dialog.PayCashFingerDialog;
import com.hbl.lewan.dialog.PayDialog;
import com.hbl.lewan.dialog.SelectPayTypeDialog;
import com.hbl.lewan.game.JsBridgeActivity;
import com.hbl.lewan.model.BindBean;
import com.hbl.lewan.model.LoginBean;
import com.hbl.lewan.model.PayInfoBean;
import com.hbl.lewan.model.StaffServiceIdBean;
import com.hbl.lewan.model.TopUpBean;
import com.hbl.lewan.model.WalletBean;
import com.hbl.lewan.network.Api;
import com.hbl.lewan.network.BaseObserver;
import com.hbl.lewan.network.Result;
import com.hbl.lewan.pay.CollectionAndPaymentActivity;
import com.hbl.lewan.utils.DataUtils;
import com.hbl.lewan.utils.GsonUtils;
import com.hbl.lewan.utils.LogUtils;
import com.hbl.lewan.wallet.SetPayPasswordActivity;
import com.netease.yunxin.kit.common.ui.activities.BaseActivity;
import com.netease.yunxin.kit.common.ui.utils.ToastX;
import com.netease.yunxin.kit.corekit.im.IMKitClient;
import java.util.HashMap;
import java.util.Map;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
public class BuyAccountActivity extends BaseActivity implements SelectPayTypeDialog.OnToTypeListener{
ActivityBuyAccountBinding viewBinding;
WalletBean walletBean;
BindBean bindBean;
PayCashDialog payDialog;
PayCashFingerDialog payCashFingerDialog;
private int payType = 0;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
getWindow().setDecorFitsSystemWindows(false);
} else {
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
}
getWindow().setStatusBarColor(Color.TRANSPARENT);
super.onCreate(savedInstanceState);
viewBinding = ActivityBuyAccountBinding.inflate(getLayoutInflater());
setContentView(viewBinding.getRoot());
payType = DataUtils.get(this,"pay_type",0);
initView();
getWallet();
bindInfo();
}
private void bindInfo() {
Api.getInstance().bindInfo(IMKitClient.account())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BaseObserver<Result<BindBean>>() {
@Override
public void onSuccess(Result<BindBean> feedbackResp) {
bindBean = feedbackResp.data;
LogUtils.i("获取到的数据:" + GsonUtils.beanToJSONString(bindBean));
}
@Override
public void onError(int code, String msg) {
LogUtils.i("获取到的错误:" + code + "" + msg);
}
});
}
protected void initView() {
viewBinding.contactListActivityTitleBar.getBackImageView().setOnClickListener(v -> finish());
Drawable drawable = viewBinding.contactListActivityTitleBar.getBackImageView().getDrawable().mutate();//
Drawable wrap = DrawableCompat.wrap(drawable);
DrawableCompat.setTint(wrap, ContextCompat.getColor(this,R.color.white));
viewBinding.contactListActivityTitleBar.getBackImageView().setImageDrawable(wrap);
viewBinding.sumbitBt.setOnClickListener(v -> {
// if(TextUtils.isEmpty(viewBinding.nameEt.getText().toString().trim())){
// ToastX.showShortToast("请输入您的真实姓名");
// return;
// }
//
// if(TextUtils.isEmpty(viewBinding.numberEt.getText().toString().trim())){
// ToastX.showShortToast("请输入您本人的身份证号码");
// return;
// }
LoginBean loginBean = DataUtils.getLocUserInfo();
if (loginBean != null && loginBean.getUser() != null) {
if (loginBean.getUser().getForbidQCoin() == 1) {
Map<String, Object> map1 = new HashMap<>();
map1.put("code", 0);
map1.put("error", "金币被封禁");
toRengong();
return;
}
// PayDialog payDialog = new PayDialog(BuyAccountActivity.this, "68", false);
// payDialog.setOntoAlbumListener(new PayDialog.OnListItemClickListener() {
// @Override
// public void onPayPass(String position) {
//
// }
//
// @Override
// public void dimess() {
//
// }
// });
// payDialog.show();
if (DataUtils.get(BuyAccountActivity.this, "hasFinger", false)) {
showPayCashFingerDialog();
} else {
showPayCashDialog();
}
}
});
}
private void showPayCashDialog() {
payDialog = new PayCashDialog(BuyAccountActivity.this,"68",true,0,walletBean,
null,2,"购买副号");
//免密支付的 要告诉 为什么 没有免密
// if(DataUtils.get(BuyAccountActivity.this, "hasMianMi", false)){
// payDialog = new PayCashDialog(BuyAccountActivity.this,"68",true,0,walletBean,
// null,2,"购买副号",getString(R.string.zfjecgxz_txt));
// }
payDialog.setOntoAlbumListener(new PayCashDialog.OnListItemClickListener() {
@Override
public void onPayPass(String position) {
toChange(position,false);
}
@RequiresApi(api = Build.VERSION_CODES.M)
@Override
public void onChangeFinger() {
showPayCashFingerDialog();
}
@Override
public void dimess() {
// ActionConfirmDialog actionDialog = new ActionConfirmDialog(BuyAccountActivity.this,
// getString(R.string.quxiaozhifu_dialog_txt),true);
// actionDialog.setOnToActionListener(new ActionConfirmDialog.OnToActionListener() {
// @Override
// public void toSumbit() {
// cancelPay();
// }
//
// @Override
// public void toCancel() {
// actionDialog.dismiss();
payDialog.dismiss();
// }
// });
// actionDialog.show();
}
});
payDialog.show();
}
private void showPayCashFingerDialog() {
//Context context, String data, boolean showNumber, int payType, WalletBean walletBean, SelectPayTypeDialog.OnToTypeListener onToTypeListener, int isShowFinger
payCashFingerDialog = new PayCashFingerDialog(this,"68",true,
0,walletBean,null,2,"购买副号");
payCashFingerDialog.setOntoAlbumListener(new PayCashFingerDialog.OnListItemClickListener() {
@Override
public void onChangePassword() {
showPayCashDialog();
}
@Override
public void toFinger() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
checkPayFinger();
}
}
@Override
public void dimess() {
// ActionConfirmDialog actionDialog = new ActionConfirmDialog(BuyAccountActivity.this,
// getString(R.string.quxiaozhifu_dialog_txt),true);
// actionDialog.setOnToActionListener(new ActionConfirmDialog.OnToActionListener() {
// @Override
// public void toSumbit() {
// cancelPay();
// }
//
// @Override
// public void toCancel() {
// actionDialog.dismiss();
payCashFingerDialog.dismiss();
// }
// });
// actionDialog.show();
}
});
payCashFingerDialog.show();
}
private void cancelPay() {
}
@RequiresApi(api = Build.VERSION_CODES.M)
private void checkPayFinger() {
FingerManager.build().setApplication(IMApplication.getInstance())
.setTitle(" ")
.setDes(" ")
.setNegativeText(" ")
.setFingerCheckCallback(new SimpleFingerCheckCallback()
{
@Override
public void onSucceed()
{
ToastX.showShortToast("验证成功");
payCashFingerDialog.dismiss();
toChange(null,false);
}
@Override
public void onError(String error)
{
ToastX.showShortToast("验证失败");
}
@Override
public void onCancel()
{
ToastX.showShortToast("您取消了识别");
}
})
.setFingerChangeCallback(new AonFingerChangeCallback()
{
@Override
protected void onFingerDataChange()
{
// ToastX.showShortToast("指纹数据发生了变化");
FingerManager.updateFingerData(BuyAccountActivity.this);
new Handler().postDelayed(() -> checkPayFinger(), 1000);
}
})
.create()
.startListener(BuyAccountActivity.this);
}
private void toChange(String password,boolean isMianMi) {
}
private void toRengong() {
ActionConfirmDialog actionDialog = new ActionConfirmDialog(BuyAccountActivity.this, getString(R.string.ndqbbdj_txt), getString(R.string.general_got_it),
getString(R.string.lxkh_txt),false);
actionDialog.setOnToActionListener(new ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
toKefu();
}
@Override
public void toCancel() {
}
});
actionDialog.show();
}
public void toKefu() {
Api.getInstance().helpCenterStaffServiceId(IMUIKitConfig.SUBSTATIONID, 1)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BaseObserver<Result<StaffServiceIdBean>>() {
@Override
public void onSuccess(Result<StaffServiceIdBean> feedbackResp) {
toRengongCallTop(feedbackResp.data.getStaffServiceId(), feedbackResp.data.getStaffServiceNickname());
}
@Override
public void onError(int code, String msg) {
// WidgetUtils.showToast(JsBridgeActivity.this, msg, WidgetUtils.ToastType.ERROR);
// toRengongCall(400227);
ToastX.showShortToast(msg);
}
});
}
public void toRengongCallTop(Integer staffServiceId, String name) {
// Intent i = IntentFactory.createTempChatIntent(JsBridgeActivity.this, staffServiceId+"", name);
// startActivity(i);
}
private void showDialogPay() {
com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog actionDialog = new com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog(BuyAccountActivity.this,
getString(com.netease.yunxin.kit.chatkit.ui.R.string.bind_phone_des_txt1), getString(com.netease.yunxin.kit.chatkit.ui.R.string.cancel_txt), getString(com.netease.yunxin.kit.chatkit.ui.R.string.to_sett_txt));
actionDialog.setOnToActionListener(new com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
// Intent intent = new Intent(getActivity(), ChangeAccoutActionActivity.class);
// intent.putExtra("type", 5);
// startActivity(intent);
Intent intent = new Intent(BuyAccountActivity.this, SetPayPasswordActivity.class);
startActivity(intent);
}
@Override
public void toCancel() {
}
});
actionDialog.show();
}
private void showDialog() {
ActionConfirmDialog actionDialog = new ActionConfirmDialog(BuyAccountActivity.this,
getString(R.string.bind_phone_des_txt), getString(R.string.nobind_txt), getString(R.string.tobind_txt));
actionDialog.setOnToActionListener(new ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
Intent intent = new Intent(BuyAccountActivity.this, ChangeAccoutActionActivity.class);
intent.putExtra("type", ChangeAccoutActionActivity.TYPE_BIND_PHONE);
startActivity(intent);
}
@Override
public void toCancel() {
}
});
actionDialog.show();
}
private void getWallet() {
Api.getInstance().walletInfo(IMKitClient.account())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BaseObserver<Result<WalletBean>>() {
@Override
public void onSuccess(Result<WalletBean> feedbackResp) {
walletBean = feedbackResp.data;
changeInfo();
}
@Override
public void onError(int code, String msg) {
}
});
}
private void changeInfo() {
if (walletBean != null) {
// viewBinding.jinbiYueTv.setText(AppUtils.getQian(walletBean.getGoldCoin()));
// viewBinding.yinbiYueTv.setText(AppUtils.getQian(walletBean.getSilverCoin()));
}
}
@Override
protected void onStop() {
super.onStop();
}
@Override
public void toType(int type) {
DataUtils.set(BuyAccountActivity.this,"pay_type",type);
payType = type;
changePayType();
}
private void changePayType() {
// viewBinding.yueTv.setVisibility(View.INVISIBLE);
// if(payType == 0){
// viewBinding.payTypeTv.setText(R.string.species_txt);
// viewBinding.yueTv.setVisibility(View.VISIBLE);
// viewBinding.payTypeIv.setImageResource(R.mipmap.wallet_jinbi_img);
// }else if(payType == 1){
// viewBinding.payTypeTv.setText("line pay");
// viewBinding.payTypeIv.setImageResource(R.mipmap.line_pay_img);
// }else{
// viewBinding.payTypeTv.setText(R.string.neweb_txt);
// viewBinding.payTypeIv.setImageResource(R.mipmap.newebpay_img);
// }
}
}

View File

@@ -56,6 +56,7 @@ import com.hbl.lewan.utils.LogUtils;
import com.hbl.lewan.wallet.GiftInfoActivity;
import com.hbl.lewan.wallet.MyWalletActivity;
import com.hbl.lewan.wallet.PaySettingActivity;
import com.hbl.lewan.wallet.ShiMingActivity;
import com.hbl.lewan.wallet.WalletInfoActivity;
import com.hbl.lewan.welcome.WelcomeActivity;
//import com.king.app.updater.AppUpdater;
@@ -249,6 +250,22 @@ public class MineFragment extends BaseFragment {
actionConfirmDialog.show();
});
binding.tvChange.setOnClickListener(v -> {
ActionConfirmDialog actionConfirmDialog = new ActionConfirmDialog(getActivity(), "当前没有副号,是否需要购买", "取消","购买",true);
actionConfirmDialog.setOnToActionListener(new ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
startActivity(new Intent(getActivity(), BuyAccountActivity.class));
}
@Override
public void toCancel() {
}
});
actionConfirmDialog.show();
});
binding.friendTv.setOnClickListener(v -> startActivity(new Intent(getActivity(), FriendPermissionsActivity.class)));
binding.toMerchantTv.setOnClickListener(v -> {

View File

@@ -0,0 +1,151 @@
package com.hbl.lewan.wallet;
import android.content.Intent;
import android.os.Bundle;
import androidx.annotation.Nullable;
import com.hbl.lewan.R;
import com.hbl.lewan.databinding.ActivityAddBankBinding;
import com.hbl.lewan.databinding.ActivityShimingBinding;
import com.hbl.lewan.dialog.ActionConfirmDialog;
import com.hbl.lewan.main.mine.ChangeAccoutActionActivity;
import com.hbl.lewan.model.BindBean;
import com.hbl.lewan.model.WalletBean;
import com.hbl.lewan.network.Api;
import com.hbl.lewan.network.BaseObserver;
import com.hbl.lewan.network.Result;
import com.hbl.lewan.utils.GsonUtils;
import com.hbl.lewan.utils.LogUtils;
import com.netease.yunxin.kit.common.ui.activities.BaseActivity;
import com.netease.yunxin.kit.corekit.im.IMKitClient;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
public class AddBankActivity extends BaseActivity {
ActivityAddBankBinding viewBinding;
WalletBean walletBean;
BindBean bindBean;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
viewBinding = ActivityAddBankBinding.inflate(getLayoutInflater());
setContentView(viewBinding.getRoot());
initView();
getWallet();
bindInfo();
}
private void bindInfo() {
Api.getInstance().bindInfo(IMKitClient.account())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BaseObserver<>() {
@Override
public void onSuccess(Result<BindBean> feedbackResp) {
bindBean = feedbackResp.data;
LogUtils.i("获取到的数据:" + GsonUtils.beanToJSONString(bindBean));
}
@Override
public void onError(int code, String msg) {
LogUtils.i("获取到的错误:" + code + "" + msg);
}
});
}
protected void initView() {
viewBinding.contactListActivityTitleBar.getBackImageView().setOnClickListener(v -> finish());
}
private void showDialogPay() {
com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog actionDialog = new com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog(AddBankActivity.this,
getString(com.netease.yunxin.kit.chatkit.ui.R.string.bind_phone_des_txt1), getString(com.netease.yunxin.kit.chatkit.ui.R.string.cancel_txt), getString(com.netease.yunxin.kit.chatkit.ui.R.string.to_sett_txt));
actionDialog.setOnToActionListener(new com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
// Intent intent = new Intent(getActivity(), ChangeAccoutActionActivity.class);
// intent.putExtra("type", 5);
// startActivity(intent);
Intent intent = new Intent(AddBankActivity.this, SetPayPasswordActivity.class);
startActivity(intent);
}
@Override
public void toCancel() {
}
});
actionDialog.show();
}
private void showDialog() {
ActionConfirmDialog actionDialog = new ActionConfirmDialog(AddBankActivity.this,
getString(R.string.bind_phone_des_txt), getString(R.string.nobind_txt), getString(R.string.tobind_txt));
actionDialog.setOnToActionListener(new ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
Intent intent = new Intent(AddBankActivity.this, ChangeAccoutActionActivity.class);
intent.putExtra("type", ChangeAccoutActionActivity.TYPE_BIND_PHONE);
startActivity(intent);
}
@Override
public void toCancel() {
}
});
actionDialog.show();
}
private void getWallet() {
Api.getInstance().walletInfo(IMKitClient.account())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BaseObserver<>() {
@Override
public void onSuccess(Result<WalletBean> feedbackResp) {
walletBean = feedbackResp.data;
changeInfo();
}
@Override
public void onError(int code, String msg) {
}
});
}
private void changeInfo() {
if (walletBean != null) {
// viewBinding.jinbiYueTv.setText(AppUtils.getQian(walletBean.getGoldCoin()));
// viewBinding.yinbiYueTv.setText(AppUtils.getQian(walletBean.getSilverCoin()));
}
}
@Override
protected void onStop() {
super.onStop();
}
}

View File

@@ -0,0 +1,154 @@
package com.hbl.lewan.wallet;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import androidx.annotation.Nullable;
import com.hbl.lewan.R;
import com.hbl.lewan.databinding.ActivityBankListBinding;
import com.hbl.lewan.databinding.ActivityShimingBinding;
import com.hbl.lewan.dialog.ActionConfirmDialog;
import com.hbl.lewan.main.mine.ChangeAccoutActionActivity;
import com.hbl.lewan.model.BindBean;
import com.hbl.lewan.model.WalletBean;
import com.hbl.lewan.network.Api;
import com.hbl.lewan.network.BaseObserver;
import com.hbl.lewan.network.Result;
import com.hbl.lewan.utils.GsonUtils;
import com.hbl.lewan.utils.LogUtils;
import com.netease.yunxin.kit.common.ui.activities.BaseActivity;
import com.netease.yunxin.kit.corekit.im.IMKitClient;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
public class BankListActivity extends BaseActivity {
ActivityBankListBinding viewBinding;
WalletBean walletBean;
BindBean bindBean;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
viewBinding = ActivityBankListBinding.inflate(getLayoutInflater());
setContentView(viewBinding.getRoot());
initView();
getWallet();
bindInfo();
}
private void bindInfo() {
Api.getInstance().bindInfo(IMKitClient.account())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BaseObserver<Result<BindBean>>() {
@Override
public void onSuccess(Result<BindBean> feedbackResp) {
bindBean = feedbackResp.data;
LogUtils.i("获取到的数据:" + GsonUtils.beanToJSONString(bindBean));
}
@Override
public void onError(int code, String msg) {
LogUtils.i("获取到的错误:" + code + "" + msg);
}
});
}
protected void initView() {
viewBinding.contactListActivityTitleBar.getBackImageView().setOnClickListener(v -> finish());
viewBinding.addBankBt.setOnClickListener(v -> startActivity(new Intent(BankListActivity.this, AddBankActivity.class)));
}
private void showDialogPay() {
com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog actionDialog = new com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog(BankListActivity.this,
getString(com.netease.yunxin.kit.chatkit.ui.R.string.bind_phone_des_txt1), getString(com.netease.yunxin.kit.chatkit.ui.R.string.cancel_txt), getString(com.netease.yunxin.kit.chatkit.ui.R.string.to_sett_txt));
actionDialog.setOnToActionListener(new com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
// Intent intent = new Intent(getActivity(), ChangeAccoutActionActivity.class);
// intent.putExtra("type", 5);
// startActivity(intent);
Intent intent = new Intent(BankListActivity.this, SetPayPasswordActivity.class);
startActivity(intent);
}
@Override
public void toCancel() {
}
});
actionDialog.show();
}
private void showDialog() {
ActionConfirmDialog actionDialog = new ActionConfirmDialog(BankListActivity.this,
getString(R.string.bind_phone_des_txt), getString(R.string.nobind_txt), getString(R.string.tobind_txt));
actionDialog.setOnToActionListener(new ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
Intent intent = new Intent(BankListActivity.this, ChangeAccoutActionActivity.class);
intent.putExtra("type", ChangeAccoutActionActivity.TYPE_BIND_PHONE);
startActivity(intent);
}
@Override
public void toCancel() {
}
});
actionDialog.show();
}
private void getWallet() {
Api.getInstance().walletInfo(IMKitClient.account())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BaseObserver<Result<WalletBean>>() {
@Override
public void onSuccess(Result<WalletBean> feedbackResp) {
walletBean = feedbackResp.data;
changeInfo();
}
@Override
public void onError(int code, String msg) {
}
});
}
private void changeInfo() {
if (walletBean != null) {
// viewBinding.jinbiYueTv.setText(AppUtils.getQian(walletBean.getGoldCoin()));
// viewBinding.yinbiYueTv.setText(AppUtils.getQian(walletBean.getSilverCoin()));
}
}
@Override
protected void onStop() {
super.onStop();
}
}

View File

@@ -0,0 +1,479 @@
package com.hbl.lewan.wallet;
import android.Manifest;
import android.content.Intent;
import android.graphics.Color;
import android.os.Build;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import com.bumptech.glide.Glide;
import com.hbl.lewan.R;
import com.hbl.lewan.databinding.ActivityBindWechatAlipayBinding;
import com.hbl.lewan.databinding.ActivityShimingBinding;
import com.hbl.lewan.dialog.ActionConfirmDialog;
import com.hbl.lewan.main.mine.ChangeAccoutActionActivity;
import com.hbl.lewan.model.BindBean;
import com.hbl.lewan.model.WalletBean;
import com.hbl.lewan.network.Api;
import com.hbl.lewan.network.BaseObserver;
import com.hbl.lewan.network.Result;
import com.hbl.lewan.utils.GsonUtils;
import com.hbl.lewan.utils.LogUtils;
import com.luck.picture.lib.basic.PictureSelector;
import com.luck.picture.lib.config.SelectMimeType;
import com.luck.picture.lib.entity.LocalMedia;
import com.luck.picture.lib.interfaces.OnResultCallbackListener;
import com.luck.picture.lib.style.BottomNavBarStyle;
import com.luck.picture.lib.style.PictureSelectorStyle;
import com.luck.picture.lib.style.SelectMainStyle;
import com.luck.picture.lib.style.TitleBarStyle;
import com.netease.yunxin.kit.chatkit.ui.common.GlideEngine;
import com.netease.yunxin.kit.common.ui.activities.BaseActivity;
import com.netease.yunxin.kit.common.ui.dialog.LoadingDialog;
import com.netease.yunxin.kit.common.ui.photo.PhotoPicker;
import com.netease.yunxin.kit.common.ui.utils.CommonCallback;
import com.netease.yunxin.kit.common.ui.utils.Permission;
import com.netease.yunxin.kit.common.ui.utils.ToastX;
import com.netease.yunxin.kit.common.utils.PermissionUtils;
import com.netease.yunxin.kit.contactkit.ui.utils.ColorUtils;
import com.netease.yunxin.kit.corekit.im.IMKitClient;
import com.qiniu.android.storage.Configuration;
import com.qiniu.android.storage.UploadManager;
import com.qiniu.android.storage.UploadOptions;
import org.json.JSONException;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
public class BindWeChatOrAliPayActivity extends BaseActivity{
ActivityBindWechatAlipayBinding viewBinding;
WalletBean walletBean;
BindBean bindBean;
boolean isWeChat = true;
protected ActivityResultLauncher<String[]> permissionLauncher;
File imageFile = null;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
viewBinding = ActivityBindWechatAlipayBinding.inflate(getLayoutInflater());
setContentView(viewBinding.getRoot());
isWeChat = getIntent().getBooleanExtra("isWeChat", true);
permissionLauncher =
registerForActivityResult(
new ActivityResultContracts.RequestMultiplePermissions(),
result -> {
if (result != null) {
for (Map.Entry<String, Boolean> entry : result.entrySet()) {
String permission = entry.getKey().toString();
boolean grant = (Boolean) entry.getValue();
if (grant) {
if (TextUtils.equals(
permission, Manifest.permission.READ_EXTERNAL_STORAGE) || TextUtils.equals(
permission, Manifest.permission.READ_MEDIA_IMAGES) || TextUtils.equals(
permission, Manifest.permission.READ_MEDIA_VIDEO)) {
startPickMedia();
}
} else {
if (shouldShowRequestPermissionRationale(permission)) {
ToastX.showShortToast(getString(com.netease.yunxin.kit.chatkit.ui.R.string.permission_deny_tips));
} else {
ToastX.showShortToast(getString(com.netease.yunxin.kit.chatkit.ui.R.string.permission_storage));
}
}
}
}
});
initView();
getWallet();
bindInfo();
}
private void startPickMedia() {
TitleBarStyle whiteTitleBarStyle = new TitleBarStyle();
whiteTitleBarStyle.setTitleBackgroundColor(ContextCompat.getColor(BindWeChatOrAliPayActivity.this, com.netease.yunxin.kit.chatkit.ui.R.color.ps_color_white));
whiteTitleBarStyle.setTitleDrawableRightResource(com.netease.yunxin.kit.chatkit.ui.R.drawable.ic_orange_arrow_down);
whiteTitleBarStyle.setTitleLeftBackResource(com.netease.yunxin.kit.common.ui.R.drawable.ic_back);
whiteTitleBarStyle.setTitleTextColor(ContextCompat.getColor(BindWeChatOrAliPayActivity.this, com.netease.yunxin.kit.chatkit.ui.R.color.ps_color_black));
whiteTitleBarStyle.setTitleCancelTextColor(ContextCompat.getColor(BindWeChatOrAliPayActivity.this, com.netease.yunxin.kit.chatkit.ui.R.color.ps_color_53575e));
whiteTitleBarStyle.setDisplayTitleBarLine(true);
BottomNavBarStyle whiteBottomNavBarStyle = new BottomNavBarStyle();
// whiteBottomNavBarStyle.setBottomPreviewSelectText(getResources().getString(R.string.chat_team_ait_all));
whiteBottomNavBarStyle.setBottomNarBarBackgroundColor(Color.parseColor("#FFFFFF"));
whiteBottomNavBarStyle.setBottomPreviewSelectTextColor(ContextCompat.getColor(BindWeChatOrAliPayActivity.this, com.netease.yunxin.kit.chatkit.ui.R.color.ps_color_53575e));
whiteBottomNavBarStyle.setBottomPreviewNormalTextColor(ContextCompat.getColor(BindWeChatOrAliPayActivity.this, com.netease.yunxin.kit.chatkit.ui.R.color.ps_color_9b));
whiteBottomNavBarStyle.setBottomPreviewSelectTextColor(ContextCompat.getColor(BindWeChatOrAliPayActivity.this, com.netease.yunxin.kit.chatkit.ui.R.color.color_222222));
whiteBottomNavBarStyle.setCompleteCountTips(false);
whiteBottomNavBarStyle.setBottomEditorTextColor(ContextCompat.getColor(BindWeChatOrAliPayActivity.this, com.netease.yunxin.kit.chatkit.ui.R.color.ps_color_53575e));
whiteBottomNavBarStyle.setBottomOriginalTextColor(ContextCompat.getColor(BindWeChatOrAliPayActivity.this, com.netease.yunxin.kit.chatkit.ui.R.color.ps_color_53575e));
SelectMainStyle selectMainStyle = new SelectMainStyle();
selectMainStyle.setStatusBarColor(ContextCompat.getColor(BindWeChatOrAliPayActivity.this, com.netease.yunxin.kit.chatkit.ui.R.color.ps_color_white));
selectMainStyle.setDarkStatusBarBlack(true);
selectMainStyle.setSelectNormalTextColor(ContextCompat.getColor(BindWeChatOrAliPayActivity.this, com.netease.yunxin.kit.chatkit.ui.R.color.ps_color_9b));
selectMainStyle.setSelectTextColor(ContextCompat.getColor(BindWeChatOrAliPayActivity.this, com.netease.yunxin.kit.chatkit.ui.R.color.color_222222));
selectMainStyle.setPreviewSelectBackground(com.netease.yunxin.kit.chatkit.ui.R.drawable.ps_demo_white_preview_selector);
selectMainStyle.setSelectBackground(com.netease.yunxin.kit.chatkit.ui.R.drawable.ps_checkbox_selector);
// selectMainStyle.setSelectText(R.string.ps_done_front_num);
selectMainStyle.setMainListBackgroundColor(ContextCompat.getColor(BindWeChatOrAliPayActivity.this, com.netease.yunxin.kit.chatkit.ui.R.color.ps_color_white));
PictureSelectorStyle selectorStyle = new PictureSelectorStyle();
selectorStyle.setTitleBarStyle(whiteTitleBarStyle);
selectorStyle.setBottomBarStyle(whiteBottomNavBarStyle);
selectorStyle.setSelectMainStyle(selectMainStyle);
PictureSelector.create(this)
.openGallery(SelectMimeType.ofImage())
.setImageEngine(GlideEngine.createGlideEngine())
.setMaxSelectNum(1)
// .setMaxVideoSelectNum(9)
.setSelectorUIStyle(selectorStyle)
.forResult(new OnResultCallbackListener<LocalMedia>() {
@Override
public void onResult(ArrayList<LocalMedia> result) {
for (int i = 0; i < result.size(); ++i) {
LogUtils.i("地址是啥:" + result.get(i).getRealPath());
File file = new File(result.get(i).getRealPath());
toUpdateBg(file);
}
}
@Override
public void onCancel() {
}
});
}
private void bindInfo() {
Api.getInstance().bindInfo(IMKitClient.account())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BaseObserver<Result<BindBean>>() {
@Override
public void onSuccess(Result<BindBean> feedbackResp) {
bindBean = feedbackResp.data;
LogUtils.i("获取到的数据:" + GsonUtils.beanToJSONString(bindBean));
}
@Override
public void onError(int code, String msg) {
LogUtils.i("获取到的错误:" + code + "" + msg);
}
});
}
protected void initView() {
viewBinding.contactListActivityTitleBar.getBackImageView().setOnClickListener(v -> finish());
if (!isWeChat) {
viewBinding.contactListActivityTitleBar.getTitleTextView().setText("绑定支付宝");
viewBinding.typeNameTv.setText("支付宝账号");
viewBinding.typeImageTv.setText("上传支付宝收款码");
viewBinding.numberEt.setHint("请输入您本人使用的支付宝账号");
viewBinding.tipsTv.setText("*请勿上传截图的收款码,请在二维码收款界面,点击保存收款码,上传图片");
viewBinding.tips1Tv.setText("请务必绑定本人的支付宝账号");
}
viewBinding.imageIv.setOnClickListener(v -> choicePhoto());
viewBinding.sumbitBt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(TextUtils.isEmpty(viewBinding.nameEt.getText().toString().trim())){
ToastX.showShortToast("请输入您的真实姓名");
return;
}
if(TextUtils.isEmpty(viewBinding.numberEt.getText().toString().trim())){
if(isWeChat){
ToastX.showShortToast("请输入您本人使用的微信账号");
}else{
ToastX.showShortToast("请输入您本人使用的支付宝账号");
}
return;
}
if(imageFile == null){
if(isWeChat){
ToastX.showShortToast("请上传微信收款码");
}else{
ToastX.showShortToast("请上传支付宝收款码");
}
return;
}
toShangchuanAli(imageFile);
}
});
}
private void choicePhoto() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
if (PermissionUtils.hasPermissions(
BindWeChatOrAliPayActivity.this, Manifest.permission.READ_MEDIA_IMAGES, Manifest.permission.READ_MEDIA_VIDEO)) {
startPickMedia();
} else {
permissionLauncher.launch(new String[]{Manifest.permission.READ_MEDIA_IMAGES, Manifest.permission.READ_MEDIA_VIDEO});
}
} else {
if (PermissionUtils.hasPermissions(
BindWeChatOrAliPayActivity.this, Manifest.permission.READ_EXTERNAL_STORAGE)) {
startPickMedia();
} else {
permissionLauncher.launch(new String[]{Manifest.permission.READ_EXTERNAL_STORAGE});
}
}
}
private void showDialogPay() {
com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog actionDialog = new com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog(BindWeChatOrAliPayActivity.this,
getString(com.netease.yunxin.kit.chatkit.ui.R.string.bind_phone_des_txt1), getString(com.netease.yunxin.kit.chatkit.ui.R.string.cancel_txt), getString(com.netease.yunxin.kit.chatkit.ui.R.string.to_sett_txt));
actionDialog.setOnToActionListener(new com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
// Intent intent = new Intent(getActivity(), ChangeAccoutActionActivity.class);
// intent.putExtra("type", 5);
// startActivity(intent);
Intent intent = new Intent(BindWeChatOrAliPayActivity.this, SetPayPasswordActivity.class);
startActivity(intent);
}
@Override
public void toCancel() {
}
});
actionDialog.show();
}
private void showDialog() {
ActionConfirmDialog actionDialog = new ActionConfirmDialog(BindWeChatOrAliPayActivity.this,
getString(R.string.bind_phone_des_txt), getString(R.string.nobind_txt), getString(R.string.tobind_txt));
actionDialog.setOnToActionListener(new ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
Intent intent = new Intent(BindWeChatOrAliPayActivity.this, ChangeAccoutActionActivity.class);
intent.putExtra("type", ChangeAccoutActionActivity.TYPE_BIND_PHONE);
startActivity(intent);
}
@Override
public void toCancel() {
}
});
actionDialog.show();
}
private void getWallet() {
Api.getInstance().walletInfo(IMKitClient.account())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BaseObserver<Result<WalletBean>>() {
@Override
public void onSuccess(Result<WalletBean> feedbackResp) {
walletBean = feedbackResp.data;
changeInfo();
}
@Override
public void onError(int code, String msg) {
}
});
}
private void changeInfo() {
if (walletBean != null) {
// viewBinding.jinbiYueTv.setText(AppUtils.getQian(walletBean.getGoldCoin()));
// viewBinding.yinbiYueTv.setText(AppUtils.getQian(walletBean.getSilverCoin()));
}
}
@Override
protected void onStop() {
super.onStop();
}
private void toUpdateBg(File file) {
imageFile = file;
Glide.with(BindWeChatOrAliPayActivity.this)
.load(file.getAbsolutePath())
.into(viewBinding.imageIv);
// toShangchuanAli(file);
}
String stsCredentialsBean;
private void toShangchuanAli(File file) {
showLoadingDialog();
Api.getInstance().stsCredentials1()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BaseObserver<>() {
@Override
public void onSuccess(Result<String> feedbackResp) {
stsCredentialsBean = feedbackResp.data;
// toAliYunOss(file, isHead);
toQIiNiuYunOss(file);
}
@Override
public void onError(int code, String msg) {
dimessLoadingDialog();
ToastX.showShortToast(msg);
}
});
}
public LoadingDialog loadingDialog;
public void showLoadingDialog() {
if (loadingDialog == null)
loadingDialog = new LoadingDialog(this);
loadingDialog.show();
}
public void showLoadingDialog(String msg) {
if (loadingDialog == null)
loadingDialog = new LoadingDialog(this);
loadingDialog.setLoadingText(msg);
loadingDialog.show();
}
public void dimessLoadingDialog() {
if (loadingDialog != null) {
loadingDialog.dismiss();
}
}
private void toQIiNiuYunOss(File file ) {
String updatePathPic = isWeChat?"wechat":"alipay";
// new Handler().post(() -> QiNiuTool.upload(convertFileToBytes(file)));
UploadOptions options = new UploadOptions(null, null, true,
(key, percent) -> {
LogUtils.i("结果是啥进度:" + percent);
}, () -> {
LogUtils.i("结果是啥进度112222222111");
return false;
});
// Zone zone = FixedZone.zoneAs0;
Configuration configuration = new Configuration.Builder()
// .connectTimeout(10) // 链接超时。默认10秒
// .responseTimeout(60) // 服务器响应超时。默认60秒
// .zone(zone) // 设置区域不指定会自动选择。指定不同区域的上传域名、备用域名、备用IP。
.build();
UploadManager uploadManager = new UploadManager(configuration);
String fileName = UUID.randomUUID().toString() + "_" + file.getName();
LogUtils.i("结果是啥开始:" + stsCredentialsBean + ";;" + file.getAbsolutePath());
// Uri uri = FileUtils.getMediaUriFromPath(file.getAbsolutePath(),UserHeadEditActivity.this);
// GPX2hnRdNpAvovOSZGrhMxtaa6JP2mPvJ96-tdmD
// immchat
String files = "media/" + updatePathPic + "/" + fileName;
byte[] sss = convertFileToBytes(file);
LogUtils.i("结果是啥开始:" + sss);
uploadManager.put(sss, files, stsCredentialsBean, (key, info, response) -> {
// LogUtils.i("结果是啥2" + GsonUtils.beanToJSONString(info));
LogUtils.i("结果是啥2" + GsonUtils.beanToJSONString(response));
dimessLoadingDialog();
if (info != null && info.isOK()) {
// 上传成功
try {
LogUtils.i("地址是啥:" + response.getString("key"));
toPush("https://qn.hnsdl.com/" + response.getString("key"));
} catch (JSONException e) {
LogUtils.i("结果是啥失败:" +e);
}
} else {
// 上传失败
LogUtils.i("结果是啥失败:" + GsonUtils.beanToJSONString(info));
}
}, options);
}
private void toPush(String key) {
}
//
public static byte[] convertFileToBytes(File file) {
// 使用ByteArrayOutputStream来收集字节数据
FileInputStream fis = null;
try {
fis = new FileInputStream(file);
byte[] bytesArray = new byte[(int) file.length()];
fis.read(bytesArray);
fis.close();
return bytesArray;
} catch (FileNotFoundException e) {
// throw new RuntimeException(e);
return null;
} catch (IOException e) {
// throw new RuntimeException(e);
return null;
}
}
}

View File

@@ -98,6 +98,18 @@ public class MyWalletActivity extends BaseActivity {
}
}
});
viewBinding.smrzBt.setOnClickListener(v -> startActivity(new Intent(MyWalletActivity.this, ShiMingActivity.class)));
viewBinding.wdyhkBt.setOnClickListener(v -> startActivity(new Intent(MyWalletActivity.this, BankListActivity.class)));
viewBinding.wdwxBt.setOnClickListener(v -> startActivity(new Intent(MyWalletActivity.this, ToBindWeChatOrAliPayActivity.class)));
viewBinding.wdzfbBt.setOnClickListener(v ->{
Intent i = new Intent(MyWalletActivity.this, ToBindWeChatOrAliPayActivity.class);
i.putExtra("isWeChat",false);
startActivity(i);
});
}

View File

@@ -0,0 +1,197 @@
package com.hbl.lewan.wallet;
import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.core.graphics.drawable.DrawableCompat;
import com.hbl.lewan.IMApplication;
import com.hbl.lewan.IMUIKitConfig;
import com.hbl.lewan.R;
import com.hbl.lewan.databinding.ActivityShimingBinding;
import com.hbl.lewan.databinding.ActivityWalletInfoNewBinding;
import com.hbl.lewan.dialog.ActionConfirmDialog;
import com.hbl.lewan.main.mine.ChangeAccoutActionActivity;
import com.hbl.lewan.model.BindBean;
import com.hbl.lewan.model.WalletBean;
import com.hbl.lewan.network.Api;
import com.hbl.lewan.network.BaseObserver;
import com.hbl.lewan.network.Result;
import com.hbl.lewan.pay.LipinDuiHuanActivity;
import com.hbl.lewan.utils.AnimUtil;
import com.hbl.lewan.utils.AppUtils;
import com.hbl.lewan.utils.DataUtils;
import com.hbl.lewan.utils.GsonUtils;
import com.hbl.lewan.utils.LogUtils;
import com.hbl.lewan.welcome.WelcomeActivity;
import com.netease.yunxin.kit.chatkit.ui.data.ChatDatabase;
import com.netease.yunxin.kit.common.ui.activities.BaseActivity;
import com.netease.yunxin.kit.common.ui.utils.ToastX;
import com.netease.yunxin.kit.corekit.im.IMKitClient;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
public class ShiMingActivity extends BaseActivity {
ActivityShimingBinding viewBinding;
WalletBean walletBean;
BindBean bindBean;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
viewBinding = ActivityShimingBinding.inflate(getLayoutInflater());
setContentView(viewBinding.getRoot());
initView();
getWallet();
bindInfo();
}
private void bindInfo() {
Api.getInstance().bindInfo(IMKitClient.account())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BaseObserver<Result<BindBean>>() {
@Override
public void onSuccess(Result<BindBean> feedbackResp) {
bindBean = feedbackResp.data;
LogUtils.i("获取到的数据:" + GsonUtils.beanToJSONString(bindBean));
}
@Override
public void onError(int code, String msg) {
LogUtils.i("获取到的错误:" + code + "" + msg);
}
});
}
protected void initView() {
viewBinding.contactListActivityTitleBar.getBackImageView().setOnClickListener(v -> finish());
viewBinding.sumbitBt.setOnClickListener(v -> {
if(TextUtils.isEmpty(viewBinding.nameEt.getText().toString().trim())){
ToastX.showShortToast("请输入您的真实姓名");
return;
}
if(TextUtils.isEmpty(viewBinding.numberEt.getText().toString().trim())){
ToastX.showShortToast("请输入您本人的身份证号码");
return;
}
//Context context, String content, String cancel, String sure, boolean showCancel
ActionConfirmDialog actionConfirmDialog = new ActionConfirmDialog(ShiMingActivity.this, "实名认证一经提交,无法更改,请务必确认填写的是真实资料", "取消","确认提交",true);
actionConfirmDialog.setOnToActionListener(new ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
}
@Override
public void toCancel() {
}
});
actionConfirmDialog.show();
});
}
private void showDialogPay() {
com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog actionDialog = new com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog(ShiMingActivity.this,
getString(com.netease.yunxin.kit.chatkit.ui.R.string.bind_phone_des_txt1), getString(com.netease.yunxin.kit.chatkit.ui.R.string.cancel_txt), getString(com.netease.yunxin.kit.chatkit.ui.R.string.to_sett_txt));
actionDialog.setOnToActionListener(new com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
// Intent intent = new Intent(getActivity(), ChangeAccoutActionActivity.class);
// intent.putExtra("type", 5);
// startActivity(intent);
Intent intent = new Intent(ShiMingActivity.this, SetPayPasswordActivity.class);
startActivity(intent);
}
@Override
public void toCancel() {
}
});
actionDialog.show();
}
private void showDialog() {
ActionConfirmDialog actionDialog = new ActionConfirmDialog(ShiMingActivity.this,
getString(R.string.bind_phone_des_txt), getString(R.string.nobind_txt), getString(R.string.tobind_txt));
actionDialog.setOnToActionListener(new ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
Intent intent = new Intent(ShiMingActivity.this, ChangeAccoutActionActivity.class);
intent.putExtra("type", ChangeAccoutActionActivity.TYPE_BIND_PHONE);
startActivity(intent);
}
@Override
public void toCancel() {
}
});
actionDialog.show();
}
private void getWallet() {
Api.getInstance().walletInfo(IMKitClient.account())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BaseObserver<Result<WalletBean>>() {
@Override
public void onSuccess(Result<WalletBean> feedbackResp) {
walletBean = feedbackResp.data;
changeInfo();
}
@Override
public void onError(int code, String msg) {
}
});
}
private void changeInfo() {
if (walletBean != null) {
// viewBinding.jinbiYueTv.setText(AppUtils.getQian(walletBean.getGoldCoin()));
// viewBinding.yinbiYueTv.setText(AppUtils.getQian(walletBean.getSilverCoin()));
}
}
@Override
protected void onStop() {
super.onStop();
}
}

View File

@@ -0,0 +1,176 @@
package com.hbl.lewan.wallet;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import androidx.annotation.Nullable;
import com.hbl.lewan.R;
import com.hbl.lewan.databinding.ActivityShimingBinding;
import com.hbl.lewan.databinding.ActivityToBindWechatAlipayBinding;
import com.hbl.lewan.dialog.ActionConfirmDialog;
import com.hbl.lewan.main.mine.ChangeAccoutActionActivity;
import com.hbl.lewan.model.BindBean;
import com.hbl.lewan.model.WalletBean;
import com.hbl.lewan.network.Api;
import com.hbl.lewan.network.BaseObserver;
import com.hbl.lewan.network.Result;
import com.hbl.lewan.utils.GsonUtils;
import com.hbl.lewan.utils.LogUtils;
import com.netease.yunxin.kit.common.ui.activities.BaseActivity;
import com.netease.yunxin.kit.corekit.im.IMKitClient;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
public class ToBindWeChatOrAliPayActivity extends BaseActivity {
ActivityToBindWechatAlipayBinding viewBinding;
WalletBean walletBean;
BindBean bindBean;
boolean isWeChat = true;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
viewBinding = ActivityToBindWechatAlipayBinding.inflate(getLayoutInflater());
setContentView(viewBinding.getRoot());
isWeChat =getIntent().getBooleanExtra("isWeChat",true);
initView();
getWallet();
bindInfo();
}
private void bindInfo() {
Api.getInstance().bindInfo(IMKitClient.account())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BaseObserver<Result<BindBean>>() {
@Override
public void onSuccess(Result<BindBean> feedbackResp) {
bindBean = feedbackResp.data;
LogUtils.i("获取到的数据:" + GsonUtils.beanToJSONString(bindBean));
}
@Override
public void onError(int code, String msg) {
LogUtils.i("获取到的错误:" + code + "" + msg);
}
});
}
protected void initView() {
viewBinding.contactListActivityTitleBar.getBackImageView().setOnClickListener(v -> finish());
if(!isWeChat){
viewBinding.contactListActivityTitleBar.getTitleTextView().setText("我的支付宝");
viewBinding.tipsTv.setText("还没有绑定支付宝");
viewBinding.tipsTv1.setText("支付宝账号一经绑定,无法修改,若必须修改,如收款码过期等问题,请联系客服进行调整");
}
viewBinding.sumbitBt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(ToBindWeChatOrAliPayActivity.this, BindWeChatOrAliPayActivity.class);
i.putExtra("isWeChat",isWeChat);
startActivityForResult(i,888);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == 888&&resultCode == RESULT_OK){
}
}
private void showDialogPay() {
com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog actionDialog = new com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog(ToBindWeChatOrAliPayActivity.this,
getString(com.netease.yunxin.kit.chatkit.ui.R.string.bind_phone_des_txt1), getString(com.netease.yunxin.kit.chatkit.ui.R.string.cancel_txt), getString(com.netease.yunxin.kit.chatkit.ui.R.string.to_sett_txt));
actionDialog.setOnToActionListener(new com.netease.yunxin.kit.chatkit.ui.dialog.ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
// Intent intent = new Intent(getActivity(), ChangeAccoutActionActivity.class);
// intent.putExtra("type", 5);
// startActivity(intent);
Intent intent = new Intent(ToBindWeChatOrAliPayActivity.this, SetPayPasswordActivity.class);
startActivity(intent);
}
@Override
public void toCancel() {
}
});
actionDialog.show();
}
private void showDialog() {
ActionConfirmDialog actionDialog = new ActionConfirmDialog(ToBindWeChatOrAliPayActivity.this,
getString(R.string.bind_phone_des_txt), getString(R.string.nobind_txt), getString(R.string.tobind_txt));
actionDialog.setOnToActionListener(new ActionConfirmDialog.OnToActionListener() {
@Override
public void toSumbit() {
Intent intent = new Intent(ToBindWeChatOrAliPayActivity.this, ChangeAccoutActionActivity.class);
intent.putExtra("type", ChangeAccoutActionActivity.TYPE_BIND_PHONE);
startActivity(intent);
}
@Override
public void toCancel() {
}
});
actionDialog.show();
}
private void getWallet() {
Api.getInstance().walletInfo(IMKitClient.account())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new BaseObserver<Result<WalletBean>>() {
@Override
public void onSuccess(Result<WalletBean> feedbackResp) {
walletBean = feedbackResp.data;
changeInfo();
}
@Override
public void onError(int code, String msg) {
}
});
}
private void changeInfo() {
if (walletBean != null) {
// viewBinding.jinbiYueTv.setText(AppUtils.getQian(walletBean.getGoldCoin()));
// viewBinding.yinbiYueTv.setText(AppUtils.getQian(walletBean.getSilverCoin()));
}
}
@Override
protected void onStop() {
super.onStop();
}
}