接单功能封装优化

This commit is contained in:
lijia 2024-03-06 16:16:15 +08:00
parent 8205238697
commit cfc9b81650
18 changed files with 420 additions and 187 deletions

View File

@ -0,0 +1,39 @@
package com.dahe.gldriver.adapter
import android.content.Context
import android.view.ViewGroup
import android.widget.Button
import android.widget.LinearLayout
import com.chad.library.adapter4.BaseQuickAdapter
import com.chad.library.adapter4.viewholder.QuickViewHolder
import com.dahe.gldriver.R
import com.dahe.gldriver.bean.CarBean
import com.dahe.glex.bean.WayBillBean
/**
* @ClassName WaybillAdapter
* @Author 用户
* @Date 2024/1/23 16:27
* @Description TODO
*/
class SelectCarAdapter :
BaseQuickAdapter<CarBean, QuickViewHolder>() {
override fun onBindViewHolder(holder: QuickViewHolder, position: Int, item: CarBean?) {
holder.run {
setText(R.id.tvCarNum, item?.vehicleNum)
setText(R.id.tvCarType, """${item?.vehicleType}""")
setText(R.id.tvCarLen, """车长:${item?.carLong}""")
setText(R.id.tvCarWei, """核定载重:${item?.approvedLoad}""")
setSelected(R.id.llContent, item?.isSelect!!)
}
}
override fun onCreateViewHolder(
context: Context,
parent: ViewGroup,
viewType: Int
): QuickViewHolder {
// 返回一个 ViewHolder
return QuickViewHolder(R.layout.item_car, parent)
}
}

View File

@ -0,0 +1,33 @@
package com.dahe.gldriver.bean
/**
* @ClassName CarBean
* @Author john
* @Date 2024/3/6 10:26
* @Description TODO
*/
data class CarBean(
val approvedLoad: String="",
val carHeight: String="",
val carId: String="",
val carLong: String="",
val carUrl: String="",
val carWidth: String="",
val energySign: String="",
val energySignCode: String="",
val isTrailer: String="",
val plateColor: String="",
val plateColorCode: String="",
val trailerApprovedLoad: String="",
val trailerHeight: String="",
val trailerId: String="",
val trailerLong: String="",
val trailerUrl: String="",
val trailerVehicleNum: String="",
val trailerVehicleType: String="",
val trailerVehicleTypeCode: String="",
var vehicleNum: String="",
val vehicleType: String="",
val vehicleTypeCode: String="",
var isSelect: Boolean = false
)

View File

@ -0,0 +1,93 @@
package com.dahe.gldriver.mypop
import android.content.Context
import android.graphics.Color
import android.widget.Button
import android.widget.LinearLayout
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import com.chad.library.adapter4.BaseQuickAdapter
import com.dahe.gldriver.R
import com.dahe.gldriver.adapter.SelectCarAdapter
import com.dahe.gldriver.bean.CarBean
import com.dahe.mylibrary.adapter.GridImageAdapter
import com.dahe.mylibrary.callback.OnPicResultListener
import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider
import com.dahe.mylibrary.utils.ConvertUtils
import com.luck.picture.lib.entity.LocalMedia
import com.lxj.xpopup.core.BottomPopupView
/**
* @ClassName PopBottomPic
* @Author john
* @Date 2024/1/31 11:11
* @Description TODO
*/
class PopBottomCar(
context: Context,
cars: MutableList<CarBean>,
onCarSelectListener: OnCarSelectListener
) : BottomPopupView(context) {
private var cars: MutableList<CarBean>
private var listener: OnCarSelectListener
private var currCar: CarBean? = null
init {
this.listener = onCarSelectListener
this.cars = cars
}
override fun getImplLayoutId() = R.layout.choice_car
override fun onCreate() {
super.onCreate()
var recycler = findViewById<RecyclerView>(R.id.recycler)
var btnOk = findViewById<Button>(R.id.btnOk)
initRecycle(recycler)
btnOk.setOnClickListener {
if (currCar == null) {
dismiss()
return@setOnClickListener
}
if (listener != null) {
listener.onResult(currCar!!)
dismiss()
}
}
}
private fun initRecycle(recycler: RecyclerView) {
recycler.run {
layoutManager = LinearLayoutManager(context, RecyclerView.VERTICAL, false)
setHasFixedSize(true)
addItemDecoration(
RecycleViewDivider(
LinearLayout.VERTICAL,
ConvertUtils.dp2px(10.0f),
Color.TRANSPARENT
)
)
adapter = SelectCarAdapter()
(adapter as SelectCarAdapter).submitList(cars)
(adapter as SelectCarAdapter)
}.run {
setOnItemClickListener() { adapter, view, position ->
currCar = items[position]
items.find { it.isSelect }?.isSelect = false
items[position].isSelect = true
notifyDataSetChanged()
}
}
}
}
fun interface OnCarSelectListener {
fun onResult(result: CarBean)
}

