From 9032462238327b971df1a5f72ef343200a5e0103 Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期三, 11 十二月 2024 18:13:44 +0800 Subject: [PATCH] 1.问题上报相关 2.问题上报列表相关 3.添加图片上传中断功能 4.图片添加的bug --- app/src/main/java/com/dayu/pipirrapp/activity/OrderDealActivity.java | 80 ++++++++++++---------------------------- 1 files changed, 24 insertions(+), 56 deletions(-) diff --git a/app/src/main/java/com/dayu/pipirrapp/activity/OrderDealActivity.java b/app/src/main/java/com/dayu/pipirrapp/activity/OrderDealActivity.java index a95d750..a50d481 100644 --- a/app/src/main/java/com/dayu/pipirrapp/activity/OrderDealActivity.java +++ b/app/src/main/java/com/dayu/pipirrapp/activity/OrderDealActivity.java @@ -4,7 +4,6 @@ import android.content.Context; import android.content.Intent; -import android.net.Uri; import android.os.Build; import android.os.Bundle; import android.text.TextUtils; @@ -34,6 +33,7 @@ import com.dayu.pipirrapp.service.MyLocationService; import com.dayu.pipirrapp.tool.FullyGridLayoutManager; import com.dayu.pipirrapp.tool.GlideEngine; +import com.dayu.pipirrapp.tool.ImageFileCompressEngine; import com.dayu.pipirrapp.utils.CommonKeyName; import com.dayu.pipirrapp.utils.ToastUtil; import com.dayu.pipirrapp.view.TitleBar; @@ -43,28 +43,21 @@ import com.luck.picture.lib.config.PictureMimeType; import com.luck.picture.lib.config.SelectMimeType; import com.luck.picture.lib.decoration.GridSpacingItemDecoration; -import com.luck.picture.lib.engine.CompressFileEngine; import com.luck.picture.lib.engine.ImageEngine; import com.luck.picture.lib.entity.LocalMedia; import com.luck.picture.lib.entity.MediaExtraInfo; import com.luck.picture.lib.interfaces.OnExternalPreviewEventListener; -import com.luck.picture.lib.interfaces.OnKeyValueResultCallbackListener; -import com.luck.picture.lib.utils.DateUtils; import com.luck.picture.lib.utils.DensityUtil; import com.luck.picture.lib.utils.MediaUtils; import com.luck.picture.lib.utils.PictureFileUtils; import com.tencent.bugly.crashreport.CrashReport; -import java.io.File; import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; -import top.zibin.luban.CompressionPredicate; -import top.zibin.luban.Luban; -import top.zibin.luban.OnNewCompressListener; -import top.zibin.luban.OnRenameListener; +import retrofit2.Call; /** * OrderDealDetailActivity - @@ -142,6 +135,11 @@ //娣诲姞鍥剧墖 mOpenPicture(); } + + @Override + public void onDeleteClick(int position) { + deleteItem(position); + } }); binding.dealButton.setOnClickListener(v -> { boolean isAllPost = true; @@ -209,6 +207,7 @@ @Override public void onPreviewDelete(int position) { + deleteItem(position); mAdapter.remove(position); mAdapter.notifyItemRemoved(position); } @@ -261,7 +260,7 @@ //鍒ゆ柇鏄惁鏈夎繖涓矾寰勶紝娌℃湁鐨勮瘽涓婁紶璇ュ浘鐗� if (!existingPaths.contains(compressPath)) { UplodFileState uplodFileState = new UplodFileState(); - uplodFileState.setFilePath(media.getRealPath()); + uplodFileState.setFilePath(compressPath); uplodFileStates.add(uplodFileState); // 鎵ц涓婁紶鍥剧墖鐨勬搷浣� uplodeImg(uplodFileState); @@ -282,52 +281,6 @@ } }); - } - - - /** - * 鑷畾涔夊浘鐗囧帇缂� - */ - private static class ImageFileCompressEngine implements CompressFileEngine { - - @Override - public void onStartCompress(Context context, ArrayList<Uri> source, OnKeyValueResultCallbackListener call) { - Luban.with(context).load(source).ignoreBy(100).setRenameListener(new OnRenameListener() { - @Override - public String rename(String filePath) { - int indexOf = filePath.lastIndexOf("."); - String postfix = indexOf != -1 ? filePath.substring(indexOf) : ".jpg"; - return DateUtils.getCreateFileName("CMP_") + postfix; - } - }).filter(new CompressionPredicate() { - @Override - public boolean apply(String path) { - if (PictureMimeType.isUrlHasImage(path) && !PictureMimeType.isHasHttp(path)) { - return true; - } - return !PictureMimeType.isUrlHasGif(path); - } - }).setCompressListener(new OnNewCompressListener() { - @Override - public void onStart() { - - } - - @Override - public void onSuccess(String source, File compressFile) { - if (call != null) { - call.onCallback(source, compressFile.getAbsolutePath()); - } - } - - @Override - public void onError(String source, Throwable e) { - if (call != null) { - call.onCallback(source, null); - } - } - }).launch(); - } } @@ -405,4 +358,19 @@ super.onDestroy(); LiveEventBus.get(CommonKeyName.locationData).removeObserver(locationObserver); } + + /** + * 棰勮鍜屽浘鐗囧垪琛ㄥ垹闄ゅ浘鐗囨椂澶勭悊鍒犻櫎浜嬩欢 + */ + private void deleteItem(int position) { + try { + Call<BaseResponse> mCall = uplodFileStates.get(position).getThisCall(); + if (mCall != null) { + mCall.cancel(); + } + } catch (Exception e) { + e.printStackTrace(); + } + uplodFileStates.remove(position); + } } -- Gitblit v1.8.0