From 03972ad1d3ce6ffe0be0395c0a4d5dcb4474031f Mon Sep 17 00:00:00 2001 From: lmw <125975490@qq.com> Date: 星期五, 16 六月 2023 15:54:16 +0800 Subject: [PATCH] 修改公费支付方式 --- app/src/main/res/layout/dialog_pay.xml | 7 ++- app/src/main/java/com/kuanzhai/user/network/entity/OrderData.kt | 1 app/src/main/java/com/kuanzhai/user/dialog/PayDialog.kt | 14 ++++++- app/src/main/java/com/kuanzhai/user/ui/trip/OrderDetailActivity.kt | 55 +++++++++++---------------- 4 files changed, 40 insertions(+), 37 deletions(-) diff --git a/app/src/main/java/com/kuanzhai/user/dialog/PayDialog.kt b/app/src/main/java/com/kuanzhai/user/dialog/PayDialog.kt index f800aae..baa140a 100644 --- a/app/src/main/java/com/kuanzhai/user/dialog/PayDialog.kt +++ b/app/src/main/java/com/kuanzhai/user/dialog/PayDialog.kt @@ -46,6 +46,9 @@ private val isCancel by lazy { arguments?.getBoolean("isCancel",false)?:false } + private val isCompany by lazy { + arguments?.getBoolean("isCompany",false)?:false + } private var coupon = "" private val orderId by lazy { @@ -67,6 +70,13 @@ // tv_origin_money.text = String.format(if (isCancel) "%.2f元" else "¥%.2f",money) tv_origin_money.text = String.format("¥%.2f",money) tv_money.text = String.format(if (isCancel) "%.2f元" else "¥%.2f",money) + if (isCompany){//企业公费 + rb_ali.gone() + line1.gone() + rb_wx.gone() + line2.gone() + rb_balance.text = "企业授信额度" + } group_coupon.visibility = if (isCancel||isLogistics) { //取消支付没有优惠券,补差价没有优惠券 View.GONE } else { @@ -83,7 +93,7 @@ } tv_action.text = "立即支付%.2f元".format(payMoney) - rb_balance.text = String.format("充值余额(%.2f可用)",balance) + rb_balance.text = String.format("${if (isCompany) "企业授信额度" else "充值余额"}(%.2f可用)",balance) View.VISIBLE } // if (isLogistics){ //物流订单没有优惠券 @@ -93,7 +103,7 @@ rb_offline.gone() tv_action.setOnClickListener { if (payWay == 3&&!isCancel&&balance<payMoney) - myToast("余额不足,请选择其他支付方式") + myToast(if (isCompany) "额度不足,请申请企业额度" else "余额不足,请选择其他支付方式") else callback?.onOk(payWay,if (coupon.isEmpty()) 0 else coupon.toInt(),discountType) } diff --git a/app/src/main/java/com/kuanzhai/user/network/entity/OrderData.kt b/app/src/main/java/com/kuanzhai/user/network/entity/OrderData.kt index 6567198..594d114 100644 --- a/app/src/main/java/com/kuanzhai/user/network/entity/OrderData.kt +++ b/app/src/main/java/com/kuanzhai/user/network/entity/OrderData.kt @@ -79,6 +79,7 @@ val peopleNumber: Int = 0, val rideType: Int = 0, //乘车类型(1=独享,2=一口价,3=拼车) val spellSuccess: Int = 0, //拼车'0未成功,1成功' + val payWay: Int = 0, //1自费 2企业支付 val seatNumber: String = "", val fareTypeNote1: String = "", val fareTypeNote2: String = "", diff --git a/app/src/main/java/com/kuanzhai/user/ui/trip/OrderDetailActivity.kt b/app/src/main/java/com/kuanzhai/user/ui/trip/OrderDetailActivity.kt index 9622feb..7ffaf63 100644 --- a/app/src/main/java/com/kuanzhai/user/ui/trip/OrderDetailActivity.kt +++ b/app/src/main/java/com/kuanzhai/user/ui/trip/OrderDetailActivity.kt @@ -66,7 +66,7 @@ callPhone(order?.driverPhone) } tv_action.setOnClickListener { - if (order?.state == 7||order?.state == 12){ + if (order?.state == 7||order?.state == 12&&mPayDialog.arguments!=null){ mPayDialog.show(supportFragmentManager,"pay") }else if (order?.state == 8){ HttpManager.orderEvaluate(id,score,type,checkList.joinToString (","){ it }).request(this){_,_-> @@ -377,7 +377,9 @@ private fun queryBalance(){ HttpManager.queryBalance(id,type).request(this){_,data-> data?.let { - mPayDialog.arguments = bundleOf("isCancel" to (order?.state == 12),"balance" to it.optDouble("balance"), + mPayDialog.arguments = bundleOf("isCancel" to (order?.state == 12), + "balance" to if (order?.payWay == 2) it.optDouble("companyLimit") else it.optDouble("balance"), + "isCompany" to (order?.payWay == 2), "discount" to it.optDouble("discountAmount"), "coupon" to it.optString("objectId"), "discountType" to it.optInt("type"), "money" to payMoney,"id" to id,"type" to type) } @@ -415,37 +417,24 @@ * @param way 1=微信,2=支付宝,3=余额 */ private fun pay(way:Int,couponId:Int,couponType: Int){ -// if (way == 1){ //微信支付,跳转微信小程序 -// val api = WXAPIFactory.createWXAPI(this, Const.WX_APP_ID) -// val req = WXLaunchMiniProgram.Req() -// req.userName = "gh_a6c22560b6be" // 填小程序原始id -// val content = if (order!!.state == 12)"{\"cancleId\":${order!!.cancelId}}" -// else if (couponId!=0) "{\"couponId\":${couponId}}" -// else "" -// req.path = "/pages/appPay/appPay?orderId=${id}&orderType=${type}&type=${if (order!!.state == 12) 2 else 1}" + -// "&userType=1&uid=${SPUtils.instance().getInt(Const.User.USER_ID)}&content=${content}" -// req.miniprogramType = WXLaunchMiniProgram.Req.MINIPTOGRAM_TYPE_RELEASE// 可选打开 开发版,体验版和正式版 -// isGotoWx = true -// api.sendReq(req) -// }else{ - if (order!!.state == 12) - HttpManager.cancleOrderTaxi(id,way,order!!.cancelId,type).request(this){_,data-> - if (way == 3) - onPaySuccess() - else if (way == 2) - PayUtil.aliPay(this,data!!.orderInfo) - else - PayUtil.weChatPay(data!!) - } else - HttpManager.payTaxiOrder(id,way,type,if (couponId == 0) null else couponId,if (couponType == 0) null else couponType).request(this){_,data-> - if (way == 3) - onPaySuccess() - else if (way == 2) - PayUtil.aliPay(this,data!!.orderInfo) - else - PayUtil.weChatPay(data!!) - } -// } + if (order!!.state == 12) + HttpManager.cancleOrderTaxi(id,if (order?.payWay == 2) 4 else way,order!!.cancelId,type).request(this){_,data-> + if (way == 3) + onPaySuccess() + else if (way == 2) + PayUtil.aliPay(this,data!!.orderInfo) + else + PayUtil.weChatPay(data!!) + } + else + HttpManager.payTaxiOrder(id,if (order?.payWay == 2) 4 else way,type,if (couponId == 0) null else couponId,if (couponType == 0) null else couponType).request(this){_,data-> + if (way == 3) + onPaySuccess() + else if (way == 2) + PayUtil.aliPay(this,data!!.orderInfo) + else + PayUtil.weChatPay(data!!) + } } /** diff --git a/app/src/main/res/layout/dialog_pay.xml b/app/src/main/res/layout/dialog_pay.xml index 2438c03..a71969e 100644 --- a/app/src/main/res/layout/dialog_pay.xml +++ b/app/src/main/res/layout/dialog_pay.xml @@ -105,7 +105,9 @@ android:drawableEnd="@drawable/selector_radio" android:text="支付宝" /> - <View style="@style/style_form_divider_line" /> + <View + android:id="@+id/line1" + style="@style/style_form_divider_line" /> <RadioButton android:id="@+id/rb_wx" @@ -115,7 +117,8 @@ android:drawableEnd="@drawable/selector_radio" android:text="微信支付" /> - <View style="@style/style_form_divider_line" /> + <View style="@style/style_form_divider_line" + android:id="@+id/line2" /> <RadioButton android:id="@+id/rb_balance" -- Gitblit v1.7.1