View File

@ -2,6 +2,7 @@ package com.dahe.gldriver.net
import com.dahe.gldriver.BuildConfig import com.dahe.gldriver.BuildConfig
import com.dahe.gldriver.bean.AuthTeamBean import com.dahe.gldriver.bean.AuthTeamBean
import com.dahe.gldriver.bean.CarBean
import com.dahe.gldriver.bean.OcrPersonBean import com.dahe.gldriver.bean.OcrPersonBean
import com.dahe.gldriver.bean.OrderDetailBean import com.dahe.gldriver.bean.OrderDetailBean
import com.dahe.gldriver.bean.OssBean import com.dahe.gldriver.bean.OssBean
@ -155,6 +156,13 @@ interface Api {
@GET(BASE_URL + "driver/order/detail") @GET(BASE_URL + "driver/order/detail")
fun orderDetail(@Query("orderId") orderId: String): Observable<CommonResponseBean<OrderDetailBean>> fun orderDetail(@Query("orderId") orderId: String): Observable<CommonResponseBean<OrderDetailBean>>
/**
*
* 车辆列表
* */
@GET(BASE_URL+"driver/car/carList")
fun carList(): Observable<CommonResponseBean<MutableList<CarBean>>>
/** /**
* 司机接单 * 司机接单
* */ * */

View File

@ -6,11 +6,7 @@ import com.dahe.gldriver.databinding.ActivitySelectRoleBinding
import com.dahe.gldriver.net.BaseObserver import com.dahe.gldriver.net.BaseObserver
import com.dahe.gldriver.net.DataManager import com.dahe.gldriver.net.DataManager
import com.dahe.gldriver.net.RxHttpCallBack import com.dahe.gldriver.net.RxHttpCallBack
import com.dahe.gldriver.ui.account.authperson.AuthBankCardActivity
import com.dahe.gldriver.ui.account.authperson.AuthDriverActivity
import com.dahe.gldriver.ui.account.authperson.AuthDrivingActivity import com.dahe.gldriver.ui.account.authperson.AuthDrivingActivity
import com.dahe.gldriver.ui.account.authperson.AuthPersonActivity
import com.dahe.gldriver.ui.account.authperson.AuthQualificationActivity
import com.dahe.gldriver.ui.account.authteam.AuthTeamActivity import com.dahe.gldriver.ui.account.authteam.AuthTeamActivity
import com.dahe.mylibrary.base.BaseActivity import com.dahe.mylibrary.base.BaseActivity
import com.dahe.mylibrary.net.CommonResponseBean import com.dahe.mylibrary.net.CommonResponseBean

View File

@ -3,7 +3,6 @@ package com.dahe.gldriver.ui.account.authperson
import android.os.Bundle import android.os.Bundle
import com.dahe.gldriver.R import com.dahe.gldriver.R
import com.dahe.gldriver.bean.OcrPersonBean import com.dahe.gldriver.bean.OcrPersonBean
import com.dahe.gldriver.bean.OssBean
import com.dahe.gldriver.bean.UpPersonInfoBean import com.dahe.gldriver.bean.UpPersonInfoBean
import com.dahe.gldriver.databinding.ActivityAuthPersonBinding import com.dahe.gldriver.databinding.ActivityAuthPersonBinding
import com.dahe.gldriver.net.BaseObserver import com.dahe.gldriver.net.BaseObserver
@ -11,7 +10,6 @@ import com.dahe.gldriver.net.DataManager
import com.dahe.gldriver.net.RxHttpCallBack import com.dahe.gldriver.net.RxHttpCallBack
import com.dahe.gldriver.oss.OssServiceUtil import com.dahe.gldriver.oss.OssServiceUtil
import com.dahe.gldriver.utils.OcrUtils import com.dahe.gldriver.utils.OcrUtils
import com.dahe.glex.bean.UserBean
import com.dahe.mylibrary.base.BaseActivity import com.dahe.mylibrary.base.BaseActivity
import com.dahe.mylibrary.net.CommonResponseBean import com.dahe.mylibrary.net.CommonResponseBean
import com.dahe.mylibrary.utils.ActivityUtils import com.dahe.mylibrary.utils.ActivityUtils
@ -20,7 +18,6 @@ import com.dahe.mylibrary.utils.PickerUtils
import com.dahe.mylibrary.utils.PopsUtils import com.dahe.mylibrary.utils.PopsUtils
import com.dahe.mylibrary.utils.TimeUtil import com.dahe.mylibrary.utils.TimeUtil
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
import io.reactivex.rxjava3.functions.Function
import io.reactivex.rxjava3.schedulers.Schedulers import io.reactivex.rxjava3.schedulers.Schedulers
import okhttp3.MediaType.Companion.toMediaTypeOrNull import okhttp3.MediaType.Companion.toMediaTypeOrNull
import okhttp3.MultipartBody import okhttp3.MultipartBody

View File

@ -5,8 +5,6 @@ import android.view.View
import com.dahe.gldriver.R import com.dahe.gldriver.R
import com.dahe.gldriver.bean.AuthTeamBean import com.dahe.gldriver.bean.AuthTeamBean
import com.dahe.gldriver.bean.OcrPersonBean import com.dahe.gldriver.bean.OcrPersonBean
import com.dahe.gldriver.bean.UpPersonInfoBean
import com.dahe.gldriver.callback.PicPath
import com.dahe.gldriver.databinding.ActivityAuthTeamBinding import com.dahe.gldriver.databinding.ActivityAuthTeamBinding
import com.dahe.gldriver.net.BaseObserver import com.dahe.gldriver.net.BaseObserver
import com.dahe.gldriver.net.DataManager import com.dahe.gldriver.net.DataManager
@ -16,17 +14,11 @@ import com.dahe.gldriver.utils.OcrUtils
import com.dahe.mylibrary.base.BaseActivity import com.dahe.mylibrary.base.BaseActivity
import com.dahe.mylibrary.net.CommonResponseBean import com.dahe.mylibrary.net.CommonResponseBean
import com.dahe.mylibrary.utils.ImageLoader import com.dahe.mylibrary.utils.ImageLoader
import com.dahe.mylibrary.utils.LoadingUtils
import com.dahe.mylibrary.utils.LoadingUtils3
import com.dahe.mylibrary.utils.PickerUtils import com.dahe.mylibrary.utils.PickerUtils
import com.dahe.mylibrary.utils.PopsUtils import com.dahe.mylibrary.utils.PopsUtils
import com.dahe.mylibrary.utils.TimeUtil import com.dahe.mylibrary.utils.TimeUtil
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
import io.reactivex.rxjava3.schedulers.Schedulers import io.reactivex.rxjava3.schedulers.Schedulers
import okhttp3.MediaType.Companion.toMediaTypeOrNull
import okhttp3.MultipartBody
import okhttp3.RequestBody.Companion.asRequestBody
import java.io.File
/** /**
* @ClassName AuthTeamActivity * @ClassName AuthTeamActivity

View File

@ -5,11 +5,11 @@ import android.os.Bundle
import android.widget.LinearLayout import android.widget.LinearLayout
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import com.amap.api.services.route.DistanceSearch
import com.dahe.gldriver.R import com.dahe.gldriver.R
import com.dahe.gldriver.adapter.GridItemAdapter import com.dahe.gldriver.adapter.GridItemAdapter
import com.dahe.gldriver.adapter.WaybillAdapter import com.dahe.gldriver.adapter.WaybillAdapter
import com.dahe.gldriver.base.AppConfig import com.dahe.gldriver.base.AppConfig
import com.dahe.gldriver.bean.CarBean
import com.dahe.gldriver.bean.GridBean import com.dahe.gldriver.bean.GridBean
import com.dahe.gldriver.databinding.FragmentHomeBinding import com.dahe.gldriver.databinding.FragmentHomeBinding
import com.dahe.gldriver.event.OrderStauEvent import com.dahe.gldriver.event.OrderStauEvent
@ -17,8 +17,8 @@ import com.dahe.gldriver.net.BaseObserver
import com.dahe.gldriver.net.DataManager import com.dahe.gldriver.net.DataManager
import com.dahe.gldriver.net.RxHttpCallBack import com.dahe.gldriver.net.RxHttpCallBack
import com.dahe.gldriver.ui.waybill.activity.WaybillDetailActivity import com.dahe.gldriver.ui.waybill.activity.WaybillDetailActivity
import com.dahe.gldriver.ui.waybill.activity.WaybillLoadActivity import com.dahe.gldriver.utils.CommonPopUtils
import com.dahe.gldriver.ui.waybill.activity.WaybillUnlLoadActivity import com.dahe.gldriver.utils.OrderUtils
import com.dahe.glex.bean.OrderBean import com.dahe.glex.bean.OrderBean
import com.dahe.mylibrary.base.BaseFragment import com.dahe.mylibrary.base.BaseFragment
import com.dahe.mylibrary.callback.RefreshCallBack import com.dahe.mylibrary.callback.RefreshCallBack
@ -26,7 +26,6 @@ import com.dahe.mylibrary.net.CommonResponseBean
import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider
import com.dahe.mylibrary.utils.ActivityUtils import com.dahe.mylibrary.utils.ActivityUtils
import com.dahe.mylibrary.utils.ConvertUtils import com.dahe.mylibrary.utils.ConvertUtils
import com.flyco.tablayout.CommonTabLayout
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
import io.reactivex.rxjava3.schedulers.Schedulers import io.reactivex.rxjava3.schedulers.Schedulers
import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.EventBus
@ -135,21 +134,14 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(), RefreshCallBack {
mContext, mContext,
WaybillDetailActivity::class.java, WaybillDetailActivity::class.java,
Bundle().apply { putString(AppConfig.ORDER_ID, items[position].orderId) }) Bundle().apply { putString(AppConfig.ORDER_ID, items[position].orderId) })
}
addOnItemChildClickListener(R.id.btnOk) { adapter, view, position ->
OrderUtils.getInstance().goReceWaybill(mContext, items[position].orderId)
// ActivityUtils.startActivity( // ActivityUtils.startActivity(
// mContext, // mContext,
// WaybillDetailActivity::class.java, // WaybillDetailActivity::class.java,
// Bundle().apply { putString(AppConfig.ORDER_ID, items[position].orderId) }) // Bundle().apply { putString(AppConfig.ORDER_ID, items[position].orderId) })
} }
addOnItemChildClickListener(R.id.btnOk) { adapter, view, position ->
ActivityUtils.startActivity(
mContext,
WaybillDetailActivity::class.java,
Bundle().apply { putString(AppConfig.ORDER_ID, items[position].orderId) })
// ActivityUtils.startActivity(mContext, WaybillDetailActivity::class.java)
}
} }
} }

View File

@ -21,6 +21,7 @@ import com.dahe.gldriver.net.DataManager
import com.dahe.gldriver.net.RxHttpCallBack import com.dahe.gldriver.net.RxHttpCallBack
import com.dahe.gldriver.utils.GDLocationUtils import com.dahe.gldriver.utils.GDLocationUtils
import com.dahe.gldriver.utils.LocationUtils import com.dahe.gldriver.utils.LocationUtils
import com.dahe.gldriver.utils.OrderUtils
import com.dahe.glex.bean.OrderBean import com.dahe.glex.bean.OrderBean
import com.dahe.mylibrary.base.BaseActivity import com.dahe.mylibrary.base.BaseActivity
import com.dahe.mylibrary.net.CommonResponseBean import com.dahe.mylibrary.net.CommonResponseBean
@ -54,14 +55,16 @@ class WaybillDetailActivity : BaseActivity<ActivityWaybillDetailBinding>() {
BaseUtils.callPhone(this@WaybillDetailActivity, "15838201105") BaseUtils.callPhone(this@WaybillDetailActivity, "15838201105")
} }
binding.btnReceiving.setOnClickListener { binding.btnReceiving.setOnClickListener {
DataManager.getInstance().receivingOrders(orderId, "22") OrderUtils.getInstance().goReceWaybill(mContext, orderId)
.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
.subscribe(BaseObserver(mContext, object : RxHttpCallBack<String>() { // DataManager.getInstance().receivingOrders(orderId, "22")
override fun onSuccess(t: CommonResponseBean<String>) { // .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
super.onSuccess(t) // .subscribe(BaseObserver(mContext, object : RxHttpCallBack<String>() {
EventBus.getDefault().post(OrderStauEvent(1)) // override fun onSuccess(t: CommonResponseBean<String>) {
} // super.onSuccess(t)
})) // EventBus.getDefault().post(OrderStauEvent(1))
// }
// }))
} }
@ -150,52 +153,6 @@ class WaybillDetailActivity : BaseActivity<ActivityWaybillDetailBinding>() {
} }
} }
// private fun initXml(data: OrderDetailBean) {
// val load = data.orderChildList.find { it.type == "1" }
// val unLoad = data.orderChildList.find { it.type == "2" }
//
// binding.run {
// tvTime.text = data.receiverDeadline
// tvType.text = if (data.orderType == "0") "一装一卸" else "一装多卸"
// tvLoad.text = load?.address
// tvPhone.text = """${load?.name} ${load?.phone}"""
//
// tvUnload.text = unLoad?.address
// tvUnloadPhone.text = """${unLoad?.name} ${unLoad?.phone}"""
//
//
// tvCom.text = data?.receiverBusinessName
// tvConsignor.text = data?.realCompanyName
// tvFreight.text = data?.driverFreight.toString()
//
//
//
//
//
// btnCall.setOnClickListener {
//
// PermissionX.init(this@WaybillDetailActivity)
// .permissions(Manifest.permission.CALL_PHONE)
// .request { allGranted, grantedList, deniedList ->
// if (allGranted) {
// BaseUtils.callPhone(
// this@WaybillDetailActivity,
// data.shipperContactPhone
// )
// } else {
// Toast.makeText(
// mContext,
// "开启权限失败,请在应用设置-权限中打开电话权限",
// Toast.LENGTH_SHORT
// ).show()
// }
// }
//
// }
// }
// }
var adapter: WaybillNodeAdapter? = null var adapter: WaybillNodeAdapter? = null
private fun initRecy() { private fun initRecy() {
adapter = binding.recycler.run { adapter = binding.recycler.run {
@ -223,4 +180,8 @@ class WaybillDetailActivity : BaseActivity<ActivityWaybillDetailBinding>() {
} }
} }
private fun receWaybill(){
}
} }

View File

@ -41,7 +41,6 @@ class WaybillLoadActivity : BaseActivity<ActivityWaybillLoadBinding>() {
var aMap: AMap? = null var aMap: AMap? = null
var orderId: String = "" var orderId: String = ""
var waybillId: String = ""
lateinit var orderBean: OrderDetailBean lateinit var orderBean: OrderDetailBean
override fun initView(savedInstanceState: Bundle?) { override fun initView(savedInstanceState: Bundle?) {

View File

@ -1,6 +1,12 @@
package com.dahe.gldriver.utils package com.dahe.gldriver.utils
import android.content.Context
import com.dahe.gldriver.bean.CarBean
import com.dahe.gldriver.mypop.OnCarSelectListener
import com.dahe.gldriver.mypop.PopBottomCar
import com.dahe.mylibrary.base.SingletonNoPHolder import com.dahe.mylibrary.base.SingletonNoPHolder
import com.lxj.xpopup.XPopup
import com.lxj.xpopup.interfaces.OnConfirmListener
/** /**
* @ClassName CommonPopUtils * @ClassName CommonPopUtils
@ -13,5 +19,31 @@ class CommonPopUtils private constructor(){
companion object : SingletonNoPHolder<CommonPopUtils>(::CommonPopUtils) companion object : SingletonNoPHolder<CommonPopUtils>(::CommonPopUtils)
/**
* 选择车辆
* */
fun showCarList(context: Context, cars: MutableList<CarBean>, listener: OnCarSelectListener) {
XPopup.Builder(context)
.isViewMode(true)
// .isDestroyOnDismiss(true) //对于只使用一次的弹窗,推荐设置这个
.asCustom(PopBottomCar(context, cars, listener))
.show()
}
/**
* 装货弹框
* */
fun showLoadPop(context: Context,carBean: CarBean ,listener: OnConfirmListener) {
XPopup.Builder(context)
.isDestroyOnDismiss(true)
.asConfirm(
"去装货", """已选择:${carBean.vehicleNum},是否立即装货""",
"取消", "确定",
listener, null, true
)
.show()
}
} }

