From 979d9cff22806f213b420452ab4a68fcbaf021b6 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期一, 31 五月 2021 17:43:49 +0800
Subject: [PATCH] 1. 修复多项可能引起空指针崩溃的bug; 2. 新建子任务时默认执行人员从全体人员改为当前用户; 3. 新建子任务时默认执行时间强制固定为总任务对应的时段内,确保子任务执行时间不会超出总任务范围。

---
 app/src/main/java/cn/flightfeather/thirdapp/module/inspection/BaseProblemListViewModel.kt |   30 ++++++++++++++++++++++++++++--
 1 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/app/src/main/java/cn/flightfeather/thirdapp/module/inspection/BaseProblemListViewModel.kt b/app/src/main/java/cn/flightfeather/thirdapp/module/inspection/BaseProblemListViewModel.kt
index 0deceaa..3fc957d 100644
--- a/app/src/main/java/cn/flightfeather/thirdapp/module/inspection/BaseProblemListViewModel.kt
+++ b/app/src/main/java/cn/flightfeather/thirdapp/module/inspection/BaseProblemListViewModel.kt
@@ -1,13 +1,18 @@
 package cn.flightfeather.thirdapp.module.inspection
 
 import android.arch.lifecycle.MutableLiveData
-import cn.flightfeather.thirdapp.bean.LastSubtaskPack
-import cn.flightfeather.thirdapp.bean.Subtask
+import cn.flightfeather.thirdapp.bean.vo.LastSubtaskPack
+import cn.flightfeather.thirdapp.bean.entity.Subtask
 import cn.flightfeather.thirdapp.bean.vo.ProblemlistVo
 import cn.flightfeather.thirdapp.common.net.ResultCallBack
+import cn.flightfeather.thirdapp.common.net.ResultCallBack2
+import cn.flightfeather.thirdapp.model.event.ProblemEvent
 import cn.flightfeather.thirdapp.module.base.BaseViewModel
 import cn.flightfeather.thirdapp.repository.InspectionRepository
+import cn.flightfeather.thirdapp.repository.ProblemRepository
 import cn.flightfeather.thirdapp.util.DateFormatter
+import org.greenrobot.eventbus.EventBus
+import org.jetbrains.anko.toast
 
 /**
  * @author riku
@@ -16,6 +21,7 @@
 class BaseProblemListViewModel : BaseViewModel() {
 
     private val inspectionRepository = InspectionRepository()
+    private val problemRepository = ProblemRepository()
 
     var problemList = MutableLiveData<ArrayList<ProblemlistVo>>().apply { value = ArrayList() }
 
@@ -67,4 +73,24 @@
             })
         }
     }
+
+    /**
+     * 鍒犻櫎闂
+     */
+    fun deleteProblem(position: Int, s: () -> Unit) {
+        problemList.value?.get(position)?.let {
+            problemRepository.deleteProblem(it.guid ?: "", object : ResultCallBack2<Int> {
+                override fun onSuccess(result: Int?, message: String) {
+                    if (result != null) {
+                        EventBus.getDefault().post(ProblemEvent(it.voToEntity(), InspectionDetailActivity.PROBLEM_DELETE))
+                        s()
+                    }
+                }
+
+                override fun onFailure(message: String) {
+                    application.toast(message)
+                }
+            })
+        }
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.3