| | |
| | | |
| | | import android.app.Activity |
| | | import android.content.Intent |
| | | import android.text.Editable |
| | | import android.text.TextWatcher |
| | | import androidx.recyclerview.widget.GridLayoutManager |
| | | import cn.sinata.xldutils.utils.LengthFilter |
| | | import cn.sinata.xldutils.utils.SpanBuilder |
| | |
| | | import org.jetbrains.anko.sdk27.coroutines.onClick |
| | | import org.jetbrains.anko.startActivity |
| | | import org.jetbrains.anko.startActivityForResult |
| | | import org.jetbrains.anko.toast |
| | | import java.lang.Exception |
| | | |
| | | class RechargeActivity : TransparentStatusBarActivity(),PayListener { |
| | | override fun setContentView() = R.layout.activity_recharge |
| | | |
| | | private var way = 1 |
| | | private var money = 0.0 |
| | | |
| | | override fun initClick() { |
| | | tv_way.setOnClickListener { |
| | | PayDialog.show(supportFragmentManager,object : StringCallback { |
| | | override fun onResult(rst: String) { |
| | | way = rst.toInt() |
| | | tv_way.text = if (rst == "1") "微信" else "支付宝" |
| | | } |
| | | },0.0,false) |
| | | } |
| | | |
| | | tv_action.onClick { |
| | | val moneyS = et_money.text.toString() |
| | | if (moneyS.isEmpty()) |
| | | myToast("请填写充值金额") |
| | | else{ |
| | | try { |
| | | val money = moneyS.toDouble() |
| | | money = moneyS.toDouble() |
| | | if (money == 0.0) |
| | | myToast("充值金额不能为0") |
| | | else{ |
| | | PayDialog.show(supportFragmentManager,object : StringCallback { |
| | | override fun onResult(rst: String) { |
| | | pay(rst.toInt(),money) |
| | | } |
| | | },money,false) |
| | | pay(way,money) |
| | | } |
| | | }catch (e:Exception){ |
| | | myToast("充值金额有误") |
| | |
| | | override fun initView() { |
| | | PayUtil.addPayListener(this) |
| | | et_money.filters = arrayOf(NumberInputFilter(Int.MAX_VALUE.toDouble())) |
| | | tv_action.alpha = 0.5f |
| | | et_money.addTextChangedListener(object :TextWatcher{ |
| | | override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) { |
| | | } |
| | | |
| | | override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) { |
| | | } |
| | | |
| | | override fun afterTextChanged(s: Editable?) { |
| | | tv_action.alpha = if (s.isNullOrEmpty()) 0.5f else 1f |
| | | } |
| | | }) |
| | | } |
| | | |
| | | private fun pay(payType:Int,money:Double){ |
| | | HttpManager.payCourse(null,payType,3,null,money).request(this){ _, data-> |
| | | HttpManager.pay(data?.id?:"",payType,3).request(this,false,success = {_,data-> |
| | | if (payType == 2){ |
| | | PayUtil.aliPay(this,data?.orderInfo?:"") |
| | | }else{ |
| | | PayUtil.initWeChatPay(this,Const.WX_APP_ID) |
| | | PayUtil.weChatPay(data!!) |
| | | } |
| | | }){_,msg-> |
| | | startActivityForResult<PayResultActivity>(1,"type" to PayResultActivity.TYPE_RECHARGE_FAILED,"msg" to msg) |
| | | } |
| | | } |
| | | toast("%s充值%.2f".format(if (payType == 1) "微信" else "支付宝",money)) |
| | | onPaySuccess() |
| | | // HttpManager.payCourse(null,payType,3,null,money).request(this){ _, data-> |
| | | // HttpManager.pay(data?.id?:"",payType,3).request(this,false,success = {_,data-> |
| | | // if (payType == 2){ |
| | | // PayUtil.aliPay(this,data?.orderInfo?:"") |
| | | // }else{ |
| | | // PayUtil.initWeChatPay(this,Const.WX_APP_ID) |
| | | // PayUtil.weChatPay(data!!) |
| | | // } |
| | | // }){_,msg-> |
| | | // startActivityForResult<PayResultActivity>(1,"type" to PayResultActivity.TYPE_RECHARGE_FAILED,"msg" to msg) |
| | | // } |
| | | // } |
| | | } |
| | | |
| | | override fun onPaySuccess() { |
| | | EventBus.getDefault().post(EmptyEvent(Const.EventCode.REFRESH_WALLET)) //充值成功,刷新钱包 |
| | | startActivity<PayResultActivity>("type" to PayResultActivity.TYPE_RECHARGE_SUC) |
| | | startActivity<RechargeSucActivity>("money" to money,"way" to way) |
| | | setResult(Activity.RESULT_OK) |
| | | finish() |
| | | } |