View File

@ -1,6 +1,20 @@
package com.dahe.gldriver.utils package com.dahe.gldriver.utils
import android.content.Context
import android.os.Bundle
import com.dahe.gldriver.base.AppConfig
import com.dahe.gldriver.bean.CarBean
import com.dahe.gldriver.event.OrderStauEvent
import com.dahe.gldriver.net.BaseObserver
import com.dahe.gldriver.net.DataManager
import com.dahe.gldriver.net.RxHttpCallBack
import com.dahe.gldriver.ui.waybill.activity.WaybillLoadActivity
import com.dahe.mylibrary.base.SingletonNoPHolder import com.dahe.mylibrary.base.SingletonNoPHolder
import com.dahe.mylibrary.net.CommonResponseBean
import com.dahe.mylibrary.utils.ActivityUtils
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
import io.reactivex.rxjava3.schedulers.Schedulers
import org.greenrobot.eventbus.EventBus
/** /**
* @ClassName OrderUtils * @ClassName OrderUtils
@ -64,4 +78,62 @@ class OrderUtils private constructor() {
} }
} }
} }
/**
*
* 接单包含选择车辆->装货
* */
fun goReceWaybill(context: Context, orderId: String) {
//选择车辆
DataManager.getInstance().carList()
.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
.subscribe(
BaseObserver(context, object : RxHttpCallBack<MutableList<CarBean>>() {
override fun onSuccess(t: CommonResponseBean<MutableList<CarBean>>) {
super.onSuccess(t)
if (t.data.size > 0) {//多辆车需选择车辆,单个车辆直接接单
CommonPopUtils.getInstance()
.showCarList(context, t.data) {
//接单接口
receivingOrders(context, orderId, it)
}
} else {
//单量车,直接默认当前车辆 ,接单接口
receivingOrders(context, orderId, t.data[0])
}
}
})
)
}
/**
*
*调用接单接口
* */
private fun receivingOrders(context: Context, orderId: String, car: CarBean) {
DataManager.getInstance()
.receivingOrders(orderId, car.carId)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(
BaseObserver(
context,
object : RxHttpCallBack<String>() {
override fun onSuccess(t: CommonResponseBean<String>) {
super.onSuccess(t)
//接单成功,弹窗是否去装货
CommonPopUtils.getInstance()
.showLoadPop(context, car) {
ActivityUtils.startActivity(context,
WaybillLoadActivity::class.java,
Bundle().apply {
putString(AppConfig.ORDER_ID, orderId)
}
)
}
}
})
)
}
} }

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/shape_gray_5" android:state_selected="false"></item>
<item android:drawable="@drawable/shape_select_5" android:state_selected="true"></item>
<item android:drawable="@drawable/shape_gray_5"></item>
</selector>

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="90"
android:endColor="#FAAE90"
android:startColor="#FFE1D5"
android:type="linear"
android:useLevel="true" />
<corners
android:bottomLeftRadius="5dp"
android:bottomRightRadius="5dp"
android:topLeftRadius="5dp"
android:topRightRadius="5dp" />
</shape>

