|
|
@ -58,12 +58,12 @@
|
|
|
|
<el-card shadow="never">
|
|
|
|
<el-card shadow="never">
|
|
|
|
<template #header>
|
|
|
|
<template #header>
|
|
|
|
<el-row :gutter="10" class="mb8">
|
|
|
|
<el-row :gutter="10" class="mb8">
|
|
|
|
<el-col :span="1.5">
|
|
|
|
<!-- <el-col :span="1.5">-->
|
|
|
|
<el-button type="primary" plain icon="Plus" @click="handleAdd" v-hasPermi="['dms:dmsRecordShutDown:add']">新增</el-button>
|
|
|
|
<!-- <el-button type="primary" plain icon="Plus" @click="handleAdd" v-hasPermi="['dms:dmsRecordShutDown:add']">新增</el-button>-->
|
|
|
|
</el-col>
|
|
|
|
<!-- </el-col>-->
|
|
|
|
<el-col :span="1.5">
|
|
|
|
<!-- <el-col :span="1.5">-->
|
|
|
|
<el-button type="success" plain icon="Edit" :disabled="single" @click="handleUpdate()" v-hasPermi="['dms:dmsRecordShutDown:edit']">修改</el-button>
|
|
|
|
<!-- <el-button type="success" plain icon="Edit" :disabled="single" @click="handleUpdate()" v-hasPermi="['dms:dmsRecordShutDown:edit']">修改</el-button>-->
|
|
|
|
</el-col>
|
|
|
|
<!-- </el-col>-->
|
|
|
|
<el-col :span="1.5">
|
|
|
|
<el-col :span="1.5">
|
|
|
|
<el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete()" v-hasPermi="['dms:dmsRecordShutDown:remove']">删除</el-button>
|
|
|
|
<el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete()" v-hasPermi="['dms:dmsRecordShutDown:remove']">删除</el-button>
|
|
|
|
</el-col>
|
|
|
|
</el-col>
|
|
|
@ -78,8 +78,8 @@
|
|
|
|
<el-table-column type="selection" width="55" align="center" />
|
|
|
|
<el-table-column type="selection" width="55" align="center" />
|
|
|
|
<el-table-column label="主键标识" align="center" prop="recordShutDownId" v-if="columns[0].visible"/>
|
|
|
|
<el-table-column label="主键标识" align="center" prop="recordShutDownId" v-if="columns[0].visible"/>
|
|
|
|
<el-table-column label="设备" align="center" prop="machineName" v-if="columns[2].visible"/>
|
|
|
|
<el-table-column label="设备" align="center" prop="machineName" v-if="columns[2].visible"/>
|
|
|
|
<el-table-column label="停机类型" align="center" prop="shutTypeId" v-if="columns[3].visible"/>
|
|
|
|
<el-table-column label="停机类型" align="center" prop="shutTypeName" v-if="columns[3].visible"/>
|
|
|
|
<el-table-column label="停机原因" align="center" prop="shutReasonId" v-if="columns[4].visible"/>
|
|
|
|
<el-table-column label="停机原因" align="center" prop="shutReasonName" v-if="columns[4].visible"/>
|
|
|
|
<el-table-column label="停机开始时间" align="center" prop="shutBeginTime" width="180" v-if="columns[5].visible">
|
|
|
|
<el-table-column label="停机开始时间" align="center" prop="shutBeginTime" width="180" v-if="columns[5].visible">
|
|
|
|
<template #default="scope">
|
|
|
|
<template #default="scope">
|
|
|
|
<span>{{ parseTime(scope.row.shutBeginTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
|
|
|
|
<span>{{ parseTime(scope.row.shutBeginTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
|
|
|
@ -90,8 +90,17 @@
|
|
|
|
<span>{{ parseTime(scope.row.shutEndTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
|
|
|
|
<span>{{ parseTime(scope.row.shutEndTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
|
|
|
|
</template>
|
|
|
|
</template>
|
|
|
|
</el-table-column>
|
|
|
|
</el-table-column>
|
|
|
|
<el-table-column label="停机时长(毫秒)" align="center" prop="shutTime" v-if="columns[7].visible"/>
|
|
|
|
<!-- <el-table-column label="停机时长(毫秒)" align="center" prop="shutTime" v-if="columns[7].visible"/>-->
|
|
|
|
<el-table-column label="停机标识" align="center" prop="downtimeFlag" v-if="columns[8].visible"/>
|
|
|
|
<el-table-column label="停机时长" align="center" prop="shutTime" v-if="columns[7].visible">
|
|
|
|
|
|
|
|
<template #default="scope">
|
|
|
|
|
|
|
|
<span>{{ formatDuration(scope.row.shutTime) }}</span>
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
<el-table-column label="停机标识" align="center" prop="downtimeFlag" v-if="columns[8].visible">
|
|
|
|
|
|
|
|
<template #default="scope">
|
|
|
|
|
|
|
|
<dict-tag :options="downtime_flag" :value="scope.row.downtimeFlag"/>
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
</el-table-column>
|
|
|
|
<el-table-column label="停机原因" align="center" prop="shutReason" v-if="columns[9].visible"/>
|
|
|
|
<el-table-column label="停机原因" align="center" prop="shutReason" v-if="columns[9].visible"/>
|
|
|
|
<el-table-column label="激活标识" align="center" prop="activeFlag" v-if="columns[10].visible">
|
|
|
|
<el-table-column label="激活标识" align="center" prop="activeFlag" v-if="columns[10].visible">
|
|
|
|
<template #default="scope">
|
|
|
|
<template #default="scope">
|
|
|
@ -173,7 +182,14 @@
|
|
|
|
<el-input v-model="form.shutTime" placeholder="请输入停机时长(毫秒)" />
|
|
|
|
<el-input v-model="form.shutTime" placeholder="请输入停机时长(毫秒)" />
|
|
|
|
</el-form-item>
|
|
|
|
</el-form-item>
|
|
|
|
<el-form-item label="停机标识" prop="downtimeFlag">
|
|
|
|
<el-form-item label="停机标识" prop="downtimeFlag">
|
|
|
|
<el-input v-model="form.downtimeFlag" placeholder="请输入停机标识" />
|
|
|
|
<!-- <el-input v-model="form.downtimeFlag" placeholder="请输入停机标识" />-->
|
|
|
|
|
|
|
|
<el-radio-group v-model="form.downtimeFlag">
|
|
|
|
|
|
|
|
<el-radio
|
|
|
|
|
|
|
|
v-for="dict in downtime_flag"
|
|
|
|
|
|
|
|
:key="dict.value"
|
|
|
|
|
|
|
|
:value="dict.value"
|
|
|
|
|
|
|
|
>{{dict.label}}</el-radio>
|
|
|
|
|
|
|
|
</el-radio-group>
|
|
|
|
</el-form-item>
|
|
|
|
</el-form-item>
|
|
|
|
<el-form-item label="激活标识" prop="activeFlag">
|
|
|
|
<el-form-item label="激活标识" prop="activeFlag">
|
|
|
|
<el-radio-group v-model="form.activeFlag">
|
|
|
|
<el-radio-group v-model="form.activeFlag">
|
|
|
@ -206,7 +222,7 @@ import {getDmsBaseShutTypeList} from "@/api/dms/dmsBaseShutType";
|
|
|
|
import {getDmsBaseShutReasonList} from "@/api/dms/dmsBaseShutReason";
|
|
|
|
import {getDmsBaseShutReasonList} from "@/api/dms/dmsBaseShutReason";
|
|
|
|
|
|
|
|
|
|
|
|
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
|
|
|
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
|
|
|
const { active_flag } = toRefs<any>(proxy?.useDict('active_flag'));
|
|
|
|
const { active_flag, downtime_flag } = toRefs<any>(proxy?.useDict('active_flag', 'downtime_flag'));
|
|
|
|
|
|
|
|
|
|
|
|
const dmsRecordShutDownList = ref<DmsRecordShutDownVO[]>([]);
|
|
|
|
const dmsRecordShutDownList = ref<DmsRecordShutDownVO[]>([]);
|
|
|
|
const buttonLoading = ref(false);
|
|
|
|
const buttonLoading = ref(false);
|
|
|
@ -231,7 +247,7 @@ const columns = ref<FieldOption[]>([
|
|
|
|
{ key: 1, label: `租户编号`, visible: false },
|
|
|
|
{ key: 1, label: `租户编号`, visible: false },
|
|
|
|
{ key: 2, label: `设备`, visible: true },
|
|
|
|
{ key: 2, label: `设备`, visible: true },
|
|
|
|
{ key: 3, label: `停机类型`, visible: true },
|
|
|
|
{ key: 3, label: `停机类型`, visible: true },
|
|
|
|
{ key: 4, label: `停机原因id`, visible: false },
|
|
|
|
{ key: 4, label: `停机原因`, visible: true },
|
|
|
|
{ key: 5, label: `停机开始时间`, visible: true },
|
|
|
|
{ key: 5, label: `停机开始时间`, visible: true },
|
|
|
|
{ key: 6, label: `停机结束时间`, visible: true },
|
|
|
|
{ key: 6, label: `停机结束时间`, visible: true },
|
|
|
|
{ key: 7, label: `停机时长(毫秒)`, visible: true },
|
|
|
|
{ key: 7, label: `停机时长(毫秒)`, visible: true },
|
|
|
@ -260,6 +276,7 @@ const initFormData: DmsRecordShutDownForm = {
|
|
|
|
remark: undefined,
|
|
|
|
remark: undefined,
|
|
|
|
machineName: undefined,
|
|
|
|
machineName: undefined,
|
|
|
|
shutTypeName: undefined,
|
|
|
|
shutTypeName: undefined,
|
|
|
|
|
|
|
|
shutReasonNameName: undefined,
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
const data = reactive<PageData<DmsRecordShutDownForm, DmsRecordShutDownQuery>>({
|
|
|
|
const data = reactive<PageData<DmsRecordShutDownForm, DmsRecordShutDownQuery>>({
|
|
|
@ -279,6 +296,7 @@ const data = reactive<PageData<DmsRecordShutDownForm, DmsRecordShutDownQuery>>({
|
|
|
|
activeFlag: undefined,
|
|
|
|
activeFlag: undefined,
|
|
|
|
machineName: undefined,
|
|
|
|
machineName: undefined,
|
|
|
|
shutTypeName: undefined,
|
|
|
|
shutTypeName: undefined,
|
|
|
|
|
|
|
|
shutReasonNameName: undefined,
|
|
|
|
params: {
|
|
|
|
params: {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
},
|
|
|
@ -413,6 +431,14 @@ const handleShutReasonChange = (shutReasonId: number) => {
|
|
|
|
form.value.shutTypeId = selectedReason?.shutTypeId || ''; // 获取停机类型
|
|
|
|
form.value.shutTypeId = selectedReason?.shutTypeId || ''; // 获取停机类型
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const formatDuration = (millis: number): string => {
|
|
|
|
|
|
|
|
if (!millis || millis <= 0) return '0秒'
|
|
|
|
|
|
|
|
const hours = Math.floor(millis / 3600000)
|
|
|
|
|
|
|
|
const minutes = Math.floor((millis % 3600000) / 60000)
|
|
|
|
|
|
|
|
const seconds = Math.floor((millis % 60000) / 1000)
|
|
|
|
|
|
|
|
return `${hours ? hours + '小时' : ''}${minutes ? minutes + '分' : ''}${seconds}秒`
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
onMounted(() => {
|
|
|
|
onMounted(() => {
|
|
|
|
getMachineOtions();
|
|
|
|
getMachineOtions();
|
|
|
|
getShutTypeOtions();
|
|
|
|
getShutTypeOtions();
|
|
|
|