diff --git a/src/components/Setting/components/History.vue b/src/components/Setting/components/History.vue
index 344c5c6..b862d7a 100644
--- a/src/components/Setting/components/History.vue
+++ b/src/components/Setting/components/History.vue
@@ -2,7 +2,14 @@
-
![]()
@@ -105,6 +110,7 @@
返回
+
@@ -114,18 +120,35 @@ import Down from '@/assets/img/arrow/down.png'
import Top from '@/assets/img/arrow/top.png'
import Right from '@/assets/img/arrow/right.png'
import Left from '@/assets/img/arrow/left.png'
-import { useHistoryStore, useWebSocketStore } from '@/store'
-import { getDetailInfoById } from '@/mock/command'
+import ClearRecordByKeysModal from 'cpns/dialogs/ClearRecordByKeysModal'
+import { useHistoryStore, useWebSocketStore, useSettingStore } from '@/store'
+import { getDetailInfoById, exportDisinfectionRecordByKeyListJSON } from '@/mock/command'
const showDetailVisible = ref(false)
const historyStore = useHistoryStore()
const webSocketStore = useWebSocketStore()
+const settingStore = useSettingStore()
+// 清除记录对话框
+const clearRecordByKeys = ref(null)
+// 选中的数据
+const checkedItems = ref([])
// 历史数据列表
const historyDataList = computed(() => {
return historyStore.historyDataList.sort((a, b) => b.localeCompare(a));
});
+// 条目操作
+function actionOperationExecute( action ) {
+ if ( 'export' === action ) {
+ settingStore.updateExportText('导出消毒记录中')
+ settingStore.updateExportLoading(true)
+ webSocketStore.sendCommandMsg(exportDisinfectionRecordByKeyListJSON(checkedItems.value));
+ } else if ( 'delete' === action ) {
+ clearRecordByKeys.value.showDialog();
+ }
+}
+
const topContainer = () => {
const ele = document.getElementById('set_device_container')
ele.scrollTop = ele.scrollTop - 100 < 100 ? 0 : ele.scrollTop - 100
@@ -165,7 +188,29 @@ const showDetailModal = item => {
})
}
-
+
diff --git a/src/main.js b/src/main.js
index 6c8267c..80c1db2 100644
--- a/src/main.js
+++ b/src/main.js
@@ -11,6 +11,10 @@ import {
NumberKeyboard,
Toast,
Overlay,
+ Checkbox,
+ CheckboxGroup,
+ DropdownMenu,
+ DropdownItem
} from 'vant'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
@@ -28,6 +32,10 @@ createApp(App)
.use(TimePicker)
.use(Field)
.use(Overlay)
+ .use(Checkbox)
+ .use(CheckboxGroup)
+ .use(DropdownMenu)
+ .use(DropdownItem)
.use(ElementPlus)
.use(Toast)
.use(store)
diff --git a/src/mock/command.js b/src/mock/command.js
index de2b1ea..fbb61bd 100644
--- a/src/mock/command.js
+++ b/src/mock/command.js
@@ -223,11 +223,24 @@ export const exportDisinfectionRecordJSON = {
messageId: 'exportDisinfectionRecord',
}
+export const exportDisinfectionRecordByKeyListJSON = ( keys ) => ({
+ command: 'exportDisinfectionRecord',
+ messageId: 'exportDisinfectionRecord',
+ keys,
+});
+
export const cleanDisinfectionRecordJSON = {
command: 'cleanDisinfectionRecord',
messageId: 'cleanDisinfectionRecord',
}
+export const cleanDisinfectionRecordByKeysJSON = ( keys ) => ({
+ command: 'cleanDisinfectionRecord',
+ messageId: 'cleanDisinfectionRecord',
+ keys,
+
+});
+
export const cleanUserBehaviorRecordJSON = {
command: 'cleanUserBehaviorRecord',
messageId: 'cleanUserBehaviorRecord',