锐能需求改动
This commit is contained in:
19
src/api/fault/encrypt.js
Normal file
19
src/api/fault/encrypt.js
Normal file
@ -0,0 +1,19 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 获取故障编码列表
|
||||
export function list(params) {
|
||||
return request({
|
||||
url: '/system/fault/list',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
}
|
||||
|
||||
// 获取故障编码下拉
|
||||
export function select(params) {
|
||||
return request({
|
||||
url: '/system/fault/select',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
}
|
@ -1,47 +0,0 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 获取电池故障编码列表
|
||||
export function faultBatteryList(params) {
|
||||
return request({
|
||||
url: '/system/fault/battery',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
}
|
||||
|
||||
// 获取BMS故障代码列表
|
||||
export function faultBmsList(params) {
|
||||
return request({
|
||||
url: '/system/fault/bms',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
}
|
||||
|
||||
// 获取BMS硬件故障列表
|
||||
export function faultHardwareList(params) {
|
||||
return request({
|
||||
url: '/system/fault/hardware',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
}
|
||||
|
||||
// 获取PACK系统故障列表
|
||||
export function faultPackList(params) {
|
||||
return request({
|
||||
url: '/system/fault/pack',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
}
|
||||
|
||||
// 获取信号量故障列表
|
||||
export function faultSignalList(params) {
|
||||
return request({
|
||||
url: '/system/fault/signal',
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
}
|
||||
|
@ -13,7 +13,6 @@ export function productNodeList (params) {
|
||||
* 查询产品节点详细
|
||||
* @param { Object } params
|
||||
*/
|
||||
|
||||
export function productNodeInfo (nodeId) {
|
||||
return request({
|
||||
url: '/system/product/node/' + nodeId,
|
||||
|
@ -19,7 +19,7 @@ import './permission' // permission control
|
||||
import { getDicts } from "@/api/system/dict/data";
|
||||
import { getConfigKey } from "@/api/system/config";
|
||||
import { parseTime, resetForm, addDateRange, selectDictLabel, selectDictLabels, download, handleTree } from "@/utils/ruoyi";
|
||||
import { formatDate } from "@/utils";
|
||||
import { formatDate, convertToChinaNum } from "@/utils";
|
||||
|
||||
import Pagination from "@/components/Pagination";
|
||||
//自定义表格工具扩展
|
||||
@ -72,6 +72,13 @@ Vue.config.productionTip = false
|
||||
Vue.filter('formatDate', function (value) {
|
||||
return formatDate(value); // 这是时间戳转时间
|
||||
});
|
||||
// 数字转汉字
|
||||
Vue.filter('toChinaNum', function (value) {
|
||||
return convertToChinaNum(value);
|
||||
});
|
||||
Vue.filter('isToChina', function (value) {
|
||||
return {'1': '是', '2': '否'}[value];
|
||||
});
|
||||
|
||||
new Vue({
|
||||
el: '#app',
|
||||
|
@ -388,3 +388,34 @@ export function isNumberStr(str) {
|
||||
return /^[+-]?(0|([1-9]\d*))(\.\d+)?$/g.test(str)
|
||||
}
|
||||
|
||||
//将数字(整数)转为汉字,从零到一亿亿,需要小数的可自行截取小数点后面的数字直接替换对应arr1的读法就行了
|
||||
export function convertToChinaNum(num) {
|
||||
var arr1 = new Array('零', '一', '二', '三', '四', '五', '六', '七', '八', '九');
|
||||
var arr2 = new Array('', '十', '百', '千', '万', '十', '百', '千', '亿', '十', '百', '千','万', '十', '百', '千','亿');//可继续追加更高位转换值
|
||||
if(!num || isNaN(num)){
|
||||
return "零";
|
||||
}
|
||||
var english = num.toString().split("")
|
||||
var result = "";
|
||||
for (var i = 0; i < english.length; i++) {
|
||||
var des_i = english.length - 1 - i;//倒序排列设值
|
||||
result = arr2[i] + result;
|
||||
var arr1_index = english[des_i];
|
||||
result = arr1[arr1_index] + result;
|
||||
}
|
||||
//将【零千、零百】换成【零】 【十零】换成【十】
|
||||
result = result.replace(/零(千|百|十)/g, '零').replace(/十零/g, '十');
|
||||
//合并中间多个零为一个零
|
||||
result = result.replace(/零+/g, '零');
|
||||
//将【零亿】换成【亿】【零万】换成【万】
|
||||
result = result.replace(/零亿/g, '亿').replace(/零万/g, '万');
|
||||
//将【亿万】换成【亿】
|
||||
result = result.replace(/亿万/g, '亿');
|
||||
//移除末尾的零
|
||||
result = result.replace(/零+$/, '')
|
||||
//将【零一十】换成【零十】
|
||||
//result = result.replace(/零一十/g, '零十');//貌似正规读法是零一十
|
||||
//将【一十】换成【十】
|
||||
result = result.replace(/^一十/g, '十');
|
||||
return result;
|
||||
}
|
@ -3,81 +3,38 @@
|
||||
<el-row>
|
||||
<!-- 地区 -->
|
||||
<el-col :span="4">
|
||||
<region
|
||||
@selectdRegionCode="selectdRegionCode"
|
||||
:currentNodeKey.sync="queryParams.provinceCode"
|
||||
></region>
|
||||
<region @selectdRegionCode="selectdRegionCode" :currentNodeKey.sync="queryParams.provinceCode"></region>
|
||||
</el-col>
|
||||
<!-- form表单 -->
|
||||
<el-col :span="20">
|
||||
<el-form
|
||||
:model="queryParams"
|
||||
:inline="true"
|
||||
ref="queryForm"
|
||||
v-show="showSearch"
|
||||
label-width="68px"
|
||||
>
|
||||
<el-form size="mini" :model="queryParams" :inline="true" ref="queryForm" v-show="showSearch" label-width="68px">
|
||||
<!-- 第一行 -->
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="告警名称">
|
||||
<el-input v-model="queryParams.warningName" placeholder="请输入告警名称" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="告警等级">
|
||||
<el-select
|
||||
v-model="queryParams.deviceType"
|
||||
clearable
|
||||
placeholder="请输入告警等级"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in signalLevelList"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
>
|
||||
<el-select v-model="queryParams.warningLevel" clearable placeholder="请输入告警等级">
|
||||
<el-option v-for="item in signalLevelList" :key="item.value" :label="item.label" :value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="告警名称">
|
||||
<el-input
|
||||
v-model="queryParams.deviceName"
|
||||
placeholder="请输入告警名称"
|
||||
clearable
|
||||
size="small"
|
||||
style="width: 240px"
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="产品名称">
|
||||
<el-select
|
||||
v-model="queryParams.deviceType"
|
||||
clearable
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in signalLevelList"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
>
|
||||
<el-select v-model="queryParams.deviceType" clearable placeholder="请选择">
|
||||
<el-option v-for="item in signalLevelList" :key="item.value" :label="item.label" :value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="所属客户">
|
||||
<el-select
|
||||
v-model="queryParams.deviceType"
|
||||
clearable
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in signalLevelList"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
>
|
||||
<el-select v-model="queryParams.deviceType" clearable placeholder="请选择">
|
||||
<el-option v-for="item in signalLevelList" :key="item.value" :label="item.label" :value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
@ -87,55 +44,25 @@
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="所属项目">
|
||||
<el-select
|
||||
v-model="queryParams.deviceType"
|
||||
clearable
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in signalLevelList"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
>
|
||||
<el-select v-model="queryParams.deviceType" clearable placeholder="请选择">
|
||||
<el-option v-for="item in signalLevelList" :key="item.value" :label="item.label" :value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="站址名称">
|
||||
<el-input
|
||||
v-model="queryParams.deviceName"
|
||||
placeholder="请输入站址名称"
|
||||
clearable
|
||||
size="small"
|
||||
style="width: 240px"
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
<el-input v-model="queryParams.deviceName" placeholder="请输入站址名称" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="设备SN">
|
||||
<el-input
|
||||
v-model="queryParams.deviceSn"
|
||||
placeholder="请输入设备SN"
|
||||
clearable
|
||||
size="small"
|
||||
style="width: 240px"
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
<el-input v-model="queryParams.deviceSn" placeholder="请输入设备SN" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="信号量ID">
|
||||
<el-input
|
||||
v-model="queryParams.productId"
|
||||
placeholder="请输入信号量ID"
|
||||
clearable
|
||||
size="small"
|
||||
style="width: 240px"
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
<el-input v-model="queryParams.productId" placeholder="请输入信号量ID" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -143,157 +70,58 @@
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="告警次数">
|
||||
<el-input
|
||||
v-model="queryParams.deviceName"
|
||||
placeholder="请输入告警次数"
|
||||
clearable
|
||||
size="small"
|
||||
style="width: 240px"
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
<el-input v-model="queryParams.deviceName" placeholder="请输入告警次数" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item>
|
||||
<el-date-picker
|
||||
v-model="dateRange"
|
||||
size="small"
|
||||
style="width: 240px"
|
||||
value-format="yyyy-MM-dd"
|
||||
type="daterange"
|
||||
range-separator="-"
|
||||
start-placeholder="告警发生时间"
|
||||
end-placeholder="结束时间"
|
||||
></el-date-picker>
|
||||
<el-form-item label="时间范围">
|
||||
<el-date-picker v-model="dateRange" value-format="yyyy-MM-dd" type="daterange" range-separator="-"
|
||||
start-placeholder="告警发生时间" end-placeholder="结束时间"></el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item>
|
||||
<el-button
|
||||
type="cyan"
|
||||
icon="el-icon-search"
|
||||
size="mini"
|
||||
@click="handleQuery"
|
||||
>
|
||||
<el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">
|
||||
查询
|
||||
</el-button>
|
||||
<el-button
|
||||
icon="el-icon-refresh"
|
||||
size="mini"
|
||||
@click="resetQuery"
|
||||
>重置</el-button
|
||||
>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
<el-row class="mb8">
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
<!-- 表格区域 -->
|
||||
<el-table v-loading="loading" :data="tableData" style="width: 100%">
|
||||
<el-table-column
|
||||
prop="proName"
|
||||
align="center"
|
||||
label="省份"
|
||||
min-width="80"
|
||||
>
|
||||
<el-table-column prop="proName" align="center" label="省份" min-width="80">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="cityName"
|
||||
align="center"
|
||||
label="市"
|
||||
min-width="80"
|
||||
>
|
||||
<el-table-column prop="cityName" align="center" label="市" min-width="80">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="disName"
|
||||
align="center"
|
||||
label="区"
|
||||
min-width="80"
|
||||
>
|
||||
<el-table-column prop="disName" align="center" label="区" min-width="80">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="productName"
|
||||
label="产品名称"
|
||||
align="center"
|
||||
min-width="100"
|
||||
>
|
||||
<el-table-column prop="productName" label="产品名称" align="center" min-width="100">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="nikeName"
|
||||
align="center"
|
||||
label="所属客户"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="projectName"
|
||||
align="center"
|
||||
label="所属项目"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="warningName"
|
||||
align="center"
|
||||
label="告警名称"
|
||||
min-width="150"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="warningLevel"
|
||||
align="center"
|
||||
label="告警等级"
|
||||
min-width="150"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="workOrderId"
|
||||
align="center"
|
||||
label="工单编号"
|
||||
min-width="150"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="signalCode"
|
||||
align="center"
|
||||
label="信号量ID"
|
||||
min-width="150"
|
||||
></el-table-column>
|
||||
<el-table-column prop="nikeName" align="center" label="所属客户"></el-table-column>
|
||||
<el-table-column prop="projectName" align="center" label="所属项目"></el-table-column>
|
||||
<el-table-column prop="warningName" align="center" label="告警名称" min-width="150"></el-table-column>
|
||||
<el-table-column prop="warningLevel" align="center" label="告警等级" min-width="150"></el-table-column>
|
||||
<el-table-column prop="workOrderId" align="center" label="工单编号" min-width="150"></el-table-column>
|
||||
<el-table-column prop="signalCode" align="center" label="信号量ID" min-width="150"></el-table-column>
|
||||
<el-table-column align="center" label="告警发生时间" min-width="150">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.warningTime | formatDate }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="warningDetails"
|
||||
align="center"
|
||||
label="告警详情"
|
||||
min-width="150"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
label="站址名称"
|
||||
min-width="150"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="deviceName"
|
||||
align="center"
|
||||
label="设备名称"
|
||||
min-width="150"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="deviceSn"
|
||||
align="center"
|
||||
label="设备SN"
|
||||
min-width="150"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="status"
|
||||
label="运营状态"
|
||||
align="center"
|
||||
min-width="250"
|
||||
></el-table-column>
|
||||
<el-table-column prop="warningDetails" align="center" label="告警详情" min-width="150"></el-table-column>
|
||||
<el-table-column align="center" label="站址名称" min-width="150"></el-table-column>
|
||||
<el-table-column prop="deviceName" align="center" label="设备名称" min-width="150"></el-table-column>
|
||||
<el-table-column prop="deviceSn" align="center" label="设备SN" min-width="150"></el-table-column>
|
||||
<el-table-column prop="status" label="运营状态" align="center" min-width="250"></el-table-column>
|
||||
</el-table>
|
||||
<!-- 分页 -->
|
||||
<pagination
|
||||
v-show="total > 0"
|
||||
:total="total"
|
||||
:page.sync="queryParams.pageNum"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
@pagination="getList"
|
||||
/>
|
||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
||||
@pagination="getList" />
|
||||
</el-col>
|
||||
</el-row>
|
||||
</section>
|
||||
@ -306,7 +134,7 @@ export default {
|
||||
components: {
|
||||
Region
|
||||
},
|
||||
data() {
|
||||
data () {
|
||||
return {
|
||||
dateRange: [],
|
||||
signalLevelList: [
|
||||
@ -330,12 +158,12 @@ export default {
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
selectdRegionCode({ code }) {
|
||||
selectdRegionCode ({ code }) {
|
||||
this.queryParams.provinceCode = code;
|
||||
this.handleQuery();
|
||||
},
|
||||
// 获取告警工单列表
|
||||
getList() {
|
||||
getList () {
|
||||
this.loading = true;
|
||||
list(this.addDateRange(this.queryParams, this.dateRange)).then(res => {
|
||||
this.tableData = res.rows;
|
||||
@ -344,13 +172,13 @@ export default {
|
||||
});
|
||||
},
|
||||
// 搜索按钮操作
|
||||
handleQuery() {
|
||||
handleQuery () {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.queryParams.pageSize = 10;
|
||||
this.getList();
|
||||
},
|
||||
// 重置按钮操作
|
||||
resetQuery() {
|
||||
resetQuery () {
|
||||
this.queryParams = {};
|
||||
this.resetForm('queryForm');
|
||||
this.dateRange = [];
|
||||
@ -359,7 +187,7 @@ export default {
|
||||
},
|
||||
computed: {},
|
||||
watch: {},
|
||||
created() {
|
||||
created () {
|
||||
this.getList();
|
||||
}
|
||||
};
|
||||
|
@ -1,87 +0,0 @@
|
||||
<template>
|
||||
<section class="app-container">
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="90px">
|
||||
<el-form-item label="故障名称">
|
||||
<el-input v-model="queryParams.faultName" placeholder="请输入故障名称" clearable size="small" style="width: 200px"
|
||||
@keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-row>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
<el-table :data="tableData" style="width: 100%" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center">
|
||||
</el-table-column>
|
||||
<el-table-column prop="faultCode" align="center" label="故障编码">
|
||||
</el-table-column>
|
||||
<el-table-column prop="faultName" align="center" label="故障名称">
|
||||
</el-table-column>
|
||||
<el-table-column prop="faultLevel" align="center" label="故障等级">
|
||||
</el-table-column>
|
||||
<el-table-column prop="remark" align="center" label="备注">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
||||
@pagination="getList" />
|
||||
</el-col>
|
||||
</el-row>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { faultBatteryList } from "@/api/fault/faultDictionary";
|
||||
export default {
|
||||
name: "batteryFaultList",
|
||||
data () {
|
||||
return {
|
||||
// 表格数据
|
||||
tableData: [],
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10
|
||||
},
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
// 获取电池故障编码列表
|
||||
getList () {
|
||||
faultBatteryList(this.queryParams).then((res) => {
|
||||
// debugger
|
||||
this.tableData = res.rows;
|
||||
this.total = res.total;
|
||||
});
|
||||
},
|
||||
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery () {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
|
||||
/** 重置按钮操作 */
|
||||
resetQuery () {
|
||||
this.queryParams = {};
|
||||
this.resetForm("queryForm");
|
||||
this.handleQuery();
|
||||
},
|
||||
handleSelectionChange () { }
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
</style>
|
@ -1,87 +0,0 @@
|
||||
<template>
|
||||
<section class="app-container">
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="90px">
|
||||
<el-form-item label="故障名称">
|
||||
<el-input v-model="queryParams.faultName" placeholder="请输入故障名称" clearable size="small" style="width: 200px"
|
||||
@keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-row>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
<el-table :data="tableData" style="width: 100%" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center">
|
||||
</el-table-column>
|
||||
<el-table-column prop="faultCode" align="center" label="故障编码">
|
||||
</el-table-column>
|
||||
<el-table-column prop="faultName" align="center" label="故障名称">
|
||||
</el-table-column>
|
||||
<el-table-column prop="faultLevel" align="center" label="故障等级">
|
||||
</el-table-column>
|
||||
<el-table-column prop="remark" align="center" label="备注">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
||||
@pagination="getList" />
|
||||
</el-col>
|
||||
</el-row>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { faultBmsList } from "@/api/fault/faultDictionary";
|
||||
export default {
|
||||
name: "bmsFaultList",
|
||||
data () {
|
||||
return {
|
||||
// 表格数据
|
||||
tableData: [],
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10
|
||||
},
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
// 获取电池故障编码列表
|
||||
getList () {
|
||||
faultBmsList(this.queryParams).then((res) => {
|
||||
// debugger
|
||||
this.tableData = res.rows;
|
||||
this.total = res.total;
|
||||
});
|
||||
},
|
||||
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery () {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
|
||||
/** 重置按钮操作 */
|
||||
resetQuery () {
|
||||
this.queryParams = {};
|
||||
this.resetForm("queryForm");
|
||||
this.handleQuery();
|
||||
},
|
||||
handleSelectionChange () { }
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
</style>
|
@ -2,29 +2,39 @@
|
||||
<section class="app-container">
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="90px">
|
||||
<el-form size="mini" :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="90px">
|
||||
<el-form-item label="故障名称">
|
||||
<el-input v-model="queryParams.faultName" placeholder="请输入故障名称" clearable size="small" style="width: 200px"
|
||||
<el-input v-model="queryParams.faultName" placeholder="请输入故障名称" clearable style="width: 200px"
|
||||
@keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="cyan" 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="cyan" icon="el-icon-search" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-row>
|
||||
<el-row class="mb8">
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
<el-table :data="tableData" style="width: 100%" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center">
|
||||
</el-table-column>
|
||||
<el-table-column prop="signalCode" align="center" label="信号量">
|
||||
</el-table-column>
|
||||
<el-table-column prop="parentSignalCode" align="center" label="上级信号量">
|
||||
</el-table-column>
|
||||
<el-table-column prop="faultCode" align="center" label="故障编码">
|
||||
</el-table-column>
|
||||
<el-table-column prop="faultName" align="center" label="故障名称">
|
||||
</el-table-column>
|
||||
<el-table-column prop="faultLevel" align="center" label="故障等级">
|
||||
<el-table-column align="center" label="故障等级">
|
||||
<template slot-scope="scope">
|
||||
<section>{{scope.row.faultLevel | toChinaNum }}级</section>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="remark" align="center" label="备注">
|
||||
<el-table-column align="center" label="是否生成工单">
|
||||
<template slot-scope="scope">
|
||||
<section>{{scope.row.workIs | isToChina }}</section>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
||||
@ -35,9 +45,9 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { faultPackList } from "@/api/fault/faultDictionary";
|
||||
import { list } from "@/api/fault/encrypt";
|
||||
export default {
|
||||
name: "packFaultList",
|
||||
name: "Encrypt",
|
||||
data () {
|
||||
return {
|
||||
// 表格数据
|
||||
@ -57,9 +67,9 @@ export default {
|
||||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
// 获取电池故障编码列表
|
||||
// 获取故障编码列表
|
||||
getList () {
|
||||
faultPackList(this.queryParams).then((res) => {
|
||||
list(this.queryParams).then((res) => {
|
||||
// debugger
|
||||
this.tableData = res.rows;
|
||||
this.total = res.total;
|
||||
@ -74,7 +84,10 @@ export default {
|
||||
|
||||
/** 重置按钮操作 */
|
||||
resetQuery () {
|
||||
this.queryParams = {};
|
||||
this.queryParams = {
|
||||
pageNum: 1,
|
||||
pageSize: 10
|
||||
};
|
||||
this.resetForm("queryForm");
|
||||
this.handleQuery();
|
||||
},
|
@ -1,87 +0,0 @@
|
||||
<template>
|
||||
<section class="app-container">
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="90px">
|
||||
<el-form-item label="故障名称">
|
||||
<el-input v-model="queryParams.faultName" placeholder="请输入故障名称" clearable size="small" style="width: 200px"
|
||||
@keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-row>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
<el-table :data="tableData" style="width: 100%" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center">
|
||||
</el-table-column>
|
||||
<el-table-column prop="faultCode" align="center" label="故障编码">
|
||||
</el-table-column>
|
||||
<el-table-column prop="faultName" align="center" label="故障名称">
|
||||
</el-table-column>
|
||||
<el-table-column prop="faultLevel" align="center" label="故障等级">
|
||||
</el-table-column>
|
||||
<el-table-column prop="remark" align="center" label="备注">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
||||
@pagination="getList" />
|
||||
</el-col>
|
||||
</el-row>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { faultHardwareList } from "@/api/fault/faultDictionary";
|
||||
export default {
|
||||
name: "hardwareFaultList",
|
||||
data () {
|
||||
return {
|
||||
// 表格数据
|
||||
tableData: [],
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10
|
||||
},
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
// 获取电池故障编码列表
|
||||
getList () {
|
||||
faultHardwareList(this.queryParams).then((res) => {
|
||||
// debugger
|
||||
this.tableData = res.rows;
|
||||
this.total = res.total;
|
||||
});
|
||||
},
|
||||
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery () {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
|
||||
/** 重置按钮操作 */
|
||||
resetQuery () {
|
||||
this.queryParams = {};
|
||||
this.resetForm("queryForm");
|
||||
this.handleQuery();
|
||||
},
|
||||
handleSelectionChange () { }
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
</style>
|
@ -1,91 +0,0 @@
|
||||
<template>
|
||||
<section class="app-container">
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="90px">
|
||||
<el-form-item label="故障名称">
|
||||
<el-input v-model="queryParams.dicName" placeholder="请输入故障名称" clearable size="small" style="width: 200px"
|
||||
@keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-row>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
<el-table :data="tableData" style="width: 100%" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center">
|
||||
</el-table-column>
|
||||
<el-table-column prop="dicCode" align="center" label="故障编码">
|
||||
</el-table-column>
|
||||
<el-table-column prop="dicName" align="center" label="故障名称">
|
||||
</el-table-column>
|
||||
<el-table-column prop="dicType" align="center" label="故障类型">
|
||||
</el-table-column>
|
||||
<el-table-column prop="dicValue" align="center" label="故障值">
|
||||
</el-table-column>
|
||||
<el-table-column prop="description" align="center" label="描述">
|
||||
</el-table-column>
|
||||
<el-table-column prop="remark" align="center" label="备注">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
||||
@pagination="getList" />
|
||||
</el-col>
|
||||
</el-row>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { faultSignalList } from "@/api/fault/faultDictionary";
|
||||
export default {
|
||||
name: "signalFaultList",
|
||||
data () {
|
||||
return {
|
||||
// 表格数据
|
||||
tableData: [],
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10
|
||||
},
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
// 获取电池故障编码列表
|
||||
getList () {
|
||||
faultSignalList(this.queryParams).then((res) => {
|
||||
// debugger
|
||||
this.tableData = res.rows;
|
||||
this.total = res.total;
|
||||
});
|
||||
},
|
||||
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery () {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
|
||||
/** 重置按钮操作 */
|
||||
resetQuery () {
|
||||
this.queryParams = {};
|
||||
this.resetForm("queryForm");
|
||||
this.handleQuery();
|
||||
},
|
||||
handleSelectionChange () { }
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
</style>
|
@ -1,68 +1,40 @@
|
||||
<template>
|
||||
<section class="app-container">
|
||||
<el-form v-loading="loading">
|
||||
<section class="app-container" v-loading="loading">
|
||||
<el-form>
|
||||
<el-scrollbar class="scrollbar" wrap-class="scrollbar-wrapper">
|
||||
<el-form-item v-for="item1 in formTitle" :key="item1.id">
|
||||
<section v-if="item1.signalCode">
|
||||
<section>
|
||||
<div class="tab">
|
||||
{{ item1.signalName }}
|
||||
</div>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="6" v-for="item2 in formList" :key="item2.id">
|
||||
<el-form-item
|
||||
class="row"
|
||||
:label="
|
||||
item2.optValName
|
||||
? item2.optValName
|
||||
<el-col :span="8" v-for="(item2,index) in formList.filter(v=> v.parentSignalCode == item1.signalCode)" :key="item2.id">
|
||||
<!-- <section v-if="item1.signalCode === item2.parentSignalCode"> -->
|
||||
<el-form-item class="row" label-width="200px" :label="
|
||||
item2.optValName
|
||||
? item2.optValName + index
|
||||
: (item2.optValName = item2.warningName)
|
||||
"
|
||||
label-width="200px"
|
||||
v-if="item1.signalCode === item2.signalCode"
|
||||
>
|
||||
<el-select v-model="item2.signalLevel">
|
||||
<el-option
|
||||
v-for="item in signalLevelList"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</section>
|
||||
<section v-else>
|
||||
<div class="tab">
|
||||
{{ item1.signalName }}
|
||||
</div>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="6" v-for="item2 in otherList" :key="item2.id">
|
||||
<el-form-item
|
||||
class="row"
|
||||
:label="
|
||||
item2.optValName
|
||||
? item2.optValName
|
||||
: (item2.optValName = item2.warningName)
|
||||
"
|
||||
label-width="200px"
|
||||
>
|
||||
<el-select v-model="item2.signalLevel">
|
||||
<el-option
|
||||
v-for="item in signalLevelList"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
>
|
||||
">
|
||||
<el-select style="width:80px;margin-right:10px" v-model="item2.signalLevel">
|
||||
<el-option v-for="item in signalLevelList" :key="item.value" :label="item.label" :value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<el-select style="width:120px" v-model="item2.workIs">
|
||||
<el-option v-for="item in workIsList" :key="item.value" :label="item.label" :value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
</el-col>
|
||||
</el-row>
|
||||
</section>
|
||||
<el-divider class="mt10 mb10"></el-divider>
|
||||
|
||||
</el-form-item>
|
||||
</el-scrollbar>
|
||||
<!-- 表单操作 -->
|
||||
<el-form-item class="right">
|
||||
<el-button type="primary" @click="submitForm">提交</el-button>
|
||||
<el-form-item>
|
||||
<el-button class="right" type="primary" @click="submitForm">提交</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</section>
|
||||
@ -71,10 +43,11 @@
|
||||
import { select, type, update } from '@/api/fault/warning';
|
||||
export default {
|
||||
name: 'warning',
|
||||
data() {
|
||||
data () {
|
||||
return {
|
||||
formTitle: [],
|
||||
formList: [],
|
||||
initialFormList: [],
|
||||
value: '',
|
||||
signalLevelList: [
|
||||
{ label: '一级', value: '1' },
|
||||
@ -82,25 +55,39 @@ export default {
|
||||
{ label: '三级', value: '3' },
|
||||
{ label: '四级', value: '4' }
|
||||
],
|
||||
workIsList: [
|
||||
{ label: '生成工单', value: 1 },
|
||||
{ label: '不生成工单', value: 2 },
|
||||
],
|
||||
loading: true
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
// 获取 title 的类型
|
||||
async getTitle() {
|
||||
async getTitle () {
|
||||
const { select: data } = await type();
|
||||
this.formTitle = data;
|
||||
const { select: res } = await select({
|
||||
userId: this.$store.getters.userId
|
||||
});
|
||||
this.formList = res;
|
||||
this.formList = JSON.parse(JSON.stringify(res));
|
||||
this.initialFormList = JSON.parse(JSON.stringify(res));
|
||||
this.loading = false;
|
||||
},
|
||||
async submitForm() {
|
||||
const array = JSON.parse(
|
||||
JSON.stringify(this.formList).replace(/optValName/g, 'warningName')
|
||||
);
|
||||
async submitForm () {
|
||||
this.loading = true;
|
||||
const array = this.formList.filter(v => {
|
||||
v.warningName = v.optValName;
|
||||
if (v.id != null) {
|
||||
v.warningName = v.optValName;
|
||||
const { workIs, signalLevel } = this.initialFormList.find(e => v.signalCode == e.signalCode);
|
||||
if (v.workIs != workIs || v.signalLevel != signalLevel) {
|
||||
return v;
|
||||
}
|
||||
} else {
|
||||
return v;
|
||||
}
|
||||
})
|
||||
const { code } = await update({
|
||||
userId: this.$store.getters.userId,
|
||||
signalList: array
|
||||
@ -113,15 +100,15 @@ export default {
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
otherList() {
|
||||
otherList () {
|
||||
let signalCodes = this.formTitle.map(v => v.signalCode).filter(v => !!v);
|
||||
return this.formList.filter(v => {
|
||||
return signalCodes.indexOf(v.signalCode) == -1;
|
||||
return signalCodes.indexOf(v.parentSignalCode) == -1;
|
||||
});
|
||||
}
|
||||
},
|
||||
watch: {},
|
||||
created() {
|
||||
created () {
|
||||
this.getTitle();
|
||||
}
|
||||
};
|
||||
@ -138,4 +125,13 @@ export default {
|
||||
float: right;
|
||||
}
|
||||
}
|
||||
.scrollbar {
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden;
|
||||
height: calc(100vh - 200px)
|
||||
}
|
||||
|
||||
/deep/ .el-scrollbar__view {
|
||||
overflow-x: hidden;
|
||||
}
|
||||
</style>
|
||||
|
@ -13,7 +13,7 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="节点">
|
||||
<el-select v-model="queryParams.nodeId" clearable placeholder="请选择">
|
||||
<el-option v-for="item in queryNodeSelectList" :key="item.id" :label="item.nodeName" :value="item.id">
|
||||
<el-option v-for="item in queryNodeSelectList" :key="item.id" :label="item.nodeName" :value="item.nodeSn">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
@ -106,7 +106,7 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="节点" prop="nodeId">
|
||||
<el-select :disabled="!!form.id" v-model="form.nodeId" clearable placeholder="请选择">
|
||||
<el-option v-for="item in nodeSelectList" :key="item.id" :label="item.nodeName" :value="item.id">
|
||||
<el-option v-for="item in nodeSelectList" :key="item.id" :label="item.nodeName + '('+ item.nodeSn +')'" :value="item.nodeSn">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
@ -419,5 +419,8 @@ export default {
|
||||
};
|
||||
</script>
|
||||
|
||||
<style>
|
||||
<style lang="scss" scoped>
|
||||
/deep/ .el-select {
|
||||
width: 100%;
|
||||
}
|
||||
</style>
|
@ -13,8 +13,8 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="节点">
|
||||
<el-select v-model="queryParams.nodeDataId" clearable placeholder="请选择">
|
||||
<el-option v-for="item in queryNodeSelectList" :key="item.id" :label="item.nodeName" :value="item.id">
|
||||
<el-select v-model="queryParams.nodeId" clearable placeholder="请选择">
|
||||
<el-option v-for="item in queryNodeSelectList" :key="item.id" :label="item.nodeName" :value="item.nodeSn">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
@ -31,7 +31,7 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="设备SN">
|
||||
<el-input v-model="queryParams.nodeId" placeholder="请输入设备SN" @keyup.enter.native="handleQuery" />
|
||||
<el-input v-model="queryParams.deviceId" placeholder="请输入设备SN" @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
|
@ -76,9 +76,11 @@ export default {
|
||||
info.cityName = await this.getProvinceByCode(info.cityCode);
|
||||
info.disName = await this.getProvinceByCode(info.disCode);
|
||||
this.info = info;
|
||||
let deviceSignal = JSON.parse(info.deviceSignal.signalJsonTurn);
|
||||
this.signalUpdateTime = info.deviceSignal.updateTime;
|
||||
this.signal = deviceSignal.signal.concat(deviceSignal.signal, deviceSignal.signal, deviceSignal.signal);
|
||||
if (info.deviceSignal) {
|
||||
let deviceSignal = JSON.parse(info.deviceSignal.signalJsonTurn);
|
||||
this.signal = deviceSignal.signal;
|
||||
this.signalUpdateTime = info.deviceSignal.updateTime;
|
||||
}
|
||||
} else {
|
||||
this.msgError(msg);
|
||||
}
|
||||
|
@ -181,15 +181,15 @@
|
||||
<el-form-item label="设备SN" prop="deviceId">
|
||||
<el-input v-model="nodeForm.deviceId" disabled placeholder="请输入设备SN" />
|
||||
</el-form-item>
|
||||
<el-form-item label="节点名称" prop="nodeDataId">
|
||||
<el-select v-model="nodeForm.nodeDataId" :disabled="!!nodeForm.id" clearable placeholder="请选择">
|
||||
<el-option v-for="item in productNodeSelectList" :key="item.id" :label="item.nodeName" :value="item.id">
|
||||
<el-form-item label="产品节点" prop="nodeId">
|
||||
<el-select style="width:100%" v-model="nodeForm.nodeId" :disabled="!!nodeForm.id" clearable placeholder="请选择">
|
||||
<el-option v-for="item in productNodeSelectList" :key="item.id" :label="item.nodeName + '('+ item.nodeSn +')'" :value="item.nodeSn">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="节点SN" prop="nodeId">
|
||||
<!-- <el-form-item label="节点SN" prop="nodeId">
|
||||
<el-input v-model="nodeForm.nodeId" placeholder="请输入节点SN" />
|
||||
</el-form-item>
|
||||
</el-form-item> -->
|
||||
<el-form-item label="初始版本" prop="nowVersion">
|
||||
<el-input v-model="nodeForm.nowVersion" placeholder="请输入节点初始版本" />
|
||||
</el-form-item>
|
||||
@ -308,14 +308,11 @@ export default {
|
||||
},
|
||||
nodeRules: {
|
||||
nodeId: [
|
||||
{ required: true, message: "节点SN不能为空", trigger: "blur" },
|
||||
{ required: true, message: "节点不能为空", trigger: "blur" },
|
||||
],
|
||||
deviceId: [
|
||||
{ required: true, message: "设备SN不能为空", trigger: "blur" },
|
||||
],
|
||||
nodeDataId: [
|
||||
{ required: true, message: "节点真正ID不能为空", trigger: "blur" },
|
||||
],
|
||||
nowVersion: [
|
||||
{ required: true, message: "节点初始版本不能为空", trigger: "blur" },
|
||||
],
|
||||
@ -440,7 +437,6 @@ export default {
|
||||
this.nodeForm = {
|
||||
nodeId: "",
|
||||
deviceId: "",
|
||||
nodeDataId: "",
|
||||
};
|
||||
this.resetForm("form");
|
||||
this.resetForm("nodeForm");
|
||||
@ -588,7 +584,6 @@ export default {
|
||||
|
||||
/** 删除按钮操作 */
|
||||
handleDelete (row) {
|
||||
debugger
|
||||
const ids = row.id || this.ids;
|
||||
this.$confirm('是否确认删除?', "警告", {
|
||||
confirmButtonText: "确定",
|
||||
|
@ -99,6 +99,9 @@
|
||||
<el-form-item label="节点名称" prop="nodeName">
|
||||
<el-input v-model="nodeForm.nodeName" placeholder="请输入节点名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="节点Sn" prop="nodeSn">
|
||||
<el-input :disabled="nodeForm.nodeEmpty" v-model="nodeForm.nodeSn" placeholder="请输入节点Sn" />
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="状态">
|
||||
<el-input v-model="nodeForm.status" />
|
||||
</el-form-item> -->
|
||||
@ -114,22 +117,23 @@
|
||||
<!-- 节点列表弹框 -->
|
||||
<el-dialog title="节点列表" :visible.sync="nodeDialog">
|
||||
<el-row class="mb8">
|
||||
<el-button type="danger" icon="el-icon-delete" size="mini" :disabled="nodeMultiple" @click="batchHandleDeletenode"
|
||||
v-hasPermi="['monitor:node:remove']">批量删除</el-button>
|
||||
<el-button type="danger" icon="el-icon-delete" size="mini" :disabled="nodeMultiple" @click="batchHandleDeleteNode"
|
||||
v-hasPermi="['product:node:remove']">批量删除</el-button>
|
||||
</el-row>
|
||||
|
||||
<el-table :data="nodeData" @selection-change="nodeHandleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center">
|
||||
</el-table-column>
|
||||
<el-table-column prop="nodeName" label="节点名称"></el-table-column>
|
||||
<el-table-column prop="nodeSn" label="节点Sn"></el-table-column>
|
||||
<el-table-column prop="remark" label="节点备注"></el-table-column>
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||
<template slot-scope="scope">
|
||||
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdatenode(scope.row)" v-hasPermi="['system:node:edit']">
|
||||
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdatenode(scope.row)" v-hasPermi="['product:node:edit']">
|
||||
修改
|
||||
</el-button>
|
||||
<el-button class="text-danger" size="mini" type="text" icon="el-icon-delete" @click="handleDeletenode(scope.row)"
|
||||
v-hasPermi="['system:node:remove']">删除</el-button>
|
||||
<el-button class="text-danger" size="mini" type="text" icon="el-icon-delete" @click="handleDeleteNode(scope.row)"
|
||||
v-hasPermi="['product:node:remove']">删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@ -198,6 +202,9 @@ export default {
|
||||
nodeName: [
|
||||
{ required: true, message: "节点名称不能为空", trigger: "blur" },
|
||||
],
|
||||
nodeSn: [
|
||||
{ required: true, message: "nodeSn不能为空", trigger: "blur" },
|
||||
],
|
||||
}
|
||||
};
|
||||
},
|
||||
@ -299,9 +306,15 @@ export default {
|
||||
/** 修改节点操作 */
|
||||
handleUpdatenode (row) {
|
||||
this.reset();
|
||||
this.nodeOpen = true;
|
||||
this.nodeForm = Object.assign({}, row);;
|
||||
this.title = "修改产品节点";
|
||||
productNodeInfo(row.nodeSn).then(({code,msg,info}) => {
|
||||
if (200 == code) {
|
||||
this.nodeOpen = true;
|
||||
this.nodeForm = info;
|
||||
this.title = "修改产品节点";
|
||||
} else {
|
||||
this.msgError(msg);
|
||||
}
|
||||
});
|
||||
},
|
||||
/** 提交按钮 */
|
||||
submitForm: function () {
|
||||
@ -371,7 +384,7 @@ export default {
|
||||
},
|
||||
|
||||
/** 删除节点按钮操作 */
|
||||
handleDeletenode (row) {
|
||||
handleDeleteNode (row) {
|
||||
const ids = row.id || this.ids;
|
||||
this.$confirm("是否确认删除?", "警告", {
|
||||
confirmButtonText: "确定",
|
||||
@ -393,7 +406,7 @@ export default {
|
||||
},
|
||||
|
||||
// 批量删除节点
|
||||
batchHandleDeletenode () {
|
||||
batchHandleDeleteNode () {
|
||||
this.$confirm("是否确认删除?", "警告", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
|
Reference in New Issue
Block a user