package com.future.driver.ui.mine
|
|
import android.view.View
|
import androidx.core.content.ContextCompat
|
import cn.sinata.xldutils.utils.clickDelay
|
import cn.sinata.xldutils.utils.getContent
|
import com.future.driver.R
|
import com.future.driver.base.BaseEvent
|
import com.future.driver.base.local.BasePhotoActivity
|
import com.future.driver.bean.AllCarBean
|
import com.future.driver.netUtls.Api
|
import com.future.driver.netUtls.callNet
|
import com.future.driver.netUtls.getMapByAny
|
import com.future.driver.ui.DialogUtil
|
import com.future.driver.utils.DateUtil
|
import com.future.driver.utils.MyUtils
|
import com.future.driver.utils.citypickerview.picker.widget.builder.TimePickerBuilder
|
import com.future.driver.utils.citypickerview.picker.widget.listener.OnOptionsSelectListener
|
import com.future.driver.utils.citypickerview.picker.widget.listener.OnTimeSelectListener
|
import com.future.driver.utils.glide.GlideUtil
|
import kotlinx.android.synthetic.main.activity_add_car.*
|
import org.greenrobot.eventbus.EventBus
|
import org.jetbrains.anko.toast
|
import java.util.*
|
import kotlin.collections.ArrayList
|
|
class AddCarActivity : BasePhotoActivity() {
|
var arrayColor = arrayListOf("黑色", "银色", "白色", "红色", "黄色", "橙色", "蓝色")
|
var arrayNumStart = arrayListOf("冀","蒙","吉","沪","皖","鲁","鄂","桂","渝","藏","甘","新","晋"
|
,"辽","黑", "苏", "浙", "闽", "赣", "豫", "湘", "粤", "琼", "川", "黔", "滇", "陕", "青", "宁")
|
var letter = arrayListOf("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T"
|
,"U","V","W","X","Y","Z")
|
var selectImgType = 0// 1 行驶证 2 保险 3人车合影
|
var drivingLicenceImg = "" //1
|
var insuranceImg = "" //2
|
var carPeopleImg = "" //3
|
var carId = -1
|
var selectCarPai = ""
|
|
override fun setContentView() {
|
setContentView(R.layout.activity_add_car)
|
}
|
|
override fun initView() {
|
setTitleText("添加车辆")
|
}
|
|
override fun setOnclick() {
|
ll_car_type.setOnClickListener {
|
var name = ""
|
callNet(Api.queryAllBrand, getMapByAny()) { carallStr ->
|
var carAll = gson.fromJson<AllCarBean>(carallStr, AllCarBean::class.java)
|
DialogUtil.getNetOneDialog(carAll.data as ArrayList<AllCarBean.DataBean>, window.decorView, this) { selectCar ->
|
name = selectCar.name
|
var map = getMapByAny()
|
map["brandId"] = selectCar.id
|
callNet(Api.queryCarModel,map){ modeStr ->
|
var carMode = gson.fromJson<AllCarBean>(modeStr, AllCarBean::class.java)
|
DialogUtil.getNetOneDialog(carMode.data as ArrayList<AllCarBean.DataBean>, window.decorView, this) {
|
carId = it.id
|
name = name+" "+it.name
|
tv_mode_name.text = name
|
}
|
}
|
|
}
|
}
|
|
}
|
|
ll_car_color.setOnClickListener {
|
var popColor = DialogUtil.getColorListDialog(arrayColor, window.decorView, this) {
|
tv_color.text = it
|
}
|
}
|
|
ll_car_num.setOnClickListener {
|
var popcar = DialogUtil.getOptionListDialog(this,arrayNumStart,letter,object : OnOptionsSelectListener{
|
override fun onOptionsSelect(
|
view: View?,
|
options1: Int,
|
options2: Int,
|
options3: Int
|
): Boolean {
|
selectCarPai = arrayNumStart[options1]+letter[options2]
|
tv_car_num_start.text = selectCarPai
|
return false
|
}
|
|
})
|
}
|
|
ll_time.setOnClickListener {
|
MyUtils.getInstans().hideKeyboard(ll_main)
|
showTimePicker()
|
}
|
rl_driving_licence.setOnClickListener {
|
selectImgType = 1
|
showSelectPhone()
|
}
|
|
rl_insurance.setOnClickListener {
|
selectImgType = 2
|
showSelectPhone()
|
}
|
|
rl_car_people.setOnClickListener {
|
selectImgType = 3
|
showSelectPhone()
|
}
|
|
tv_login.clickDelay {
|
if (carId == -1){
|
toast("请选择车型")
|
return@clickDelay
|
}
|
if (tv_color.text.isNullOrEmpty()){
|
toast("请选择颜色")
|
return@clickDelay
|
}
|
if (selectCarPai.isNullOrEmpty()){
|
toast("请选择车牌号")
|
return@clickDelay
|
}
|
if (et_name.getContent().isNullOrEmpty()){
|
toast("请填写车牌尾号")
|
return@clickDelay
|
}
|
if (tv_time.text.isNullOrEmpty()){
|
toast("请选择时间")
|
return@clickDelay
|
}
|
if (drivingLicenceImg.isEmpty()){
|
toast("请选择行驶证照片")
|
return@clickDelay
|
}
|
if (insuranceImg.isEmpty()){
|
toast("请选择保险照片")
|
return@clickDelay
|
}
|
if (carPeopleImg.isEmpty()){
|
toast("请选择人车合影照片")
|
return@clickDelay
|
}
|
var map = getMapByAny()
|
map["carPhoto"] = carPeopleImg
|
map["color"] = tv_color.text
|
map["drivingLicensePhoto"] = drivingLicenceImg
|
map["insurancePhoto"] = insuranceImg
|
map["licensePlate"] = selectCarPai+et_name.getContent()
|
map["modelId"] = carId
|
map["time"] = tv_time.text
|
callNet(Api.addCar,map){
|
toast("添加成功")
|
EventBus.getDefault().post(BaseEvent(BaseEvent.CHANGE_CAR_SUCCESS))
|
onBackPressed()
|
}
|
}
|
}
|
|
|
|
fun showTimePicker() {
|
var startCalendar = Calendar.getInstance()
|
var endCalendar = Calendar.getInstance()
|
startCalendar.set(1900, 1, 1)
|
endCalendar.time = Date()
|
var timePic = TimePickerBuilder(this,
|
OnTimeSelectListener { date, v ->
|
tv_time.text = DateUtil.getTime(DateUtil.TYPE0,date.time)
|
})
|
.setTitleText("")
|
.setBgColor(ContextCompat.getColor(this, R.color.white))
|
.setCancelColor(ContextCompat.getColor(this, R.color.black_333333))
|
.setSubmitColor(ContextCompat.getColor(this, R.color.main_yellow))
|
.setRangDate(startCalendar, endCalendar)
|
.setDate(endCalendar)
|
.setSubmitText("确认")
|
.setLineSpacingMultiplier(2f)
|
.build()
|
timePic.show()
|
}
|
|
override fun getPhoneUrl(url: String, type: Int) {
|
super.getPhoneUrl(url, type)
|
when (selectImgType) {
|
1 -> {
|
drivingLicenceImg = url
|
GlideUtil.load(this, url, iv_driving_licence, 1)
|
}
|
2 -> {
|
insuranceImg = url
|
GlideUtil.load(this, url, iv_insurance, 1)
|
}
|
3 -> {
|
carPeopleImg = url
|
GlideUtil.load(this, url, iv_car_people, 1)
|
}
|
}
|
}
|
}
|