package com.kuanzhai.driver.ui.main.small_cargo
|
|
import android.view.View
|
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.RecyclerView
|
import cn.sinata.xldutils.activitys.ImagePagerActivity
|
import cn.sinata.xldutils.utils.clickDelay
|
import cn.sinata.xldutils.utils.doubleTwo
|
import cn.sinata.xldutils.utils.gone
|
import cn.sinata.xldutils.utils.visible
|
import com.kuanzhai.driver.R
|
import com.kuanzhai.driver.base.BaseEvent
|
import com.kuanzhai.driver.base.MyApplication
|
import com.kuanzhai.driver.base.MyBaseActivity
|
import com.kuanzhai.driver.bean.OrderBean
|
import com.kuanzhai.driver.bean.OrderSimpleData
|
import com.kuanzhai.driver.netUtls.Api
|
import com.kuanzhai.driver.netUtls.callNet
|
import com.kuanzhai.driver.netUtls.getMapByAny
|
import com.kuanzhai.driver.ui.adapter.SmallUserImgAdapter
|
import com.kuanzhai.driver.ui.adapter.SmallUserImgtargeAdapter
|
import com.kuanzhai.driver.ui.main.major.MajorMoneyDetailActivity
|
import com.kuanzhai.driver.ui.pub.ImageActivity
|
import com.kuanzhai.driver.utils.MyUtils
|
import com.kuanzhai.driver.utils.glide.GlideUtil
|
import com.google.gson.Gson
|
import kotlinx.android.synthetic.main.activity_order_cancel.*
|
import kotlinx.android.synthetic.main.activity_order_over.*
|
import kotlinx.android.synthetic.main.activity_order_over.tv_show_pay_over
|
import kotlinx.android.synthetic.main.activity_order_over_small.*
|
import kotlinx.android.synthetic.main.activity_order_over_small.tv_recome_money
|
import kotlinx.android.synthetic.main.include_order_money.*
|
import kotlinx.android.synthetic.main.include_order_top_cargo.*
|
import org.greenrobot.eventbus.EventBus
|
import org.jetbrains.anko.startActivity
|
import java.util.ArrayList
|
|
class SmallOverActivity : MyBaseActivity() {
|
|
val orderType by lazy {
|
intent.getStringExtra("orderType")
|
}
|
|
val orderId by lazy {
|
intent.getStringExtra("orderId")
|
}
|
|
lateinit var orderBean: OrderBean
|
|
override fun setContentView() {
|
setContentView(R.layout.activity_order_over_small)
|
}
|
|
override fun initView() {
|
setTitleText("已送达")
|
ll_order_cancel.gone()
|
MyApplication.currentOrderType = ""
|
MyApplication.currentOrderId = ""
|
tv_show_pay_over.gone()
|
callOrder()
|
}
|
|
private fun callOrder() {
|
var map = getMapByAny()
|
map["orderId"] = orderId
|
map["orderType"] = orderType
|
callNet(Api.queryOrderInfo, map) {
|
orderBean = gson.fromJson(it, OrderBean::class.java)
|
showUi(orderBean)
|
}
|
}
|
|
val smallUserImgAdapter by lazy {
|
SmallUserImgtargeAdapter()
|
}
|
|
private fun showUi(orderBean: OrderBean?) {
|
orderBean?.let {
|
setTitleText("已完成")
|
tv_name.text = it.data.userName
|
tv_car_num.text = it.data.historyNum.toString() + "次寄物"
|
iv_phone.visible()
|
iv_phone.clickDelay {
|
MyUtils.getInstans().CallPhone(this, it.data.userPhone.toString())
|
}
|
tv_people_cargo.clickDelay {
|
MyUtils.getInstans().CallPhone(this, it.data.phone.toString())
|
}
|
tv_recome_money.text = "乘客答谢" + it.data.thankYouFee + "元"
|
tv_recome_money.visibility = if (it.data.orderState >= 9) View.VISIBLE else View.GONE
|
tv_time.text = it.data.travelTime
|
tv_start_address.text = it.data.startAddress
|
tv_end_address.text = it.data.endAddress
|
tv_money_cargo.text = it.data.tipMoney.toString() + "元加急费"
|
if (it.data.tipMoney == null || it.data.tipMoney <= 0.0) {
|
tv_money_cargo.gone()
|
tv_pay_result_small_money.gone()
|
}
|
GlideUtil.load(this, it.data.driverImg, iv_image_mine, 2)
|
iv_image_mine.clickDelay {
|
startActivity<ImageActivity>("url" to it.data.driverImg)
|
}
|
recycler_view_user_img2.layoutManager =
|
LinearLayoutManager(this, RecyclerView.HORIZONTAL, false)
|
recycler_view_user_img2.adapter = smallUserImgAdapter
|
var list = it.data.userImg.split(",")
|
smallUserImgAdapter.data.addAll(list)
|
smallUserImgAdapter.notifyDataSetChanged()
|
ll_img_user.visibility = if (it.data.userImg.isNullOrEmpty()) View.GONE else View.VISIBLE
|
|
|
var cargoStrType = if (orderBean.data.cargoType == "1") "普通小件X" else "贵重物品X"
|
tv_tv_num_cargo.text = cargoStrType + orderBean.data.peopleNumber
|
tv_people_cargo.text = it.data.nickName + "-" + it.data.phone
|
// tv_show_pay_over.visible()
|
tv_pay_result_money.text = "¥" + it.data.orderMoney.toString()
|
tv_pay_result_small_money.text = "其中含加急费用:¥" + it.data.tipMoney.toString()
|
setTitleText(getSmallStatue(it.data.orderState))
|
/***
|
*
|
*/
|
tv_pay_result_small_money.visibility =
|
if (!it.data.note.isNullOrEmpty() && it.data.timeOutMoney > 0) View.VISIBLE else View.GONE
|
tv_pay_result_small_money.text = it.data.note
|
ll_time_out.visibility = if (it.data.timeOutMoney > 0) View.VISIBLE else View.GONE
|
ll_return_money.visibility = if (it.data.returnMoney > 0) View.VISIBLE else View.GONE
|
tv_time_out.text = "¥" + doubleTwo(it.data.timeOutMoney) //超时扣款
|
tv_return_money.text = "¥" + doubleTwo(it.data.returnMoney) //退回
|
tv_pay_result_title.text = "乘客已支付"
|
ll_fast.visibility = if (it.data.tipMoney > 0) View.VISIBLE else View.GONE
|
tv_fast.text = "¥" + doubleTwo(it.data.tipMoney) //加急费用
|
tv_appeal.clickDelay {
|
startActivity<AppealActivity>("id" to it.data.orderId.toString() //
|
,"predictTime" to it.data.travelTime,"actual_time" to it.data.endServiceTime,"money" to it.data.timeOutMoney)
|
finish()
|
}
|
if (it.data.timeOutMoney > 0.0 && it.data.timeOutMoney > it.data.returnMoney){ //appealState 1可以申诉
|
tv_appeal.visible()
|
tv_appeal_hint.visible()
|
}else{
|
tv_appeal.gone()
|
tv_appeal_hint.gone()
|
}
|
}
|
}
|
|
private fun getSmallStatue(state: Int): String? {
|
when (state) {
|
1 -> return "待接单"
|
2 -> return "待出发"
|
3 -> return "待到达预约地点"
|
4 -> return "待取货"
|
5 -> return "送货中"
|
6 -> return "已送达"
|
7 -> return "待支付"
|
8 -> return "需补差价"
|
9 -> return "已取货"
|
10 -> return "已取消"
|
11 -> return "改派中"
|
12 -> return "已支付差价"
|
}
|
return ""
|
}
|
|
|
var handler: android.os.Handler? = null
|
fun checkOrderStatue() {
|
var map = getMapByAny()
|
map["orderId"] = orderId
|
map["orderType"] = orderType
|
callNet(false, Api.orderStateSocket, map) {
|
val orderSimpleData =
|
Gson().fromJson(
|
it,
|
OrderSimpleData::class.java
|
)
|
orderSimpleData?.let {
|
if (orderSimpleData.status == 8) {
|
orderBean.data.orderState = 8
|
showUi(orderBean)
|
}
|
}
|
}
|
handler?.postDelayed({ checkOrderStatue() }, 3000)
|
}
|
|
override fun onDestroy() {
|
super.onDestroy()
|
handler?.removeCallbacksAndMessages(null)
|
}
|
|
fun showPayResultText(it: OrderBean, statue: Int) {
|
ll_pay_result.visible()
|
if (statue in 6..7) {
|
tv_pay_result_title.text = "待乘客支付"
|
setTitleText("待支付")
|
} else {
|
tv_pay_result_title.text = "乘客已支付"
|
setTitleText("已完成")
|
}
|
tv_pay_result_money.text = "¥" + it.data.orderMoney.toString()
|
when (orderType) {
|
"2" -> {
|
tv_pay_result_small_money.text = "其中含红包费用:¥" + it.data.tipMoney.toString()
|
}
|
"1" -> {
|
tv_pay_result_small_money.text = "查看收费明细"
|
tv_pay_result_small_money.clickDelay {
|
startActivity<MajorMoneyDetailActivity>(
|
"orderId" to orderId,
|
"orderType" to orderType
|
)
|
}
|
}
|
}
|
}
|
|
override fun onBackPressed() {
|
super.onBackPressed()
|
EventBus.getDefault().post(BaseEvent(BaseEvent.CALL_NUM_MAIN))
|
EventBus.getDefault().post(BaseEvent(BaseEvent.BACK_CAR_OVER))
|
}
|
|
override fun setOnclick() {
|
|
}
|
}
|