From 32e17591ca41ba7b79514f0cb2e2ef6eb3e5a384 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期六, 10 十月 2020 16:45:11 +0800
Subject: [PATCH] 20201010

---
 app/src/main/java/cn/flightfeather/thirdapp/module/inspection/InspectionDetailActivity.kt |   65 ++++++++++++++++++++------------
 1 files changed, 40 insertions(+), 25 deletions(-)

diff --git a/app/src/main/java/cn/flightfeather/thirdapp/module/inspection/InspectionDetailActivity.kt b/app/src/main/java/cn/flightfeather/thirdapp/module/inspection/InspectionDetailActivity.kt
index a089439..dbf4b7d 100644
--- a/app/src/main/java/cn/flightfeather/thirdapp/module/inspection/InspectionDetailActivity.kt
+++ b/app/src/main/java/cn/flightfeather/thirdapp/module/inspection/InspectionDetailActivity.kt
@@ -13,6 +13,7 @@
 import android.view.View
 import android.view.animation.AnimationUtils
 import android.widget.LinearLayout
+import cn.flightfeather.thirdapp.CommonApplication
 import cn.flightfeather.thirdapp.R
 import cn.flightfeather.thirdapp.activity.GradeActivity
 import cn.flightfeather.thirdapp.activity.MapActivity
@@ -140,25 +141,6 @@
 
         viewModel.inspection.observe(this, Observer {
             it?.apply {
-                if (extension1 != null) {
-                    val list = extension1.split(";").map{str ->
-                        str.split(",").map {str2 ->
-                            str2.toDoubleOrNull() ?: 0.0
-                        }.takeIf { l-> l.size == 2 }.let {latLng->
-                            LatLng(latLng?.get(1) ?: 0.0, latLng?.get(0) ?: 0.0)
-                        }
-                    }
-                    drawPolyline(list)
-                    list.firstOrNull()?.let {p->
-                        myLatLngList.add(
-                                MyLatLng(
-                                        p,
-                                        drawableId = R.drawable.icon_mark_start_blue,
-                                        selected = true
-                                )
-                        )
-                    }
-                }
                 onDataLoaded(0)
             }
         })
@@ -331,6 +313,34 @@
         if (result) {
             showMenu()
             refreshMenuStatus(taskStatus)
+
+            viewModel.inspection.value?.extension1?.let{
+                val list = it.split(";").map{str ->
+                    str.split(",").map {str2 ->
+                        str2.toDoubleOrNull() ?: 0.0
+                    }.takeIf { l-> l.size == 2 }.let {latLng->
+                        LatLng(latLng?.get(1) ?: 0.0, latLng?.get(0) ?: 0.0)
+                    }
+                }
+                //閬撹矾鐩戞祴鐐瑰拰閬撹矾绫诲瀷鐨勫満鏅紝鐩存帴灞曠ず杞ㄨ抗锛涘叾浣欏満鏅彧鏈夌鐞嗗憳鍜屾斂搴滈儴闂ㄥ彲浠ユ煡鐪�
+                if (
+                        (viewModel.scene.value?.typeid?.toString() == Constant.SCENE_TYPE9 || viewModel.scene.value?.typeid?.toString() == Constant.SCENE_TYPE10)
+                        || (CommonApplication.getInstance().currentUser.usertypeid == 0.toByte() || CommonApplication.getInstance().currentUser.usertypeid == 2.toByte())
+                ) {
+                    drawPolyline(list)
+                }
+
+                list.firstOrNull()?.let {p->
+                    myLatLngList.add(
+                            MyLatLng(
+                                    p,
+                                    drawableId = R.drawable.icon_mark_start_blue,
+                                    selected = true
+                            )
+                    )
+                }
+            }
+
         } else {
             toast("璇风瓑寰呮暟鎹姞杞藉畬鎴�")
         }
@@ -573,14 +583,12 @@
 
     private fun startTracking() {
         if (
-//                viewModel.scene.value?.typeid?.toString() != Constant.SCENE_TYPE9 ||
+                viewModel.subTask.value == null ||
                 viewModel.subTask.value?.status != Domain.TASK_STATUS_RUNNING
         ) return
 
         //褰撶户缁墽琛屾鍦ㄨ繘琛屼腑鐨勪换鍔℃椂锛屾牴鎹槸鍚︽湁鍘嗗彶杞ㄨ抗璁板綍鏉ュ垽鏂槸鍚﹀紑鍚�
-        if (viewModel.inspection.value?.extension1 != null) {
-            needTracking = true
-        }
+        needTracking = true
 
         if (!needTracking || timerTaskRunning) return
 
@@ -618,7 +626,13 @@
                         val distance = AMapUtils.calculateLineDistance(l1, l2)
                         if (distance >= 5) {
                             extension1 = "${extension1};${lng},${lat}"
-                            drawPolyline(LatLng(lat, lng))
+                            //閬撹矾鐩戞祴鐐瑰拰閬撹矾绫诲瀷鐨勫満鏅紝鐩存帴灞曠ず杞ㄨ抗锛涘叾浣欏満鏅彧鏈夌鐞嗗憳鍜屾斂搴滈儴闂ㄥ彲浠ユ煡鐪�
+                            if (
+                                    (viewModel.scene.value?.typeid?.toString() == Constant.SCENE_TYPE9 || viewModel.scene.value?.typeid?.toString() == Constant.SCENE_TYPE10)
+                                    || (CommonApplication.getInstance().currentUser.usertypeid == 0.toByte() || CommonApplication.getInstance().currentUser.usertypeid == 2.toByte())
+                            ) {
+                                drawPolyline(LatLng(lat, lng))
+                            }
                         }
                     }
                 }
@@ -628,7 +642,7 @@
     }
 
     private fun trackingDone() {
-        if (!needTracking || !timerTaskRunning) return
+        if (!timerTaskRunning) return
 
         aMap.moveCamera(CameraUpdateFactory.zoomTo(zoomLevel))
 
@@ -653,6 +667,7 @@
                 } else {
                     it.problemcount + 1
                 }
+                // fixme: 2020/9/1 姝ゅ鍘熸湰鐨勯�昏緫鏄柊澧炰竴涓棶棰樺悗锛屽悓姝ユ洿鏂板贰鏌ヤ俊鎭腑鐨勯棶棰樻暟锛岄敊璇紝搴旇灏嗘鏇存柊鎿嶄綔鐩存帴鐢辨柊澧為棶棰樻帴鍙g粺涓�瀹屾垚
                 viewModel.updateInspection(it)
             }
 

--
Gitblit v1.9.3