diff --git a/app/build.gradle b/app/build.gradle index b4ce9a7..04d8402 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -81,7 +81,7 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.9.0' + implementation 'com.google.code.gson:gson:2.10.1' //Kotlin协程 implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.5.1' //MVVM+LiveData diff --git a/app/build.gradle b/app/build.gradle index b4ce9a7..04d8402 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -81,7 +81,7 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.9.0' + implementation 'com.google.code.gson:gson:2.10.1' //Kotlin协程 implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.5.1' //MVVM+LiveData diff --git a/app/src/main/java/com/casic/detector/extensions/String.kt b/app/src/main/java/com/casic/detector/extensions/String.kt index 84b3d2c..b5b9afc 100644 --- a/app/src/main/java/com/casic/detector/extensions/String.kt +++ b/app/src/main/java/com/casic/detector/extensions/String.kt @@ -42,6 +42,7 @@ return when (type) { FileType.APK -> "$httpConfig/ems/${this}" FileType.EXCEL -> "$httpConfig/ems/xls/marker${this}.xls" + FileType.IMAGE -> "$httpConfig/ems${this}" } } diff --git a/app/build.gradle b/app/build.gradle index b4ce9a7..04d8402 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -81,7 +81,7 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.9.0' + implementation 'com.google.code.gson:gson:2.10.1' //Kotlin协程 implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.5.1' //MVVM+LiveData diff --git a/app/src/main/java/com/casic/detector/extensions/String.kt b/app/src/main/java/com/casic/detector/extensions/String.kt index 84b3d2c..b5b9afc 100644 --- a/app/src/main/java/com/casic/detector/extensions/String.kt +++ b/app/src/main/java/com/casic/detector/extensions/String.kt @@ -42,6 +42,7 @@ return when (type) { FileType.APK -> "$httpConfig/ems/${this}" FileType.EXCEL -> "$httpConfig/ems/xls/marker${this}.xls" + FileType.IMAGE -> "$httpConfig/ems${this}" } } diff --git a/app/src/main/java/com/casic/detector/model/MarkerImageModel.java b/app/src/main/java/com/casic/detector/model/MarkerImageModel.java deleted file mode 100644 index 5c770a8..0000000 --- a/app/src/main/java/com/casic/detector/model/MarkerImageModel.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.casic.detector.model; - -public class MarkerImageModel { - - private String success; - private String data; - - public String getSuccess() { - return success; - } - - public void setSuccess(String success) { - this.success = success; - } - - public String getData() { - return data; - } - - public void setData(String data) { - this.data = data; - } -} diff --git a/app/build.gradle b/app/build.gradle index b4ce9a7..04d8402 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -81,7 +81,7 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.9.0' + implementation 'com.google.code.gson:gson:2.10.1' //Kotlin协程 implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.5.1' //MVVM+LiveData diff --git a/app/src/main/java/com/casic/detector/extensions/String.kt b/app/src/main/java/com/casic/detector/extensions/String.kt index 84b3d2c..b5b9afc 100644 --- a/app/src/main/java/com/casic/detector/extensions/String.kt +++ b/app/src/main/java/com/casic/detector/extensions/String.kt @@ -42,6 +42,7 @@ return when (type) { FileType.APK -> "$httpConfig/ems/${this}" FileType.EXCEL -> "$httpConfig/ems/xls/marker${this}.xls" + FileType.IMAGE -> "$httpConfig/ems${this}" } } diff --git a/app/src/main/java/com/casic/detector/model/MarkerImageModel.java b/app/src/main/java/com/casic/detector/model/MarkerImageModel.java deleted file mode 100644 index 5c770a8..0000000 --- a/app/src/main/java/com/casic/detector/model/MarkerImageModel.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.casic.detector.model; - -public class MarkerImageModel { - - private String success; - private String data; - - public String getSuccess() { - return success; - } - - public void setSuccess(String success) { - this.success = success; - } - - public String getData() { - return data; - } - - public void setData(String data) { - this.data = data; - } -} diff --git a/app/src/main/java/com/casic/detector/utils/FileType.kt b/app/src/main/java/com/casic/detector/utils/FileType.kt index 235082d..8c9e8b5 100644 --- a/app/src/main/java/com/casic/detector/utils/FileType.kt +++ b/app/src/main/java/com/casic/detector/utils/FileType.kt @@ -4,4 +4,6 @@ object APK : FileType() object EXCEL : FileType() + + object IMAGE : FileType() } diff --git a/app/build.gradle b/app/build.gradle index b4ce9a7..04d8402 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -81,7 +81,7 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.9.0' + implementation 'com.google.code.gson:gson:2.10.1' //Kotlin协程 implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.5.1' //MVVM+LiveData diff --git a/app/src/main/java/com/casic/detector/extensions/String.kt b/app/src/main/java/com/casic/detector/extensions/String.kt index 84b3d2c..b5b9afc 100644 --- a/app/src/main/java/com/casic/detector/extensions/String.kt +++ b/app/src/main/java/com/casic/detector/extensions/String.kt @@ -42,6 +42,7 @@ return when (type) { FileType.APK -> "$httpConfig/ems/${this}" FileType.EXCEL -> "$httpConfig/ems/xls/marker${this}.xls" + FileType.IMAGE -> "$httpConfig/ems${this}" } } diff --git a/app/src/main/java/com/casic/detector/model/MarkerImageModel.java b/app/src/main/java/com/casic/detector/model/MarkerImageModel.java deleted file mode 100644 index 5c770a8..0000000 --- a/app/src/main/java/com/casic/detector/model/MarkerImageModel.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.casic.detector.model; - -public class MarkerImageModel { - - private String success; - private String data; - - public String getSuccess() { - return success; - } - - public void setSuccess(String success) { - this.success = success; - } - - public String getData() { - return data; - } - - public void setData(String data) { - this.data = data; - } -} diff --git a/app/src/main/java/com/casic/detector/utils/FileType.kt b/app/src/main/java/com/casic/detector/utils/FileType.kt index 235082d..8c9e8b5 100644 --- a/app/src/main/java/com/casic/detector/utils/FileType.kt +++ b/app/src/main/java/com/casic/detector/utils/FileType.kt @@ -4,4 +4,6 @@ object APK : FileType() object EXCEL : FileType() + + object IMAGE : FileType() } diff --git a/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt b/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt index 82813ff..eb68e92 100644 --- a/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt +++ b/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt @@ -1,26 +1,28 @@ package com.casic.detector.view +import android.content.Context import android.graphics.Color import android.graphics.drawable.ColorDrawable import android.os.Bundle +import android.util.Log import android.view.Gravity import androidx.appcompat.app.AppCompatActivity -import androidx.lifecycle.ViewModelProvider import com.casic.detector.R import com.casic.detector.bean.LabelBean +import com.casic.detector.extensions.appendDownloadUrl +import com.casic.detector.utils.FileType import com.casic.detector.utils.LocaleConstant -import com.casic.detector.vm.TaskViewModel import com.google.gson.Gson import com.google.gson.reflect.TypeToken -import com.pengxh.kt.lite.extensions.getScreenHeight -import com.pengxh.kt.lite.extensions.getScreenWidth +import com.pengxh.kt.lite.extensions.* import com.pengxh.kt.lite.utils.Constant import kotlinx.android.synthetic.main.activity_object_detail.* class ObjectDetailActivity : AppCompatActivity() { + private val kTag = "ObjectDetailActivity" + private val context: Context = this@ObjectDetailActivity private val gson by lazy { Gson() } - private lateinit var taskViewModel: TaskViewModel override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -59,13 +61,31 @@ closeView.setOnClickListener { finish() } - //TODO 图片接口异常 - taskViewModel = ViewModelProvider(this)[TaskViewModel::class.java] - taskViewModel.markerImageResult.observe(this) { - - } showImageView.setOnClickListener { - taskViewModel.getLabelPicture(labelBean.id.toString()) + //查数据库 + if (labelBean.imagePath.isNullOrEmpty()) { + "此标识器无图片".show(context) + } else { + val realPaths: ArrayList = ArrayList() //真实图片路径 + + /** + * /images/markers/202307/0008818922_EVENT_20230704_160349_0_1.jpg,/images/markers/202307/0008818922_EVENT_20230704_160406_0_2.jpg + * */ + val imagePath = labelBean.imagePath + if (imagePath.contains(",")) { + val list = imagePath.split(",") + list.forEach { path -> + val url = path.appendDownloadUrl(FileType.IMAGE) + realPaths.add(url) + } + } else { + //只有一张图片 + val url = imagePath.appendDownloadUrl(FileType.IMAGE) + realPaths.add(url) + } + Log.d(kTag, "onCreate => ${realPaths.toJson()}") + navigatePageTo(0, realPaths) + } } } } \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index b4ce9a7..04d8402 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -81,7 +81,7 @@ //fragment快速实现 implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0' //官方Json解析库 - implementation 'com.google.code.gson:gson:2.9.0' + implementation 'com.google.code.gson:gson:2.10.1' //Kotlin协程 implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.5.1' //MVVM+LiveData diff --git a/app/src/main/java/com/casic/detector/extensions/String.kt b/app/src/main/java/com/casic/detector/extensions/String.kt index 84b3d2c..b5b9afc 100644 --- a/app/src/main/java/com/casic/detector/extensions/String.kt +++ b/app/src/main/java/com/casic/detector/extensions/String.kt @@ -42,6 +42,7 @@ return when (type) { FileType.APK -> "$httpConfig/ems/${this}" FileType.EXCEL -> "$httpConfig/ems/xls/marker${this}.xls" + FileType.IMAGE -> "$httpConfig/ems${this}" } } diff --git a/app/src/main/java/com/casic/detector/model/MarkerImageModel.java b/app/src/main/java/com/casic/detector/model/MarkerImageModel.java deleted file mode 100644 index 5c770a8..0000000 --- a/app/src/main/java/com/casic/detector/model/MarkerImageModel.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.casic.detector.model; - -public class MarkerImageModel { - - private String success; - private String data; - - public String getSuccess() { - return success; - } - - public void setSuccess(String success) { - this.success = success; - } - - public String getData() { - return data; - } - - public void setData(String data) { - this.data = data; - } -} diff --git a/app/src/main/java/com/casic/detector/utils/FileType.kt b/app/src/main/java/com/casic/detector/utils/FileType.kt index 235082d..8c9e8b5 100644 --- a/app/src/main/java/com/casic/detector/utils/FileType.kt +++ b/app/src/main/java/com/casic/detector/utils/FileType.kt @@ -4,4 +4,6 @@ object APK : FileType() object EXCEL : FileType() + + object IMAGE : FileType() } diff --git a/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt b/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt index 82813ff..eb68e92 100644 --- a/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt +++ b/app/src/main/java/com/casic/detector/view/ObjectDetailActivity.kt @@ -1,26 +1,28 @@ package com.casic.detector.view +import android.content.Context import android.graphics.Color import android.graphics.drawable.ColorDrawable import android.os.Bundle +import android.util.Log import android.view.Gravity import androidx.appcompat.app.AppCompatActivity -import androidx.lifecycle.ViewModelProvider import com.casic.detector.R import com.casic.detector.bean.LabelBean +import com.casic.detector.extensions.appendDownloadUrl +import com.casic.detector.utils.FileType import com.casic.detector.utils.LocaleConstant -import com.casic.detector.vm.TaskViewModel import com.google.gson.Gson import com.google.gson.reflect.TypeToken -import com.pengxh.kt.lite.extensions.getScreenHeight -import com.pengxh.kt.lite.extensions.getScreenWidth +import com.pengxh.kt.lite.extensions.* import com.pengxh.kt.lite.utils.Constant import kotlinx.android.synthetic.main.activity_object_detail.* class ObjectDetailActivity : AppCompatActivity() { + private val kTag = "ObjectDetailActivity" + private val context: Context = this@ObjectDetailActivity private val gson by lazy { Gson() } - private lateinit var taskViewModel: TaskViewModel override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -59,13 +61,31 @@ closeView.setOnClickListener { finish() } - //TODO 图片接口异常 - taskViewModel = ViewModelProvider(this)[TaskViewModel::class.java] - taskViewModel.markerImageResult.observe(this) { - - } showImageView.setOnClickListener { - taskViewModel.getLabelPicture(labelBean.id.toString()) + //查数据库 + if (labelBean.imagePath.isNullOrEmpty()) { + "此标识器无图片".show(context) + } else { + val realPaths: ArrayList = ArrayList() //真实图片路径 + + /** + * /images/markers/202307/0008818922_EVENT_20230704_160349_0_1.jpg,/images/markers/202307/0008818922_EVENT_20230704_160406_0_2.jpg + * */ + val imagePath = labelBean.imagePath + if (imagePath.contains(",")) { + val list = imagePath.split(",") + list.forEach { path -> + val url = path.appendDownloadUrl(FileType.IMAGE) + realPaths.add(url) + } + } else { + //只有一张图片 + val url = imagePath.appendDownloadUrl(FileType.IMAGE) + realPaths.add(url) + } + Log.d(kTag, "onCreate => ${realPaths.toJson()}") + navigatePageTo(0, realPaths) + } } } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/detector/vm/TaskViewModel.kt b/app/src/main/java/com/casic/detector/vm/TaskViewModel.kt index 2716154..3d39936 100644 --- a/app/src/main/java/com/casic/detector/vm/TaskViewModel.kt +++ b/app/src/main/java/com/casic/detector/vm/TaskViewModel.kt @@ -6,7 +6,6 @@ import com.casic.detector.extensions.separateResponseState import com.casic.detector.extensions.toErrorMessage import com.casic.detector.model.MarkerFileModel -import com.casic.detector.model.MarkerImageModel import com.casic.detector.model.TaskModel import com.casic.detector.retrofit.RetrofitServiceManager import com.casic.detector.utils.DataBaseManager @@ -23,7 +22,6 @@ private val gson by lazy { Gson() } val markerFileResult = MutableLiveData() - val markerImageResult = MutableLiveData() val taskResult = MutableLiveData() fun getMarkerFile(userId: String, companyId: String) = launch({ @@ -39,19 +37,6 @@ it.convertChinese().show(BaseApplication.get()) }) - fun getLabelPicture(markerId: String) = launch({ - val response = RetrofitServiceManager.getLabelPicture(markerId) - if (response.separateResponseState()) { - markerImageResult.value = gson.fromJson( - response, object : TypeToken() {}.type - ) - } else { - response.toErrorMessage().show(BaseApplication.get()) - } - }, { - it.convertChinese().show(BaseApplication.get()) - }) - fun getTask(userName: String) = launch({ val response = RetrofitServiceManager.getTask(userName) if (response.separateResponseState()) {