|
@@ -1,7 +1,7 @@
|
|
|
<template>
|
|
<template>
|
|
|
<div class="rule-type">
|
|
<div class="rule-type">
|
|
|
<DialogCom
|
|
<DialogCom
|
|
|
- :title="id ? '编辑防区' : '新增防区'"
|
|
|
|
|
|
|
+ :title="id ? '编辑报警控制器' : '新增报警控制器'"
|
|
|
:visible.sync="isShow"
|
|
:visible.sync="isShow"
|
|
|
@close="onHide"
|
|
@close="onHide"
|
|
|
width="500px"
|
|
width="500px"
|
|
@@ -23,17 +23,33 @@
|
|
|
@select="onOrgSelect"
|
|
@select="onOrgSelect"
|
|
|
/>
|
|
/>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
- <el-form-item prop="name" label="防区名称:">
|
|
|
|
|
|
|
+ <el-form-item label="报警主机" prop="alarmHostId">
|
|
|
|
|
+ <el-select
|
|
|
|
|
+ label="报警主机"
|
|
|
|
|
+ v-model="formData.alarmHostId"
|
|
|
|
|
+ placeholder="请选择报警主机"
|
|
|
|
|
+ clearable
|
|
|
|
|
+ style="width:330px"
|
|
|
|
|
+ >
|
|
|
|
|
+ <el-option
|
|
|
|
|
+ v-for="host in alarmHostOptions"
|
|
|
|
|
+ :key="host.id"
|
|
|
|
|
+ :label="host.name"
|
|
|
|
|
+ :value="host.id"
|
|
|
|
|
+ />
|
|
|
|
|
+ </el-select>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ <el-form-item prop="name" label="报警控制器名称:">
|
|
|
<el-input
|
|
<el-input
|
|
|
- v-model="formData.name"
|
|
|
|
|
|
|
+ v-model="formData.name"
|
|
|
:maxlength="50"
|
|
:maxlength="50"
|
|
|
name="name"
|
|
name="name"
|
|
|
- placeholder="请输入防区名称"
|
|
|
|
|
|
|
+ placeholder="请输入报警控制器名称"
|
|
|
clearable
|
|
clearable
|
|
|
/>
|
|
/>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
|
|
|
|
- <el-form-item prop="type" label="24小时防区:">
|
|
|
|
|
|
|
+ <el-form-item prop="type" label="24小时报警控制器:">
|
|
|
<el-switch
|
|
<el-switch
|
|
|
v-model="formData.allHour"
|
|
v-model="formData.allHour"
|
|
|
:active-value="1"
|
|
:active-value="1"
|
|
@@ -45,7 +61,7 @@
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<div slot="footer" class="dialog-footer">
|
|
<div slot="footer" class="dialog-footer">
|
|
|
- <el-button @click="isShow=false">取消</el-button>
|
|
|
|
|
|
|
+ <el-button @click="isShow = false">取消</el-button>
|
|
|
<el-button type="primary" @click="onSubmit">确定</el-button>
|
|
<el-button type="primary" @click="onSubmit">确定</el-button>
|
|
|
</div>
|
|
</div>
|
|
|
</DialogCom>
|
|
</DialogCom>
|
|
@@ -55,6 +71,7 @@
|
|
|
<script>
|
|
<script>
|
|
|
import { mapState, mapMutations, mapGetters } from "vuex";
|
|
import { mapState, mapMutations, mapGetters } from "vuex";
|
|
|
import * as api from "@/api/resumption/protection";
|
|
import * as api from "@/api/resumption/protection";
|
|
|
|
|
+import { listIdName } from "@/api/system/device";
|
|
|
import orgDropDown from "../../../components/orgTree/orgDropDown.vue";
|
|
import orgDropDown from "../../../components/orgTree/orgDropDown.vue";
|
|
|
export default {
|
|
export default {
|
|
|
data() {
|
|
data() {
|
|
@@ -62,10 +79,12 @@ export default {
|
|
|
id: null,
|
|
id: null,
|
|
|
isShow: false,
|
|
isShow: false,
|
|
|
formData: this.reset(),
|
|
formData: this.reset(),
|
|
|
|
|
+ alarmHostOptions: [],
|
|
|
// 机构树选项
|
|
// 机构树选项
|
|
|
formDataRules: {
|
|
formDataRules: {
|
|
|
orgId: [{ required: true, message: "请选择所属机构" }],
|
|
orgId: [{ required: true, message: "请选择所属机构" }],
|
|
|
- name: [{ required: true, message: "请输入防区名称" }],
|
|
|
|
|
|
|
+ name: [{ required: true, message: "请输入报警控制器名称" }],
|
|
|
|
|
+ alarmHostId: [{ required: true, message: "请选择报警主机" }],
|
|
|
},
|
|
},
|
|
|
};
|
|
};
|
|
|
},
|
|
},
|
|
@@ -90,6 +109,7 @@ export default {
|
|
|
orgName: null,
|
|
orgName: null,
|
|
|
name: null,
|
|
name: null,
|
|
|
allHour: 0,
|
|
allHour: 0,
|
|
|
|
|
+ alarmHostId: null,
|
|
|
};
|
|
};
|
|
|
},
|
|
},
|
|
|
async refresh(id, other) {
|
|
async refresh(id, other) {
|
|
@@ -103,7 +123,8 @@ export default {
|
|
|
|
|
|
|
|
// 事件
|
|
// 事件
|
|
|
onHide() {
|
|
onHide() {
|
|
|
- this.$refs.form.resetFields();
|
|
|
|
|
|
|
+ this.$refs.form.resetFields();
|
|
|
|
|
+ this.formData = this.reset();
|
|
|
},
|
|
},
|
|
|
onSubmit() {
|
|
onSubmit() {
|
|
|
this.$refs.form.validate(async (isValidate) => {
|
|
this.$refs.form.validate(async (isValidate) => {
|
|
@@ -116,6 +137,12 @@ export default {
|
|
|
onOrgSelect(node) {
|
|
onOrgSelect(node) {
|
|
|
this.formData.orgPath = node.path;
|
|
this.formData.orgPath = node.path;
|
|
|
this.formData.orgName = node.shortName;
|
|
this.formData.orgName = node.shortName;
|
|
|
|
|
+ listIdName({ orgId: node.id, deviceType: 1, assetType: 2 }).then((d) => {
|
|
|
|
|
+ this.alarmHostOptions = d.data;
|
|
|
|
|
+ if(!d.data.find(i=>i.id==this.formData.alarmHostId)){
|
|
|
|
|
+ this.formData.alarmHostId = null;
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
},
|
|
},
|
|
|
},
|
|
},
|
|
|
created() {},
|
|
created() {},
|