View File

@ -0,0 +1,40 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg_bai"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="@dimen/dp_16"
android:layout_marginBottom="@dimen/dp_20"
android:text="选择车辆"
android:textColor="@color/black"
android:textSize="@dimen/sp_18" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_12"
android:layout_marginRight="@dimen/dp_12" />
<Button
android:id="@+id/btnOk"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_20"
android:layout_marginRight="@dimen/dp_20"
android:layout_marginBottom="@dimen/dp_20"
android:background="@drawable/shape_ok_bg"
android:text="接单"
android:textColor="@color/white"
android:textSize="@dimen/sp_17" />
</LinearLayout>

View File

@ -0,0 +1,57 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/select_car_bg"
android:orientation="vertical"
android:paddingLeft="@dimen/dp_15"
android:paddingTop="@dimen/dp_20"
android:id="@+id/llContent"
android:paddingRight="@dimen/dp_15"
android:paddingBottom="@dimen/dp_20">
<TextView
android:id="@+id/tvCarNum"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="豫A4854S"
android:textColor="@color/black"
android:textSize="@dimen/sp_18" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_12"
android:orientation="horizontal">
<TextView
android:id="@+id/tvCarType"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="重型栏板半挂车"
android:textColor="@color/color_9"
android:textSize="@dimen/sp_14" />
<TextView
android:id="@+id/tvCarLen"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="车长16米"
android:textColor="@color/color_9"
android:textSize="@dimen/sp_14" />
<TextView
android:id="@+id/tvCarWei"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="核定载重40吨"
android:textColor="@color/color_9"
android:textSize="@dimen/sp_14" />
</LinearLayout>
</LinearLayout>

