From 253f680fb9666751e0f9a8e5e8f2f9e3eb1894e3 Mon Sep 17 00:00:00 2001
From: 18034727885 <973609879@qq.com>
Date: 星期五, 26 六月 2026 14:47:00 +0800
Subject: [PATCH] 修复问题

---
 app/src/main/java/com/example/smart/ui/project/ProjectDetailsActivity.kt |   49 ++++++++++++++++++++++++++++++-------------------
 1 files changed, 30 insertions(+), 19 deletions(-)

diff --git a/app/src/main/java/com/example/smart/ui/project/ProjectDetailsActivity.kt b/app/src/main/java/com/example/smart/ui/project/ProjectDetailsActivity.kt
index 2ae2205..1633e71 100644
--- a/app/src/main/java/com/example/smart/ui/project/ProjectDetailsActivity.kt
+++ b/app/src/main/java/com/example/smart/ui/project/ProjectDetailsActivity.kt
@@ -10,28 +10,22 @@
 import android.widget.ImageView
 import androidx.activity.viewModels
 import androidx.core.app.ActivityCompat
-import androidx.fragment.app.viewModels
+import com.amap.api.location.AMapLocation
 import com.example.basecore.BaseBindingActivity
 import com.example.basecore.amap.ILocationCallBack
 import com.example.basecore.amap.LocationProvider
 import com.example.basecore.util.SchemeUtils
-import com.example.basecore.util.ToastUtils
 import com.example.basecore.util.dp2px
-import com.example.smart.R
-import com.example.smart.databinding.ActivityProjectDetailsBinding
-import com.example.smart.ui.options.device.RequestDeviceActivity
-import com.example.smart.ui.project.popup.ProjectDetailsPopupWindow
-import com.example.smart.ui.project.provider.ProjectPageAdapter
-import com.example.smart.util.projectEventScheme
-import com.example.smart.widget.dialog.CommonDialog
-import com.example.smart.widget.dialog.LoadingDialog
-import com.google.android.material.tabs.TabLayoutMediator
 import com.example.basecore.util.showCenterToast
 import com.example.basecore.util.showOnlyToast
 import com.example.basecore.util.startAct
 import com.example.basecore.util.toast
+import com.example.smart.R
+import com.example.smart.databinding.ActivityProjectDetailsBinding
 import com.example.smart.enumlist.CheckTaskState
 import com.example.smart.ui.exclude.ExcludeActivity
+import com.example.smart.ui.options.device.RequestDeviceActivity
+import com.example.smart.ui.project.bean.AddressInfo
 import com.example.smart.ui.project.bean.TaskDetailInfo
 import com.example.smart.ui.project.check.CheckViewModel
 import com.example.smart.ui.project.check.EditDialog
@@ -39,9 +33,13 @@
 import com.example.smart.ui.project.check.bean.CheckRefresh
 import com.example.smart.ui.project.frag.ProjectParam
 import com.example.smart.ui.project.onduty.PostListActivity
-import com.example.smart.ui.project.onduty.bean.OnDutyBean
-import com.example.smart.util.createWorkScheme
+import com.example.smart.ui.project.popup.ProjectDetailsPopupWindow
+import com.example.smart.ui.project.provider.ProjectPageAdapter
+import com.example.smart.util.projectEventScheme
 import com.example.smart.util.signProject
+import com.example.smart.widget.dialog.CommonDialog
+import com.example.smart.widget.dialog.LoadingDialog
+import com.google.android.material.tabs.TabLayoutMediator
 import org.greenrobot.eventbus.EventBus
 
 class ProjectDetailsActivity : BaseBindingActivity() {
@@ -351,24 +349,37 @@
 
     private fun onGenerateLocation() {
         mLocationProvider.getLocation(object : ILocationCallBack {
-
-            override fun onLocationSuccess(address: String, lat: Double, lon: Double) {
+            override fun onLocationSuccess(aMapLocation: AMapLocation) {
+                super.onLocationSuccess(aMapLocation)
                 binding.commonLayout.post {
-                    if (TextUtils.isEmpty(address)) {
+                    if (TextUtils.isEmpty(aMapLocation.address)) {
                         toast("位置信息获取失败,请重试...")
                         return@post
                     }
                     if (taskDetailInfo == null) {
                         return@post
                     }
-                    taskDetailInfo?.location = address
+                    taskDetailInfo?.apply {
+                        projectId = taskDetailInfo!!.project.id.toString()
+                        addressInfo = AddressInfo(
+                            province = aMapLocation.province,
+                            city = aMapLocation.city,
+                            district = aMapLocation.district,
+                            detail = aMapLocation.address,
+                            lonLat = "${aMapLocation.longitude},${aMapLocation.latitude}"
+                        )
+                    }
+                    taskDetailInfo?.location = aMapLocation.address
 
                     val gps = ArrayList<Double>()
-                    gps.add(lat)
-                    gps.add(lon)
+                    gps.add(aMapLocation.latitude)
+                    gps.add(aMapLocation.longitude)
                     taskDetailInfo?.gps = gps
                     viewModel.editTask(taskDetailInfo!!)
                 }
+            }
+
+            override fun onLocationSuccess(address: String, lat: Double, lon: Double) {
 
             }
 

--
Gitblit v1.7.1