Commit f6e0140303d2f20e8338c4a8559cbdbbb4fc54a7

Authored by guzijian
1 parent 5e56a2bf

feat: 新增事件订阅输入框

web_src/src/components/dialog/deviceEdit.vue
1 <template> 1 <template>
2 <div id="deviceEdit" v-loading="isLoging"> 2 <div id="deviceEdit" v-loading="isLoging">
3 - <el-dialog  
4 - title="设备编辑"  
5 - width="40%"  
6 - top="2rem"  
7 - :close-on-click-modal="false"  
8 - :visible.sync="showDialog"  
9 - :destroy-on-close="true"  
10 - @close="close()"  
11 - > 3 + <el-dialog title="设备编辑" width="40%" top="2rem" :close-on-click-modal="false" :visible.sync="showDialog"
  4 + :destroy-on-close="true" @close="close()">
12 <div id="shared" style="margin-top: 1rem;margin-right: 100px;"> 5 <div id="shared" style="margin-top: 1rem;margin-right: 100px;">
13 - <el-form ref="form" :rules="rules" :model="form" label-width="200px" > 6 + <el-form ref="form" :rules="rules" :model="form" label-width="200px">
14 <el-form-item label="设备编号" prop="deviceId"> 7 <el-form-item label="设备编号" prop="deviceId">
15 <el-input v-if="isEdit" v-model="form.deviceId" disabled></el-input> 8 <el-input v-if="isEdit" v-model="form.deviceId" disabled></el-input>
16 <el-input v-if="!isEdit" v-model="form.deviceId" clearable></el-input> 9 <el-input v-if="!isEdit" v-model="form.deviceId" clearable></el-input>
@@ -26,40 +19,40 @@ @@ -26,40 +19,40 @@
26 <el-input type="sdpIp" v-model="form.sdpIp" clearable></el-input> 19 <el-input type="sdpIp" v-model="form.sdpIp" clearable></el-input>
27 </el-form-item> 20 </el-form-item>
28 <el-form-item label="流媒体ID" prop="mediaServerId"> 21 <el-form-item label="流媒体ID" prop="mediaServerId">
29 - <el-select v-model="form.mediaServerId" style="float: left; width: 100%" > 22 + <el-select v-model="form.mediaServerId" style="float: left; width: 100%">
30 <el-option key="auto" label="自动负载最小" value="auto"></el-option> 23 <el-option key="auto" label="自动负载最小" value="auto"></el-option>
31 - <el-option  
32 - v-for="item in mediaServerList"  
33 - :key="item.id"  
34 - :label="item.id"  
35 - :value="item.id"> 24 + <el-option v-for="item in mediaServerList" :key="item.id" :label="item.id" :value="item.id">
36 </el-option> 25 </el-option>
37 </el-select> 26 </el-select>
38 </el-form-item> 27 </el-form-item>
39 28
40 - <el-form-item label="字符集" prop="charset" >  
41 - <el-select v-model="form.charset" style="float: left; width: 100%" >  
42 - <el-option key="GB2312" label="GB2312" value="gb2312"></el-option> 29 + <el-form-item label="字符集" prop="charset">
  30 + <el-select v-model="form.charset" style="float: left; width: 100%">
  31 + <el-option key="GB2312" label="GB2312" value="gb2312"></el-option>
43 <el-option key="UTF-8" label="UTF-8" value="utf-8"></el-option> 32 <el-option key="UTF-8" label="UTF-8" value="utf-8"></el-option>
44 </el-select> 33 </el-select>
45 </el-form-item> 34 </el-form-item>
46 <el-form-item label="语音发送通道" prop="name"> 35 <el-form-item label="语音发送通道" prop="name">
47 <el-input v-model="form.audioChannelForReceive" clearable></el-input> 36 <el-input v-model="form.audioChannelForReceive" clearable></el-input>
48 </el-form-item> 37 </el-form-item>
49 - <el-form-item label="地理坐标系" prop="geoCoordSys" >  
50 - <el-select v-model="form.geoCoordSys" style="float: left; width: 100%" > 38 + <el-form-item label="地理坐标系" prop="geoCoordSys">
  39 + <el-select v-model="form.geoCoordSys" style="float: left; width: 100%">
51 <el-option key="WGS84" label="WGS84" value="WGS84"></el-option> 40 <el-option key="WGS84" label="WGS84" value="WGS84"></el-option>
52 <el-option key="GCJ02" label="GCJ02" value="GCJ02"></el-option> 41 <el-option key="GCJ02" label="GCJ02" value="GCJ02"></el-option>
53 </el-select> 42 </el-select>
54 </el-form-item> 43 </el-form-item>
55 - <el-form-item v-if="this.isEdit" label="目录订阅" title="0为取消订阅" prop="subscribeCycleForCatalog" >  
56 - <el-input v-model="form.subscribeCycleForCatalog" clearable ></el-input> 44 + <el-form-item v-if="this.isEdit" label="目录订阅" title="0为取消订阅" prop="subscribeCycleForCatalog">
  45 + <el-input v-model="form.subscribeCycleForCatalog" clearable></el-input>
57 </el-form-item> 46 </el-form-item>
58 - <el-form-item v-if="this.isEdit" label="移动位置订阅" title="0为取消订阅" prop="subscribeCycleForCatalog" >  
59 - <el-input v-model="form.subscribeCycleForMobilePosition" clearable ></el-input> 47 + <el-form-item v-if="this.isEdit" label="报警订阅" title="0为取消订阅" prop="subscribeCycleForAlarm">
  48 + <el-input v-model="form.subscribeCycleForAlarm" clearable></el-input>
