package com.kuanzhai.driver.ui.driver_server
|
|
import android.view.ViewGroup
|
import android.widget.TextView
|
import androidx.recyclerview.widget.GridLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
import cn.sinata.xldutils.utils.*
|
import com.kuanzhai.driver.R
|
import com.kuanzhai.driver.base.Const
|
import com.kuanzhai.driver.base.MyBaseActivity
|
import com.kuanzhai.driver.bean.AlLSiteBeanItem
|
import com.kuanzhai.driver.bean.AllCarBean
|
import com.kuanzhai.driver.bean.City
|
import com.kuanzhai.driver.netUtls.Api
|
import com.kuanzhai.driver.netUtls.callNet
|
import com.kuanzhai.driver.netUtls.getMapByAny
|
import com.kuanzhai.driver.ui.adapter.ProvinceSiteAdapter
|
import com.kuanzhai.driver.ui.adapter.ProvinceSiteDetailAdapter
|
import com.kuanzhai.driver.ui.driver_server.adapter.CarMoneytypeAdapter
|
import com.kuanzhai.driver.ui.driver_server.adapter.CarTypeAdapter
|
import com.kuanzhai.driver.ui.driver_server.fragment.CarRentalListFragment
|
import com.kuanzhai.driver.ui.driver_server.fragment.CarRentalSearchActivity
|
import com.kuanzhai.driver.utils.EasePopup.EasyPopup
|
import com.google.gson.reflect.TypeToken
|
import kotlinx.android.synthetic.main.activiy_car_rental.*
|
import kotlinx.android.synthetic.main.fragment_base_recycler.*
|
import kotlinx.android.synthetic.main.pop_car_more_rental.view.*
|
import kotlinx.android.synthetic.main.pop_car_site.view.*
|
import kotlinx.android.synthetic.main.pop_car_type.view.*
|
import org.jetbrains.anko.startActivity
|
|
class CarRentalActivity: MyBaseActivity() {
|
|
val carRentalListFragment by lazy {
|
CarRentalListFragment()
|
}
|
|
override fun setContentView() {
|
setContentView(R.layout.activiy_car_rental)
|
}
|
|
override fun initView() {
|
setTitleText("司机车辆承包")
|
addFragment(carRentalListFragment,R.id.container)
|
view_top.clickDelay {
|
startActivity<CarRentalSearchActivity>()
|
}
|
|
}
|
|
|
private fun allFailse(tvCarType: TextView?) {
|
carRentalListFragment.comineType = 1
|
tv_car_type.textColor(this,R.color.color_ff333333)
|
tv_money.textColor(this,R.color.color_ff333333)
|
tv_more.textColor(this,R.color.color_ff333333)
|
tv_site.textColor(this,R.color.color_ff333333)
|
tv_car_type.setDrawableRight(R.mipmap.icon_arrow_open_black)
|
tv_money.setDrawableRight(R.mipmap.icon_arrow_open_black)
|
tv_more.setDrawableRight(R.mipmap.icon_arrow_open_black)
|
tv_site.setDrawableRight(R.mipmap.icon_arrow_open_black)
|
if (tvCarType != null){
|
tvCarType.textColor(this,R.color.color_3090E9)
|
tvCarType.setDrawableRight(R.mipmap.arrow_blue_up)
|
}
|
|
}
|
|
override fun setOnclick() {
|
et_search.setTextChange {
|
carRentalListFragment.serachName = it
|
carRentalListFragment?.smart_refresh_layout?.autoRefresh()
|
}
|
tv_car_type.clickDelay {
|
allFailse(tv_car_type)
|
var view = layoutInflater.inflate(R.layout.pop_car_type,null)
|
var pop = EasyPopup()
|
.setContentView(view)
|
.setWidth(ViewGroup.LayoutParams.MATCH_PARENT)
|
.setHeight(ViewGroup.LayoutParams.WRAP_CONTENT)
|
.setBackgroundDimEnable(false)
|
.setOutsideTouchable(true)
|
pop.showAsDropDown(ll_tops)
|
var carTypeAdapter = CarTypeAdapter()
|
carTypeAdapter.selectId = carRentalListFragment.brandId
|
view.recycler_view_car_type.layoutManager = LinearLayoutManager(this)
|
callNet(Api.queryAllBrand, getMapByAny()) { carallStr ->
|
var carAll = gson.fromJson<AllCarBean>(carallStr, AllCarBean::class.java)
|
carTypeAdapter.data.addAll(carAll.data)
|
carTypeAdapter.data.add(0,AllCarBean.DataBean.create("不限",-1))
|
carTypeAdapter.notifyDataSetChanged()
|
}
|
|
view.recycler_view_car_type.adapter = carTypeAdapter
|
carTypeAdapter.setOnItemClickListener { view, position ->
|
if (carTypeAdapter.selectId == carTypeAdapter.data[position].id){
|
carRentalListFragment.brandId = -1
|
}else{
|
carRentalListFragment.brandId = carTypeAdapter.data[position].id
|
}
|
carRentalListFragment.smart_refresh_layout?.autoRefresh()
|
allFailse(null)
|
pop.dismiss()
|
}
|
view.view_dismiss.clickDelay {
|
allFailse(null)
|
pop.dismiss()
|
}
|
}
|
|
rl_money.clickDelay {
|
allFailse(tv_money)
|
var view = layoutInflater.inflate(R.layout.pop_car_type,null)
|
var pop = EasyPopup()
|
.setContentView(view)
|
.setWidth(ViewGroup.LayoutParams.MATCH_PARENT)
|
.setHeight(ViewGroup.LayoutParams.WRAP_CONTENT)
|
.setBackgroundDimEnable(false)
|
.setOutsideTouchable(true)
|
pop.showAsDropDown(ll_tops)
|
var carTypeAdapter = CarTypeAdapter()
|
carTypeAdapter.selectId = carRentalListFragment.type
|
view.recycler_view_car_type.layoutManager = LinearLayoutManager(this)
|
carTypeAdapter.data.add(AllCarBean.DataBean.create("不限",-1))
|
carTypeAdapter.data.add(AllCarBean.DataBean.create("企业车辆",2))
|
carTypeAdapter.data.add(AllCarBean.DataBean.create("个人车辆",1))
|
view.recycler_view_car_type.adapter = carTypeAdapter
|
carTypeAdapter.setOnItemClickListener { view, position ->
|
if (carTypeAdapter.selectId == carTypeAdapter.data[position].id){
|
carRentalListFragment.type = -1
|
}else{
|
carRentalListFragment.type = carTypeAdapter.data[position].id
|
}
|
carRentalListFragment.serachName = et_search.getContent()
|
carRentalListFragment?.smart_refresh_layout?.autoRefresh()
|
allFailse(null)
|
pop.dismiss()
|
}
|
view.view_dismiss.clickDelay {
|
allFailse(null)
|
pop.dismiss()
|
}
|
}
|
|
rl_site.clickDelay {
|
allFailse(tv_site)
|
var view = layoutInflater.inflate(R.layout.pop_car_site, null)
|
var pop = EasyPopup()
|
.setContentView(view)
|
.setWidth(ViewGroup.LayoutParams.MATCH_PARENT)
|
.setHeight(ViewGroup.LayoutParams.WRAP_CONTENT)
|
.setBackgroundDimEnable(false)
|
.setOutsideTouchable(true)
|
pop.showAsDropDown(ll_tops)
|
var cityCode = ""
|
var data = gson.fromJson<MutableList<AlLSiteBeanItem>>(Const.Site,object : TypeToken<MutableList<AlLSiteBeanItem>>(){}.type)
|
for (item in data){
|
var adc = if (item.city.isNullOrEmpty()) "" else item.city[0].adcode.substring(0,3)+"000"
|
item.adcode = adc
|
item.city.add(0, City(adc,"不限"))
|
}
|
var siteAdapter = ProvinceSiteAdapter()
|
var siteDetailAdapter = ProvinceSiteDetailAdapter()
|
|
siteAdapter.selectPosition = carRentalListFragment.selectProvincePos
|
siteDetailAdapter.selectPosition = carRentalListFragment.selectCityPos
|
|
view.recycler_view_car_site.layoutManager = LinearLayoutManager(this)
|
view.recycler_view_car_site_detail.layoutManager = LinearLayoutManager(this)
|
view.recycler_view_car_site.adapter = siteAdapter
|
view.recycler_view_car_site_detail.adapter = siteDetailAdapter
|
siteAdapter.data.addAll(data)
|
var list = arrayListOf<City>()
|
list.add(0, City("","不限"))
|
siteAdapter.data.add(0,AlLSiteBeanItem("", list,"全国"))
|
siteAdapter.notifyDataSetChanged()
|
view.recycler_view_car_site.scrollToPosition(siteAdapter.selectPosition)
|
|
siteDetailAdapter.data.clear()
|
siteDetailAdapter.data.addAll(siteAdapter.data[carRentalListFragment.selectProvincePos].city)
|
siteDetailAdapter.notifyDataSetChanged()
|
view.recycler_view_car_site_detail.scrollToPosition(siteDetailAdapter.selectPosition)
|
siteAdapter.setOnItemClickListener { view, position ->
|
siteAdapter.selectPosition = position
|
siteAdapter.notifyDataSetChanged()
|
// if (position == 0){
|
// cityCode = ""
|
// carRentalListFragment.cityCode = cityCode
|
// carRentalListFragment.serachName = et_search.getContent()
|
// carRentalListFragment.refresh()
|
// carRentalListFragment.selectProvincePos = 0
|
// carRentalListFragment.selectCityPos = 0
|
// allFailse(null)
|
// pop.dismiss()
|
// }else{
|
siteDetailAdapter.selectPosition = -1
|
siteDetailAdapter.data.clear()
|
siteDetailAdapter.data.addAll(siteAdapter.data[position].city)
|
siteDetailAdapter.notifyDataSetChanged()
|
// }
|
}
|
siteDetailAdapter.setOnItemClickListener { view, position ->
|
if (position == 0){
|
carRentalListFragment.cityCode = ""
|
}else{
|
carRentalListFragment.cityCode = siteDetailAdapter.data[position].adcode
|
}
|
carRentalListFragment.provinceCode = siteAdapter.data[siteAdapter.selectPosition].adcode?:""
|
carRentalListFragment.serachName = et_search.getContent()
|
carRentalListFragment?.smart_refresh_layout?.autoRefresh()
|
carRentalListFragment.selectProvincePos = siteAdapter.selectPosition
|
carRentalListFragment.selectCityPos = position
|
allFailse(null)
|
pop.dismiss()
|
}
|
}
|
|
rl_more.clickDelay {
|
var moneyArray = arrayListOf("不限","¥100以下","¥100-200","¥200-300","¥300-400","¥400以上")
|
var carBook = arrayListOf("不限","身份证","驾驶证","驾驶员资格证")
|
allFailse(tv_more)
|
var startRentMoney = ""
|
var endRentMoney = ""
|
var pickUpCarCarCertificates = ""
|
var view = layoutInflater.inflate(R.layout.pop_car_more_rental,null)
|
var pop = EasyPopup()
|
.setContentView(view)
|
.setWidth(ViewGroup.LayoutParams.MATCH_PARENT)
|
.setHeight(ViewGroup.LayoutParams.WRAP_CONTENT)
|
.setBackgroundDimEnable(false)
|
.setOutsideTouchable(true)
|
pop.showAsDropDown(ll_tops)
|
view.recycler_view_car_num.layoutManager = GridLayoutManager(this,4)
|
view.recycler_view_car_speed.layoutManager = GridLayoutManager(this,4)
|
var selectlist = arrayListOf<Int>()
|
selectlist.addAll(carRentalListFragment.selectPosList)
|
var moneyAdapter = CarMoneytypeAdapter()
|
var bookAdapter = CarMoneytypeAdapter()
|
|
moneyAdapter.select = selectlist[0]
|
bookAdapter.select = selectlist[1]
|
moneyAdapter.data.addAll(moneyArray)
|
bookAdapter.data.addAll(carBook)
|
view.recycler_view_car_num.adapter = moneyAdapter
|
view.recycler_view_car_speed.adapter = bookAdapter
|
|
setMoney(moneyAdapter.select){start,end ->
|
startRentMoney = start
|
endRentMoney = end
|
}
|
pickUpCarCarCertificates = carRentalListFragment.pickUpCarCarCertificates
|
moneyAdapter.setOnItemClickListener { view, position ->
|
moneyAdapter.select = position
|
moneyAdapter.notifyDataSetChanged()
|
setMoney(position){start,end ->
|
startRentMoney = start
|
endRentMoney = end
|
}
|
selectlist[0] = position
|
}
|
bookAdapter.setOnItemClickListener { view, position ->
|
pickUpCarCarCertificates = bookAdapter.data[position]
|
if (pickUpCarCarCertificates == "不限"){
|
pickUpCarCarCertificates = ""
|
}
|
bookAdapter.select = position
|
bookAdapter.notifyDataSetChanged()
|
selectlist[1] = position
|
}
|
view.view_dismiss_type.clickDelay {
|
allFailse(null)
|
pop.dismiss()
|
}
|
view.tv_sure_rental.clickDelay {
|
carRentalListFragment.selectPosList = selectlist
|
carRentalListFragment.startRentMoney = startRentMoney
|
carRentalListFragment.endRentMoney = endRentMoney
|
carRentalListFragment.pickUpCarCarCertificates = pickUpCarCarCertificates
|
carRentalListFragment.serachName = et_search.getContent()
|
carRentalListFragment?.smart_refresh_layout?.autoRefresh()
|
allFailse(null)
|
pop.dismiss()
|
}
|
view.tv_resets.clickDelay {
|
startRentMoney = ""
|
endRentMoney = ""
|
pickUpCarCarCertificates = ""
|
moneyAdapter.select = 0
|
bookAdapter.select = 0
|
carRentalListFragment.selectPosList = arrayListOf(0,0)
|
selectlist = arrayListOf(0,0)
|
moneyAdapter.notifyDataSetChanged()
|
bookAdapter.notifyDataSetChanged()
|
}
|
}
|
}
|
|
// var moneyArray = arrayListOf("¥100以下","¥100-200","¥200-300","¥300-400","¥400以上")
|
private fun setMoney(position: Int, function:(String,String) -> Unit) {
|
when(position){
|
0 -> {
|
function("","")
|
}
|
1 -> {
|
function("0","100")
|
}
|
2 -> {
|
function("100","200")
|
}
|
3 -> {
|
function("200","300")
|
}
|
4 -> {
|
function("300","400")
|
}
|
5 -> {
|
function("400","")
|
}
|
}
|
}
|
|
}
|