From 986648a7fc5d377d5c100ba41350e6313dcf6e5b Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期五, 21 二月 2025 17:04:29 +0800
Subject: [PATCH] 1.优化我的界面的更新本地数据功能添加loding 2.优化巡检详情页面增大放大级别 3.优化我的界面的更新本地数据功能所有接口都结束后显示数据更新成功

---
 app/src/main/java/com/dayu/pipirrapp/activity/InspectDetailActivity.java |   65 ++++++++++++++++++++++++++++++--
 1 files changed, 61 insertions(+), 4 deletions(-)

diff --git a/app/src/main/java/com/dayu/pipirrapp/activity/InspectDetailActivity.java b/app/src/main/java/com/dayu/pipirrapp/activity/InspectDetailActivity.java
index 3c33518..a60d46b 100644
--- a/app/src/main/java/com/dayu/pipirrapp/activity/InspectDetailActivity.java
+++ b/app/src/main/java/com/dayu/pipirrapp/activity/InspectDetailActivity.java
@@ -17,8 +17,13 @@
 
 import com.dayu.pipirrapp.R;
 import com.dayu.pipirrapp.bean.db.InspectionLocationBean;
+import com.dayu.pipirrapp.bean.net.InspectListResult;
+import com.dayu.pipirrapp.bean.net.InspectPointResult;
 import com.dayu.pipirrapp.dao.DaoSingleton;
 import com.dayu.pipirrapp.net.ApiManager;
+import com.dayu.pipirrapp.net.BaseResponse;
+import com.dayu.pipirrapp.net.Constants;
+import com.dayu.pipirrapp.net.subscribers.SubscriberListener;
 import com.dayu.pipirrapp.utils.CommonData;
 import com.dayu.pipirrapp.utils.MapJpgUtils;
 import com.dayu.pipirrapp.view.TitleBar;
@@ -26,7 +31,10 @@
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileNotFoundException;
+import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers;
 import io.reactivex.rxjava3.schedulers.Schedulers;
@@ -205,7 +213,11 @@
         // 鏌ヨ褰撳墠鏈叧闂殑宸℃璁板綍涓嬫墍鏈夌殑鍧愭爣
         DaoSingleton.getAsynchInstance(this).inspectionLocationDao().findByInspectId(inspectId).subscribeOn(Schedulers.io())
                 .observeOn(AndroidSchedulers.mainThread()).subscribe(inspectionLocationBeans -> {
-                    aginShowLocation(inspectionLocationBeans);
+                    if (inspectionLocationBeans != null && inspectionLocationBeans.size() > 0) {
+                        aginShowLocation(inspectionLocationBeans);
+                    } else {
+                        getHttpLocation();
+                    }
                 });
     }
 
@@ -233,9 +245,7 @@
                     } else {
                         isEnd = false;
                     }
-                    Log.i("mWebView", "showHistoryLocation" + inspectionLocationBean.getLng() + "\",\"" + inspectionLocationBean.getLat());
-                    mWebView.evaluateJavascript("javascript:showHistoryLocation(\"" + inspectionLocationBean.getLng() + "\",\"" + inspectionLocationBean.getLat() + "\",\"" + isStart + "\",\"" + isEnd + "\")", value -> {
-                    });
+                    putDataToWeb(inspectionLocationBean.getLng(), inspectionLocationBean.getLat(), isStart + "", isEnd + "");
                     index++;
                 }
                 // 鍚� WebView 娉ㄥ叆鏁版嵁
@@ -244,8 +254,55 @@
         }
     }
 
+    /**
+     * 鍚� WebView 娉ㄥ叆鏁版嵁
+     *
+     * @param lng
+     * @param lat
+     * @param isStart
+     * @param isEnd
+     */
+    private void putDataToWeb(String lng, String lat, String isStart, String isEnd) {
+        Log.i("mWebView", "showHistoryLocation" + lng + "\",\"" + lat);
+        mWebView.evaluateJavascript("javascript:showHistoryLocation(\"" + lng + "\",\"" + lat + "\",\"" + isStart + "\",\"" + isEnd + "\")", value -> {
+        });
+    }
 
     public void getHttpLocation() {
+        Map<String, Object> params = new HashMap<>();
+        params.put("inspectId", inspectId);
+        ApiManager.getInstance().requestGet(this, Constants.BASE_URL + "/app/inspect/getInspects", InspectListResult.class, params, new SubscriberListener<BaseResponse<InspectListResult>>() {
+            @Override
+            public void onNext(BaseResponse<InspectListResult> t) {
+                if (t.isSuccess()) {
+                    if (t.getContent() != null) {
+                        List<InspectionLocationBean> locationBeans = new ArrayList<>();
+                        if (t.getContent().getObj()!=null&&t.getContent().getObj().size()>0){
+                            for (InspectPointResult inspectPointResult : t.getContent().getObj().get(0).getTracks()) {
+                                InspectionLocationBean inspectionLocationBean = new InspectionLocationBean();
+                                inspectionLocationBean.setLng(inspectPointResult.getLng());
+                                inspectionLocationBean.setLat(inspectPointResult.getLat());
+                                inspectionLocationBean.setInspectId(inspectId);
+                                inspectionLocationBean.setId(inspectPointResult.getId());
+                                inspectionLocationBean.setLocateTime(inspectPointResult.getLocateTime());
+                                locationBeans.add(inspectionLocationBean);
+                            }
+                        }
+                        aginShowLocation(locationBeans);
+                    }
+                }
+            }
 
+            @Override
+            public void onCloose() {
+                super.onCloose();
+            }
+
+            @Override
+            public void onError(Throwable e) {
+                super.onError(e);
+
+            }
+        });
     }
 }

--
Gitblit v1.8.0