feat(dms/dmsRecordShutDown): 增加自动计算停机时长功能,列表展示停机时长只显示到秒,不满一秒直接舍弃(比如说数据库存15.88只显示15秒)

- 在表单中添加计算停机时长的逻辑
- 监听停机开始时间和结束时间的变化,自动更新停机时长
- 优化了界面布局,注释掉了不必要的代码
master
zch 2 weeks ago
parent 1224661532
commit e71bc9a29c

@ -16,22 +16,22 @@
<el-form-item label="停机原因" prop="shutReasonId">
<el-input v-model="queryParams.shutReasonId" placeholder="请输入停机原因" clearable @keyup.enter="handleQuery" />
</el-form-item>-->
<el-form-item label="停机开始时间" prop="shutBeginTime" label-width="100px">
<!-- <el-form-item label="停机开始时间" prop="shutBeginTime" label-width="100px">
<el-date-picker clearable
v-model="queryParams.shutBeginTime"
type="date"
value-format="YYYY-MM-DD"
type="datetime"
value-format="YYYY-MM-DD HH:mm:ss"
placeholder="请选择停机开始时间"
/>
</el-form-item>
<el-form-item label="停机结束时间" prop="shutEndTime" label-width="100px">
</el-form-item> -->
<!-- <el-form-item label="停机结束时间" prop="shutEndTime" label-width="100px">
<el-date-picker clearable
v-model="queryParams.shutEndTime"
type="date"
value-format="YYYY-MM-DD"
type="datetime"
value-format="YYYY-MM-DD HH:mm:ss"
placeholder="请选择停机结束时间"
/>
</el-form-item>
</el-form-item> -->
<!-- <el-form-item label="停机时长(秒)" prop="shutTime">
<el-input v-model="queryParams.shutTime" placeholder="请输入停机时长(毫秒)" clearable @keyup.enter="handleQuery" />
</el-form-item>
@ -58,9 +58,9 @@
<el-card shadow="never">
<template #header>
<el-row :gutter="10" class="mb8">
<!-- <el-col :span="1.5">-->
<!-- <el-button type="primary" plain icon="Plus" @click="handleAdd" v-hasPermi="['dms:dmsRecordShutDown:add']"></el-button>-->
<!-- </el-col>-->
<el-col :span="1.5">
<el-button type="primary" plain icon="Plus" @click="handleAdd" v-hasPermi="['dms:dmsRecordShutDown:add']"></el-button>
</el-col>
<!-- <el-col :span="1.5">-->
<!-- <el-button type="success" plain icon="Edit" :disabled="single" @click="handleUpdate()" v-hasPermi="['dms:dmsRecordShutDown:edit']"></el-button>-->
<!-- </el-col>-->
@ -179,7 +179,7 @@
</el-date-picker>
</el-form-item>
<el-form-item label="停机时长(秒)" prop="shutTime">
<el-input v-model="form.shutTime" placeholder="请输入停机时长(秒)" />
<el-input v-model="form.shutTime" placeholder="自动计算" disabled />
</el-form-item>
<el-form-item label="停机标识" prop="downtimeFlag">
<!-- <el-input v-model="form.downtimeFlag" placeholder="请输入停机标识" />-->
@ -439,6 +439,30 @@ const formatDuration = (seconds: number): string => {
return `${hours ? hours + '小时' : ''}${minutes ? minutes + '分' : ''}${remainingSeconds}`
}
//
const calculateShutTime = () => {
if (form.value.shutBeginTime && form.value.shutEndTime) {
const begin = new Date(form.value.shutBeginTime).getTime()
const end = new Date(form.value.shutEndTime).getTime()
if (end > begin) {
form.value.shutTime = Math.floor((end - begin) / 1000)
} else {
form.value.shutTime = 0
}
} else {
form.value.shutTime = 0
}
}
//
watch(
() => [form.value.shutBeginTime, form.value.shutEndTime],
() => {
calculateShutTime()
},
{ immediate: true }
)
onMounted(() => {
getMachineOtions();
getShutTypeOtions();

Loading…
Cancel
Save