13 changed files with 154 additions and 34 deletions
@ -0,0 +1,48 @@ |
|||
<template> |
|||
<el-table :data="data" :max-height="contentHeight" border class="mt-6" stripe style="width: 100%; margin-top: 0"> |
|||
<el-table-column align="center" label="设备ID" min-width="100" prop="deviceId" /> |
|||
<el-table-column align="center" label="起始时间" min-width="200"> |
|||
<template #default="scope"> |
|||
{{ dayjs(new Date(+scope.row.startTime)).format('YYYY-MM-DD HH:mm:ss') }} |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column align="center" label="截止时间" min-width="200"> |
|||
<template #default="scope"> |
|||
{{ dayjs(new Date(+scope.row.endTime)).format('YYYY-MM-DD HH:mm:ss') }} |
|||
</template> |
|||
</el-table-column> |
|||
|
|||
<el-table-column align="center" header-align="center" label="操作" min-width="100"> |
|||
<template #default="scope"> |
|||
<el-button :disabled="scope.row.disabled" plain size="small" type="success" @click="handlePass(scope.row)">补传 </el-button> |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
</template> |
|||
|
|||
<script setup> |
|||
import { defineProps, defineEmits, ref } from 'vue'; |
|||
import dayjs from 'dayjs'; |
|||
import { sendCommand } from 'apis'; |
|||
import { ElMessage } from 'element-plus'; |
|||
|
|||
defineProps({ data: Object }); |
|||
const emit = defineEmits(['on-success']); |
|||
|
|||
const contentHeight = ref(600); |
|||
|
|||
/** |
|||
* 发送补传指令 |
|||
* @param { Object } item |
|||
* @returns {Promise<void>} |
|||
*/ |
|||
async function handlePass(item) { |
|||
try { |
|||
await sendCommand({ ...item }); |
|||
ElMessage.success('发送成功'); |
|||
emit('on-success', item.uuid); |
|||
} catch (error) { |
|||
ElMessage.error(error.message || '发送补传指令失败'); |
|||
} |
|||
} |
|||
</script> |
Loading…
Reference in new issue