From 23f6e12b35d17c14bd5e3a7857c8944935cac6b1 Mon Sep 17 00:00:00 2001 From: lijia Date: Tue, 30 Apr 2024 09:27:17 +0800 Subject: [PATCH] =?UTF-8?q?=E9=92=B1=E5=8C=85=E5=8A=9F=E8=83=BD=E8=B0=83?= =?UTF-8?q?=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../oss/OssServiceUtil.java | 32 ++++++++- .../activity/WaybillAppraiseActivity.kt | 2 +- .../waybill/activity/WaybillDetailActivity.kt | 24 +++++-- .../waybill/activity/WaybillLoadActivity.kt | 9 ++- .../activity/WaybillUnlLoadActivity.kt | 10 ++- .../waybill/activity/WaybillUpPicActivity.kt | 70 ++++++++++--------- .../utils/OrderUtils.kt | 2 +- .../com/arpa/mylibrary/pop/PopBottomPic.kt | 2 +- .../com/arpa/mylibrary/utils/PopsUtils.kt | 4 +- 9 files changed, 107 insertions(+), 48 deletions(-) diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/oss/OssServiceUtil.java b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/oss/OssServiceUtil.java index e1dab2e..d076fe0 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/oss/OssServiceUtil.java +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/oss/OssServiceUtil.java @@ -223,10 +223,24 @@ public class OssServiceUtil { * * @param localFiles */ - public void asyncPutImages(final List localFiles, PicsResultCallback callback) { + public void asyncPutImages(final List localFiles, final AppCompatActivity activity, PicsResultCallback callback) { + + if (activity != null) { + activity.runOnUiThread(new Runnable() { + @Override + public void run() { + initDialog(activity); + if (dialog != null) { + dialog.show(); + } + } + }); + } + //初始化 number = 1; success.clear(); + failure.clear(); for (int i = 0; i < localFiles.size(); i++) { File file = new File(localFiles.get(i)); if (!file.exists()) { @@ -245,6 +259,14 @@ public class OssServiceUtil { String aliPath = OssConfigBean.BUCKET_BASE_URL + OssConfigBean.BUCKET_OBJECT + name; success.add(aliPath); if (number == localFiles.size()) { + if (activity != null) { + activity.runOnUiThread(() -> { + if (dialog != null) { + dialog.dismiss(); + } + }); + + } //返回 上传路径,以及失败的路径 callback.onOssSuccess(success, failure); } @@ -257,6 +279,14 @@ public class OssServiceUtil { String aliPath = OssConfigBean.BUCKET_BASE_URL + OssConfigBean.BUCKET_OBJECT + name; failure.add(aliPath); if (number == localFiles.size()) { + if (activity != null) { + activity.runOnUiThread(() -> { + if (dialog != null) { + dialog.dismiss(); + } + }); + + } callback.onOssSuccess(success, failure); } } diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillAppraiseActivity.kt b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillAppraiseActivity.kt index 0298ca7..4a35ae7 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillAppraiseActivity.kt +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillAppraiseActivity.kt @@ -159,7 +159,7 @@ class WaybillAppraiseActivity : BaseActivity() { tvCom.text = orderBean?.receiverBusinessName//收货方 tvFreight.text = orderBean?.driverFreight.toString() - tvCarInfo.text = """${t.data.vehicleLength} ${t.data.vehicleType}""" + tvCarInfo.text = """${t.data.waybillInfo.carLong}/${t.data.waybillInfo.vehicleType}""" tvGoods.text = goods tvReceTime.text = orderBean.waybillInfo.receivingOrderTime diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillDetailActivity.kt b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillDetailActivity.kt index fb7ed06..84d27fc 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillDetailActivity.kt +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillDetailActivity.kt @@ -61,10 +61,10 @@ class WaybillDetailActivity : BaseActivity() { binding.btnCall.setOnClickListener { BaseUtils.callPhone(this@WaybillDetailActivity, "15838201105") } - binding.cvCap.visibility = if (isCap) View.VISIBLE else View.GONE + binding.btnReceiving.setOnClickListener { - if (!::orderDetailInfo.isInitialized){ - ToastUtils.showToast(mContext,"请稍等,暂未获取订单信息") + if (!::orderDetailInfo.isInitialized) { + ToastUtils.showToast(mContext, "请稍等,暂未获取订单信息") } OrderUtils.getInstance().goReceWaybill( mContext, @@ -106,9 +106,12 @@ class WaybillDetailActivity : BaseActivity() { } binding.run { - tvTime.text = """${TimeUtil.changeDateNoneFormat(t.data.receiverDeadline, - "yyyy-MM-dd" - )} 卸货""" + tvTime.text = """${ + TimeUtil.changeDateNoneFormat( + t.data.receiverDeadline, + "yyyy-MM-dd" + ) + } 卸货""" tvCom.text = t.data.receiverBusinessName tvUnloadDis.text = t.data.distance + "km" tvCarType.text = """${t.data.vehicleLength}/${t.data.vehicleType}""" @@ -117,6 +120,15 @@ class WaybillDetailActivity : BaseActivity() { tvConsignor.text = t.data.realCompanyName tvType.text = if (t.data.orderType == "0") "一装一卸" else "一装多卸" tvFreight.text = t.data.driverFreight.toString() + + if (!t.data.shipperCaptainId.isNullOrEmpty() && t.data.shipperCaptainId != "0") { + tvCapName.text = t.data.captainInfo.captainName + tvCapPhone.text = t.data.captainInfo.contactPhone + ImageLoader.getInstance() + .loadRoundImage(mContext, t.data.captainInfo.avatar, 8, ivCapHead) + } + + tvGoods.text = goods btnCall.setOnClickListener { PermissionX.init(this@WaybillDetailActivity) diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillLoadActivity.kt b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillLoadActivity.kt index 1807baf..24c5c0c 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillLoadActivity.kt +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillLoadActivity.kt @@ -164,10 +164,17 @@ class WaybillLoadActivity : BaseActivity() { tvCom.text = orderBean?.receiverBusinessName//收货方 tvFreight.text = orderBean?.driverFreight.toString() - tvCarInfo.text = """${t.data.vehicleLength} ${t.data.vehicleType}""" + tvCarInfo.text = """${t.data.waybillInfo.carLong}/${t.data.waybillInfo.vehicleType}""" tvGoods.text = goods if (!t.data.requirement.isNullOrEmpty()) tvRemark.text = t.data.requirement + if (!t.data.shipperCaptainId.isNullOrEmpty() && t.data.shipperCaptainId != "0") { + tvCapName.text = t.data.captainInfo.captainName + tvCapPhone.text = t.data.captainInfo.contactPhone + ImageLoader.getInstance() + .loadRoundImage(mContext, t.data.captainInfo.avatar, 8, ivCapHead) + } + btnLeft.setOnClickListener { val phone = orderBean.orderChildList.first { it.type == "1" }.phone if (phone.isNullOrEmpty()){ diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillUnlLoadActivity.kt b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillUnlLoadActivity.kt index 6503336..6f5bc9c 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillUnlLoadActivity.kt +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillUnlLoadActivity.kt @@ -33,6 +33,7 @@ import com.arpa.mylibrary.recycleviewswipe.RecycleViewDivider import com.arpa.mylibrary.utils.ActivityUtils import com.arpa.mylibrary.utils.BaseUtils import com.arpa.mylibrary.utils.ConvertUtils +import com.arpa.mylibrary.utils.ImageLoader import com.arpa.mylibrary.utils.LoadingUtils import com.arpa.mylibrary.utils.TimeUtil import com.arpa.mylibrary.utils.ToastUtils @@ -165,7 +166,7 @@ class WaybillUnlLoadActivity : BaseActivity() { tvCom.text = orderBean?.receiverBusinessName//收货方 tvFreight.text = orderBean?.driverFreight.toString() - tvCarInfo.text = """${t.data.vehicleLength}/${t.data.vehicleType}""" + tvCarInfo.text = """${t.data.waybillInfo.carLong}/${t.data.waybillInfo.vehicleType}""" tvGoods.text = goods tvReceTime.text = orderBean.waybillInfo.receivingOrderTime @@ -174,6 +175,13 @@ class WaybillUnlLoadActivity : BaseActivity() { if (!t.data.requirement.isNullOrEmpty()) tvRemark.text = t.data.requirement + if (!t.data.shipperCaptainId.isNullOrEmpty() && t.data.shipperCaptainId != "0") { + tvCapName.text = t.data.captainInfo.captainName + tvCapPhone.text = t.data.captainInfo.contactPhone + ImageLoader.getInstance() + .loadRoundImage(mContext, t.data.captainInfo.avatar, 8, ivCapHead) + } + btnLeft.setOnClickListener { var phone = orderBean.orderChildList.findLast { it.type=="2" }?.phone if (phone.isNullOrEmpty()){ diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillUpPicActivity.kt b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillUpPicActivity.kt index 2f98193..b79ab50 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillUpPicActivity.kt +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/ui/waybill/activity/WaybillUpPicActivity.kt @@ -33,6 +33,7 @@ import com.arpa.mylibrary.utils.ActivityUtils import com.arpa.mylibrary.utils.BitmapUtil import com.arpa.mylibrary.utils.FileUtil import com.arpa.mylibrary.utils.LoadingUtils +import com.arpa.mylibrary.utils.LoadingUtils.Companion.instance import com.arpa.mylibrary.utils.PopsUtils import com.arpa.mylibrary.utils.TimeUtil import com.arpa.mylibrary.utils.ToastUtils @@ -125,37 +126,39 @@ class WaybillUpPicActivity : BaseActivity() { myAdapter.selectMax = 1 myAdapter.setOnItemClickListener(object : OnItemClickListener { override fun onItemClick(v: View?, position: Int) { - PopsUtils.getInstance().showSelPic(mContext, true, myAdapter) { - OssServiceUtil.getInstance().run { - asyncPutImage(it[0].realPath, this@WaybillUpPicActivity) - setResultCallBack { data, oldPath -> - picBean = WaybillPhoto() - picBean.run { - localPhotoUrl = it[0].availablePath - photoUrl = oldPath - location = binding.tvLoca.text.toString() - receiptType = - if (type == 1) "4" else if (type == 2) "5" else "6" - this.type = "3" - } - if (upBean.waybillPhotoList.find { it.type == "3" } == null) { - upBean.waybillPhotoList.add(picBean) - } else { - upBean.waybillPhotoList.find { it.type == "3" }!!.photoUrl = - oldPath + PopsUtils.getInstance() + .showSelPic(mContext, 1, true, myAdapter) { + OssServiceUtil.getInstance().run { + asyncPutImage(it[0].realPath, this@WaybillUpPicActivity) + setResultCallBack { data, oldPath -> + picBean = WaybillPhoto() + picBean.run { + localPhotoUrl = it[0].availablePath + photoUrl = oldPath + location = binding.tvLoca.text.toString() + receiptType = + if (type == 1) "4" else if (type == 2) "5" else "6" + this.type = "3" + } + if (upBean.waybillPhotoList.find { it.type == "3" } == null) { + upBean.waybillPhotoList.add(picBean) + } else { + upBean.waybillPhotoList.find { it.type == "3" }!!.photoUrl = + oldPath + } } } + myAdapter.data.run { + clear() + addAll(it) + } + myAdapter.notifyDataSetChanged() } - myAdapter.data.run { - clear() - addAll(it) - } - myAdapter.notifyDataSetChanged() - } } override fun openPicture() { - PopsUtils.getInstance().showSelPic(mContext, true, myAdapter) { + PopsUtils.getInstance() + .showSelPic(mContext, 1, true, myAdapter) { OssServiceUtil.getInstance().run { asyncPutImage(it[0].realPath, this@WaybillUpPicActivity) setResultCallBack { data, oldPath -> @@ -176,12 +179,12 @@ class WaybillUpPicActivity : BaseActivity() { } } } - myAdapter.data.run { - clear() - addAll(it) + myAdapter.data.run { + clear() + addAll(it) + } + myAdapter.notifyDataSetChanged() } - myAdapter.notifyDataSetChanged() - } } }) @@ -208,8 +211,8 @@ class WaybillUpPicActivity : BaseActivity() { } private fun subMit(orderType: Int?) { - if (!::latLng.isInitialized){ - ToastUtils.showToast(mContext,"未获取到定位,请重新获取位置") + if (!::latLng.isInitialized) { + ToastUtils.showToast(mContext, "未获取到定位,请重新获取位置") return } upBean.run { @@ -557,9 +560,8 @@ class WaybillUpPicActivity : BaseActivity() { } - private fun selGoodPic(goodType: Int?, myAdapter: GridImageAdapter) { - PopsUtils.getInstance().showSelPic(mContext, false, myAdapter) { + PopsUtils.getInstance().showSelPic(mContext, 1, false, myAdapter) { OssServiceUtil.getInstance().run { asyncPutImage(it[0].realPath, this@WaybillUpPicActivity) setResultCallBack { data, oldPath -> diff --git a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/utils/OrderUtils.kt b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/utils/OrderUtils.kt index 742d093..5debde2 100644 --- a/app/src/main/java/com/arpa/hndahesudintocctmsdriver/utils/OrderUtils.kt +++ b/app/src/main/java/com/arpa/hndahesudintocctmsdriver/utils/OrderUtils.kt @@ -62,7 +62,7 @@ class OrderUtils private constructor() { "102030" -> "去接单" "102040" -> "去装货" "102050" -> "去卸货" - "102060" -> "待签收" + "102060" -> "去评价" "102070" -> "去评价" "102090" -> "去评价" "103000" -> "已取消" diff --git a/mylibrary/src/main/java/com/arpa/mylibrary/pop/PopBottomPic.kt b/mylibrary/src/main/java/com/arpa/mylibrary/pop/PopBottomPic.kt index 3417ea7..b2d5afa 100644 --- a/mylibrary/src/main/java/com/arpa/mylibrary/pop/PopBottomPic.kt +++ b/mylibrary/src/main/java/com/arpa/mylibrary/pop/PopBottomPic.kt @@ -115,7 +115,7 @@ class PopBottomPic( .isMaxSelectEnabledMask(true) .setMaxSelectNum(num) .isGif(false) - .setSelectionMode(SelectModeConfig.SINGLE) +// .setSelectionMode(SelectModeConfig.SINGLE) .setSelectedData(myAdapter.data) selectionModel.forResult(object : OnResultCallbackListener { override fun onResult(result: ArrayList) { diff --git a/mylibrary/src/main/java/com/arpa/mylibrary/utils/PopsUtils.kt b/mylibrary/src/main/java/com/arpa/mylibrary/utils/PopsUtils.kt index a93b80a..3ebcb82 100644 --- a/mylibrary/src/main/java/com/arpa/mylibrary/utils/PopsUtils.kt +++ b/mylibrary/src/main/java/com/arpa/mylibrary/utils/PopsUtils.kt @@ -27,10 +27,10 @@ class PopsUtils private constructor(){ * @param myAdapter * @param listenter 结果回调 */ - fun showSelPic(ctx: Context,isReturn : Boolean = false,myAdapter: GridImageAdapter, listenter: OnPicResultListener){ + fun showSelPic(ctx: Context,maxPics :Int = 1, isReturn : Boolean = false,myAdapter: GridImageAdapter, listenter: OnPicResultListener){ XPopup.Builder(ctx) .dismissOnTouchOutside(true) - .asCustom(PopBottomPic(ctx,1,isReturn, myAdapter, listenter)) + .asCustom(PopBottomPic(ctx,maxPics,isReturn, myAdapter, listenter)) .show() }