修改版本

This commit is contained in:
cyh 2025-03-18 14:52:10 +08:00
parent 9526c8cc7c
commit 4fe3ad4bfb
2 changed files with 1448 additions and 1392 deletions

View File

@ -85,7 +85,7 @@ class RechargeFragment : BaseFragment() {
private lateinit var pointTv: TextView
private lateinit var payTv: TextView
private var selectedGrade: Grade? = null
private var pointCard: String="0"
private var pointCard: String = "0"
private var mPayType: String = "1"
private lateinit var rxDialogShapeLoading: RxDialogShapeLoading
private lateinit var dialogPayTypeChoose: DialogPayTypeChoose
@ -99,12 +99,15 @@ class RechargeFragment : BaseFragment() {
//实际需要支付金额
private lateinit var actualPaymentAmount: String
private var selectedGradeID :Int=0
private var selectedGradeID: Int = 0
companion object {
//记录心跳失败次数
const val REQUEST_CODE_PAY_WEB_VIEW_ACTIVITY = 1000
}
var baseLoading: RxDialogShapeLoading? = null
//stripePay 支付
private var paymentIntentClientSecret: String = ""
private val stripe: Stripe by lazy {
@ -113,6 +116,7 @@ class RechargeFragment : BaseFragment() {
PaymentConfiguration.getInstance(requireActivity()).publishableKey
)
}
override fun init(
titleBarRl: RelativeLayout,
backIv: ImageView,
@ -146,8 +150,9 @@ class RechargeFragment : BaseFragment() {
swipeLayout.setOnRefreshListener {
selectedGrade = null
payTv.text = resources.getString(R.string.PayNow)
val username = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME,"")!!
val phToken = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_PH_TOKEN,"")!!
val username =
MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME, "")!!
val phToken = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_PH_TOKEN, "")!!
// viewModel.getPointCardSurplus(username, phToken)
//获取充值列表
val userId = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_USER_ID)!!
@ -172,10 +177,11 @@ class RechargeFragment : BaseFragment() {
pointCardSurplusSwitch.isChecked = false //暂时先这样,点数不够一次付款不能用点
RxToast.warning(resources.getString(R.string.InsufficientPoints))
} else {
tv_pay.text = resources.getString(R.string.PayNow)+"(¥0.00)"
tv_pay.text = resources.getString(R.string.PayNow) + "(¥0.00)"
}
} else {
tv_pay.text = resources.getString(R.string.PayNow)+"(${decimalFormat.format(amount)})"
tv_pay.text =
resources.getString(R.string.PayNow) + "(${decimalFormat.format(amount)})"
}
}
} else {
@ -279,9 +285,10 @@ class RechargeFragment : BaseFragment() {
super.onActivityCreated(savedInstanceState)
viewModel = ViewModelProvider(this).get(RechargeViewModel::class.java)
//获取充值列表
val username = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME,"")!!
val username =
MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME, "")!!
val phToken = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_PH_TOKEN,"")!!
val phToken = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_PH_TOKEN, "")!!
// viewModel.getPointCardSurplus(username, phToken)
val userId = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_USER_ID)!!
viewModel.getPhRechargeInfo(username, phToken, userId)
@ -331,9 +338,11 @@ class RechargeFragment : BaseFragment() {
HttpReqType.QRPAYSTATU -> {
showLoadingDialog(resources.getString(R.string.QueryingPaymentResult))
}
HttpReqType.WEBPAYQUERY -> {
showLoadingDialog(resources.getString(R.string.QueryingPaymentResult))
}
else -> {}
}
}
@ -369,19 +378,22 @@ class RechargeFragment : BaseFragment() {
(httpStatus.rsp as NormalRsp).let {
if (it.code != "1000") {
//RxToast.error(if (it.message.isNullOrBlank()) "获取点卡余额失败(${it.code}" else "${it.code}:${it.message}")
pointTv.text =resources.getString(R.string.retry)
pointTv.text = resources.getString(R.string.retry)
pointCard = "0"
pointTv.setTextColor(resources.getColor(R.color.white_50))
pointTv.setOnClickListener {
val username = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME,"")!!
val phToken = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_PH_TOKEN,"")!!
val username = MMKV.defaultMMKV()
.decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME, "")!!
val phToken = MMKV.defaultMMKV()
.decodeString(BZYConstants.MMKV_KEY_PH_TOKEN, "")!!
viewModel.getPointCardSurplus(username, phToken)
}
} else {
pointCard = "${it.data}"
pointCardSurplusSwitch.isEnabled = pointCard.toInt() > 0
pointTv.setTextColor(resources.getColor(R.color.white))
pointTv.text = resources.getString(R.string.RemainingPoints)+": ${if (it.data.isNullOrEmpty()) "0.00" else it.data}"
pointTv.text =
resources.getString(R.string.RemainingPoints) + ": ${if (it.data.isNullOrEmpty()) "0.00" else it.data}"
}
}
}
@ -392,7 +404,7 @@ class RechargeFragment : BaseFragment() {
swipeLayout.isRefreshing = false
(httpStatus.rsp as RechargeInfoRsp).let { it ->
if (it.code != "1000") {
RxToast.error(if (it.message.isNullOrBlank())resources.getString(R.string.FailedRechargeList)+ "${it.code}" else "${it.code}:${it.message}")
RxToast.error(if (it.message.isNullOrBlank()) resources.getString(R.string.FailedRechargeList) + "${it.code}" else "${it.code}:${it.message}")
} else {
it.data?.let { it1 ->
Logger.d("AAAAAAAAAAA:::${it1.grade}")
@ -413,7 +425,7 @@ class RechargeFragment : BaseFragment() {
Logger.d("生成订单请求成功")
(httpStatus.rsp as PayRsp).let { rsp ->
if (rsp.code != "1000") {
RxToast.error(if (rsp.message.isNullOrBlank()) resources.getString(R.string.OrderGenerationFailed)+"${rsp.code}" else "${rsp.code}:${rsp.message}")
RxToast.error(if (rsp.message.isNullOrBlank()) resources.getString(R.string.OrderGenerationFailed) + "${rsp.code}" else "${rsp.code}:${rsp.message}")
} else {
activity.let {
outTradeNo = rsp.data?.outTradeNo!!
@ -424,10 +436,11 @@ class RechargeFragment : BaseFragment() {
}
}
}
HttpReqType.unionPay -> {
(httpStatus.rsp as PayRsp).let { rsp ->
if (rsp.code != "1000") {
RxToast.error(if (rsp.message.isNullOrBlank()) resources.getString(R.string.OrderGenerationFailed)+"${rsp.code}" else "${rsp.code}:${rsp.message}")
RxToast.error(if (rsp.message.isNullOrBlank()) resources.getString(R.string.OrderGenerationFailed) + "${rsp.code}" else "${rsp.code}:${rsp.message}")
} else {
if (rsp.data != null) {
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(rsp.data.payUrl)))
@ -438,13 +451,14 @@ class RechargeFragment : BaseFragment() {
HttpReqType.PURE_POINT_CARD_PAYMENT -> {
Logger.d("纯点卡支付请求成功")
val username = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME,"")!!
val phToken = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_PH_TOKEN,"")!!
val username =
MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME, "")!!
val phToken = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_PH_TOKEN, "")!!
viewModel.getPointCardSurplus(username, phToken)
hideLoadingDialog()
(httpStatus.rsp as NormalMessageRsp).let {
if (it.code != "1000") {
RxToast.error(if (it.message.isNullOrBlank()) resources.getString(R.string.PointCardFailed)+"${it.code}" else "${it.code}:${it.message}")
RxToast.error(if (it.message.isNullOrBlank()) resources.getString(R.string.PointCardFailed) + "${it.code}" else "${it.code}:${it.message}")
} else {
RxToast.success(resources.getString(R.string.PointCardSuccessful))
Logger.d("点卡支付成功更新有效期")
@ -462,7 +476,10 @@ class RechargeFragment : BaseFragment() {
val expired = checkLoginRsp.data?.expired
val mmkv = MMKV.defaultMMKV()
mmkv.encode(BZYConstants.MMKV_KEY_VPN_EXPIRED, expired ?: true)
mmkv.encode(BZYConstants.MMKV_KEY_VPN_VALID_PERIOD, checkLoginRsp.data?.vpnExpireTime ?: 0)
mmkv.encode(
BZYConstants.MMKV_KEY_VPN_VALID_PERIOD,
checkLoginRsp.data?.vpnExpireTime ?: 0
)
if (activity is NewMainActivity) {
val newMainAt = activity as NewMainActivity
newMainAt.setExpireDate()
@ -488,12 +505,19 @@ class RechargeFragment : BaseFragment() {
qrPayDialog = MaterialDialog(it).show {
this.cancelable(false)
cornerRadius(res = R.dimen.dp_10)
customView(R.layout.qrpay_dialog_layout, scrollable = false, noVerticalPadding = true, horizontalPadding = false)
customView(
R.layout.qrpay_dialog_layout,
scrollable = false,
noVerticalPadding = true,
horizontalPadding = false
)
if (mPayType == PayType.PAY_TYPE_ALI) {
getCustomView().findViewById<TextView>(R.id.tv_qr_pay_note).setText(R.string.qr_pay_note_zfb)
getCustomView().findViewById<TextView>(R.id.tv_qr_pay_note)
.setText(R.string.qr_pay_note_zfb)
} else {
getCustomView().findViewById<TextView>(R.id.tv_qr_pay_note).setText(R.string.qr_pay_note_wx)
getCustomView().findViewById<TextView>(R.id.tv_qr_pay_note)
.setText(R.string.qr_pay_note_wx)
}
val ivQr = getCustomView().findViewById<ImageView>(R.id.iv_qr)
@ -504,7 +528,8 @@ class RechargeFragment : BaseFragment() {
// val bitmap = encoder.createBitmap(matrix)
// ivQr.setImageBitmap(bitmap)
getCustomView().findViewById<TextView>(R.id.tv_pay_finish).setOnClickListener {
getCustomView().findViewById<TextView>(R.id.tv_pay_finish)
.setOnClickListener {
showLoadingDialog(resources.getString(R.string.QueryingPaymentResult))
viewModel.codePayStatus(outTradeNo)
}
@ -535,6 +560,7 @@ class RechargeFragment : BaseFragment() {
}
}
}
HttpReqType.WEBPAYQUERY -> {
hideLoadingDialog()
(httpStatus.rsp as NormalMessageRsp).let {
@ -573,12 +599,13 @@ class RechargeFragment : BaseFragment() {
// goWebViewStartPayClient(httpStatus.rsp, false)
// }
}
HttpReqType.StripeType ->{
HttpReqType.StripeType -> {
(httpStatus.rsp as PayUploadParamData).let {
if(it.data!=null){
paymentIntentClientSecret= it.data.clientSecret.toString()
if (it.data != null) {
paymentIntentClientSecret = it.data.clientSecret.toString()
startCheckout()
}else{
} else {
hideLoading()
RxToast.info(getString(R.string.NoPaymentReceipt))
}
@ -590,7 +617,7 @@ class RechargeFragment : BaseFragment() {
}
private fun orderPayment(data: Trade) {
if(data.payType!=null){
if (data.payType != null) {
activity?.let {
MaterialDialog(it).show {
this.cancelable(true)
@ -601,18 +628,19 @@ class RechargeFragment : BaseFragment() {
noVerticalPadding = true,
horizontalPadding = false
)
for (index in data.payType!!){
if(index.payModel==10){
findViewById<LinearLayout>(R.id.llAggregatePayment).visibility=View.VISIBLE
val JUhePay=findViewById<TextView>(R.id.JUhePay)
JUhePay.visibility=View.VISIBLE
for (index in data.payType!!) {
if (index.payModel == 10) {
findViewById<LinearLayout>(R.id.llAggregatePayment).visibility =
View.VISIBLE
val JUhePay = findViewById<TextView>(R.id.JUhePay)
JUhePay.visibility = View.VISIBLE
JUhePay.text = index.payChannel
if(index.payType==1){
val ivAlipay =findViewById<AppCompatImageView>(R.id.ivAlipay)
ivAlipay.visibility=View.VISIBLE
if (index.payType == 1) {
val ivAlipay = findViewById<AppCompatImageView>(R.id.ivAlipay)
ivAlipay.visibility = View.VISIBLE
ivAlipay.setOnClickListener {
val payModel = index.payModel
val payType =index.payType
val payType = index.payType
val payParam = index.payParam
if (payModel != null && payType != null && payParam != null) {
viewModel.orderPayment(data, payModel, payType, payParam)
@ -620,13 +648,13 @@ class RechargeFragment : BaseFragment() {
viewModel.orderPayment(data, 10, 1, "ip@影猫充值")
}
}
}else if(index.payType==2){
val ivWechatPay= findViewById<AppCompatImageView>(R.id.ivWechatPay)
ivWechatPay.visibility=View.VISIBLE
} else if (index.payType == 2) {
val ivWechatPay = findViewById<AppCompatImageView>(R.id.ivWechatPay)
ivWechatPay.visibility = View.VISIBLE
ivWechatPay.setOnClickListener {
val payModel = index.payModel
val payType =index.payType
val payParam =index.payParam
val payType = index.payType
val payParam = index.payParam
if (payModel != null && payType != null && payParam != null) {
viewModel.orderPayment(data, payModel, payType, payParam)
} else {
@ -635,31 +663,34 @@ class RechargeFragment : BaseFragment() {
}
}
}else if(index.payModel==11){
findViewById<LinearLayout>(R.id.llQuickPayment).visibility=View.VISIBLE
val KJPay=findViewById<TextView>(R.id.KJPay)
KJPay.visibility=View.VISIBLE
} else if (index.payModel == 11) {
findViewById<LinearLayout>(R.id.llQuickPayment).visibility =
View.VISIBLE
val KJPay = findViewById<TextView>(R.id.KJPay)
KJPay.visibility = View.VISIBLE
KJPay.text = index.payChannel
if(index.payType==1){
val ivQuickPayment=findViewById<AppCompatImageView>(R.id.ivQuickPayment)
ivQuickPayment.visibility=View.VISIBLE
if (index.payType == 1) {
val ivQuickPayment =
findViewById<AppCompatImageView>(R.id.ivQuickPayment)
ivQuickPayment.visibility = View.VISIBLE
ivQuickPayment.setOnClickListener {
val payModel =index.payModel
val payType =index.payType
val payParam =index.payParam
val payModel = index.payModel
val payType = index.payType
val payParam = index.payParam
if (payModel != null && payType != null && payParam != null) {
viewModel.orderPayment(data, payModel, payType, payParam)
} else {
viewModel.orderPayment(data, 11, 1, "ip@影猫充值")
}
}
}else if(index.payType==2){
val ivQPWechatPay=findViewById<AppCompatImageView>(R.id.ivQPWechatPay)
ivQPWechatPay.visibility= View.VISIBLE
} else if (index.payType == 2) {
val ivQPWechatPay =
findViewById<AppCompatImageView>(R.id.ivQPWechatPay)
ivQPWechatPay.visibility = View.VISIBLE
ivQPWechatPay.setOnClickListener {
val payModel =index.payModel
val payType =index.payType
val payParam =index.payParam
val payModel = index.payModel
val payType = index.payType
val payParam = index.payParam
if (payModel != null && payType != null && payParam != null) {
viewModel.orderPayment(data, payModel, payType, payParam)
} else {
@ -667,31 +698,36 @@ class RechargeFragment : BaseFragment() {
}
}
}
}else if(index.payModel==7){
findViewById<LinearLayout>(R.id.llStripe).visibility=View.VISIBLE
findViewById<LinearLayout>(R.id.llStripePay).visibility=View.VISIBLE
var payinfo= findViewById<TextView>(R.id.tvStripePay)
payinfo.visibility=View.VISIBLE
} else if (index.payModel == 7) {
findViewById<LinearLayout>(R.id.llStripe).visibility = View.VISIBLE
findViewById<LinearLayout>(R.id.llStripePay).visibility = View.VISIBLE
var payinfo = findViewById<TextView>(R.id.tvStripePay)
payinfo.visibility = View.VISIBLE
payinfo.text=index.payChannel
findViewById<AppCompatImageView>(R.id.ivStripeAlipay).visibility=View.VISIBLE
payinfo.text = index.payChannel
findViewById<AppCompatImageView>(R.id.ivStripeAlipay).visibility =
View.VISIBLE
findViewById<AppCompatImageView>(R.id.ivStripeAlipay).setOnClickListener {
if(selectedGradeID!=0){
if(!PayUtils.isAlipayInstalled(requireActivity())){
if (selectedGradeID != 0) {
if (!PayUtils.isAlipayInstalled(requireActivity())) {
RxToast.error(resources.getString(R.string.AlipayNotInstalled))
return@setOnClickListener
}
dismiss()
showLoading(resources.getString(R.string.PaymentIn),requireActivity())
Log.i("PayGradeID:","PayGradeID:${selectedGradeID}")
showLoading(
resources.getString(R.string.PaymentIn),
requireActivity()
)
Log.i("PayGradeID:", "PayGradeID:${selectedGradeID}")
viewModel.getPayClientSecret(selectedGradeID)
}else{
} else {
RxToast.info(getString(R.string.NoPaymentReceipt))
}
}
}
}
getCustomView().findViewById<AppCompatImageView>(R.id.ivBack).setOnClickListener {
getCustomView().findViewById<AppCompatImageView>(R.id.ivBack)
.setOnClickListener {
dismiss()
}
}
@ -780,7 +816,12 @@ class RechargeFragment : BaseFragment() {
qrPayDialog = MaterialDialog(it).show {
this.cancelable(false)
cornerRadius(res = R.dimen.dp_10)
customView(R.layout.payconfirm_dialog_layout, scrollable = false, noVerticalPadding = true, horizontalPadding = false)
customView(
R.layout.payconfirm_dialog_layout,
scrollable = false,
noVerticalPadding = true,
horizontalPadding = false
)
getCustomView().findViewById<TextView>(R.id.tv_pay_finish).setOnClickListener {
showLoadingDialog(resources.getString(R.string.QueryingPaymentResult))
// viewModel.biLaiPayStatus(outTradeNo)
@ -791,24 +832,28 @@ class RechargeFragment : BaseFragment() {
}
}
}
var dialogDoMainChoose:DialogDoMainChoose? =null
var dialogDoMainChoose: DialogDoMainChoose? = null
private fun showDomainList() {
try {
SplashHelper(viewModel).getHostWithFallback { success ->
MainScope().launch {
if (success) {
if (dialogDoMainChoose==null) {
if (dialogDoMainChoose == null) {
dialogDoMainChoose = DialogDoMainChoose(this@RechargeFragment.activity)
}
if (dialogDoMainChoose?.isShowing==false) {
if (dialogDoMainChoose?.isShowing == false) {
dialogDoMainChoose?.setOnTryButtonListener(object :
DialogDoMainChoose.OnTryButtonListener {
override fun tryButton() {
val username = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME,"")!!
val username = MMKV.defaultMMKV()
.decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME, "")!!
val phToken = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_PH_TOKEN,"")!!
val phToken = MMKV.defaultMMKV()
.decodeString(BZYConstants.MMKV_KEY_PH_TOKEN, "")!!
// viewModel.getPointCardSurplus(username, phToken)
val userId = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_USER_ID)!!
val userId = MMKV.defaultMMKV()
.decodeString(BZYConstants.MMKV_KEY_USER_ID)!!
viewModel.getPhRechargeInfo(username, phToken, userId)
}
@ -827,6 +872,7 @@ class RechargeFragment : BaseFragment() {
e.printStackTrace()
}
}
override fun httpFailure(httpStatus: HttpStatus.Failure) {
if (::rxDialogShapeLoading.isInitialized && rxDialogShapeLoading.isShowing) {
rxDialogShapeLoading.cancel()
@ -844,8 +890,10 @@ class RechargeFragment : BaseFragment() {
pointTv.visibility = View.VISIBLE
pointTv.text = resources.getString(R.string.retry)
pointTv.setOnClickListener {
val username = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME,"")!!
val phToken = MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_PH_TOKEN,"")!!
val username = MMKV.defaultMMKV()
.decodeString(BZYConstants.MMKV_KEY_REMEMBER_USERNAME, "")!!
val phToken =
MMKV.defaultMMKV().decodeString(BZYConstants.MMKV_KEY_PH_TOKEN, "")!!
viewModel.getPointCardSurplus(username, phToken)
}
resources.getString(R.string.AbnormalPointCard)
@ -885,6 +933,7 @@ class RechargeFragment : BaseFragment() {
HttpReqType.BILAIPAYSTATUS -> {
resources.getString(R.string.paymentResultsFailed)
}
HttpReqType.WEBPAYQUERY -> {
resources.getString(R.string.paymentResultsFailed)
}
@ -892,14 +941,16 @@ class RechargeFragment : BaseFragment() {
HttpReqType.BILAIPAY -> {
resources.getString(R.string.paymentResultsFailed)
}
HttpReqType.StripeType -> {
hideLoading()
resources.getString(R.string.NoPaymentReceipt)
}
else -> {
hideLoading()
Logger.d("${httpStatus.reqType}${resources.getString(R.string.RequestException)}${httpStatus.msg}")
resources.getString(R.string.RequestException)+ "${httpStatus.reqType}"
resources.getString(R.string.RequestException) + "${httpStatus.reqType}"
}
}
RxToast.error(msgs)
@ -930,13 +981,14 @@ class RechargeFragment : BaseFragment() {
rechargeListAdapter.notifyDataSetChanged()
val amount = selectedGrade!!.amount?.toFloat()
if (amount != null) {
Log.i("AAAAAAAAA11","${selectedGrade!!.id!!}")
if(selectedGrade!!.id!=null){
Log.i("AAAAAAAAA222","${selectedGrade!!.id!!}")
Log.i("AAAAAAAAA11", "${selectedGrade!!.id!!}")
if (selectedGrade!!.id != null) {
Log.i("AAAAAAAAA222", "${selectedGrade!!.id!!}")
selectedGradeID = selectedGrade!!.id!!
}
val decimalFormat = DecimalFormat("¥#0.00")
tv_pay.text = resources.getString(R.string.PayNow)+"(${decimalFormat.format(amount)})"
tv_pay.text =
resources.getString(R.string.PayNow) + "(${decimalFormat.format(amount)})"
// if (pointCardSurplusSwitch.isChecked) {
// val point = pointCard.toFloat()
// if (amount > point) {
@ -988,6 +1040,7 @@ class RechargeFragment : BaseFragment() {
}
super.onActivityResult(requestCode, resultCode, data)
}
@OptIn(DelicateCoroutinesApi::class)
private fun startCheckout() {
GlobalScope.launch {
@ -1002,32 +1055,35 @@ class RechargeFragment : BaseFragment() {
val paymentIntent = result.intent
when (paymentIntent.status) {
StripeIntent.Status.Succeeded -> {
Log.i("startCheckout","支付成功")
runOnUiThread{
Log.i("startCheckout", "支付成功")
runOnUiThread {
RxToast.info(getString(R.string.PaymentCompleted))
}
}
StripeIntent.Status.RequiresAction -> {
Log.i("startCheckout","RequiresAction")
runOnUiThread{
Log.i("startCheckout", "RequiresAction")
runOnUiThread {
RxToast.info(getString(R.string.PaymentCancellation))
}
}
else -> {
Log.i("startCheckout","status::${paymentIntent.status}")
Log.i("startCheckout", "status::${paymentIntent.status}")
}
}
},
onFailure = {
Log.i("startCheckout","支付失败${it.message}")
Log.i("startCheckout", "支付失败${it.message}")
hideLoading()
runOnUiThread{
runOnUiThread {
RxToast.info(getString(R.string.NoPaymentReceipt))
}
}
)
}
}
private fun showLoading(str: String, context: Context) {
val message = if (TextUtils.isEmpty(str)) "进行中..." else str
if (baseLoading == null) {

File diff suppressed because it is too large Load Diff