From 8186bc25db11207603f3c522f2f1da0aa9c0968d Mon Sep 17 00:00:00 2001 From: lijia Date: Fri, 15 Mar 2024 16:08:47 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=85=9A=E5=91=98=E8=AE=A4?= =?UTF-8?q?=E8=AF=81=EF=BC=8C=E7=BA=A2=E8=89=B2=E6=96=B9=E5=90=91=E7=9B=98?= =?UTF-8?q?=EF=BC=8C=E8=BF=90=E5=8D=95=E8=B7=B3=E8=BD=AC=E9=80=BB=E8=BE=91?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 3 + app/src/main/AndroidManifest.xml | 9 +- .../gldriver/adapter/WaybillListAdapter.kt | 6 ++ .../java/com/dahe/gldriver/bean/OrderBean.kt | 2 + .../java/com/dahe/gldriver/bean/UpInfoBean.kt | 25 +++++ .../gldriver/callback/OnResultListener.kt | 14 +++ .../main/java/com/dahe/gldriver/net/Api.kt | 28 ++++-- .../com/dahe/gldriver/net/RxHttpCallBack.kt | 4 + .../gldriver/ui/account/AuthSuccActivity.kt | 6 +- .../gldriver/ui/account/SelectRoleActivity.kt | 4 +- .../account/authperson/AuthPartyActivity.kt | 25 ++++- .../com/dahe/gldriver/ui/home/HomeFragment.kt | 28 +----- .../ui/mine/activity/CarsManActivity.kt | 8 +- .../mine/activity/DriverTeamDetailActivity.kt | 8 +- .../gldriver/ui/waybill/WaybillFragment.kt | 4 +- .../waybill/activity/WaybillDetailActivity.kt | 14 +-- .../waybill/activity/WaybillLoadActivity.kt | 6 +- .../waybill/activity/WaybillRateActivity.kt | 90 +++++++++++++++++ .../waybill/activity/WaybillSuccActivity.kt | 56 ++++++++--- .../waybill/activity/WaybillUpPicActivity.kt | 20 ++-- .../waybill/fragment/CancelWaybillFragment.kt | 10 +- .../waybill/fragment/WaitAppraiseFragment.kt | 26 +++-- .../ui/waybill/fragment/WaitLoadFragment.kt | 15 +++ .../ui/waybill/fragment/WaitUnLoadFragment.kt | 18 ++++ .../com/dahe/gldriver/utils/CommonPopUtils.kt | 2 +- .../com/dahe/gldriver/utils/OrderUtils.kt | 26 +++-- .../main/res/layout/activity_auth_party.xml | 3 +- .../main/res/layout/activity_person_info.xml | 1 - .../main/res/layout/activity_waybill_rate.xml | 96 +++++++++++++++++++ .../res/layout/activity_waybill_unload.xml | 2 +- .../dahe/mylibrary/net/JsonInterceptor.java | 9 +- .../com/dahe/mylibrary/pop/PopBottomPic.kt | 9 +- .../dahe/mylibrary/utils/ActivityUtils.java | 26 ++++- .../com/dahe/mylibrary/utils/PopsUtils.kt | 16 +++- 34 files changed, 498 insertions(+), 121 deletions(-) create mode 100644 app/src/main/java/com/dahe/gldriver/callback/OnResultListener.kt create mode 100644 app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillRateActivity.kt create mode 100644 app/src/main/res/layout/activity_waybill_rate.xml diff --git a/app/build.gradle b/app/build.gradle index e35b6e7..56ee038 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -135,6 +135,9 @@ dependencies { androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' + //评价星星 + implementation 'me.zhanghai.android.materialratingbar:library:1.4.0' + implementation project(path: ':mylibrary') //高德地图 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index b059da7..22c5437 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -64,8 +64,8 @@ android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.GLDriver" - tools:targetApi="31" - android:usesCleartextTraffic="true"> + android:usesCleartextTraffic="true" + tools:targetApi="31"> + + * @constructor + */ +data class UpRate( + var opinionsContent: String = "", + var opinionsStarRating: String= "", + var orderId: String= "", + var resourcesList: MutableList = mutableListOf() +) + +data class Resources( + var resourcesSort: String= "", + var resourcesType: String= "", + var resourcesUrl: String= "" +) + + + + + diff --git a/app/src/main/java/com/dahe/gldriver/callback/OnResultListener.kt b/app/src/main/java/com/dahe/gldriver/callback/OnResultListener.kt new file mode 100644 index 0000000..049b7a5 --- /dev/null +++ b/app/src/main/java/com/dahe/gldriver/callback/OnResultListener.kt @@ -0,0 +1,14 @@ +package com.dahe.gldriver.callback + +import com.dahe.gldriver.bean.OcrPersonBean +import com.luck.picture.lib.entity.LocalMedia + +/** + * @ClassName OnOcrPicResultListener + * @Author john + * @Date 2024/2/28 17:18 + * @Description TODO + */ +fun interface OnResultListener { + fun onResult(success:Boolean) +} 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 da39041..5f4f49a 100644 --- a/app/src/main/java/com/dahe/gldriver/net/Api.kt +++ b/app/src/main/java/com/dahe/gldriver/net/Api.kt @@ -19,6 +19,7 @@ import com.dahe.gldriver.bean.UpPart import com.dahe.gldriver.bean.UpPersonInfoBean import com.dahe.gldriver.bean.UpPicBean import com.dahe.gldriver.bean.UpQualiInfoBean +import com.dahe.gldriver.bean.UpRate import com.dahe.gldriver.bean.UpRoadInfoBean import com.dahe.glex.bean.* import com.dahe.mylibrary.net.CommonResponseBean @@ -175,14 +176,14 @@ interface Api { * @return Observable> */ @POST(BASE_URL+"driver/driver/submitToCpcAuthentication") - fun submitToCpcAuthentication(@Body upPart: UpPart): Observable> + fun submitToCpcAuthentication(@Body upPart: UpPart): Observable> /** * 查询党员认证资料 * @param upPart UpPart * @return Observable> */ - @POST(BASE_URL+"driver/driver/getCpcAuthenticationInfo") + @GET(BASE_URL+"driver/driver/getCpcAuthenticationInfo") fun getCpcAuthenticationInfo(): Observable> @@ -218,7 +219,7 @@ interface Api { fun receivingOrders( @Query("orderId") orderId: String, @Query("carId") carId: String - ): Observable> + ): Observable> /** * 司机装卸货 @@ -226,7 +227,16 @@ interface Api { @POST(BASE_URL + "driver/driverWaybill/driverLoadOrUnload") fun driverLoadOrUnload( @Body upPicBean: UpPicBean - ): Observable> + ): Observable> + + + /** + * 评价运单 + * @param upRate UpRate + * @return Observable> + */ + @POST(BASE_URL+"driver/opinions/submitComments") + fun submitComments(@Body upRate: UpRate):Observable> /** @@ -235,7 +245,7 @@ interface Api { * @return Observable> */ @GET(BASE_URL + "driver/driver/setUpDriverRole") - fun setUpDriverRole(@Query("role") role: String): Observable> + fun setUpDriverRole(@Query("role") role: String): Observable> /** @@ -257,14 +267,14 @@ interface Api { * 解绑车辆 * */ @POST(BASE_URL + "driver/car/unBindCar") - fun unBindCar(@Body carBean: CarBean): Observable> + fun unBindCar(@Body carBean: CarBean): Observable> /** * * 绑定车辆 * */ @POST(BASE_URL + "driver/car/bindCar") - fun bindCar(@Body carBean: CarBean): Observable> + fun bindCar(@Body carBean: CarBean): Observable> /** * @@ -315,7 +325,7 @@ interface Api { * @return Observable> */ @POST(BASE_URL + "driver/driver/responseToCaptain") - fun responseToCaptain(@Body upCaptain: UpCaptain): Observable> + fun responseToCaptain(@Body upCaptain: UpCaptain): Observable> /** * 司机退出车队 @@ -323,7 +333,7 @@ interface Api { * @return Observable> */ @POST(BASE_URL + "driver/captain/unbindDriver") - fun unbindDriver(@Body upCaptain: UpCaptain): Observable> + fun unbindDriver(@Body upCaptain: UpCaptain): Observable> /** diff --git a/app/src/main/java/com/dahe/gldriver/net/RxHttpCallBack.kt b/app/src/main/java/com/dahe/gldriver/net/RxHttpCallBack.kt index ee9bd0d..6cac75c 100644 --- a/app/src/main/java/com/dahe/gldriver/net/RxHttpCallBack.kt +++ b/app/src/main/java/com/dahe/gldriver/net/RxHttpCallBack.kt @@ -10,6 +10,7 @@ import com.dahe.mylibrary.net.ResultException import com.dahe.mylibrary.utils.LoadingUtils import com.dahe.mylibrary.utils.ToastUtils import com.lxj.xpopup.impl.LoadingPopupView +import org.json.JSONException import java.net.ConnectException import java.net.SocketTimeoutException import java.net.UnknownHostException @@ -122,9 +123,12 @@ abstract class RxHttpCallBack { e.printStackTrace() //自定义的ResultException //由于返回200,300返回格式不统一的问题,自定义GsonResponseBodyConverter凡是300的直接抛异常 + ToastUtils.showToast(mContext, "请检查您的网络~") // System.out.println("---------errorCode------->"+((ResultException) e).getErrCode()); } else if (e is SSLException) { ToastUtils.showToast(mContext, "网络连接终端,请检查您的网络~") + }else if (e is JSONException) { + ToastUtils.showToast(mContext, "数据格式转换异常~") } else { ToastUtils.showToast(mContext, e.message) } diff --git a/app/src/main/java/com/dahe/gldriver/ui/account/AuthSuccActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/account/AuthSuccActivity.kt index d684d0a..198f807 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/account/AuthSuccActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/account/AuthSuccActivity.kt @@ -7,10 +7,6 @@ import com.dahe.gldriver.databinding.ActivityAuthSuccBinding import com.dahe.gldriver.ui.HomeActivity import com.dahe.gldriver.ui.account.authperson.AuthDrivingActivity import com.dahe.gldriver.ui.mine.activity.CarsManActivity -import com.dahe.gldriver.ui.waybill.activity.WaybillDetailActivity -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.mylibrary.base.BaseActivity import com.dahe.mylibrary.utils.ActivityUtils import com.dahe.mylibrary.utils.BaseUtils @@ -51,7 +47,7 @@ class AuthSuccActivity : BaseActivity() { if (isLeft) { ActivityUtils.finishToActivity(HomeActivity::class.java, false) } else { - ActivityUtils.finishToActivity(mContext,CarsManActivity::class.java,AuthDrivingActivity::class.java,false) + ActivityUtils.finishToActivityAndGoNew(mContext,CarsManActivity::class.java,AuthDrivingActivity::class.java,false) } } } \ No newline at end of file diff --git a/app/src/main/java/com/dahe/gldriver/ui/account/SelectRoleActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/account/SelectRoleActivity.kt index 26a365a..17810db 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/account/SelectRoleActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/account/SelectRoleActivity.kt @@ -46,8 +46,8 @@ class SelectRoleActivity : BaseActivity() { DataManager.getInstance().setUpDriverRole("1") .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(BaseObserver(mContext, object : RxHttpCallBack(this) { - override fun onSuccess(t: CommonResponseBean) { + .subscribe(BaseObserver(mContext, object : RxHttpCallBack(this) { + override fun onSuccess(t: CommonResponseBean) { super.onSuccess(t) ActivityUtils.startActivity(mContext, AuthTeamActivity::class.java) } diff --git a/app/src/main/java/com/dahe/gldriver/ui/account/authperson/AuthPartyActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/account/authperson/AuthPartyActivity.kt index 56973d3..32db219 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/account/authperson/AuthPartyActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/account/authperson/AuthPartyActivity.kt @@ -67,6 +67,25 @@ class AuthPartyActivity : BaseActivity() { } override fun initDate() { + + DataManager.getInstance().getCpcAuthenticationInfo() + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(BaseObserver(mContext,object :RxHttpCallBack(){ + override fun onSuccess(t: CommonResponseBean) { + super.onSuccess(t) + t.data?.let { + upPart = it + binding.run { + tvData.text = it.partyMembershipTime + tvAddress.text = it.provinceCityArea + etAddress.setText(it.address) + ImageLoader.getInstance().loadRoundImage(mContext,it.materialList[0].materialUrl,12,ivUp) + } + } + } + })) + } private fun subMit() { @@ -78,12 +97,12 @@ class AuthPartyActivity : BaseActivity() { showToast("请完善信息") return } - + upPart.address = binding.etAddress.text.toString() DataManager.getInstance().submitToCpcAuthentication(upPart) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(BaseObserver(mContext, object : RxHttpCallBack() { - override fun onSuccess(t: CommonResponseBean) { + .subscribe(BaseObserver(mContext, object : RxHttpCallBack() { + override fun onSuccess(t: CommonResponseBean) { super.onSuccess(t) finish() } diff --git a/app/src/main/java/com/dahe/gldriver/ui/home/HomeFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/home/HomeFragment.kt index c328703..ea27c64 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/home/HomeFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/home/HomeFragment.kt @@ -13,14 +13,10 @@ import com.dahe.gldriver.base.AppConfig import com.dahe.gldriver.bean.CarBean import com.dahe.gldriver.bean.GridBean import com.dahe.gldriver.databinding.FragmentHomeBinding -import com.dahe.gldriver.event.OrderStauEvent import com.dahe.gldriver.net.BaseObserver import com.dahe.gldriver.net.DataManager import com.dahe.gldriver.net.RxHttpCallBack -import com.dahe.gldriver.ui.account.authperson.AuthDrivingActivity import com.dahe.gldriver.ui.waybill.activity.WaybillDetailActivity -import com.dahe.gldriver.ui.waybill.activity.WaybillUpPicActivity -import com.dahe.gldriver.utils.CommonPopUtils import com.dahe.gldriver.utils.OrderUtils import com.dahe.glex.bean.OrderBean import com.dahe.mylibrary.base.BaseFragment @@ -72,7 +68,6 @@ class HomeFragment : BaseFragment(), RefreshCallBack { gridView.run { adapter = activity?.let { GridItemAdapter(it, gridDatas) } setOnItemClickListener { adapterView, view, i, l -> - } } tvMar.isSelected = true @@ -114,14 +109,6 @@ class HomeFragment : BaseFragment(), RefreshCallBack { })) } - - @Subscribe - fun eventStatu(orderStauEvent: OrderStauEvent) { - if (orderStauEvent.statu == 1) { - initData() - } - } - private fun initRecy() { adapter = binding.recyclerView.run { layoutManager = LinearLayoutManager(mContext, RecyclerView.VERTICAL, false) @@ -145,7 +132,11 @@ class HomeFragment : BaseFragment(), RefreshCallBack { Bundle().apply { putString(AppConfig.ORDER_ID, items[position].orderId) }) } addOnItemChildClickListener(R.id.btnOk) { adapter, view, position -> - OrderUtils.getInstance().goReceWaybill(mContext, items[position].orderId) + OrderUtils.getInstance().goReceWaybill(mContext, items[position].orderId){ + if (it){ + initData() + } + } // ActivityUtils.startActivity( // mContext, // WaybillDetailActivity::class.java, @@ -155,13 +146,4 @@ class HomeFragment : BaseFragment(), RefreshCallBack { } - override fun onStart() { - super.onStart() - EventBus.getDefault().register(this); - } - - override fun onStop() { - super.onStop() - EventBus.getDefault().unregister(this); - } } \ No newline at end of file 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 57a5c6f..ba8e8d2 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 @@ -60,8 +60,8 @@ class CarsManActivity : BaseActivity() { .observeOn(AndroidSchedulers.mainThread()) .subscribe( BaseObserver(mContext, - object : RxHttpCallBack() { - override fun onSuccess(t: CommonResponseBean) { + object : RxHttpCallBack() { + override fun onSuccess(t: CommonResponseBean) { super.onSuccess(t) unBindCar(items[position].carId) } @@ -95,8 +95,8 @@ class CarsManActivity : BaseActivity() { this.carId = carId }) .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) - .subscribe(BaseObserver(mContext, object : RxHttpCallBack() { - override fun onSuccess(t: CommonResponseBean) { + .subscribe(BaseObserver(mContext, object : RxHttpCallBack() { + override fun onSuccess(t: CommonResponseBean) { super.onSuccess(t) initDate() } diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/DriverTeamDetailActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/DriverTeamDetailActivity.kt index 699ef8d..bf8a340 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/DriverTeamDetailActivity.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/DriverTeamDetailActivity.kt @@ -167,8 +167,8 @@ class DriverTeamDetailActivity : BaseActivity() driverId = SPUtils.instance.getUserInfo(mContext)!!.driverId }) .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) - .subscribe(BaseObserver(mContext, object : RxHttpCallBack() { - override fun onSuccess(t: CommonResponseBean) { + .subscribe(BaseObserver(mContext, object : RxHttpCallBack() { + override fun onSuccess(t: CommonResponseBean) { super.onSuccess(t) setResult(RESULT_OK, Intent().apply { putExtra(AppConfig.REFRSH, true) }) finish() @@ -181,8 +181,8 @@ class DriverTeamDetailActivity : BaseActivity() reason = reject }) .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) - .subscribe(BaseObserver(mContext, object : RxHttpCallBack() { - override fun onSuccess(t: CommonResponseBean) { + .subscribe(BaseObserver(mContext, object : RxHttpCallBack() { + override fun onSuccess(t: CommonResponseBean) { super.onSuccess(t) setResult(RESULT_OK, Intent().apply { putExtra(AppConfig.REFRSH, true) }) finish() diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/WaybillFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/WaybillFragment.kt index 4cc267c..b11f508 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/WaybillFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/WaybillFragment.kt @@ -48,8 +48,8 @@ class WaybillFragment : BaseFragment(), RefreshCallBack "全部", "待装货", "待卸货", - "待评价", - "取消" + "待结算", + "已完成" ) override fun onFragmentVisibleChange(isVisible: Boolean) { 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 b870c2a..30cff9e 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 @@ -51,17 +51,9 @@ class WaybillDetailActivity : BaseActivity() { BaseUtils.callPhone(this@WaybillDetailActivity, "15838201105") } binding.btnReceiving.setOnClickListener { - OrderUtils.getInstance().goReceWaybill(mContext, orderId) - -// DataManager.getInstance().receivingOrders(orderId, "22") -// .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) -// .subscribe(BaseObserver(mContext, object : RxHttpCallBack() { -// override fun onSuccess(t: CommonResponseBean) { -// super.onSuccess(t) -// EventBus.getDefault().post(OrderStauEvent(1)) -// } -// })) - + OrderUtils.getInstance().goReceWaybill(mContext, orderId){ + ActivityUtils.startActivity(mContext,WaybillSuccActivity::class.java,intent.extras) + } } } 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 16448ba..7d3533b 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 @@ -17,6 +17,7 @@ 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.event.RefreshEvent import com.dahe.gldriver.net.BaseObserver import com.dahe.gldriver.net.DataManager import com.dahe.gldriver.net.RxHttpCallBack @@ -34,6 +35,7 @@ import com.dahe.mylibrary.utils.ToastUtils import com.permissionx.guolindev.PermissionX import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.schedulers.Schedulers +import org.greenrobot.eventbus.EventBus /** @@ -50,7 +52,9 @@ class WaybillLoadActivity : BaseActivity() { lateinit var orderBean: OrderDetailBean override fun initView(savedInstanceState: Bundle?) { - setTitleBar("运单详情", View.OnClickListener { finish() }, true, "查看单据") { + setTitleBar("运单详情", View.OnClickListener { + finish() + }, true, "查看单据") { ToastUtils.showToast(mContext, "查看单据") } diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillRateActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillRateActivity.kt new file mode 100644 index 0000000..c870ad5 --- /dev/null +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillRateActivity.kt @@ -0,0 +1,90 @@ +package com.dahe.gldriver.ui.waybill.activity + +import android.os.Bundle +import android.view.View +import androidx.recyclerview.widget.GridLayoutManager +import com.dahe.gldriver.R +import com.dahe.gldriver.base.AppConfig +import com.dahe.gldriver.bean.Resources +import com.dahe.gldriver.bean.UpRate +import com.dahe.gldriver.bean.WaybillPhoto +import com.dahe.gldriver.databinding.ActivityWaybillRateBinding +import com.dahe.gldriver.net.BaseObserver +import com.dahe.gldriver.net.DataManager +import com.dahe.gldriver.net.RxHttpCallBack +import com.dahe.gldriver.oss.OssServiceUtil +import com.dahe.gldriver.utils.OcrUtils +import com.dahe.mylibrary.adapter.GridImageAdapter +import com.dahe.mylibrary.base.BaseActivity +import com.dahe.mylibrary.net.CommonResponseBean +import com.dahe.mylibrary.utils.ImageLoader +import com.dahe.mylibrary.utils.PopsUtils +import com.dahe.mylibrary.weight.FullyGridLayoutManager +import com.luck.picture.lib.decoration.GridSpacingItemDecoration +import com.luck.picture.lib.entity.LocalMedia +import com.luck.picture.lib.utils.DensityUtil +import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers +import io.reactivex.rxjava3.schedulers.Schedulers + +/** + * @ClassName WaybillRateActivtiy + * @Author john + * @Date 2024/3/14 16:36 + * @Description TODO + */ +class WaybillRateActivity : BaseActivity() { + + private var upRate = UpRate() + + override fun initView(savedInstanceState: Bundle?) { + setStatusBarColor(R.color.white) + setTitleBar("评价", true) + binding.run { + rating.setOnRatingChangeListener { ratingBar, rating -> + upRate.opinionsStarRating = (rating.toInt() * 2).toString() + } + btnOk.setOnClickListener { + subMint() + } + ivAdd.setOnClickListener { + OcrUtils.getInstance() + .noOcrUpPic(mContext, this@WaybillRateActivity) { picPath, ocrResult -> + ImageLoader.getInstance() + .loadRoundImage(mContext, picPath.locPic, 12, ivAdd) + upRate.resourcesList.add(0, Resources().apply { + resourcesUrl = picPath.picPath + resourcesType = "0" + }) + + } + + } + } + } + + override fun initDate() { + + } + + private fun subMint() { + var orderID = intent.extras?.getString(AppConfig.ORDER_ID,"") + if (upRate.opinionsStarRating.isNullOrEmpty() || + binding.etContent.text.isNullOrEmpty() || + orderID.isNullOrEmpty() || + upRate.resourcesList.size == 0 + ) { + showToast("请完善信息") + return + } + upRate.opinionsContent = binding.etContent.text.trim().toString() + upRate.orderId = orderID + DataManager.getInstance().submitComments(upRate) + .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) + .subscribe(BaseObserver(mContext,object : RxHttpCallBack(){ + override fun onSuccess(t: CommonResponseBean) { + super.onSuccess(t) + finish() + } + })) + } +} \ 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 cea7b5f..e08709f 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 @@ -1,9 +1,11 @@ package com.dahe.gldriver.ui.waybill.activity import android.os.Bundle +import android.view.View import com.dahe.gldriver.R import com.dahe.gldriver.base.AppConfig import com.dahe.gldriver.databinding.ActivityWaybillSuccBinding +import com.dahe.gldriver.event.RefreshEvent import com.dahe.gldriver.ui.HomeActivity import com.dahe.mylibrary.base.BaseActivity import com.dahe.mylibrary.utils.ActivityUtils @@ -11,6 +13,7 @@ import com.dahe.mylibrary.utils.AppUtils import com.dahe.mylibrary.utils.BaseUtils import com.dahe.mylibrary.utils.TimeUtil import com.dahe.mylibrary.utils.ToastUtils +import org.greenrobot.eventbus.EventBus /** * @ClassName WaybillSuccActivity @@ -19,17 +22,19 @@ import com.dahe.mylibrary.utils.ToastUtils * @Description 接单 装货 卸货成功页面 */ class WaybillSuccActivity : BaseActivity() { + lateinit var orderId: String override fun initView(savedInstanceState: Bundle?) { setStatusBarColor(R.color.white) val type = intent.extras?.getInt(AppConfig.SUCCESS_TYPE) - setTitleBar(if (type==0) "接单成功" else if (type==1) "装货成功" else "卸货成功", true) + orderId = intent.extras?.getString(AppConfig.ORDER_ID).toString() + setTitleBar(if (type == 0) "接单成功" else if (type == 1) "装货成功" else "卸货成功", true) changeType(type) binding.run { btnLeft.setOnClickListener { - goLeftOrRight(type,true) + goLeftOrRight(type, true) } btnRight.setOnClickListener { - goLeftOrRight(type,false) + goLeftOrRight(type, false) } tvTime.text = TimeUtil.getNowString("") @@ -72,7 +77,8 @@ class WaybillSuccActivity : BaseActivity() { }.setBackgroundResource(R.drawable.icon_succ_unload) tvSucc.text = "恭喜您,卸货成功" btnLeft.text = "返回首页" - btnRight.text = "查看运单" + btnRight.visibility = View.GONE +// btnRight.text = "查看运单" } } } @@ -82,16 +88,40 @@ class WaybillSuccActivity : BaseActivity() { * * */ private fun goLeftOrRight(type: Int?, isLeft: Boolean) { - if (isLeft){ - when(type){ - 0->ActivityUtils.startActivity(mContext, WaybillLoadActivity::class.java) - 1,2->ActivityUtils.finishToActivity(HomeActivity::class.java,false) + if (isLeft) { + when (type) { + 0 -> ActivityUtils.finishToActivityAndGoNew( + mContext, + HomeActivity::class.java, + WaybillLoadActivity::class.java, + intent.extras, + false + ) + + 1, 2 -> { + ActivityUtils.finishToActivity(HomeActivity::class.java, false) + EventBus.getDefault().post(RefreshEvent(type)) + } } - }else{ - when(type){ - 0->ActivityUtils.startActivity(mContext, WaybillUpPicActivity::class.java,Bundle().apply { putInt(AppConfig.SUCCESS_TYPE,1) }) - 1->ActivityUtils.startActivity(mContext, WaybillUnlLoadActivity::class.java) - 2->ActivityUtils.startActivity(mContext, WaybillDetailActivity::class.java) + } else { + when (type) { + 0 -> ActivityUtils.finishToActivityAndGoNew( + mContext, + HomeActivity::class.java, + WaybillUpPicActivity::class.java, + intent.extras, + false + ) + + 1 -> ActivityUtils.finishToActivityAndGoNew( + mContext, + HomeActivity::class.java, + WaybillUnlLoadActivity::class.java, + intent.extras, + false + ) + + 2 -> ActivityUtils.finishToActivity(HomeActivity::class.java, false) } } } 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 1a6fd69..3062d45 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 @@ -100,7 +100,8 @@ class WaybillUpPicActivity : BaseActivity() { if (upBean.waybillPhotoList.find { it.type == if (type == 1) "1" else "2" } == null) { upBean.waybillPhotoList.add(picBean) } else { - upBean.waybillPhotoList.find { it.type == if (type == 1) "1" else "2" }!!.photoUrl = oldPath + upBean.waybillPhotoList.find { it.type == if (type == 1) "1" else "2" }!!.photoUrl = + oldPath } } } @@ -126,7 +127,8 @@ class WaybillUpPicActivity : BaseActivity() { if (upBean.waybillPhotoList.find { it.type == if (type == 1) "1" else "2" } == null) { upBean.waybillPhotoList.add(picBean) } else { - upBean.waybillPhotoList.find { it.type == if (type == 1) "1" else "2" }!!.photoUrl = oldPath + upBean.waybillPhotoList.find { it.type == if (type == 1) "1" else "2" }!!.photoUrl = + oldPath } } } @@ -172,7 +174,8 @@ class WaybillUpPicActivity : BaseActivity() { if (upBean.waybillPhotoList.find { it.type == "3" } == null) { upBean.waybillPhotoList.add(picBean) } else { - upBean.waybillPhotoList.find { it.type == "3" }!!.photoUrl = oldPath + upBean.waybillPhotoList.find { it.type == "3" }!!.photoUrl = + oldPath } } } @@ -199,7 +202,8 @@ class WaybillUpPicActivity : BaseActivity() { if (upBean.waybillPhotoList.find { it.type == "3" } == null) { upBean.waybillPhotoList.add(picBean) } else { - upBean.waybillPhotoList.find { it.type == "3" }!!.photoUrl = oldPath + upBean.waybillPhotoList.find { it.type == "3" }!!.photoUrl = + oldPath } } } @@ -246,19 +250,19 @@ class WaybillUpPicActivity : BaseActivity() { DataManager.getInstance().driverLoadOrUnload(upBean) .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) - .subscribe(BaseObserver(mContext, object : RxHttpCallBack() { - override fun onSuccess(t: CommonResponseBean) { + .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) }) + intent.extras) } else { ActivityUtils.startActivity( mContext, WaybillSuccActivity::class.java, - Bundle().apply { putInt(AppConfig.SUCCESS_TYPE, 2) }) + intent.extras) } } })) diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/CancelWaybillFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/CancelWaybillFragment.kt index a063ac1..46c520b 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/CancelWaybillFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/CancelWaybillFragment.kt @@ -13,6 +13,7 @@ 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.WaybillRateActivity import com.dahe.gldriver.utils.OrderUtils import com.dahe.glex.bean.OrderBean import com.dahe.glex.bean.WayBillBean @@ -20,6 +21,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 @@ -28,7 +30,7 @@ import io.reactivex.rxjava3.schedulers.Schedulers * @ClassName AllWaybillFragment * @Author 用户 * @Date 2024/1/24 14:06 - * @Description 取消运单 + * @Description 取消运单-修改未已完成 */ class CancelWaybillFragment : BaseFragment(), RefreshCallBack , OnSearchListener { @@ -56,6 +58,10 @@ class CancelWaybillFragment : BaseFragment(), Refres // 打开空布局功能 (adapter as WaybillListAdapter).isStateViewEnable = true adapter as WaybillListAdapter + }.apply { + addOnItemChildClickListener(R.id.btnOk){_,_,position-> + ActivityUtils.startActivity(mContext,WaybillRateActivity::class.java) + } } } initData() @@ -70,7 +76,7 @@ class CancelWaybillFragment : BaseFragment(), Refres } private fun initData(search: String = "") { - DataManager.getInstance().selectMyWaybillList(mRefreshPage, mRefreshCount, "103000",search) + DataManager.getInstance().selectMyWaybillList(mRefreshPage, mRefreshCount, "102090",search) .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) .subscribe(BaseObserver(mContext, object : RxHttpCallBack>() { override fun onSuccess(t: CommonResponseBean>) { diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitAppraiseFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitAppraiseFragment.kt index 09b1d4e..40ff1b4 100644 --- a/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitAppraiseFragment.kt +++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitAppraiseFragment.kt @@ -2,17 +2,20 @@ 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.WaybillRateActivity import com.dahe.gldriver.utils.OrderUtils import com.dahe.glex.bean.OrderBean import com.dahe.glex.bean.WayBillBean @@ -20,6 +23,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 @@ -28,9 +32,9 @@ import io.reactivex.rxjava3.schedulers.Schedulers * @ClassName AllWaybillFragment * @Author 用户 * @Date 2024/1/24 14:06 - * @Description 待评价 + * @Description 待评价-修改未待结算 */ -class WaitAppraiseFragment : BaseFragment() , RefreshCallBack , +class WaitAppraiseFragment : BaseFragment(), RefreshCallBack, OnSearchListener { @@ -56,6 +60,13 @@ class WaitAppraiseFragment : BaseFragment() , Refres // 打开空布局功能 (adapter as WaybillListAdapter).isStateViewEnable = true adapter as WaybillListAdapter + }.apply { + addOnItemChildClickListener(R.id.btnOk) { _, _, position -> + val orderBean = items[position] + ActivityUtils.startActivity(mContext,WaybillRateActivity::class.java, Bundle().apply { + putString(AppConfig.ORDER_ID,orderBean.orderId) + }) + } } } initData() @@ -70,16 +81,16 @@ class WaitAppraiseFragment : BaseFragment() , Refres } private fun initData(search: String = "") { - DataManager.getInstance().selectMyWaybillList(mRefreshPage,mRefreshCount,"102080",search) + DataManager.getInstance().selectMyWaybillList(mRefreshPage, mRefreshCount, "102070", 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 { @@ -91,7 +102,10 @@ class WaitAppraiseFragment : BaseFragment() , Refres ) } - 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/WaitLoadFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/fragment/WaitLoadFragment.kt index 7b53109..9056fde 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 @@ -13,6 +13,7 @@ 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.event.RefreshEvent import com.dahe.gldriver.net.BaseObserver import com.dahe.gldriver.net.DataManager import com.dahe.gldriver.net.RxHttpCallBack @@ -30,6 +31,8 @@ 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 +import org.greenrobot.eventbus.EventBus +import org.greenrobot.eventbus.Subscribe /** * @ClassName AllWaybillFragment @@ -48,6 +51,7 @@ class WaitLoadFragment : BaseFragment(), RefreshCall } override fun onFragmentFirstVisible() { + EventBus.getDefault().register(this); binding.run { setRefresh(refresh, this@WaitLoadFragment) adapter = recyclerView.run { @@ -142,6 +146,17 @@ class WaitLoadFragment : BaseFragment(), RefreshCall } })) } + @Subscribe + fun eventStatu(event: RefreshEvent) { + if (event.statu == 1) { + initData() + } + } + + override fun onDestroy() { + super.onDestroy() + EventBus.getDefault().unregister(this); + } } \ No newline at end of file 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 8564bf8..4665b6f 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 @@ -12,6 +12,7 @@ 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.event.RefreshEvent import com.dahe.gldriver.net.BaseObserver import com.dahe.gldriver.net.DataManager import com.dahe.gldriver.net.RxHttpCallBack @@ -29,6 +30,8 @@ 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 +import org.greenrobot.eventbus.EventBus +import org.greenrobot.eventbus.Subscribe /** * @ClassName AllWaybillFragment @@ -47,6 +50,7 @@ class WaitUnLoadFragment : BaseFragment(), RefreshCa } override fun onFragmentFirstVisible() { + EventBus.getDefault().register(this); binding.run { setRefresh(refresh, this@WaitUnLoadFragment) adapter = recyclerView.run { @@ -141,4 +145,18 @@ class WaitUnLoadFragment : BaseFragment(), RefreshCa } })) } + + @Subscribe + fun eventStatu(event: RefreshEvent) { + if (event.statu == 2) { + initData() + } + } + + + + override fun onDestroy() { + super.onDestroy() + EventBus.getDefault().unregister(this); + } } \ No newline at end of file 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 905e283..f7e951a 100644 --- a/app/src/main/java/com/dahe/gldriver/utils/CommonPopUtils.kt +++ b/app/src/main/java/com/dahe/gldriver/utils/CommonPopUtils.kt @@ -42,7 +42,7 @@ class CommonPopUtils private constructor() { .asConfirm( "去装货", """已选择:${carBean.vehicleNum},是否立即装货""", "取消", "确定", - listener, null, true + listener, null,false ) .show() } diff --git a/app/src/main/java/com/dahe/gldriver/utils/OrderUtils.kt b/app/src/main/java/com/dahe/gldriver/utils/OrderUtils.kt index f3c3bfd..ec8a21e 100644 --- a/app/src/main/java/com/dahe/gldriver/utils/OrderUtils.kt +++ b/app/src/main/java/com/dahe/gldriver/utils/OrderUtils.kt @@ -4,6 +4,7 @@ import android.content.Context import android.os.Bundle import com.dahe.gldriver.base.AppConfig import com.dahe.gldriver.bean.CarBean +import com.dahe.gldriver.callback.OnResultListener import com.dahe.gldriver.net.BaseObserver import com.dahe.gldriver.net.DataManager import com.dahe.gldriver.net.RxHttpCallBack @@ -13,7 +14,6 @@ import com.dahe.mylibrary.net.CommonResponseBean import com.dahe.mylibrary.utils.ActivityUtils import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.schedulers.Schedulers -import org.greenrobot.eventbus.EventBus /** * @ClassName OrderUtils @@ -35,7 +35,7 @@ class OrderUtils private constructor() { "102050" -> "待卸货" "102060" -> "待签收" "102070" -> "待结算" - "102080" -> "待评价" + "102090" -> "已完成" "103000" -> "已取消" else -> { "" @@ -52,8 +52,8 @@ class OrderUtils private constructor() { "102040" -> "去装货" "102050" -> "去卸货" "102060" -> "待签收" - "102070" -> "待结算" - "102080" -> "去评价" + "102070" -> "去评价" + "102090" -> "去评价" "103000" -> "已取消" else -> { "" @@ -83,7 +83,7 @@ class OrderUtils private constructor() { * * 接单(包含选择车辆)->装货 * */ - fun goReceWaybill(context: Context, orderId: String) { + fun goReceWaybill(context: Context, orderId: String,listener:OnResultListener) { //选择车辆 DataManager.getInstance().carList() .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) @@ -95,11 +95,11 @@ class OrderUtils private constructor() { CommonPopUtils.getInstance() .showCarList(context, t.data) { //接单接口 - receivingOrders(context, orderId, it) + receivingOrders(context, orderId, it,listener) } } else { //单量车,直接默认当前车辆 ,接单接口 - receivingOrders(context, orderId, t.data[0]) + receivingOrders(context, orderId, t.data[0], listener) } } }) @@ -110,7 +110,12 @@ class OrderUtils private constructor() { * *调用接单接口 * */ - private fun receivingOrders(context: Context, orderId: String, car: CarBean) { + private fun receivingOrders( + context: Context, + orderId: String, + car: CarBean, + listener: OnResultListener + ) { DataManager.getInstance() .receivingOrders(orderId, car.carId) .subscribeOn(Schedulers.io()) @@ -118,9 +123,10 @@ class OrderUtils private constructor() { .subscribe( BaseObserver( context, - object : RxHttpCallBack() { - override fun onSuccess(t: CommonResponseBean) { + object : RxHttpCallBack() { + override fun onSuccess(t: CommonResponseBean) { super.onSuccess(t) + listener.onResult(true) //接单成功,弹窗是否去装货 CommonPopUtils.getInstance() .showLoadPop(context, car) { diff --git a/app/src/main/res/layout/activity_auth_party.xml b/app/src/main/res/layout/activity_auth_party.xml index 67f6a0d..aef37a5 100644 --- a/app/src/main/res/layout/activity_auth_party.xml +++ b/app/src/main/res/layout/activity_auth_party.xml @@ -126,8 +126,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@null" - android:drawableRight="@drawable/right_gray" - android:drawablePadding="@dimen/dp_6" + android:paddingRight="@dimen/dp_8" android:hint="请输入详细地址" android:textColor="@color/black" android:textSize="@dimen/sp_15" /> diff --git a/app/src/main/res/layout/activity_person_info.xml b/app/src/main/res/layout/activity_person_info.xml index 71c5194..53f8945 100644 --- a/app/src/main/res/layout/activity_person_info.xml +++ b/app/src/main/res/layout/activity_person_info.xml @@ -277,7 +277,6 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_waybill_unload.xml b/app/src/main/res/layout/activity_waybill_unload.xml index 27a3978..8ba4dde 100644 --- a/app/src/main/res/layout/activity_waybill_unload.xml +++ b/app/src/main/res/layout/activity_waybill_unload.xml @@ -528,7 +528,7 @@ android:layout_centerVertical="true" android:layout_toLeftOf="@+id/btnRight" android:background="@drawable/shape_btn_empty_bg" - android:text="联系装货人" + android:text="联系卸货人" android:textColor="@color/main_red" android:textSize="@dimen/sp_15" /> diff --git a/mylibrary/src/main/java/com/dahe/mylibrary/net/JsonInterceptor.java b/mylibrary/src/main/java/com/dahe/mylibrary/net/JsonInterceptor.java index acb186e..773a09e 100644 --- a/mylibrary/src/main/java/com/dahe/mylibrary/net/JsonInterceptor.java +++ b/mylibrary/src/main/java/com/dahe/mylibrary/net/JsonInterceptor.java @@ -49,7 +49,7 @@ public class JsonInterceptor implements Interceptor { JSONObject jsonObject = new JSONObject(responseBodyStr); String str = jsonObject.optString("data"); int code = jsonObject.optInt("code"); -// if (-1 == code) { +// if (500 == code) { // jsonObject.put("data", new JSONObject()); // throw new ResultException(); // } else { @@ -57,10 +57,9 @@ public class JsonInterceptor implements Interceptor { // jsonObject.put("data", new JSONObject()); // } // } - if (code != 200) { - if (TextUtils.isEmpty(str)) { - jsonObject.put("data", new String()); - } + + if (TextUtils.isEmpty(str)) { + jsonObject.put("data", new JSONObject()); } String data = jsonObject.toString(); diff --git a/mylibrary/src/main/java/com/dahe/mylibrary/pop/PopBottomPic.kt b/mylibrary/src/main/java/com/dahe/mylibrary/pop/PopBottomPic.kt index e9c2213..11fc287 100644 --- a/mylibrary/src/main/java/com/dahe/mylibrary/pop/PopBottomPic.kt +++ b/mylibrary/src/main/java/com/dahe/mylibrary/pop/PopBottomPic.kt @@ -5,8 +5,6 @@ import android.widget.Button import com.dahe.mylibrary.R import com.dahe.mylibrary.adapter.GridImageAdapter import com.dahe.mylibrary.callback.OnPicResultListener -import com.dahe.mylibrary.utils.SelectPicUtils -import com.dahe.mylibrary.utils.ToastUtils import com.dahe.mylibrary.weight.GlideEngine import com.dahe.mylibrary.weight.ImageFileCompressEngine import com.luck.picture.lib.basic.PictureSelectionCameraModel @@ -17,7 +15,7 @@ import com.luck.picture.lib.config.SelectModeConfig import com.luck.picture.lib.entity.LocalMedia import com.luck.picture.lib.interfaces.OnResultCallbackListener import com.lxj.xpopup.core.BottomPopupView -import kotlin.math.min +import kotlin.properties.Delegates /** * @ClassName PopBottomPic @@ -27,6 +25,7 @@ import kotlin.math.min */ class PopBottomPic( context: Context, + num: Int = 1, myAdapter: GridImageAdapter, onPicResultListener: OnPicResultListener ) : BottomPopupView(context) { @@ -34,10 +33,12 @@ class PopBottomPic( private var listener: OnPicResultListener var myAdapter: GridImageAdapter + var num by Delegates.notNull() init { this.listener = onPicResultListener this.myAdapter = myAdapter + this.num = num } @@ -91,7 +92,7 @@ class PopBottomPic( .setCompressEngine(ImageFileCompressEngine()) .isPreviewImage(true) .isMaxSelectEnabledMask(true) - .setMaxSelectNum(1) + .setMaxSelectNum(num) .isGif(false) .setSelectionMode(SelectModeConfig.SINGLE) .setSelectedData(myAdapter.data) diff --git a/mylibrary/src/main/java/com/dahe/mylibrary/utils/ActivityUtils.java b/mylibrary/src/main/java/com/dahe/mylibrary/utils/ActivityUtils.java index 1480644..2ba05e2 100644 --- a/mylibrary/src/main/java/com/dahe/mylibrary/utils/ActivityUtils.java +++ b/mylibrary/src/main/java/com/dahe/mylibrary/utils/ActivityUtils.java @@ -291,7 +291,7 @@ public class ActivityUtils { * * @param isIncludeSelf 是否结束该activity自己 */ - public static boolean finishToActivity(Context ctx ,@NonNull final Class clz,@NonNull final Class newclz, + public static boolean finishToActivityAndGoNew(Context ctx ,@NonNull final Class clz,@NonNull final Class newclz, final boolean isIncludeSelf) { List activities = CommonBaseLibrary.activityList; for (int i = activities.size() - 1; i >= 0; --i) { @@ -310,6 +310,30 @@ public class ActivityUtils { return false; } + /** + * 结束到指定Activity,并进入指定页面 + * + * @param isIncludeSelf 是否结束该activity自己 + */ + public static boolean finishToActivityAndGoNew(Context ctx ,@NonNull final Class clz,@NonNull final Class newclz,Bundle bundle, + final boolean isIncludeSelf) { + List activities = CommonBaseLibrary.activityList; + for (int i = activities.size() - 1; i >= 0; --i) { + Activity aActivity = activities.get(i); + if (aActivity.getClass().equals(clz)) { + if (isIncludeSelf) { + finishActivity(aActivity); + } + startActivity(ctx,newclz,bundle); + return true; + } else { + finishActivity(aActivity); + } +// finishActivity(aActivity); + } + return false; + } + /** * 结束除最新之外的同类型Activity *

也就是让栈中最多只剩下一种类型的Activity

diff --git a/mylibrary/src/main/java/com/dahe/mylibrary/utils/PopsUtils.kt b/mylibrary/src/main/java/com/dahe/mylibrary/utils/PopsUtils.kt index 55da8c9..0e638d7 100644 --- a/mylibrary/src/main/java/com/dahe/mylibrary/utils/PopsUtils.kt +++ b/mylibrary/src/main/java/com/dahe/mylibrary/utils/PopsUtils.kt @@ -30,11 +30,25 @@ class PopsUtils private constructor(){ fun showSelPic(ctx: Context,myAdapter: GridImageAdapter, listenter: OnPicResultListener){ XPopup.Builder(ctx) .dismissOnTouchOutside(true) - .asCustom(PopBottomPic(ctx, myAdapter, listenter)) + .asCustom(PopBottomPic(ctx,1, myAdapter, listenter)) .show() } + /** + * 选择照片,并设置最大选中数量 + * + * @param myAdapter + * @param listenter 结果回调 + */ + fun showNorSelPicAndNum(ctx: Context,num: Int = 1,myAdapter: GridImageAdapter, listenter: OnPicResultListener){ +// XPopup.Builder(ctx) +// .dismissOnTouchOutside(true) +// .asCustom(PopNorBottomPic(ctx,1, myAdapter, listenter)) +// .show() + } + + /** * 选择照片 拍照或者相机 *