From 3023d576805309ded15d596e028896acdfff6d80 Mon Sep 17 00:00:00 2001 From: lijia Date: Thu, 7 Mar 2024 15:28:35 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A3=85=E5=8D=B8=E8=B4=A7=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 4 +- app/src/main/AndroidManifest.xml | 9 +- .../com/dahe/gldriver/adapter/CarsAdapter.kt | 15 ++- .../dahe/gldriver/adapter/DriversAdapter.kt | 16 +++- .../java/com/dahe/gldriver/bean/DriverBean.kt | 22 +++++ .../java/com/dahe/gldriver/bean/OrderBean.kt | 2 + .../com/dahe/gldriver/bean/OrderDetailBean.kt | 4 + .../java/com/dahe/gldriver/bean/UpPicBean.kt | 2 +- .../java/com/dahe/gldriver/bean/UserBean.kt | 10 +- .../main/java/com/dahe/gldriver/net/Api.kt | 34 +++++-- .../gldriver/net/RequestHeadInterceptor.kt | 5 +- .../com/dahe/gldriver/ui/LauncherActivity.kt | 4 +- .../gldriver/ui/account/CodeLoginActivity.kt | 7 +- .../ui/mine/activity/CarTeamActivity.kt | 9 -- .../ui/mine/activity/CarsManActivity.kt | 51 +++++++--- .../ui/mine/fragment/CarsManFragment.kt | 11 --- .../ui/mine/fragment/DriversManFragment.kt | 36 ++++--- .../waybill/activity/WaybillDetailActivity.kt | 6 +- .../waybill/activity/WaybillLoadActivity.kt | 90 +++++++++++++++--- .../waybill/activity/WaybillSuccActivity.kt | 8 +- .../activity/WaybillUnlLoadActivity.kt | 82 +++++++++++++--- .../waybill/activity/WaybillUpPicActivity.kt | 43 +++++---- .../ui/waybill/fragment/WaitLoadFragment.kt | 44 ++++++++- .../ui/waybill/fragment/WaitUnLoadFragment.kt | 28 ++++++ .../com/dahe/gldriver/utils/CommonPopUtils.kt | 19 ++++ .../com/dahe/gldriver/utils/LocationUtils.kt | 21 +++- .../java/com/dahe/gldriver/utils/SPUtils.kt | 34 +++++-- .../res/drawable-xxhdpi/icon_loca_load.png | Bin 0 -> 8243 bytes app/src/main/res/layout/activity_car_team.xml | 13 --- .../main/res/layout/activity_waybill_load.xml | 27 ++++-- .../res/layout/activity_waybill_unload.xml | 25 +++-- app/src/main/res/layout/item_cars.xml | 76 ++++++++------- app/src/main/res/layout/item_waybill2.xml | 52 ++++++---- .../com/dahe/mylibrary/pop/PopBottomPic.kt | 2 + .../com/dahe/mylibrary/pop/PopNorBottomPic.kt | 2 +- .../com/dahe/mylibrary/utils/BaseSPUtils.java | 1 + 36 files changed, 598 insertions(+), 216 deletions(-) create mode 100644 app/src/main/java/com/dahe/gldriver/bean/DriverBean.kt create mode 100644 app/src/main/res/drawable-xxhdpi/icon_loca_load.png diff --git a/app/build.gradle b/app/build.gradle index a0fb45b..7a9c2f0 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -137,9 +137,9 @@ dependencies { 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' } \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 4c9afde..ee16b45 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -15,7 +15,14 @@ - + + + + + + + + diff --git a/app/src/main/java/com/dahe/gldriver/adapter/CarsAdapter.kt b/app/src/main/java/com/dahe/gldriver/adapter/CarsAdapter.kt index 13c9d93..1b5a338 100644 --- a/app/src/main/java/com/dahe/gldriver/adapter/CarsAdapter.kt +++ b/app/src/main/java/com/dahe/gldriver/adapter/CarsAdapter.kt @@ -3,10 +3,13 @@ package com.dahe.gldriver.adapter import android.content.Context import android.view.ViewGroup import android.widget.Button +import android.widget.ImageView import com.chad.library.adapter4.BaseQuickAdapter import com.chad.library.adapter4.viewholder.QuickViewHolder import com.dahe.gldriver.R +import com.dahe.gldriver.bean.CarBean import com.dahe.glex.bean.WayBillBean +import com.dahe.mylibrary.utils.ImageLoader /** * @ClassName WaybillAdapter @@ -15,9 +18,17 @@ import com.dahe.glex.bean.WayBillBean * @Description TODO */ class CarsAdapter : - BaseQuickAdapter() { - override fun onBindViewHolder(holder: QuickViewHolder, position: Int, item: WayBillBean?) { + BaseQuickAdapter() { + 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(R.id.ivHead)) + } } override fun onCreateViewHolder( diff --git a/app/src/main/java/com/dahe/gldriver/adapter/DriversAdapter.kt b/app/src/main/java/com/dahe/gldriver/adapter/DriversAdapter.kt index ad8adaa..ee7bd4a 100644 --- a/app/src/main/java/com/dahe/gldriver/adapter/DriversAdapter.kt +++ b/app/src/main/java/com/dahe/gldriver/adapter/DriversAdapter.kt @@ -3,10 +3,13 @@ package com.dahe.gldriver.adapter import android.content.Context import android.view.ViewGroup import android.widget.Button +import android.widget.ImageView import com.chad.library.adapter4.BaseQuickAdapter import com.chad.library.adapter4.viewholder.QuickViewHolder import com.dahe.gldriver.R +import com.dahe.gldriver.bean.DriverBean import com.dahe.glex.bean.WayBillBean +import com.dahe.mylibrary.utils.ImageLoader /** * @ClassName WaybillAdapter @@ -15,9 +18,18 @@ import com.dahe.glex.bean.WayBillBean * @Description TODO */ class DriversAdapter : - BaseQuickAdapter() { - override fun onBindViewHolder(holder: QuickViewHolder, position: Int, item: WayBillBean?) { + BaseQuickAdapter() { + 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(R.id.ivHead)) + } + } } override fun onCreateViewHolder( diff --git a/app/src/main/java/com/dahe/gldriver/bean/DriverBean.kt b/app/src/main/java/com/dahe/gldriver/bean/DriverBean.kt new file mode 100644 index 0000000..b02be33 --- /dev/null +++ b/app/src/main/java/com/dahe/gldriver/bean/DriverBean.kt @@ -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 +) \ No newline at end of file diff --git a/app/src/main/java/com/dahe/gldriver/bean/OrderBean.kt b/app/src/main/java/com/dahe/gldriver/bean/OrderBean.kt index db78075..bb56d6f 100644 --- a/app/src/main/java/com/dahe/gldriver/bean/OrderBean.kt +++ b/app/src/main/java/com/dahe/gldriver/bean/OrderBean.kt @@ -21,6 +21,8 @@ data class OrderBean( val orderId: String= "", val orderNum: String= "", val orderStatus: String= "", + val waybillId: String= "", + val orderChildreId: String= "", val orderType: String= "", val passingPointsNum: String= "", val realCompanyName: String= "", diff --git a/app/src/main/java/com/dahe/gldriver/bean/OrderDetailBean.kt b/app/src/main/java/com/dahe/gldriver/bean/OrderDetailBean.kt index 32aa9f1..8856e0c 100644 --- a/app/src/main/java/com/dahe/gldriver/bean/OrderDetailBean.kt +++ b/app/src/main/java/com/dahe/gldriver/bean/OrderDetailBean.kt @@ -29,6 +29,7 @@ data class OrderDetailBean( val vehicleLength: String, val vehicleType: String, val waybillId: String, + val vehicleNum: String, val waybillInfo: WaybillInfo ) @@ -92,5 +93,8 @@ data class WaybillInfo( val trailerVehicleNum: String, val unloadTime: String, val vehicleNum: String, + val carLong: String, + val approvedLoad: String, + val vehicleType: String, val waybillId: String ) \ No newline at end of file diff --git a/app/src/main/java/com/dahe/gldriver/bean/UpPicBean.kt b/app/src/main/java/com/dahe/gldriver/bean/UpPicBean.kt index 8cba551..5d9424e 100644 --- a/app/src/main/java/com/dahe/gldriver/bean/UpPicBean.kt +++ b/app/src/main/java/com/dahe/gldriver/bean/UpPicBean.kt @@ -19,7 +19,7 @@ data class UpPicBean( var province: String= "", var provinceCityArea: String= "", var provinceCode: String= "", - var type: String= "", + var type: String= "",//1装货,2卸货 var waybillId: String= "", var waybillPhotoList: MutableList = mutableListOf() ) diff --git a/app/src/main/java/com/dahe/gldriver/bean/UserBean.kt b/app/src/main/java/com/dahe/gldriver/bean/UserBean.kt index 4b27a36..255907c 100644 --- a/app/src/main/java/com/dahe/gldriver/bean/UserBean.kt +++ b/app/src/main/java/com/dahe/gldriver/bean/UserBean.kt @@ -1,5 +1,7 @@ package com.dahe.glex.bean +import retrofit2.http.GET + /** * @ClassName UserBean * @Author 用户 @@ -8,6 +10,7 @@ package com.dahe.glex.bean */ data class UserBean( var access_token :String, + var token :String, var id :String, var roleId :String, var uname :String, @@ -24,5 +27,10 @@ data class UserBean( var isCar :String, var qrcodeUrl :String, var expires_in :Int, - var credit :String + var credit :String, + var isCarCaptain :String, + var contactName :String, + var idcardName :String, + var captainId :String ) + diff --git a/app/src/main/java/com/dahe/gldriver/net/Api.kt b/app/src/main/java/com/dahe/gldriver/net/Api.kt index 22bb975..ae1f113 100644 --- a/app/src/main/java/com/dahe/gldriver/net/Api.kt +++ b/app/src/main/java/com/dahe/gldriver/net/Api.kt @@ -1,8 +1,10 @@ package com.dahe.gldriver.net import com.dahe.gldriver.BuildConfig +import com.dahe.gldriver.BuildConfig.BASE_URL import com.dahe.gldriver.bean.AuthTeamBean import com.dahe.gldriver.bean.CarBean +import com.dahe.gldriver.bean.DriverBean import com.dahe.gldriver.bean.OcrPersonBean import com.dahe.gldriver.bean.OrderDetailBean import com.dahe.gldriver.bean.OssBean @@ -145,7 +147,7 @@ interface Api { fun selectMyWaybillList( @Query("pageNum") pageNum: Int = 1, @Query("pageSize") pageSize: Int = 20, - @Query("waybillStatus") waybillStatus: String ="", + @Query("waybillStatus") waybillStatus: String = "", @Query("searchValue") searchValue: String = "" ): Observable>> @@ -156,12 +158,6 @@ interface Api { @GET(BASE_URL + "driver/order/detail") fun orderDetail(@Query("orderId") orderId: String): Observable> - /** - * - * 车辆列表 - * */ - @GET(BASE_URL+"driver/car/carList") - fun carList(): Observable>> /** * 司机接单 @@ -184,6 +180,30 @@ interface Api { @GET(BASE_URL + "driver/driver/setUpDriverRole") fun setUpDriverRole(@Query("role") role: String): Observable> + + /** + * + * 车辆列表 + * */ + @GET(BASE_URL + "driver/car/carList") + fun carList(): Observable>> + + /** + * + * 解绑车辆 + * */ + @POST(BASE_URL + "driver/car/unBindCar") + fun unBindCar(@Body carBean: CarBean): Observable> + + + /** + * 查询车队所属的司机列表(包含车辆) + * @return Observable>> + */ + @GET(BASE_URL + "driver/captain/selectDriversInCaptain") + fun selectDriversInCaptain(@Query("captainId") captainId: String): Observable>> + + companion object { // String BASE_URL = "https://tmstest.dahehuoyun.com/"; const val BASE_URL = BuildConfig.BASE_URL diff --git a/app/src/main/java/com/dahe/gldriver/net/RequestHeadInterceptor.kt b/app/src/main/java/com/dahe/gldriver/net/RequestHeadInterceptor.kt index 3ff8836..68fc753 100644 --- a/app/src/main/java/com/dahe/gldriver/net/RequestHeadInterceptor.kt +++ b/app/src/main/java/com/dahe/gldriver/net/RequestHeadInterceptor.kt @@ -20,13 +20,12 @@ class RequestHeadInterceptor : Interceptor { @Throws(IOException::class) override fun intercept(chain: Interceptor.Chain): Response { 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", - "Bearer " + SPUtils.instance.getUserInfo(App.app)?.access_token) + "Bearer " + SPUtils.instance.getUserToken(App.app)) } val request: Request = builder .addHeader("versionCode", AppUtils.getAppVersionCode().toString() + "") diff --git a/app/src/main/java/com/dahe/gldriver/ui/LauncherActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/LauncherActivity.kt index 7e0f588..6ee2aac 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/LauncherActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/LauncherActivity.kt @@ -26,7 +26,7 @@ class LauncherActivity : BaseActivity() { //已登录,直接跳转首页 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) } else { ActivityUtils.startActivity(this@LauncherActivity, LoginActivity::class.java) @@ -45,7 +45,7 @@ class LauncherActivity : BaseActivity() { //已登录,直接跳转首页 //已登录,直接跳转首页 val userInfo = SPUtils.instance.getUserInfo(mContext) - if (userInfo != null && StringUtils.isNotEmpty(userInfo.access_token)) { + if (userInfo != null && StringUtils.isNotEmpty(userInfo.token)) { ActivityUtils.startActivity( mContext, SelectRoleActivity::class.java, diff --git a/app/src/main/java/com/dahe/gldriver/ui/account/CodeLoginActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/account/CodeLoginActivity.kt index 5637c18..e5d6d5c 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/account/CodeLoginActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/account/CodeLoginActivity.kt @@ -51,14 +51,17 @@ class CodeLoginActivity : BaseActivity(), View.OnClickListe // setResult(RESULT_OK, Intent().apply { putExtra(AppConfig.CODE, "2024") }) // finish() DataManager.getInstance().login(phone, "2024") + .flatMap { + //两个接口token字段名称不一致,先进行保存 + SPUtils.instance.setUserToken(mContext,it.data.access_token) + DataManager.getInstance().getUserInfo() + } .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(BaseObserver(mContext, object : RxHttpCallBack() { override fun onSuccess(t: CommonResponseBean) { super.onSuccess(t) SPUtils.instance.setUserInfo(mContext, Gson().toJson(t.data)) - - ActivityUtils.startActivity( mContext, SelectRoleActivity::class.java diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarTeamActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarTeamActivity.kt index fd8a6a3..0da66d6 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarTeamActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarTeamActivity.kt @@ -52,15 +52,6 @@ class CarTeamActivity : BaseActivity() { // pagerAdapter.addFragment(AllWaybillFragment()) - binding.circleBarView.setProgress(30f,1000) - - binding.circleBarView2.run { - text = "完成度" - valueText = "10" - unitText= "%" - progress = 20 - } - mFragmentContainerHelper.handlePageSelected(0,true) binding.viewPager.adapter = pagerAdapter diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarsManActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarsManActivity.kt index 795a14b..c91c567 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarsManActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarsManActivity.kt @@ -6,14 +6,23 @@ import android.widget.LinearLayout import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView.LayoutManager +import com.chad.library.adapter4.BaseQuickAdapter import com.dahe.gldriver.R import com.dahe.gldriver.adapter.CarsAdapter import com.dahe.gldriver.adapter.WaybillAdapter +import com.dahe.gldriver.bean.CarBean 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.mylibrary.base.BaseActivity +import com.dahe.mylibrary.net.CommonResponseBean import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider import com.dahe.mylibrary.utils.ConvertUtils +import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers +import io.reactivex.rxjava3.schedulers.Schedulers /** * @ClassName CarsManActivity @@ -22,23 +31,15 @@ import com.dahe.mylibrary.utils.ConvertUtils * @Description 车辆管理 */ class CarsManActivity : BaseActivity() { + + lateinit var adapter: CarsAdapter override fun initView(savedInstanceState: Bundle?) { setStatusBarColor(R.color.white) - setTitleBar("车辆管理",true) + setTitleBar("车辆管理", true) - var datas = mutableListOf( - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean() - ) - var adapter = binding.recycler.run { + adapter = binding.recycler.run { layoutManager = LinearLayoutManager(mContext, RecyclerView.VERTICAL, false) addItemDecoration( RecycleViewDivider( @@ -49,12 +50,34 @@ class CarsManActivity : BaseActivity() { ) adapter = 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(){ + override fun onSuccess(t: CommonResponseBean) { + super.onSuccess(t) + initDate() + } + })) + } + } } - adapter.submitList(datas) } override fun initDate() { - + DataManager.getInstance().carList() + .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) + .subscribe( + BaseObserver(mContext, object : RxHttpCallBack>() { + override fun onSuccess(t: CommonResponseBean>) { + super.onSuccess(t) + adapter.submitList(t.data) + } + }) + ) } } \ No newline at end of file diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/fragment/CarsManFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/fragment/CarsManFragment.kt index 91474ab..6a685d8 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/mine/fragment/CarsManFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/mine/fragment/CarsManFragment.kt @@ -29,16 +29,6 @@ class CarsManFragment : BaseFragment() { } override fun onFragmentFirstVisible() { - var datas = mutableListOf( - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean() - ) var adapter = binding.recyclerView.run { layoutManager = LinearLayoutManager(mContext, RecyclerView.VERTICAL, false) @@ -53,6 +43,5 @@ class CarsManFragment : BaseFragment() { adapter as CarsAdapter } - adapter.submitList(datas) } } \ No newline at end of file diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/fragment/DriversManFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/fragment/DriversManFragment.kt index 96dc063..10d8b4a 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/mine/fragment/DriversManFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/mine/fragment/DriversManFragment.kt @@ -10,13 +10,21 @@ import com.dahe.gldriver.R import com.dahe.gldriver.adapter.CarsAdapter import com.dahe.gldriver.adapter.DriversAdapter import com.dahe.gldriver.adapter.WaybillAdapter +import com.dahe.gldriver.bean.DriverBean import com.dahe.gldriver.databinding.ActivityCarsManBinding 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.mylibrary.base.BaseActivity import com.dahe.mylibrary.base.BaseFragment +import com.dahe.mylibrary.net.CommonResponseBean import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider import com.dahe.mylibrary.utils.ConvertUtils +import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers +import io.reactivex.rxjava3.schedulers.Schedulers /** * @ClassName CarsManActivity @@ -26,22 +34,12 @@ import com.dahe.mylibrary.utils.ConvertUtils */ class DriversManFragment : BaseFragment() { + lateinit var adapter : DriversAdapter override fun onFragmentVisibleChange(isVisible: Boolean) { } override fun onFragmentFirstVisible() { - var datas = mutableListOf( - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean(), - WayBillBean() - ) - - var adapter = binding.recyclerView.run { + adapter = binding.recyclerView.run { layoutManager = LinearLayoutManager(mContext, RecyclerView.VERTICAL, false) addItemDecoration( RecycleViewDivider( @@ -54,6 +52,18 @@ class DriversManFragment : BaseFragment() { 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>(){ + override fun onSuccess(t: CommonResponseBean>) { + super.onSuccess(t) + adapter.submitList(t.data) + } + })) } } \ No newline at end of file diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillDetailActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillDetailActivity.kt index 122864c..b870c2a 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillDetailActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillDetailActivity.kt @@ -8,21 +8,18 @@ import android.widget.LinearLayout import android.widget.Toast import androidx.recyclerview.widget.LinearLayoutManager 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.adapter.WaybillAdapter import com.dahe.gldriver.adapter.WaybillNodeAdapter import com.dahe.gldriver.base.AppConfig import com.dahe.gldriver.bean.OrderDetailBean import com.dahe.gldriver.databinding.ActivityWaybillDetailBinding -import com.dahe.gldriver.event.OrderStauEvent import com.dahe.gldriver.net.BaseObserver import com.dahe.gldriver.net.DataManager import com.dahe.gldriver.net.RxHttpCallBack import com.dahe.gldriver.utils.GDLocationUtils import com.dahe.gldriver.utils.LocationUtils import com.dahe.gldriver.utils.OrderUtils -import com.dahe.glex.bean.OrderBean import com.dahe.mylibrary.base.BaseActivity import com.dahe.mylibrary.net.CommonResponseBean import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider @@ -34,7 +31,6 @@ import com.dahe.mylibrary.utils.SelectPicUtils import com.permissionx.guolindev.PermissionX import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.schedulers.Schedulers -import org.greenrobot.eventbus.EventBus /** * @ClassName WaybillDetailActivity diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillLoadActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillLoadActivity.kt index 7ac9627..16448ba 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillLoadActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillLoadActivity.kt @@ -8,7 +8,10 @@ import android.widget.LinearLayout import android.widget.Toast import androidx.recyclerview.widget.LinearLayoutManager 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.adapter.WaybillNodeAdapter 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.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.net.CommonResponseBean import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider import com.dahe.mylibrary.utils.ActivityUtils import com.dahe.mylibrary.utils.BaseUtils import com.dahe.mylibrary.utils.ConvertUtils +import com.dahe.mylibrary.utils.LoadingUtils import com.dahe.mylibrary.utils.ToastUtils import com.permissionx.guolindev.PermissionX import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers @@ -38,7 +44,7 @@ import io.reactivex.rxjava3.schedulers.Schedulers */ class WaybillLoadActivity : BaseActivity() { - var aMap: AMap? = null + lateinit var aMap: AMap var orderId: String = "" lateinit var orderBean: OrderDetailBean @@ -48,13 +54,16 @@ class WaybillLoadActivity : BaseActivity() { ToastUtils.showToast(mContext, "查看单据") } - orderId = intent.extras?.getString(AppConfig.ORDER_ID,"").toString() + orderId = intent.extras?.getString(AppConfig.ORDER_ID, "").toString() initRecy() + getLocation() binding.run { mapView.onCreate(savedInstanceState) - if (aMap == null) mapView.map + aMap = mapView.map.apply { + uiSettings.run { isZoomControlsEnabled = false } + } btnRight.setOnClickListener { var data = orderBean.orderChildList.first { it.type == "1" } @@ -63,9 +72,9 @@ class WaybillLoadActivity : BaseActivity() { WaybillUpPicActivity::class.java, Bundle().apply { putInt(AppConfig.SUCCESS_TYPE, 1) - putString(AppConfig.ORDER_ID,orderId) - putString(AppConfig.WAYBILL_ID,orderBean.waybillId) - putString(AppConfig.CHILDRE_ID,data.orderChildreId) + putString(AppConfig.ORDER_ID, orderId) + putString(AppConfig.WAYBILL_ID, orderBean.waybillId) + putString(AppConfig.CHILDRE_ID, data.orderChildreId) }) } } @@ -79,14 +88,47 @@ class WaybillLoadActivity : BaseActivity() { override fun onSuccess(t: CommonResponseBean) { super.onSuccess(t) 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 { + tvWaybillNum.text = """运单号:${orderBean.orderNum}""" + tvWaybillStatu.text = + OrderUtils.getInstance().getOrderStatu(orderBean.orderStatus) 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 "一装多卸" - tvCom.text = orderBean?.receiverBusinessName + tvCom.text = orderBean?.receiverBusinessName//收货方 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 { PermissionX.init(this@WaybillLoadActivity) .permissions(Manifest.permission.CALL_PHONE) @@ -132,10 +174,7 @@ class WaybillLoadActivity : BaseActivity() { } override fun onDestroy() { - if (binding.mapView != null) - binding.mapView.onDestroy(); super.onDestroy() - } var adapter: WaybillNodeAdapter? = null @@ -165,4 +204,31 @@ class WaybillLoadActivity : BaseActivity() { } } + + 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("定位失败,请检查定位权限是否开启") + } + } + } + } + } \ No newline at end of file diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillSuccActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillSuccActivity.kt index 7a2b2f2..cea7b5f 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillSuccActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillSuccActivity.kt @@ -4,10 +4,12 @@ import android.os.Bundle import com.dahe.gldriver.R import com.dahe.gldriver.base.AppConfig import com.dahe.gldriver.databinding.ActivityWaybillSuccBinding +import com.dahe.gldriver.ui.HomeActivity import com.dahe.mylibrary.base.BaseActivity import com.dahe.mylibrary.utils.ActivityUtils import com.dahe.mylibrary.utils.AppUtils import com.dahe.mylibrary.utils.BaseUtils +import com.dahe.mylibrary.utils.TimeUtil import com.dahe.mylibrary.utils.ToastUtils /** @@ -20,7 +22,7 @@ class WaybillSuccActivity : BaseActivity() { override fun initView(savedInstanceState: Bundle?) { setStatusBarColor(R.color.white) val type = intent.extras?.getInt(AppConfig.SUCCESS_TYPE) - setTitleBar("接单成功", true) + setTitleBar(if (type==0) "接单成功" else if (type==1) "装货成功" else "卸货成功", true) changeType(type) binding.run { btnLeft.setOnClickListener { @@ -29,6 +31,8 @@ class WaybillSuccActivity : BaseActivity() { btnRight.setOnClickListener { goLeftOrRight(type,false) } + + tvTime.text = TimeUtil.getNowString("") } } @@ -81,7 +85,7 @@ class WaybillSuccActivity : BaseActivity() { if (isLeft){ when(type){ 0->ActivityUtils.startActivity(mContext, WaybillLoadActivity::class.java) - 1,2->ActivityUtils.startHomeActivity(mContext) + 1,2->ActivityUtils.finishToActivity(HomeActivity::class.java,false) } }else{ when(type){ diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUnlLoadActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUnlLoadActivity.kt index 4576f0a..f2a1114 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUnlLoadActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUnlLoadActivity.kt @@ -8,22 +8,26 @@ import android.widget.LinearLayout import android.widget.Toast import androidx.recyclerview.widget.LinearLayoutManager 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.adapter.WaybillNodeAdapter import com.dahe.gldriver.base.AppConfig import com.dahe.gldriver.bean.OrderDetailBean -import com.dahe.gldriver.databinding.ActivityWaybillLoadBinding import com.dahe.gldriver.databinding.ActivityWaybillUnloadBinding import com.dahe.gldriver.net.BaseObserver import com.dahe.gldriver.net.DataManager 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.net.CommonResponseBean import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider import com.dahe.mylibrary.utils.ActivityUtils import com.dahe.mylibrary.utils.BaseUtils import com.dahe.mylibrary.utils.ConvertUtils +import com.dahe.mylibrary.utils.LoadingUtils import com.dahe.mylibrary.utils.ToastUtils import com.permissionx.guolindev.PermissionX import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers @@ -37,7 +41,7 @@ import io.reactivex.rxjava3.schedulers.Schedulers */ class WaybillUnlLoadActivity : BaseActivity() { - var aMap: AMap? = null + lateinit var aMap: AMap var orderId: String = "" @@ -50,12 +54,14 @@ class WaybillUnlLoadActivity : BaseActivity() { } orderId = intent.extras?.getString(AppConfig.ORDER_ID, "").toString() initRecy() + getLocation() binding.run { mapView.onCreate(savedInstanceState) - if (aMap == null) mapView.map + aMap = mapView.map.apply { + uiSettings.run { isZoomControlsEnabled = false } + } btnRight.setOnClickListener { - var data = orderBean.orderChildList.first { it.type == "2" } ActivityUtils.startActivity( mContext, WaybillUpPicActivity::class.java, @@ -63,7 +69,6 @@ class WaybillUnlLoadActivity : BaseActivity() { putInt(AppConfig.SUCCESS_TYPE, 2) putString(AppConfig.ORDER_ID, orderId) putString(AppConfig.WAYBILL_ID, orderBean.waybillId) - putString(AppConfig.CHILDRE_ID, data.orderChildreId) }) } } @@ -77,14 +82,47 @@ class WaybillUnlLoadActivity : BaseActivity() { override fun onSuccess(t: CommonResponseBean) { super.onSuccess(t) 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 { + tvWaybillNum.text = """运单号:${orderBean.orderNum}""" + tvWaybillStatu.text = + OrderUtils.getInstance().getOrderStatu(orderBean.orderStatus) 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 "一装多卸" - tvCom.text = orderBean?.receiverBusinessName + tvCom.text = orderBean?.receiverBusinessName//收货方 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 { PermissionX.init(this@WaybillUnlLoadActivity) .permissions(Manifest.permission.CALL_PHONE) @@ -157,12 +195,30 @@ class WaybillUnlLoadActivity : BaseActivity() { binding.mapView.onSaveInstanceState(outState); } - override fun onDestroy() { - if (binding.mapView != null) - binding.mapView.onDestroy(); - super.onDestroy() + 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("定位失败,请检查定位权限是否开启") + } + } + } } - } \ No newline at end of file diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUpPicActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUpPicActivity.kt index 42193fd..768c4c8 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUpPicActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUpPicActivity.kt @@ -3,7 +3,7 @@ package com.dahe.gldriver.ui.waybill.activity import android.os.Bundle import android.view.View 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.bean.UpPicBean import com.dahe.gldriver.bean.WaybillPhoto @@ -112,7 +112,6 @@ class WaybillUpPicActivity : BaseActivity() { } - //回单处理 recyclerView2.run { layoutManager = @@ -133,14 +132,14 @@ class WaybillUpPicActivity : BaseActivity() { override fun openPicture() { PopsUtils.getInstance().showSelPic(mContext, myAdapter) { - OssServiceUtil.getInstance().run { asyncPutImage(it[0].realPath, this@WaybillUpPicActivity) setResultCallBack { data, oldPath -> picBean = WaybillPhoto() picBean.run { 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" } upBean.waybillPhotoList.add(picBean) @@ -163,31 +162,35 @@ class WaybillUpPicActivity : BaseActivity() { waybillId = this@WaybillUpPicActivity.waybillId latitude = latLng.latitude.toString() longitude = latLng.longitude.toString() - orderChildreId = this@WaybillUpPicActivity.childreId +// orderChildreId = this@WaybillUpPicActivity.childreId 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) .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) .subscribe(BaseObserver(mContext, object : RxHttpCallBack() { override fun onSuccess(t: CommonResponseBean) { 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() { fun getLocation() { - LoadingUtils.instance.showLoading(this,"定位中,请稍等...") + LoadingUtils.instance.showLoading(this, "定位中,请稍等...") GDLocationUtils.instance.getLocation(this@WaybillUpPicActivity) { //errCode等于0代表定位成功,其他的为定位失败,具体的可以参照官网定位错误码说明 runOnUiThread { diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitLoadFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitLoadFragment.kt index fe0f068..7b53109 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitLoadFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitLoadFragment.kt @@ -2,17 +2,23 @@ package com.dahe.gldriver.ui.waybill.fragment import android.content.Context import android.graphics.Color +import android.os.Bundle import android.widget.LinearLayout import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView +import com.chad.library.adapter4.BaseQuickAdapter import com.dahe.gldriver.R import com.dahe.gldriver.adapter.WaybillListAdapter +import com.dahe.gldriver.base.AppConfig import com.dahe.gldriver.callback.OnSearchListener import com.dahe.gldriver.databinding.FragmentWaybillBinding 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.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.glex.bean.OrderBean 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.net.CommonResponseBean import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider +import com.dahe.mylibrary.utils.ActivityUtils import com.dahe.mylibrary.utils.ConvertUtils import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.schedulers.Schedulers @@ -30,7 +37,8 @@ import io.reactivex.rxjava3.schedulers.Schedulers * @Date 2024/1/24 14:06 * @Description 待装货 */ -class WaitLoadFragment : BaseFragment(), RefreshCallBack , OnSearchListener { +class WaitLoadFragment : BaseFragment(), RefreshCallBack, + OnSearchListener { lateinit var adapter: WaybillListAdapter @@ -54,6 +62,29 @@ class WaitLoadFragment : BaseFragment(), RefreshCall adapter = WaybillListAdapter()// 打开空布局功能 (adapter as WaybillListAdapter).isStateViewEnable = true 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() @@ -68,16 +99,16 @@ class WaitLoadFragment : BaseFragment(), RefreshCall } 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()) .subscribe(BaseObserver(mContext, object : RxHttpCallBack>() { override fun onSuccess(t: CommonResponseBean>) { super.onSuccess(t) if (mRefreshPage === 1) { - if (t.data.size==0){ + if (t.data.size == 0) { adapter.submitList(null) adapter.setStateViewLayout(mContext, R.layout.empty_view) - }else{ + } else { adapter?.submitList(t.data) } } else { @@ -89,7 +120,10 @@ class WaitLoadFragment : BaseFragment(), RefreshCall ) } - override fun onCodeError(mContext: Context?, t: CommonResponseBean>) { + override fun onCodeError( + mContext: Context?, + t: CommonResponseBean> + ) { super.onCodeError(mContext, t) setFinishRefresh( binding.refresh, diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitUnLoadFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitUnLoadFragment.kt index 0c7c211..8564bf8 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitUnLoadFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitUnLoadFragment.kt @@ -2,17 +2,22 @@ package com.dahe.gldriver.ui.waybill.fragment import android.content.Context import android.graphics.Color +import android.os.Bundle import android.widget.LinearLayout import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import com.dahe.gldriver.R import com.dahe.gldriver.adapter.WaybillListAdapter +import com.dahe.gldriver.base.AppConfig import com.dahe.gldriver.callback.OnSearchListener import com.dahe.gldriver.databinding.FragmentWaybillBinding 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.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.glex.bean.OrderBean 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.net.CommonResponseBean import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider +import com.dahe.mylibrary.utils.ActivityUtils import com.dahe.mylibrary.utils.ConvertUtils import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.schedulers.Schedulers @@ -56,6 +62,28 @@ class WaitUnLoadFragment : BaseFragment(), RefreshCa // 打开空布局功能 (adapter as WaybillListAdapter).isStateViewEnable = true 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() diff --git a/app/src/main/java/com/dahe/gldriver/utils/CommonPopUtils.kt b/app/src/main/java/com/dahe/gldriver/utils/CommonPopUtils.kt index ad90517..d3b0192 100644 --- a/app/src/main/java/com/dahe/gldriver/utils/CommonPopUtils.kt +++ b/app/src/main/java/com/dahe/gldriver/utils/CommonPopUtils.kt @@ -6,6 +6,7 @@ import com.dahe.gldriver.mypop.OnCarSelectListener import com.dahe.gldriver.mypop.PopBottomCar import com.dahe.mylibrary.base.SingletonNoPHolder import com.lxj.xpopup.XPopup +import com.lxj.xpopup.interfaces.OnCancelListener 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() + } + } \ No newline at end of file diff --git a/app/src/main/java/com/dahe/gldriver/utils/LocationUtils.kt b/app/src/main/java/com/dahe/gldriver/utils/LocationUtils.kt index c332141..69650c2 100644 --- a/app/src/main/java/com/dahe/gldriver/utils/LocationUtils.kt +++ b/app/src/main/java/com/dahe/gldriver/utils/LocationUtils.kt @@ -1,7 +1,13 @@ package com.dahe.gldriver.utils -import com.amap.api.maps2d.AMapException -import com.amap.api.maps2d.model.LatLng +import com.amap.api.maps.AMap +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 /** @@ -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) + ) + ) + } } \ No newline at end of file diff --git a/app/src/main/java/com/dahe/gldriver/utils/SPUtils.kt b/app/src/main/java/com/dahe/gldriver/utils/SPUtils.kt index 405d712..fb0ebb5 100644 --- a/app/src/main/java/com/dahe/gldriver/utils/SPUtils.kt +++ b/app/src/main/java/com/dahe/gldriver/utils/SPUtils.kt @@ -12,7 +12,7 @@ import com.dahe.mylibrary.utils.BaseSPUtils * @Description TODO */ class SPUtils private constructor() : BaseSPUtils() { - companion object{ + companion object { val instance = Holder.holder } @@ -37,10 +37,26 @@ class SPUtils private constructor() : BaseSPUtils() { */ fun getUserInfo(context: Context?): UserBean? { return JsonUtils.getInstance() - .fromJson(BaseSPUtils.get(context, BaseSPUtils.USER_INFO_KEY, "") as String, - UserBean::class.java) + .fromJson( + 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? { return JsonUtils.getInstance() - .fromJson(BaseSPUtils.get(context, BaseSPUtils.SEARRH_CACHE, "") as String, - String::class.java) + .fromJson( + BaseSPUtils.get(context, BaseSPUtils.SEARRH_CACHE, "") as String, + String::class.java + ) } fun removeSearchCache(context: Context?) { @@ -89,8 +107,10 @@ class SPUtils private constructor() : BaseSPUtils() { fun getNaviPreferenceCache(context: Context?): String? { return JsonUtils.getInstance() - .fromJson(BaseSPUtils.get(context, BaseSPUtils.NAVI_PH_EDIT_CACHE, "") as String, - String::class.java) + .fromJson( + BaseSPUtils.get(context, BaseSPUtils.NAVI_PH_EDIT_CACHE, "") as String, + String::class.java + ) } fun removeNaviPreference(context: Context?) { diff --git a/app/src/main/res/drawable-xxhdpi/icon_loca_load.png b/app/src/main/res/drawable-xxhdpi/icon_loca_load.png new file mode 100644 index 0000000000000000000000000000000000000000..b2a33ceee09bb85f0d17e731f0b5e84da4ba98aa GIT binary patch literal 8243 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 - - - - - @@ -54,6 +54,7 @@ - - + @@ -485,6 +496,7 @@ android:textSize="@dimen/sp_15" /> - @@ -54,6 +54,7 @@ - - + + android:background="@drawable/login_car" /> - + android:layout_weight="1" + android:orientation="vertical"> - + android:orientation="horizontal"> - + - - + + + + + + + + + android:orientation="vertical" + android:padding="@dimen/dp_10"> - - - - - - - + + + + + + + + + { override fun onResult(result: ArrayList) { diff --git a/mylibrary/src/main/java/com/dahe/mylibrary/pop/PopNorBottomPic.kt b/mylibrary/src/main/java/com/dahe/mylibrary/pop/PopNorBottomPic.kt index aa773fa..40a79d5 100644 --- a/mylibrary/src/main/java/com/dahe/mylibrary/pop/PopNorBottomPic.kt +++ b/mylibrary/src/main/java/com/dahe/mylibrary/pop/PopNorBottomPic.kt @@ -87,7 +87,7 @@ class PopNorBottomPic( .isPreviewImage(true) .isMaxSelectEnabledMask(true) .setMaxSelectNum(1) - .setSelectionMode(SelectModeConfig.SINGLE ) + .setSelectionMode(SelectModeConfig.SINGLE) .isGif(false) // .isDirectReturnSingle(true) // .setSelectedData(myAdapter.data) diff --git a/mylibrary/src/main/java/com/dahe/mylibrary/utils/BaseSPUtils.java b/mylibrary/src/main/java/com/dahe/mylibrary/utils/BaseSPUtils.java index 9450e59..1ccb7d4 100644 --- a/mylibrary/src/main/java/com/dahe/mylibrary/utils/BaseSPUtils.java +++ b/mylibrary/src/main/java/com/dahe/mylibrary/utils/BaseSPUtils.java @@ -18,6 +18,7 @@ public class BaseSPUtils { */ public static final String FILE_NAME = "sp_data"; 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 SEARRH_CACHE = "search_cache"; public static final String NAVI_PH_EDIT_CACHE = "navi_ph_edit_cache";