|
@@ -7,9 +7,13 @@ import android.view.MotionEvent
|
|
|
import android.view.View
|
|
|
import androidx.recyclerview.widget.GridLayoutManager
|
|
|
import com.alibaba.android.arouter.facade.annotation.Route
|
|
|
+import com.alibaba.android.arouter.launcher.ARouter
|
|
|
import com.yingyang.healthconsultation.R
|
|
|
import com.yingyang.healthconsultation.adapter.ConsultationDataAdapter
|
|
|
import com.yingyang.healthconsultation.databinding.ActivityPaidBinding
|
|
|
+import com.yingyang.healthconsultation.entity.ConsultationRecordsBean
|
|
|
+import com.yingyang.healthconsultation.entity.PurchaseConsultationBean
|
|
|
+import com.yingyangfly.baselib.dialog.TipsDialog
|
|
|
import com.yingyangfly.baselib.ext.*
|
|
|
import com.yingyangfly.baselib.mvvm.BaseMVVMActivity
|
|
|
import com.yingyangfly.baselib.router.RouterUrlCommon
|
|
@@ -27,6 +31,12 @@ class PaidActivity : BaseMVVMActivity<ActivityPaidBinding, PaidViewModel>(),
|
|
|
private var imageList = mutableListOf<String>()
|
|
|
private val adapter by lazy { ConsultationDataAdapter() }
|
|
|
|
|
|
+ private var status = ""
|
|
|
+ private var remark: String = ""
|
|
|
+ private var sickTime: String = ""
|
|
|
+ private var images: String = ""
|
|
|
+ private var isConsultation: String = ""
|
|
|
+
|
|
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
|
id = intent.getStringExtra("id") ?: ""
|
|
|
doctorId = intent.getStringExtra("doctorId") ?: ""
|
|
@@ -46,6 +56,9 @@ class PaidActivity : BaseMVVMActivity<ActivityPaidBinding, PaidViewModel>(),
|
|
|
binding {
|
|
|
backLayout.setOnTouchListener(this@PaidActivity)
|
|
|
doctorLayout.setOnTouchListener(this@PaidActivity)
|
|
|
+ btnCancleOrder.setOnTouchListener(this@PaidActivity)
|
|
|
+ btnContactDoctor.setOnTouchListener(this@PaidActivity)
|
|
|
+ btnConnection.setOnTouchListener(this@PaidActivity)
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -70,6 +83,11 @@ class PaidActivity : BaseMVVMActivity<ActivityPaidBinding, PaidViewModel>(),
|
|
|
imageList.clear()
|
|
|
if (it != null) {
|
|
|
binding.data = it
|
|
|
+ status = it.status
|
|
|
+ remark = it.remark
|
|
|
+ sickTime = it.sickTime
|
|
|
+ images = it.images
|
|
|
+ isConsultation = it.isConsultation
|
|
|
setStatusInfo(it.status, it.payOrder != null)
|
|
|
if (it.payOrder != null) {
|
|
|
binding.payOrder = it.payOrder
|
|
@@ -103,14 +121,12 @@ class PaidActivity : BaseMVVMActivity<ActivityPaidBinding, PaidViewModel>(),
|
|
|
//0未支付
|
|
|
binding {
|
|
|
tvStatus.text = "订单待支付,超时将取消"
|
|
|
+ orderBtnLayout.show(true)
|
|
|
btnCancleOrder.show(true)
|
|
|
btnCancleOrder.text = "取消订单"
|
|
|
- btnCancleOrder.setBackgroundResource(R.drawable.bg_record_cancel_order)
|
|
|
- btnCancleOrder.setTextColorResource(R.color.color_FFA5A5A5)
|
|
|
btnContactDoctor.show(true)
|
|
|
btnContactDoctor.text = "去支付"
|
|
|
- btnContactDoctor.setBackgroundResource(R.drawable.bg_pay_order)
|
|
|
- btnContactDoctor.setTextColorResource(R.color.color_FFFFFF)
|
|
|
+ btnConnection.show(false)
|
|
|
}
|
|
|
}
|
|
|
"1" -> {
|
|
@@ -147,10 +163,9 @@ class PaidActivity : BaseMVVMActivity<ActivityPaidBinding, PaidViewModel>(),
|
|
|
} else {
|
|
|
"订单已取消,支付的费用会在24小内返还到您的支付账户里"
|
|
|
}
|
|
|
- btnCancleOrder.show(false)
|
|
|
- btnContactDoctor.text = "重新问诊"
|
|
|
- btnContactDoctor.setBackgroundResource(R.drawable.bg_pay_order)
|
|
|
- btnContactDoctor.setTextColorResource(R.color.color_FFFFFF)
|
|
|
+ btnConnection.show(true)
|
|
|
+ orderBtnLayout.show(false)
|
|
|
+ btnConnection.text = "重新问诊"
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -175,7 +190,9 @@ class PaidActivity : BaseMVVMActivity<ActivityPaidBinding, PaidViewModel>(),
|
|
|
override fun onTouch(v: View, event: MotionEvent): Boolean {
|
|
|
when (event.action) {
|
|
|
MotionEvent.ACTION_DOWN -> {
|
|
|
- if (v.id == R.id.backLayout || v.id == R.id.doctorLayout) {
|
|
|
+ if (v.id == R.id.backLayout || v.id == R.id.doctorLayout || v.id == R.id.btnCancleOrder ||
|
|
|
+ v.id == R.id.btnContactDoctor || v.id == R.id.btnConnection
|
|
|
+ ) {
|
|
|
v.startAnimation(getScaleAnimation())
|
|
|
}
|
|
|
}
|
|
@@ -191,14 +208,66 @@ class PaidActivity : BaseMVVMActivity<ActivityPaidBinding, PaidViewModel>(),
|
|
|
mContext
|
|
|
)
|
|
|
}
|
|
|
+ } else if (v.id == R.id.btnCancleOrder) {
|
|
|
+ showTipsDialog(id)
|
|
|
+ } else if (v.id == R.id.btnContactDoctor) {
|
|
|
+ payOrder()
|
|
|
+ } else if (v.id == R.id.btnConnection) {
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
MotionEvent.ACTION_CANCEL -> {
|
|
|
- if (v.id == R.id.backLayout || v.id == R.id.doctorLayout) {
|
|
|
+ if (v.id == R.id.backLayout || v.id == R.id.doctorLayout || v.id == R.id.btnCancleOrder ||
|
|
|
+ v.id == R.id.btnContactDoctor || v.id == R.id.btnConnection
|
|
|
+ ) {
|
|
|
v.startAnimation(getEndAnimation())
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return true
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 取消订单
|
|
|
+ */
|
|
|
+ private fun cancelConsultation(id: String) {
|
|
|
+ viewModel.cancelConsultation(id, fail = {
|
|
|
+ it.toast()
|
|
|
+ }, success = {
|
|
|
+ getMedicalConsultationDetail()
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ private fun showTipsDialog(id: String) {
|
|
|
+ TipsDialog.TipDialogBuilder()
|
|
|
+ .title("提示")
|
|
|
+ .content("是否取消该笔订单")
|
|
|
+ .leftBtnText("取消")
|
|
|
+ .rightBtnText("确定")
|
|
|
+ .leftClick({
|
|
|
+ }, true)
|
|
|
+ .rightClick({
|
|
|
+ cancelConsultation(id)
|
|
|
+ }, true)
|
|
|
+ .show(supportFragmentManager)
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 支付订单
|
|
|
+ */
|
|
|
+ private fun payOrder() {
|
|
|
+ val purchaseConsultationBean = PurchaseConsultationBean()
|
|
|
+ purchaseConsultationBean.let {
|
|
|
+ it.remark = remark
|
|
|
+ it.sysUserId = doctorId
|
|
|
+ it.sickTime = sickTime
|
|
|
+ it.images = images
|
|
|
+ it.isConsultation = isConsultation
|
|
|
+ }
|
|
|
+ ARouter.getInstance().build(RouterUrlCommon.payment)
|
|
|
+ .withString("id", doctorId)
|
|
|
+ .withSerializable("purchaseConsultationBean", purchaseConsultationBean)
|
|
|
+ .withTransition(R.anim.leftin, R.anim.leftout)
|
|
|
+ .navigation(mContext)
|
|
|
+ }
|
|
|
}
|