diff --git a/.idea/misc.xml b/.idea/misc.xml
index 75ae27f..ac873f3 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -20,6 +20,7 @@
+
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 75ae27f..ac873f3 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -20,6 +20,7 @@
+
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
index aacd4da..4280e7e 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
@@ -554,16 +554,18 @@
homeView.settingsValueView.text = dataModel.alarmValue.toString()
homeView.maxValueView.text = dataModel.maxPotency.toString()
//判断是否需要报警
- val isOpenWarning =
- SaveKeyValues.getValue(LocaleConstant.SINGLE_OPEN_WARNING, false) as Boolean
- if (isOpenWarning) {
+ val isOpen = SaveKeyValues.getValue(
+ LocaleConstant.SINGLE_OPEN_WARNING, false
+ ) as Boolean
+ if (isOpen) {
if (dataModel.potency >= dataModel.alarmValue) {
//当前值大于设置值,需要报警
SoundPoolHelper.playSound(requireContext(), R.raw.alarm)
vibrator.vibrate(1000)
- val isAutoRecord =
- SaveKeyValues.getValue(LocaleConstant.SINGLE_AUTO_RECORD, false) as Boolean
- if (isAutoRecord) {
+ val isRecord = SaveKeyValues.getValue(
+ LocaleConstant.SINGLE_AUTO_RECORD, false
+ ) as Boolean
+ if (isRecord) {
//如果连续超过10个报警,自动生成报警事件
alarmCount++
if (alarmCount >= 10) {
@@ -583,6 +585,7 @@
return
}
isGeneratingTask = true
+ Log.d(kTag, "generateAlarmTask => 自动记录报警")
DataBaseManager.get.addEvent(
taskId = UUID.randomUUID().toString(),
@@ -596,9 +599,9 @@
images = "",
description = "自动报警记录"
)
- isGeneratingTask = false
- alarmCount = 0
"保存成功".show(requireContext())
+ alarmCount = 0
+ isGeneratingTask = false
}
/***以下是地图生命周期管理************************************************************************/
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 75ae27f..ac873f3 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -20,6 +20,7 @@
+
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
index aacd4da..4280e7e 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
@@ -554,16 +554,18 @@
homeView.settingsValueView.text = dataModel.alarmValue.toString()
homeView.maxValueView.text = dataModel.maxPotency.toString()
//判断是否需要报警
- val isOpenWarning =
- SaveKeyValues.getValue(LocaleConstant.SINGLE_OPEN_WARNING, false) as Boolean
- if (isOpenWarning) {
+ val isOpen = SaveKeyValues.getValue(
+ LocaleConstant.SINGLE_OPEN_WARNING, false
+ ) as Boolean
+ if (isOpen) {
if (dataModel.potency >= dataModel.alarmValue) {
//当前值大于设置值,需要报警
SoundPoolHelper.playSound(requireContext(), R.raw.alarm)
vibrator.vibrate(1000)
- val isAutoRecord =
- SaveKeyValues.getValue(LocaleConstant.SINGLE_AUTO_RECORD, false) as Boolean
- if (isAutoRecord) {
+ val isRecord = SaveKeyValues.getValue(
+ LocaleConstant.SINGLE_AUTO_RECORD, false
+ ) as Boolean
+ if (isRecord) {
//如果连续超过10个报警,自动生成报警事件
alarmCount++
if (alarmCount >= 10) {
@@ -583,6 +585,7 @@
return
}
isGeneratingTask = true
+ Log.d(kTag, "generateAlarmTask => 自动记录报警")
DataBaseManager.get.addEvent(
taskId = UUID.randomUUID().toString(),
@@ -596,9 +599,9 @@
images = "",
description = "自动报警记录"
)
- isGeneratingTask = false
- alarmCount = 0
"保存成功".show(requireContext())
+ alarmCount = 0
+ isGeneratingTask = false
}
/***以下是地图生命周期管理************************************************************************/
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
index d15a473..531cdad 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
@@ -32,6 +32,7 @@
override fun handleMessage(msg: Message): Boolean {
if (msg.what == LocaleConstant.LOAD_EVENT) {
dataBeans = DataBaseManager.get.loadEvent()
+ weakReferenceHandler.sendEmptyMessage(2023081101)
} else if (msg.what == 2023081101) {
if (dataBeans.size == 0) {
emptyView.show("抱歉,无法查询到相关记录", null)
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 75ae27f..ac873f3 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -20,6 +20,7 @@
+
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
index aacd4da..4280e7e 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
@@ -554,16 +554,18 @@
homeView.settingsValueView.text = dataModel.alarmValue.toString()
homeView.maxValueView.text = dataModel.maxPotency.toString()
//判断是否需要报警
- val isOpenWarning =
- SaveKeyValues.getValue(LocaleConstant.SINGLE_OPEN_WARNING, false) as Boolean
- if (isOpenWarning) {
+ val isOpen = SaveKeyValues.getValue(
+ LocaleConstant.SINGLE_OPEN_WARNING, false
+ ) as Boolean
+ if (isOpen) {
if (dataModel.potency >= dataModel.alarmValue) {
//当前值大于设置值,需要报警
SoundPoolHelper.playSound(requireContext(), R.raw.alarm)
vibrator.vibrate(1000)
- val isAutoRecord =
- SaveKeyValues.getValue(LocaleConstant.SINGLE_AUTO_RECORD, false) as Boolean
- if (isAutoRecord) {
+ val isRecord = SaveKeyValues.getValue(
+ LocaleConstant.SINGLE_AUTO_RECORD, false
+ ) as Boolean
+ if (isRecord) {
//如果连续超过10个报警,自动生成报警事件
alarmCount++
if (alarmCount >= 10) {
@@ -583,6 +585,7 @@
return
}
isGeneratingTask = true
+ Log.d(kTag, "generateAlarmTask => 自动记录报警")
DataBaseManager.get.addEvent(
taskId = UUID.randomUUID().toString(),
@@ -596,9 +599,9 @@
images = "",
description = "自动报警记录"
)
- isGeneratingTask = false
- alarmCount = 0
"保存成功".show(requireContext())
+ alarmCount = 0
+ isGeneratingTask = false
}
/***以下是地图生命周期管理************************************************************************/
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
index d15a473..531cdad 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
@@ -32,6 +32,7 @@
override fun handleMessage(msg: Message): Boolean {
if (msg.what == LocaleConstant.LOAD_EVENT) {
dataBeans = DataBaseManager.get.loadEvent()
+ weakReferenceHandler.sendEmptyMessage(2023081101)
} else if (msg.what == 2023081101) {
if (dataBeans.size == 0) {
emptyView.show("抱歉,无法查询到相关记录", null)
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
index 4230e7a..1c61d14 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
@@ -2,6 +2,7 @@
import android.os.Handler
import android.os.Message
+import androidx.lifecycle.lifecycleScope
import com.casic.birmm.inspect.R
import com.casic.birmm.inspect.bean.InspectionLocalBean
import com.casic.birmm.inspect.single.view.InspectionRouteActivity
@@ -12,8 +13,12 @@
import com.pengxh.kt.lite.base.KotlinBaseFragment
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.utils.WeakReferenceHandler
+import com.pengxh.kt.lite.widget.dialog.AlertControlDialog
import kotlinx.android.synthetic.main.include_empty_view.*
import kotlinx.android.synthetic.main.single_fragment_query_inspect.*
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.withContext
class QueryInspectionFragment : KotlinBaseFragment(), Handler.Callback {
@@ -26,6 +31,7 @@
override fun handleMessage(msg: Message): Boolean {
if (msg.what == LocaleConstant.LOAD_INSPECTION) {
dataBeans = DataBaseManager.get.loadInspection()
+ weakReferenceHandler.sendEmptyMessage(2023081201)
} else if (msg.what == 2023081201) {
if (dataBeans.size == 0) {
emptyView.show("抱歉,无法查询到相关记录", null)
@@ -43,6 +49,36 @@
.setText(R.id.endTimeView, item.endTime)
.setText(R.id.endLocationView, item.endAddress)
.setText(R.id.distanceView, item.distance.toString())
+ .setOnClickListener(R.id.deleteView) {
+ AlertControlDialog.Builder()
+ .setContext(requireContext())
+ .setTitle("提示")
+ .setMessage("确定删除此条巡检记录吗?")
+ .setNegativeButton("取消")
+ .setPositiveButton("确定")
+ .setOnDialogButtonClickListener(object :
+ AlertControlDialog.OnDialogButtonClickListener {
+ override fun onCancelClick() {
+
+ }
+
+ override fun onConfirmClick() {
+ lifecycleScope.launch(Dispatchers.Main) {
+ withContext(Dispatchers.IO) {
+ DataBaseManager.get.deleteEventByInspectionId(
+ item.inspectionId
+ )
+ }
+ DataBaseManager.get.deleteInspectionById(item.inspectionId)
+ dataBeans.remove(item)
+ notifyItemRemoved(position)
+ notifyItemRangeChanged(
+ position, dataBeans.size - position
+ )
+ }
+ }
+ }).build().show()
+ }
}
}
inspectRecyclerView.adapter = inspectListAdapter
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 75ae27f..ac873f3 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -20,6 +20,7 @@
+
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
index aacd4da..4280e7e 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
@@ -554,16 +554,18 @@
homeView.settingsValueView.text = dataModel.alarmValue.toString()
homeView.maxValueView.text = dataModel.maxPotency.toString()
//判断是否需要报警
- val isOpenWarning =
- SaveKeyValues.getValue(LocaleConstant.SINGLE_OPEN_WARNING, false) as Boolean
- if (isOpenWarning) {
+ val isOpen = SaveKeyValues.getValue(
+ LocaleConstant.SINGLE_OPEN_WARNING, false
+ ) as Boolean
+ if (isOpen) {
if (dataModel.potency >= dataModel.alarmValue) {
//当前值大于设置值,需要报警
SoundPoolHelper.playSound(requireContext(), R.raw.alarm)
vibrator.vibrate(1000)
- val isAutoRecord =
- SaveKeyValues.getValue(LocaleConstant.SINGLE_AUTO_RECORD, false) as Boolean
- if (isAutoRecord) {
+ val isRecord = SaveKeyValues.getValue(
+ LocaleConstant.SINGLE_AUTO_RECORD, false
+ ) as Boolean
+ if (isRecord) {
//如果连续超过10个报警,自动生成报警事件
alarmCount++
if (alarmCount >= 10) {
@@ -583,6 +585,7 @@
return
}
isGeneratingTask = true
+ Log.d(kTag, "generateAlarmTask => 自动记录报警")
DataBaseManager.get.addEvent(
taskId = UUID.randomUUID().toString(),
@@ -596,9 +599,9 @@
images = "",
description = "自动报警记录"
)
- isGeneratingTask = false
- alarmCount = 0
"保存成功".show(requireContext())
+ alarmCount = 0
+ isGeneratingTask = false
}
/***以下是地图生命周期管理************************************************************************/
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
index d15a473..531cdad 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
@@ -32,6 +32,7 @@
override fun handleMessage(msg: Message): Boolean {
if (msg.what == LocaleConstant.LOAD_EVENT) {
dataBeans = DataBaseManager.get.loadEvent()
+ weakReferenceHandler.sendEmptyMessage(2023081101)
} else if (msg.what == 2023081101) {
if (dataBeans.size == 0) {
emptyView.show("抱歉,无法查询到相关记录", null)
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
index 4230e7a..1c61d14 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
@@ -2,6 +2,7 @@
import android.os.Handler
import android.os.Message
+import androidx.lifecycle.lifecycleScope
import com.casic.birmm.inspect.R
import com.casic.birmm.inspect.bean.InspectionLocalBean
import com.casic.birmm.inspect.single.view.InspectionRouteActivity
@@ -12,8 +13,12 @@
import com.pengxh.kt.lite.base.KotlinBaseFragment
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.utils.WeakReferenceHandler
+import com.pengxh.kt.lite.widget.dialog.AlertControlDialog
import kotlinx.android.synthetic.main.include_empty_view.*
import kotlinx.android.synthetic.main.single_fragment_query_inspect.*
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.withContext
class QueryInspectionFragment : KotlinBaseFragment(), Handler.Callback {
@@ -26,6 +31,7 @@
override fun handleMessage(msg: Message): Boolean {
if (msg.what == LocaleConstant.LOAD_INSPECTION) {
dataBeans = DataBaseManager.get.loadInspection()
+ weakReferenceHandler.sendEmptyMessage(2023081201)
} else if (msg.what == 2023081201) {
if (dataBeans.size == 0) {
emptyView.show("抱歉,无法查询到相关记录", null)
@@ -43,6 +49,36 @@
.setText(R.id.endTimeView, item.endTime)
.setText(R.id.endLocationView, item.endAddress)
.setText(R.id.distanceView, item.distance.toString())
+ .setOnClickListener(R.id.deleteView) {
+ AlertControlDialog.Builder()
+ .setContext(requireContext())
+ .setTitle("提示")
+ .setMessage("确定删除此条巡检记录吗?")
+ .setNegativeButton("取消")
+ .setPositiveButton("确定")
+ .setOnDialogButtonClickListener(object :
+ AlertControlDialog.OnDialogButtonClickListener {
+ override fun onCancelClick() {
+
+ }
+
+ override fun onConfirmClick() {
+ lifecycleScope.launch(Dispatchers.Main) {
+ withContext(Dispatchers.IO) {
+ DataBaseManager.get.deleteEventByInspectionId(
+ item.inspectionId
+ )
+ }
+ DataBaseManager.get.deleteInspectionById(item.inspectionId)
+ dataBeans.remove(item)
+ notifyItemRemoved(position)
+ notifyItemRangeChanged(
+ position, dataBeans.size - position
+ )
+ }
+ }
+ }).build().show()
+ }
}
}
inspectRecyclerView.adapter = inspectListAdapter
diff --git a/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt b/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt
index 7c2b6e0..f88a07c 100644
--- a/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt
@@ -224,6 +224,23 @@
}
/**
+ * 删除事件记录
+ * */
+ fun deleteEventByInspectionId(inspectionId: String) {
+ val result = taskEventDao.queryBuilder().where(
+ TaskEventLocalBeanDao.Properties.InspectionId.eq(inspectionId)
+ ).list()
+ if (!result.isNullOrEmpty()) {
+ result.forEach {
+ taskEventDao.delete(it)
+ }
+ //通知列表刷新
+ QueryEventFragment.weakReferenceHandler.sendEmptyMessage(LocaleConstant.LOAD_EVENT)
+ }
+ }
+
+
+ /**
* 删除全部事件数据
*/
fun deleteAllEvent() {
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 75ae27f..ac873f3 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -20,6 +20,7 @@
+
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
index aacd4da..4280e7e 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
@@ -554,16 +554,18 @@
homeView.settingsValueView.text = dataModel.alarmValue.toString()
homeView.maxValueView.text = dataModel.maxPotency.toString()
//判断是否需要报警
- val isOpenWarning =
- SaveKeyValues.getValue(LocaleConstant.SINGLE_OPEN_WARNING, false) as Boolean
- if (isOpenWarning) {
+ val isOpen = SaveKeyValues.getValue(
+ LocaleConstant.SINGLE_OPEN_WARNING, false
+ ) as Boolean
+ if (isOpen) {
if (dataModel.potency >= dataModel.alarmValue) {
//当前值大于设置值,需要报警
SoundPoolHelper.playSound(requireContext(), R.raw.alarm)
vibrator.vibrate(1000)
- val isAutoRecord =
- SaveKeyValues.getValue(LocaleConstant.SINGLE_AUTO_RECORD, false) as Boolean
- if (isAutoRecord) {
+ val isRecord = SaveKeyValues.getValue(
+ LocaleConstant.SINGLE_AUTO_RECORD, false
+ ) as Boolean
+ if (isRecord) {
//如果连续超过10个报警,自动生成报警事件
alarmCount++
if (alarmCount >= 10) {
@@ -583,6 +585,7 @@
return
}
isGeneratingTask = true
+ Log.d(kTag, "generateAlarmTask => 自动记录报警")
DataBaseManager.get.addEvent(
taskId = UUID.randomUUID().toString(),
@@ -596,9 +599,9 @@
images = "",
description = "自动报警记录"
)
- isGeneratingTask = false
- alarmCount = 0
"保存成功".show(requireContext())
+ alarmCount = 0
+ isGeneratingTask = false
}
/***以下是地图生命周期管理************************************************************************/
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
index d15a473..531cdad 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
@@ -32,6 +32,7 @@
override fun handleMessage(msg: Message): Boolean {
if (msg.what == LocaleConstant.LOAD_EVENT) {
dataBeans = DataBaseManager.get.loadEvent()
+ weakReferenceHandler.sendEmptyMessage(2023081101)
} else if (msg.what == 2023081101) {
if (dataBeans.size == 0) {
emptyView.show("抱歉,无法查询到相关记录", null)
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
index 4230e7a..1c61d14 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
@@ -2,6 +2,7 @@
import android.os.Handler
import android.os.Message
+import androidx.lifecycle.lifecycleScope
import com.casic.birmm.inspect.R
import com.casic.birmm.inspect.bean.InspectionLocalBean
import com.casic.birmm.inspect.single.view.InspectionRouteActivity
@@ -12,8 +13,12 @@
import com.pengxh.kt.lite.base.KotlinBaseFragment
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.utils.WeakReferenceHandler
+import com.pengxh.kt.lite.widget.dialog.AlertControlDialog
import kotlinx.android.synthetic.main.include_empty_view.*
import kotlinx.android.synthetic.main.single_fragment_query_inspect.*
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.withContext
class QueryInspectionFragment : KotlinBaseFragment(), Handler.Callback {
@@ -26,6 +31,7 @@
override fun handleMessage(msg: Message): Boolean {
if (msg.what == LocaleConstant.LOAD_INSPECTION) {
dataBeans = DataBaseManager.get.loadInspection()
+ weakReferenceHandler.sendEmptyMessage(2023081201)
} else if (msg.what == 2023081201) {
if (dataBeans.size == 0) {
emptyView.show("抱歉,无法查询到相关记录", null)
@@ -43,6 +49,36 @@
.setText(R.id.endTimeView, item.endTime)
.setText(R.id.endLocationView, item.endAddress)
.setText(R.id.distanceView, item.distance.toString())
+ .setOnClickListener(R.id.deleteView) {
+ AlertControlDialog.Builder()
+ .setContext(requireContext())
+ .setTitle("提示")
+ .setMessage("确定删除此条巡检记录吗?")
+ .setNegativeButton("取消")
+ .setPositiveButton("确定")
+ .setOnDialogButtonClickListener(object :
+ AlertControlDialog.OnDialogButtonClickListener {
+ override fun onCancelClick() {
+
+ }
+
+ override fun onConfirmClick() {
+ lifecycleScope.launch(Dispatchers.Main) {
+ withContext(Dispatchers.IO) {
+ DataBaseManager.get.deleteEventByInspectionId(
+ item.inspectionId
+ )
+ }
+ DataBaseManager.get.deleteInspectionById(item.inspectionId)
+ dataBeans.remove(item)
+ notifyItemRemoved(position)
+ notifyItemRangeChanged(
+ position, dataBeans.size - position
+ )
+ }
+ }
+ }).build().show()
+ }
}
}
inspectRecyclerView.adapter = inspectListAdapter
diff --git a/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt b/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt
index 7c2b6e0..f88a07c 100644
--- a/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt
@@ -224,6 +224,23 @@
}
/**
+ * 删除事件记录
+ * */
+ fun deleteEventByInspectionId(inspectionId: String) {
+ val result = taskEventDao.queryBuilder().where(
+ TaskEventLocalBeanDao.Properties.InspectionId.eq(inspectionId)
+ ).list()
+ if (!result.isNullOrEmpty()) {
+ result.forEach {
+ taskEventDao.delete(it)
+ }
+ //通知列表刷新
+ QueryEventFragment.weakReferenceHandler.sendEmptyMessage(LocaleConstant.LOAD_EVENT)
+ }
+ }
+
+
+ /**
* 删除全部事件数据
*/
fun deleteAllEvent() {
diff --git a/app/src/main/res/drawable/ic_delete.xml b/app/src/main/res/drawable/ic_delete.xml
new file mode 100644
index 0000000..f5e1824
--- /dev/null
+++ b/app/src/main/res/drawable/ic_delete.xml
@@ -0,0 +1,12 @@
+
+
+
+
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 75ae27f..ac873f3 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -20,6 +20,7 @@
+
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
index aacd4da..4280e7e 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
@@ -554,16 +554,18 @@
homeView.settingsValueView.text = dataModel.alarmValue.toString()
homeView.maxValueView.text = dataModel.maxPotency.toString()
//判断是否需要报警
- val isOpenWarning =
- SaveKeyValues.getValue(LocaleConstant.SINGLE_OPEN_WARNING, false) as Boolean
- if (isOpenWarning) {
+ val isOpen = SaveKeyValues.getValue(
+ LocaleConstant.SINGLE_OPEN_WARNING, false
+ ) as Boolean
+ if (isOpen) {
if (dataModel.potency >= dataModel.alarmValue) {
//当前值大于设置值,需要报警
SoundPoolHelper.playSound(requireContext(), R.raw.alarm)
vibrator.vibrate(1000)
- val isAutoRecord =
- SaveKeyValues.getValue(LocaleConstant.SINGLE_AUTO_RECORD, false) as Boolean
- if (isAutoRecord) {
+ val isRecord = SaveKeyValues.getValue(
+ LocaleConstant.SINGLE_AUTO_RECORD, false
+ ) as Boolean
+ if (isRecord) {
//如果连续超过10个报警,自动生成报警事件
alarmCount++
if (alarmCount >= 10) {
@@ -583,6 +585,7 @@
return
}
isGeneratingTask = true
+ Log.d(kTag, "generateAlarmTask => 自动记录报警")
DataBaseManager.get.addEvent(
taskId = UUID.randomUUID().toString(),
@@ -596,9 +599,9 @@
images = "",
description = "自动报警记录"
)
- isGeneratingTask = false
- alarmCount = 0
"保存成功".show(requireContext())
+ alarmCount = 0
+ isGeneratingTask = false
}
/***以下是地图生命周期管理************************************************************************/
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
index d15a473..531cdad 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
@@ -32,6 +32,7 @@
override fun handleMessage(msg: Message): Boolean {
if (msg.what == LocaleConstant.LOAD_EVENT) {
dataBeans = DataBaseManager.get.loadEvent()
+ weakReferenceHandler.sendEmptyMessage(2023081101)
} else if (msg.what == 2023081101) {
if (dataBeans.size == 0) {
emptyView.show("抱歉,无法查询到相关记录", null)
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
index 4230e7a..1c61d14 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
@@ -2,6 +2,7 @@
import android.os.Handler
import android.os.Message
+import androidx.lifecycle.lifecycleScope
import com.casic.birmm.inspect.R
import com.casic.birmm.inspect.bean.InspectionLocalBean
import com.casic.birmm.inspect.single.view.InspectionRouteActivity
@@ -12,8 +13,12 @@
import com.pengxh.kt.lite.base.KotlinBaseFragment
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.utils.WeakReferenceHandler
+import com.pengxh.kt.lite.widget.dialog.AlertControlDialog
import kotlinx.android.synthetic.main.include_empty_view.*
import kotlinx.android.synthetic.main.single_fragment_query_inspect.*
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.withContext
class QueryInspectionFragment : KotlinBaseFragment(), Handler.Callback {
@@ -26,6 +31,7 @@
override fun handleMessage(msg: Message): Boolean {
if (msg.what == LocaleConstant.LOAD_INSPECTION) {
dataBeans = DataBaseManager.get.loadInspection()
+ weakReferenceHandler.sendEmptyMessage(2023081201)
} else if (msg.what == 2023081201) {
if (dataBeans.size == 0) {
emptyView.show("抱歉,无法查询到相关记录", null)
@@ -43,6 +49,36 @@
.setText(R.id.endTimeView, item.endTime)
.setText(R.id.endLocationView, item.endAddress)
.setText(R.id.distanceView, item.distance.toString())
+ .setOnClickListener(R.id.deleteView) {
+ AlertControlDialog.Builder()
+ .setContext(requireContext())
+ .setTitle("提示")
+ .setMessage("确定删除此条巡检记录吗?")
+ .setNegativeButton("取消")
+ .setPositiveButton("确定")
+ .setOnDialogButtonClickListener(object :
+ AlertControlDialog.OnDialogButtonClickListener {
+ override fun onCancelClick() {
+
+ }
+
+ override fun onConfirmClick() {
+ lifecycleScope.launch(Dispatchers.Main) {
+ withContext(Dispatchers.IO) {
+ DataBaseManager.get.deleteEventByInspectionId(
+ item.inspectionId
+ )
+ }
+ DataBaseManager.get.deleteInspectionById(item.inspectionId)
+ dataBeans.remove(item)
+ notifyItemRemoved(position)
+ notifyItemRangeChanged(
+ position, dataBeans.size - position
+ )
+ }
+ }
+ }).build().show()
+ }
}
}
inspectRecyclerView.adapter = inspectListAdapter
diff --git a/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt b/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt
index 7c2b6e0..f88a07c 100644
--- a/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt
@@ -224,6 +224,23 @@
}
/**
+ * 删除事件记录
+ * */
+ fun deleteEventByInspectionId(inspectionId: String) {
+ val result = taskEventDao.queryBuilder().where(
+ TaskEventLocalBeanDao.Properties.InspectionId.eq(inspectionId)
+ ).list()
+ if (!result.isNullOrEmpty()) {
+ result.forEach {
+ taskEventDao.delete(it)
+ }
+ //通知列表刷新
+ QueryEventFragment.weakReferenceHandler.sendEmptyMessage(LocaleConstant.LOAD_EVENT)
+ }
+ }
+
+
+ /**
* 删除全部事件数据
*/
fun deleteAllEvent() {
diff --git a/app/src/main/res/drawable/ic_delete.xml b/app/src/main/res/drawable/ic_delete.xml
new file mode 100644
index 0000000..f5e1824
--- /dev/null
+++ b/app/src/main/res/drawable/ic_delete.xml
@@ -0,0 +1,12 @@
+
+
+
+
diff --git a/app/src/main/res/layout/item_inspect_rv_l.xml b/app/src/main/res/layout/item_inspect_rv_l.xml
index f28fc1f..d42b8cf 100644
--- a/app/src/main/res/layout/item_inspect_rv_l.xml
+++ b/app/src/main/res/layout/item_inspect_rv_l.xml
@@ -8,14 +8,29 @@
android:orientation="vertical"
android:padding="@dimen/dp_5">
-
+ android:gravity="center_vertical"
+ android:orientation="horizontal">
+
+
+
+
+
+
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
index aacd4da..4280e7e 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/HomePageFragment.kt
@@ -554,16 +554,18 @@
homeView.settingsValueView.text = dataModel.alarmValue.toString()
homeView.maxValueView.text = dataModel.maxPotency.toString()
//判断是否需要报警
- val isOpenWarning =
- SaveKeyValues.getValue(LocaleConstant.SINGLE_OPEN_WARNING, false) as Boolean
- if (isOpenWarning) {
+ val isOpen = SaveKeyValues.getValue(
+ LocaleConstant.SINGLE_OPEN_WARNING, false
+ ) as Boolean
+ if (isOpen) {
if (dataModel.potency >= dataModel.alarmValue) {
//当前值大于设置值,需要报警
SoundPoolHelper.playSound(requireContext(), R.raw.alarm)
vibrator.vibrate(1000)
- val isAutoRecord =
- SaveKeyValues.getValue(LocaleConstant.SINGLE_AUTO_RECORD, false) as Boolean
- if (isAutoRecord) {
+ val isRecord = SaveKeyValues.getValue(
+ LocaleConstant.SINGLE_AUTO_RECORD, false
+ ) as Boolean
+ if (isRecord) {
//如果连续超过10个报警,自动生成报警事件
alarmCount++
if (alarmCount >= 10) {
@@ -583,6 +585,7 @@
return
}
isGeneratingTask = true
+ Log.d(kTag, "generateAlarmTask => 自动记录报警")
DataBaseManager.get.addEvent(
taskId = UUID.randomUUID().toString(),
@@ -596,9 +599,9 @@
images = "",
description = "自动报警记录"
)
- isGeneratingTask = false
- alarmCount = 0
"保存成功".show(requireContext())
+ alarmCount = 0
+ isGeneratingTask = false
}
/***以下是地图生命周期管理************************************************************************/
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
index d15a473..531cdad 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryEventFragment.kt
@@ -32,6 +32,7 @@
override fun handleMessage(msg: Message): Boolean {
if (msg.what == LocaleConstant.LOAD_EVENT) {
dataBeans = DataBaseManager.get.loadEvent()
+ weakReferenceHandler.sendEmptyMessage(2023081101)
} else if (msg.what == 2023081101) {
if (dataBeans.size == 0) {
emptyView.show("抱歉,无法查询到相关记录", null)
diff --git a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
index 4230e7a..1c61d14 100644
--- a/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/single/fragment/QueryInspectionFragment.kt
@@ -2,6 +2,7 @@
import android.os.Handler
import android.os.Message
+import androidx.lifecycle.lifecycleScope
import com.casic.birmm.inspect.R
import com.casic.birmm.inspect.bean.InspectionLocalBean
import com.casic.birmm.inspect.single.view.InspectionRouteActivity
@@ -12,8 +13,12 @@
import com.pengxh.kt.lite.base.KotlinBaseFragment
import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.utils.WeakReferenceHandler
+import com.pengxh.kt.lite.widget.dialog.AlertControlDialog
import kotlinx.android.synthetic.main.include_empty_view.*
import kotlinx.android.synthetic.main.single_fragment_query_inspect.*
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.withContext
class QueryInspectionFragment : KotlinBaseFragment(), Handler.Callback {
@@ -26,6 +31,7 @@
override fun handleMessage(msg: Message): Boolean {
if (msg.what == LocaleConstant.LOAD_INSPECTION) {
dataBeans = DataBaseManager.get.loadInspection()
+ weakReferenceHandler.sendEmptyMessage(2023081201)
} else if (msg.what == 2023081201) {
if (dataBeans.size == 0) {
emptyView.show("抱歉,无法查询到相关记录", null)
@@ -43,6 +49,36 @@
.setText(R.id.endTimeView, item.endTime)
.setText(R.id.endLocationView, item.endAddress)
.setText(R.id.distanceView, item.distance.toString())
+ .setOnClickListener(R.id.deleteView) {
+ AlertControlDialog.Builder()
+ .setContext(requireContext())
+ .setTitle("提示")
+ .setMessage("确定删除此条巡检记录吗?")
+ .setNegativeButton("取消")
+ .setPositiveButton("确定")
+ .setOnDialogButtonClickListener(object :
+ AlertControlDialog.OnDialogButtonClickListener {
+ override fun onCancelClick() {
+
+ }
+
+ override fun onConfirmClick() {
+ lifecycleScope.launch(Dispatchers.Main) {
+ withContext(Dispatchers.IO) {
+ DataBaseManager.get.deleteEventByInspectionId(
+ item.inspectionId
+ )
+ }
+ DataBaseManager.get.deleteInspectionById(item.inspectionId)
+ dataBeans.remove(item)
+ notifyItemRemoved(position)
+ notifyItemRangeChanged(
+ position, dataBeans.size - position
+ )
+ }
+ }
+ }).build().show()
+ }
}
}
inspectRecyclerView.adapter = inspectListAdapter
diff --git a/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt b/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt
index 7c2b6e0..f88a07c 100644
--- a/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt
+++ b/app/src/main/java/com/casic/birmm/inspect/utils/DataBaseManager.kt
@@ -224,6 +224,23 @@
}
/**
+ * 删除事件记录
+ * */
+ fun deleteEventByInspectionId(inspectionId: String) {
+ val result = taskEventDao.queryBuilder().where(
+ TaskEventLocalBeanDao.Properties.InspectionId.eq(inspectionId)
+ ).list()
+ if (!result.isNullOrEmpty()) {
+ result.forEach {
+ taskEventDao.delete(it)
+ }
+ //通知列表刷新
+ QueryEventFragment.weakReferenceHandler.sendEmptyMessage(LocaleConstant.LOAD_EVENT)
+ }
+ }
+
+
+ /**
* 删除全部事件数据
*/
fun deleteAllEvent() {
diff --git a/app/src/main/res/drawable/ic_delete.xml b/app/src/main/res/drawable/ic_delete.xml
new file mode 100644
index 0000000..f5e1824
--- /dev/null
+++ b/app/src/main/res/drawable/ic_delete.xml
@@ -0,0 +1,12 @@
+
+
+
+
diff --git a/app/src/main/res/layout/item_inspect_rv_l.xml b/app/src/main/res/layout/item_inspect_rv_l.xml
index f28fc1f..d42b8cf 100644
--- a/app/src/main/res/layout/item_inspect_rv_l.xml
+++ b/app/src/main/res/layout/item_inspect_rv_l.xml
@@ -8,14 +8,29 @@
android:orientation="vertical"
android:padding="@dimen/dp_5">
-
+ android:gravity="center_vertical"
+ android:orientation="horizontal">
+
+
+
+
+
\ No newline at end of file