预警告警
This commit is contained in:
parent
ad93fb05eb
commit
81aa7eb50b
|
|
@ -0,0 +1,18 @@
|
||||||
|
/**
|
||||||
|
* 预警告警页面 API
|
||||||
|
*/
|
||||||
|
import request from '@/utils/request'
|
||||||
|
/** 预警告警列表查询 */
|
||||||
|
export const queryWarnAlertListApi = (data) => {
|
||||||
|
return request.get('/base/tbDevAttribute/list', {
|
||||||
|
params: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 预警告警列表查询 */
|
||||||
|
export const handleWarnAlertApi = (data) => {
|
||||||
|
// return request.post('/base/tbDevAttribute/handle',data)
|
||||||
|
return request.post('/base/tbDevAttribute/handle', data)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -64,6 +64,7 @@
|
||||||
style="width: 240px"
|
style="width: 240px"
|
||||||
value-format="yyyy-MM-dd"
|
value-format="yyyy-MM-dd"
|
||||||
type="date"
|
type="date"
|
||||||
|
:placeholder="`请输入${item.f_label}`"
|
||||||
/>
|
/>
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
v-if="item.f_type === 'dateRange'"
|
v-if="item.f_type === 'dateRange'"
|
||||||
|
|
|
||||||
|
|
@ -394,10 +394,10 @@ export default {
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
if (res.data) {
|
if (res.data) {
|
||||||
this.tableList = res.data.rows || res.data
|
this.tableList = res.data.rows || res.data
|
||||||
this.total = res.data.total || res.data.length
|
this.total = res.data.total || res.data.length
|
||||||
} else {
|
} else {
|
||||||
this.tableList = res.rows || res.data
|
this.tableList = res.rows || res.data
|
||||||
this.total = res.data.total || res.rows.length
|
this.total = res.data.total || res.rows.length
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -76,7 +76,7 @@
|
||||||
</TableModelTwo>
|
</TableModelTwo>
|
||||||
<el-form-item label="审核意见" prop="remarks">
|
<el-form-item label="审核意见" prop="remarks">
|
||||||
<!-- <textarea id="remarks" v-model="projectParams.remarks" class="el-textarea" placeholder="请输入审核意见" disabled></textarea>-->
|
<!-- <textarea id="remarks" v-model="projectParams.remarks" class="el-textarea" placeholder="请输入审核意见" disabled></textarea>-->
|
||||||
<el-input :rows="4" type="textarea" v-model="projectParams.remarks" placeholder="请输入" disabled/>
|
<el-input :rows="4" type="textarea" v-model="projectParams.remarks" placeholder="请输入审核意见" disabled/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-row type="flex" justify="space-between" :gutter="24">
|
<el-row type="flex" justify="space-between" :gutter="24">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
|
@ -319,7 +319,7 @@ export default {
|
||||||
let res = await approveEdgeDeviceApi(this.projectParams)
|
let res = await approveEdgeDeviceApi(this.projectParams)
|
||||||
if(res.code === 200) {
|
if(res.code === 200) {
|
||||||
this.$modal.msgSuccess('操作成功')
|
this.$modal.msgSuccess('操作成功')
|
||||||
this.$emit('closeDialogApprove', true)
|
this.$emit('closeDialogAll', true)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -333,7 +333,7 @@ export default {
|
||||||
let res = await approveEdgeDeviceApi(this.projectParams)
|
let res = await approveEdgeDeviceApi(this.projectParams)
|
||||||
if(res.code === 200) {
|
if(res.code === 200) {
|
||||||
this.$modal.msgSuccess('操作成功')
|
this.$modal.msgSuccess('操作成功')
|
||||||
this.$emit('closeDialogApprove', true)
|
this.$emit('closeDialogAll', true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -75,8 +75,8 @@
|
||||||
>
|
>
|
||||||
</TableModelTwo>
|
</TableModelTwo>
|
||||||
<el-form-item label="审核意见" prop="remarks">
|
<el-form-item label="审核意见" prop="remarks">
|
||||||
<textarea id="remarks" v-model="projectParams.remarks" class="el-textarea" placeholder="请输入审核意见" ></textarea>
|
<!-- <textarea id="remarks" v-model="projectParams.remarks" class="el-textarea" placeholder="请输入审核意见" disabled></textarea>-->
|
||||||
<!-- <el-input v-model="projectParams.relUser" placeholder="请输入" disabled/> -->
|
<el-input :rows="4" type="textarea" v-model="projectParams.remarks" placeholder="请输入审核意见" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,4 @@
|
||||||
export const formLabelAll = [
|
|
||||||
{ f_label: '边代名称', f_model: 'departName', f_type: 'ipt' },
|
|
||||||
{ f_label: '边代编号', f_model: 'departName', f_type: 'ipt' },
|
|
||||||
{ f_label: '工程名称', f_model: 'headUser', f_type: 'ipt' },
|
|
||||||
{ f_label: '杆塔编号', f_model: 'headUser', f_type: 'ipt' },
|
|
||||||
{ f_label: '绑定时间', f_model: 'headUser', f_type: 'date' },
|
|
||||||
]
|
|
||||||
export const columnsListAll = [
|
export const columnsListAll = [
|
||||||
{ t_props: 'departName', t_label: '申请项目部', },
|
{ t_props: 'departName', t_label: '申请项目部', },
|
||||||
{ t_props: 'proName', t_label: '工程名称' },
|
{ t_props: 'proName', t_label: '工程名称' },
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,8 @@
|
||||||
export const formLabel = [
|
export const formLabel = [
|
||||||
{ f_label: '边代名称', f_model: 'departName', f_type: 'ipt' },
|
{ f_label: '项目部名称', f_model: 'departName', f_type: 'ipt' },
|
||||||
{ f_label: '边代编号', f_model: 'departName', f_type: 'ipt' },
|
{ f_label: '工程名称', f_model: 'proName', f_type: 'ipt' },
|
||||||
{ f_label: '工程名称', f_model: 'headUser', f_type: 'ipt' },
|
{ f_label: '申请人', f_model: 'relUser', f_type: 'ipt' },
|
||||||
{ f_label: '杆塔编号', f_model: 'headUser', f_type: 'ipt' },
|
{ f_label: '申请时间', f_model: 'auditStatus', f_type: 'date', },
|
||||||
{ f_label: '绑定时间', f_model: 'headUser', f_type: 'date' },
|
|
||||||
]
|
]
|
||||||
export const columnsList = [
|
export const columnsList = [
|
||||||
{ t_props: 'departName', t_label: '申请项目部', },
|
{ t_props: 'departName', t_label: '申请项目部', },
|
||||||
|
|
@ -12,7 +11,7 @@ export const columnsList = [
|
||||||
{ t_props: 'relUser', t_label: '申请人', },
|
{ t_props: 'relUser', t_label: '申请人', },
|
||||||
{ t_props: 'relPhone', t_label: '联系方式', t_slot: 'relPhone' },
|
{ t_props: 'relPhone', t_label: '联系方式', t_slot: 'relPhone' },
|
||||||
{ t_props: 'createTime', t_label: '申请时间', },
|
{ t_props: 'createTime', t_label: '申请时间', },
|
||||||
{ t_props: 'auditStatus', t_label: '申请状态', t_slot: 'auditStatus' },
|
{ t_props: 'auditStatus', t_label: '审核状态', t_slot: 'auditStatus' },
|
||||||
]
|
]
|
||||||
|
|
||||||
export const dialogConfig = {
|
export const dialogConfig = {
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,117 @@
|
||||||
|
<template>
|
||||||
|
<!-- 工程管理 新增、编辑 表单组件 -->
|
||||||
|
<div >
|
||||||
|
<el-form
|
||||||
|
label-width="100px"
|
||||||
|
size="medium"
|
||||||
|
ref="warnAlertParamsRef"
|
||||||
|
:model="warnAlertParams"
|
||||||
|
:rules="warnAlertParamsRules"
|
||||||
|
>
|
||||||
|
<el-form-item label="预警处置" prop="remarks">
|
||||||
|
<el-input v-model="warnAlertParams.remarks" :maxlength="15" placeholder="请输入预警处置内容" />
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item>
|
||||||
|
<el-button type="success" @click="onSubmit">确认</el-button>
|
||||||
|
<el-button
|
||||||
|
@click="
|
||||||
|
() => {
|
||||||
|
this.$emit('closeDialog')
|
||||||
|
}
|
||||||
|
"
|
||||||
|
>取消</el-button
|
||||||
|
>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {
|
||||||
|
handleWarnAlertApi
|
||||||
|
} from '@/api/base/warnAlert'
|
||||||
|
export default {
|
||||||
|
name: 'FormWarnAlert',
|
||||||
|
props: {
|
||||||
|
editParams: {
|
||||||
|
type: Object,
|
||||||
|
default: () => null,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
components: { },
|
||||||
|
created() {
|
||||||
|
|
||||||
|
},
|
||||||
|
async mounted() {
|
||||||
|
console.log(this.editParams)
|
||||||
|
if (this.editParams) {
|
||||||
|
await Object.assign(this.warnAlertParams, this.editParams)
|
||||||
|
console.log(this.warnAlertParams)
|
||||||
|
this.subSort = 2
|
||||||
|
} else {
|
||||||
|
this.subSort = 1
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
subSort: '', // 提交类型:新增 1 / 修改 2
|
||||||
|
open: false,
|
||||||
|
warnAlertParams: {
|
||||||
|
id: undefined, // id
|
||||||
|
isWarn: 0, // 是否预警
|
||||||
|
remarks: undefined, // 预警处置
|
||||||
|
},
|
||||||
|
// 校验规则
|
||||||
|
warnAlertParamsRules: {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
/** 改变树结构 */
|
||||||
|
changeTree(leaf) {
|
||||||
|
leaf.map(item => {
|
||||||
|
item.value = item.id
|
||||||
|
if(item.children) {
|
||||||
|
this.changeTree(item.children)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
return leaf
|
||||||
|
},
|
||||||
|
/** 级联选择器改变 */
|
||||||
|
handleCas(e) {
|
||||||
|
this.warnAlertParams.impUnit = e[e.length - 1]
|
||||||
|
},
|
||||||
|
/** 确认按钮 */
|
||||||
|
onSubmit() {
|
||||||
|
console.log(this.warnAlertParams)
|
||||||
|
this.$refs.warnAlertParamsRef.validate(valid => {
|
||||||
|
if (valid) {
|
||||||
|
this.warnAlertParams.isWarn = 0
|
||||||
|
// console.log(this.warnAlertParams+'-----------------------')
|
||||||
|
handleWarnAlertApi(this.warnAlertParams).then(res => {
|
||||||
|
this.$modal.msgSuccess('操作成功')
|
||||||
|
// 2. 成功之后通知父组件关闭弹框
|
||||||
|
this.$emit('closeDialog', true)
|
||||||
|
}).catch(err => {
|
||||||
|
console.log(err)
|
||||||
|
})
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
::v-deep .el-select {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
::v-deep .el-form-item__label{
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
import {
|
||||||
|
queryDeviceTypeApi
|
||||||
|
} from '@/api/base/device'
|
||||||
|
|
||||||
|
export const queryDeviceTypes = () => {
|
||||||
|
queryDeviceTypeApi({'dictType':'dev_type'}).then(res => {
|
||||||
|
formLabel[1].f_selList = res.data.map(item => {
|
||||||
|
return {
|
||||||
|
label: item.dictLabel,
|
||||||
|
value: item.dictCode
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}).catch(err => {})
|
||||||
|
}
|
||||||
|
export const formLabel = [
|
||||||
|
{ f_label: '设备名称', f_model: 'devName', f_type: 'ipt' },
|
||||||
|
{ f_label: '设备类型', f_model: 'devType', f_type: 'sel',f_selList: [] },
|
||||||
|
{ f_label: '预警日期', f_model: 'startTime', f_type: 'dateRange' },
|
||||||
|
|
||||||
|
]
|
||||||
|
|
||||||
|
export const columnsList = [
|
||||||
|
{ t_props: 'devTypeName', t_label: '预警设备类型' },
|
||||||
|
{ t_props: 'devName', t_label: '预警设备名称', },
|
||||||
|
{ t_props: 'devCode', t_label: '预警设备编号', },
|
||||||
|
{ t_props: 'warnName', t_label: '预警内容', t_slot: 'warnName' },
|
||||||
|
{ t_props: 'jcTime', t_label: '预警时间', },
|
||||||
|
{ t_props: 'status', t_label: '状态', },
|
||||||
|
{ t_props: 'remarks', t_label: '预警处置',t_slot: 'remarks'},
|
||||||
|
]
|
||||||
|
|
||||||
|
export const dialogConfig = {
|
||||||
|
outerWidth: '40%',
|
||||||
|
outerTitle: '',
|
||||||
|
outerVisible: false,
|
||||||
|
};
|
||||||
|
|
@ -0,0 +1,108 @@
|
||||||
|
<template>
|
||||||
|
<!-- 工程管理页面 -->
|
||||||
|
<div class="app-container">
|
||||||
|
<!-- 表格 -->
|
||||||
|
<TableModel
|
||||||
|
:formLabel="formLabel"
|
||||||
|
:columnsList="columnsList"
|
||||||
|
:request-api="queryWarnAlertListApi"
|
||||||
|
ref="tableRef"
|
||||||
|
>
|
||||||
|
<template slot="btn" slot-scope="{ queryParams }">
|
||||||
|
<el-button
|
||||||
|
@click="handleExportData(
|
||||||
|
exportList,
|
||||||
|
'base/tbDevAttribute/export',
|
||||||
|
'异常记录',
|
||||||
|
queryParams
|
||||||
|
)"
|
||||||
|
icon="el-icon-upload2"
|
||||||
|
size="mini"
|
||||||
|
>导出数据</el-button
|
||||||
|
>
|
||||||
|
</template>
|
||||||
|
<template slot="handle" slot-scope="{ data }">
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
size="mini"
|
||||||
|
v-if="data.status === '未处置'"
|
||||||
|
@click="handleWarnData(data)"
|
||||||
|
>处理</el-button
|
||||||
|
>
|
||||||
|
</template>
|
||||||
|
<template slot="warnName" slot-scope="{ data }">
|
||||||
|
<span
|
||||||
|
v-if="data.warnName == null || data.warnName === ''"
|
||||||
|
>无</span
|
||||||
|
>
|
||||||
|
<span v-else>{{ data.warnName }}</span>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template slot="remarks" slot-scope="{ data }">
|
||||||
|
<span
|
||||||
|
v-if="data.remarks == null || data.remarks === ''"
|
||||||
|
></span
|
||||||
|
>
|
||||||
|
<span v-else>{{ data.remarks }}</span>
|
||||||
|
</template>
|
||||||
|
</TableModel>
|
||||||
|
|
||||||
|
<!-- 处理时的弹框 -->
|
||||||
|
<DialogModel
|
||||||
|
:dialogConfig="dialogConfig"
|
||||||
|
@closeDialogOuter="closeDialogOuter"
|
||||||
|
>
|
||||||
|
<template slot="outerContent">
|
||||||
|
<!-- 新增以及修改数据的表单组件 -->
|
||||||
|
<FormWarnAlert
|
||||||
|
:editParams="editParams"
|
||||||
|
@closeDialog="closeDialog"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
|
</DialogModel>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { formLabel, columnsList,dialogConfig,queryDeviceTypes } from './config'
|
||||||
|
import { commonMixin } from '../mixins/common'
|
||||||
|
import {
|
||||||
|
queryWarnAlertListApi
|
||||||
|
} from '@/api/base/warnAlert'
|
||||||
|
import FormWarnAlert from './components/form-warnAlert.vue'
|
||||||
|
export default {
|
||||||
|
name: 'WarnAlert',
|
||||||
|
methods: {
|
||||||
|
queryWarnAlertListApi,
|
||||||
|
handleWarnData(v) {
|
||||||
|
this.editParams = v
|
||||||
|
this.dialogConfig.outerVisible = true
|
||||||
|
this.dialogConfig.outerTitle = '处理异常记录'
|
||||||
|
// this.dialogConfig.dialogWidth = '50%'
|
||||||
|
// this.dialogConfig.dialogHeight = '50%'
|
||||||
|
// this.dialogConfig.dialogType = 'exam'
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
mixins: [commonMixin],
|
||||||
|
components: {
|
||||||
|
FormWarnAlert
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
queryDeviceTypes()
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
// 搜索区表单配置项
|
||||||
|
formLabel,
|
||||||
|
// 表格导出id列表
|
||||||
|
dialogConfig,
|
||||||
|
exportList: [],
|
||||||
|
// 列表区配置项
|
||||||
|
columnsList,
|
||||||
|
// 弹框区配置项
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
Loading…
Reference in New Issue