设备控制日志·
parent
5c79fc0740
commit
286b26076a
|
|
@ -1,108 +1,211 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="180px">
|
||||||
<el-form-item>
|
|
||||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
<el-row>
|
||||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
<el-row :gutter="20">
|
||||||
</el-form-item>
|
<el-col :span="6"><el-form-item label="大棚名称" prop="agriName">
|
||||||
|
<el-input
|
||||||
|
id="agriName" v-model="queryParams.agriName"
|
||||||
|
placeholder="请输入大棚名称"
|
||||||
|
clearable
|
||||||
|
@keyup.enter.native="handleQuery"
|
||||||
|
/>
|
||||||
|
</el-form-item></el-col>
|
||||||
|
<el-col :span="6"><el-form-item label="imei" prop="imei">
|
||||||
|
<el-input
|
||||||
|
id="imei" v-model="queryParams.imei"
|
||||||
|
placeholder="请输入imei"
|
||||||
|
clearable
|
||||||
|
@keyup.enter.native="handleQuery"
|
||||||
|
/>
|
||||||
|
</el-form-item></el-col>
|
||||||
|
<el-col :span="6"><el-form-item label="功能名称" prop="funcCode">
|
||||||
|
<el-select id="funcCode" v-model="queryParams.funcCode" placeholder="请选择功能名称" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="dict in dict.type.sys_func_code"
|
||||||
|
:key="dict.value"
|
||||||
|
:label="dict.label"
|
||||||
|
:value="dict.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item></el-col>
|
||||||
|
<el-col :span="6"><el-form-item label="操作类型" prop="opType">
|
||||||
|
<el-select id="opType" v-model="queryParams.opType" placeholder="请选择操作类型" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="dict in dict.type.sys_status_list"
|
||||||
|
:key="dict.value"
|
||||||
|
:label="dict.label"
|
||||||
|
:value="dict.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item></el-col>
|
||||||
|
|
||||||
|
</el-row>
|
||||||
|
|
||||||
|
</el-row>
|
||||||
|
|
||||||
|
<el-row :gutter="20">
|
||||||
|
<el-col :span="6"> <el-form-item label="操作来源" prop="opSource">
|
||||||
|
<el-select id="opSource" v-model="queryParams.opSource" placeholder="请选择操作来源" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="dict in dict.type.sys_op_source"
|
||||||
|
:key="dict.value"
|
||||||
|
:label="dict.label"
|
||||||
|
:value="dict.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item></el-col>
|
||||||
|
<el-col :span="6"><el-form-item label="是否成功获取锁" prop="lockAcquired">
|
||||||
|
<el-select id="lockAcquired" v-model="queryParams.lockAcquired" placeholder="请选择是否成功获取锁" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="dict in dict.type.sys_exec_result"
|
||||||
|
:key="dict.value"
|
||||||
|
:label="dict.label"
|
||||||
|
:value="dict.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item></el-col>
|
||||||
|
<el-col :span="6"> <el-form-item label="是否收到设备回执" prop="ackReceived">
|
||||||
|
<el-select id="ackReceived" v-model="queryParams.ackReceived" placeholder="请选择是否收到设备回执" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="dict in dict.type.sys_result"
|
||||||
|
:key="dict.value"
|
||||||
|
:label="dict.label"
|
||||||
|
:value="dict.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item></el-col>
|
||||||
|
<el-col :span="6"><el-form-item label="MQTT发布成功" prop="ackSuc">
|
||||||
|
<el-select id="ackSuc" v-model="queryParams.ackSuc" placeholder="请选择MQTT发布成功" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="dict in dict.type.sys_exec_result"
|
||||||
|
:key="dict.value"
|
||||||
|
:label="dict.label"
|
||||||
|
:value="dict.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item></el-col>
|
||||||
|
</el-row>
|
||||||
|
|
||||||
|
|
||||||
|
<el-row :gutter="20">
|
||||||
|
<el-col :span="6"> <el-form-item label="设备控制锁是否释放成功" prop="isLockSuc">
|
||||||
|
<el-select id="isLockSuc" v-model="queryParams.isLockSuc" placeholder="请选择设备控制锁是否释放成功" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="dict in dict.type.sys_result"
|
||||||
|
:key="dict.value"
|
||||||
|
:label="dict.label"
|
||||||
|
:value="dict.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6"> <el-form-item label="是否触发定时任务" prop="isTask">
|
||||||
|
<el-select id="isTask" v-model="queryParams.isTask" placeholder="请选择是否触发定时任务" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="dict in dict.type.sys_result"
|
||||||
|
:key="dict.value"
|
||||||
|
:label="dict.label"
|
||||||
|
:value="dict.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item></el-col>
|
||||||
|
<el-col :span="6"><el-form-item label="最终执行结果" prop="execResult">
|
||||||
|
<el-select id="execResult" v-model="queryParams.execResult" placeholder="请选择最终执行结果" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="dict in dict.type.sys_exec_result"
|
||||||
|
:key="dict.value"
|
||||||
|
:label="dict.label"
|
||||||
|
:value="dict.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item></el-col>
|
||||||
|
<el-col :span="6"> <el-form-item>
|
||||||
|
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||||
|
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||||
|
<el-button
|
||||||
|
type="warning"
|
||||||
|
plain
|
||||||
|
icon="el-icon-download"
|
||||||
|
size="mini"
|
||||||
|
@click="handleExport"
|
||||||
|
v-hasPermi="['control:controllog:export']"
|
||||||
|
>导出</el-button>
|
||||||
|
</el-form-item></el-col>
|
||||||
|
</el-row>
|
||||||
|
|
||||||
|
|
||||||
</el-form>
|
</el-form>
|
||||||
|
|
||||||
<el-row :gutter="10" class="mb8">
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
plain
|
|
||||||
icon="el-icon-plus"
|
|
||||||
size="mini"
|
|
||||||
@click="handleAdd"
|
|
||||||
v-hasPermi="['control:controllog:add']"
|
|
||||||
>新增</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button
|
|
||||||
type="success"
|
|
||||||
plain
|
|
||||||
icon="el-icon-edit"
|
|
||||||
size="mini"
|
|
||||||
:disabled="single"
|
|
||||||
@click="handleUpdate"
|
|
||||||
v-hasPermi="['control:controllog:edit']"
|
|
||||||
>修改</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button
|
|
||||||
type="danger"
|
|
||||||
plain
|
|
||||||
icon="el-icon-delete"
|
|
||||||
size="mini"
|
|
||||||
:disabled="multiple"
|
|
||||||
@click="handleDelete"
|
|
||||||
v-hasPermi="['control:controllog:remove']"
|
|
||||||
>删除</el-button>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button
|
|
||||||
type="warning"
|
|
||||||
plain
|
|
||||||
icon="el-icon-download"
|
|
||||||
size="mini"
|
|
||||||
@click="handleExport"
|
|
||||||
v-hasPermi="['control:controllog:export']"
|
|
||||||
>导出</el-button>
|
|
||||||
</el-col>
|
|
||||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
<el-table v-loading="loading" border :data="controllogList" @selection-change="handleSelectionChange">
|
<el-table v-loading="loading" border :data="controllogList" @selection-change="handleSelectionChange">
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
<el-table-column label="主键ID" align="center" prop="id" />
|
<el-table-column width="180" show-overflow-tooltip label="主键ID" align="center" prop="id" />
|
||||||
<el-table-column label="大棚名称" align="center" prop="agriName" />
|
<el-table-column width="100" show-overflow-tooltip label="大棚名称" align="center" prop="agriName" />
|
||||||
<el-table-column label="imei" align="center" prop="imei" />
|
<el-table-column width="180" show-overflow-tooltip label="imei" align="center" prop="imei" />
|
||||||
<el-table-column label="功能名称" align="center" prop="funcName" />
|
<el-table-column width="100" show-overflow-tooltip label="功能名称" align="center" prop="funcCode">
|
||||||
<el-table-column label="功能码" align="center" prop="funcCode" />
|
|
||||||
<el-table-column label="操作类型" align="center" prop="opType" />
|
|
||||||
<el-table-column label="操作来源" align="center" prop="opSource" />
|
|
||||||
<el-table-column label="指令" align="center" prop="payload" />
|
|
||||||
<el-table-column label="设备控制lock" align="center" prop="lockKey" />
|
|
||||||
<el-table-column label="是否成功获取锁" align="center" prop="lockAcquired" />
|
|
||||||
<el-table-column label="锁持有者" align="center" prop="lockHolder" />
|
|
||||||
<el-table-column label="当前任务队列情况" align="center" prop="taskStatus" />
|
|
||||||
<el-table-column label="是否收到设备回执" align="center" prop="ackReceived" />
|
|
||||||
<el-table-column label="设备控制是否成功" align="center" prop="ackSuc" />
|
|
||||||
<el-table-column label="设备控制锁是否释放成功" align="center" prop="isLockSuc" />
|
|
||||||
<el-table-column label="是否触发定时任务" align="center" prop="isTask" />
|
|
||||||
<el-table-column label="未触发原因" align="center" prop="noTaskReason" />
|
|
||||||
<el-table-column label="设备回执" align="center" prop="ack" />
|
|
||||||
<el-table-column label="自动关任务最终执行结果" align="center" prop="execResult" />
|
|
||||||
<el-table-column label="未执行原因" align="center" prop="skipReason" />
|
|
||||||
<el-table-column label="触发任务ID" align="center" prop="triggerTaskId" />
|
|
||||||
<el-table-column label="执行前读取的状态快照" align="center" prop="latestState" />
|
|
||||||
<el-table-column label="操作人" align="center" prop="createBy" />
|
|
||||||
<el-table-column label="操作时间" align="center" prop="createTime" width="180">
|
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span>
|
<dict-tag :options="dict.type.sys_func_code" :value="scope.row.funcCode"/>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
<el-table-column show-overflow-tooltip label="操作类型" align="center" prop="opType">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button
|
<dict-tag :options="dict.type.sys_status_list" :value="scope.row.opType"/>
|
||||||
size="mini"
|
</template>
|
||||||
type="text"
|
</el-table-column>
|
||||||
icon="el-icon-edit"
|
<el-table-column width="100" show-overflow-tooltip label="操作来源" align="center" prop="opSource">
|
||||||
@click="handleUpdate(scope.row)"
|
<template slot-scope="scope">
|
||||||
v-hasPermi="['control:controllog:edit']"
|
<dict-tag :options="dict.type.sys_op_source" :value="scope.row.opSource"/>
|
||||||
>修改</el-button>
|
</template>
|
||||||
<el-button
|
</el-table-column>
|
||||||
size="mini"
|
<el-table-column width="120" show-overflow-tooltip label="payload" align="center" prop="payload" />
|
||||||
type="text"
|
<el-table-column show-overflow-tooltip label="是否成功获取锁" align="center" prop="lockAcquired">
|
||||||
icon="el-icon-delete"
|
<template slot-scope="scope">
|
||||||
@click="handleDelete(scope.row)"
|
<dict-tag :options="dict.type.sys_exec_result" :value="scope.row.lockAcquired"/>
|
||||||
v-hasPermi="['control:controllog:remove']"
|
</template>
|
||||||
>删除</el-button>
|
</el-table-column>
|
||||||
|
<el-table-column width="160" show-overflow-tooltip label="锁持有者" align="center" prop="lockHolder" />
|
||||||
|
<el-table-column show-overflow-tooltip label="当前任务队列情况" align="center" prop="taskStatus" />
|
||||||
|
<el-table-column show-overflow-tooltip label="是否收到设备回执" align="center" prop="ackReceived">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<dict-tag :options="dict.type.sys_result" :value="scope.row.ackReceived"/>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column show-overflow-tooltip label="MQTT发布是否成功" align="center" prop="ackSuc">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<dict-tag :options="dict.type.sys_exec_result" :value="scope.row.ackSuc"/>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column show-overflow-tooltip label="设备控制锁是否释放成功" align="center" prop="isLockSuc">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<dict-tag :options="dict.type.sys_result" :value="scope.row.isLockSuc"/>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column show-overflow-tooltip label="是否触发定时任务" align="center" prop="isTask">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<dict-tag :options="dict.type.sys_result" :value="scope.row.isTask"/>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column width="120" show-overflow-tooltip label="限位时间" align="center" prop="runTime" />
|
||||||
|
<el-table-column width="160" show-overflow-tooltip label="未触发原因" align="center" prop="noTaskReason" />
|
||||||
|
<el-table-column width="180" show-overflow-tooltip label="完整回执" align="center" prop="ack" />
|
||||||
|
<el-table-column show-overflow-tooltip label="最终执行结果" align="center" prop="execResult">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<dict-tag :options="dict.type.sys_exec_result" :value="scope.row.execResult"/>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column show-overflow-tooltip label="未执行/跳过原因" align="center" prop="skipReason" />
|
||||||
|
<el-table-column show-overflow-tooltip label="device:latest 状态快照" align="center" prop="latestState" />
|
||||||
|
<el-table-column show-overflow-tooltip label="备注" align="center" prop="remark" />
|
||||||
|
<el-table-column width="100" show-overflow-tooltip label="操作人" align="center" prop="createBy" />
|
||||||
|
<el-table-column width="180" show-overflow-tooltip label="操作时间" align="center" prop="createTime" >
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{m}:{s}') }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination
|
<pagination
|
||||||
v-show="total>0"
|
v-show="total>0"
|
||||||
:total="total"
|
:total="total"
|
||||||
|
|
@ -110,24 +213,15 @@
|
||||||
:limit.sync="queryParams.pageSize"
|
:limit.sync="queryParams.pageSize"
|
||||||
@pagination="getList"
|
@pagination="getList"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<!-- 添加或修改设备控制操作日志对话框 -->
|
|
||||||
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
|
||||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
||||||
</el-form>
|
|
||||||
<div slot="footer" class="dialog-footer">
|
|
||||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
|
||||||
<el-button @click="cancel">取 消</el-button>
|
|
||||||
</div>
|
|
||||||
</el-dialog>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { listControllog, getControllog, delControllog, addControllog, updateControllog } from "@/api/control/controllog"
|
import { listControllog } from "@/api/control/controllog"
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "Controllog",
|
name: "Controllog",
|
||||||
|
dicts: ['sys_exec_result', 'sys_func_code', 'sys_result', 'sys_op_source', 'sys_status_list'],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
// 遮罩层
|
// 遮罩层
|
||||||
|
|
@ -152,6 +246,17 @@ export default {
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
|
agriName: null,
|
||||||
|
imei: null,
|
||||||
|
funcCode: null,
|
||||||
|
opType: null,
|
||||||
|
opSource: null,
|
||||||
|
lockAcquired: null,
|
||||||
|
ackReceived: null,
|
||||||
|
ackSuc: null,
|
||||||
|
isLockSuc: null,
|
||||||
|
isTask: null,
|
||||||
|
execResult: null,
|
||||||
},
|
},
|
||||||
// 表单参数
|
// 表单参数
|
||||||
form: {},
|
form: {},
|
||||||
|
|
@ -184,12 +289,10 @@ export default {
|
||||||
id: null,
|
id: null,
|
||||||
agriName: null,
|
agriName: null,
|
||||||
imei: null,
|
imei: null,
|
||||||
funcName: null,
|
|
||||||
funcCode: null,
|
funcCode: null,
|
||||||
opType: null,
|
opType: null,
|
||||||
opSource: null,
|
opSource: null,
|
||||||
payload: null,
|
payload: null,
|
||||||
lockKey: null,
|
|
||||||
lockAcquired: null,
|
lockAcquired: null,
|
||||||
lockHolder: null,
|
lockHolder: null,
|
||||||
taskStatus: null,
|
taskStatus: null,
|
||||||
|
|
@ -197,11 +300,11 @@ export default {
|
||||||
ackSuc: null,
|
ackSuc: null,
|
||||||
isLockSuc: null,
|
isLockSuc: null,
|
||||||
isTask: null,
|
isTask: null,
|
||||||
|
runTime: null,
|
||||||
noTaskReason: null,
|
noTaskReason: null,
|
||||||
ack: null,
|
ack: null,
|
||||||
execResult: null,
|
execResult: null,
|
||||||
skipReason: null,
|
skipReason: null,
|
||||||
triggerTaskId: null,
|
|
||||||
latestState: null,
|
latestState: null,
|
||||||
remark: null,
|
remark: null,
|
||||||
version: null,
|
version: null,
|
||||||
|
|
@ -228,56 +331,6 @@ export default {
|
||||||
this.single = selection.length!==1
|
this.single = selection.length!==1
|
||||||
this.multiple = !selection.length
|
this.multiple = !selection.length
|
||||||
},
|
},
|
||||||
/** 新增按钮操作 */
|
|
||||||
handleAdd() {
|
|
||||||
this.reset()
|
|
||||||
this.open = true
|
|
||||||
this.title = "添加设备控制操作日志"
|
|
||||||
},
|
|
||||||
/** 修改按钮操作 */
|
|
||||||
handleUpdate(row) {
|
|
||||||
this.reset()
|
|
||||||
const id = row.id || this.ids
|
|
||||||
getControllog(id).then(response => {
|
|
||||||
this.form = response.data
|
|
||||||
this.open = true
|
|
||||||
this.title = "修改设备控制操作日志"
|
|
||||||
})
|
|
||||||
},
|
|
||||||
/** 提交按钮 */
|
|
||||||
submitForm() {
|
|
||||||
this.$refs["form"].validate(valid => {
|
|
||||||
if (valid) {
|
|
||||||
if (this.form.id != null) {
|
|
||||||
updateControllog(this.form).then(response => {
|
|
||||||
this.$modal.msgSuccess("修改成功")
|
|
||||||
this.open = false
|
|
||||||
this.getList()
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
addControllog(this.form).then(response => {
|
|
||||||
if (response.code===200) {
|
|
||||||
this.$modal.msgSuccess("新增成功")
|
|
||||||
} else {
|
|
||||||
this.$modal.msgError("新增失败")
|
|
||||||
}
|
|
||||||
this.open = false
|
|
||||||
this.getList()
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
/** 删除按钮操作 */
|
|
||||||
handleDelete(row) {
|
|
||||||
const ids = row.id || this.ids
|
|
||||||
this.$modal.confirm('是否确认删除设备控制操作日志编号为"' + ids + '"的数据项?').then(function() {
|
|
||||||
return delControllog(ids)
|
|
||||||
}).then(() => {
|
|
||||||
this.getList()
|
|
||||||
this.$modal.msgSuccess("删除成功")
|
|
||||||
}).catch(() => {})
|
|
||||||
},
|
|
||||||
/** 导出按钮操作 */
|
/** 导出按钮操作 */
|
||||||
handleExport() {
|
handleExport() {
|
||||||
this.download('control/controllog/export', {
|
this.download('control/controllog/export', {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue