From dded7fe1d51cb3da855d02201ca150c9b7fd0495 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期二, 15 九月 2020 10:41:52 +0800
Subject: [PATCH] 修复一键分享功能中,整改建议 没有显示的问题
---
app/src/main/java/cn/flightfeather/thirdapp/module/inspection/MenuEvidenceViewModel.kt | 105 +++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 103 insertions(+), 2 deletions(-)
diff --git a/app/src/main/java/cn/flightfeather/thirdapp/module/inspection/MenuEvidenceViewModel.kt b/app/src/main/java/cn/flightfeather/thirdapp/module/inspection/MenuEvidenceViewModel.kt
index 9959bdd..9042490 100644
--- a/app/src/main/java/cn/flightfeather/thirdapp/module/inspection/MenuEvidenceViewModel.kt
+++ b/app/src/main/java/cn/flightfeather/thirdapp/module/inspection/MenuEvidenceViewModel.kt
@@ -2,6 +2,7 @@
import android.arch.lifecycle.MutableLiveData
import cn.flightfeather.thirdapp.bean.*
+import cn.flightfeather.thirdapp.bean.vo.ProblemlistVo
import cn.flightfeather.thirdapp.common.net.ResultCallBack
import cn.flightfeather.thirdapp.model.event.ProblemEvent
import cn.flightfeather.thirdapp.module.base.BaseViewModel
@@ -9,6 +10,7 @@
import okhttp3.ResponseBody
import org.greenrobot.eventbus.EventBus
import org.jetbrains.anko.toast
+import java.io.File
/**
* @author riku
@@ -31,6 +33,13 @@
val problemMap = HashMap<String, ArrayList<Problemtype>>()
+ val mediaFileList = MutableLiveData<List<Mediafile>>()
+
+ //鎵�鏈夋暟鎹姞杞藉畬鎴愰�氱煡
+ val loadingOver = MutableLiveData<Boolean>()
+ //璁板綍鍚勪釜鏁版嵁鍔犺浇鏄惁瀹屾垚鐨勭姸鎬�
+ private val loadingStatus = BooleanArray(2)
+
/**
* 鑾峰彇鍦烘櫙闂鍙�変綅缃紙鐩墠鍙湁宸ュ湴锛屼絾鎵�鏈夊満鏅兘浣跨敤锛�
*/
@@ -39,6 +48,7 @@
override fun onSuccess(result: ArrayList<Domainitem>?) {
result?.let {
locationList.value = it
+ onLoaded(0)
}
}
@@ -59,8 +69,8 @@
if (it.isEmpty()) {
it.add(Problemtype().apply {
guid = "0"
- typename = "鏃�"
- name = "鏃�"
+ typename = "鍏朵粬"
+ name = "鍏朵粬"
})
}
@@ -76,6 +86,8 @@
}
problemFatherType.value = typeList
+
+ onLoaded(1)
}
}
@@ -98,6 +110,7 @@
}
advices.add("鏆傛棤寤鸿")
suggestionList.value = advices
+
}
}
@@ -105,6 +118,57 @@
}
})
+ }
+
+ /**
+ * 鏍规嵁闂鎵惧埌鏈嶅姟鍣ㄥ拰鏈湴鐨勬墍鏈夊浘鐗�
+ */
+ fun getMediaFileList(p: ProblemlistVo) {
+ problemRepository.getMediaFileLocal(p.guid, object : ResultCallBack<List<Mediafile>> {
+ override fun onSuccess(result: List<Mediafile>?) {
+ result?.let {
+ p.mediafileList.addAll(it)
+ mediaFileList.value = p.mediafileList
+ }
+ }
+
+ override fun onFailure() {
+ }
+ })
+ }
+
+ /**
+ * 涓嬭浇闂鍥剧墖
+ * fixme: 2020/8/6 鐩墠鐢变簬鍘熺▼搴忚缃浘鐗囩殑鏂瑰紡涓烘墜鍔ㄤ笅杞藉浘鐗囷紝鍥犳娌跨敤锛屼箣鍚庣粺涓�鐢℅lide绛夌涓夋柟搴撲唬鏇�
+ */
+ fun downLoadMediaFile(mediaFile: Mediafile, s: (file: File) -> Unit) {
+ problemRepository.downloadMediaFile(mediaFile, object : ResultCallBack<File> {
+ override fun onSuccess(result: File?) {
+ result?.let {
+ s(it)
+ }
+ }
+
+ override fun onFailure() {
+
+ }
+ })
+ }
+
+ /**
+ * 鍒犻櫎闂鍥剧墖
+ */
+ fun deleteMediaFile(mediaFile: List<Mediafile>) {
+ mediaFile.forEach {
+ problemRepository.deleteMediaFile(it, object : ResultCallBack<Boolean> {
+ override fun onSuccess(result: Boolean?) {
+
+ }
+
+ override fun onFailure() {
+ }
+ })
+ }
}
/**
@@ -124,6 +188,24 @@
application.toast("鎻愪氦澶辫触")
}
+ })
+ }
+
+ /**
+ * 鏇存柊涓�涓棶棰�
+ */
+ fun updateProblem(problem: ProblemlistVo) {
+ problemRepository.updateProblem(problem, object : ResultCallBack<ResponseBody> {
+ override fun onSuccess(result: ResponseBody?) {
+ result?.let {
+ application.toast("淇敼鎴愬姛")
+ EventBus.getDefault().post(ProblemEvent(problem.voToEntity()))
+ }
+ }
+
+ override fun onFailure() {
+ application.toast("淇敼澶辫触锛岃妫�鏌ョ綉缁�")
+ }
})
}
@@ -151,4 +233,23 @@
problemType.value = it
}
}
+
+ /**
+ * 鍒ゆ柇鏄惁鎵�鏈夌殑鏁版嵁閮藉姞杞藉畬鎴�
+ */
+ fun onLoaded(i: Int) {
+ if (i < loadingStatus.size) {
+ loadingStatus[i] = true
+ }
+ var isLoadOver = true
+ loadingStatus.forEach {
+ isLoadOver = isLoadOver.and(it)
+ }
+ if (isLoadOver) {
+ loadingOver.value = isLoadOver
+ for (y in loadingStatus.indices) {
+ loadingStatus[y] = false
+ }
+ }
+ }
}
\ No newline at end of file
--
Gitblit v1.9.3