From 50f9b82ac862652e88444d727a32e0da1d824e9e Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期一, 13 一月 2025 15:57:06 +0800 Subject: [PATCH] 1.分水房相关 2.删除极光推送相关配置 3.优化图片显示相关 --- app/src/main/java/com/dayu/pipirrapp/fragment/MyFragment.java | 2 app/src/main/java/com/dayu/pipirrapp/MyAppGlideModule.java | 36 ++ app/src/main/java/com/dayu/pipirrapp/bean/net/DivideListResult.java | 59 ++++ app/src/main/java/com/dayu/pipirrapp/tool/BigimageUtils.java | 28 ++ app/src/main/java/com/dayu/pipirrapp/dao/DivideDao.java | 53 ++++ app/src/main/java/com/dayu/pipirrapp/adapter/AddPictureAdapter.java | 1 app/src/main/java/com/dayu/pipirrapp/bean/db/DivideBean.java | 213 ++++++++++++++++ app/src/main/java/com/dayu/pipirrapp/activity/IssueDetailActivity.java | 19 app/src/main/java/com/dayu/pipirrapp/bean/net/DivideResult.java | 208 ++++++++++++++++ app/src/main/java/com/dayu/pipirrapp/dao/AppDatabase.java | 5 app/src/main/java/com/dayu/pipirrapp/fragment/MapFragment.java | 36 ++ app/src/main/java/com/dayu/pipirrapp/activity/BaseActivity.java | 7 app/src/main/java/com/dayu/pipirrapp/bean/net/AddIssueRequest.java | 12 app/build.gradle | 46 --- app/src/main/java/com/dayu/pipirrapp/utils/CleanDataUtils.java | 10 15 files changed, 679 insertions(+), 56 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 054a484..e727076 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -130,48 +130,12 @@ //瀹氫綅 implementation 'com.baidu.lbsyun:BaiduMapSDK_Location:9.3.7' - -// //鎺ㄩ�佺浉鍏� -// // 姝ゅ浠Push 5.0.0 鐗堟湰涓轰緥锛�5.0.0 鐗堟湰寮�濮嬪彲浠ヨ嚜鍔ㄦ媺鍙� JCore 鍖咃紝鏃犻渶鍙﹀閰嶇疆 -// implementation 'cn.jiguang.sdk:jpush:5.2.2' -// //鑻ヤ笉闆嗘垚鍘傚晢閫氶亾锛屽彲鐩存帴璺宠繃浠ヤ笅渚濊禆 -// // 鏋佸厜鍘傚晢鎻掍欢鐗堟湰涓庢帴鍏� JPush 鐗堟湰淇濇寔涓�鑷达紝涓嬪悓 -// // 鎺ュ叆鍗庝负鍘傚晢 -// implementation 'com.huawei.hms:push:6.5.0.300' -// implementation 'cn.jiguang.sdk.plugin:huawei:5.2.2' -// // 鎺ュ叆 FCM 鍘傚晢 -// implementation 'com.google.firebase:firebase-messaging:23.0.5' -// implementation 'cn.jiguang.sdk.plugin:fcm:5.2.2' -// // 鎺ュ叆榄呮棌鍘傚晢 -// implementation 'cn.jiguang.sdk.plugin:meizu:5.2.2' -// // 鎺ュ叆 VIVO 鍘傚晢 -// implementation 'cn.jiguang.sdk.plugin:vivo:5.2.2' -// // 鎺ュ叆灏忕背鍘傚晢 -// implementation 'cn.jiguang.sdk.plugin:xiaomi:5.2.2' -// // 鎺ュ叆 OPPO 鍘傚晢 -// implementation 'cn.jiguang.sdk.plugin:oppo:5.2.2' -// // JPush Android SDK v4.6.0 寮�濮嬶紝闇�瑕佸崟鐙紩鍏� oppo 鍘傚晢 aar 锛岃涓嬭浇瀹樼綉 SDK 鍖呭苟鎶� jpush-android-xxx-release/third-push/oppo/libs 涓嬬殑 aar 鏂囦欢鍗曠嫭鎷疯礉涓�浠藉埌搴旂敤 module/libs 涓� -// implementation(name: 'com.heytap.msp-push-3.1.0', ext: 'aar') -// //浠ヤ笅涓� OPPO 3.1.0 aar闇�瑕佷緷璧� -// implementation 'com.google.code.gson:gson:2.6.2' -// implementation 'commons-codec:commons-codec:1.6' -// implementation 'androidx.annotation:annotation:1.1.0' -// // 鎺ュ叆鑽h��鍘傚晢 -// implementation 'cn.jiguang.sdk.plugin:honor:5.2.2' - -// apply plugin: 'com.google.gms.google-services' -// apply plugin: 'com.huawei.agconnect' - - //鍦嗗舰澶村儚 implementation 'de.hdodenhof:circleimageview:3.1.0' //骞挎挱閫氫俊 implementation 'io.github.jeremyliao:live-event-bus-x:1.8.0' - - //闃块噷鐨凴ocketMQ -// implementation 'org.apache.rocketmq:rocketmq-client:4.9.4' - + //mqtt implementation 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.5' //room鏁版嵁搴� @@ -182,21 +146,25 @@ implementation "androidx.room:room-rxjava3:2.3.0" //鍥剧墖 - implementation 'com.github.bumptech.glide:glide:4.11.0' + implementation 'com.github.bumptech.glide:glide:4.16.0' // PictureSelector 鍩虹 (蹇呴』鍥剧墖閫夋嫨) implementation 'io.github.lucksiege:pictureselector:v3.11.2' // 鍥剧墖鍘嬬缉 (鎸夐渶寮曞叆) implementation 'io.github.lucksiege:compress:v3.11.2' // 鍥剧墖鏌ョ湅 - implementation('com.github.SherlockGougou:BigImageViewPager:androidx-8.0.0') { + implementation('com.github.SherlockGougou:BigImageViewPager:androidx-8.1.3') { exclude group: 'androidx.appcompat'; exclude group: 'com.google.android.material'; exclude group: 'androidx.core'; } + implementation "androidx.media3:media3-exoplayer:1.4.1" implementation "androidx.media3:media3-exoplayer-dash:1.4.1" implementation "androidx.media3:media3-ui:1.4.1" + annotationProcessor 'com.github.bumptech.glide:compiler:4.16.0'// kotlin璇蜂娇鐢╧apt + implementation 'com.github.bumptech.glide:okhttp3-integration:4.16.0' + implementation "com.github.zjupure:webpdecoder:2.3.4.14.2" //杩涘害鍔犺浇 implementation 'com.github.jenly1314:circleprogressview:1.1.3' diff --git a/app/src/main/java/com/dayu/pipirrapp/MyAppGlideModule.java b/app/src/main/java/com/dayu/pipirrapp/MyAppGlideModule.java new file mode 100644 index 0000000..3310502 --- /dev/null +++ b/app/src/main/java/com/dayu/pipirrapp/MyAppGlideModule.java @@ -0,0 +1,36 @@ +package com.dayu.pipirrapp; + +import android.content.Context; + +import androidx.annotation.NonNull; + +import com.bumptech.glide.Glide; +import com.bumptech.glide.Registry; +import com.bumptech.glide.annotation.GlideModule; +import com.bumptech.glide.load.model.GlideUrl; +import com.bumptech.glide.module.AppGlideModule; +import com.bumptech.glide.integration.okhttp3.OkHttpUrlLoader; + +import java.io.InputStream; + +import cc.shinichi.library.glide.progress.ProgressManager; +import okhttp3.Call; + + +/** + * MyAppGlideModule - + * + * @author zuoxiao + * @version 1.0 + * @since 2025-01-13 + */ +@GlideModule +public class MyAppGlideModule extends AppGlideModule { + + @Override + public void registerComponents(@NonNull Context context, @NonNull Glide glide, @NonNull Registry registry) { + super.registerComponents(context, glide, registry); + // 鏇挎崲搴曞眰缃戠粶妗嗘灦涓簅khttp3 + registry.replace(GlideUrl.class, InputStream.class, new OkHttpUrlLoader.Factory((Call.Factory) ProgressManager.getOkHttpClient())); + } +} diff --git a/app/src/main/java/com/dayu/pipirrapp/activity/BaseActivity.java b/app/src/main/java/com/dayu/pipirrapp/activity/BaseActivity.java index 4e7cecb..539459c 100644 --- a/app/src/main/java/com/dayu/pipirrapp/activity/BaseActivity.java +++ b/app/src/main/java/com/dayu/pipirrapp/activity/BaseActivity.java @@ -25,9 +25,16 @@ @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); + + // 鑾峰彇褰撳墠绐楀彛 Window window = getWindow(); + + // 娣诲姞鏍囧織锛屽厑璁哥獥鍙g粯鍒剁郴缁熸爮鑳屾櫙 window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); + + // 璁剧疆鐘舵�佹爮棰滆壊 window.setStatusBarColor(getResources().getColor(R.color.title_color)); + } public void layoutFinish(RefreshLayout refreshLayout, boolean isRefresh) { diff --git a/app/src/main/java/com/dayu/pipirrapp/activity/IssueDetailActivity.java b/app/src/main/java/com/dayu/pipirrapp/activity/IssueDetailActivity.java index bc529df..3fadcc6 100644 --- a/app/src/main/java/com/dayu/pipirrapp/activity/IssueDetailActivity.java +++ b/app/src/main/java/com/dayu/pipirrapp/activity/IssueDetailActivity.java @@ -23,6 +23,7 @@ import com.dayu.pipirrapp.net.BaseResponse; import com.dayu.pipirrapp.net.Constants; import com.dayu.pipirrapp.net.subscribers.SubscriberListener; +import com.dayu.pipirrapp.tool.BigimageUtils; import com.dayu.pipirrapp.tool.FullyGridLayoutManager; import com.dayu.pipirrapp.utils.ToastUtil; import com.dayu.pipirrapp.view.ConfirmDialog; @@ -79,7 +80,7 @@ // 娣诲姞闂磋窛瑁呴グ锛岀‘淇濆浘鐗囨湁鍚堥�傜殑闂撮殧 mRecyclerView.addItemDecoration(new GridSpacingItemDecoration(4, DensityUtil.dip2px(this, 8), false)); mAdapter = new ImageAdapter(this, images, (v, position) -> { - ImagePreview.getInstance().with(IssueDetailActivity.this).setIndex(position).setMediaInfoList(imageInfoList).start(); + BigimageUtils.showImages(this, position, imageInfoList); }); mRecyclerView.setAdapter(mAdapter); } @@ -97,27 +98,27 @@ binding.setData(orderDetailResult); binding.setItemclidk(IssueDetailActivity.this); state = orderDetailResult.getStateId(); - if (!t.getContent().getImages().isEmpty()){ - for (ImageResult imageResult:t.getContent().getImages()){ - ImageBean imageBean=new ImageBean(); + if (!t.getContent().getImages().isEmpty()) { + for (ImageResult imageResult : t.getContent().getImages()) { + ImageBean imageBean = new ImageBean(); imageBean.setId(imageResult.getId()); imageBean.setWebPath(imageResult.getWebPath()); imageBean.setType(UplodFileState.IMG_TYPE); images.add(imageBean); - ImageInfo info=new ImageInfo(); + ImageInfo info = new ImageInfo(); info.setOriginUrl(imageResult.getWebPath()); info.setType(Type.IMAGE); imageInfoList.add(info); } } - if (!t.getContent().getVideos().isEmpty()){ - for (ImageResult imageResult:t.getContent().getVideos()){ - ImageBean imageBean=new ImageBean(); + if (!t.getContent().getVideos().isEmpty()) { + for (ImageResult imageResult : t.getContent().getVideos()) { + ImageBean imageBean = new ImageBean(); imageBean.setId(imageResult.getId()); imageBean.setWebPath(imageResult.getWebPath()); imageBean.setType(UplodFileState.VIDEO_TYPE); images.add(imageBean); - ImageInfo info=new ImageInfo(); + ImageInfo info = new ImageInfo(); info.setOriginUrl(imageResult.getWebPath()); info.setType(Type.VIDEO); imageInfoList.add(info); diff --git a/app/src/main/java/com/dayu/pipirrapp/adapter/AddPictureAdapter.java b/app/src/main/java/com/dayu/pipirrapp/adapter/AddPictureAdapter.java index f826c32..94c9611 100644 --- a/app/src/main/java/com/dayu/pipirrapp/adapter/AddPictureAdapter.java +++ b/app/src/main/java/com/dayu/pipirrapp/adapter/AddPictureAdapter.java @@ -160,6 +160,7 @@ .centerCrop() .placeholder(R.color.app_color_f6) .diskCacheStrategy(DiskCacheStrategy.ALL) + .thumbnail(0.25f) .into(viewHolder.mImg); } diff --git a/app/src/main/java/com/dayu/pipirrapp/bean/db/DivideBean.java b/app/src/main/java/com/dayu/pipirrapp/bean/db/DivideBean.java new file mode 100644 index 0000000..0bf6aee --- /dev/null +++ b/app/src/main/java/com/dayu/pipirrapp/bean/db/DivideBean.java @@ -0,0 +1,213 @@ +package com.dayu.pipirrapp.bean.db; + +import androidx.room.Entity; +import androidx.room.PrimaryKey; + +/** + * DivideBean -鍒嗘按鎴� + * + * @author zuoxiao + * @version 1.0 + * @since 2025-01-13 + */ +@Entity +public class DivideBean { + @PrimaryKey(autoGenerate = true) + public long localid; + /** + * 褰掑睘鍦� + */ + private String address; + + /** + * 鐗囧尯ID + */ + private String blockId; + + /** + * 鐗囧尯鍚嶇О + */ + private String blockName; + + /** + * 鍒嗘按鎴縄D + */ + private String divideId; + + /** + * 鍒嗘按鎴垮悕绉� + */ + private String divideName; + + /** + * 璐熻矗浜� + */ + private String header; + + /** + * 缂栧彿 + */ + private int id; + + /** + * 绾害 + */ + private double lat; + + /** + * 缁忓害 + */ + private double lng; + + /** + * 鎿嶄綔鏃堕棿 + */ + private String operateDt; + + /** + * 鎿嶄綔浜� + */ + private String operator; + + /** + * 鑱旂郴鐢佃瘽 + */ + private String phone; + + /** + * 澶囨敞 + */ + private String remarks; + + /** + * 瑕嗙洊鏉� + */ + private String villages; + + /** + * 瑕嗙洊闈㈢Н + */ + private double area; + + + // Getters and Setters + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public double getArea() { + return area; + } + + public void setArea(double area) { + this.area = area; + } + + public String getBlockId() { + return blockId; + } + + public void setBlockId(String blockId) { + this.blockId = blockId; + } + + public String getBlockName() { + return blockName; + } + + public void setBlockName(String blockName) { + this.blockName = blockName; + } + + public String getDivideId() { + return divideId; + } + + public void setDivideId(String divideId) { + this.divideId = divideId; + } + + public String getDivideName() { + return divideName; + } + + public void setDivideName(String divideName) { + this.divideName = divideName; + } + + public String getHeader() { + return header; + } + + public void setHeader(String header) { + this.header = header; + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public double getLat() { + return lat; + } + + public void setLat(double lat) { + this.lat = lat; + } + + public double getLng() { + return lng; + } + + public void setLng(double lng) { + this.lng = lng; + } + + public String getOperateDt() { + return operateDt; + } + + public void setOperateDt(String operateDt) { + this.operateDt = operateDt; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + public String getRemarks() { + return remarks; + } + + public void setRemarks(String remarks) { + this.remarks = remarks; + } + + public String getVillages() { + return villages; + } + + public void setVillages(String villages) { + this.villages = villages; + } +} diff --git a/app/src/main/java/com/dayu/pipirrapp/bean/net/AddIssueRequest.java b/app/src/main/java/com/dayu/pipirrapp/bean/net/AddIssueRequest.java index 7fd7638..00fa84d 100644 --- a/app/src/main/java/com/dayu/pipirrapp/bean/net/AddIssueRequest.java +++ b/app/src/main/java/com/dayu/pipirrapp/bean/net/AddIssueRequest.java @@ -12,12 +12,16 @@ * @since 2024-12-09 */ public class AddIssueRequest extends BaseRequest { - String workOrderId;//宸ュ崟ID - String inspectorId;//宸℃鍛業D - String content;//缁撴灉鍐呭 + //宸ュ崟ID + String workOrderId; + //宸℃鍛業D + String inspectorId; + //缁撴灉鍐呭 + String content; List<ImageRequest> images = new ArrayList<>(); List<ImageRequest> videos = new ArrayList<>(); - String completeTime;//浠诲姟瀹屾垚鏃堕棿 + //浠诲姟瀹屾垚鏃堕棿 + String completeTime; String lng; String lat; diff --git a/app/src/main/java/com/dayu/pipirrapp/bean/net/DivideListResult.java b/app/src/main/java/com/dayu/pipirrapp/bean/net/DivideListResult.java new file mode 100644 index 0000000..9282893 --- /dev/null +++ b/app/src/main/java/com/dayu/pipirrapp/bean/net/DivideListResult.java @@ -0,0 +1,59 @@ +package com.dayu.pipirrapp.bean.net; + +import java.util.List; + +/** + * DivideListResult -鍒嗘按鎴� + * + * @author zuoxiao + * @version 1.0 + * @since 2025-01-13 + */ +public class DivideListResult { + int itemTotal; + int pageCurr; + int pageSize; + int pageTotal; + List<DivideResult> obj; + + public int getItemTotal() { + return itemTotal; + } + + public void setItemTotal(int itemTotal) { + this.itemTotal = itemTotal; + } + + public int getPageCurr() { + return pageCurr; + } + + public void setPageCurr(int pageCurr) { + this.pageCurr = pageCurr; + } + + public int getPageSize() { + return pageSize; + } + + public void setPageSize(int pageSize) { + this.pageSize = pageSize; + } + + public int getPageTotal() { + return pageTotal; + } + + public void setPageTotal(int pageTotal) { + this.pageTotal = pageTotal; + } + + public List<DivideResult> getObj() { + return obj; + } + + public void setObj(List<DivideResult> obj) { + this.obj = obj; + } + +} diff --git a/app/src/main/java/com/dayu/pipirrapp/bean/net/DivideResult.java b/app/src/main/java/com/dayu/pipirrapp/bean/net/DivideResult.java new file mode 100644 index 0000000..960bcf3 --- /dev/null +++ b/app/src/main/java/com/dayu/pipirrapp/bean/net/DivideResult.java @@ -0,0 +1,208 @@ +package com.dayu.pipirrapp.bean.net; + +/** + * DivideResult -鍒嗘按鎴� + * + * @author zuoxiao + * @version 1.0 + * @since 2025-01-10 + */ +public class DivideResult { + /** + * 褰掑睘鍦� + */ + private String address; + + /** + * 鐗囧尯ID + */ + private String blockId; + + /** + * 鐗囧尯鍚嶇О + */ + private String blockName; + + /** + * 鍒嗘按鎴縄D + */ + private String divideId; + + /** + * 鍒嗘按鎴垮悕绉� + */ + private String divideName; + + /** + * 璐熻矗浜� + */ + private String header; + + /** + * 缂栧彿 + */ + private int id; + + /** + * 绾害 + */ + private double lat; + + /** + * 缁忓害 + */ + private double lng; + + /** + * 鎿嶄綔鏃堕棿 + */ + private String operateDt; + + /** + * 鎿嶄綔浜� + */ + private String operator; + + /** + * 鑱旂郴鐢佃瘽 + */ + private String phone; + + /** + * 澶囨敞 + */ + private String remarks; + + /** + * 瑕嗙洊鏉� + */ + private String villages; + + /** + * 瑕嗙洊闈㈢Н + */ + private double area; + + + // Getters and Setters + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public double getArea() { + return area; + } + + public void setArea(double area) { + this.area = area; + } + + public String getBlockId() { + return blockId; + } + + public void setBlockId(String blockId) { + this.blockId = blockId; + } + + public String getBlockName() { + return blockName; + } + + public void setBlockName(String blockName) { + this.blockName = blockName; + } + + public String getDivideId() { + return divideId; + } + + public void setDivideId(String divideId) { + this.divideId = divideId; + } + + public String getDivideName() { + return divideName; + } + + public void setDivideName(String divideName) { + this.divideName = divideName; + } + + public String getHeader() { + return header; + } + + public void setHeader(String header) { + this.header = header; + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public double getLat() { + return lat; + } + + public void setLat(double lat) { + this.lat = lat; + } + + public double getLng() { + return lng; + } + + public void setLng(double lng) { + this.lng = lng; + } + + public String getOperateDt() { + return operateDt; + } + + public void setOperateDt(String operateDt) { + this.operateDt = operateDt; + } + + public String getOperator() { + return operator; + } + + public void setOperator(String operator) { + this.operator = operator; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + public String getRemarks() { + return remarks; + } + + public void setRemarks(String remarks) { + this.remarks = remarks; + } + + public String getVillages() { + return villages; + } + + public void setVillages(String villages) { + this.villages = villages; + } + +} diff --git a/app/src/main/java/com/dayu/pipirrapp/dao/AppDatabase.java b/app/src/main/java/com/dayu/pipirrapp/dao/AppDatabase.java index 5316560..6bf6421 100644 --- a/app/src/main/java/com/dayu/pipirrapp/dao/AppDatabase.java +++ b/app/src/main/java/com/dayu/pipirrapp/dao/AppDatabase.java @@ -4,6 +4,7 @@ import androidx.room.RoomDatabase; import com.dayu.pipirrapp.bean.db.CenterPointBean; +import com.dayu.pipirrapp.bean.db.DivideBean; import com.dayu.pipirrapp.bean.db.InspectionBean; import com.dayu.pipirrapp.bean.db.InspectionLocationBean; import com.dayu.pipirrapp.bean.db.LoginBean; @@ -17,7 +18,7 @@ * Date: 2023-11-05 16:23 * Description: */ -@Database(entities = {InspectionBean.class,InspectionLocationBean.class, TagBean.class, LoginBean.class, CenterPointBean.class, MarkerBean.class}, version = 1, exportSchema = false) +@Database(entities = {DivideBean.class,InspectionBean.class,InspectionLocationBean.class, TagBean.class, LoginBean.class, CenterPointBean.class, MarkerBean.class}, version = 1, exportSchema = false) public abstract class AppDatabase extends RoomDatabase { @@ -33,4 +34,6 @@ public abstract InspectionLocationDao inspectionLocationDao(); + public abstract DivideDao divideDao(); + } diff --git a/app/src/main/java/com/dayu/pipirrapp/dao/DivideDao.java b/app/src/main/java/com/dayu/pipirrapp/dao/DivideDao.java new file mode 100644 index 0000000..aad77d8 --- /dev/null +++ b/app/src/main/java/com/dayu/pipirrapp/dao/DivideDao.java @@ -0,0 +1,53 @@ +package com.dayu.pipirrapp.dao; + +import androidx.room.Dao; +import androidx.room.Delete; +import androidx.room.Insert; +import androidx.room.OnConflictStrategy; +import androidx.room.Query; +import androidx.room.Update; + +import com.dayu.pipirrapp.bean.db.DivideBean; +import com.dayu.pipirrapp.bean.db.MarkerBean; + +import java.util.List; + +import io.reactivex.rxjava3.core.Completable; +import io.reactivex.rxjava3.core.Single; + +/** + * DivideDao - + * + * @author zuoxiao + * @version 1.0 + * @since 2025-01-13 + */ +@Dao +public interface DivideDao { + @Insert(onConflict = OnConflictStrategy.REPLACE) + void insert(DivideBean divideBean); + + @Insert(onConflict = OnConflictStrategy.REPLACE) + Completable insertAll(List<DivideBean> divideBeans); // 浣跨敤 Completable 杩涜寮傛鎻掑叆 + +// @Insert(onConflict = OnConflictStrategy.REPLACE) +// void insertAll(List<MarkerBean> markerBeans); // 浣跨敤 Completable 杩涜寮傛鎻掑叆 + + @Update + void update(DivideBean divideBean); + + @Delete + void delete(DivideBean divideBean); + + @Query("DELETE FROM DivideBean") + void deleteAll(); + + @Query("select * from DivideBean limit 1") + DivideBean findFirst(); + + @Query("select * from DivideBean") + List<DivideBean> findAll(); + + @Query("select * from DivideBean") + Single<List<DivideBean>> findAllToSingle(); +} diff --git a/app/src/main/java/com/dayu/pipirrapp/fragment/MapFragment.java b/app/src/main/java/com/dayu/pipirrapp/fragment/MapFragment.java index 90d36d6..2715f12 100644 --- a/app/src/main/java/com/dayu/pipirrapp/fragment/MapFragment.java +++ b/app/src/main/java/com/dayu/pipirrapp/fragment/MapFragment.java @@ -31,6 +31,7 @@ import com.dayu.pipirrapp.bean.db.LatLonBean; import com.dayu.pipirrapp.bean.db.MarkerBean; import com.dayu.pipirrapp.bean.net.CenterPointResult; +import com.dayu.pipirrapp.bean.net.DivideResult; import com.dayu.pipirrapp.bean.net.InsectionResult; import com.dayu.pipirrapp.bean.net.InspectionRequest; import com.dayu.pipirrapp.bean.net.MarkerListResult; @@ -756,6 +757,41 @@ }); } + /** + * 鑾峰彇鍒嗘按鎴� + */ + private void getDivideList() { + ApiManager.getInstance().requestPost(MapFragment.this.getContext(), BASE_URL + "/project/divide/getDivides", DivideResult.class, null, new SubscriberListener<BaseResponse<DivideResult>>() { + @Override + public void onNext(BaseResponse<DivideResult> t) { + try { + if (t.isSuccess()) { +// if (t.getContent().) +// +// +// // 浣跨敤 RxJava 寮傛鎻掑叆鏁版嵁 +// DaoSingleton.getAsynchInstance(MapFragment.this.getContext()).markerDao().insertAll() +// .subscribeOn(Schedulers.io()) // 鍦� IO 绾跨▼涓婃墽琛� +// .observeOn(AndroidSchedulers.mainThread()) // 鍦ㄤ富绾跨▼涓婅瀵� +// .subscribe(() -> { +// // 鎻掑叆鎴愬姛 +// Log.i("mWebView", "鏁版嵁鎻掑叆鎴愬姛"); +// }, throwable -> { +// // 鎻掑叆澶辫触 +// Log.e("mWebView", "鏁版嵁鎻掑叆澶辫触: " + throwable.getMessage()); +// }); + } else { + ToastUtil.showToastLong(MapFragment.this.getContext(), t.getMsg()); + } + } catch (Exception e) { + e.printStackTrace(); + CrashReport.postCatchedException(e); + } + } + + }); + } + @Override public void onDestroy() { diff --git a/app/src/main/java/com/dayu/pipirrapp/fragment/MyFragment.java b/app/src/main/java/com/dayu/pipirrapp/fragment/MyFragment.java index 28aa351..085b0f1 100644 --- a/app/src/main/java/com/dayu/pipirrapp/fragment/MyFragment.java +++ b/app/src/main/java/com/dayu/pipirrapp/fragment/MyFragment.java @@ -80,7 +80,7 @@ ConfirmDialog confirmDialog = new ConfirmDialog(MyFragment.this.getActivity(), "纭畾娓呴櫎缂撳瓨鍚楋紵", (dialog, v1) -> { try { dialog.dismiss(); - CleanDataUtils.cleanMapData(MyFragment.this.getContext()); + CleanDataUtils.cleanData(MyFragment.this.getContext()); ToastUtil.showToast(MyFragment.this.getActivity(), "娓呴櫎鎴愬姛"); } catch (Exception e) { e.printStackTrace(); diff --git a/app/src/main/java/com/dayu/pipirrapp/tool/BigimageUtils.java b/app/src/main/java/com/dayu/pipirrapp/tool/BigimageUtils.java new file mode 100644 index 0000000..3007671 --- /dev/null +++ b/app/src/main/java/com/dayu/pipirrapp/tool/BigimageUtils.java @@ -0,0 +1,28 @@ +package com.dayu.pipirrapp.tool; + +import android.app.Activity; + +import com.dayu.pipirrapp.activity.IssueDetailActivity; + +import java.util.List; + +import cc.shinichi.library.ImagePreview; +import cc.shinichi.library.bean.ImageInfo; + +/** + * BigimageUtils -bigimageviewpager妗嗘灦鐨勫叕鍏辩被 + * + * @author zuoxiao + * @version 1.0 + * @since 2025-01-13 + */ +public class BigimageUtils { + + public static void showImages(Activity activity, int position, List<ImageInfo> imageInfoList) { + ImagePreview.getInstance().with(activity).setIndex(position) + // 鏄惁鏄剧ず涓嬭浇鎸夐挳锛屽湪椤甸潰鍙充笅瑙掋�傞粯璁ゆ樉绀� + .setShowDownButton(false) + .setMediaInfoList(imageInfoList).start(); + } + +} diff --git a/app/src/main/java/com/dayu/pipirrapp/utils/CleanDataUtils.java b/app/src/main/java/com/dayu/pipirrapp/utils/CleanDataUtils.java index f5ec758..706c301 100644 --- a/app/src/main/java/com/dayu/pipirrapp/utils/CleanDataUtils.java +++ b/app/src/main/java/com/dayu/pipirrapp/utils/CleanDataUtils.java @@ -5,6 +5,8 @@ import com.dayu.pipirrapp.MyApplication; import com.dayu.pipirrapp.dao.DaoSingleton; +import cc.shinichi.library.glide.ImageLoader; + /** * author: zuo * Date: 2024-10-10 @@ -16,17 +18,21 @@ /** * 娓呴櫎鍦板浘缂撳瓨 */ - public static void cleanMapData(Context context) { + public static void cleanData(Context context) { + //娓呴櫎鍦板浘缂撳瓨 DaoSingleton.getInstance(context).markerDao().deleteAll(); + //娓呴櫎鍥剧墖缂撳瓨 + ImageLoader.cleanDiskCache(context); } /** * 娓呴櫎鐢ㄦ埛淇℃伅缂撳瓨 + * * @param context */ public static void cleanUserData(Context context) { DaoSingleton.getInstance(context).loginDao().deleteAll(); - MyApplication.myApplication.token=""; + MyApplication.myApplication.token = ""; SharedPreferencesHelper.getInstance(context).delete(CommonKeyName.Token); } -- Gitblit v1.8.0