|
@@ -14,11 +14,11 @@
|
|
<el-input type="textarea" class="edit-textarea dcenter block" v-model="formData.Description" placeholder="请维护数据源说明"></el-input>
|
|
<el-input type="textarea" class="edit-textarea dcenter block" v-model="formData.Description" placeholder="请维护数据源说明"></el-input>
|
|
<el-form label-width="120px" style="width:400px;" :model="formData" class="dcenter">
|
|
<el-form label-width="120px" style="width:400px;" :model="formData" class="dcenter">
|
|
<el-form-item label="协议类型">
|
|
<el-form-item label="协议类型">
|
|
- <el-select v-model="formData.ProtocolType" filterable placeholder="请选择">
|
|
|
|
|
|
+ <el-select v-model="formData.ProtocolType" filterable @change="handleChangeProtocolType" placeholder="请选择">
|
|
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option>
|
|
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option>
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item label="主机IP地址">
|
|
|
|
|
|
+ <el-form-item label="主机IP地址" v-if="formData.ProtocolType != 'common'">
|
|
<ip-input :ip="formData.ProtocolInfo.Ip" :port="formData.ProtocolInfo.Port" :ProtocolType="formData.ProtocolType" @change="changeItem" @deletePort="deletePort"></ip-input>
|
|
<ip-input :ip="formData.ProtocolInfo.Ip" :port="formData.ProtocolInfo.Port" :ProtocolType="formData.ProtocolType" @change="changeItem" @deletePort="deletePort"></ip-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="用户名/密码" v-if="(passWordArr.indexOf(formData.ProtocolType) > -1)">
|
|
<el-form-item label="用户名/密码" v-if="(passWordArr.indexOf(formData.ProtocolType) > -1)">
|
|
@@ -28,6 +28,9 @@
|
|
<el-form-item label="ProgId" v-if="formData.ProtocolType == 'opc'">
|
|
<el-form-item label="ProgId" v-if="formData.ProtocolType == 'opc'">
|
|
<el-input v-model="formData.ProtocolInfo.ProgId" style="display:inline-block;width:100px;"></el-input>
|
|
<el-input v-model="formData.ProtocolInfo.ProgId" style="display:inline-block;width:100px;"></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
+ <el-form-item label="属性详情" v-if="formData.ProtocolType == 'common'">
|
|
|
|
+ <el-input type="textarea" :autosize="{ minRows: 8, maxRows: 8}" v-model="ProtocolInfo" placeholder="请输入json格式数据" style="display:inline-block;width:400px;"> </el-input>
|
|
|
|
+ </el-form-item>
|
|
</el-form>
|
|
</el-form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@@ -67,6 +70,7 @@
|
|
},
|
|
},
|
|
Description: ""
|
|
Description: ""
|
|
},
|
|
},
|
|
|
|
+ ProtocolInfo:"",//自定义协议信息
|
|
options: [{
|
|
options: [{
|
|
value: 'modbus-tcp',
|
|
value: 'modbus-tcp',
|
|
label: 'Modbus TCP'
|
|
label: 'Modbus TCP'
|
|
@@ -85,6 +89,9 @@
|
|
}, {
|
|
}, {
|
|
value: 'amqp',
|
|
value: 'amqp',
|
|
label: 'AMQP'
|
|
label: 'AMQP'
|
|
|
|
+ }, {
|
|
|
|
+ value: 'common',
|
|
|
|
+ label: '其他'
|
|
}],
|
|
}],
|
|
id: this.$route.query.key
|
|
id: this.$route.query.key
|
|
}
|
|
}
|
|
@@ -114,6 +121,13 @@
|
|
this.formData.ProtocolInfo.Ip = ip
|
|
this.formData.ProtocolInfo.Ip = ip
|
|
this.formData.ProtocolInfo.Port = port
|
|
this.formData.ProtocolInfo.Port = port
|
|
},
|
|
},
|
|
|
|
+ handleChangeProtocolType(val){//切换协议类型
|
|
|
|
+ if(val == 'common'){
|
|
|
|
+ this.formData.ProtocolStandarded = false
|
|
|
|
+ } else {
|
|
|
|
+ this.formData.ProtocolStandarded = true
|
|
|
|
+ }
|
|
|
|
+ },
|
|
getDataSouse() {
|
|
getDataSouse() {
|
|
let param = {
|
|
let param = {
|
|
Filters: {
|
|
Filters: {
|
|
@@ -136,6 +150,7 @@
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
//有信息点时
|
|
//有信息点时
|
|
|
|
+ this.ProtocolInfo = JSON.stringify(data.ProtocolInfo)
|
|
}
|
|
}
|
|
this.formData = data
|
|
this.formData = data
|
|
console.log(this.formData, "formData")
|
|
console.log(this.formData, "formData")
|
|
@@ -146,9 +161,18 @@
|
|
let param = tools.deepCopy(this.formData)
|
|
let param = tools.deepCopy(this.formData)
|
|
tools.delObjKey(param, "CreateTime")
|
|
tools.delObjKey(param, "CreateTime")
|
|
tools.delObjKey(param, "LastUpdate")
|
|
tools.delObjKey(param, "LastUpdate")
|
|
|
|
+ if(param.ProtocolType == 'common'){
|
|
|
|
+ try{
|
|
|
|
+ let ProtocolInfo = JSON.parse(this.ProtocolInfo)
|
|
|
|
+ param.ProtocolInfo = ProtocolInfo
|
|
|
|
+ } catch (err) {
|
|
|
|
+ this.$message.error("属性详情格式错误!")
|
|
|
|
+ return false
|
|
|
|
+ }
|
|
|
|
+ }
|
|
if (!!this.id) {
|
|
if (!!this.id) {
|
|
console.log(param.ProtocolInfo.Port)
|
|
console.log(param.ProtocolInfo.Port)
|
|
- if (param.ProtocolInfo.Port == "") {
|
|
|
|
|
|
+ if (param.ProtocolInfo.hasOwnProperty("Port") && param.ProtocolInfo.Port == "") {
|
|
delete param.ProtocolType.Port
|
|
delete param.ProtocolType.Port
|
|
}
|
|
}
|
|
updateDataSource({
|
|
updateDataSource({
|