View File

@ -1,100 +0,0 @@
package com.dahe.mylibrary.bean;
import java.io.Serializable;
public class CarBean implements Serializable {
// private String approved_load;
// private String driver_name;
// private String current_load;
// private String car_number;
// private String outline_wide;
// private String outline_long;
// private String driver_phone;
// private Integer car_id;
// private String outline_high;
private boolean isSelect;
private String vehicle;
private String carId;
private String outlineWide;
private String outlineHigh;
private String outlineLong;
private String approvedLoad;
private String driverName;
private String driverPhone;
public String getVehicle() {
return vehicle;
}
public void setVehicle(String vehicle) {
this.vehicle = vehicle;
}
public String getCarId() {
return carId;
}
public void setCarId(String carId) {
this.carId = carId;
}
public String getOutlineWide() {
return outlineWide;
}
public void setOutlineWide(String outlineWide) {
this.outlineWide = outlineWide;
}
public String getOutlineHigh() {
return outlineHigh;
}
public void setOutlineHigh(String outlineHigh) {
this.outlineHigh = outlineHigh;
}
public String getOutlineLong() {
return outlineLong;
}
public void setOutlineLong(String outlineLong) {
this.outlineLong = outlineLong;
}
public String getApprovedLoad() {
return approvedLoad;
}
public void setApprovedLoad(String approvedLoad) {
this.approvedLoad = approvedLoad;
}
public String getDriverName() {
return driverName;
}
public void setDriverName(String driverName) {
this.driverName = driverName;
}
public String getDriverPhone() {
return driverPhone;
}
public void setDriverPhone(String driverPhone) {
this.driverPhone = driverPhone;
}
public boolean isSelect() {
return isSelect;
}
public void setSelect(boolean select) {
isSelect = select;
}
}

View File

@ -2,7 +2,6 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<corners android:topLeftRadius="@dimen/dp_8" <corners android:topLeftRadius="@dimen/dp_8"
android:topRightRadius="@dimen/dp_8" android:topRightRadius="@dimen/dp_8"
android:bottomLeftRadius="@dimen/dp_8" />
android:bottomRightRadius="@dimen/dp_8"/>
<solid android:color="#fff"/> <solid android:color="#fff"/>
</shape> </shape>