装卸货优化
This commit is contained in:
parent
cfc9b81650
commit
3023d57680
@ -137,9 +137,9 @@ dependencies {
|
|||||||
implementation project(path: ':mylibrary')
|
implementation project(path: ':mylibrary')
|
||||||
|
|
||||||
//高德地图
|
//高德地图
|
||||||
implementation 'com.amap.api:map2d:6.0.0'
|
implementation 'com.amap.api:3dmap:9.8.3'
|
||||||
|
|
||||||
//定位功能
|
//定位功能
|
||||||
implementation 'com.amap.api:location:6.4.2'//6.4.2
|
// implementation 'com.amap.api:location:6.4.2'//6.4.2
|
||||||
implementation 'com.amap.api:search:9.7.0'
|
implementation 'com.amap.api:search:9.7.0'
|
||||||
}
|
}
|
@ -15,7 +15,14 @@
|
|||||||
<!--允许程序访问CellID或WiFi热点来获取粗略的位置-->
|
<!--允许程序访问CellID或WiFi热点来获取粗略的位置-->
|
||||||
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
|
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
|
||||||
|
|
||||||
|
<!--用于访问GPS定位-->
|
||||||
|
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
|
||||||
|
<!--用于获取wifi的获取权限,wifi信息会用来进行网络定位-->
|
||||||
|
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
|
||||||
|
<!--用于申请调用A-GPS模块-->
|
||||||
|
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/>
|
||||||
|
<!--如果您的应用需要后台定位权限,且有可能运行在Android Q设备上,并且设置了target>28,必须增加这个权限声明-->
|
||||||
|
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"/>
|
||||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
||||||
<uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE" />
|
<uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE" />
|
||||||
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
|
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
|
||||||
|
@ -3,10 +3,13 @@ package com.dahe.gldriver.adapter
|
|||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import android.widget.Button
|
import android.widget.Button
|
||||||
|
import android.widget.ImageView
|
||||||
import com.chad.library.adapter4.BaseQuickAdapter
|
import com.chad.library.adapter4.BaseQuickAdapter
|
||||||
import com.chad.library.adapter4.viewholder.QuickViewHolder
|
import com.chad.library.adapter4.viewholder.QuickViewHolder
|
||||||
import com.dahe.gldriver.R
|
import com.dahe.gldriver.R
|
||||||
|
import com.dahe.gldriver.bean.CarBean
|
||||||
import com.dahe.glex.bean.WayBillBean
|
import com.dahe.glex.bean.WayBillBean
|
||||||
|
import com.dahe.mylibrary.utils.ImageLoader
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @ClassName WaybillAdapter
|
* @ClassName WaybillAdapter
|
||||||
@ -15,9 +18,17 @@ import com.dahe.glex.bean.WayBillBean
|
|||||||
* @Description TODO
|
* @Description TODO
|
||||||
*/
|
*/
|
||||||
class CarsAdapter :
|
class CarsAdapter :
|
||||||
BaseQuickAdapter<WayBillBean, QuickViewHolder>() {
|
BaseQuickAdapter<CarBean, QuickViewHolder>() {
|
||||||
override fun onBindViewHolder(holder: QuickViewHolder, position: Int, item: WayBillBean?) {
|
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?.toFloat()?.div(1000)}吨""")
|
||||||
|
|
||||||
|
ImageLoader.getInstance()
|
||||||
|
.loadRoundImage(context, item?.carUrl, 6, getView<ImageView>(R.id.ivHead))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreateViewHolder(
|
override fun onCreateViewHolder(
|
||||||
|
@ -3,10 +3,13 @@ package com.dahe.gldriver.adapter
|
|||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import android.widget.Button
|
import android.widget.Button
|
||||||
|
import android.widget.ImageView
|
||||||
import com.chad.library.adapter4.BaseQuickAdapter
|
import com.chad.library.adapter4.BaseQuickAdapter
|
||||||
import com.chad.library.adapter4.viewholder.QuickViewHolder
|
import com.chad.library.adapter4.viewholder.QuickViewHolder
|
||||||
import com.dahe.gldriver.R
|
import com.dahe.gldriver.R
|
||||||
|
import com.dahe.gldriver.bean.DriverBean
|
||||||
import com.dahe.glex.bean.WayBillBean
|
import com.dahe.glex.bean.WayBillBean
|
||||||
|
import com.dahe.mylibrary.utils.ImageLoader
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @ClassName WaybillAdapter
|
* @ClassName WaybillAdapter
|
||||||
@ -15,9 +18,18 @@ import com.dahe.glex.bean.WayBillBean
|
|||||||
* @Description TODO
|
* @Description TODO
|
||||||
*/
|
*/
|
||||||
class DriversAdapter :
|
class DriversAdapter :
|
||||||
BaseQuickAdapter<WayBillBean, QuickViewHolder>() {
|
BaseQuickAdapter<DriverBean, QuickViewHolder>() {
|
||||||
override fun onBindViewHolder(holder: QuickViewHolder, position: Int, item: WayBillBean?) {
|
override fun onBindViewHolder(holder: QuickViewHolder, position: Int, item: DriverBean?) {
|
||||||
|
item?.let {
|
||||||
|
holder.run {
|
||||||
|
setText(R.id.tvName,it.idcardName)
|
||||||
|
setText(R.id.tvPhone,it.driverPhone)
|
||||||
|
setText(R.id.tvDays,"""加入${it.diffDay}天""")
|
||||||
|
ImageLoader.getInstance()
|
||||||
|
.loadRoundImage(context, it.driverAvatar, 6, getView<ImageView>(R.id.ivHead))
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreateViewHolder(
|
override fun onCreateViewHolder(
|
||||||
|
22
app/src/main/java/com/dahe/gldriver/bean/DriverBean.kt
Normal file
22
app/src/main/java/com/dahe/gldriver/bean/DriverBean.kt
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
package com.dahe.gldriver.bean
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @ClassName DriverBean
|
||||||
|
* @Author john
|
||||||
|
* @Date 2024/3/6 17:10
|
||||||
|
* @Description TODO
|
||||||
|
*/
|
||||||
|
data class DriverBean(
|
||||||
|
val bindTime: String,
|
||||||
|
val captainId: String,
|
||||||
|
val createTime: String,
|
||||||
|
val diffDay: String,
|
||||||
|
val driverAvatar: String,
|
||||||
|
val driverId: String,
|
||||||
|
val driverPhone: String,
|
||||||
|
val idcardName: String,
|
||||||
|
val idcardSex: String,
|
||||||
|
val isRealName: String,
|
||||||
|
val joinStatus: String,
|
||||||
|
val level: String
|
||||||
|
)
|
@ -21,6 +21,8 @@ data class OrderBean(
|
|||||||
val orderId: String= "",
|
val orderId: String= "",
|
||||||
val orderNum: String= "",
|
val orderNum: String= "",
|
||||||
val orderStatus: String= "",
|
val orderStatus: String= "",
|
||||||
|
val waybillId: String= "",
|
||||||
|
val orderChildreId: String= "",
|
||||||
val orderType: String= "",
|
val orderType: String= "",
|
||||||
val passingPointsNum: String= "",
|
val passingPointsNum: String= "",
|
||||||
val realCompanyName: String= "",
|
val realCompanyName: String= "",
|
||||||
|
@ -29,6 +29,7 @@ data class OrderDetailBean(
|
|||||||
val vehicleLength: String,
|
val vehicleLength: String,
|
||||||
val vehicleType: String,
|
val vehicleType: String,
|
||||||
val waybillId: String,
|
val waybillId: String,
|
||||||
|
val vehicleNum: String,
|
||||||
val waybillInfo: WaybillInfo
|
val waybillInfo: WaybillInfo
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -92,5 +93,8 @@ data class WaybillInfo(
|
|||||||
val trailerVehicleNum: String,
|
val trailerVehicleNum: String,
|
||||||
val unloadTime: String,
|
val unloadTime: String,
|
||||||
val vehicleNum: String,
|
val vehicleNum: String,
|
||||||
|
val carLong: String,
|
||||||
|
val approvedLoad: String,
|
||||||
|
val vehicleType: String,
|
||||||
val waybillId: String
|
val waybillId: String
|
||||||
)
|
)
|
@ -19,7 +19,7 @@ data class UpPicBean(
|
|||||||
var province: String= "",
|
var province: String= "",
|
||||||
var provinceCityArea: String= "",
|
var provinceCityArea: String= "",
|
||||||
var provinceCode: String= "",
|
var provinceCode: String= "",
|
||||||
var type: String= "",
|
var type: String= "",//1装货,2卸货
|
||||||
var waybillId: String= "",
|
var waybillId: String= "",
|
||||||
var waybillPhotoList: MutableList<WaybillPhoto> = mutableListOf<WaybillPhoto>()
|
var waybillPhotoList: MutableList<WaybillPhoto> = mutableListOf<WaybillPhoto>()
|
||||||
)
|
)
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
package com.dahe.glex.bean
|
package com.dahe.glex.bean
|
||||||
|
|
||||||
|
import retrofit2.http.GET
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @ClassName UserBean
|
* @ClassName UserBean
|
||||||
* @Author 用户
|
* @Author 用户
|
||||||
@ -8,6 +10,7 @@ package com.dahe.glex.bean
|
|||||||
*/
|
*/
|
||||||
data class UserBean(
|
data class UserBean(
|
||||||
var access_token :String,
|
var access_token :String,
|
||||||
|
var token :String,
|
||||||
var id :String,
|
var id :String,
|
||||||
var roleId :String,
|
var roleId :String,
|
||||||
var uname :String,
|
var uname :String,
|
||||||
@ -24,5 +27,10 @@ data class UserBean(
|
|||||||
var isCar :String,
|
var isCar :String,
|
||||||
var qrcodeUrl :String,
|
var qrcodeUrl :String,
|
||||||
var expires_in :Int,
|
var expires_in :Int,
|
||||||
var credit :String
|
var credit :String,
|
||||||
|
var isCarCaptain :String,
|
||||||
|
var contactName :String,
|
||||||
|
var idcardName :String,
|
||||||
|
var captainId :String
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -1,8 +1,10 @@
|
|||||||
package com.dahe.gldriver.net
|
package com.dahe.gldriver.net
|
||||||
|
|
||||||
import com.dahe.gldriver.BuildConfig
|
import com.dahe.gldriver.BuildConfig
|
||||||
|
import com.dahe.gldriver.BuildConfig.BASE_URL
|
||||||
import com.dahe.gldriver.bean.AuthTeamBean
|
import com.dahe.gldriver.bean.AuthTeamBean
|
||||||
import com.dahe.gldriver.bean.CarBean
|
import com.dahe.gldriver.bean.CarBean
|
||||||
|
import com.dahe.gldriver.bean.DriverBean
|
||||||
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
|
||||||
@ -145,7 +147,7 @@ interface Api {
|
|||||||
fun selectMyWaybillList(
|
fun selectMyWaybillList(
|
||||||
@Query("pageNum") pageNum: Int = 1,
|
@Query("pageNum") pageNum: Int = 1,
|
||||||
@Query("pageSize") pageSize: Int = 20,
|
@Query("pageSize") pageSize: Int = 20,
|
||||||
@Query("waybillStatus") waybillStatus: String ="",
|
@Query("waybillStatus") waybillStatus: String = "",
|
||||||
@Query("searchValue") searchValue: String = ""
|
@Query("searchValue") searchValue: String = ""
|
||||||
): Observable<CommonResponseBean<MutableList<OrderBean>>>
|
): Observable<CommonResponseBean<MutableList<OrderBean>>>
|
||||||
|
|
||||||
@ -156,12 +158,6 @@ 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>>>
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 司机接单
|
* 司机接单
|
||||||
@ -184,6 +180,30 @@ interface Api {
|
|||||||
@GET(BASE_URL + "driver/driver/setUpDriverRole")
|
@GET(BASE_URL + "driver/driver/setUpDriverRole")
|
||||||
fun setUpDriverRole(@Query("role") role: String): Observable<CommonResponseBean<String>>
|
fun setUpDriverRole(@Query("role") role: String): Observable<CommonResponseBean<String>>
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* 车辆列表
|
||||||
|
* */
|
||||||
|
@GET(BASE_URL + "driver/car/carList")
|
||||||
|
fun carList(): Observable<CommonResponseBean<MutableList<CarBean>>>
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* 解绑车辆
|
||||||
|
* */
|
||||||
|
@POST(BASE_URL + "driver/car/unBindCar")
|
||||||
|
fun unBindCar(@Body carBean: CarBean): Observable<CommonResponseBean<String>>
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询车队所属的司机列表(包含车辆)
|
||||||
|
* @return Observable<CommonResponseBean<MutableList<DriverBean>>>
|
||||||
|
*/
|
||||||
|
@GET(BASE_URL + "driver/captain/selectDriversInCaptain")
|
||||||
|
fun selectDriversInCaptain(@Query("captainId") captainId: String): Observable<CommonResponseBean<MutableList<DriverBean>>>
|
||||||
|
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
// String BASE_URL = "https://tmstest.dahehuoyun.com/";
|
// String BASE_URL = "https://tmstest.dahehuoyun.com/";
|
||||||
const val BASE_URL = BuildConfig.BASE_URL
|
const val BASE_URL = BuildConfig.BASE_URL
|
||||||
|
@ -20,13 +20,12 @@ class RequestHeadInterceptor : Interceptor {
|
|||||||
@Throws(IOException::class)
|
@Throws(IOException::class)
|
||||||
override fun intercept(chain: Interceptor.Chain): Response {
|
override fun intercept(chain: Interceptor.Chain): Response {
|
||||||
val builder: Request.Builder = chain.request().newBuilder()
|
val builder: Request.Builder = chain.request().newBuilder()
|
||||||
var tokken = SPUtils.instance.getUserInfo(App.app)?.access_token
|
|
||||||
|
|
||||||
if (BaseSPUtils.hasUserInfo(App.app) && !TextUtils.isEmpty(SPUtils.instance.getUserInfo(App.app)?.access_token)) {
|
if (!TextUtils.isEmpty(SPUtils.instance.getUserToken(App.app))) {
|
||||||
|
|
||||||
// builder.addHeader("Authorization", SPUtils.getUserInfo(App.getApp()).getToken());
|
// builder.addHeader("Authorization", SPUtils.getUserInfo(App.getApp()).getToken());
|
||||||
builder.addHeader("Authorization",
|
builder.addHeader("Authorization",
|
||||||
"Bearer " + SPUtils.instance.getUserInfo(App.app)?.access_token)
|
"Bearer " + SPUtils.instance.getUserToken(App.app))
|
||||||
}
|
}
|
||||||
val request: Request = builder
|
val request: Request = builder
|
||||||
.addHeader("versionCode", AppUtils.getAppVersionCode().toString() + "")
|
.addHeader("versionCode", AppUtils.getAppVersionCode().toString() + "")
|
||||||
|
@ -26,7 +26,7 @@ class LauncherActivity : BaseActivity<ActivityLauncherBinding>() {
|
|||||||
//已登录,直接跳转首页
|
//已登录,直接跳转首页
|
||||||
val userInfo = SPUtils.instance.getUserInfo(mContext)
|
val userInfo = SPUtils.instance.getUserInfo(mContext)
|
||||||
//
|
//
|
||||||
if (userInfo != null && StringUtils.isNotEmpty(userInfo.access_token)) {
|
if (userInfo != null && StringUtils.isNotEmpty(userInfo.token)) {
|
||||||
ActivityUtils.startActivity(mContext, LoginActivity::class.java, intent.extras)
|
ActivityUtils.startActivity(mContext, LoginActivity::class.java, intent.extras)
|
||||||
} else {
|
} else {
|
||||||
ActivityUtils.startActivity(this@LauncherActivity, LoginActivity::class.java)
|
ActivityUtils.startActivity(this@LauncherActivity, LoginActivity::class.java)
|
||||||
@ -45,7 +45,7 @@ class LauncherActivity : BaseActivity<ActivityLauncherBinding>() {
|
|||||||
//已登录,直接跳转首页
|
//已登录,直接跳转首页
|
||||||
//已登录,直接跳转首页
|
//已登录,直接跳转首页
|
||||||
val userInfo = SPUtils.instance.getUserInfo(mContext)
|
val userInfo = SPUtils.instance.getUserInfo(mContext)
|
||||||
if (userInfo != null && StringUtils.isNotEmpty(userInfo.access_token)) {
|
if (userInfo != null && StringUtils.isNotEmpty(userInfo.token)) {
|
||||||
ActivityUtils.startActivity(
|
ActivityUtils.startActivity(
|
||||||
mContext,
|
mContext,
|
||||||
SelectRoleActivity::class.java,
|
SelectRoleActivity::class.java,
|
||||||
|
@ -51,14 +51,17 @@ class CodeLoginActivity : BaseActivity<ActivityCodeBinding>(), View.OnClickListe
|
|||||||
// setResult(RESULT_OK, Intent().apply { putExtra(AppConfig.CODE, "2024") })
|
// setResult(RESULT_OK, Intent().apply { putExtra(AppConfig.CODE, "2024") })
|
||||||
// finish()
|
// finish()
|
||||||
DataManager.getInstance().login(phone, "2024")
|
DataManager.getInstance().login(phone, "2024")
|
||||||
|
.flatMap {
|
||||||
|
//两个接口token字段名称不一致,先进行保存
|
||||||
|
SPUtils.instance.setUserToken(mContext,it.data.access_token)
|
||||||
|
DataManager.getInstance().getUserInfo()
|
||||||
|
}
|
||||||
.subscribeOn(Schedulers.io())
|
.subscribeOn(Schedulers.io())
|
||||||
.observeOn(AndroidSchedulers.mainThread())
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
.subscribe(BaseObserver(mContext, object : RxHttpCallBack<UserBean>() {
|
.subscribe(BaseObserver(mContext, object : RxHttpCallBack<UserBean>() {
|
||||||
override fun onSuccess(t: CommonResponseBean<UserBean>) {
|
override fun onSuccess(t: CommonResponseBean<UserBean>) {
|
||||||
super.onSuccess(t)
|
super.onSuccess(t)
|
||||||
SPUtils.instance.setUserInfo(mContext, Gson().toJson(t.data))
|
SPUtils.instance.setUserInfo(mContext, Gson().toJson(t.data))
|
||||||
|
|
||||||
|
|
||||||
ActivityUtils.startActivity(
|
ActivityUtils.startActivity(
|
||||||
mContext,
|
mContext,
|
||||||
SelectRoleActivity::class.java
|
SelectRoleActivity::class.java
|
||||||
|
@ -52,15 +52,6 @@ class CarTeamActivity : BaseActivity<ActivityCarTeamBinding>() {
|
|||||||
// pagerAdapter.addFragment(AllWaybillFragment())
|
// pagerAdapter.addFragment(AllWaybillFragment())
|
||||||
|
|
||||||
|
|
||||||
binding.circleBarView.setProgress(30f,1000)
|
|
||||||
|
|
||||||
binding.circleBarView2.run {
|
|
||||||
text = "完成度"
|
|
||||||
valueText = "10"
|
|
||||||
unitText= "%"
|
|
||||||
progress = 20
|
|
||||||
}
|
|
||||||
|
|
||||||
mFragmentContainerHelper.handlePageSelected(0,true)
|
mFragmentContainerHelper.handlePageSelected(0,true)
|
||||||
|
|
||||||
binding.viewPager.adapter = pagerAdapter
|
binding.viewPager.adapter = pagerAdapter
|
||||||
|
@ -6,14 +6,23 @@ 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 androidx.recyclerview.widget.RecyclerView.LayoutManager
|
import androidx.recyclerview.widget.RecyclerView.LayoutManager
|
||||||
|
import com.chad.library.adapter4.BaseQuickAdapter
|
||||||
import com.dahe.gldriver.R
|
import com.dahe.gldriver.R
|
||||||
import com.dahe.gldriver.adapter.CarsAdapter
|
import com.dahe.gldriver.adapter.CarsAdapter
|
||||||
import com.dahe.gldriver.adapter.WaybillAdapter
|
import com.dahe.gldriver.adapter.WaybillAdapter
|
||||||
|
import com.dahe.gldriver.bean.CarBean
|
||||||
import com.dahe.gldriver.databinding.ActivityCarsManBinding
|
import com.dahe.gldriver.databinding.ActivityCarsManBinding
|
||||||
|
import com.dahe.gldriver.net.BaseObserver
|
||||||
|
import com.dahe.gldriver.net.DataManager
|
||||||
|
import com.dahe.gldriver.net.RxHttpCallBack
|
||||||
|
import com.dahe.gldriver.utils.CommonPopUtils
|
||||||
import com.dahe.glex.bean.WayBillBean
|
import com.dahe.glex.bean.WayBillBean
|
||||||
import com.dahe.mylibrary.base.BaseActivity
|
import com.dahe.mylibrary.base.BaseActivity
|
||||||
|
import com.dahe.mylibrary.net.CommonResponseBean
|
||||||
import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider
|
import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider
|
||||||
import com.dahe.mylibrary.utils.ConvertUtils
|
import com.dahe.mylibrary.utils.ConvertUtils
|
||||||
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @ClassName CarsManActivity
|
* @ClassName CarsManActivity
|
||||||
@ -22,23 +31,15 @@ import com.dahe.mylibrary.utils.ConvertUtils
|
|||||||
* @Description 车辆管理
|
* @Description 车辆管理
|
||||||
*/
|
*/
|
||||||
class CarsManActivity : BaseActivity<ActivityCarsManBinding>() {
|
class CarsManActivity : BaseActivity<ActivityCarsManBinding>() {
|
||||||
|
|
||||||
|
lateinit var adapter: CarsAdapter
|
||||||
override fun initView(savedInstanceState: Bundle?) {
|
override fun initView(savedInstanceState: Bundle?) {
|
||||||
setStatusBarColor(R.color.white)
|
setStatusBarColor(R.color.white)
|
||||||
setTitleBar("车辆管理",true)
|
setTitleBar("车辆管理", true)
|
||||||
|
|
||||||
|
|
||||||
var datas = mutableListOf<WayBillBean>(
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean()
|
|
||||||
)
|
|
||||||
|
|
||||||
var adapter = binding.recycler.run {
|
adapter = binding.recycler.run {
|
||||||
layoutManager = LinearLayoutManager(mContext, RecyclerView.VERTICAL, false)
|
layoutManager = LinearLayoutManager(mContext, RecyclerView.VERTICAL, false)
|
||||||
addItemDecoration(
|
addItemDecoration(
|
||||||
RecycleViewDivider(
|
RecycleViewDivider(
|
||||||
@ -49,12 +50,34 @@ class CarsManActivity : BaseActivity<ActivityCarsManBinding>() {
|
|||||||
)
|
)
|
||||||
adapter = CarsAdapter()
|
adapter = CarsAdapter()
|
||||||
adapter as CarsAdapter
|
adapter as CarsAdapter
|
||||||
|
}.apply {
|
||||||
|
addOnItemChildClickListener(R.id.tvUnbind) { adapter, view, position ->
|
||||||
|
CommonPopUtils.getInstance()
|
||||||
|
.showCommCenterPop(mContext, content = """您确定解绑:${items[position].vehicleNum}么?"""){
|
||||||
|
DataManager.getInstance().unBindCar(items[position])
|
||||||
|
.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
|
||||||
|
.subscribe(BaseObserver(mContext,object : RxHttpCallBack<String>(){
|
||||||
|
override fun onSuccess(t: CommonResponseBean<String>) {
|
||||||
|
super.onSuccess(t)
|
||||||
|
initDate()
|
||||||
|
}
|
||||||
|
}))
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
adapter.submitList(datas)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun initDate() {
|
override fun initDate() {
|
||||||
|
DataManager.getInstance().carList()
|
||||||
|
.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
|
||||||
|
.subscribe(
|
||||||
|
BaseObserver(mContext, object : RxHttpCallBack<MutableList<CarBean>>() {
|
||||||
|
override fun onSuccess(t: CommonResponseBean<MutableList<CarBean>>) {
|
||||||
|
super.onSuccess(t)
|
||||||
|
adapter.submitList(t.data)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -29,16 +29,6 @@ class CarsManFragment : BaseFragment<FragmentWaybillListBinding>() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun onFragmentFirstVisible() {
|
override fun onFragmentFirstVisible() {
|
||||||
var datas = mutableListOf<WayBillBean>(
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean()
|
|
||||||
)
|
|
||||||
|
|
||||||
var adapter = binding.recyclerView.run {
|
var adapter = binding.recyclerView.run {
|
||||||
layoutManager = LinearLayoutManager(mContext, RecyclerView.VERTICAL, false)
|
layoutManager = LinearLayoutManager(mContext, RecyclerView.VERTICAL, false)
|
||||||
@ -53,6 +43,5 @@ class CarsManFragment : BaseFragment<FragmentWaybillListBinding>() {
|
|||||||
adapter as CarsAdapter
|
adapter as CarsAdapter
|
||||||
}
|
}
|
||||||
|
|
||||||
adapter.submitList(datas)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -10,13 +10,21 @@ import com.dahe.gldriver.R
|
|||||||
import com.dahe.gldriver.adapter.CarsAdapter
|
import com.dahe.gldriver.adapter.CarsAdapter
|
||||||
import com.dahe.gldriver.adapter.DriversAdapter
|
import com.dahe.gldriver.adapter.DriversAdapter
|
||||||
import com.dahe.gldriver.adapter.WaybillAdapter
|
import com.dahe.gldriver.adapter.WaybillAdapter
|
||||||
|
import com.dahe.gldriver.bean.DriverBean
|
||||||
import com.dahe.gldriver.databinding.ActivityCarsManBinding
|
import com.dahe.gldriver.databinding.ActivityCarsManBinding
|
||||||
import com.dahe.gldriver.databinding.FragmentWaybillListBinding
|
import com.dahe.gldriver.databinding.FragmentWaybillListBinding
|
||||||
|
import com.dahe.gldriver.net.BaseObserver
|
||||||
|
import com.dahe.gldriver.net.DataManager
|
||||||
|
import com.dahe.gldriver.net.RxHttpCallBack
|
||||||
|
import com.dahe.gldriver.utils.SPUtils
|
||||||
import com.dahe.glex.bean.WayBillBean
|
import com.dahe.glex.bean.WayBillBean
|
||||||
import com.dahe.mylibrary.base.BaseActivity
|
import com.dahe.mylibrary.base.BaseActivity
|
||||||
import com.dahe.mylibrary.base.BaseFragment
|
import com.dahe.mylibrary.base.BaseFragment
|
||||||
|
import com.dahe.mylibrary.net.CommonResponseBean
|
||||||
import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider
|
import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider
|
||||||
import com.dahe.mylibrary.utils.ConvertUtils
|
import com.dahe.mylibrary.utils.ConvertUtils
|
||||||
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @ClassName CarsManActivity
|
* @ClassName CarsManActivity
|
||||||
@ -26,22 +34,12 @@ import com.dahe.mylibrary.utils.ConvertUtils
|
|||||||
*/
|
*/
|
||||||
class DriversManFragment : BaseFragment<FragmentWaybillListBinding>() {
|
class DriversManFragment : BaseFragment<FragmentWaybillListBinding>() {
|
||||||
|
|
||||||
|
lateinit var adapter : DriversAdapter
|
||||||
override fun onFragmentVisibleChange(isVisible: Boolean) {
|
override fun onFragmentVisibleChange(isVisible: Boolean) {
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onFragmentFirstVisible() {
|
override fun onFragmentFirstVisible() {
|
||||||
var datas = mutableListOf<WayBillBean>(
|
adapter = binding.recyclerView.run {
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean(),
|
|
||||||
WayBillBean()
|
|
||||||
)
|
|
||||||
|
|
||||||
var adapter = binding.recyclerView.run {
|
|
||||||
layoutManager = LinearLayoutManager(mContext, RecyclerView.VERTICAL, false)
|
layoutManager = LinearLayoutManager(mContext, RecyclerView.VERTICAL, false)
|
||||||
addItemDecoration(
|
addItemDecoration(
|
||||||
RecycleViewDivider(
|
RecycleViewDivider(
|
||||||
@ -54,6 +52,18 @@ class DriversManFragment : BaseFragment<FragmentWaybillListBinding>() {
|
|||||||
adapter as DriversAdapter
|
adapter as DriversAdapter
|
||||||
}
|
}
|
||||||
|
|
||||||
adapter.submitList(datas)
|
initData()
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun initData(){
|
||||||
|
|
||||||
|
DataManager.getInstance().selectDriversInCaptain(SPUtils.instance.getUserInfo(mContext)!!.captainId)
|
||||||
|
.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
|
||||||
|
.subscribe(BaseObserver(mContext,object : RxHttpCallBack<MutableList<DriverBean>>(){
|
||||||
|
override fun onSuccess(t: CommonResponseBean<MutableList<DriverBean>>) {
|
||||||
|
super.onSuccess(t)
|
||||||
|
adapter.submitList(t.data)
|
||||||
|
}
|
||||||
|
}))
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -8,21 +8,18 @@ import android.widget.LinearLayout
|
|||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import com.amap.api.maps2d.model.LatLng
|
import com.amap.api.maps.model.LatLng
|
||||||
import com.dahe.gldriver.R
|
import com.dahe.gldriver.R
|
||||||
import com.dahe.gldriver.adapter.WaybillAdapter
|
|
||||||
import com.dahe.gldriver.adapter.WaybillNodeAdapter
|
import com.dahe.gldriver.adapter.WaybillNodeAdapter
|
||||||
import com.dahe.gldriver.base.AppConfig
|
import com.dahe.gldriver.base.AppConfig
|
||||||
import com.dahe.gldriver.bean.OrderDetailBean
|
import com.dahe.gldriver.bean.OrderDetailBean
|
||||||
import com.dahe.gldriver.databinding.ActivityWaybillDetailBinding
|
import com.dahe.gldriver.databinding.ActivityWaybillDetailBinding
|
||||||
import com.dahe.gldriver.event.OrderStauEvent
|
|
||||||
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.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.gldriver.utils.OrderUtils
|
||||||
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
|
||||||
import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider
|
import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider
|
||||||
@ -34,7 +31,6 @@ import com.dahe.mylibrary.utils.SelectPicUtils
|
|||||||
import com.permissionx.guolindev.PermissionX
|
import com.permissionx.guolindev.PermissionX
|
||||||
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
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @ClassName WaybillDetailActivity
|
* @ClassName WaybillDetailActivity
|
||||||
|
@ -8,7 +8,10 @@ import android.widget.LinearLayout
|
|||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import com.amap.api.maps2d.AMap
|
import com.amap.api.maps.AMap
|
||||||
|
import com.amap.api.maps.CameraUpdateFactory
|
||||||
|
import com.amap.api.maps.MapView
|
||||||
|
import com.amap.api.maps.model.LatLng
|
||||||
import com.dahe.gldriver.R
|
import com.dahe.gldriver.R
|
||||||
import com.dahe.gldriver.adapter.WaybillNodeAdapter
|
import com.dahe.gldriver.adapter.WaybillNodeAdapter
|
||||||
import com.dahe.gldriver.base.AppConfig
|
import com.dahe.gldriver.base.AppConfig
|
||||||
@ -18,12 +21,15 @@ 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.utils.GDLocationUtils
|
import com.dahe.gldriver.utils.GDLocationUtils
|
||||||
|
import com.dahe.gldriver.utils.LocationUtils
|
||||||
|
import com.dahe.gldriver.utils.OrderUtils
|
||||||
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.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.BaseUtils
|
import com.dahe.mylibrary.utils.BaseUtils
|
||||||
import com.dahe.mylibrary.utils.ConvertUtils
|
import com.dahe.mylibrary.utils.ConvertUtils
|
||||||
|
import com.dahe.mylibrary.utils.LoadingUtils
|
||||||
import com.dahe.mylibrary.utils.ToastUtils
|
import com.dahe.mylibrary.utils.ToastUtils
|
||||||
import com.permissionx.guolindev.PermissionX
|
import com.permissionx.guolindev.PermissionX
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
@ -38,7 +44,7 @@ import io.reactivex.rxjava3.schedulers.Schedulers
|
|||||||
*/
|
*/
|
||||||
class WaybillLoadActivity : BaseActivity<ActivityWaybillLoadBinding>() {
|
class WaybillLoadActivity : BaseActivity<ActivityWaybillLoadBinding>() {
|
||||||
|
|
||||||
var aMap: AMap? = null
|
lateinit var aMap: AMap
|
||||||
|
|
||||||
var orderId: String = ""
|
var orderId: String = ""
|
||||||
lateinit var orderBean: OrderDetailBean
|
lateinit var orderBean: OrderDetailBean
|
||||||
@ -48,13 +54,16 @@ class WaybillLoadActivity : BaseActivity<ActivityWaybillLoadBinding>() {
|
|||||||
ToastUtils.showToast(mContext, "查看单据")
|
ToastUtils.showToast(mContext, "查看单据")
|
||||||
}
|
}
|
||||||
|
|
||||||
orderId = intent.extras?.getString(AppConfig.ORDER_ID,"").toString()
|
orderId = intent.extras?.getString(AppConfig.ORDER_ID, "").toString()
|
||||||
|
|
||||||
initRecy()
|
initRecy()
|
||||||
|
getLocation()
|
||||||
|
|
||||||
binding.run {
|
binding.run {
|
||||||
mapView.onCreate(savedInstanceState)
|
mapView.onCreate(savedInstanceState)
|
||||||
if (aMap == null) mapView.map
|
aMap = mapView.map.apply {
|
||||||
|
uiSettings.run { isZoomControlsEnabled = false }
|
||||||
|
}
|
||||||
|
|
||||||
btnRight.setOnClickListener {
|
btnRight.setOnClickListener {
|
||||||
var data = orderBean.orderChildList.first { it.type == "1" }
|
var data = orderBean.orderChildList.first { it.type == "1" }
|
||||||
@ -63,9 +72,9 @@ class WaybillLoadActivity : BaseActivity<ActivityWaybillLoadBinding>() {
|
|||||||
WaybillUpPicActivity::class.java,
|
WaybillUpPicActivity::class.java,
|
||||||
Bundle().apply {
|
Bundle().apply {
|
||||||
putInt(AppConfig.SUCCESS_TYPE, 1)
|
putInt(AppConfig.SUCCESS_TYPE, 1)
|
||||||
putString(AppConfig.ORDER_ID,orderId)
|
putString(AppConfig.ORDER_ID, orderId)
|
||||||
putString(AppConfig.WAYBILL_ID,orderBean.waybillId)
|
putString(AppConfig.WAYBILL_ID, orderBean.waybillId)
|
||||||
putString(AppConfig.CHILDRE_ID,data.orderChildreId)
|
putString(AppConfig.CHILDRE_ID, data.orderChildreId)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -79,14 +88,47 @@ class WaybillLoadActivity : BaseActivity<ActivityWaybillLoadBinding>() {
|
|||||||
override fun onSuccess(t: CommonResponseBean<OrderDetailBean>) {
|
override fun onSuccess(t: CommonResponseBean<OrderDetailBean>) {
|
||||||
super.onSuccess(t)
|
super.onSuccess(t)
|
||||||
orderBean = t.data
|
orderBean = t.data
|
||||||
|
val load = orderBean.orderChildList.first { it.type == "1" }
|
||||||
|
var distance = ""
|
||||||
|
loadPos = LatLng(load.latitude.toDouble(), load.longitude.toDouble())
|
||||||
|
LocationUtils.getInstance().changeCamera(loadPos, aMap!!)
|
||||||
|
if (::gdLatLng.isInitialized) {
|
||||||
|
distance = LocationUtils.getInstance().getDistance(
|
||||||
|
gdLatLng,
|
||||||
|
loadPos
|
||||||
|
) + "km"
|
||||||
|
}
|
||||||
|
var goods =
|
||||||
|
t.data.goodsList.map { """${it.goodName},${it.goodItemGrossWeight}吨,${if (it.goodCube.isNullOrEmpty()) "" else it.goodCube + "方"}""" }
|
||||||
|
.reduce { acc, s ->
|
||||||
|
"""${acc}
|
||||||
|
|${s}""".trimMargin()
|
||||||
|
}
|
||||||
binding.run {
|
binding.run {
|
||||||
|
tvWaybillNum.text = """运单号:${orderBean.orderNum}"""
|
||||||
|
tvWaybillStatu.text =
|
||||||
|
OrderUtils.getInstance().getOrderStatu(orderBean.orderStatus)
|
||||||
tvTime.text = orderBean.receiverDeadline
|
tvTime.text = orderBean.receiverDeadline
|
||||||
|
tvComName.text = orderBean.realCompanyName//货主
|
||||||
|
|
||||||
|
tvCarNum.text = orderBean.waybillInfo.vehicleNum
|
||||||
|
tvCarLen.text =
|
||||||
|
"""${orderBean.waybillInfo.carLong}mm/${orderBean.waybillInfo.approvedLoad}吨"""
|
||||||
|
tvCarType.text = orderBean.vehicleType//车辆类型
|
||||||
|
|
||||||
|
if (!distance.isNullOrEmpty()) tvLoadDis.text = distance
|
||||||
|
tvUnloadDis.text = orderBean.distance + "km"
|
||||||
|
|
||||||
|
|
||||||
tvType.text = if (orderBean.orderType == "0") "一装一卸" else "一装多卸"
|
tvType.text = if (orderBean.orderType == "0") "一装一卸" else "一装多卸"
|
||||||
|
|
||||||
tvCom.text = orderBean?.receiverBusinessName
|
tvCom.text = orderBean?.receiverBusinessName//收货方
|
||||||
tvFreight.text = orderBean?.driverFreight.toString()
|
tvFreight.text = orderBean?.driverFreight.toString()
|
||||||
|
|
||||||
|
tvCarInfo.text = """${t.data.vehicleLength} ${t.data.vehicleType}"""
|
||||||
|
tvGoods.text = goods
|
||||||
|
if (!t.data.requirement.isNullOrEmpty()) tvRemark.text = t.data.requirement
|
||||||
|
|
||||||
btnLeft.setOnClickListener {
|
btnLeft.setOnClickListener {
|
||||||
PermissionX.init(this@WaybillLoadActivity)
|
PermissionX.init(this@WaybillLoadActivity)
|
||||||
.permissions(Manifest.permission.CALL_PHONE)
|
.permissions(Manifest.permission.CALL_PHONE)
|
||||||
@ -132,10 +174,7 @@ class WaybillLoadActivity : BaseActivity<ActivityWaybillLoadBinding>() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
if (binding.mapView != null)
|
|
||||||
binding.mapView.onDestroy();
|
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var adapter: WaybillNodeAdapter? = null
|
var adapter: WaybillNodeAdapter? = null
|
||||||
@ -165,4 +204,31 @@ class WaybillLoadActivity : BaseActivity<ActivityWaybillLoadBinding>() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lateinit var gdLatLng: LatLng
|
||||||
|
lateinit var loadPos: LatLng
|
||||||
|
fun getLocation() {
|
||||||
|
GDLocationUtils.instance.getLocation(mContext) {
|
||||||
|
//errCode等于0代表定位成功,其他的为定位失败,具体的可以参照官网定位错误码说明
|
||||||
|
runOnUiThread {
|
||||||
|
LoadingUtils.instance.dissLoading()
|
||||||
|
if (it.getErrorCode() == 0) {
|
||||||
|
it.getLongitude()//经 度
|
||||||
|
it.getLatitude()//纬 度
|
||||||
|
gdLatLng = LatLng(it.latitude, it.longitude)
|
||||||
|
if (::loadPos.isInitialized) {
|
||||||
|
var distance = LocationUtils.getInstance().getDistance(
|
||||||
|
gdLatLng,
|
||||||
|
loadPos
|
||||||
|
) + "km"
|
||||||
|
binding.tvLoadDis.text = distance
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
showToast("定位失败,请检查定位权限是否开启")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -4,10 +4,12 @@ import android.os.Bundle
|
|||||||
import com.dahe.gldriver.R
|
import com.dahe.gldriver.R
|
||||||
import com.dahe.gldriver.base.AppConfig
|
import com.dahe.gldriver.base.AppConfig
|
||||||
import com.dahe.gldriver.databinding.ActivityWaybillSuccBinding
|
import com.dahe.gldriver.databinding.ActivityWaybillSuccBinding
|
||||||
|
import com.dahe.gldriver.ui.HomeActivity
|
||||||
import com.dahe.mylibrary.base.BaseActivity
|
import com.dahe.mylibrary.base.BaseActivity
|
||||||
import com.dahe.mylibrary.utils.ActivityUtils
|
import com.dahe.mylibrary.utils.ActivityUtils
|
||||||
import com.dahe.mylibrary.utils.AppUtils
|
import com.dahe.mylibrary.utils.AppUtils
|
||||||
import com.dahe.mylibrary.utils.BaseUtils
|
import com.dahe.mylibrary.utils.BaseUtils
|
||||||
|
import com.dahe.mylibrary.utils.TimeUtil
|
||||||
import com.dahe.mylibrary.utils.ToastUtils
|
import com.dahe.mylibrary.utils.ToastUtils
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -20,7 +22,7 @@ class WaybillSuccActivity : BaseActivity<ActivityWaybillSuccBinding>() {
|
|||||||
override fun initView(savedInstanceState: Bundle?) {
|
override fun initView(savedInstanceState: Bundle?) {
|
||||||
setStatusBarColor(R.color.white)
|
setStatusBarColor(R.color.white)
|
||||||
val type = intent.extras?.getInt(AppConfig.SUCCESS_TYPE)
|
val type = intent.extras?.getInt(AppConfig.SUCCESS_TYPE)
|
||||||
setTitleBar("接单成功", true)
|
setTitleBar(if (type==0) "接单成功" else if (type==1) "装货成功" else "卸货成功", true)
|
||||||
changeType(type)
|
changeType(type)
|
||||||
binding.run {
|
binding.run {
|
||||||
btnLeft.setOnClickListener {
|
btnLeft.setOnClickListener {
|
||||||
@ -29,6 +31,8 @@ class WaybillSuccActivity : BaseActivity<ActivityWaybillSuccBinding>() {
|
|||||||
btnRight.setOnClickListener {
|
btnRight.setOnClickListener {
|
||||||
goLeftOrRight(type,false)
|
goLeftOrRight(type,false)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tvTime.text = TimeUtil.getNowString("")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -81,7 +85,7 @@ class WaybillSuccActivity : BaseActivity<ActivityWaybillSuccBinding>() {
|
|||||||
if (isLeft){
|
if (isLeft){
|
||||||
when(type){
|
when(type){
|
||||||
0->ActivityUtils.startActivity(mContext, WaybillLoadActivity::class.java)
|
0->ActivityUtils.startActivity(mContext, WaybillLoadActivity::class.java)
|
||||||
1,2->ActivityUtils.startHomeActivity(mContext)
|
1,2->ActivityUtils.finishToActivity(HomeActivity::class.java,false)
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
when(type){
|
when(type){
|
||||||
|
@ -8,22 +8,26 @@ import android.widget.LinearLayout
|
|||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import com.amap.api.maps2d.AMap
|
import com.amap.api.maps.AMap
|
||||||
|
import com.amap.api.maps.model.LatLng
|
||||||
import com.dahe.gldriver.R
|
import com.dahe.gldriver.R
|
||||||
import com.dahe.gldriver.adapter.WaybillNodeAdapter
|
import com.dahe.gldriver.adapter.WaybillNodeAdapter
|
||||||
import com.dahe.gldriver.base.AppConfig
|
import com.dahe.gldriver.base.AppConfig
|
||||||
import com.dahe.gldriver.bean.OrderDetailBean
|
import com.dahe.gldriver.bean.OrderDetailBean
|
||||||
import com.dahe.gldriver.databinding.ActivityWaybillLoadBinding
|
|
||||||
import com.dahe.gldriver.databinding.ActivityWaybillUnloadBinding
|
import com.dahe.gldriver.databinding.ActivityWaybillUnloadBinding
|
||||||
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.utils.GDLocationUtils
|
||||||
|
import com.dahe.gldriver.utils.LocationUtils
|
||||||
|
import com.dahe.gldriver.utils.OrderUtils
|
||||||
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.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.BaseUtils
|
import com.dahe.mylibrary.utils.BaseUtils
|
||||||
import com.dahe.mylibrary.utils.ConvertUtils
|
import com.dahe.mylibrary.utils.ConvertUtils
|
||||||
|
import com.dahe.mylibrary.utils.LoadingUtils
|
||||||
import com.dahe.mylibrary.utils.ToastUtils
|
import com.dahe.mylibrary.utils.ToastUtils
|
||||||
import com.permissionx.guolindev.PermissionX
|
import com.permissionx.guolindev.PermissionX
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
@ -37,7 +41,7 @@ import io.reactivex.rxjava3.schedulers.Schedulers
|
|||||||
*/
|
*/
|
||||||
class WaybillUnlLoadActivity : BaseActivity<ActivityWaybillUnloadBinding>() {
|
class WaybillUnlLoadActivity : BaseActivity<ActivityWaybillUnloadBinding>() {
|
||||||
|
|
||||||
var aMap: AMap? = null
|
lateinit var aMap: AMap
|
||||||
|
|
||||||
|
|
||||||
var orderId: String = ""
|
var orderId: String = ""
|
||||||
@ -50,12 +54,14 @@ class WaybillUnlLoadActivity : BaseActivity<ActivityWaybillUnloadBinding>() {
|
|||||||
}
|
}
|
||||||
orderId = intent.extras?.getString(AppConfig.ORDER_ID, "").toString()
|
orderId = intent.extras?.getString(AppConfig.ORDER_ID, "").toString()
|
||||||
initRecy()
|
initRecy()
|
||||||
|
getLocation()
|
||||||
binding.run {
|
binding.run {
|
||||||
mapView.onCreate(savedInstanceState)
|
mapView.onCreate(savedInstanceState)
|
||||||
if (aMap == null) mapView.map
|
aMap = mapView.map.apply {
|
||||||
|
uiSettings.run { isZoomControlsEnabled = false }
|
||||||
|
}
|
||||||
|
|
||||||
btnRight.setOnClickListener {
|
btnRight.setOnClickListener {
|
||||||
var data = orderBean.orderChildList.first { it.type == "2" }
|
|
||||||
ActivityUtils.startActivity(
|
ActivityUtils.startActivity(
|
||||||
mContext,
|
mContext,
|
||||||
WaybillUpPicActivity::class.java,
|
WaybillUpPicActivity::class.java,
|
||||||
@ -63,7 +69,6 @@ class WaybillUnlLoadActivity : BaseActivity<ActivityWaybillUnloadBinding>() {
|
|||||||
putInt(AppConfig.SUCCESS_TYPE, 2)
|
putInt(AppConfig.SUCCESS_TYPE, 2)
|
||||||
putString(AppConfig.ORDER_ID, orderId)
|
putString(AppConfig.ORDER_ID, orderId)
|
||||||
putString(AppConfig.WAYBILL_ID, orderBean.waybillId)
|
putString(AppConfig.WAYBILL_ID, orderBean.waybillId)
|
||||||
putString(AppConfig.CHILDRE_ID, data.orderChildreId)
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -77,14 +82,47 @@ class WaybillUnlLoadActivity : BaseActivity<ActivityWaybillUnloadBinding>() {
|
|||||||
override fun onSuccess(t: CommonResponseBean<OrderDetailBean>) {
|
override fun onSuccess(t: CommonResponseBean<OrderDetailBean>) {
|
||||||
super.onSuccess(t)
|
super.onSuccess(t)
|
||||||
orderBean = t.data
|
orderBean = t.data
|
||||||
|
val load = orderBean.orderChildList.first { it.type == "1" }
|
||||||
|
var distance = ""
|
||||||
|
loadPos = LatLng(load.latitude.toDouble(), load.longitude.toDouble())
|
||||||
|
LocationUtils.getInstance().changeCamera(loadPos, aMap!!)
|
||||||
|
if (::gdLatLng.isInitialized) {
|
||||||
|
distance = LocationUtils.getInstance().getDistance(
|
||||||
|
gdLatLng,
|
||||||
|
loadPos
|
||||||
|
) + "km"
|
||||||
|
}
|
||||||
|
var goods =
|
||||||
|
t.data.goodsList.map { """${it.goodName},${it.goodItemGrossWeight}吨,${if (it.goodCube.isNullOrEmpty()) "" else it.goodCube + "方"}""" }
|
||||||
|
.reduce { acc, s ->
|
||||||
|
"""${acc}
|
||||||
|
|${s}""".trimMargin()
|
||||||
|
}
|
||||||
binding.run {
|
binding.run {
|
||||||
|
tvWaybillNum.text = """运单号:${orderBean.orderNum}"""
|
||||||
|
tvWaybillStatu.text =
|
||||||
|
OrderUtils.getInstance().getOrderStatu(orderBean.orderStatus)
|
||||||
tvTime.text = orderBean.receiverDeadline
|
tvTime.text = orderBean.receiverDeadline
|
||||||
|
tvComName.text = orderBean.realCompanyName//货主
|
||||||
|
|
||||||
|
tvCarNum.text = orderBean.waybillInfo.vehicleNum
|
||||||
|
tvCarLen.text =
|
||||||
|
"""${orderBean.waybillInfo.carLong}mm/${orderBean.waybillInfo.approvedLoad}吨"""
|
||||||
|
tvCarType.text = orderBean.vehicleType//车辆类型
|
||||||
|
|
||||||
|
if (!distance.isNullOrEmpty()) tvLoadDis.text = distance
|
||||||
|
tvUnloadDis.text = orderBean.distance + "km"
|
||||||
|
|
||||||
|
|
||||||
tvType.text = if (orderBean.orderType == "0") "一装一卸" else "一装多卸"
|
tvType.text = if (orderBean.orderType == "0") "一装一卸" else "一装多卸"
|
||||||
|
|
||||||
tvCom.text = orderBean?.receiverBusinessName
|
tvCom.text = orderBean?.receiverBusinessName//收货方
|
||||||
tvFreight.text = orderBean?.driverFreight.toString()
|
tvFreight.text = orderBean?.driverFreight.toString()
|
||||||
|
|
||||||
|
tvCarInfo.text = """${t.data.vehicleLength} ${t.data.vehicleType}"""
|
||||||
|
tvGoods.text = goods
|
||||||
|
if (!t.data.requirement.isNullOrEmpty()) tvRemark.text = t.data.requirement
|
||||||
|
|
||||||
btnLeft.setOnClickListener {
|
btnLeft.setOnClickListener {
|
||||||
PermissionX.init(this@WaybillUnlLoadActivity)
|
PermissionX.init(this@WaybillUnlLoadActivity)
|
||||||
.permissions(Manifest.permission.CALL_PHONE)
|
.permissions(Manifest.permission.CALL_PHONE)
|
||||||
@ -157,12 +195,30 @@ class WaybillUnlLoadActivity : BaseActivity<ActivityWaybillUnloadBinding>() {
|
|||||||
binding.mapView.onSaveInstanceState(outState);
|
binding.mapView.onSaveInstanceState(outState);
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onDestroy() {
|
lateinit var gdLatLng: LatLng
|
||||||
if (binding.mapView != null)
|
lateinit var loadPos: LatLng
|
||||||
binding.mapView.onDestroy();
|
fun getLocation() {
|
||||||
super.onDestroy()
|
GDLocationUtils.instance.getLocation(mContext) {
|
||||||
|
//errCode等于0代表定位成功,其他的为定位失败,具体的可以参照官网定位错误码说明
|
||||||
|
runOnUiThread {
|
||||||
|
LoadingUtils.instance.dissLoading()
|
||||||
|
if (it.getErrorCode() == 0) {
|
||||||
|
it.getLongitude()//经 度
|
||||||
|
it.getLatitude()//纬 度
|
||||||
|
gdLatLng = LatLng(it.latitude, it.longitude)
|
||||||
|
if (::loadPos.isInitialized) {
|
||||||
|
var distance = LocationUtils.getInstance().getDistance(
|
||||||
|
gdLatLng,
|
||||||
|
loadPos
|
||||||
|
) + "km"
|
||||||
|
binding.tvLoadDis.text = distance
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
showToast("定位失败,请检查定位权限是否开启")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
@ -3,7 +3,7 @@ package com.dahe.gldriver.ui.waybill.activity
|
|||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import androidx.recyclerview.widget.GridLayoutManager
|
import androidx.recyclerview.widget.GridLayoutManager
|
||||||
import com.amap.api.maps2d.model.LatLng
|
import com.amap.api.maps.model.LatLng
|
||||||
import com.dahe.gldriver.base.AppConfig
|
import com.dahe.gldriver.base.AppConfig
|
||||||
import com.dahe.gldriver.bean.UpPicBean
|
import com.dahe.gldriver.bean.UpPicBean
|
||||||
import com.dahe.gldriver.bean.WaybillPhoto
|
import com.dahe.gldriver.bean.WaybillPhoto
|
||||||
@ -112,7 +112,6 @@ class WaybillUpPicActivity : BaseActivity<ActivityWaybillUppicBinding>() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//回单处理
|
//回单处理
|
||||||
recyclerView2.run {
|
recyclerView2.run {
|
||||||
layoutManager =
|
layoutManager =
|
||||||
@ -133,14 +132,14 @@ class WaybillUpPicActivity : BaseActivity<ActivityWaybillUppicBinding>() {
|
|||||||
|
|
||||||
override fun openPicture() {
|
override fun openPicture() {
|
||||||
PopsUtils.getInstance().showSelPic(mContext, myAdapter) {
|
PopsUtils.getInstance().showSelPic(mContext, myAdapter) {
|
||||||
|
|
||||||
OssServiceUtil.getInstance().run {
|
OssServiceUtil.getInstance().run {
|
||||||
asyncPutImage(it[0].realPath, this@WaybillUpPicActivity)
|
asyncPutImage(it[0].realPath, this@WaybillUpPicActivity)
|
||||||
setResultCallBack { data, oldPath ->
|
setResultCallBack { data, oldPath ->
|
||||||
picBean = WaybillPhoto()
|
picBean = WaybillPhoto()
|
||||||
picBean.run {
|
picBean.run {
|
||||||
photoUrl = oldPath
|
photoUrl = oldPath
|
||||||
receiptType = if (type == 1) "4" else if (type == 2) "5" else "6"
|
receiptType =
|
||||||
|
if (type == 1) "4" else if (type == 2) "5" else "6"
|
||||||
this.type = "3"
|
this.type = "3"
|
||||||
}
|
}
|
||||||
upBean.waybillPhotoList.add(picBean)
|
upBean.waybillPhotoList.add(picBean)
|
||||||
@ -163,31 +162,35 @@ class WaybillUpPicActivity : BaseActivity<ActivityWaybillUppicBinding>() {
|
|||||||
waybillId = this@WaybillUpPicActivity.waybillId
|
waybillId = this@WaybillUpPicActivity.waybillId
|
||||||
latitude = latLng.latitude.toString()
|
latitude = latLng.latitude.toString()
|
||||||
longitude = latLng.longitude.toString()
|
longitude = latLng.longitude.toString()
|
||||||
orderChildreId = this@WaybillUpPicActivity.childreId
|
// orderChildreId = this@WaybillUpPicActivity.childreId
|
||||||
this.type = if (type == 1) "1" else "2"
|
this.type = if (type == 1) "1" else "2"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (type==2){
|
||||||
|
if (upBean.waybillPhotoList.find { it.receiptType == "4" || it.receiptType == "5" } == null) {
|
||||||
|
showToast("卸货请上传卸货回单照片")
|
||||||
|
return@setOnClickListener
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
DataManager.getInstance().driverLoadOrUnload(upBean)
|
DataManager.getInstance().driverLoadOrUnload(upBean)
|
||||||
.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
|
.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
|
||||||
.subscribe(BaseObserver(mContext, object : RxHttpCallBack<String>() {
|
.subscribe(BaseObserver(mContext, object : RxHttpCallBack<String>() {
|
||||||
override fun onSuccess(t: CommonResponseBean<String>) {
|
override fun onSuccess(t: CommonResponseBean<String>) {
|
||||||
super.onSuccess(t)
|
super.onSuccess(t)
|
||||||
|
if (1 == type) {
|
||||||
|
ActivityUtils.startActivity(
|
||||||
|
mContext,
|
||||||
|
WaybillSuccActivity::class.java,
|
||||||
|
Bundle().apply { putInt(AppConfig.SUCCESS_TYPE, 1) })
|
||||||
|
} else {
|
||||||
|
ActivityUtils.startActivity(
|
||||||
|
mContext,
|
||||||
|
WaybillSuccActivity::class.java,
|
||||||
|
Bundle().apply { putInt(AppConfig.SUCCESS_TYPE, 2) })
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}))
|
}))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (1 == type) {
|
|
||||||
ActivityUtils.startActivity(
|
|
||||||
mContext,
|
|
||||||
WaybillSuccActivity::class.java,
|
|
||||||
Bundle().apply { putInt(AppConfig.SUCCESS_TYPE, 1) })
|
|
||||||
} else {
|
|
||||||
ActivityUtils.startActivity(
|
|
||||||
mContext,
|
|
||||||
WaybillSuccActivity::class.java,
|
|
||||||
Bundle().apply { putInt(AppConfig.SUCCESS_TYPE, 2) })
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -200,7 +203,7 @@ class WaybillUpPicActivity : BaseActivity<ActivityWaybillUppicBinding>() {
|
|||||||
|
|
||||||
|
|
||||||
fun getLocation() {
|
fun getLocation() {
|
||||||
LoadingUtils.instance.showLoading(this,"定位中,请稍等...")
|
LoadingUtils.instance.showLoading(this, "定位中,请稍等...")
|
||||||
GDLocationUtils.instance.getLocation(this@WaybillUpPicActivity) {
|
GDLocationUtils.instance.getLocation(this@WaybillUpPicActivity) {
|
||||||
//errCode等于0代表定位成功,其他的为定位失败,具体的可以参照官网定位错误码说明
|
//errCode等于0代表定位成功,其他的为定位失败,具体的可以参照官网定位错误码说明
|
||||||
runOnUiThread {
|
runOnUiThread {
|
||||||
|
@ -2,17 +2,23 @@ package com.dahe.gldriver.ui.waybill.fragment
|
|||||||
|
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.graphics.Color
|
import android.graphics.Color
|
||||||
|
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.chad.library.adapter4.BaseQuickAdapter
|
||||||
import com.dahe.gldriver.R
|
import com.dahe.gldriver.R
|
||||||
import com.dahe.gldriver.adapter.WaybillListAdapter
|
import com.dahe.gldriver.adapter.WaybillListAdapter
|
||||||
|
import com.dahe.gldriver.base.AppConfig
|
||||||
import com.dahe.gldriver.callback.OnSearchListener
|
import com.dahe.gldriver.callback.OnSearchListener
|
||||||
import com.dahe.gldriver.databinding.FragmentWaybillBinding
|
import com.dahe.gldriver.databinding.FragmentWaybillBinding
|
||||||
import com.dahe.gldriver.databinding.FragmentWaybillListBinding
|
import com.dahe.gldriver.databinding.FragmentWaybillListBinding
|
||||||
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.mine.activity.CarsManActivity
|
||||||
|
import com.dahe.gldriver.ui.waybill.activity.WaybillLoadActivity
|
||||||
|
import com.dahe.gldriver.ui.waybill.activity.WaybillUpPicActivity
|
||||||
import com.dahe.gldriver.utils.OrderUtils
|
import com.dahe.gldriver.utils.OrderUtils
|
||||||
import com.dahe.glex.bean.OrderBean
|
import com.dahe.glex.bean.OrderBean
|
||||||
import com.dahe.glex.bean.WayBillBean
|
import com.dahe.glex.bean.WayBillBean
|
||||||
@ -20,6 +26,7 @@ import com.dahe.mylibrary.base.BaseFragment
|
|||||||
import com.dahe.mylibrary.callback.RefreshCallBack
|
import com.dahe.mylibrary.callback.RefreshCallBack
|
||||||
import com.dahe.mylibrary.net.CommonResponseBean
|
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.ConvertUtils
|
import com.dahe.mylibrary.utils.ConvertUtils
|
||||||
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
|
||||||
@ -30,7 +37,8 @@ import io.reactivex.rxjava3.schedulers.Schedulers
|
|||||||
* @Date 2024/1/24 14:06
|
* @Date 2024/1/24 14:06
|
||||||
* @Description 待装货
|
* @Description 待装货
|
||||||
*/
|
*/
|
||||||
class WaitLoadFragment : BaseFragment<FragmentWaybillListBinding>(), RefreshCallBack , OnSearchListener {
|
class WaitLoadFragment : BaseFragment<FragmentWaybillListBinding>(), RefreshCallBack,
|
||||||
|
OnSearchListener {
|
||||||
|
|
||||||
|
|
||||||
lateinit var adapter: WaybillListAdapter
|
lateinit var adapter: WaybillListAdapter
|
||||||
@ -54,6 +62,29 @@ class WaitLoadFragment : BaseFragment<FragmentWaybillListBinding>(), RefreshCall
|
|||||||
adapter = WaybillListAdapter()// 打开空布局功能
|
adapter = WaybillListAdapter()// 打开空布局功能
|
||||||
(adapter as WaybillListAdapter).isStateViewEnable = true
|
(adapter as WaybillListAdapter).isStateViewEnable = true
|
||||||
adapter as WaybillListAdapter
|
adapter as WaybillListAdapter
|
||||||
|
}.apply {
|
||||||
|
setOnItemClickListener() { adapter, view, position ->
|
||||||
|
//装货页面
|
||||||
|
ActivityUtils.startActivity(context,
|
||||||
|
WaybillLoadActivity::class.java,
|
||||||
|
Bundle().apply {
|
||||||
|
putString(AppConfig.ORDER_ID, items[position].orderId)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
addOnItemChildClickListener(R.id.btnOk) { _, _, position ->
|
||||||
|
val orderBean = items[position]
|
||||||
|
ActivityUtils.startActivity(
|
||||||
|
mContext,
|
||||||
|
WaybillUpPicActivity::class.java,
|
||||||
|
Bundle().apply {
|
||||||
|
putInt(AppConfig.SUCCESS_TYPE, 1)
|
||||||
|
putString(AppConfig.ORDER_ID, orderBean.orderId)
|
||||||
|
putString(AppConfig.WAYBILL_ID, orderBean.waybillId)
|
||||||
|
// putString(AppConfig.CHILDRE_ID, orderBean.orderChildreId)
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
initData()
|
initData()
|
||||||
@ -68,16 +99,16 @@ class WaitLoadFragment : BaseFragment<FragmentWaybillListBinding>(), RefreshCall
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun initData(search: String = "") {
|
private fun initData(search: String = "") {
|
||||||
DataManager.getInstance().selectMyWaybillList(mRefreshPage,mRefreshCount,"102040",search)
|
DataManager.getInstance().selectMyWaybillList(mRefreshPage, mRefreshCount, "102040", search)
|
||||||
.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
|
.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
|
||||||
.subscribe(BaseObserver(mContext, object : RxHttpCallBack<MutableList<OrderBean>>() {
|
.subscribe(BaseObserver(mContext, object : RxHttpCallBack<MutableList<OrderBean>>() {
|
||||||
override fun onSuccess(t: CommonResponseBean<MutableList<OrderBean>>) {
|
override fun onSuccess(t: CommonResponseBean<MutableList<OrderBean>>) {
|
||||||
super.onSuccess(t)
|
super.onSuccess(t)
|
||||||
if (mRefreshPage === 1) {
|
if (mRefreshPage === 1) {
|
||||||
if (t.data.size==0){
|
if (t.data.size == 0) {
|
||||||
adapter.submitList(null)
|
adapter.submitList(null)
|
||||||
adapter.setStateViewLayout(mContext, R.layout.empty_view)
|
adapter.setStateViewLayout(mContext, R.layout.empty_view)
|
||||||
}else{
|
} else {
|
||||||
adapter?.submitList(t.data)
|
adapter?.submitList(t.data)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -89,7 +120,10 @@ class WaitLoadFragment : BaseFragment<FragmentWaybillListBinding>(), RefreshCall
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCodeError(mContext: Context?, t: CommonResponseBean<MutableList<OrderBean>>) {
|
override fun onCodeError(
|
||||||
|
mContext: Context?,
|
||||||
|
t: CommonResponseBean<MutableList<OrderBean>>
|
||||||
|
) {
|
||||||
super.onCodeError(mContext, t)
|
super.onCodeError(mContext, t)
|
||||||
setFinishRefresh(
|
setFinishRefresh(
|
||||||
binding.refresh,
|
binding.refresh,
|
||||||
|
@ -2,17 +2,22 @@ package com.dahe.gldriver.ui.waybill.fragment
|
|||||||
|
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.graphics.Color
|
import android.graphics.Color
|
||||||
|
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.dahe.gldriver.R
|
import com.dahe.gldriver.R
|
||||||
import com.dahe.gldriver.adapter.WaybillListAdapter
|
import com.dahe.gldriver.adapter.WaybillListAdapter
|
||||||
|
import com.dahe.gldriver.base.AppConfig
|
||||||
import com.dahe.gldriver.callback.OnSearchListener
|
import com.dahe.gldriver.callback.OnSearchListener
|
||||||
import com.dahe.gldriver.databinding.FragmentWaybillBinding
|
import com.dahe.gldriver.databinding.FragmentWaybillBinding
|
||||||
import com.dahe.gldriver.databinding.FragmentWaybillListBinding
|
import com.dahe.gldriver.databinding.FragmentWaybillListBinding
|
||||||
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.waybill.activity.WaybillLoadActivity
|
||||||
|
import com.dahe.gldriver.ui.waybill.activity.WaybillUnlLoadActivity
|
||||||
|
import com.dahe.gldriver.ui.waybill.activity.WaybillUpPicActivity
|
||||||
import com.dahe.gldriver.utils.OrderUtils
|
import com.dahe.gldriver.utils.OrderUtils
|
||||||
import com.dahe.glex.bean.OrderBean
|
import com.dahe.glex.bean.OrderBean
|
||||||
import com.dahe.glex.bean.WayBillBean
|
import com.dahe.glex.bean.WayBillBean
|
||||||
@ -20,6 +25,7 @@ import com.dahe.mylibrary.base.BaseFragment
|
|||||||
import com.dahe.mylibrary.callback.RefreshCallBack
|
import com.dahe.mylibrary.callback.RefreshCallBack
|
||||||
import com.dahe.mylibrary.net.CommonResponseBean
|
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.ConvertUtils
|
import com.dahe.mylibrary.utils.ConvertUtils
|
||||||
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
|
||||||
@ -56,6 +62,28 @@ class WaitUnLoadFragment : BaseFragment<FragmentWaybillListBinding>(), RefreshCa
|
|||||||
// 打开空布局功能
|
// 打开空布局功能
|
||||||
(adapter as WaybillListAdapter).isStateViewEnable = true
|
(adapter as WaybillListAdapter).isStateViewEnable = true
|
||||||
adapter as WaybillListAdapter
|
adapter as WaybillListAdapter
|
||||||
|
}.apply {
|
||||||
|
setOnItemClickListener() { adapter, view, position ->
|
||||||
|
//装货页面
|
||||||
|
ActivityUtils.startActivity(context,
|
||||||
|
WaybillUnlLoadActivity::class.java,
|
||||||
|
Bundle().apply {
|
||||||
|
putString(AppConfig.ORDER_ID, items[position].orderId)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
addOnItemChildClickListener(R.id.btnOk) { _, _, position ->
|
||||||
|
val orderBean = items[position]
|
||||||
|
ActivityUtils.startActivity(
|
||||||
|
mContext,
|
||||||
|
WaybillUpPicActivity::class.java,
|
||||||
|
Bundle().apply {
|
||||||
|
putInt(AppConfig.SUCCESS_TYPE, 2)
|
||||||
|
putString(AppConfig.ORDER_ID, orderBean.orderId)
|
||||||
|
putString(AppConfig.WAYBILL_ID, orderBean.waybillId)
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
initData()
|
initData()
|
||||||
|
@ -6,6 +6,7 @@ import com.dahe.gldriver.mypop.OnCarSelectListener
|
|||||||
import com.dahe.gldriver.mypop.PopBottomCar
|
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.XPopup
|
||||||
|
import com.lxj.xpopup.interfaces.OnCancelListener
|
||||||
import com.lxj.xpopup.interfaces.OnConfirmListener
|
import com.lxj.xpopup.interfaces.OnConfirmListener
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -46,4 +47,22 @@ class CommonPopUtils private constructor() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param context Context
|
||||||
|
* @param title String
|
||||||
|
* @param content String
|
||||||
|
* @param listener OnConfirmListener
|
||||||
|
*/
|
||||||
|
fun showCommCenterPop(context: Context,title:String = "提示" ,content: String,listener: OnConfirmListener) {
|
||||||
|
XPopup.Builder(context)
|
||||||
|
.isDestroyOnDismiss(true)
|
||||||
|
.asConfirm(
|
||||||
|
title, content,
|
||||||
|
"取消", "确定",
|
||||||
|
listener, null, false
|
||||||
|
)
|
||||||
|
.show()
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -1,7 +1,13 @@
|
|||||||
package com.dahe.gldriver.utils
|
package com.dahe.gldriver.utils
|
||||||
|
|
||||||
import com.amap.api.maps2d.AMapException
|
import com.amap.api.maps.AMap
|
||||||
import com.amap.api.maps2d.model.LatLng
|
import com.amap.api.maps.AMapException
|
||||||
|
import com.amap.api.maps.CameraUpdateFactory
|
||||||
|
import com.amap.api.maps.model.BitmapDescriptorFactory
|
||||||
|
import com.amap.api.maps.model.CameraPosition
|
||||||
|
import com.amap.api.maps.model.LatLng
|
||||||
|
import com.amap.api.maps.model.MarkerOptions
|
||||||
|
import com.dahe.gldriver.R
|
||||||
import com.dahe.mylibrary.base.SingletonNoPHolder
|
import com.dahe.mylibrary.base.SingletonNoPHolder
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -64,4 +70,15 @@ class LocationUtils private constructor() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun changeCamera(latLng: LatLng,aMap: AMap){
|
||||||
|
aMap.moveCamera(CameraUpdateFactory.newCameraPosition(CameraPosition(latLng,12f,30f,30f)))
|
||||||
|
aMap.clear()
|
||||||
|
aMap.addMarker(
|
||||||
|
MarkerOptions().position(latLng)
|
||||||
|
.icon(
|
||||||
|
BitmapDescriptorFactory.fromResource(R.drawable.icon_loca_load)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
@ -12,7 +12,7 @@ import com.dahe.mylibrary.utils.BaseSPUtils
|
|||||||
* @Description TODO
|
* @Description TODO
|
||||||
*/
|
*/
|
||||||
class SPUtils private constructor() : BaseSPUtils() {
|
class SPUtils private constructor() : BaseSPUtils() {
|
||||||
companion object{
|
companion object {
|
||||||
val instance = Holder.holder
|
val instance = Holder.holder
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -37,10 +37,26 @@ class SPUtils private constructor() : BaseSPUtils() {
|
|||||||
*/
|
*/
|
||||||
fun getUserInfo(context: Context?): UserBean? {
|
fun getUserInfo(context: Context?): UserBean? {
|
||||||
return JsonUtils.getInstance()
|
return JsonUtils.getInstance()
|
||||||
.fromJson(BaseSPUtils.get(context, BaseSPUtils.USER_INFO_KEY, "") as String,
|
.fromJson(
|
||||||
UserBean::class.java)
|
BaseSPUtils.get(context, BaseSPUtils.USER_INFO_KEY, "") as String,
|
||||||
|
UserBean::class.java
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun setUserToken(context: Context?, token: String) {
|
||||||
|
put(context, USER_TOKEN_KEY, token)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
fun getUserToken(context: Context?): String {
|
||||||
|
return get(context, USER_TOKEN_KEY, "") as String
|
||||||
|
}
|
||||||
|
|
||||||
|
fun removeUserToken(context: Context?) {
|
||||||
|
remove(context, USER_TOKEN_KEY)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 存服务器类型
|
* 存服务器类型
|
||||||
*
|
*
|
||||||
@ -72,8 +88,10 @@ class SPUtils private constructor() : BaseSPUtils() {
|
|||||||
|
|
||||||
fun getSearchCache(context: Context?): String? {
|
fun getSearchCache(context: Context?): String? {
|
||||||
return JsonUtils.getInstance()
|
return JsonUtils.getInstance()
|
||||||
.fromJson(BaseSPUtils.get(context, BaseSPUtils.SEARRH_CACHE, "") as String,
|
.fromJson(
|
||||||
String::class.java)
|
BaseSPUtils.get(context, BaseSPUtils.SEARRH_CACHE, "") as String,
|
||||||
|
String::class.java
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun removeSearchCache(context: Context?) {
|
fun removeSearchCache(context: Context?) {
|
||||||
@ -89,8 +107,10 @@ class SPUtils private constructor() : BaseSPUtils() {
|
|||||||
|
|
||||||
fun getNaviPreferenceCache(context: Context?): String? {
|
fun getNaviPreferenceCache(context: Context?): String? {
|
||||||
return JsonUtils.getInstance()
|
return JsonUtils.getInstance()
|
||||||
.fromJson(BaseSPUtils.get(context, BaseSPUtils.NAVI_PH_EDIT_CACHE, "") as String,
|
.fromJson(
|
||||||
String::class.java)
|
BaseSPUtils.get(context, BaseSPUtils.NAVI_PH_EDIT_CACHE, "") as String,
|
||||||
|
String::class.java
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun removeNaviPreference(context: Context?) {
|
fun removeNaviPreference(context: Context?) {
|
||||||
|
BIN
app/src/main/res/drawable-xxhdpi/icon_loca_load.png
Normal file
BIN
app/src/main/res/drawable-xxhdpi/icon_loca_load.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 8.0 KiB |
@ -21,19 +21,6 @@
|
|||||||
android:layout_marginTop="@dimen/dp_100"
|
android:layout_marginTop="@dimen/dp_100"
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|
||||||
<com.dahe.mylibrary.weight.CircleBarView
|
|
||||||
android:id="@+id/circleBarView"
|
|
||||||
android:layout_width="300dp"
|
|
||||||
android:layout_height="@dimen/dp_150"
|
|
||||||
app:progress_color1="@color/red"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<com.dahe.mylibrary.weight.CircleBarView2
|
|
||||||
android:id="@+id/circleBarView2"
|
|
||||||
android:layout_width="300dp"
|
|
||||||
android:layout_height="@dimen/dp_150"
|
|
||||||
/>
|
|
||||||
|
|
||||||
|
|
||||||
<androidx.cardview.widget.CardView
|
<androidx.cardview.widget.CardView
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
<include layout="@layout/common_toolbar"></include>
|
<include layout="@layout/common_toolbar"></include>
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
<com.amap.api.maps2d.MapView
|
<com.amap.api.maps.MapView
|
||||||
android:id="@+id/mapView"
|
android:id="@+id/mapView"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="@dimen/dp_200" />
|
android:layout_height="@dimen/dp_200" />
|
||||||
@ -54,6 +54,7 @@
|
|||||||
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/tvWaybillNum"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="运单号:DJHS15541125541"
|
android:text="运单号:DJHS15541125541"
|
||||||
@ -61,6 +62,7 @@
|
|||||||
android:textSize="@dimen/sp_15" />
|
android:textSize="@dimen/sp_15" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/tvWaybillStatu"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentRight="true"
|
android:layout_alignParentRight="true"
|
||||||
@ -76,6 +78,7 @@
|
|||||||
android:background="@drawable/head_defaut" />
|
android:background="@drawable/head_defaut" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/tvComName"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginLeft="@dimen/dp_10"
|
android:layout_marginLeft="@dimen/dp_10"
|
||||||
@ -120,40 +123,47 @@
|
|||||||
app:cardBackgroundColor="@color/white"
|
app:cardBackgroundColor="@color/white"
|
||||||
app:cardCornerRadius="@dimen/dp_8">
|
app:cardCornerRadius="@dimen/dp_8">
|
||||||
|
|
||||||
<RelativeLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="center_horizontal"
|
android:layout_gravity="center_horizontal"
|
||||||
|
android:orientation="horizontal"
|
||||||
android:padding="@dimen/dp_16">
|
android:padding="@dimen/dp_16">
|
||||||
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:id="@+id/tvCarNum"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="豫A87SF9"
|
android:text="豫A87SF9"
|
||||||
|
android:gravity="left"
|
||||||
android:textColor="@color/black"
|
android:textColor="@color/black"
|
||||||
android:textSize="@dimen/sp_17"
|
android:textSize="@dimen/sp_17"
|
||||||
android:textStyle="bold" />
|
android:textStyle="bold" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:id="@+id/tvCarLen"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_centerInParent="true"
|
android:gravity="center"
|
||||||
android:text="16米/30吨"
|
android:text="16米/30吨"
|
||||||
android:textColor="@color/color_01"
|
android:textColor="@color/color_01"
|
||||||
android:textSize="@dimen/sp_14" />
|
android:textSize="@dimen/sp_14" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:id="@+id/tvCarType"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentRight="true"
|
android:gravity="center"
|
||||||
android:layout_centerVertical="true"
|
|
||||||
android:text="重型栏板半挂车"
|
android:text="重型栏板半挂车"
|
||||||
android:textColor="@color/color_01"
|
android:textColor="@color/color_01"
|
||||||
android:textSize="@dimen/sp_14" />
|
android:textSize="@dimen/sp_14" />
|
||||||
|
|
||||||
|
|
||||||
</RelativeLayout>
|
</LinearLayout>
|
||||||
</androidx.cardview.widget.CardView>
|
</androidx.cardview.widget.CardView>
|
||||||
|
|
||||||
<androidx.cardview.widget.CardView
|
<androidx.cardview.widget.CardView
|
||||||
@ -463,13 +473,14 @@
|
|||||||
android:textSize="@dimen/sp_15" />
|
android:textSize="@dimen/sp_15" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/tvCarInfo"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignBottom="@+id/tvCarTitle"
|
android:layout_alignBottom="@+id/tvCarTitle"
|
||||||
android:layout_alignParentRight="true"
|
android:layout_alignParentRight="true"
|
||||||
android:layout_marginTop="@dimen/dp_40"
|
android:layout_marginTop="@dimen/dp_40"
|
||||||
android:paddingRight="@dimen/dp_16"
|
android:paddingRight="@dimen/dp_16"
|
||||||
android:text="整车 4.2/6.2/6.8 米 高栏/厢式"
|
android:text="4.2/6.2/6.8 米 高栏/厢式"
|
||||||
android:textColor="@color/main_red"
|
android:textColor="@color/main_red"
|
||||||
android:textSize="@dimen/sp_15" />
|
android:textSize="@dimen/sp_15" />
|
||||||
|
|
||||||
@ -485,6 +496,7 @@
|
|||||||
android:textSize="@dimen/sp_15" />
|
android:textSize="@dimen/sp_15" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/tvGoods"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignBottom="@+id/tvGoodsTitle"
|
android:layout_alignBottom="@+id/tvGoodsTitle"
|
||||||
@ -507,6 +519,7 @@
|
|||||||
android:textSize="@dimen/sp_15" />
|
android:textSize="@dimen/sp_15" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/tvRemark"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignBottom="@+id/tvNotesTitle"
|
android:layout_alignBottom="@+id/tvNotesTitle"
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
<include layout="@layout/common_toolbar"></include>
|
<include layout="@layout/common_toolbar"></include>
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
<com.amap.api.maps2d.MapView
|
<com.amap.api.maps.MapView
|
||||||
android:id="@+id/mapView"
|
android:id="@+id/mapView"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="@dimen/dp_200" />
|
android:layout_height="@dimen/dp_200" />
|
||||||
@ -54,6 +54,7 @@
|
|||||||
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/tvWaybillNum"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="运单号:DJHS15541125541"
|
android:text="运单号:DJHS15541125541"
|
||||||
@ -61,6 +62,7 @@
|
|||||||
android:textSize="@dimen/sp_15" />
|
android:textSize="@dimen/sp_15" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/tvWaybillStatu"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentRight="true"
|
android:layout_alignParentRight="true"
|
||||||
@ -76,6 +78,7 @@
|
|||||||
android:background="@drawable/head_defaut" />
|
android:background="@drawable/head_defaut" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/tvComName"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginLeft="@dimen/dp_10"
|
android:layout_marginLeft="@dimen/dp_10"
|
||||||
@ -120,40 +123,47 @@
|
|||||||
app:cardBackgroundColor="@color/white"
|
app:cardBackgroundColor="@color/white"
|
||||||
app:cardCornerRadius="@dimen/dp_8">
|
app:cardCornerRadius="@dimen/dp_8">
|
||||||
|
|
||||||
<RelativeLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="center_horizontal"
|
android:layout_gravity="center_horizontal"
|
||||||
|
android:orientation="horizontal"
|
||||||
android:padding="@dimen/dp_16">
|
android:padding="@dimen/dp_16">
|
||||||
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:id="@+id/tvCarNum"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="豫A87SF9"
|
android:text="豫A87SF9"
|
||||||
|
android:gravity="left"
|
||||||
android:textColor="@color/black"
|
android:textColor="@color/black"
|
||||||
android:textSize="@dimen/sp_17"
|
android:textSize="@dimen/sp_17"
|
||||||
android:textStyle="bold" />
|
android:textStyle="bold" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:id="@+id/tvCarLen"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_centerInParent="true"
|
android:gravity="center"
|
||||||
android:text="16米/30吨"
|
android:text="16米/30吨"
|
||||||
android:textColor="@color/color_01"
|
android:textColor="@color/color_01"
|
||||||
android:textSize="@dimen/sp_14" />
|
android:textSize="@dimen/sp_14" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:id="@+id/tvCarType"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentRight="true"
|
android:gravity="center"
|
||||||
android:layout_centerVertical="true"
|
|
||||||
android:text="重型栏板半挂车"
|
android:text="重型栏板半挂车"
|
||||||
android:textColor="@color/color_01"
|
android:textColor="@color/color_01"
|
||||||
android:textSize="@dimen/sp_14" />
|
android:textSize="@dimen/sp_14" />
|
||||||
|
|
||||||
|
|
||||||
</RelativeLayout>
|
</LinearLayout>
|
||||||
</androidx.cardview.widget.CardView>
|
</androidx.cardview.widget.CardView>
|
||||||
|
|
||||||
<androidx.cardview.widget.CardView
|
<androidx.cardview.widget.CardView
|
||||||
@ -400,6 +410,7 @@
|
|||||||
android:textSize="@dimen/sp_15" />
|
android:textSize="@dimen/sp_15" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/tvCarInfo"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignBottom="@+id/tvCarTitle"
|
android:layout_alignBottom="@+id/tvCarTitle"
|
||||||
@ -422,6 +433,7 @@
|
|||||||
android:textSize="@dimen/sp_15" />
|
android:textSize="@dimen/sp_15" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/tvGoods"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignBottom="@+id/tvGoodsTitle"
|
android:layout_alignBottom="@+id/tvGoodsTitle"
|
||||||
@ -444,6 +456,7 @@
|
|||||||
android:textSize="@dimen/sp_15" />
|
android:textSize="@dimen/sp_15" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/tvRemark"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignBottom="@+id/tvNotesTitle"
|
android:layout_alignBottom="@+id/tvNotesTitle"
|
||||||
|
@ -17,57 +17,69 @@
|
|||||||
android:orientation="horizontal">
|
android:orientation="horizontal">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
|
android:id="@+id/ivHead"
|
||||||
android:layout_width="@dimen/dp_76"
|
android:layout_width="@dimen/dp_76"
|
||||||
android:layout_height="@dimen/dp_55"
|
android:layout_height="@dimen/dp_55"
|
||||||
android:background="@drawable/login_car"
|
android:background="@drawable/login_car" />
|
||||||
/>
|
|
||||||
|
|
||||||
<RelativeLayout
|
|
||||||
|
<LinearLayout
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_marginLeft="@dimen/dp_16"
|
android:layout_marginLeft="@dimen/dp_16"
|
||||||
android:layout_weight="1">
|
android:layout_weight="1"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
android:id="@+id/tvCarNum"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="豫A4982S"
|
android:text="豫A4982S"
|
||||||
android:textColor="@color/black"
|
android:textColor="@color/black"
|
||||||
android:textSize="@dimen/sp_18" />
|
android:textSize="@dimen/sp_18" />
|
||||||
|
|
||||||
<TextView
|
<LinearLayout
|
||||||
android:id="@+id/tvCarType"
|
android:layout_width="match_parent"
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentBottom="true"
|
android:layout_alignParentBottom="true"
|
||||||
android:layout_marginTop="@dimen/dp_6"
|
android:layout_marginTop="@dimen/dp_6"
|
||||||
android:text="重型半挂牵引车"
|
android:orientation="horizontal">
|
||||||
android:textColor="@color/color_9"
|
|
||||||
android:textSize="@dimen/sp_12" />
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvCarLen"
|
android:id="@+id/tvCarType"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentBottom="true"
|
android:layout_weight="1.5"
|
||||||
android:layout_marginLeft="@dimen/dp_16"
|
android:maxLines="1"
|
||||||
android:layout_marginTop="@dimen/dp_6"
|
android:singleLine="true"
|
||||||
android:layout_toRightOf="@+id/tvCarType"
|
android:text="重型半挂牵引车"
|
||||||
android:text="16米"
|
android:textColor="@color/color_9"
|
||||||
android:textColor="@color/color_9"
|
android:textSize="@dimen/sp_12" />
|
||||||
android:textSize="@dimen/sp_12" />
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:id="@+id/tvCarLen"
|
||||||
android:layout_height="wrap_content"
|
android:layout_width="0dp"
|
||||||
android:layout_alignParentBottom="true"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginLeft="@dimen/dp_16"
|
android:layout_weight="1"
|
||||||
android:layout_marginTop="@dimen/dp_6"
|
android:maxLines="1"
|
||||||
android:layout_toRightOf="@+id/tvCarLen"
|
android:singleLine="true"
|
||||||
android:text="30顿"
|
android:text="16米"
|
||||||
android:textColor="@color/color_9"
|
android:textColor="@color/color_9"
|
||||||
android:textSize="@dimen/sp_12" />
|
android:textSize="@dimen/sp_12" />
|
||||||
</RelativeLayout>
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tvCarWei"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:text="30顿"
|
||||||
|
android:textColor="@color/color_9"
|
||||||
|
android:textSize="@dimen/sp_12" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvUnbind"
|
android:id="@+id/tvUnbind"
|
||||||
|
@ -3,8 +3,8 @@
|
|||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:background="@drawable/shape_white_8"
|
android:background="@drawable/shape_white_8"
|
||||||
android:padding="@dimen/dp_10"
|
android:orientation="vertical"
|
||||||
android:orientation="vertical">
|
android:padding="@dimen/dp_10">
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
@ -63,28 +63,38 @@
|
|||||||
android:textColor="@color/black"
|
android:textColor="@color/black"
|
||||||
android:textSize="@dimen/sp_20" />
|
android:textSize="@dimen/sp_20" />
|
||||||
|
|
||||||
<View
|
<LinearLayout
|
||||||
android:layout_width="@dimen/dp_30"
|
android:layout_weight="1"
|
||||||
android:layout_height="@dimen/dp_1"
|
android:gravity="center"
|
||||||
android:background="@color/black" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/tvDis"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginLeft="@dimen/dp_8"
|
|
||||||
android:layout_marginRight="@dimen/dp_8"
|
|
||||||
android:text="56km" />
|
|
||||||
|
|
||||||
<View
|
|
||||||
android:layout_width="@dimen/dp_30"
|
|
||||||
android:layout_height="@dimen/dp_1"
|
|
||||||
android:background="@color/black" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
|
||||||
|
<View
|
||||||
|
android:layout_width="@dimen/dp_30"
|
||||||
|
android:layout_height="@dimen/dp_1"
|
||||||
|
android:background="@color/black" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tvDis"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:singleLine="true"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="@dimen/dp_8"
|
||||||
|
android:layout_marginRight="@dimen/dp_8"
|
||||||
|
android:text="56km" />
|
||||||
|
|
||||||
|
<View
|
||||||
|
android:layout_width="@dimen/dp_30"
|
||||||
|
android:layout_height="@dimen/dp_1"
|
||||||
|
android:background="@color/black" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<TextView
|
||||||
android:id="@+id/tvEnd"
|
android:id="@+id/tvEnd"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:maxLines="1"
|
android:maxLines="1"
|
||||||
|
@ -13,6 +13,7 @@ import com.luck.picture.lib.basic.PictureSelectionCameraModel
|
|||||||
import com.luck.picture.lib.basic.PictureSelectionModel
|
import com.luck.picture.lib.basic.PictureSelectionModel
|
||||||
import com.luck.picture.lib.basic.PictureSelector
|
import com.luck.picture.lib.basic.PictureSelector
|
||||||
import com.luck.picture.lib.config.SelectMimeType
|
import com.luck.picture.lib.config.SelectMimeType
|
||||||
|
import com.luck.picture.lib.config.SelectModeConfig
|
||||||
import com.luck.picture.lib.entity.LocalMedia
|
import com.luck.picture.lib.entity.LocalMedia
|
||||||
import com.luck.picture.lib.interfaces.OnResultCallbackListener
|
import com.luck.picture.lib.interfaces.OnResultCallbackListener
|
||||||
import com.lxj.xpopup.core.BottomPopupView
|
import com.lxj.xpopup.core.BottomPopupView
|
||||||
@ -92,6 +93,7 @@ class PopBottomPic(
|
|||||||
.isMaxSelectEnabledMask(true)
|
.isMaxSelectEnabledMask(true)
|
||||||
.setMaxSelectNum(1)
|
.setMaxSelectNum(1)
|
||||||
.isGif(false)
|
.isGif(false)
|
||||||
|
.setSelectionMode(SelectModeConfig.SINGLE)
|
||||||
.setSelectedData(myAdapter.data)
|
.setSelectedData(myAdapter.data)
|
||||||
selectionModel.forResult(object : OnResultCallbackListener<LocalMedia> {
|
selectionModel.forResult(object : OnResultCallbackListener<LocalMedia> {
|
||||||
override fun onResult(result: ArrayList<LocalMedia>) {
|
override fun onResult(result: ArrayList<LocalMedia>) {
|
||||||
|
@ -87,7 +87,7 @@ class PopNorBottomPic(
|
|||||||
.isPreviewImage(true)
|
.isPreviewImage(true)
|
||||||
.isMaxSelectEnabledMask(true)
|
.isMaxSelectEnabledMask(true)
|
||||||
.setMaxSelectNum(1)
|
.setMaxSelectNum(1)
|
||||||
.setSelectionMode(SelectModeConfig.SINGLE )
|
.setSelectionMode(SelectModeConfig.SINGLE)
|
||||||
.isGif(false)
|
.isGif(false)
|
||||||
// .isDirectReturnSingle(true)
|
// .isDirectReturnSingle(true)
|
||||||
// .setSelectedData(myAdapter.data)
|
// .setSelectedData(myAdapter.data)
|
||||||
|
@ -18,6 +18,7 @@ public class BaseSPUtils {
|
|||||||
*/
|
*/
|
||||||
public static final String FILE_NAME = "sp_data";
|
public static final String FILE_NAME = "sp_data";
|
||||||
public static final String USER_INFO_KEY = "user_info_key";
|
public static final String USER_INFO_KEY = "user_info_key";
|
||||||
|
public static final String USER_TOKEN_KEY = "user_token_key";
|
||||||
public static final String NET_SERVICE_TEST = "net_service_test";
|
public static final String NET_SERVICE_TEST = "net_service_test";
|
||||||
public static final String SEARRH_CACHE = "search_cache";
|
public static final String SEARRH_CACHE = "search_cache";
|
||||||
public static final String NAVI_PH_EDIT_CACHE = "navi_ph_edit_cache";
|
public static final String NAVI_PH_EDIT_CACHE = "navi_ph_edit_cache";
|
||||||
|
Loading…
Reference in New Issue
Block a user