|
@@ -1,5 +1,6 @@
|
|
package com.hdl.xl.activity
|
|
package com.hdl.xl.activity
|
|
|
|
|
|
|
|
+import android.content.Intent
|
|
import android.os.Bundle
|
|
import android.os.Bundle
|
|
import android.os.Handler
|
|
import android.os.Handler
|
|
import android.os.Message
|
|
import android.os.Message
|
|
@@ -16,9 +17,9 @@ import com.hdl.xl.adapter.ImagesAdapter
|
|
import com.hdl.xl.base.MBActivity
|
|
import com.hdl.xl.base.MBActivity
|
|
import com.hdl.xl.config.ConfigRx
|
|
import com.hdl.xl.config.ConfigRx
|
|
import com.hdl.xl.databinding.ActivityTibetanDetailsBinding
|
|
import com.hdl.xl.databinding.ActivityTibetanDetailsBinding
|
|
|
|
+import com.hdl.xl.model.PayOrder
|
|
import com.hdl.xl.model.User
|
|
import com.hdl.xl.model.User
|
|
import com.hdl.xl.model.bean.PayTypeBen
|
|
import com.hdl.xl.model.bean.PayTypeBen
|
|
-import com.hdl.xl.utils.AppUtils
|
|
|
|
import com.hdl.xl.utils.MD5Utils
|
|
import com.hdl.xl.utils.MD5Utils
|
|
import com.hdl.xl.utils.PopuPaySuesstils
|
|
import com.hdl.xl.utils.PopuPaySuesstils
|
|
import com.hdl.xl.utils.glide.GlideUtils
|
|
import com.hdl.xl.utils.glide.GlideUtils
|
|
@@ -60,11 +61,29 @@ class TibetanDetailsActivity : MBActivity<TibetanDetailsVModel, ActivityTibetanD
|
|
screenHeightPixels = UiUtils.getScreenHeightPixels()
|
|
screenHeightPixels = UiUtils.getScreenHeightPixels()
|
|
adapter = ImagesAdapter()
|
|
adapter = ImagesAdapter()
|
|
binding.recyclerView.adapter = adapter
|
|
binding.recyclerView.adapter = adapter
|
|
-
|
|
|
|
-
|
|
|
|
vm.ll = binding.ll
|
|
vm.ll = binding.ll
|
|
- vm.id= intent?.extras?.getString("id")
|
|
|
|
|
|
+
|
|
|
|
+// val uri = intent.data
|
|
|
|
+// if (uri != null) {
|
|
|
|
+// // scheme 协
|
|
|
|
+// val scheme = uri.scheme
|
|
|
|
+// // 获取所有参数
|
|
|
|
+// val query = uri.query
|
|
|
|
+// Log.i("-shy-", "query: $query")
|
|
|
|
+// //获取指定参数值
|
|
|
|
+// val orderNo = uri.getQueryParameter("orderNo") // 支付宝支付完后返回app后 所传的code
|
|
|
|
+// vm.id= uri.getQueryParameter("id")
|
|
|
|
+// Log.e("-shy-", "orderNo:$orderNo")
|
|
|
|
+//
|
|
|
|
+// vm.getInfoTo()
|
|
|
|
+// //获取定单号
|
|
|
|
+// vm.getMyOrder(orderNo)
|
|
|
|
+//
|
|
|
|
+// }else {
|
|
|
|
+ vm.id = intent?.extras?.getString("id")
|
|
vm.getInfoTo()
|
|
vm.getInfoTo()
|
|
|
|
+
|
|
|
|
+// }
|
|
vm.getCertificate()
|
|
vm.getCertificate()
|
|
|
|
|
|
vm.data.observe(this) {
|
|
vm.data.observe(this) {
|
|
@@ -73,38 +92,15 @@ class TibetanDetailsActivity : MBActivity<TibetanDetailsVModel, ActivityTibetanD
|
|
adapter?.clearList()
|
|
adapter?.clearList()
|
|
adapter?.addData(it.describe)
|
|
adapter?.addData(it.describe)
|
|
//设置头 图片
|
|
//设置头 图片
|
|
- GlideUtils.lImg(this, it.cover, binding.imageView)
|
|
|
|
|
|
+ GlideUtils.lImg(this, it.cover, binding.imageView)
|
|
|
|
|
|
-
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- val uri = intent.data
|
|
|
|
- if (uri != null) {
|
|
|
|
- // scheme 协
|
|
|
|
- val scheme = uri.scheme
|
|
|
|
- // 获取所有参数
|
|
|
|
- val query = uri.query
|
|
|
|
- Log.i("-shy-", "query: $query")
|
|
|
|
- //获取指定参数值
|
|
|
|
- val payCode = uri.getQueryParameter("payCode") // 支付宝支付完后返回app后 所传的code
|
|
|
|
- Log.e("-shy-", "payCode:$payCode") // 2为成功
|
|
|
|
}
|
|
}
|
|
|
|
|
|
vm.bean.observe(this) {
|
|
vm.bean.observe(this) {
|
|
|
|
|
|
- var amount = it.pay.body.totalAmount.toFloat() * 0.01
|
|
|
|
- var name = User.get()?.true_name
|
|
|
|
- var certNo = User.get()?.id_card
|
|
|
|
- //创建用户支付订单信息
|
|
|
|
- //amount:订单金额
|
|
|
|
- //orderNumber:商户订单号
|
|
|
|
- //createTime: 订单创建时间
|
|
|
|
- //goodsName:商品名称
|
|
|
|
- //name:真实姓名
|
|
|
|
- //certNo:身份证号 //6888803045944 16938552
|
|
|
|
- //"MD5","16938552", "06030001"
|
|
|
|
- cashierPay("MD5", "16938552", "06030001", amount.toString(),
|
|
|
|
- it.pay.body.orderCode, it.pay.head.respTime, "象链数购买藏品", name!!, certNo!!)
|
|
|
|
|
|
+ UiSwitch.bundle(context(), WebViewActivity::class.java,
|
|
|
|
+ B().putString("url", it.pay_url)
|
|
|
|
+ .ok())
|
|
|
|
|
|
|
|
|
|
}
|
|
}
|
|
@@ -121,8 +117,8 @@ class TibetanDetailsActivity : MBActivity<TibetanDetailsVModel, ActivityTibetanD
|
|
//
|
|
//
|
|
// }
|
|
// }
|
|
|
|
|
|
- vm.myBean.observe(this){
|
|
|
|
- PopuPaySuesstils.show(this,binding.ll,it)
|
|
|
|
|
|
+ vm.myBean.observe(this) {
|
|
|
|
+ PopuPaySuesstils.show(this, binding.ll, it)
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -155,6 +151,7 @@ class TibetanDetailsActivity : MBActivity<TibetanDetailsVModel, ActivityTibetanD
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -260,12 +257,12 @@ class TibetanDetailsActivity : MBActivity<TibetanDetailsVModel, ActivityTibetanD
|
|
val it = vm.repository().lreq {
|
|
val it = vm.repository().lreq {
|
|
NetEngine.service.setCreateOrder(
|
|
NetEngine.service.setCreateOrder(
|
|
"app", vm.data.value?.id, bean.num,
|
|
"app", vm.data.value?.id, bean.num,
|
|
- "sd"
|
|
|
|
|
|
+ "sd_rapid"
|
|
)
|
|
)
|
|
}
|
|
}
|
|
|
|
|
|
if (it.ok()) {
|
|
if (it.ok()) {
|
|
- vm.toPayOrder(it.data?.order_no, "sd")
|
|
|
|
|
|
+ vm.toPayOrder(it.data?.order_no, "sd_rapid")
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
@@ -314,6 +311,16 @@ class TibetanDetailsActivity : MBActivity<TibetanDetailsVModel, ActivityTibetanD
|
|
finish()
|
|
finish()
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @Subscribe(tags = [Tag(ConfigRx.PAY_SD_SUESS)])
|
|
|
|
+ fun setPaySdSuess(orderNo: String) {//杉德支付成功
|
|
|
|
+ //todo:
|
|
|
|
+ // vm.getMyOrder(orderNo)
|
|
|
|
+
|
|
|
|
+ UiSwitch.single(context(), MyOrderActivity::class.java)
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean {
|
|
override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean {
|
|
return if (keyCode == KeyEvent.KEYCODE_BACK) {
|
|
return if (keyCode == KeyEvent.KEYCODE_BACK) {
|
|
if (null != disposable) {
|
|
if (null != disposable) {
|
|
@@ -335,6 +342,20 @@ class TibetanDetailsActivity : MBActivity<TibetanDetailsVModel, ActivityTibetanD
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
+ fun toPay(parse_url: String) {
|
|
|
|
+
|
|
|
|
+ PayUtil.CashierPayMulti(this, parse_url)
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
|
|
|
|
+ super.onActivityResult(requestCode, resultCode, data)
|
|
|
|
+
|
|
|
|
+ Log.i("-log-", "requestCode:$requestCode")
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
//"MD5","16938552", "06030001"
|
|
//"MD5","16938552", "06030001"
|
|
//6888803045944 00000008
|
|
//6888803045944 00000008
|
|
//amount:订单金额
|
|
//amount:订单金额
|
|
@@ -343,38 +364,43 @@ class TibetanDetailsActivity : MBActivity<TibetanDetailsVModel, ActivityTibetanD
|
|
//goodsName:商品名称
|
|
//goodsName:商品名称
|
|
//name:真实姓名
|
|
//name:真实姓名
|
|
//certNo:身份证号
|
|
//certNo:身份证号
|
|
- private fun cashierPay(
|
|
|
|
- signType: String, merNo: String, productCode: String, amount: String,
|
|
|
|
- orderNumber: String, createTime: String, goodsName: String, name: String,
|
|
|
|
- certNo: String,
|
|
|
|
- ) {
|
|
|
|
|
|
+ private fun cashierPay(bean: PayOrder.PayQuery) {
|
|
|
|
|
|
|
|
|
|
val orderJson = JSONObject()
|
|
val orderJson = JSONObject()
|
|
try {
|
|
try {
|
|
orderJson.put("version", BuildConfig.VERSION_NAME)
|
|
orderJson.put("version", BuildConfig.VERSION_NAME)
|
|
- orderJson.put("sign_type", signType)
|
|
|
|
- orderJson.put("mer_no", merNo) // 商户编号
|
|
|
|
- orderJson.put("mer_key", "Xx52CDtWRH1etGu4IfFEB4OeRrnbr+EUd5VO7cBQFCqxfDl5FJcJaUjKJbHapVsyxSODBEbssNk=") // 商户密钥
|
|
|
|
- orderJson.put("mer_order_no", orderNumber) // 商户订单号
|
|
|
|
- orderJson.put("create_time", createTime) // 订单创建时间
|
|
|
|
- orderJson.put("expire_time", AppUtils.getOrderExpireTime()) // 订单失效时间
|
|
|
|
- orderJson.put("order_amt", amount) // 订单金额
|
|
|
|
- orderJson.put("notify_url", "http://sandcash/notify") // 回调地址
|
|
|
|
- orderJson.put("return_url", "https://www.taobao.com") // 支付完成后跳转到商户页面 一键快捷不能传空
|
|
|
|
- orderJson.put("create_ip", "172_12_12_12") // 客户端的真实IP
|
|
|
|
- orderJson.put("goods_name", goodsName) // 商品名称
|
|
|
|
- orderJson.put("store_id", "100001") // 门店号
|
|
|
|
- orderJson.put("product_code", productCode) // 支付产品编码
|
|
|
|
- orderJson.put("clear_cycle", "0") // 清算模式
|
|
|
|
|
|
+ orderJson.put("sign_type", bean.sign_type)
|
|
|
|
+ orderJson.put("mer_no", bean.mer_no) // 商户编号
|
|
|
|
+ orderJson.put("mer_key", bean.mer_key) // 商户密钥
|
|
|
|
+ orderJson.put("mer_order_no", bean.mer_order_no) // 商户订单号
|
|
|
|
+ orderJson.put("create_time", bean.create_time) // 订单创建时间
|
|
|
|
+ orderJson.put("expire_time", bean.expire_time) // 订单失效时间
|
|
|
|
+ orderJson.put("order_amt", bean.order_amt) // 订单金额
|
|
|
|
+ orderJson.put("notify_url", bean.notify_url) // 回调地址
|
|
|
|
+ orderJson.put("return_url", bean.return_url) // 支付完成后跳转到商户页面 一键快捷不能传空
|
|
|
|
+ //-
|
|
|
|
+ orderJson.put("create_ip", bean.create_ip) // 客户端的真实IP
|
|
|
|
+ //-
|
|
|
|
+ orderJson.put("goods_name", bean.goods_name) // 商品名称
|
|
|
|
+ //-
|
|
|
|
+ orderJson.put("store_id", bean.store_id) // 门店号
|
|
|
|
+ //-
|
|
|
|
+ orderJson.put("product_code", bean.product_code) // 支付产品编码
|
|
|
|
+ //-
|
|
|
|
+ orderJson.put("clear_cycle", bean.clear_cycle) // 清算模式
|
|
|
|
+ //-
|
|
val payExtraJson = JSONObject()
|
|
val payExtraJson = JSONObject()
|
|
// if (!TextUtils.isEmpty(cardNo)) {
|
|
// if (!TextUtils.isEmpty(cardNo)) {
|
|
// payExtraJson.put("cardNo", cardNo) //付款卡号
|
|
// payExtraJson.put("cardNo", cardNo) //付款卡号
|
|
// }
|
|
// }
|
|
orderJson.put("pay_extra", payExtraJson.toString())
|
|
orderJson.put("pay_extra", payExtraJson.toString())
|
|
|
|
+ //-
|
|
|
|
|
|
- orderJson.put("accsplit_flag", "NO") // 分账标识 NO无分账,YES有分账
|
|
|
|
- orderJson.put("jump_scheme", "tibetan://spay") //参数值可以自定义,和android:scheme、android:host保持一致
|
|
|
|
|
|
+ orderJson.put("accsplit_flag", bean.accsplit_flag) // 分账标识 NO无分账,YES有分账
|
|
|
|
+ //-
|
|
|
|
+ orderJson.put("jump_scheme", "sandcash://scpay") //参数值可以自定义,和android:scheme、android:host保持一致
|
|
|
|
+ //-
|
|
orderJson.put("activity_no", "") //营销活动编码
|
|
orderJson.put("activity_no", "") //营销活动编码
|
|
orderJson.put("benefit_amount", "") //优惠金额
|
|
orderJson.put("benefit_amount", "") //优惠金额
|
|
orderJson.put("extend", "123") //扩展字段,非必传
|
|
orderJson.put("extend", "123") //扩展字段,非必传
|
|
@@ -383,23 +409,22 @@ class TibetanDetailsActivity : MBActivity<TibetanDetailsVModel, ActivityTibetanD
|
|
val extendParamJson = JSONObject()
|
|
val extendParamJson = JSONObject()
|
|
val payerVerificationInfoJson = JSONObject()
|
|
val payerVerificationInfoJson = JSONObject()
|
|
payerVerificationInfoJson.put("needCheckFlag", "0")
|
|
payerVerificationInfoJson.put("needCheckFlag", "0")
|
|
- payerVerificationInfoJson.put("name", name) //姓名
|
|
|
|
- payerVerificationInfoJson.put("certNo", certNo) //证件号
|
|
|
|
|
|
+ payerVerificationInfoJson.put("name", User.get()?.name) //姓名
|
|
|
|
+ //-
|
|
|
|
+ payerVerificationInfoJson.put("certNo", User.get()?.id_card) //证件号
|
|
|
|
+ //-
|
|
payerVerificationInfoJson.put("certType", "01")
|
|
payerVerificationInfoJson.put("certType", "01")
|
|
extendParamJson.put("payerVerificationInfo", payerVerificationInfoJson.toString())
|
|
extendParamJson.put("payerVerificationInfo", payerVerificationInfoJson.toString())
|
|
orderJson.put("extend_params", extendParamJson.toString()) //支付宝实名信息字段,非必传,不参与签名
|
|
orderJson.put("extend_params", extendParamJson.toString()) //支付宝实名信息字段,非必传,不参与签名
|
|
val signKey: String
|
|
val signKey: String
|
|
- signKey = if ("6888800012098" == merNo) {
|
|
|
|
- "PZdBctMl2c0ma9b9+25FBgH2twQBTmhzn/qNSS6xANEGMqBi/S9IhyhDi1aBb1H9gxmcvjxmMk305pcUaISEmjm6gacvTBPHj0zSgRk//7ZYF0Go/X03BZt5mTdcmslgH81l03NMtaRixuz+UKFTiw=="
|
|
|
|
- } else {
|
|
|
|
- "UZfTHiut04dIJSOqwT2KVn6Bf4OBGBrUvjaUibKc5UFinTz/EY8j/5P1nOAZxsgRJKC6qKPhB7NJAPxc7RyrM8BDgM+UhiKrzR/MvvQhFMgTDfQFoDZYEYW2z+pi4zany5c0bz6FNidixuz+UKFTiw=="
|
|
|
|
- }
|
|
|
|
|
|
+ signKey = bean.mer_key
|
|
|
|
+ orderJson.put("sign", bean.sign)
|
|
|
|
|
|
//计算签名
|
|
//计算签名
|
|
val signMap: MutableMap<String, String> = HashMap()
|
|
val signMap: MutableMap<String, String> = HashMap()
|
|
signMap["version"] = orderJson.getString("version")
|
|
signMap["version"] = orderJson.getString("version")
|
|
signMap["mer_no"] = orderJson.getString("mer_no")
|
|
signMap["mer_no"] = orderJson.getString("mer_no")
|
|
- if ("MD5" == signType) {
|
|
|
|
|
|
+ if ("MD5" == bean.sign_type) {
|
|
signMap["mer_key"] = orderJson.getString("mer_key")
|
|
signMap["mer_key"] = orderJson.getString("mer_key")
|
|
}
|
|
}
|
|
signMap["mer_order_no"] = orderJson.getString("mer_order_no")
|
|
signMap["mer_order_no"] = orderJson.getString("mer_order_no")
|
|
@@ -466,7 +491,6 @@ class TibetanDetailsActivity : MBActivity<TibetanDetailsVModel, ActivityTibetanD
|
|
|
|
|
|
PayUtil.CashierPaySingle(this@TibetanDetailsActivity, orderJson.toString(), object : OnPayResultListener {
|
|
PayUtil.CashierPaySingle(this@TibetanDetailsActivity, orderJson.toString(), object : OnPayResultListener {
|
|
override fun onSuccess(orderInfo: OrderInfo) {
|
|
override fun onSuccess(orderInfo: OrderInfo) {
|
|
- //支付宝、H5快捷、一键快捷、快捷充值、云账户,支付完成不走这里!
|
|
|
|
Toast.makeText(this@TibetanDetailsActivity, "支付成功", Toast.LENGTH_LONG).show()
|
|
Toast.makeText(this@TibetanDetailsActivity, "支付成功", Toast.LENGTH_LONG).show()
|
|
|
|
|
|
}
|
|
}
|