package com.fuban.user.ui.trip
|
|
import android.app.Activity
|
import android.content.Intent
|
import cn.sinata.xldutils.callPhone
|
import cn.sinata.xldutils.utils.myToast
|
import cn.sinata.xldutils.utils.optInt
|
import cn.sinata.xldutils.utils.toTime
|
import com.fuban.user.FBApplication
|
import com.fuban.user.R
|
import com.fuban.user.network.HttpManager
|
import com.fuban.user.network.entity.DriverInfo
|
import com.fuban.user.network.request
|
import com.fuban.user.ui.TransparentStatusBarActivity
|
import kotlinx.android.synthetic.main.activity_target_order.*
|
import org.jetbrains.anko.startActivity
|
import org.jetbrains.anko.startActivityForResult
|
|
class TargetOrderActivity:TransparentStatusBarActivity() {
|
override fun setContentView() = R.layout.activity_target_order
|
|
private val driver by lazy {
|
intent.getParcelableExtra<DriverInfo>("driver")
|
}
|
private val type by lazy {
|
intent.getIntExtra("type",0)
|
}
|
private var startName = ""
|
private var startLat = 0.0
|
private var startLon = 0.0
|
private var endName = ""
|
private var endLat = 0.0
|
private var endLon = 0.0
|
|
override fun initClick() {
|
iv_call.setOnClickListener {
|
callPhone(driver.phone)
|
}
|
tv_start.setOnClickListener {
|
startActivityForResult<ChoosePositionActivity>(1)
|
}
|
tv_end.setOnClickListener {
|
startActivityForResult<ChoosePositionActivity>(2,"isStart" to false)
|
}
|
tv_action.setOnClickListener {
|
if (endName.isEmpty()){
|
myToast("请选择目的地")
|
}else{
|
tv_action.isEnabled = false
|
HttpManager.addTaxiOrder(endName,endLat,endLon,2,type,FBApplication.lat,FBApplication.lon, startName,
|
startLat,startLon,0,0, System.currentTimeMillis().toTime("yyyy-MM-dd HH:mm"),
|
driver.id,null,null,null,1,type).request(this,success = {_,data->
|
data?.let {
|
startActivity<TripActivity>("type" to type,"id" to it.optInt("id"))
|
setResult(Activity.RESULT_OK)
|
finish()
|
}
|
},error = {_,_->
|
tv_action.isEnabled = true
|
})
|
}
|
}
|
}
|
|
override fun initView() {
|
title = "扫码叫车"
|
startName = intent.getStringExtra("startName")
|
startLat = intent.getDoubleExtra("startLat",0.0)
|
startLon = intent.getDoubleExtra("startLon",0.0)
|
tv_start.text = startName
|
driver.run {
|
iv_header_home.setImageURI(avatar)
|
tv_name.text = "$name $licensePlate"
|
tv_car_info.text = "$brand·$carColor"
|
tv_score.text = String.format("%.1f",fraction)
|
tv_count.text = String.format("%d单",orderNum)
|
tv_action.isEnabled = state == 2
|
tv_action.text = when(state){
|
1->"该司机未上班请稍后在下单"
|
3->"该司机正在服务请稍后在下单"
|
else->"确定"
|
}
|
}
|
}
|
|
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
|
super.onActivityResult(requestCode, resultCode, data)
|
if (resultCode == Activity.RESULT_OK&&data!=null){
|
when(requestCode){
|
1->{
|
startLat = data.getDoubleExtra("lat", 0.0)
|
startLon = data.getDoubleExtra("lon", 0.0)
|
startName = data.getStringExtra("name")?:""
|
tv_start.text = startName
|
}
|
2->{
|
endLat = data.getDoubleExtra("lat", 0.0)
|
endLon = data.getDoubleExtra("lon", 0.0)
|
endName = data.getStringExtra("name")?:""
|
tv_end.text = endName
|
}
|
}
|
}
|
}
|
}
|