60 </el-form-item> 49 </el-form-item>
61 - <el-form-item v-if="form.subscribeCycleForMobilePosition > 0" label="移动位置报送间隔" prop="subscribeCycleForCatalog" >  
62 - <el-input v-model="form.mobilePositionSubmissionInterval" clearable ></el-input> 50 + <el-form-item v-if="this.isEdit" label="移动位置订阅" title="0为取消订阅" prop="subscribeCycleForCatalog">
  51 + <el-input v-model="form.subscribeCycleForMobilePosition" clearable></el-input>
  52 + </el-form-item>
  53 + <el-form-item v-if="form.subscribeCycleForMobilePosition > 0" label="移动位置报送间隔"
  54 + prop="subscribeCycleForCatalog">
  55 + <el-input v-model="form.mobilePositionSubmissionInterval" clearable></el-input>
63 </el-form-item> 56 </el-form-item>
64 <el-form-item label="其他选项"> 57 <el-form-item label="其他选项">
65 <el-checkbox label="SSRC校验" v-model="form.ssrcCheck" style="float: left"></el-checkbox> 58 <el-checkbox label="SSRC校验" v-model="form.ssrcCheck" style="float: left"></el-checkbox>
@@ -68,7 +61,7 @@ @@ -68,7 +61,7 @@
68 </el-form-item> 61 </el-form-item>
69 <el-form-item> 62 <el-form-item>
70 <div style="float: right;"> 63 <div style="float: right;">
71 - <el-button type="primary" @click="onSubmit" >确认</el-button> 64 + <el-button type="primary" @click="onSubmit">确认</el-button>
72 <el-button @click="close">取消</el-button> 65 <el-button @click="close">取消</el-button>
73 </div> 66 </div>
74 67
@@ -80,20 +73,20 @@ @@ -80,20 +73,20 @@
80 </template> 73 </template>
81 74
82 <script> 75 <script>
83 -import MediaServer from '../service/MediaServer' 76 +import MediaServer from '../service/MediaServer';
84 export default { 77 export default {
85 name: "deviceEdit", 78 name: "deviceEdit",
86 props: {}, 79 props: {},
87 computed: {}, 80 computed: {},
88 - created() {}, 81 + created() { },
89 data() { 82 data() {
90 return { 83 return {
91 listChangeCallback: null, 84 listChangeCallback: null,
92 showDialog: false, 85 showDialog: false,
93 isLoging: false, 86 isLoging: false,
94 - hostNames:[], 87 + hostNames: [],
95 mediaServerList: [], // 滅体节点列表 88 mediaServerList: [], // 滅体节点列表
96 - mediaServerObj : new MediaServer(), 89 + mediaServerObj: new MediaServer(),
97 form: {}, 90 form: {},
98 isEdit: false, 91 isEdit: false,
99 rules: { 92 rules: {
@@ -116,27 +109,28 @@ export default { @@ -116,27 +109,28 @@ export default {
116 } 109 }
117 this.getMediaServerList(); 110 this.getMediaServerList();
118 }, 111 },
119 - getMediaServerList: function (){ 112 + getMediaServerList: function () {
120 let that = this; 113 let that = this;
121 - that.mediaServerObj.getOnlineMediaServerList((data)=>{ 114 + that.mediaServerObj.getOnlineMediaServerList((data) => {
122 that.mediaServerList = data.data; 115 that.mediaServerList = data.data;
123 }) 116 })
124 }, 117 },
125 onSubmit: function () { 118 onSubmit: function () {
126 console.log("onSubmit"); 119 console.log("onSubmit");
127 console.log(this.form); 120 console.log(this.form);
128 - this.form.subscribeCycleForCatalog = this.form.subscribeCycleForCatalog||0  
129 - this.form.subscribeCycleForMobilePosition = this.form.subscribeCycleForMobilePosition||0  
130 - this.form.mobilePositionSubmissionInterval = this.form.mobilePositionSubmissionInterval||0 121 + this.form.subscribeCycleForCatalog = this.form.subscribeCycleForCatalog || 0
  122 + this.form.subscribeCycleForMobilePosition = this.form.subscribeCycleForMobilePosition || 0
  123 + this.form.mobilePositionSubmissionInterval = this.form.mobilePositionSubmissionInterval || 0
  124 + this.form.subscribeCycleForAlarm = this.form.subscribeCycleForAlarm || 0
131 this.$axios({ 125 this.$axios({
132 method: 'post', 126 method: 'post',
133 - url:`/api/device/query/device/${this.isEdit?'update':'add'}/`, 127 + url: `/api/device/query/device/${this.isEdit ? 'update' : 'add'}/`,
134 params: this.form 128 params: this.form
135 }).then((res) => { 129 }).then((res) => {
136 console.log(res.data) 130 console.log(res.data)
137 if (res.data.code === 0) { 131 if (res.data.code === 0) {
138 this.listChangeCallback() 132 this.listChangeCallback()
139 - }else { 133 + } else {
140 this.$message({ 134 this.$message({
141 showClose: true, 135 showClose: true,
142 message: res.data.msg, 136 message: res.data.msg,