11.7代码提交

This commit is contained in:
luoshiwen 2024-11-07 14:11:57 +08:00
parent 711811ac2e
commit 64b259d487
78 changed files with 6261 additions and 2358 deletions

BIN
dist.zip Normal file

Binary file not shown.

370
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -21,9 +21,10 @@
"sass-loader": "^13.3.2",
"scss-loader": "^0.0.1",
"vue": "^2.7.15",
"vue-i18n": "^8.28.2",
"vue-prism-editor": "^1.3.0",
"vue-router": "^3.5.1",
"vuex": "^4.1.0"
"vuex": "^3.6.2"
},
"devDependencies": {
"@babel/core": "^7.12.16",

3
public/config.js Normal file
View File

@ -0,0 +1,3 @@
const config = {
url:'http://111.229.30.246:10014/'
}

View File

@ -6,6 +6,7 @@
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<title><%= htmlWebpackPlugin.options.title %></title>
<script src="./config.js"></script>
</head>
<body>
<noscript>

View File

@ -2,5 +2,5 @@ import axios from "axios";
//获取正确答案
export let queryallanswer = () =>
axios.get(
"http://111.229.30.246:10013/Handler/Config.ashx?action=queryallanswer"
config.url + "/Handler/Config.ashx?action=queryallanswer"
);

View File

@ -1,8 +1,8 @@
import axios from "axios";
//axios.defaults.baseURL = "http://inspur.dev.umayle.com/";
// axios.defaults.baseURL = "http://172.16.1.254:10014/";
axios.defaults.baseURL = config.url;
// axios.defaults.baseURL = "http://192.168.4.202:8085"
axios.defaults.baseURL = "http://10.10.74.235:10014/";
// axios.defaults.baseURL = "http://10.10.74.235:10014/";
export const SaveUserAnswer = (data) => {
return axios.post(
`/Handler/Config.ashx?action=updatecache&mark=${data.mark}&user_id=${data.user_id}&mark_value=${data.mark_value}&step=${data.step}`
@ -37,3 +37,48 @@ export const getGrade = (data) => {
`/Handler/Config.ashx?action=displaychart&user_id=${data.user_id}`
);
};
// 获取正确答案和默认值的接口
export const getQueryAnswer = (data) =>{
return axios.get(
`/Handler/Config.ashx?action=queryanswer&mark=${data.mark}&user_id=${data.user_id}`
);
}
// 用户获取理论考试
export const getKnowledgeTest = (data) =>{
return axios.post(
`/Handler/User.ashx?action=logintheory&user_id=${data.userId}&PageIndex=${data.PageIndex}&PageSize=${data.PageSize}&State=${data.state}`
);
}
// 获取批次试卷题目列表信息
export const getTestTopic = (data) =>{
return axios.post(
`/Handler/Boat.ashx?action=theorylist&batch_id=${data.id}&kind=${data.kind}`
);
}
//获取题目选项信息
export const getTopicDetail = (data) =>{
return axios.post(
`/Handler/Boat.ashx?action=theorybase&theory_base_id=${data.theoryBaseId}`
);
}
// 提交理论考试答案
export const savaTestAnswer = (data) =>{
return axios({
url:`/Handler/Boat.ashx?action=savetheory`,
data: data,
method:'post',
headers: {'Content-Type': 'multipart/form-data'}
});
}
// 获取缓存数据
export const getTestCache = (params) =>{
return axios.get(
`/Handler/Boat.ashx?action=gettheorycache`,{params:params}
);
}
// 保存缓存数据
export const saveTestCache = (data) =>{
return axios.post(
`/Handler/Boat.ashx?action=savetheorycache`,data,{headers: {'Content-Type': 'multipart/form-data'}}
);
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 986 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

BIN
src/assets/image/next.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

BIN
src/assets/image/pre-no.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

BIN
src/assets/image/pre.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

BIN
src/assets/image/prompt.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 336 KiB

BIN
src/assets/image/submit.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 390 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 835 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

BIN
src/assets/image/test.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 987 KiB

BIN
src/assets/image/默认.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -2,7 +2,7 @@
<div>
<div>
<el-dialog
title="添加策略"
:title="$t('addstrategy.title')"
:visible.sync="dialogVisible1"
width="82%"
:center="true"
@ -11,13 +11,13 @@
:model="ruleForm1"
:rules="rules1"
ref="ruleForm1"
label-width="150px"
label-width="100px"
class="demo-ruleForm1"
:label-position="labelPosition"
>
<el-row :justify="center">
<el-col :span="6">
<el-form-item label="名称:" prop="clgl_name">
<el-form-item :label="$t('addstrategy.name')" prop="clgl_name">
<el-col :span="19">
<el-select
v-model="ruleForm1.clgl_name"
@ -34,7 +34,7 @@
</el-col>
</el-form-item>
<el-form-item label="源对象:" prop="clgl_ydx" style="color: red">
<el-form-item :label="$t('addstrategy.sourceObject')" prop="clgl_ydx" style="color: red">
<el-col :span="19">
<el-select
v-model="ruleForm1.clgl_ydx"
@ -51,7 +51,7 @@
</el-col>
</el-form-item>
<el-row>
<el-form-item label="入口网关" prop="clgl_rkwg">
<el-form-item :label="$t('addstrategy.entranceGateway')" prop="clgl_rkwg">
<el-row>
<el-col :span="5">
<el-input v-model="ruleForm1.clgl_rkwg1"></el-input>
@ -72,7 +72,7 @@
</el-form-item>
</el-row>
<el-row>
<el-form-item label="出口网关" prop="clgl_ckwg">
<el-form-item :label="$t('addstrategy.exportGateway')" prop="clgl_ckwg">
<el-row>
<el-col :span="5">
<el-input v-model="ruleForm1.clgl_ckwg1"></el-input>
@ -94,7 +94,7 @@
</el-row>
</el-col>
<el-col :span="6">
<el-form-item label="协议:" prop="clgl_xy">
<el-form-item :label="$t('addstrategy.protocol')" prop="clgl_xy">
<el-col :span="19">
<el-select
v-model="ruleForm1.clgl_xy"
@ -111,12 +111,12 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="源端口:" prop="clgl_ydk">
<el-form-item :label="$t('addstrategy.sourcePort')" prop="clgl_ydk">
<el-col :span="19">
<el-input v-model="ruleForm1.clgl_ydk"></el-input>
</el-col>
</el-form-item>
<el-form-item label="入口网卡:" prop="clgl_rkwk">
<el-form-item :label="$t('addstrategy.entranceNetworkCard')" prop="clgl_rkwk">
<el-col :span="19">
<el-select
v-model="ruleForm1.clgl_rkwk"
@ -127,7 +127,7 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="出口网卡:" prop="clgl_ckwk">
<el-form-item :label="$t('addstrategy.exportNetworkCard')" prop="clgl_ckwk">
<el-col :span="19">
<el-select
v-model="ruleForm1.clgl_ckwk"
@ -139,7 +139,7 @@
></el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="工作模式:" prop="clgl_gzms">
<el-form-item :label="$t('addstrategy.workingMode')" prop="clgl_gzms">
<el-col :span="19">
<el-select v-model="ruleForm1.clgl_gzms" placeholder="请选择">
<el-option
@ -152,7 +152,7 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="目的对象:" prop="clgl_mddx">
<el-form-item :label="$t('addstrategy.targetObject')" prop="clgl_mddx">
<el-col :span="19">
<el-select v-model="ruleForm1.clgl_mddx">
<el-option
@ -165,7 +165,7 @@
</el-col>
</el-form-item>
<el-row>
<el-form-item label="入口IP" prop="clgl_rkip">
<el-form-item :label="$t('addstrategy.entranceIP')" prop="clgl_rkip">
<el-row>
<el-col :span="5">
<el-input v-model="ruleForm1.clgl_rkip1"></el-input>
@ -186,7 +186,7 @@
</el-form-item>
</el-row>
<el-row>
<el-form-item label="出口IP" prop="clgl_ckip">
<el-form-item :label="$t('addstrategy.exportIP')" prop="clgl_ckip">
<el-row>
<el-col :span="5">
<el-input v-model="ruleForm1.clgl_ckip1"></el-input>
@ -208,7 +208,7 @@
</el-row>
</el-col>
<el-col :span="6">
<el-form-item label="未定义命令:" prop="clgl_wdyml">
<el-form-item :label="$t('addstrategy.undefinedCommand')" prop="clgl_wdyml">
<el-col :span="19">
<el-select
v-model="ruleForm1.clgl_wdyml"
@ -224,7 +224,7 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="目的端口:" prop="clgl_mddk">
<el-form-item :label="$t('addstrategy.targetPort')" prop="clgl_mddk">
<el-col :span="19">
<el-input v-model="ruleForm1.clgl_mddk"> </el-input>
</el-col>
@ -232,7 +232,7 @@
</el-col>
</el-row>
</el-form>
<span style="color: #fff">记录日志</span>
<span style="color: #fff">{{$t('addstrategy.recordLogs')}}</span>
<el-switch style="margin-left: 6%" v-model="switchvalue"> </el-switch>
<div
class="title"
@ -243,26 +243,26 @@
"
>
<h3 style="margin-top: 10px; margin-bottom: 3px; color: #fff4">
命令列表
{{$t('addstrategy.commandList')}}
</h3>
<el-button @click="flag = true">新增命令</el-button>
<el-button @click="flag = true">{{$t('addstrategy.createCommand')}}</el-button>
</div>
<el-divider></el-divider>
<el-table :data="tableData1" style="width: 100%" border>
<el-table-column label="序号">
<el-table-column :label="$t('addstrategy.num')">
<template slot-scope="scope">
{{ scope.$index + 1 }}
</template></el-table-column
>
<el-table-column prop="cmdlist_ml" label="命令(功能码)">
<el-table-column prop="cmdlist_ml" :label="$t('addstrategy.command')">
</el-table-column>
<el-table-column prop="cmdlist_qsdz" label="起始地址">
<el-table-column prop="cmdlist_qsdz" :label="$t('addstrategy.startingAddress')">
</el-table-column>
<el-table-column prop="cmdlist_dzcd" label="地址长度">
<el-table-column prop="cmdlist_dzcd" :label="$t('addstrategy.addressLength')">
</el-table-column>
<el-table-column prop="cmdlist_ms" label="描述"> </el-table-column>
<el-table-column prop="cmdlist_dz" label="动作"> </el-table-column>
<el-table-column label="操作">
<el-table-column prop="cmdlist_ms" :label="$t('addstrategy.description')"> </el-table-column>
<el-table-column prop="cmdlist_dz" :label="$t('addstrategy.action')"> </el-table-column>
<el-table-column :label="$t('addstrategy.Operation')">
<template slot-scope="scope">
<!-- <el-button
@click="handleClick(scope.row)"
@ -274,19 +274,19 @@
type="text"
size="small"
@click="handleDel(scope.$index, scope.row)"
>删除</el-button
>{{$t('del')}}</el-button
>
</template>
</el-table-column>
</el-table>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="saveAll"> </el-button>
<el-button @click="dialogVisible1 = false"> </el-button>
<el-button type="primary" @click="saveAll">{{ $t('save') }}</el-button>
<el-button @click="dialogVisible1 = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
<div>
<el-dialog title="新增命令" :visible.sync="flag" width="30%">
<el-dialog :title="$t('addstrategy.createCommand')+':'" :visible.sync="flag" width="30%">
<el-form
center
:model="ruleForm2"
@ -296,7 +296,7 @@
class="demo-ruleForm2"
:label-position="labelPosition"
>
<el-form-item label="命令:" prop="cmdlist_ml">
<el-form-item :label="$t('addstrategy.command')+':'" prop="cmdlist_ml">
<el-col :span="6">
<el-select v-model="ruleForm2.cmdlist_ml" style="width: 200px">
<el-option
@ -310,7 +310,7 @@
</el-col>
</el-form-item>
<el-form-item label="设备ID:" prop="cmdlist_sbid" style="color: red">
<el-form-item :label="$t('addstrategy.deviceID')+':'" prop="cmdlist_sbid" style="color: red">
<el-col :span="6">
<el-select v-model="ruleForm2.cmdlist_sbid" style="width: 200px">
<el-option
@ -323,19 +323,19 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="起始地址:" prop="cmdlist_qsdz">
<el-form-item :label="$t('addstrategy.startingAddress')+':'" prop="cmdlist_qsdz">
<el-col :span="6">
<el-input v-model="ruleForm2.cmdlist_qsdz" style="width: 200px">
</el-input>
</el-col>
</el-form-item>
<el-form-item label="地址长度:" prop="cmdlist_dzcd">
<el-form-item :label="$t('addstrategy.addressLength')+':'" prop="cmdlist_dzcd">
<el-col :span="6">
<el-input v-model="ruleForm2.cmdlist_dzcd" style="width: 200px">
</el-input>
</el-col>
</el-form-item>
<el-form-item label="描述:" prop="cmdlist_ms">
<el-form-item :label="$t('addstrategy.description')" prop="cmdlist_ms">
<el-col :span="6">
<el-input
v-model="ruleForm2.cmdlist_ms"
@ -343,7 +343,7 @@
></el-input
></el-col>
</el-form-item>
<el-form-item label="动作:" prop="cmdlist_dz">
<el-form-item :label="$t('addstrategy.action') +':' " prop="cmdlist_dz">
<el-col :span="6">
<el-select v-model="ruleForm2.cmdlist_dz" style="width: 200px">
<el-option
@ -358,8 +358,8 @@
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="saveMl">保存</el-button>
<el-button @click="flag = false"> </el-button>
<el-button type="primary" @click="saveMl">{{ $t('save') }}</el-button>
<el-button @click="flag = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
@ -367,7 +367,7 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer } from "../api/user";
import {SaveUserAnswer, GetUserAnswer, getQueryAnswer} from "../api/user";
export default {
name: "InternetCompetitionAddPolicy",
@ -676,11 +676,20 @@ export default {
flag: false,
json: {},
arr: [],
user_id:'',
};
},
mounted() {
let str = window.location.href.split("?")[1];
this.user_id = decodeURIComponent(str).split("|")[0];
let type = decodeURIComponent(str).split("|")[1];
if (type == 1) {
this.$store.commit("setType", "GYWZ_yx");
} else {
this.$store.commit("setType", "GYWZ_wx");
}
// alert(this.$route.query.id, this.$store.state.type);
console.log(this.user_id, this.$store.state.type);
this.GetUserAnswer();
},
@ -815,7 +824,7 @@ export default {
console.log(obj);
let { data } = await SaveUserAnswer({
mark: this.$store.state.type,
user_id: this.$route.query.id,
user_id: this.user_id,
// mark: "GYWZ_wx",
// user_id: "USER202307301109254198",
mark_value: JSON.stringify(obj),
@ -835,11 +844,47 @@ export default {
async GetUserAnswer() {
let { data } = await GetUserAnswer({
mark: this.$store.state.type,
user_id: this.$route.query.id,
user_id: this.user_id,
// mark: "GYWZ_wx",
// user_id: "USER202307301109254198",
});
if(!data.state){
getQueryAnswer({
mark: this.$store.state.type,
user_id: this.user_id
}).then(res1 => {
console.log(JSON.parse(res1.data.data.r2),'xxxxxxxxxxx');
if(res1.data.data){
let res = JSON.parse(res1.data.data.r2);
this.clgl_name = res.clgl_name;
this.clgl_xy = res.clgl_xy;
this.clgl_gzms = res.clgl_gzms;
this.clgl_mddk = res.clgl_mddk;
this.clgl_ydx = res.clgl_ydx;
this.clgl_ydk = res.clgl_ydk;
this.clgl_mddk = res.clgl_mddk;
this.clgl_rkwk = res.clgl_rkwk;
this.clgl_wdyml = res.clgl_wdyml;
this.clgl_ckwk = res.clgl_ckwk;
this.wlgl_nw_name = res.wlgl_nw_name;
this.wlgl_nw_ip = res.wlgl_nw_ip;
this.wlgl_nw_zwym = res.wlgl_nw_zwym;
this.wlgl_ww_name = res.wlgl_ww_name;
this.wlgl_ww_ip = res.wlgl_ww_ip;
this.wlgl_ww_zwym = res.wlgl_ww_zwym;
this.dxgl = [].concat(res.dxgl);
this.cmdlist_ml = res.cmdlist_ml;
this.cmdlist_sbid = res.cmdlist_sbid;
this.cmdlist_qsdz = res.cmdlist_qsdz;
this.cmdlist_dzcd = res.cmdlist_dzcd;
this.cmdlist_ms = res.cmdlist_ms;
this.cmdlist_dz = res.cmdlist_dz;
}
})
}
if (data.data && data.state) {
console.log(JSON.parse(data.data.mark_value),'xxxxxxxxxxx');
let res = JSON.parse(data.data.mark_value);
console.log(res);
this.clgl_name = res.clgl_name;
@ -865,7 +910,6 @@ export default {
this.cmdlist_dzcd = res.cmdlist_dzcd;
this.cmdlist_ms = res.cmdlist_ms;
this.cmdlist_dz = res.cmdlist_dz;
console.log(res);
}
// console.log(this.dxgl);
this.dxgl.forEach((item) => {
@ -917,7 +961,7 @@ export default {
console.log(obj);
let { data } = await SaveUserAnswer({
mark: this.$store.state.type,
user_id: this.$route.query.id,
user_id: this.user_id,
// mark: "GYWZ_wx",
// user_id: "USER202307301109254198",
mark_value: JSON.stringify(obj),
@ -976,7 +1020,7 @@ export default {
};
let { data } = await SaveUserAnswer({
mark: this.$store.state.type,
user_id: this.$route.query.id,
user_id: this.user_id,
// mark: "GYWZ_wx",
// user_id: "USER202307301109254198",
mark_value: JSON.stringify(obj),

View File

@ -24,10 +24,10 @@
<!-- 树形控件右键组件 -->
</div>
<!-- </div> -->
<div class="pas_params" v-show="add_passage" v-loading="loading">
<div :class="$i18n.locale==='zh'?'zh_params pas_params':'pas_params'" v-show="add_passage" v-loading="loading">
<div class="content">
<div class="con_left">
<h3 class="mqtt" style="margin-top: 20px; color: white">标准 MQTT</h3>
<h3 class="mqtt" style="margin-top: 20px; color: white">{{ $t('chmqtt.title') }}</h3>
<el-divider></el-divider>
<el-form
:model="formData"
@ -38,14 +38,14 @@
<el-row>
<el-col :span="24">
<el-form-item>
<el-checkbox v-model="mqtt_qiyong">启用</el-checkbox>
<el-checkbox v-model="mqtt_qiyong">{{ $t('chmqtt.enable') }}</el-checkbox>
</el-form-item>
</el-col>
</el-row>
<el-row class="serveIp">
<el-col :span="24">
<el-form-item
label="服务器IP:"
:label="$t('chmqtt.serveIp')"
:label-width="formLabelWidth"
prop="mqtt_ip"
>
@ -88,7 +88,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="网关SN:"
:label="$t('chmqtt.GatewaySN')"
:label-width="formLabelWidth"
prop="mqtt_wgsn"
>
@ -103,7 +103,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="端口:"
:label="$t('chmqtt.port')"
:label-width="formLabelWidth"
prop="mqtt_port"
>
@ -132,11 +132,11 @@
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-col :span="24" style="padding-right: 0">
<el-form-item
label="实施数据发布主题:"
:label-width="formLabelWidth"
prop="mqtt_keepalive"
:label="$t('chmqtt.realTimePublish')"
prop="mqtt_sssjfbzt"
>
<el-input
v-model="formData.mqtt_sssjfbzt"
@ -160,7 +160,7 @@
</el-form-item>
</el-col>
</el-row> -->
<h3 class="info_play">信息发布</h3>
<h3 class="info_play">{{$t('chmqtt.release')}}</h3>
<el-divider></el-divider>
<el-row>
@ -175,7 +175,7 @@
>
<el-select
v-model="formData.mqtt_qos"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -213,8 +213,8 @@
</el-col>
</el-row> -->
<div class="con_left_footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="add_passage = true"> </el-button>
<el-button type="primary" @click="submitForm">{{$t('save')}}</el-button>
<el-button @click="add_passage = true">{{$t('cancel')}}</el-button>
</div>
</el-form>
</div>
@ -234,7 +234,7 @@
</div>
<el-table ref="singleTable" :data="tableData" style="width: 100%">
<el-table-column type="index"> </el-table-column>
<el-table-column property="mqtt_cjd_sbmc" label="设备名称">
<el-table-column property="mqtt_cjd_sbmc" :label="$t('chmqtt.deviceName')">
<template slot-scope="scope">
<el-select v-model="scope.row.mqtt_cjd_sbmc" placeholder="">
<el-option
@ -275,26 +275,26 @@
>
</el-tree>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="savePoint"> </el-button>
<el-button @click="choose_point = false"> </el-button>
<el-button type="primary" @click="savePoint">{{ $t('save') }}</el-button>
<el-button @click="choose_point = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
<!-- 网关信息 -->
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form
:model="formData"
:rules="rulesGate"
ref="gateWay"
label-width="85px"
:label-width="$i18n.locale==='zh'?'130px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="formData.wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -306,10 +306,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="formData.wgpz_wgid"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -323,8 +323,8 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitGate">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitGate">{{$t('save')}}</el-button>
<el-button @click="outerVisible = false">{{$t('cancel')}}</el-button>
</div>
</el-dialog>
</div>
@ -332,7 +332,7 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
import { PrismEditor } from "vue-prism-editor";
import "vue-prism-editor/dist/prismeditor.min.css"; // import the styles somewhere
// import highlighting library (you can use any library you want just return html string)
@ -460,7 +460,7 @@ export default {
},
],
labelPosition: "left",
formLabelWidth: "145px",
formLabelWidth: this.$i18n.locale==='zh'?"200px":"145px",
input1: 192,
add_passage: true,
rightMenu: "",
@ -523,18 +523,21 @@ export default {
},
],
mqtt_wgsn: [
{ required: true, message: "请输入网关SN", trigger: "blur" },
{ required: true, message:this.$t('chmqtt.rules.mqtt_wgsn'), trigger: "blur" },
],
mqtt_port: [{ required: true, message: "请输入端口", trigger: "blur" }],
mqtt_port: [{ required: true, message: this.$t('chmqtt.rules.mqtt_port'), trigger: "blur" }],
mqtt_keepalive: [
{ required: true, message: "请输入KeepAlive", trigger: "blur" },
{ required: true, message: this.$t('chmqtt.rules.mqtt_keepalive'), trigger: "blur" },
],
mqtt_sssjfbzt: [
{ required: true, message: "请输入上传模式", trigger: "blur" },
{ required: true, message: this.$t('chmqtt.rules.mqtt_publishing'), trigger: "blur" },
],
mqtt_qos: [
{ required: true, message: "请输入上传周期", trigger: "blur" },
],
mqtt_publishing:[
{ required: true, message:this.$t('chmqtt.rules.mqtt_publishing'), trigger: "blur" }
]
// data_filter: [
// { required: true, message: "", trigger: "blur" },
// ],
@ -549,22 +552,13 @@ export default {
},
rulesGate: {
wgpz_wgmc: [
{ required: true, message: "请选择网关名称", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgmc'), trigger: "blur" },
],
wgpz_wgid: [
{ required: true, message: "请选择网关id", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgid'), trigger: "blur" },
],
},
opts1: [
{
value: "有线区网关2",
label: "有线区网关2",
},
{
value: "无线区网关2",
label: "无线区网关2",
},
],
opts1:this.$t('dbcollectiongate.options2'),
opts2: [
{
value: "LAN-BOX2",
@ -601,7 +595,7 @@ export default {
this.mqtt_ip4 ===
"..."
) {
callback(new Error("请输入IP地址"));
callback(new Error(this.$t('chmqtt.rules.mqtt_ip')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.mqtt_ip1 +
@ -613,7 +607,7 @@ export default {
this.mqtt_ip4
)
) {
callback(new Error("请输入有效的IP地址"));
callback(new Error(this.$t('chmqtt.rules.mqtt_ip1')));
} else {
callback();
}
@ -805,6 +799,65 @@ export default {
this.formData.cjdpz_scms = obj.cjdpz_scms;
this.tableData[0].mqtt_cjd_sbmc = obj.sbpz_sbmc;
this.tableData[0].mqtt_cjd_tagid = obj.cjdpz_tagid;
}else{
getQueryAnswer({
mark: "CHGYWG_yx",
user_id: this.user_id
}).then(res => {
if (res.data.data.step) {
this.step = res.data.data.step;
}
// console.log(JSON.parse(data.data.mark_value));
let obj = JSON.parse(res.data.data.r3);
if (obj.mqtt_ip) {
// this.formData.mqtt_qiyong = Boolean(Number(obj.mqtt_qiyong));
// console.log(obj.mqtt_qiyong);
// console.log(this.formData.mqtt_qiyong);
this.mqtt_ip1 = obj.mqtt_ip.split(".")[0];
this.mqtt_ip2 = obj.mqtt_ip.split(".")[1];
this.mqtt_ip3 = obj.mqtt_ip.split(".")[2];
this.mqtt_ip4 = obj.mqtt_ip.split(".")[3];
this.formData.mqtt_ip = obj.mqtt_ip;
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_keepalive = obj.mqtt_keepalive;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_qos = obj.mqtt_qos;
}
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_kzqxy = obj.sbpz_kzqxy;
this.formData.sbpz_ip = obj.sbpz_ip;
this.formData.sbpz_port = obj.sbpz_port;
this.formData.sbpz_czdz = obj.sbpz_czdz;
this.formData.sbpz_lxzq = obj.sbpz_lxzq;
this.formData.sbpz_qyhmcj = obj.sbpz_qyhmcj;
this.formData.sbpz_qyplcj = obj.sbpz_qyplcj;
this.formData.sbpz_zdplcjs = obj.sbpz_zdplcjs;
this.formData.sbpz_cjcgsj = obj.sbpz_cjcgsj;
this.formData.sbpz_zqsbonchange = obj.sbpz_zqsbonchange;
this.formData.sbpz_txsjjg = obj.sbpz_txsjjg;
this.formData.sbpz_xqjcqxr = obj.sbpz_xqjcqxr;
this.formData.sbpz_bcjcqxr = obj.sbpz_bcjcqxr;
this.formData.wgpz_wgid = obj.wgpz_wgid;
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.ippz_wllx = obj.ippz_wllx;
this.formData.ippz_ip = obj.ippz_ip;
this.formData.ippz_zwym = obj.ippz_zwym;
this.formData.ippz_wg = obj.ippz_wg;
this.formData.ippz_dns = obj.ippz_dns;
this.formData.ippz_dns_by = obj.ippz_dns_by;
this.formData.cjdpz_tagid = obj.cjdpz_tagid;
this.formData.cjdpz_mc = obj.cjdpz_mc;
this.formData.cjdpz_sjq = obj.cjdpz_sjq;
this.formData.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formData.cjdpz_scms = obj.cjdpz_scms;
this.tableData[0].mqtt_cjd_sbmc = obj.sbpz_sbmc;
this.tableData[0].mqtt_cjd_tagid = obj.cjdpz_tagid;
})
}
},
async sendTree() {
@ -866,6 +919,7 @@ export default {
</script>
<style lang="less" scoped>
.tree_menu {
position: absolute;
width: 286px;
@ -883,7 +937,7 @@ export default {
/deep/ .pas_params {
.info_play {
width: 86px;
//width: 86px;
height: 20px;
color: white;
font-size: 14px;
@ -1008,7 +1062,11 @@ export default {
}
}
}
/deep/ .zh_params{
.el-col-24 {
padding-right: 300px;
}
}
/deep/ .serveIp {
.el-form-item__error {
padding-top: 0px !important;

View File

@ -24,10 +24,10 @@
<!-- 树形控件右键组件 -->
</div>
<!-- </div> -->
<div class="pas_params" v-show="add_passage" v-loading="loading">
<div :class="$i18n.locale==='zh'?'zh_params pas_params':'pas_params'" v-show="add_passage" v-loading="loading">
<div class="content">
<div class="con_left">
<h3 class="mqtt" style="margin-top: 20px; color: white">标准 MQTT</h3>
<h3 class="mqtt" style="margin-top: 20px; color: white">{{ $t('chmqtt.title') }}</h3>
<el-divider></el-divider>
<el-form
:model="formData"
@ -38,14 +38,14 @@
<el-row>
<el-col :span="24">
<el-form-item>
<el-checkbox v-model="mqtt_qiyong">启用</el-checkbox>
<el-checkbox v-model="mqtt_qiyong">{{ $t('chmqtt.enable') }}</el-checkbox>
</el-form-item>
</el-col>
</el-row>
<el-row class="serveIp">
<el-col :span="24">
<el-form-item
label="服务器IP:"
:label="$t('chmqtt.serveIp')"
:label-width="formLabelWidth"
prop="mqtt_ip"
>
@ -88,7 +88,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="网关SN:"
:label="$t('chmqtt.GatewaySN')"
:label-width="formLabelWidth"
prop="mqtt_wgsn"
>
@ -103,7 +103,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="端口:"
:label="$t('chmqtt.port')"
:label-width="formLabelWidth"
prop="mqtt_port"
>
@ -132,11 +132,11 @@
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-col :span="24" style="padding: 0">
<el-form-item
label="实施数据发布主题:"
:label-width="formLabelWidth"
prop="mqtt_keepalive"
:label="$t('chmqtt.realTimePublish')"
prop="mqtt_sssjfbzt"
>
<el-input
v-model="formData.mqtt_sssjfbzt"
@ -160,7 +160,7 @@
</el-form-item>
</el-col>
</el-row> -->
<h3 class="info_play">信息发布</h3>
<h3 class="info_play">{{$t('chmqtt.release')}}</h3>
<el-divider></el-divider>
<el-row>
@ -175,7 +175,7 @@
>
<el-select
v-model="formData.mqtt_qos"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -213,8 +213,8 @@
</el-col>
</el-row> -->
<div class="con_left_footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="add_passage = false"> </el-button>
<el-button type="primary" @click="submitForm">{{$t('save')}}</el-button>
<el-button @click="add_passage = false">{{$t('cancel')}}</el-button>
</div>
</el-form>
</div>
@ -234,7 +234,7 @@
</div>
<el-table ref="singleTable" :data="tableData" style="width: 100%">
<el-table-column type="index"> </el-table-column>
<el-table-column property="mqtt_cjd_sbmc" label="设备名称">
<el-table-column property="mqtt_cjd_sbmc" :label="$t('chmqtt.deviceName')">
<template slot-scope="scope">
<el-select v-model="scope.row.mqtt_cjd_sbmc" placeholder="">
<el-option
@ -277,18 +277,18 @@
<!-- 网关信息 -->
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form
:model="formData"
:rules="rulesGate"
ref="gateWay"
label-width="85px"
:label-width="$i18n.locale==='zh'?'130px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="formData.wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -300,10 +300,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="formData.wgpz_wgid"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -317,8 +317,8 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitGate">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitGate">{{$t('save')}}</el-button>
<el-button @click="outerVisible = false">{{$t('cancel')}}</el-button>
</div>
</el-dialog>
</div>
@ -326,7 +326,7 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
import { PrismEditor } from "vue-prism-editor";
import "vue-prism-editor/dist/prismeditor.min.css"; // import the styles somewhere
// import highlighting library (you can use any library you want just return html string)
@ -446,7 +446,7 @@ export default {
},
],
labelPosition: "left",
formLabelWidth: "145px",
formLabelWidth: this.$i18n.locale==='zh'?"200px":"145px",
input1: 192,
add_passage: true,
rightMenu: "",
@ -507,40 +507,34 @@ export default {
},
],
mqtt_wgsn: [
{ required: true, message: "请输入网关SN", trigger: "blur" },
{ required: true, message: this.$t('chmqtt.rules.mqtt_wgsn'), trigger: "blur" },
],
mqtt_port: [{ required: true, message: "请输入端口", trigger: "blur" }],
mqtt_port: [{ required: true, message: this.$t('chmqtt.rules.mqtt_port'), trigger: "blur" }],
mqtt_keepalive: [
{ required: true, message: "请输入KeepAlive", trigger: "blur" },
{ required: true, message: this.$t('chmqtt.rules.mqtt_keepalive'), trigger: "blur" },
],
mqtt_sssjfbzt: [
{ required: true, message: "请输入上传模式", trigger: "blur" },
{ required: true, message: this.$t('chmqtt.rules.mqtt_publishing'), trigger: "blur" },
],
mqtt_qos: [
{ required: true, message: "请输入上传周期", trigger: "blur" },
],
mqtt_publishing:[
{ required: true, message:this.$t('chmqtt.rules.mqtt_publishing'), trigger: "blur" }
]
},
//
outerVisible: false,
rulesGate: {
wgpz_wgmc: [
{ required: true, message: "请选择网关名称", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgmc'), trigger: "blur" },
],
wgpz_wgid: [
{ required: true, message: "请选择网关id", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgid'), trigger: "blur" },
],
},
opts1: [
{
value: "有线区网关2",
label: "有线区网关2",
},
{
value: "无线区网关2",
label: "无线区网关2",
},
],
opts1:this.$t('dbcollectiongate.options2'),
opts2: [
{
value: "LAN-BOX2",
@ -578,7 +572,7 @@ export default {
this.mqtt_ip4 ===
"..."
) {
callback(new Error("请输入IP地址"));
callback(new Error(this.$t('chmqtt.rules.mqtt_ip')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.mqtt_ip1 +
@ -590,7 +584,7 @@ export default {
this.mqtt_ip4
)
) {
callback(new Error("请输入有效的IP地址"));
callback(new Error(this.$t('chmqtt.rules.mqtt_ip1')));
} else {
callback();
}
@ -777,8 +771,60 @@ export default {
this.formData.ippz_mm = obj.ippz_mm;
this.tableData[0].mqtt_cjd_sbmc = obj.sbpz_sbmc;
this.tableData[0].mqtt_cjd_tagid = obj.cjdpz_tagid;
}else{
getQueryAnswer({
mark: "CHGYWG_wx",
user_id: this.user_id
}).then(res => {
if (res.data.data.step) {
this.step = res.data.data.step;
}
let obj = JSON.parse(res.data.data.r3);
if (obj.mqtt_ip) {
this.formData.mqtt_ip = obj.mqtt_ip;
this.mqtt_ip1 = obj.mqtt_ip.split(".")[0];
this.mqtt_ip2 = obj.mqtt_ip.split(".")[1];
this.mqtt_ip3 = obj.mqtt_ip.split(".")[2];
this.mqtt_ip4 = obj.mqtt_ip.split(".")[3];
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_keepalive = obj.mqtt_keepalive;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_qos = obj.mqtt_qos;
}
this.formData.cjdpz_tagid = obj.cjdpz_tagid;
this.formData.cjdpz_mc = obj.cjdpz_mc;
this.formData.cjdpz_sjq = obj.cjdpz_sjq;
this.formData.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formData.cjdpz_scms = obj.cjdpz_scms;
// this.formData.cjdpz_dw = obj.cjdpz_dw;
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_kzqxy = obj.sbpz_kzqxy;
this.formData.sbpz_ip = obj.sbpz_ip;
this.formData.sbpz_port = obj.sbpz_port;
this.formData.sbpz_czdz = obj.sbpz_czdz;
this.formData.sbpz_lxzq = obj.sbpz_lxzq;
this.formData.sbpz_qyhmcj = obj.sbpz_qyhmcj;
this.formData.sbpz_qyplcj = obj.sbpz_qyplcj;
this.formData.sbpz_zdplcjs = obj.sbpz_zdplcjs;
this.formData.sbpz_cjcgsj = obj.sbpz_cjcgsj;
this.formData.sbpz_zqsbonchange = obj.sbpz_zqsbonchange;
this.formData.sbpz_txsjjg = obj.sbpz_txsjjg;
this.formData.sbpz_xqjcqxr = obj.sbpz_xqjcqxr;
this.formData.sbpz_bcjcqxr = obj.sbpz_bcjcqxr;
this.formData.wgpz_wgid = obj.wgpz_wgid;
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.ippz_ssid = obj.ippz_ssid;
this.formData.ippz_rzfs = obj.ippz_rzfs;
this.formData.ippz_jmfs = obj.ippz_jmfs;
this.formData.ippz_mm = obj.ippz_mm;
this.tableData[0].mqtt_cjd_sbmc = obj.sbpz_sbmc;
this.tableData[0].mqtt_cjd_tagid = obj.cjdpz_tagid;
})
}
console.log(this.formData, "this.formData");
},
async sendTree() {
let result = await SendTree({
@ -906,6 +952,7 @@ export default {
</script>
<style lang="less" scoped>
.tree_menu {
position: absolute;
width: 286px;
@ -923,7 +970,7 @@ export default {
/deep/ .pas_params {
.info_play {
width: 86px;
//width: 86px;
height: 20px;
color: white;
font-size: 14px;
@ -1059,4 +1106,9 @@ export default {
.mqtt {
margin-left: 20px;
}
/deep/ .zh_params{
.el-col-24 {
padding-right: 300px;
}
}
</style>

View File

@ -22,17 +22,17 @@
default-active="#0078FE"
>
<el-menu-item id="menuitem" index="1" style="font-size: 12px">
<span slot="title">编辑</span>
<span slot="title">{{ $t('edit') }}</span>
</el-menu-item>
<el-menu-item index="2" style="font-size: 12px">
<span slot="title"> </span>
<span slot="title">{{ $t('cancel') }}</span>
</el-menu-item>
</el-menu>
</div>
</div>
<div class="pas_params" v-show="add_passage" v-loading="loading">
<div>
<el-button type="primary" plain @click="handleSelect">保存</el-button>
<el-button type="primary" plain @click="handleSelect">{{ $t('save') }}</el-button>
<!-- <el-menu :default-active="activeIndex" class="el-menu-demo" mode="horizontal" @select="handleSelect">
<el-menu-item index="2">保存</el-menu-item>
</el-menu> -->
@ -51,19 +51,19 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_mc" label="名称">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_mc" placeholder="">
<el-option
v-for="(option, index) in options2"
:key="index"
:label="option.label"
:value="option.value"
></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_sjq" label="数据区">
<el-table-column property="cjdpz_mc" label="名称">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_mc" placeholder="">
<el-option
v-for="(option, index) in options2"
:key="index"
:label="option.label"
:value="option.value"
></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_sjq" :label="$t('dbcollect.dataArea')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_sjq" placeholder="">
<el-option
@ -77,7 +77,7 @@
</el-table-column>
<el-table-column
property="cjdpz_jcqdz"
label="寄存地址(十进制)"
:label="$t('dbcollect.registerAddress')"
width="150px"
>
<template slot-scope="scope">
@ -90,7 +90,7 @@
></el-input>
</template>
</el-table-column>
<el-table-column property="cjdpz_cjsjlx" label="采集数据类型">
<el-table-column property="cjdpz_cjsjlx" :label="$t('dbcollect.type')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_cjsjlx" placeholder="">
<el-option
@ -103,7 +103,7 @@
</template>
</el-table-column>
<el-table-column property="cjdpz_dxsx" label="读写属性">
<el-table-column property="cjdpz_dxsx" :label="$t('dbcollect.readWrite')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_dxsx" placeholder="">
<el-option
@ -115,7 +115,7 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_scms" label="上传模式">
<el-table-column property="cjdpz_scms" :label="$t('dbcollect.uploadMode')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_scms" placeholder="">
<el-option
@ -131,18 +131,18 @@
</div>
<!-- 网关信息 -->
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form
:model="tableData[0]"
:rules="rulesGate"
ref="gateWay"
label-width="85px"
:label-width="$i18n.locale==='zh'?'130px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="tableData[0].wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -154,10 +154,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="tableData[0].wgpz_wgid"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -171,17 +171,17 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitGate">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitGate">{{ $t('save') }}</el-button>
<el-button @click="outerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
</div>
<!-- 设备信息 -->
<div class="deviceinfo">
<div class="deviceinfo" :class="$i18n.locale==='zh'?'zh_params deviceinfo':'deviceinfo'">
<!-- <el-tree :data="datas2" :props="defaultProps" @node-click="handleDetailClick" default-expand-all></el-tree> -->
<el-dialog
title="新建设备"
:title="$t('reconnoitreConfiguration.edit')"
:visible.sync="add_device"
width="902px"
v-loading="loading"
@ -195,7 +195,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="设备名称:"
:label="$t('reconnoitreConfiguration.name')"
:label-width="formLabelWidth"
prop="sbpz_sbmc"
>
@ -216,7 +216,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="控制器协议:"
:label="$t('reconnoitreConfiguration.controllerProtocol')"
:label-width="formLabelWidth"
prop="sbpz_kzqxy"
>
@ -243,7 +243,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="IP地址:"
:label="$t('reconnoitreConfiguration.IPAddress')"
:label-width="formLabelWidth"
prop="sbpz_ip"
>
@ -284,7 +284,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="端口号:"
:label="$t('reconnoitreConfiguration.portNumber')"
:label-width="formLabelWidth"
prop="sbpz_port"
>
@ -300,7 +300,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="从站地址:"
:label="$t('reconnoitreConfiguration.slaveAddress')"
:label-width="formLabelWidth"
prop="sbpz_czdz"
>
@ -313,7 +313,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="轮询周期(ms):"
:label="$t('reconnoitreConfiguration.pollTime')"
:label-width="formLabelWidth"
prop="sbpz_lxzq"
>
@ -328,7 +328,7 @@
</el-row>
<!-- </el-form> -->
<div class="super_parmams">
<h3>高级参数</h3>
<h3>{{ $t('reconnoitreConfiguration.params')}}</h3>
<div>
<i class="el-icon-caret-bottom" v-if="is_retract"></i>
<i class="el-icon-caret-top" v-else="is_retract"></i>
@ -337,25 +337,24 @@
plain
@click="getRetract"
style="
width: 28px;
color: rgba(16, 16, 16, 1);
font-size: 14px;
text-align: left;
border: none;
"
>
收起</el-button
{{$t('put')}}</el-button
>
</div>
</div>
<el-divider></el-divider>
<div class="super_con" v-show="is_retract">
<div :class="$i18n.locale==='zh'?'zh_con super_con':'super_con'" v-show="is_retract">
<!-- <el-form :label-position="labelPosition" :rules="rules" ref="ruleForm"> -->
<el-row>
<el-col :span="12">
<el-form-item
label="启用毫秒采集:"
:label-width="formLabelWidth"
:label="$t('reconnoitreConfiguration.millisecond')"
:label-width="$i18n.locale==='zh'?labelWidth:formLabelWidth"
prop="sbpz_qyhmcj"
>
<el-switch v-model="tableData[0].sbpz_qyhmcj"></el-switch>
@ -365,8 +364,8 @@
<el-row>
<el-col :span="12">
<el-form-item
label="启用批量采集:"
:label-width="formLabelWidth"
:label="$t('reconnoitreConfiguration.batch')"
:label-width="$i18n.locale==='zh'?labelWidth:formLabelWidth"
prop="sbpz_qyplcj"
>
<el-switch v-model="tableData[0].sbpz_qyplcj"></el-switch>
@ -374,8 +373,8 @@
</el-col>
<el-col :span="12">
<el-form-item
label="最大批量采集数:"
label-width="126px"
:label="$t('reconnoitreConfiguration.maxBatch')"
:label-width="labelWidth"
prop="sbpz_zdplcjs"
>
<el-input
@ -389,8 +388,8 @@
<el-row>
<el-col :span="12">
<el-form-item
label="采集超过时间(ms):"
label-width="140px"
:label="$t('reconnoitreConfiguration.overTime')"
:label-width="labelWidth"
prop="sbpz_cjcgsj"
>
<el-input
@ -402,8 +401,8 @@
</el-col>
<el-col :span="12">
<el-form-item
label="周期上报OnChange数据:"
label-width="186px"
:label="$t('reconnoitreConfiguration.onChangData')"
:label-width="$i18n.locale==='zh'?labelWidth:'185px'"
prop="sbpz_zqsbonchange"
>
<el-switch
@ -415,8 +414,8 @@
<el-row>
<el-col :span="12">
<el-form-item
label="通讯事件间隔(ms):"
label-width="140px"
:label="$t('reconnoitreConfiguration.intervalTime')"
:label-width="labelWidth"
prop="sbpz_txsjjg"
>
<el-input
@ -431,8 +430,8 @@
<el-row>
<el-col :span="12">
<el-form-item
label="线圈寄存器写入功能码:"
label-width="120px"
:label="$t('reconnoitreConfiguration.writeFunction1')"
:label-width="labelWidth"
style="line-height: 20px"
class="cjjcq_code"
>
@ -453,8 +452,8 @@
</el-col>
<el-col :span="12">
<el-form-item
label="线圈寄存器写入功能码:"
label-width="120px"
:label="$t('reconnoitreConfiguration.writeFunction2')"
:label-width="labelWidth"
class="cjjcq_code"
>
<el-select
@ -477,14 +476,14 @@
</div>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitFormDevice"> </el-button>
<el-button @click="add_device = false"> </el-button>
<el-button type="primary" @click="submitFormDevice">{{ $t('save') }}</el-button>
<el-button @click="add_device = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
<div class="drvieName_All" v-show="diag_drive">
<div class="title">
<p class="title_l">协议选择</p>
<p class="title_l">{{ $t('reconnoitreConfiguration.agreementName') }}</p>
<i class="el-icon-close title_r" @click="diag_drive = false"></i>
</div>
<el-divider></el-divider>
@ -499,12 +498,13 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "ChiCollection",
data() {
return {
labelWidth:this.$i18n.locale==='zh'?'280px':'156px',
loading: false,
flag: false,
add_device: false,
@ -810,20 +810,7 @@ export default {
label: "LONG64位有符号整数",
},
],
options6: [
{
value: "读写",
label: "读写",
},
{
value: "只读",
label: "只读",
},
{
value: "只写",
label: "只写",
},
],
options6: this.$t('dbcollect.options7'),
options7: [
{
value: "Periodic",
@ -907,16 +894,7 @@ export default {
{ required: true, message: "请选择网关id", trigger: "blur" },
],
},
opts1: [
{
value: "有线区网关2",
label: "有线区网关2",
},
{
value: "无线区网关2",
label: "无线区网关2",
},
],
opts1: this.$t('dbcollectiongate.options2'),
opts2: [
{
value: "LAN-BOX2",
@ -960,7 +938,7 @@ export default {
checked1: false,
is_retract: true,
labelPosition: "left",
formLabelWidth: "116px",
formLabelWidth: this.$i18n.locale==='zh'?'155px':"116px",
add_passage: true,
dialogVisible: true,
menuShow: false,
@ -1045,10 +1023,10 @@ export default {
},
rulesDevice: {
sbpz_sbmc: [
{ required: true, message: "请输入通道名称", trigger: "change" },
{required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_sbmc'), trigger: "change"},
],
sbpz_kzqxy: [
{ required: true, message: "请输入控制器协议", trigger: "blur" },
{required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_kzqxy'), trigger: "blur"},
],
sbpz_ip: [
{
@ -1059,25 +1037,25 @@ export default {
},
],
sbpz_czdz: [
{ required: true, message: "请输入从站地址", trigger: "blur" },
{required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_czdz'), trigger: "blur"},
],
sbpz_port: [
{ required: true, message: "请输入端口号", trigger: "blur" },
{required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_port'), trigger: "blur"},
],
sbpz_lxzq: [
{ required: true, message: "请输入轮询时间", trigger: "blur" },
{required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_lxzq'), trigger: "blur"},
],
sbpz_qyhmcj: [
{ required: true, message: "启用毫秒采集", trigger: "change" },
{required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_qyhmcj'), trigger: "change"},
],
sbpz_qyplcj: [
{ required: true, message: "启用批量采集", trigger: "change" },
{required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_qyplcj'), trigger: "change"},
],
sbpz_zdplcjs: [
{ required: true, message: "请输入最大批量采集数", trigger: "blur" },
{required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_zdplcjs'), trigger: "blur"},
],
sbpz_cjcgsj: [
{ required: true, message: "请输入采集超过时间", trigger: "blur" },
{required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_cjcgsj'), trigger: "blur"},
],
sbpz_zqsbonchange: [
{
@ -1087,9 +1065,9 @@ export default {
},
],
sbpz_txsjjg: [
{ required: true, message: "请输入通讯时间间隔", trigger: "blur" },
{required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_txsjjg'), trigger: "blur"},
],
},
}
};
},
methods: {
@ -1230,6 +1208,60 @@ export default {
});
// console.log(data, "线");
this.loading = false;
if(!data.state){
getQueryAnswer({
mark: "CHGYWG_yx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
// alert(obj.sbpz_qyhmcj);
// alert(obj.sbpz_qyplcj);
if (obj.cjdpz_tagid) {
this.tableData[0].cjdpz_tagid = obj.cjdpz_tagid;
this.tableData[0].cjdpz_mc = obj.cjdpz_mc;
this.tableData[0].cjdpz_sjq = obj.cjdpz_sjq;
this.tableData[0].cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.tableData[0].cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.tableData[0].cjdpz_dxsx = obj.cjdpz_dxsx;
this.tableData[0].cjdpz_scms = obj.cjdpz_scms;
}
this.tableData[0].sbpz_sbmc = obj.sbpz_sbmc;
this.tableData[0].sbpz_kzqxy = obj.sbpz_kzqxy;
this.tableData[0].sbpz_ip = obj.sbpz_ip;
this.tableData[0].sbpz_port = obj.sbpz_port;
this.tableData[0].sbpz_czdz = obj.sbpz_czdz;
this.tableData[0].sbpz_lxzq = obj.sbpz_lxzq;
this.tableData[0].sbpz_qyhmcj = obj.sbpz_qyhmcj;
this.tableData[0].sbpz_qyplcj = obj.sbpz_qyplcj;
this.tableData[0].sbpz_zdplcjs = obj.sbpz_zdplcjs;
this.tableData[0].sbpz_cjcgsj = obj.sbpz_cjcgsj;
this.tableData[0].sbpz_zqsbonchange = obj.sbpz_zqsbonchange;
this.tableData[0].sbpz_txsjjg = obj.sbpz_txsjjg;
this.tableData[0].sbpz_xqjcqxr = obj.sbpz_xqjcqxr;
this.tableData[0].sbpz_bcjcqxr = obj.sbpz_bcjcqxr;
this.tableData[0].wgpz_wgid = obj.wgpz_wgid;
this.tableData[0].wgpz_wgmc = obj.wgpz_wgmc;
this.tableData[0].ippz_wllx = obj.ippz_wllx;
this.tableData[0].ippz_ip = obj.ippz_ip;
this.tableData[0].ippz_zwym = obj.ippz_zwym;
this.tableData[0].ippz_wg = obj.ippz_wg;
this.tableData[0].ippz_dns = obj.ippz_dns;
this.tableData[0].ippz_dns_by = obj.ippz_dns_by;
this.tableData[0].mqtt_ip = obj.mqtt_ip;
this.tableData[0].mqtt_wgsn = obj.mqtt_wgsn;
this.tableData[0].mqtt_port = obj.mqtt_port;
this.tableData[0].mqtt_keepalive = obj.mqtt_keepalive;
// this.tableData[0].mqtt_tls = obj.mqtt_tls;
// this.tableData[0].mqtt_clearsession = obj.mqtt_clearsession;
this.tableData[0].mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.tableData[0].mqtt_qos = obj.mqtt_qos;
this.tableData[0].mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.tableData[0].mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
})
}
if (data.data && data.state) {
// console.log(JSON.parse(data.data.mark_value));
let obj = JSON.parse(data.data.mark_value);
@ -1529,6 +1561,14 @@ export default {
</script>
<style lang="less" scoped>
.zh_con{
.el-col-12{
width: 100% !important;
}
.el-row{
display:block !important;
}
}
.tree_menu {
position: absolute;
width: 286px;
@ -1543,7 +1583,16 @@ export default {
text-align: center;
border: 1px solid rgba(220, 220, 220, 1);
}
.zh_params{
.el-col-12:last-child {
padding-right: 100px !important;
}
.el-col-12:first-child {
padding-right: 66px !important;
}
}
.tree_rightmenu {
position: fixed;
width: 120px;
@ -1765,7 +1814,7 @@ export default {
justify-content: space-between;
.title_l {
width: 103px;
//width: 103px;
height: 26px;
color: rgba(16, 16, 16, 1);
font-size: 18px;

View File

@ -17,17 +17,17 @@
<div v-show="menuShow" class="tree_rightmenu" :style="{ ...rightMenu }">
<el-menu class="el-menu-vertical-demo" @select="selectMenuNode" default-active="#0078FE">
<el-menu-item id="menuitem" index="1" style="font-size: 12px">
<span slot="title">编辑</span>
<span slot="title">{{ $t('edit') }}</span>
</el-menu-item>
<el-menu-item index="2" style="font-size: 12px">
<span slot="title"> </span>
<span slot="title">{{ $t('cancel') }}</span>
</el-menu-item>
</el-menu>
</div>
</div>
<div class="pas_params" v-show="add_passage" v-loading="loading">
<div>
<el-button type="primary" plain @click="handleSelect">保存</el-button>
<el-button type="primary" plain @click="handleSelect">{{ $t('save') }}</el-button>
<!-- <el-menu :default-active="activeIndex" class="el-menu-demo" mode="horizontal" @select="handleSelect">
<el-menu-item index="2">保存</el-menu-item>
</el-menu> -->
@ -42,15 +42,15 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_mc" label="名称">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_mc" placeholder="">
<el-option v-for="(option, index) in options2" :key="index" :label="option.label"
:value="option.value"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_sjq" label="数据区">
<el-table-column property="cjdpz_mc" label="名称">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_mc" placeholder="">
<el-option v-for="(option, index) in options2" :key="index" :label="option.label"
:value="option.value"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_sjq" :label="$t('dbcollect.dataArea')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_sjq" placeholder="">
<el-option v-for="(option, index) in options3" :key="index" :label="option.label"
@ -58,7 +58,7 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_jcqdz" label="寄存地址(十进制)" width="150px">
<el-table-column property="cjdpz_jcqdz" :label="$t('dbcollect.registerAddress')" width="150px">
<template slot-scope="scope">
<!-- <el-select v-model="scope.row.cjdpz_jcqdz" placeholder="1">
<el-option v-for="(option,index) in options4" :key="index" :label="option.label" :value="option.value"></el-option>
@ -66,7 +66,7 @@
<el-input v-model="scope.row.cjdpz_jcqdz" placeholder="1-9999"></el-input>
</template>
</el-table-column>
<el-table-column property="cjdpz_cjsjlx" label="采集数据类型">
<el-table-column property="cjdpz_cjsjlx" :label="$t('dbcollect.type')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_cjsjlx" placeholder="">
<el-option v-for="(option, index) in options5" :key="index" :label="option.label"
@ -75,7 +75,7 @@
</template>
</el-table-column>
<el-table-column property="cjdpz_dxsx" label="读写属性">
<el-table-column property="cjdpz_dxsx" :label="$t('dbcollect.readWrite')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_dxsx" placeholder="">
<el-option v-for="(option, index) in options6" :key="index" :label="option.label"
@ -83,7 +83,7 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_scms" label="上传模式">
<el-table-column property="cjdpz_scms" :label="$t('dbcollect.uploadMode')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_scms" placeholder="">
<el-option v-for="(option, index) in options7" :key="index" :label="option.label"
@ -96,24 +96,24 @@
<!-- 网关信息 -->
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-form :model="tableData[0]" :rules="rulesGate" ref="gateWay" label-width="85px" class="demo-ruleForm">
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-select v-model="tableData[0].wgpz_wgmc" placeholder="请选择" style="width: 200px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form :model="tableData[0]" :rules="rulesGate" ref="gateWay" :label-width="$i18n.locale==='zh'?'130px':'85px'" class="demo-ruleForm">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select v-model="tableData[0].wgpz_wgmc" :placeholder="$t('select')" style="width: 200px">
<el-option v-for="item in opts1" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-select v-model="tableData[0].wgpz_wgid" placeholder="请选择" style="width: 200px">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select v-model="tableData[0].wgpz_wgid" :placeholder="$t('select')" style="width: 200px">
<el-option v-for="item in opts2" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitGate">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitGate">{{ $t('save') }}</el-button>
<el-button @click="outerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
</div>
@ -288,7 +288,7 @@
<script>
import _ from 'lodash'
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "ChiCollectionwifi",
@ -713,20 +713,7 @@ export default {
label: "LONG64位有符号整数",
},
],
options6: [
{
value: "读写",
label: "读写",
},
{
value: "只读",
label: "只读",
},
{
value: "只写",
label: "只写",
},
],
options6: this.$t('dbcollect.options7'),
options7: [
{
value: "Periodic",
@ -1214,6 +1201,54 @@ export default {
this.tableData[0].mqtt_qos = obj.mqtt_qos;
this.tableData[0].mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.tableData[0].mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
}else{
getQueryAnswer({
mark: "CHGYWG_wx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
if (obj.cjdpz_tagid) {
this.tableData[0].cjdpz_tagid = obj.cjdpz_tagid;
this.tableData[0].cjdpz_mc = obj.cjdpz_mc;
this.tableData[0].cjdpz_sjq = obj.cjdpz_sjq;
this.tableData[0].cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.tableData[0].cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.tableData[0].cjdpz_dxsx = obj.cjdpz_dxsx;
this.tableData[0].cjdpz_scms = obj.cjdpz_scms;
// this.tableData[0].cjdpz_dw = obj.cjdpz_dw;
}
this.tableData[0].sbpz_sbmc = obj.sbpz_sbmc;
this.tableData[0].sbpz_kzqxy = obj.sbpz_kzqxy;
this.tableData[0].sbpz_ip = obj.sbpz_ip;
this.tableData[0].sbpz_port = obj.sbpz_port;
this.tableData[0].sbpz_czdz = obj.sbpz_czdz;
this.tableData[0].sbpz_lxzq = obj.sbpz_lxzq;
this.tableData[0].sbpz_qyhmcj = obj.sbpz_qyhmcj;
this.tableData[0].sbpz_qyplcj = obj.sbpz_qyplcj;
this.tableData[0].sbpz_zdplcjs = obj.sbpz_zdplcjs;
this.tableData[0].sbpz_cjcgsj = obj.sbpz_cjcgsj;
this.tableData[0].sbpz_zqsbonchange = obj.sbpz_zqsbonchange;
this.tableData[0].sbpz_txsjjg = obj.sbpz_txsjjg;
this.tableData[0].sbpz_xqjcqxr = obj.sbpz_xqjcqxr;
this.tableData[0].sbpz_bcjcqxr = obj.sbpz_bcjcqxr;
this.tableData[0].wgpz_wgid = obj.wgpz_wgid;
this.tableData[0].wgpz_wgmc = obj.wgpz_wgmc;
this.tableData[0].ippz_ssid = obj.ippz_ssid;
this.tableData[0].ippz_rzfs = obj.ippz_rzfs;
this.tableData[0].ippz_jmfs = obj.ippz_jmfs;
this.tableData[0].ippz_mm = obj.ippz_mm;
this.tableData[0].mqtt_ip = obj.mqtt_ip;
this.tableData[0].mqtt_wgsn = obj.mqtt_wgsn;
this.tableData[0].mqtt_port = obj.mqtt_port;
this.tableData[0].mqtt_keepalive = obj.mqtt_keepalive;
this.tableData[0].mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.tableData[0].mqtt_qos = obj.mqtt_qos;
this.tableData[0].mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.tableData[0].mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
})
}
},
async sendTree() {

View File

@ -23,18 +23,18 @@
default-active="#0078FE"
>
<el-menu-item id="menuitem" index="1" style="font-size: 12px">
<span slot="title">新建设备</span>
<span slot="title">{{$t('addDevice')}}</span>
</el-menu-item>
<el-menu-item index="2" style="font-size: 12px">
<span slot="title"> </span>
<span slot="title">{{$t('cancel')}}</span>
</el-menu-item>
</el-menu>
</div>
</div>
<!-- </div> -->
<div class="pas_params">
<div :class="$i18n.locale==='zh'?'zh_params pas_params':'pas_params'">
<el-dialog
title="新建设备"
:title="$t('reconnoitreConfiguration.title')"
:visible.sync="add_passage"
width="902px"
v-loading="loading"
@ -48,7 +48,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="设备名称:"
:label="$t('reconnoitreConfiguration.name')"
:label-width="formLabelWidth"
prop="sbpz_sbmc"
>
@ -69,7 +69,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="控制器协议:"
:label="$t('reconnoitreConfiguration.controllerProtocol')"
:label-width="formLabelWidth"
prop="sbpz_kzqxy"
>
@ -96,7 +96,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="IP地址:"
:label="$t('reconnoitreConfiguration.IPAddress')"
:label-width="formLabelWidth"
prop="sbpz_ip"
>
@ -137,7 +137,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="端口号:"
:label="$t('reconnoitreConfiguration.portNumber')"
:label-width="formLabelWidth"
prop="sbpz_port"
>
@ -153,7 +153,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="从站地址:"
:label="$t('reconnoitreConfiguration.slaveAddress')"
:label-width="formLabelWidth"
prop="sbpz_czdz"
>
@ -166,7 +166,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="轮询周期(ms):"
:label="$t('reconnoitreConfiguration.pollTime')"
:label-width="formLabelWidth"
prop="sbpz_lxzq"
>
@ -181,7 +181,7 @@
</el-row>
<!-- </el-form> -->
<div class="super_parmams">
<h3>高级参数</h3>
<h3>{{ $t('reconnoitreConfiguration.params') }}</h3>
<div>
<i class="el-icon-caret-bottom" v-if="is_retract"></i>
<i class="el-icon-caret-top" v-else="is_retract"></i>
@ -190,25 +190,24 @@
plain
@click="getRetract"
style="
width: 28px;
color: rgba(16, 16, 16, 1);
font-size: 14px;
text-align: left;
border: none;
"
>
收起</el-button
{{$t('put')}}</el-button
>
</div>
</div>
<el-divider></el-divider>
<div class="super_con" v-show="is_retract">
<div :class="$i18n.locale==='zh'?'zh_con super_con':'super_con'" v-show="is_retract">
<!-- <el-form :label-position="labelPosition" :rules="rules" ref="ruleForm"> -->
<el-row>
<el-col :span="12">
<el-form-item
label="启用毫秒采集:"
:label-width="formLabelWidth"
:label="$t('reconnoitreConfiguration.millisecond')"
:label-width="$i18n.locale==='zh'?labelWidth:formLabelWidth"
prop="sbpz_qyhmcj"
>
<el-switch v-model="formData.sbpz_qyhmcj"></el-switch>
@ -218,8 +217,8 @@
<el-row>
<el-col :span="12">
<el-form-item
label="启用批量采集:"
:label-width="formLabelWidth"
:label="$t('reconnoitreConfiguration.batch')"
:label-width="$i18n.locale==='zh'?labelWidth:formLabelWidth"
prop="sbpz_qyplcj"
>
<el-switch v-model="formData.sbpz_qyplcj"></el-switch>
@ -227,8 +226,8 @@
</el-col>
<el-col :span="12">
<el-form-item
label="最大批量采集数:"
label-width="126px"
:label="$t('reconnoitreConfiguration.maxBatch')"
:label-width="labelWidth"
prop="sbpz_zdplcjs"
>
<el-input
@ -242,8 +241,8 @@
<el-row>
<el-col :span="12">
<el-form-item
label="采集超过时间(ms):"
label-width="140px"
:label="$t('reconnoitreConfiguration.overTime')"
:label-width="labelWidth"
prop="sbpz_cjcgsj"
>
<el-input
@ -255,8 +254,8 @@
</el-col>
<el-col :span="12">
<el-form-item
label="周期上报OnChange数据:"
label-width="186px"
:label="$t('reconnoitreConfiguration.onChangData')"
:label-width="$i18n.locale==='zh'?labelWidth:'185px'"
prop="sbpz_zqsbonchange"
>
<el-switch v-model="formData.sbpz_zqsbonchange"></el-switch>
@ -266,8 +265,8 @@
<el-row>
<el-col :span="12">
<el-form-item
label="通讯事件间隔(ms):"
label-width="140px"
:label="$t('reconnoitreConfiguration.intervalTime')"
:label-width="labelWidth"
prop="sbpz_txsjjg"
>
<el-input
@ -282,8 +281,8 @@
<el-row>
<el-col :span="12">
<el-form-item
label="线圈寄存器写入功能码:"
label-width="120px"
:label="$t('reconnoitreConfiguration.writeFunction1')"
:label-width="$i18n.locale==='zh'?'286px':'130px'"
style="line-height: 20px"
class="cjjcq_code"
>
@ -304,8 +303,8 @@
</el-col>
<el-col :span="12">
<el-form-item
label="线圈寄存器写入功能码:"
label-width="120px"
:label="$t('reconnoitreConfiguration.writeFunction2')"
:label-width="$i18n.locale==='zh'?'286px':'130px'"
class="cjjcq_code"
>
<el-select
@ -328,15 +327,15 @@
</div>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="add_passage = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="add_passage = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
<div class="drvieName_All" v-show="diag_drive">
<div class="title">
<p class="title_l">协议选择</p>
<i class="el-icon-close title_r" @click="add_passage = false"></i>
<p class="title_l">{{ $t('reconnoitreConfiguration.agreementName') }}</p>
<i class="el-icon-close title_r" @click="diag_drive = false;"></i>
</div>
<el-divider></el-divider>
<el-tree
@ -349,18 +348,18 @@
<!-- 网关信息 -->
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form
:model="formData"
:rules="rulesGate"
ref="gateWay"
label-width="85px"
:label-width="$i18n.locale === 'zh'?'130px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="formData.wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -372,10 +371,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="formData.wgpz_wgid"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -389,8 +388,8 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitGate">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitGate">{{ $t('save') }}</el-button>
<el-button @click="outerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
</div>
@ -399,11 +398,12 @@
<script>
import _ from "lodash";
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "ChiDevice",
data() {
return {
labelWidth:this.$i18n.locale==='zh'?'280px':'156px',
user_id: "",
loading: false,
flag: false,
@ -488,7 +488,7 @@ export default {
checked1: false,
is_retract: true,
labelPosition: "left",
formLabelWidth: "116px",
formLabelWidth: this.$i18n.locale==='zh'?'155px':"116px",
input1: 192,
add_passage: false,
rightMenu: "",
@ -610,10 +610,10 @@ export default {
},
rules: {
sbpz_sbmc: [
{ required: true, message: "请输入通道名称", trigger: "change" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_sbmc'), trigger: "change" },
],
sbpz_kzqxy: [
{ required: true, message: "请输入控制器协议", trigger: "blur" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_kzqxy'), trigger: "blur" },
],
sbpz_ip: [
{
@ -624,25 +624,25 @@ export default {
},
],
sbpz_czdz: [
{ required: true, message: "请输入从站地址", trigger: "blur" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_czdz'), trigger: "blur" },
],
sbpz_port: [
{ required: true, message: "请输入端口号", trigger: "blur" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_port'), trigger: "blur" },
],
sbpz_lxzq: [
{ required: true, message: "请输入轮询时间", trigger: "blur" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_lxzq'), trigger: "blur" },
],
sbpz_qyhmcj: [
{ required: true, message: "启用毫秒采集", trigger: "change" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_qyhmcj'), trigger: "change" },
],
sbpz_qyplcj: [
{ required: true, message: "启用批量采集", trigger: "change" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_qyplcj'), trigger: "change" },
],
sbpz_zdplcjs: [
{ required: true, message: "请输入最大批量采集数", trigger: "blur" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_zdplcjs'), trigger: "blur" },
],
sbpz_cjcgsj: [
{ required: true, message: "请输入采集超过时间", trigger: "blur" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_cjcgsj'), trigger: "blur" },
],
sbpz_zqsbonchange: [
{
@ -652,7 +652,7 @@ export default {
},
],
sbpz_txsjjg: [
{ required: true, message: "请输入通讯时间间隔", trigger: "blur" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_txsjjg'), trigger: "blur" },
],
},
@ -665,22 +665,13 @@ export default {
},
rulesGate: {
wgpz_wgmc: [
{ required: true, message: "请选择网关名称", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgmc'), trigger: "blur" },
],
wgpz_wgid: [
{ required: true, message: "请选择网关id", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgid'), trigger: "blur" },
],
},
opts1: [
{
value: "有线区网关2",
label: "有线区网关2",
},
{
value: "无线区网关2",
label: "无线区网关2",
},
],
opts1:this.$t('dbcollectiongate.options2'),
opts2: [
{
value: "LAN-BOX2",
@ -707,7 +698,7 @@ export default {
this.sbpz_ip4 ===
"..."
) {
callback(new Error("请输入IP地址"));
callback(new Error(this.$t('reconnoitreConfiguration.rules.sbpz_ip')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.sbpz_ip1 +
@ -719,7 +710,7 @@ export default {
this.sbpz_ip4
)
) {
callback(new Error("请输入有效的IP地址"));
callback(new Error(this.$t('reconnoitreConfiguration.rules.sbpz_ip1')));
} else {
callback();
}
@ -867,6 +858,65 @@ export default {
});
this.loading = false;
console.log(data, "斥候有网关设置页面");
if(!data.state){
getQueryAnswer({
mark: "CHGYWG_yx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
if (obj.sbpz_ip) {
this.sbpz_ip1 = obj.sbpz_ip.split(".")[0];
this.sbpz_ip2 = obj.sbpz_ip.split(".")[1];
this.sbpz_ip3 = obj.sbpz_ip.split(".")[2];
this.sbpz_ip4 = obj.sbpz_ip.split(".")[3];
this.formData.sbpz_zqsbonchange = Boolean(
Number(obj.sbpz_zqsbonchange)
);
this.formData.sbpz_qyhmcj = Boolean(Number(obj.sbpz_qyhmcj));
this.formData.sbpz_qyplcj = Boolean(Number(obj.sbpz_qyplcj));
}
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_kzqxy = obj.sbpz_kzqxy;
this.formData.sbpz_port = obj.sbpz_port;
this.formData.sbpz_czdz = obj.sbpz_czdz;
this.formData.sbpz_lxzq = obj.sbpz_lxzq;
this.formData.sbpz_zdplcjs = obj.sbpz_zdplcjs;
this.formData.sbpz_cjcgsj = obj.sbpz_cjcgsj;
// console.log(this.formData.sbpz_zqsbonchange);
this.formData.sbpz_txsjjg = obj.sbpz_txsjjg;
this.formData.sbpz_xqjcqxr = obj.sbpz_xqjcqxr;
this.formData.sbpz_bcjcqxr = obj.sbpz_bcjcqxr;
this.formData.wgpz_wgid = obj.wgpz_wgid;
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.ippz_wllx = obj.ippz_wllx;
this.formData.ippz_ip = obj.ippz_ip;
this.formData.ippz_zwym = obj.ippz_zwym;
this.formData.ippz_wg = obj.ippz_wg;
this.formData.ippz_dns = obj.ippz_dns;
this.formData.ippz_dns_by = obj.ippz_dns_by;
this.formData.cjdpz_tagid = obj.mqtt_cjd_tagid;
this.formData.cjdpz_mc = obj.cjdpz_mc;
this.formData.cjdpz_sjq = obj.cjdpz_sjq;
this.formData.cjdpz_jcqdz = obj.cjdpz_cjsjlx;
this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formData.cjdpz_scms = obj.cjdpz_scms;
this.formData.mqtt_ip = obj.mqtt_ip;
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_keepalive = obj.mqtt_keepalive;
// this.formData.mqtt_tls = obj.mqtt_tls;
// this.formData.mqtt_clearsession = obj.mqtt_clearsession;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_qos = obj.mqtt_qos;
this.formData.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.formData.mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
})
}
// console.log(data, "22222222");
// console.log(JSON.parse(data.data.mark_value));
if (data.data && data.state) {
@ -1068,10 +1118,27 @@ export default {
display: inline-block;
}
}
.zh_con{
.el-col-12{
width: 100% !important;
}
.el-row{
display:block !important;
}
}
.zh_params{
.el-col-12:last-child {
padding-right: 100px !important;
}
.el-col-12:first-child {
padding-right: 66px !important;
}
}
/deep/ .pas_params {
.el-form-item {
margin-bottom: 20px !important;
margin-bottom: 25px !important;
}
.el-col-12:last-child {

View File

@ -23,18 +23,18 @@
default-active="#0078FE"
>
<el-menu-item id="menuitem" index="1" style="font-size: 12px">
<span slot="title">新建设备</span>
<span slot="title">{{$t('addDevice')}}</span>
</el-menu-item>
<el-menu-item index="2" style="font-size: 12px">
<span slot="title"> </span>
<span slot="title">{{$t('cancel')}}</span>
</el-menu-item>
</el-menu>
</div>
</div>
<!-- </div> -->
<div class="pas_params">
<div :class="$i18n.locale==='zh'?'zh_params pas_params':'pas_params'">
<el-dialog
title="新建设备"
:title="$t('reconnoitreConfiguration.title')"
:visible.sync="add_passage"
width="902px"
v-loading="loading"
@ -48,7 +48,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="设备名称:"
:label="$t('reconnoitreConfiguration.name')"
:label-width="formLabelWidth"
prop="sbpz_sbmc"
>
@ -69,7 +69,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="控制器协议:"
:label="$t('reconnoitreConfiguration.controllerProtocol')"
:label-width="formLabelWidth"
prop="sbpz_kzqxy"
>
@ -96,7 +96,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="IP地址:"
:label="$t('reconnoitreConfiguration.IPAddress')"
:label-width="formLabelWidth"
prop="sbpz_ip"
>
@ -137,7 +137,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="端口号:"
:label="$t('reconnoitreConfiguration.portNumber')"
:label-width="formLabelWidth"
prop="sbpz_port"
>
@ -153,7 +153,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="从站地址:"
:label="$t('reconnoitreConfiguration.slaveAddress')"
:label-width="formLabelWidth"
prop="sbpz_czdz"
>
@ -166,7 +166,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="轮询周期(ms):"
:label="$t('reconnoitreConfiguration.pollTime')"
:label-width="formLabelWidth"
prop="sbpz_lxzq"
>
@ -181,7 +181,7 @@
</el-row>
<!-- </el-form> -->
<div class="super_parmams">
<h3>高级参数</h3>
<h3>{{ $t('reconnoitreConfiguration.params') }}</h3>
<div>
<i class="el-icon-caret-bottom" v-if="is_retract"></i>
<i class="el-icon-caret-top" v-else="is_retract"></i>
@ -190,25 +190,24 @@
plain
@click="getRetract"
style="
width: 28px;
color: rgba(16, 16, 16, 1);
font-size: 14px;
text-align: left;
border: none;
"
>
收起</el-button
{{$t('put')}}</el-button
>
</div>
</div>
<el-divider></el-divider>
<div class="super_con" v-show="is_retract">
<div :class="$i18n.locale==='zh'?'zh_con super_con':'super_con'" v-show="is_retract">
<!-- <el-form :label-position="labelPosition" :rules="rules" ref="ruleForm"> -->
<el-row>
<el-col :span="12">
<el-form-item
label="启用毫秒采集:"
:label-width="formLabelWidth"
:label="$t('reconnoitreConfiguration.millisecond')"
:label-width="$i18n.locale==='zh'?labelWidth:formLabelWidth"
prop="sbpz_qyhmcj"
>
<el-switch v-model="formData.sbpz_qyhmcj"></el-switch>
@ -218,8 +217,8 @@
<el-row>
<el-col :span="12">
<el-form-item
label="启用批量采集:"
:label-width="formLabelWidth"
:label="$t('reconnoitreConfiguration.batch')"
:label-width="$i18n.locale==='zh'?labelWidth:formLabelWidth"
prop="sbpz_qyplcj"
>
<el-switch v-model="formData.sbpz_qyplcj"></el-switch>
@ -227,8 +226,8 @@
</el-col>
<el-col :span="12">
<el-form-item
label="最大批量采集数:"
label-width="126px"
:label="$t('reconnoitreConfiguration.maxBatch')"
:label-width="labelWidth"
prop="sbpz_zdplcjs"
>
<el-input
@ -242,8 +241,8 @@
<el-row>
<el-col :span="12">
<el-form-item
label="采集超过时间(ms):"
label-width="140px"
:label="$t('reconnoitreConfiguration.overTime')"
:label-width="labelWidth"
prop="sbpz_cjcgsj"
>
<el-input
@ -255,8 +254,8 @@
</el-col>
<el-col :span="12">
<el-form-item
label="周期上报OnChange数据:"
label-width="186px"
:label="$t('reconnoitreConfiguration.onChangData')"
:label-width="$i18n.locale==='zh'?labelWidth:'185px'"
prop="sbpz_zqsbonchange"
>
<el-switch v-model="formData.sbpz_zqsbonchange"></el-switch>
@ -266,8 +265,8 @@
<el-row>
<el-col :span="12">
<el-form-item
label="通讯事件间隔(ms):"
label-width="140px"
:label="$t('reconnoitreConfiguration.intervalTime')"
:label-width="labelWidth"
prop="sbpz_txsjjg"
>
<el-input
@ -282,8 +281,8 @@
<el-row>
<el-col :span="12">
<el-form-item
label="线圈寄存器写入功能码:"
label-width="120px"
:label="$t('reconnoitreConfiguration.writeFunction1')"
:label-width="$i18n.locale==='zh'?'286px':'130px'"
style="line-height: 20px"
class="cjjcq_code"
>
@ -304,8 +303,8 @@
</el-col>
<el-col :span="12">
<el-form-item
label="线圈寄存器写入功能码:"
label-width="120px"
:label="$t('reconnoitreConfiguration.writeFunction2')"
:label-width="$i18n.locale==='zh'?'286px':'130px'"
class="cjjcq_code"
>
<el-select
@ -328,14 +327,14 @@
</div>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="add_passage = false"> </el-button>
<el-button type="primary" @click="submitForm">{{$t('save')}}</el-button>
<el-button @click="add_passage = false">{{$t('cancel')}}</el-button>
</span>
</el-dialog>
</div>
<div class="drvieName_All" v-show="diag_drive">
<div class="title">
<p class="title_l">协议选择</p>
<p class="title_l">{{ $t('reconnoitreConfiguration.agreementName') }}</p>
<i class="el-icon-close title_r" @click="add_passage = false"></i>
</div>
<el-divider></el-divider>
@ -349,18 +348,18 @@
<!-- 网关信息 -->
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form
:model="formData"
:rules="rulesGate"
ref="gateWay"
label-width="85px"
:label-width="$i18n.locale === 'zh'?'130px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="formData.wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -372,10 +371,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="formData.wgpz_wgid"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -389,8 +388,8 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitGate">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitGate">{{ $t('save') }}</el-button>
<el-button @click="outerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
</div>
@ -399,11 +398,12 @@
<script>
import _ from "lodash";
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "ChiDevice",
data() {
return {
labelWidth:this.$i18n.locale==='zh'?'280px':'156px',
user_id: "",
loading: false,
flag: false,
@ -486,7 +486,7 @@ export default {
checked1: false,
is_retract: true,
labelPosition: "left",
formLabelWidth: "116px",
formLabelWidth: this.$i18n.locale==='zh'?'155px':"116px",
input1: 192,
add_passage: false,
rightMenu: "",
@ -608,10 +608,10 @@ export default {
},
rules: {
sbpz_sbmc: [
{ required: true, message: "请输入通道名称", trigger: "change" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_sbmc'), trigger: "change" },
],
sbpz_kzqxy: [
{ required: true, message: "请输入控制器协议", trigger: "blur" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_kzqxy'), trigger: "blur" },
],
sbpz_ip: [
{
@ -622,25 +622,25 @@ export default {
},
],
sbpz_czdz: [
{ required: true, message: "请输入从站地址", trigger: "blur" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_czdz'), trigger: "blur" },
],
sbpz_port: [
{ required: true, message: "请输入端口号", trigger: "blur" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_port'), trigger: "blur" },
],
sbpz_lxzq: [
{ required: true, message: "请输入轮询时间", trigger: "blur" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_lxzq'), trigger: "blur" },
],
sbpz_qyhmcj: [
{ required: true, message: "启用毫秒采集", trigger: "change" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_qyhmcj'), trigger: "change" },
],
sbpz_qyplcj: [
{ required: true, message: "启用批量采集", trigger: "change" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_qyplcj'), trigger: "change" },
],
sbpz_zdplcjs: [
{ required: true, message: "请输入最大批量采集数", trigger: "blur" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_zdplcjs'), trigger: "blur" },
],
sbpz_cjcgsj: [
{ required: true, message: "请输入采集超过时间", trigger: "blur" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_cjcgsj'), trigger: "blur" },
],
sbpz_zqsbonchange: [
{
@ -650,7 +650,7 @@ export default {
},
],
sbpz_txsjjg: [
{ required: true, message: "请输入通讯时间间隔", trigger: "blur" },
{ required: true, message: this.$t('reconnoitreConfiguration.rules.sbpz_txsjjg'), trigger: "blur" },
],
},
@ -663,22 +663,13 @@ export default {
},
rulesGate: {
wgpz_wgmc: [
{ required: true, message: "请选择网关名称", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgmc'), trigger: "blur" },
],
wgpz_wgid: [
{ required: true, message: "请选择网关id", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgid'), trigger: "blur" },
],
},
opts1: [
{
value: "有线区网关2",
label: "有线区网关2",
},
{
value: "无线区网关2",
label: "无线区网关2",
},
],
opts1: this.$t('dbcollectiongate.options2'),
opts2: [
{
value: "LAN-BOX2",
@ -705,7 +696,7 @@ export default {
this.sbpz_ip4 ===
"..."
) {
callback(new Error("请输入IP地址"));
callback(new Error(this.$t('reconnoitreConfiguration.rules.sbpz_ip')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.sbpz_ip1 +
@ -717,7 +708,7 @@ export default {
this.sbpz_ip4
)
) {
callback(new Error("请输入有效的IP地址"));
callback(new Error(this.$t('reconnoitreConfiguration.rules.sbpz_ip1')));
} else {
callback();
}
@ -919,8 +910,64 @@ export default {
this.formData.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.formData.mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
}else{
getQueryAnswer({
mark: "CHGYWG_wx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
if (obj.sbpz_ip) {
this.sbpz_ip1 = obj.sbpz_ip.split(".")[0];
this.sbpz_ip2 = obj.sbpz_ip.split(".")[1];
this.sbpz_ip3 = obj.sbpz_ip.split(".")[2];
this.sbpz_ip4 = obj.sbpz_ip.split(".")[3];
this.formData.sbpz_zqsbonchange = Boolean(
Number(obj.sbpz_zqsbonchange)
);
this.formData.sbpz_qyhmcj = Boolean(Number(obj.sbpz_qyhmcj));
this.formData.sbpz_qyplcj = Boolean(Number(obj.sbpz_qyplcj));
}
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_kzqxy = obj.sbpz_kzqxy;
this.formData.sbpz_port = obj.sbpz_port;
this.formData.sbpz_czdz = obj.sbpz_czdz;
this.formData.sbpz_lxzq = obj.sbpz_lxzq;
this.formData.sbpz_zdplcjs = obj.sbpz_zdplcjs;
this.formData.sbpz_cjcgsj = obj.sbpz_cjcgsj;
// console.log(this.formData.sbpz_zqsbonchange);
this.formData.sbpz_txsjjg = obj.sbpz_txsjjg;
this.formData.sbpz_xqjcqxr = obj.sbpz_xqjcqxr;
this.formData.sbpz_bcjcqxr = obj.sbpz_bcjcqxr;
this.formData.wgpz_wgid = obj.wgpz_wgid;
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.ippz_ssid = obj.ippz_ssid;
this.formData.ippz_rzfs = obj.ippz_rzfs;
this.formData.ippz_jmfs = obj.ippz_jmfs;
this.formData.ippz_mm = obj.ippz_mm;
this.formData.cjdpz_tagid = obj.mqtt_cjd_tagid;
this.formData.cjdpz_mc = obj.cjdpz_mc;
this.formData.cjdpz_sjq = obj.cjdpz_sjq;
this.formData.cjdpz_jcqdz = obj.cjdpz_cjsjlx;
this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formData.cjdpz_scms = obj.cjdpz_scms;
this.formData.mqtt_ip = obj.mqtt_ip;
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_keepalive = obj.mqtt_keepalive;
// this.formData.mqtt_tls = obj.mqtt_tls;
// this.formData.mqtt_clearsession = obj.mqtt_clearsession;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_qos = obj.mqtt_qos;
this.formData.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.formData.mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
})
}
console.log(this.formData, "8888888");
},
async sendTree() {
let result = await SendTree({
@ -1065,7 +1112,24 @@ export default {
display: inline-block;
}
}
.zh_con{
.el-col-12{
width: 100% !important;
}
.el-row{
display:block !important;
}
}
.zh_params{
.el-col-12:last-child {
padding-right: 100px !important;
}
.el-col-12:first-child {
padding-right: 66px !important;
}
}
/deep/ .pas_params {
.el-form-item {
margin-bottom: 20px !important;

View File

@ -1,14 +1,15 @@
<!-- 斥候IP设置无线网关页面 -->
<template>
<div v-loading="loading">
<div class="gateway" v-show="isShow">
<div class="gateway" :style="$i18n.locale==='zh'?'height:450px':''" v-show="isShow">
<div class="title">
<p class="title_l">IP配置</p>
<p class="title_center">本页面涉及排错请检查修改默认值</p>
<p class="title_l">{{ $t('wirelessgatewayip.title') }}</p>
<p class="title_center" v-if="$i18n.locale==='en'">{{ $t('wirelessgatewayip.prompt') }}</p>
<i class="el-icon-close title_r" @click="isShow = false"></i>
</div>
<el-divider></el-divider>
<div class="content">
<div :class="this.$i18n.locale==='zh'?'zhContent content':'content'">
<p class="zh-pro" v-if="$i18n.locale==='zh'">{{$t('wiredgatewayip.prompt')}}</p>
<el-form
:model="formData"
:label-position="labelPosition"
@ -18,20 +19,20 @@
<el-row>
<el-col :span="24">
<el-form-item
label="客户端SSID:"
:label="$t('wirelessgatewayip.clientSSID')"
:label-width="formLabelWidth"
prop="ippz_ssid"
>
<el-input
v-model="formData.ippz_ssid"
placeholder="请输入WIFI名字"
:placeholder="$t('Please')"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="认证方式:" :label-width="formLabelWidth">
<el-form-item :label="$t('wirelessgatewayip.certificationMethod')" :label-width="formLabelWidth">
<el-select v-model="formData.ippz_rzfs" placeholder="开放式">
<el-option
v-for="item in options1"
@ -46,7 +47,7 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="加密方式:" :label-width="formLabelWidth">
<el-form-item :label="$t('wirelessgatewayip.encryptionMethod')" :label-width="formLabelWidth">
<el-select v-model="formData.ippz_jmfs" placeholder="NONE">
<el-option
v-for="item in options2"
@ -62,20 +63,20 @@
<el-row>
<el-col :span="24">
<el-form-item
label="密码:"
:label="$t('wirelessgatewayip.password')"
:label-width="formLabelWidth"
prop="ippz_mm"
>
<el-input
v-model="formData.ippz_mm"
placeholder="请输入wifi密码"
:placeholder="$t('Please')"
></el-input>
</el-form-item>
</el-col>
</el-row>
<div class="footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="isShow = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="isShow = false">{{ $t('cancel') }}</el-button>
</div>
</el-form>
</div>
@ -84,7 +85,7 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, getQueryAnswer} from "@/api/user";
export default {
name: "ChiGate",
data() {
@ -93,8 +94,8 @@ export default {
user_id: "",
formData: {
ippz_ssid: "",
ippz_rzfs: "WPA2-PSK", //WPA2-PSK
ippz_jmfs: "AES", //AES
ippz_rzfs: "", //WPA2-PSK
ippz_jmfs: "", //AES
ippz_mm: "",
step: "",
wgpz_wgmc: "",
@ -179,15 +180,15 @@ export default {
},
],
labelPosition: "left",
formLabelWidth: "116px",
formLabelWidth: this.$i18n.locale === 'zh'?'160px':'116px',
value: "测试",
count: 0,
isShow: true,
rules: {
ippz_ssid: [
{ required: true, message: "请输入客户端SSID", trigger: "blur" },
{ required: true, message: this.$t('wirelessgatewayip.rules.ippz_wifi_ssid'), trigger: "blur" },
],
ippz_mm: [{ required: true, message: "请输入密码", trigger: "blur" }],
ippz_mm: [{ required: true, message: this.$t('wirelessgatewayip.rules.ippz_wifi_mm'), trigger: "blur" }],
},
};
},
@ -249,40 +250,88 @@ export default {
this.formData.ippz_rzfs = obj.ippz_rzfs;
this.formData.ippz_jmfs = obj.ippz_jmfs;
}
(this.formData.ippz_ssid = obj.ippz_ssid),
// alert(this.formData.ippz_ssid);
(this.formData.ippz_mm = obj.ippz_mm),
(this.formData.wgpz_wgmc = obj.wgpz_wgmc),
(this.formData.wgpz_wgid = obj.wgpz_wgid),
(this.formData.sbpz_sbmc = obj.sbpz_sbmc),
(this.formData.sbpz_kzqxy = obj.sbpz_kzqxy),
(this.formData.sbpz_ip = obj.sbpz_ip),
(this.formData.sbpz_port = obj.sbpz_port),
(this.formData.sbpz_czdz = obj.sbpz_czdz),
(this.formData.sbpz_lxzq = obj.sbpz_lxzq),
(this.formData.sbpz_qyhmcj = obj.sbpz_qyhmcj),
(this.formData.sbpz_qyplcj = obj.sbpz_qyplcj),
(this.formData.sbpz_zdplcjs = obj.sbpz_zdplcjs),
(this.formData.sbpz_cjcgsj = obj.sbpz_cjcgsj),
(this.formData.sbpz_zqsbonchange = obj.sbpz_zqsbonchange),
(this.formData.sbpz_txsjjg = obj.sbpz_txsjjg),
(this.formData.sbpz_xqjcqxr = obj.sbpz_xqjcqxr),
(this.formData.sbpz_bcjcqxr = obj.sbpz_bcjcqxr),
(this.formData.cjdpz_tagid = obj.cjdpz_tagid),
(this.formData.cjdpz_mc = obj.cjdpz_mc),
(this.formData.cjdpz_sjq = obj.cjdpz_sjq),
(this.formData.cjdpz_jcqdz = obj.cjdpz_jcqdz),
(this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx),
(this.formData.cjdpz_dxsx = obj.cjdpz_dxsx),
(this.formData.cjdpz_scms = obj.cjdpz_scms),
(this.formData.mqtt_ip = obj.mqtt_ip),
(this.formData.mqtt_wgsn = obj.mqtt_wgsn),
(this.formData.mqtt_port = obj.mqtt_port),
(this.formData.mqtt_keepalive = obj.mqtt_keepalive),
(this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt),
(this.formData.mqtt_qos = obj.mqtt_qos),
(this.formData.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc),
(this.formData.mqtt_cjd_tagid = obj.mqtt_cjd_tagid);
this.formData.ippz_ssid = obj.ippz_ssid;
// alert(this.formData.ippz_ssid);
this.formData.ippz_mm = obj.ippz_mm;
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.wgpz_wgid = obj.wgpz_wgid;
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_kzqxy = obj.sbpz_kzqxy;
this.formData.sbpz_ip = obj.sbpz_ip;
this.formData.sbpz_port = obj.sbpz_port;
this.formData.sbpz_czdz = obj.sbpz_czdz;
this.formData.sbpz_lxzq = obj.sbpz_lxzq;
this.formData.sbpz_qyhmcj = obj.sbpz_qyhmcj;
this.formData.sbpz_qyplcj = obj.sbpz_qyplcj;
this.formData.sbpz_zdplcjs = obj.sbpz_zdplcjs;
this.formData.sbpz_cjcgsj = obj.sbpz_cjcgsj;
this.formData.sbpz_zqsbonchange = obj.sbpz_zqsbonchange;
this.formData.sbpz_txsjjg = obj.sbpz_txsjjg;
this.formData.sbpz_xqjcqxr = obj.sbpz_xqjcqxr;
this.formData.sbpz_bcjcqxr = obj.sbpz_bcjcqxr;
this.formData.cjdpz_tagid = obj.cjdpz_tagid;
this.formData.cjdpz_mc = obj.cjdpz_mc;
this.formData.cjdpz_sjq = obj.cjdpz_sjq;
this.formData.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formData.cjdpz_scms = obj.cjdpz_scms;
this.formData.mqtt_ip = obj.mqtt_ip;
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_keepalive = obj.mqtt_keepalive;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_qos = obj.mqtt_qos;
this.formData.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.formData.mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
}else{
getQueryAnswer({
mark: "CHGYWG_wx",
user_id: this.user_id
}).then(res => {
if (res.data.data.step) {
this.step = res.data.data.step;
}
let obj = JSON.parse(res.data.data.r3);
if (obj.ippz_rzfs) {
this.formData.ippz_rzfs = obj.ippz_rzfs;
this.formData.ippz_jmfs = obj.ippz_jmfs;
}
this.formData.ippz_ssid = obj.ippz_ssid;
// alert(this.formData.ippz_ssid);
this.formData.ippz_mm = obj.ippz_mm;
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.wgpz_wgid = obj.wgpz_wgid;
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_kzqxy = obj.sbpz_kzqxy;
this.formData.sbpz_ip = obj.sbpz_ip;
this.formData.sbpz_port = obj.sbpz_port;
this.formData.sbpz_czdz = obj.sbpz_czdz;
this.formData.sbpz_lxzq = obj.sbpz_lxzq;
this.formData.sbpz_qyhmcj = obj.sbpz_qyhmcj;
this.formData.sbpz_qyplcj = obj.sbpz_qyplcj;
this.formData.sbpz_zdplcjs = obj.sbpz_zdplcjs;
this.formData.sbpz_cjcgsj = obj.sbpz_cjcgsj;
this.formData.sbpz_zqsbonchange = obj.sbpz_zqsbonchange;
this.formData.sbpz_txsjjg = obj.sbpz_txsjjg;
this.formData.sbpz_xqjcqxr = obj.sbpz_xqjcqxr;
this.formData.sbpz_bcjcqxr = obj.sbpz_bcjcqxr;
this.formData.cjdpz_tagid = obj.cjdpz_tagid;
this.formData.cjdpz_mc = obj.cjdpz_mc;
this.formData.cjdpz_sjq = obj.cjdpz_sjq;
this.formData.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formData.cjdpz_scms = obj.cjdpz_scms;
this.formData.mqtt_ip = obj.mqtt_ip;
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_keepalive = obj.mqtt_keepalive;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_qos = obj.mqtt_qos;
this.formData.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.formData.mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
})
}
},
},
@ -293,6 +342,10 @@ export default {
</script>
<style lang="less" scoped>
.zh-pro{
color: rgba(189, 49, 36, 1);
margin-bottom: 15px;
}
.gateway {
position: absolute;
left: 648px;
@ -316,15 +369,15 @@ export default {
justify-content: space-between;
.title_l {
width: 53px;
height: 26px;
//width: 53px;
//height: 26px;
color: rgba(16, 16, 16, 1);
font-size: 18px;
text-align: left;
}
.title_center {
width: 288px;
//width: 288px;
height: 26px;
line-height: 26px;
color: rgba(189, 49, 36, 1);
@ -343,13 +396,16 @@ export default {
/deep/ .content {
margin-left: 62px;
margin-right: 114px;
margin-right: 138px;
.el-input__inner {
width: 200px;
height: 30px;
}
}
/deep/ .zhContent{
margin: 62px;
}
/deep/ .footer {
.el-button {

View File

@ -2,18 +2,18 @@
<template>
<div>
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form
:model="formData"
:rules="rules"
ref="formData"
label-width="85px"
:label-width="$i18n.locale === 'zh'?'130px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="formData.wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -25,10 +25,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="formData.wgpz_wgid"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -42,24 +42,24 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitForm">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="outerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
</div>
<div>
<el-dialog
title="系统提示"
:title="$t('dbcollectiongate.dialogTitle')"
:visible.sync="innerVisible"
append-to-body
width="382px"
>
<p class="inner_content">
请确认选择的网关类型与网关实体一致:否则该工程无法下载至实体网关
{{ $t('dbcollectiongate.dialogContent') }}
</p>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="saveGate">确定</el-button>
<el-button @click="innerVisible = false"> </el-button>
<el-button type="primary" @click="saveGate">{{ $t('confirm') }}</el-button>
<el-button @click="innerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
</div>
@ -67,7 +67,7 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "TestChiGate",
data() {
@ -76,16 +76,7 @@ export default {
loading: false,
trees: [],
user_id: "",
options1: [
{
value: "有线区网关2",
label: "有线区网关2",
},
{
value: "无线区网关2",
label: "无线区网关2",
},
],
options1: this.$t('dbcollectiongate.options2'),
options2: [
{
value: "LAN-BOX2",
@ -150,10 +141,10 @@ export default {
// isShow: true,
rules: {
wgpz_wgid: [
{ required: true, message: "请输入网关ID", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgid'), trigger: "blur" },
],
wgpz_wgmc: [
{ required: true, message: "请输入网关名称", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgid'), trigger: "blur" },
],
},
};
@ -228,52 +219,105 @@ export default {
console.log(data, "斥候有线网关页面");
this.loading = false;
// alert(this.step);
console.log(JSON.parse(data.data.mark_value));
let obj = JSON.parse(data.data.mark_value);
console.log(obj);
this.formData.wgpz_wgid = obj.wgpz_wgid;
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
if(data.state){
let obj = JSON.parse(data.data.mark_value);
console.log(obj);
this.formData.wgpz_wgid = obj.wgpz_wgid;
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.ippz_wllx = obj.ippz_wllx;
this.formData.ippz_ip = obj.ippz_ip;
this.formData.ippz_zwym = obj.ippz_zwym;
this.formData.ippz_wg = obj.ippz_wg;
this.formData.ippz_dns = obj.ippz_dns;
this.formData.ippz_dns_by = obj.ippz_dns_by;
this.formData.ippz_wllx = obj.ippz_wllx;
this.formData.ippz_ip = obj.ippz_ip;
this.formData.ippz_zwym = obj.ippz_zwym;
this.formData.ippz_wg = obj.ippz_wg;
this.formData.ippz_dns = obj.ippz_dns;
this.formData.ippz_dns_by = obj.ippz_dns_by;
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_kzqxy = obj.sbpz_kzqxy;
this.formData.sbpz_ip = obj.sbpz_ip;
this.formData.sbpz_port = obj.sbpz_port;
this.formData.sbpz_czdz = obj.sbpz_czdz;
this.formData.sbpz_lxzq = obj.sbpz_lxzq;
this.formData.sbpz_qyhmcj = obj.sbpz_qyhmcj;
this.formData.sbpz_qyplcj = obj.sbpz_qyplcj;
this.formData.sbpz_zdplcjs = obj.sbpz_zdplcjs;
this.formData.sbpz_cjcgsj = obj.sbpz_cjcgsj;
this.formData.sbpz_zqsbonchange = obj.sbpz_zqsbonchange;
this.formData.sbpz_txsjjg = obj.sbpz_txsjjg;
this.formData.sbpz_xqjcqxr = obj.sbpz_xqjcqxr;
this.formData.sbpz_bcjcqxr = obj.sbpz_bcjcqxr;
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_kzqxy = obj.sbpz_kzqxy;
this.formData.sbpz_ip = obj.sbpz_ip;
this.formData.sbpz_port = obj.sbpz_port;
this.formData.sbpz_czdz = obj.sbpz_czdz;
this.formData.sbpz_lxzq = obj.sbpz_lxzq;
this.formData.sbpz_qyhmcj = obj.sbpz_qyhmcj;
this.formData.sbpz_qyplcj = obj.sbpz_qyplcj;
this.formData.sbpz_zdplcjs = obj.sbpz_zdplcjs;
this.formData.sbpz_cjcgsj = obj.sbpz_cjcgsj;
this.formData.sbpz_zqsbonchange = obj.sbpz_zqsbonchange;
this.formData.sbpz_txsjjg = obj.sbpz_txsjjg;
this.formData.sbpz_xqjcqxr = obj.sbpz_xqjcqxr;
this.formData.sbpz_bcjcqxr = obj.sbpz_bcjcqxr;
this.formData.cjdpz_tagid = obj.mqtt_cjd_tagid;
this.formData.cjdpz_mc = obj.cjdpz_mc;
this.formData.cjdpz_sjq = obj.cjdpz_sjq;
this.formData.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formData.cjdpz_scms = obj.cjdpz_scms;
this.formData.cjdpz_tagid = obj.mqtt_cjd_tagid;
this.formData.cjdpz_mc = obj.cjdpz_mc;
this.formData.cjdpz_sjq = obj.cjdpz_sjq;
this.formData.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formData.cjdpz_scms = obj.cjdpz_scms;
this.formData.mqtt_ip = obj.mqtt_ip;
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_keepalive = obj.mqtt_keepalive;
// this.formData.mqtt_tls = obj.mqtt_tls;
// this.formData.mqtt_clearsession = obj.mqtt_clearsession;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_qos = obj.mqtt_qos;
this.formData.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.formData.mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
}else{
getQueryAnswer({
mark: "DB-IotLite_wx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
console.log(obj);
this.formData.wgpz_wgid = obj.wgpz_wgid;
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.ippz_wllx = obj.ippz_wllx;
this.formData.ippz_ip = obj.ippz_ip;
this.formData.ippz_zwym = obj.ippz_zwym;
this.formData.ippz_wg = obj.ippz_wg;
this.formData.ippz_dns = obj.ippz_dns;
this.formData.ippz_dns_by = obj.ippz_dns_by;
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_kzqxy = obj.sbpz_kzqxy;
this.formData.sbpz_ip = obj.sbpz_ip;
this.formData.sbpz_port = obj.sbpz_port;
this.formData.sbpz_czdz = obj.sbpz_czdz;
this.formData.sbpz_lxzq = obj.sbpz_lxzq;
this.formData.sbpz_qyhmcj = obj.sbpz_qyhmcj;
this.formData.sbpz_qyplcj = obj.sbpz_qyplcj;
this.formData.sbpz_zdplcjs = obj.sbpz_zdplcjs;
this.formData.sbpz_cjcgsj = obj.sbpz_cjcgsj;
this.formData.sbpz_zqsbonchange = obj.sbpz_zqsbonchange;
this.formData.sbpz_txsjjg = obj.sbpz_txsjjg;
this.formData.sbpz_xqjcqxr = obj.sbpz_xqjcqxr;
this.formData.sbpz_bcjcqxr = obj.sbpz_bcjcqxr;
this.formData.cjdpz_tagid = obj.mqtt_cjd_tagid;
this.formData.cjdpz_mc = obj.cjdpz_mc;
this.formData.cjdpz_sjq = obj.cjdpz_sjq;
this.formData.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formData.cjdpz_scms = obj.cjdpz_scms;
this.formData.mqtt_ip = obj.mqtt_ip;
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_keepalive = obj.mqtt_keepalive;
// this.formData.mqtt_tls = obj.mqtt_tls;
// this.formData.mqtt_clearsession = obj.mqtt_clearsession;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_qos = obj.mqtt_qos;
this.formData.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.formData.mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
})
}
this.formData.mqtt_ip = obj.mqtt_ip;
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_keepalive = obj.mqtt_keepalive;
// this.formData.mqtt_tls = obj.mqtt_tls;
// this.formData.mqtt_clearsession = obj.mqtt_clearsession;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_qos = obj.mqtt_qos;
this.formData.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.formData.mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
if (data.data && data.state) {
if (data.data.step) {

View File

@ -40,35 +40,35 @@
</div> -->
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-form :model="formData" :rules="rules" ref="formData" label-width="85px" class="demo-ruleForm">
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-select v-model="formData.wgpz_wgmc" placeholder="请选择" style="width: 200px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form :model="formData" :rules="rules" ref="formData" :label-width="$i18n.locale === 'zh'?'130px':'85px'" class="demo-ruleForm">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select v-model="formData.wgpz_wgmc" :placeholder="$t('select')" style="width: 200px">
<el-option v-for="item in options1" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-select v-model="formData.wgpz_wgid" placeholder="请选择" style="width: 200px">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select v-model="formData.wgpz_wgid" :placeholder="$t('select')" style="width: 200px">
<el-option v-for="item in options2" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitForm">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="outerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
</div>
<div>
<el-dialog title="系统提示" :visible.sync="innerVisible" append-to-body width="382px">
<el-dialog :title="$t('dbcollectiongate.dialogTitle')" :visible.sync="innerVisible" append-to-body width="382px">
<p class="inner_content" style="color: #fff">
请确认选择的网关类型与网关实体一致:否则该工程无法下载至实体网关
{{ $t('dbcollectiongate.dialogContent') }}
</p>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="saveGate">确定</el-button>
<el-button @click="innerVisible = false"> </el-button>
<el-button type="primary" @click="saveGate">{{ $t('confirm') }}</el-button>
<el-button @click="innerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
</div>
@ -76,7 +76,7 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "TestChiGate",
@ -85,16 +85,7 @@ export default {
trees: [],
loading: false,
user_id: "",
options1: [
{
value: "有线区网关2",
label: "有线区网关2",
},
{
value: "无线区网关2",
label: "无线区网关2",
},
],
options1: this.$t('dbcollectiongate.options2'),
options2: [
{
value: "LAN-BOX2",
@ -152,10 +143,10 @@ export default {
isShow: true,
rules: {
wgpz_wgid: [
{ required: true, message: "请输入网关ID", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgid'), trigger: "blur" },
],
wgpz_wgmc: [
{ required: true, message: "请输入网关名称", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgmc'), trigger: "blur" },
],
},
};
@ -226,10 +217,8 @@ export default {
// user_id: "USER202307301109254198",
});
this.loading = false;
console.log(data);
if (data.data && data.state) {
let obj = JSON.parse(data.data.mark_value);
// console.log('111yyyyyyyyyyyyyy',obj);
this.formData.wgpz_wgid = obj.wgpz_wgid;
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.ippz_ssid = obj.ippz_ssid;
@ -238,11 +227,11 @@ export default {
this.formData.ippz_mm = obj.ippz_mm;
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_kzqxy = obj.sbpz_kzqxy;
this.formData.sbpz_ip == obj.sbpz_ip;
this.formData.sbpz_port == obj.sbpz_port;
this.formData.sbpz_czdz == obj.sbpz_czdz;
this.formData.sbpz_lxzq == obj.sbpz_lxzq;
this.formData.sbpz_qyhmcj == obj.sbpz_qyhmcj;
this.formData.sbpz_ip = obj.sbpz_ip;
this.formData.sbpz_port = obj.sbpz_port;
this.formData.sbpz_czdz = obj.sbpz_czdz;
this.formData.sbpz_lxzq = obj.sbpz_lxzq;
this.formData.sbpz_qyhmcj = obj.sbpz_qyhmcj;
this.formData.sbpz_qyplcj = obj.sbpz_qyplcj;
this.formData.sbpz_zdplcjs = obj.sbpz_zdplcjs;
this.formData.sbpz_cjcgsj = obj.sbpz_cjcgsj;
@ -266,13 +255,61 @@ export default {
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_qos = obj.mqtt_qos;
if (data.data.step) {
if (data.data.step){
if (data.data.step == 1) {
this.$router.push(`/chiwifidevice?user_id=${this.user_id}`);
} else if (data.data.step == 2) {
this.$router.push(`/chiwificollect?user_id=${this.user_id}`);
}
}
}else{
getQueryAnswer({
mark: "CHGYWG_wx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
this.formData.wgpz_wgid = obj.wgpz_wgid;
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.ippz_ssid = obj.ippz_ssid;
this.formData.ippz_rzfs = obj.ippz_rzfs;
this.formData.ippz_jmfs = obj.ippz_jmfs;
this.formData.ippz_mm = obj.ippz_mm;
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_kzqxy = obj.sbpz_kzqxy;
this.formData.sbpz_ip = obj.sbpz_ip;
this.formData.sbpz_port = obj.sbpz_port;
this.formData.sbpz_czdz = obj.sbpz_czdz;
this.formData.sbpz_lxzq = obj.sbpz_lxzq;
this.formData.sbpz_qyhmcj = obj.sbpz_qyhmcj;
this.formData.sbpz_qyplcj = obj.sbpz_qyplcj;
this.formData.sbpz_zdplcjs = obj.sbpz_zdplcjs;
this.formData.sbpz_cjcgsj = obj.sbpz_cjcgsj;
this.formData.sbpz_zqsbonchange = obj.sbpz_zqsbonchange;
this.formData.sbpz_txsjjg = obj.sbpz_txsjjg;
this.formData.sbpz_xqjcqxr = obj.sbpz_xqjcqxr;
this.formData.sbpz_bcjcqxr = obj.sbpz_bcjcqxr;
this.formData.cjdpz_tagid = obj.cjdpz_tagid;
this.formData.cjdpz_mc = obj.cjdpz_mc;
this.formData.cjdpz_sjq = obj.cjdpz_sjq;
this.formData.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formData.cjdpz_scms = obj.cjdpz_scms;
this.formData.mqtt_ip = obj.mqtt_ip;
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_keepalive = obj.mqtt_keepalive;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_qos = obj.mqtt_qos;
if (res.data.data.step) {
if (res.data.data.step == 1) {
this.$router.push(`/chiwifidevice?user_id=${this.user_id}`);
} else if (res.data.data.step == 2) {
this.$router.push(`/chiwificollect?user_id=${this.user_id}`);
}
}
})
}
},
},

View File

@ -1,19 +1,20 @@
<!-- 斥候有线网关页面 -->
<template>
<div>
<div class="gateway" v-show="isShow">
<div class="gateway" :style="$i18n.locale==='zh'?'height:600px':''" v-show="isShow">
<div class="title">
<p class="title_l">IP配置</p>
<p class="title_center">本页面涉及排错请检查修改默认值</p>
<p class="title_l">{{$t('wiredgatewayip.title')}}</p>
<p class="title_center" v-if="$i18n.locale==='en'">{{$t('wiredgatewayip.prompt')}}</p>
<i class="el-icon-close title_r" @click="isShow = false"></i>
</div>
<el-divider></el-divider>
<div class="content">
<div :class="$i18n.locale==='zh'?'zhContent content':'content'">
<div class="lan">
<p class="zh-pro" v-if="$i18n.locale==='zh'">{{$t('wiredgatewayip.prompt')}}</p>
<el-form v-loading="loading" :model="formData" :label-position="labelPosition" :rules="rules" ref="formData">
<el-row>
<el-col :span="24">
<el-form-item label="网络类型:" :label-width="formLabelWidth" prop="ippz_wllx">
<el-form-item :label="$t('wiredgatewayip.networkType')" :label-width="formLabelWidth" prop="ippz_wllx">
<el-select v-model="formData.ippz_wllx" placeholder="静态IP" style="width: 200px">
<el-option label="静态IP" value="静态IP"></el-option>
</el-select>
@ -22,7 +23,7 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="IP地址:" :label-width="formLabelWidth" prop="ippz_ip">
<el-form-item :label="$t('wiredgatewayip.IP')" :label-width="formLabelWidth" prop="ippz_ip">
<el-row>
<el-col :span="5">
<el-input v-model="ippz_ip1"></el-input>
@ -45,7 +46,7 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="子网掩码:" :label-width="formLabelWidth" prop="ippz_zwym">
<el-form-item :label="$t('wiredgatewayip.SubnetMask')" :label-width="formLabelWidth" prop="ippz_zwym">
<el-row>
<el-col :span="5">
<el-input v-model="ippz_zwym1"></el-input>
@ -68,7 +69,7 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="网关:" :label-width="formLabelWidth">
<el-form-item :label="$t('wiredgatewayip.gateWay')" :label-width="formLabelWidth">
<el-row>
<el-col :span="5">
<el-input v-model="ippz_wg1"></el-input>
@ -114,7 +115,7 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="备用DNS:" :label-width="formLabelWidth" prop="ippz_dns_by">
<el-form-item :label="$t('wiredgatewayip.DNS2')" :label-width="formLabelWidth" prop="ippz_dns_by">
<el-row>
<el-col :span="5">
<el-input v-model="ippz_dns_by1"></el-input>
@ -137,9 +138,9 @@
</el-row>
</el-form>
</div>
<div class="footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="isShow = false"> </el-button>
<div class="footer" :style="this.$i18n.locale==='zh'?'bottom: 2rem;':''">
<el-button type="primary" @click="submitForm">{{$t('save')}}</el-button>
<el-button @click="isShow = false">{{$t('cancel')}}</el-button>
</div>
</div>
</div>
@ -147,17 +148,16 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, getQueryAnswer} from "@/api/user";
export default {
name: "TestChiGate",
data() {
return {
loading: false,
step: "",
user_id: "",
formData: {
ippz_wllx: "静态IP",
ippz_wllx: "",
ippz_ip: "",
ippz_zwym: "",
ippz_wg: "",
@ -165,34 +165,34 @@ export default {
ippz_dns_by: "",
},
ippz_ip1: "192",
ippz_ip2: "168",
ippz_ip3: "1",
ippz_ip4: "1",
ippz_zwym1: "255",
ippz_zwym2: "255",
ippz_zwym3: "255",
ippz_zwym4: "0",
ippz_wg1: "192",
ippz_wg2: "168",
ippz_wg3: "1",
ippz_wg4: "1",
ippz_dns1: "8",
ippz_dns2: "8",
ippz_dns3: "8",
ippz_dns4: "8",
ippz_dns_by1: "8",
ippz_dns_by2: "8",
ippz_dns_by3: "8",
ippz_dns_by4: "8",
ippz_ip1: "",
ippz_ip2: "",
ippz_ip3: "",
ippz_ip4: "",
ippz_zwym1: "",
ippz_zwym2: "",
ippz_zwym3: "",
ippz_zwym4: "",
ippz_wg1: "",
ippz_wg2: "",
ippz_wg3: "",
ippz_wg4: "",
ippz_dns1: "",
ippz_dns2: "",
ippz_dns3: "",
ippz_dns4: "",
ippz_dns_by1: "",
ippz_dns_by2: "",
ippz_dns_by3: "",
ippz_dns_by4: "",
radio: "1",
labelPosition: "left",
formLabelWidth: "116px",
formLabelWidth: this.$i18n.locale === 'zh'?'150px':'116px',
count: 0,
isShow: true,
rules: {
ippz_wllx: [
{ required: true, message: "请输入网络类型", trigger: "blur" },
{ required: true, message: this.$t('wiredgatewayip.rules.ippz_wllx'), trigger: "blur" },
],
ippz_ip: [
{
@ -285,7 +285,7 @@ export default {
this.ippz_zwym4 ===
"..."
) {
callback(new Error("请输入子网掩码"));
callback(new Error(this.$t('wiredgatewayip.rules.ippz_zwym')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_zwym1 +
@ -297,7 +297,7 @@ export default {
this.ippz_zwym4
)
) {
callback(new Error("请输入有效的子网掩码"));
callback(new Error(this.$t('wiredgatewayip.rules.ippz_zwym1')));
} else {
callback();
}
@ -314,7 +314,7 @@ export default {
this.ippz_ip4 ===
"..."
) {
callback(new Error("请输入IP地址"));
callback(new Error(this.$t('wiredgatewayip.rules.ippz_ip')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_ip1 +
@ -326,7 +326,7 @@ export default {
this.ippz_ip4
)
) {
callback(new Error("请输入有效的IP地址"));
callback(new Error(this.$t('wiredgatewayip.rules.ippz_ip1')));
} else {
callback();
}
@ -372,7 +372,7 @@ export default {
this.ippz_dns_by4 ===
"..."
) {
callback(new Error("请输入备用DNS服务器地址"));
callback(new Error(this.$t('wiredgatewayip.rules.ippz_dns_by')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_dns_by1 +
@ -384,7 +384,7 @@ export default {
this.ippz_dns_by4
)
) {
callback(new Error("请输入有效的备用DNS服务器地址"));
callback(new Error(this.$t('wiredgatewayip.rules.ippz_dns_by1')));
} else {
callback();
}
@ -519,7 +519,85 @@ export default {
user_id: this.user_id,
});
this.loading = false;
if(!data.state){
getQueryAnswer({
mark: "CHGYWG_yx",
user_id: this.user_id
}).then(res => {
//
let obj = JSON.parse(res.data.data.r3)
console.log(obj,'默认值')
this.formData.ippz_wllx = obj.ippz_wllx;
if (obj.ippz_ip != "") {
this.ippz_ip1 = obj.ippz_ip.split(".")[0];
this.ippz_ip2 = obj.ippz_ip.split(".")[1];
this.ippz_ip3 = obj.ippz_ip.split(".")[2];
this.ippz_ip4 = obj.ippz_ip.split(".")[3];
this.ippz_zwym1 = obj.ippz_zwym.split(".")[0];
this.ippz_zwym2 = obj.ippz_zwym.split(".")[1];
this.ippz_zwym3 = obj.ippz_zwym.split(".")[2];
this.ippz_zwym4 = obj.ippz_zwym.split(".")[3];
this.ippz_wg1 = obj.ippz_wg.split(".")[0];
this.ippz_wg2 = obj.ippz_wg.split(".")[1];
this.ippz_wg3 = obj.ippz_wg.split(".")[2];
this.ippz_wg4 = obj.ippz_wg.split(".")[3];
this.ippz_dns1 = obj.ippz_dns.split(".")[0];
this.ippz_dns2 = obj.ippz_dns.split(".")[1];
this.ippz_dns3 = obj.ippz_dns.split(".")[2];
this.ippz_dns4 = obj.ippz_dns.split(".")[3];
this.ippz_dns_by1 = obj.ippz_dns_by.split(".")[0];
this.ippz_dns_by2 = obj.ippz_dns_by.split(".")[1];
this.ippz_dns_by3 = obj.ippz_dns_by.split(".")[2];
this.ippz_dns_by4 = obj.ippz_dns_by.split(".")[3];
}
// else {
//
this.ippz_wllx = obj.ippz_wllx;
this.ippz_ip = obj.ippz_ip;
this.ippz_zwym = obj.ippz_zwym;
this.ippz_wg = obj.ippz_wg;
this.ippz_dns = obj.ippz_dns;
this.ippz_dns_by = obj.ippz_dns_by;
this.wgpz_wgmc = obj.wgpz_wgmc;
this.wgpz_wgid = obj.wgpz_wgid;
this.sbpz_sbmc = obj.sbpz_sbmc;
this.sbpz_kzqxy = obj.sbpz_kzqxy;
this.sbpz_ip = obj.sbpz_ip;
this.sbpz_port = obj.sbpz_port;
this.sbpz_czdz = obj.sbpz_czdz;
this.sbpz_lxzq = obj.sbpz_lxzq;
this.sbpz_qyhmcj = obj.sbpz_qyhmcj;
this.sbpz_qyplcj = obj.sbpz_qyplcj;
this.sbpz_zdplcjs = obj.sbpz_zdplcjs;
this.sbpz_cjcgsj = obj.sbpz_cjcgsj;
this.sbpz_zqsbonchange = obj.sbpz_zqsbonchange;
this.sbpz_txsjjg = obj.sbpz_txsjjg;
this.sbpz_xqjcqxr = obj.sbpz_xqjcqxr;
this.sbpz_bcjcqxr = obj.sbpz_bcjcqxr;
this.cjdpz_tagid = obj.cjdpz_tagid;
this.cjdpz_mc = obj.cjdpz_mc;
this.cjdpz_sjq = obj.cjdpz_sjq;
this.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.cjdpz_dxsx = obj.cjdpz_dxsx;
this.cjdpz_scms = obj.cjdpz_scms;
this.mqtt_ip = obj.mqtt_ip;
this.mqtt_wgsn = obj.mqtt_wgsn;
this.mqtt_port = obj.mqtt_port;
this.mqtt_keepalive = obj.mqtt_keepalive;
this.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.mqtt_qos = obj.mqtt_qos;
// this.mqtt_tls = obj.mqtt_tls;
// this.mqtt_clearsession = obj.mqtt_clearsession;
this.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
})
}
// console.log(data, "线");
// console.log(JSON.parse(data.data.mark_value));
if (data.data !== null && data.state) {
@ -527,7 +605,7 @@ export default {
this.step = data.data.step;
}
var obj = JSON.parse(data.data.mark_value);
// console.log(obj);
console.log(obj,'xxx');
this.formData.ippz_wllx = obj.ippz_wllx;
if (obj.ippz_ip != "") {
this.ippz_ip1 = obj.ippz_ip.split(".")[0];
@ -605,6 +683,10 @@ export default {
</script>
<style lang="less" scoped>
.zh-pro{
color: rgba(189, 49, 36, 1);
margin-bottom: 15px;
}
.gateway {
position: absolute;
top: 145px;
@ -627,8 +709,8 @@ export default {
justify-content: space-between;
.title_l {
width: 53px;
height: 26px;
//width: 53px;
//height: 26px;
color: rgba(16, 16, 16, 1);
font-size: 18px;
text-align: left;
@ -680,10 +762,15 @@ export default {
}
}
}
.zhContent{
.el-col-24 {
padding-right: 0 !important;
}
}
/deep/ .footer {
position: absolute;
left: 50%;
transform: translateX(-50%);
.el-button {

View File

@ -32,14 +32,14 @@
<el-row>
<el-col :span="24">
<el-form-item>
<el-checkbox v-model="formData.mqtt_qiyong">启动</el-checkbox>
<el-checkbox v-model="formData.mqtt_qiyong">{{ $t('mqttClient.enable') }}</el-checkbox>
</el-form-item>
</el-col>
</el-row>
<el-row class="serveip">
<el-col :span="12">
<el-form-item
label="服务器IP:"
:label="$t('mqttClient.serverIp')"
:label-width="formLabelWidth"
prop="mqtt_ip"
>
@ -91,7 +91,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="端口号:"
:label="$t('mqttClient.port')"
:label-width="formLabelWidth"
prop="mqtt_port"
>
@ -106,8 +106,8 @@
<el-row>
<el-col :span="24">
<el-form-item
label="网关SN号:"
:label-width="formLabelWidth"
:label="$t('mqttClient.gatewaySN')"
prop="mqtt_wgsn"
>
<el-input
@ -122,9 +122,9 @@
<el-row class="theme">
<el-col :span="12">
<el-form-item
label="实时数据发布的主题"
:label="$t('mqttClient.realTimePublish')"
style="display: block"
label-width="168px"
prop="mqtt_sssjfbzt"
>
<el-row>
@ -138,7 +138,7 @@
<el-col :span="9">
<el-select
v-model="formData.mqtt_qos"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 99px"
>
<el-option
@ -162,13 +162,13 @@
<el-row>
<el-col :span="12">
<el-form-item
label="上传模式:"
:label-width="formLabelWidth"
:label="$t('mqttClient.uploadMode')"
prop="mqtt_scms"
>
<el-select
v-model="formData.mqtt_scms"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 99px"
>
<el-option
@ -183,8 +183,8 @@
</el-col>
<el-col :span="12">
<el-form-item
label="上传周期(s):"
label-width="108px"
:label="$t('mqttClient.uploadCycle')"
prop="mqtt_sczq"
>
<el-input
@ -198,23 +198,23 @@
<el-row>
<el-col :span="24">
<el-form-item
label="数据过滤:"
:label-width="formLabelWidth"
:label="$t('mqttClient.dataFilter')"
prop="mqtt_sjgl"
>
<div class="checkbox1">
<el-checkbox-group v-model="formData.mqtt_sjgl">
<el-checkbox label="值改变">值改变</el-checkbox>
<el-checkbox label="采集成功">采集成功</el-checkbox>
<el-checkbox label="时间戳改变">时间戳改变</el-checkbox>
<el-checkbox :label="$t('mqttClient.oneCheck')">{{ $t('mqttClient.oneCheck') }}</el-checkbox>
<el-checkbox :label="$t('mqttClient.twoCheck')">{{ $t('mqttClient.twoCheck') }}</el-checkbox>
<el-checkbox :label="$t('mqttClient.threeCheck')">{{ $t('mqttClient.threeCheck') }}</el-checkbox>
</el-checkbox-group>
</div>
</el-form-item>
</el-col>
</el-row>
<div class="con_left_footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="add_passage = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="add_passage = false">{{ $t('cancel') }}</el-button>
</div>
</el-form>
</div>
@ -233,7 +233,7 @@
</div>
<el-table ref="singleTable" :data="tableData" style="width: 100%">
<el-table-column type="index"> </el-table-column>
<el-table-column property="mqtt_cjd_sbmc" label="设备名称">
<el-table-column property="mqtt_cjd_sbmc" :label="$t('mqttClient.deviceName')">
<template slot-scope="scope">
<el-select v-model="scope.row.mqtt_cjd_sbmc" placeholder="">
<el-option
@ -274,25 +274,25 @@
>
</el-tree>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="savePoint"> </el-button>
<el-button @click="choose_point = false"> </el-button>
<el-button type="primary" @click="savePoint">{{ $t('save') }}</el-button>
<el-button @click="choose_point = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form
:model="formData"
:rules="rulesGate"
ref="gateWay"
label-width="85px"
:label-width="$i18n.locale==='zh'?'130px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="formData.wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -304,10 +304,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="formData.wgpz_wgid"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -319,10 +319,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关类型:" prop="wgpz_wglx">
<el-form-item :label="$t('dbcollectiongate.type')" prop="wgpz_wglx">
<el-select
v-model="formData.wgpz_wglx"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -336,8 +336,8 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitGate">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitGate">{{$t('save')}}</el-button>
<el-button @click="outerVisible = false">{{$t('save')}}</el-button>
</div>
</el-dialog>
</div>
@ -345,7 +345,7 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "CloneView",
@ -364,7 +364,7 @@ export default {
ippz_dns_sx: "",
ippz_dns_by: "",
ippz_ip: "",
ippz_mac: "3C:2D:50:20:30:3D",
ippz_mac: "",
wgpz_wgmc: "",
wgpz_wgid: "",
wgpz_wglx: "",
@ -546,21 +546,21 @@ export default {
trigger: "blur",
},
],
mqtt_port: [{ required: true, message: "请输入端口", trigger: "blur" }],
mqtt_port: [{ required: true, message: this.$t('mqttClient.rules.mqtt_port'), trigger: "blur" }],
mqtt_wgsn: [
{ required: true, message: "请输入网关ID", trigger: "blur" },
{ required: true, message: this.$t('mqttClient.rules.mqtt_wgsn'), trigger: "blur" },
],
mqtt_sssjfbzt: [
{ required: true, message: "请输入主题", trigger: "blur" },
{ required: true, message:this.$t('mqttClient.rules.mqtt_sssjfbzt'), trigger: "blur" },
],
mqtt_scms: [
{ required: true, message: "请输入上传模式", trigger: "blur" },
{ required: true, message: this.$t('mqttClient.rules.mqtt_scms'), trigger: "blur" },
],
mqtt_sczq: [
{ required: true, message: "请输入上传周期", trigger: "blur" },
{ required: true, message: this.$t('mqttClient.rules.mqtt_sczq'), trigger: "blur" },
],
mqtt_sjgl: [
{ required: true, message: "请输入数据过滤", trigger: "blur" },
{ required: true, message: this.$t('mqttClient.rules.mqtt_sjgl'), trigger: "blur" },
],
},
//
@ -572,25 +572,16 @@ export default {
},
rulesGate: {
wgpz_wgmc: [
{ required: true, message: "请选择网关名称", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgmc'), trigger: "blur" },
],
wgpz_wgid: [
{ required: true, message: "请选择网关id", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgid'), trigger: "blur" },
],
wgpz_wglx: [
{ required: true, message: "请选择网关类型", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wglx'), trigger: "blur" },
],
},
opts1: [
{
value: "有线区网关1",
label: "有线区网关1",
},
{
value: "无线区网关1",
label: "无线区网关1",
},
],
opts1: this.$t('dbcollectiongate.options1'),
opts2: [
{
value: "LAN-BOX1",
@ -601,32 +592,7 @@ export default {
label: "WLAN-BOX1",
},
],
opts3: [
{
value: "loT Lite网关",
label: "loT Lite网关",
},
{
value: "MODBUS网关",
label: "MODBUS网关",
},
{
value: "BACNET网关",
label: "BACNET网关",
},
{
value: "OPC UA网关",
label: "OPC UA网关",
},
{
value: "OPC DA网关",
label: "OPC DA网关",
},
{
value: "loT网关",
label: "loT网关",
},
],
opts3:this.$t('dbcollectiongate.options3'),
};
},
methods: {
@ -642,7 +608,7 @@ export default {
this.mqtt_ip4 ===
"..."
) {
callback(new Error("请输入IP地址"));
callback(new Error(this.$t('mqttClient.rules.ip1')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.mqtt_ip1 +
@ -654,7 +620,7 @@ export default {
this.mqtt_ip4
)
) {
callback(new Error("请输入有效的IP地址"));
callback(new Error(this.$t('mqttClient.rules.ip2')) );
} else {
callback();
}
@ -790,8 +756,75 @@ export default {
// user_id: "USER202307301114011710",
});
// console.log(answer);
this.step = answer.data.data.step;
if(!answer.data.state){
getQueryAnswer({
mark: "DB-IotLite_wx",
user_id: this.user_id
}).then(res => {
if(res.data.data.step){
this.step = res.data.data.step;
}
let obj = JSON.parse(res.data.data.r3);
if (obj.mqtt_ip) {
this.formData.mqtt_qiyong = Boolean(Number(obj.mqtt_qiyong));
this.mqtt_ip1 = obj.mqtt_ip.split(".")[0];
this.mqtt_ip2 = obj.mqtt_ip.split(".")[1];
this.mqtt_ip3 = obj.mqtt_ip.split(".")[2];
this.mqtt_ip4 = obj.mqtt_ip.split(".")[3];
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_qos = obj.mqtt_qos;
this.formData.mqtt_scms = obj.mqtt_scms;
this.formData.mqtt_sczq = obj.mqtt_sczq;
this.formData.mqtt_sjgl = obj.mqtt_sjgl;
}
this.formData.ippz_wangkou = obj.ippz_wangkou;
this.formData.ippz_mrwg = obj.ippz_mrwg;
this.formData.ippz_ip = obj.ippz_ip;
this.formData.ippz_zwym = obj.ippz_zwym;
this.formData.ippz_dns_sx = obj.ippz_dns_sx;
this.formData.ippz_dns_by = obj.ippz_dns_by;
this.formData.ippz_mac = obj.ippz_mac;
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.wgpz_wgid = obj.wgpz_wgid;
this.formData.wgpz_wglx = obj.wgpz_wglx;
this.formData.tdpz_tdmc = obj.tdpz_tdmc;
this.formData.tdpz_td = obj.tdpz_td;
this.formData.tdpz_qdmc = obj.tdpz_qdmc;
this.formData.tdpz_ip = obj.tdpz_ip;
this.formData.tdpz_port = obj.tdpz_port;
this.formData.tdpz_cssj = obj.tdpz_cssj;
this.formData.tdpz_jgsj = obj.tdpz_jgsj;
this.formData.tdpz_lxsj = obj.tdpz_lxsj;
this.formData.tdpz_cfcs = obj.tdpz_cfcs;
this.formData.tdpz_watchtime = obj.tdpz_watchtime;
this.formData.tdpz_cjsylxdz = obj.tdpz_cjsylxdz;
this.formData.tdpz_dxzkb = obj.tdpz_dxzkb;
this.formData.tdpz_050F = obj.tdpz_050F;
this.formData.tdpz_0610 = obj.tdpz_0610;
this.formData.sbpz_sbid = obj.sbpz_sbid;
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_mac = obj.sbpz_mac;
this.formData.sbpz_jysb = obj.sbpz_jysb;
this.formData.sbpz_jdzxz = obj.sbpz_jdzxz;
this.formData.cjdpz_tagid = obj.cjdpz_tagid;
this.formData.cjdpz_mc = obj.cjdpz_mc;
this.formData.cjdpz_sjq = obj.cjdpz_sjq;
this.formData.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formData.cjdpz_zjx = obj.cjdpz_zjx;
this.formData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formData.cjdpz_beilv = obj.cjdpz_beilv;
this.tableData[0].mqtt_cjd_sbmc = obj.sbpz_sbmc;
this.tableData[0].mqtt_cjd_tagid = obj.cjdpz_tagid;
})
}
if (answer.data.data && answer.data.state) {
if(answer.data.data.step){
this.step = answer.data.data.step;
}
let obj = JSON.parse(answer.data.data.mark_value);
if (obj.mqtt_ip) {
this.formData.mqtt_qiyong = Boolean(Number(obj.mqtt_qiyong));
@ -862,7 +895,11 @@ export default {
let res = await GetTree({ user_id: this.user_id, type: "1" });
// console.log(res);
// console.log(JSON.parse(res.data.data.data));
this.trees = JSON.parse(res.data.data.data);
if(this.$i18n.locale==='zh'){
this.trees = JSON.parse(res.data.data.r2);
}else{
this.trees = JSON.parse(res.data.data.data);
}
},
//
@ -942,7 +979,7 @@ export default {
}
.el-col-12:last-child {
padding-right: 150px;
//padding-right: 150px;
}
.el-col-12:first-child {

View File

@ -32,14 +32,14 @@
<el-row>
<el-col :span="24">
<el-form-item>
<el-checkbox v-model="formData.mqtt_qiyong">启动</el-checkbox>
<el-checkbox v-model="formData.mqtt_qiyong">{{ $t('mqttClient.enable') }}</el-checkbox>
</el-form-item>
</el-col>
</el-row>
<el-row class="serveip">
<el-col :span="12">
<el-form-item
label="服务器IP:"
:label="$t('mqttClient.serverIp')"
:label-width="formLabelWidth"
prop="mqtt_ip"
>
@ -91,7 +91,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="端口号:"
:label="$t('mqttClient.port')"
:label-width="formLabelWidth"
prop="mqtt_port"
>
@ -106,8 +106,8 @@
<el-row>
<el-col :span="24">
<el-form-item
label="网关SN号:"
:label-width="formLabelWidth"
:label="$t('mqttClient.gatewaySN')"
prop="mqtt_wgsn"
>
<el-input
@ -122,9 +122,9 @@
<el-row class="theme">
<el-col :span="12">
<el-form-item
label="实时数据发布的主题"
:label="$t('mqttClient.realTimePublish')"
style="display: block"
label-width="168px"
prop="mqtt_sssjfbzt"
>
<el-row>
@ -157,8 +157,8 @@
<el-row>
<el-col :span="12">
<el-form-item
label="上传模式:"
:label-width="formLabelWidth"
:label="$t('mqttClient.uploadMode')"
prop="mqtt_scms"
>
<el-select
@ -178,8 +178,8 @@
</el-col>
<el-col :span="12">
<el-form-item
label="上传周期(s):"
label-width="108px"
:label="$t('mqttClient.uploadCycle')"
prop="mqtt_sczq"
>
<el-input
@ -193,23 +193,23 @@
<el-row>
<el-col :span="24">
<el-form-item
label="数据过滤:"
:label-width="formLabelWidth"
:label="$t('mqttClient.dataFilter')"
prop="mqtt_sjgl"
>
<div class="checkbox1">
<el-checkbox-group v-model="formData.mqtt_sjgl">
<el-checkbox label="值改变">值改变</el-checkbox>
<el-checkbox label="采集成功">采集成功</el-checkbox>
<el-checkbox label="时间戳改变">时间戳改变</el-checkbox>
<el-checkbox :label="$t('mqttClient.oneCheck')">{{ $t('mqttClient.oneCheck') }}</el-checkbox>
<el-checkbox :label="$t('mqttClient.twoCheck')">{{ $t('mqttClient.twoCheck') }}</el-checkbox>
<el-checkbox :label="$t('mqttClient.threeCheck')">{{ $t('mqttClient.threeCheck') }}</el-checkbox>
</el-checkbox-group>
</div>
</el-form-item>
</el-col>
</el-row>
<div class="con_left_footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="add_passage = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="add_passage = false">{{ $t('cancel') }}</el-button>
</div>
</el-form>
</div>
@ -228,7 +228,7 @@
</div>
<el-table ref="singleTable" :data="tableData" style="width: 100%">
<el-table-column type="index"> </el-table-column>
<el-table-column property="mqtt_cjd_sbmc" label="设备名称">
<el-table-column property="mqtt_cjd_sbmc" :label="$t('mqttClient.deviceName')">
<template slot-scope="scope">
<el-select v-model="scope.row.mqtt_cjd_sbmc" placeholder="">
<el-option
@ -270,18 +270,18 @@
</div> -->
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form
:model="formData"
:rules="rulesGate"
ref="gateWay"
label-width="85px"
:label-width="this.$i18n.locale === 'zh'?'140px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="formData.wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -293,10 +293,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="formData.wgpz_wgid"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -308,10 +308,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关类型:" prop="wgpz_wglx">
<el-form-item :label="$t('dbcollectiongate.type')" prop="wgpz_wglx">
<el-select
v-model="formData.wgpz_wglx"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -325,8 +325,8 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitGate">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitGate">{{ $t('save') }}</el-button>
<el-button @click="outerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
</div>
@ -334,7 +334,7 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "CloneView",
@ -541,21 +541,21 @@ export default {
trigger: "blur",
},
],
mqtt_port: [{ required: true, message: "请输入端口", trigger: "blur" }],
mqtt_port: [{ required: true, message: this.$t('mqttClient.rules.mqtt_port'), trigger: "blur" }],
mqtt_wgsn: [
{ required: true, message: "请输入网关ID", trigger: "blur" },
{ required: true, message: this.$t('mqttClient.rules.mqtt_wgsn'), trigger: "blur" },
],
mqtt_sssjfbzt: [
{ required: true, message: "请输入主题", trigger: "blur" },
{ required: true, message: this.$t('mqttClient.rules.mqtt_sssjfbzt'), trigger: "blur" },
],
mqtt_scms: [
{ required: true, message: "请输入上传模式", trigger: "blur" },
{ required: true, message: this.$t('mqttClient.rules.mqtt_scms'), trigger: "blur" },
],
mqtt_sczq: [
{ required: true, message: "请输入上传周期", trigger: "blur" },
{ required: true, message: this.$t('mqttClient.rules.mqtt_sczq'), trigger: "blur" },
],
mqtt_sjgl: [
{ required: true, message: "请输入数据过滤", trigger: "blur" },
{ required: true, message: this.$t('mqttClient.rules.mqtt_sjgl'), trigger: "blur" },
],
},
//
@ -567,25 +567,16 @@ export default {
},
rulesGate: {
wgpz_wgmc: [
{ required: true, message: "请选择网关名称", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgmc'), trigger: "blur" },
],
wgpz_wgid: [
{ required: true, message: "请选择网关id", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgid'), trigger: "blur" },
],
wgpz_wglx: [
{ required: true, message: "请选择网关类型", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wglx'), trigger: "blur" },
],
},
opts1: [
{
value: "有线区网关1",
label: "有线区网关1",
},
{
value: "无线区网关1",
label: "无线区网关1",
},
],
opts1: this.$t('dbcollectiongate.options1'),
opts2: [
{
value: "LAN-BOX1",
@ -596,32 +587,7 @@ export default {
label: "WLAN-BOX1",
},
],
opts3: [
{
value: "loT Lite网关",
label: "loT Lite网关",
},
{
value: "MODBUS网关",
label: "MODBUS网关",
},
{
value: "BACNET网关",
label: "BACNET网关",
},
{
value: "OPC UA网关",
label: "OPC UA网关",
},
{
value: "OPC DA网关",
label: "OPC DA网关",
},
{
value: "loT网关",
label: "loT网关",
},
],
opts3: this.$t('dbcollectiongate.options3'),
};
},
methods: {
@ -637,7 +603,7 @@ export default {
this.mqtt_ip4 ===
"..."
) {
callback(new Error("请输入IP地址"));
callback(new Error(this.$t('mqttClient.rules.ip1')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.mqtt_ip1 +
@ -649,7 +615,7 @@ export default {
this.mqtt_ip4
)
) {
callback(new Error("请输入有效的IP地址"));
callback(new Error(this.$t('mqttClient.rules.ip2')));
} else {
callback();
}
@ -750,9 +716,83 @@ export default {
// user_id: "USER202307301114011710",
});
console.log(answer);
this.step = answer.data.data.step;
if(!answer.data.state){
getQueryAnswer({
mark: "DB-IotLite_wx",
user_id: this.user_id
}).then(res => {
if(res.data.data.step) {
this.step = res.data.data.step;
}
let obj = JSON.parse(res.data.data.r3);
if (obj.mqtt_ip) {
this.formData.mqtt_qiyong = Boolean(Number(obj.mqtt_qiyong));
this.mqtt_ip1 = obj.mqtt_ip.split(".")[0];
this.mqtt_ip2 = obj.mqtt_ip.split(".")[1];
this.mqtt_ip3 = obj.mqtt_ip.split(".")[2];
this.mqtt_ip4 = obj.mqtt_ip.split(".")[3];
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_qos = obj.mqtt_qos;
this.formData.mqtt_scms = obj.mqtt_scms;
this.formData.mqtt_sczq = obj.mqtt_sczq;
this.formData.mqtt_sjgl = obj.mqtt_sjgl;
// this.formData.mqtt_retained = Boolean(Number(obj.mqtt_retained));
}
this.formData.ippz_lwfs = obj.ippz_lwfs;
// this.formData.ippz_wangkou = obj.ippz_wangkou;
this.formData.ippz_zwym = obj.ippz_zwym;
this.formData.ippz_mrwg = obj.ippz_mrwg;
this.formData.ippz_ip = obj.ippz_ip;
this.formData.ippz_dns_sx = obj.ippz_dns_sx;
this.formData.ippz_dns_by = obj.ippz_dns_by;
this.formData.ippz_mac = obj.ippz_mac;
this.formData.ippz_wifi_ssid = obj.ippz_wifi_ssid;
this.formData.ippz_wifi_mm = obj.ippz_wifi_mm;
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.wgpz_wgid = obj.wgpz_wgid;
this.formData.wgpz_wglx = obj.wgpz_wglx;
this.formData.tdpz_tdmc = obj.tdpz_tdmc;
this.formData.tdpz_td = obj.tdpz_td;
this.formData.tdpz_qdmc = obj.tdpz_qdmc;
this.formData.tdpz_chuankou = obj.tdpz_chuankou;
this.formData.tdpz_btl = obj.tdpz_btl;
this.formData.tdpz_sjw = obj.tdpz_sjw;
this.formData.tdpz_tzw = obj.tdpz_tzw;
this.formData.tdpz_jojy = obj.tdpz_jojy;
this.formData.tdpz_port = obj.tdpz_port;
this.formData.tdpz_cgsj = obj.tdpz_cgsj;
this.formData.tdpz_jgsj = obj.tdpz_jgsj;
this.formData.tdpz_lxsj = obj.tdpz_lxsj;
this.formData.tdpz_cfcs = obj.tdpz_cfcs;
this.formData.tdpz_watchtime = obj.tdpz_watchtime;
this.formData.tdpz_cjsylxdz = obj.tdpz_cjsylxdz;
this.formData.tdpz_050F = obj.tdpz_050F;
this.formData.tdpz_0610 = obj.tdpz_0610;
this.formData.tdpz_dxzkb = obj.tdpz_dxzkb;
this.formData.cjdpz_tagid = obj.cjdpz_tagid;
this.formData.cjdpz_mc = obj.cjdpz_mc;
this.formData.cjdpz_sjq = obj.cjdpz_sjq;
this.formData.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formData.cjdpz_zjx = obj.cjdpz_zjx;
this.formData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formData.cjdpz_beilv = obj.cjdpz_beilv;
this.formData.sbpz_sbid = obj.sbpz_sbid;
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_sbdz = obj.sbpz_sbdz;
this.formData.sbpz_jysb = obj.sbpz_jysb;
this.formData.sbpz_jdzxz = obj.sbpz_jdzxz;
this.tableData[0].mqtt_cjd_sbmc = obj.sbpz_sbmc;
this.tableData[0].mqtt_cjd_tagid = obj.cjdpz_tagid;
})
}
// alert(this.step);
if (answer.data.data && answer.data.state) {
if(answer.data.data.step) {
this.step = answer.data.data.step;
}
let obj = JSON.parse(answer.data.data.mark_value);
if (obj.mqtt_ip) {
this.formData.mqtt_qiyong = Boolean(Number(obj.mqtt_qiyong));
@ -911,7 +951,7 @@ export default {
}
.el-col-12:last-child {
padding-right: 150px;
//padding-right: 150px;
}
.el-col-12:first-child {

View File

@ -29,13 +29,13 @@
default-active="#0078FE"
>
<el-menu-item id="menuitem" index="1" style="font-size: 12px">
<span slot="title">编辑</span>
<span slot="title">{{ $t('edit') }}</span>
</el-menu-item>
<el-menu-item index="2" style="font-size: 12px">
<span slot="title"> </span>
<span slot="title">{{ $t('del') }}</span>
</el-menu-item>
<el-menu-item index="3" style="font-size: 12px">
<span slot="title"> </span>
<span slot="title">{{ $t('cancel') }}</span>
</el-menu-item>
</el-menu>
</div>
@ -43,7 +43,7 @@
<!-- </div> -->
<div class="pas_params" v-show="add_passage">
<div>
<el-button type="primary" plain @click="handleSelect">保存</el-button>
<el-button type="primary" plain @click="handleSelect">{{ $t('save') }}</el-button>
<!-- <el-menu class="el-menu-demo" mode="horizontal" @select="handleSelect"> -->
<!-- 添加时只支持一条不能多次添加 -->
<!-- <el-menu-item index="1">保存</el-menu-item> -->
@ -56,7 +56,7 @@
v-loading="loading"
>
<el-table-column type="index"> </el-table-column>
<el-table-column property="cjdpz_tagid" label="TagID">
<el-table-column property="cjdpz_tagid" :label="$t('dbcollect.TagID')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_tagid" placeholder="">
<el-option
@ -68,7 +68,7 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_mc" label="名称">
<el-table-column property="cjdpz_mc" :label="$t('dbcollect.name')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_mc" placeholder="">
<el-option
@ -80,7 +80,7 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_sjq" label="数据区">
<el-table-column property="cjdpz_sjq" :label="$t('dbcollect.dataArea')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_sjq" placeholder="">
<el-option
@ -94,7 +94,7 @@
</el-table-column>
<el-table-column
property="cjdpz_jcqdz"
label="寄存地址(十进制)"
:label="$t('dbcollect.registerAddress')"
width="150px"
>
<template slot-scope="scope">
@ -104,7 +104,7 @@
></el-input>
</template>
</el-table-column>
<el-table-column property="cjdpz_cjsjlx" label="采集数据类型">
<el-table-column property="cjdpz_cjsjlx" :label="$t('dbcollect.type')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_cjsjlx" placeholder="">
<el-option
@ -116,7 +116,7 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_zjx" label="字节序">
<el-table-column property="cjdpz_zjx" :label="$t('dbcollect.byteOrder')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_zjx" placeholder="">
<el-option
@ -128,7 +128,7 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_dxsx" label="读写属性">
<el-table-column property="cjdpz_dxsx" :label="$t('dbcollect.readWrite')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_dxsx" placeholder="">
<el-option
@ -140,7 +140,7 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_beilv" label="倍率">
<el-table-column property="cjdpz_beilv" :label="$t('dbcollect.Multiplier')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_beilv" placeholder="">
<el-option
@ -156,7 +156,7 @@
</div>
<div class="dev_attribute">
<el-dialog
title="设备属性"
:title="$t('configuration.deviceProperties')"
:visible.sync="edit_device"
width="382px"
v-loading="loading"
@ -170,7 +170,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="设备ID:"
:label="$t('configuration.deviceID')"
:label-width="formLabelWidth"
prop="sbpz_sbid"
>
@ -193,7 +193,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="设备名称:"
:label="$t('configuration.deviceName')"
:label-width="formLabelWidth"
prop="sbpz_sbmc"
>
@ -216,7 +216,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="MAC地址:"
:label="$t('configuration.MACAddress')"
:label-width="formLabelWidth"
prop="sbpz_mac"
>
@ -232,39 +232,39 @@
<el-col :span="24">
<el-form-item>
<!-- 需要修改的地方 -->
<el-checkbox v-model="formData.sbpz_jysb">禁用地址</el-checkbox>
<el-checkbox v-model="formData.sbpz_jysb">{{ $t('configuration.disableDevice') }}</el-checkbox>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="基地址选择:">
<span class="one">1</span>
<el-form-item :label="$t('configuration.addressSelection')">
<span :class="$i18n.locale === 'zh'?'two one':'one'">1</span>
<el-switch v-model="formData.sbpz_jdzxz" disabled> </el-switch>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="edit_device = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="edit_device = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form
:model="formData"
:rules="rulesGate"
ref="gateWay"
label-width="85px"
:label-width="$i18n.locale === 'zh'?'130px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="formData.wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -276,10 +276,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="formData.wgpz_wgid"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -291,10 +291,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关类型:" prop="wgpz_wglx">
<el-form-item :label="$t('dbcollectiongate.type')" prop="wgpz_wglx">
<el-select
v-model="formData.wgpz_wglx"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -308,8 +308,8 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitGate">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitGate">{{ $t('save') }}</el-button>
<el-button @click="outerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
</div>
@ -317,7 +317,7 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "CollectionView",
@ -689,20 +689,7 @@ export default {
label: "Little-endian byte swap3412",
},
],
options7: [
{
value: "读写",
label: "读写",
},
{
value: "只读",
label: "只读",
},
{
value: "只写",
label: "只写",
},
],
options7: this.$t('dbcollect.options7'),
options8: [
{
value: " 0.1",
@ -721,26 +708,8 @@ export default {
label: "100",
},
],
options9: [
{
value: "有线区加工设备1",
label: "有线区加工设备1",
},
{
value: "无线区加工设备1",
label: "无线区加工设备1",
},
],
options10: [
{
value: "有线区精雕1",
label: "有线区精雕1",
},
{
value: "无线区精雕1",
label: "无线区精雕1",
},
],
options9:this.$t('configuration.options1'),
options10: this.$t('configuration.options2'),
labelPosition: "left",
formLabelWidth: "116px",
add_passage: true,
@ -1174,7 +1143,63 @@ export default {
user_id: this.user_id,
// user_id: "USER202307301114011710",
});
console.log(answer);
if(!answer.data.state){
getQueryAnswer({
mark: "DB-IotLite_wx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
if (obj.cjdpz_tagid) {
this.tableData[0].cjdpz_tagid = obj.cjdpz_tagid;
this.tableData[0].cjdpz_mc = obj.cjdpz_mc;
this.tableData[0].cjdpz_sjq = obj.cjdpz_sjq;
this.tableData[0].cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.tableData[0].cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.tableData[0].cjdpz_zjx = obj.cjdpz_zjx;
this.tableData[0].cjdpz_dxsx = obj.cjdpz_dxsx;
this.tableData[0].cjdpz_beilv = obj.cjdpz_beilv;
}
this.formData.ippz_wangkou = obj.ippz_wangkou;
this.formData.ippz_mrwg = obj.ippz_mrwg;
this.formData.ippz_ip = obj.ippz_ip;
this.formData.ippz_zwym = obj.ippz_zwym;
this.formData.ippz_dns_sx = obj.ippz_dns_sx;
this.formData.ippz_dns_by = obj.ippz_dns_by;
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.wgpz_wgid = obj.wgpz_wgid;
this.formData.wgpz_wglx = obj.wgpz_wglx;
this.formData.tdpz_tdmc = obj.tdpz_tdmc;
this.formData.tdpz_td = obj.tdpz_td;
this.formData.tdpz_qdmc = obj.tdpz_qdmc;
this.formData.tdpz_ip = obj.tdpz_ip;
this.formData.tdpz_port = obj.tdpz_port;
this.formData.tdpz_cssj = obj.tdpz_cssj;
this.formData.tdpz_jgsj = obj.tdpz_jgsj;
this.formData.tdpz_lxsj = obj.tdpz_lxsj;
this.formData.tdpz_cfcs = obj.tdpz_cfcs;
this.formData.tdpz_watchtime = obj.tdpz_watchtime;
this.formData.tdpz_cjsylxdz = obj.tdpz_cjsylxdz;
this.formData.tdpz_dxzkb = obj.tdpz_dxzkb;
this.formData.tdpz_050F = obj.tdpz_050F;
this.formData.tdpz_0610 = obj.tdpz_0610;
this.formData.sbpz_sbid = obj.sbpz_sbid;
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_mac = obj.sbpz_mac;
this.formData.sbpz_jysb = obj.sbpz_jysb;
this.formData.sbpz_jdzxz = obj.sbpz_jdzxz;
this.formData.mqtt_qiyong = obj.mqtt_qiyong;
this.formData.mqtt_ip = obj.mqtt_ip;
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_qos = obj.mqtt_qos;
this.formData.mqtt_scms = obj.mqtt_scms;
this.formData.mqtt_sczq = obj.mqtt_sczq;
this.formData.mqtt_sjgl = obj.mqtt_sjgl;
this.formData.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.formData.mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
})
}
if (answer.data.state && answer.data.data) {
console.log(answer);
let obj = JSON.parse(answer.data.data.mark_value);
@ -1317,7 +1342,12 @@ export default {
});
console.log(res);
console.log(JSON.parse(res.data.data.data));
this.trees = JSON.parse(res.data.data.data);
// if(this.$i18n.locale==='zh'){
// this.trees = JSON.parse(res.data.data.r2);
// }else{
this.trees = JSON.parse(res.data.data.data);
// }
},
//
@ -1501,4 +1531,7 @@ export default {
left: 95px;
top: 0px;
}
.two{
left: 170px !important;
}
</style>

View File

@ -18,13 +18,13 @@
<div v-show="menuShow" class="tree_rightmenu" :style="{ ...rightMenu }">
<el-menu class="el-menu-vertical-demo" @select="selectMenuNode" default-active="#0078FE">
<el-menu-item id="menuitem" index="1" style="font-size: 12px">
<span slot="title">编辑</span>
<span slot="title">{{$t('edit')}}</span>
</el-menu-item>
<el-menu-item index="2" style="font-size: 12px">
<span slot="title"> </span>
<span slot="title">{{$t('del')}}</span>
</el-menu-item>
<el-menu-item index="3" style="font-size: 12px">
<span slot="title"> </span>
<span slot="title">{{$t('cancel')}}</span>
</el-menu-item>
</el-menu>
</div>
@ -32,7 +32,7 @@
<!-- </div> -->
<div class="pas_params" v-show="add_passage">
<div>
<el-button type="primary" plain @click="handleSelect">保存</el-button>
<el-button type="primary" plain @click="handleSelect">{{$t('save')}}</el-button>
<!-- <el-menu class="el-menu-demo" mode="horizontal" @select="handleSelect"> -->
<!-- 添加时只支持一条不能多次添加 -->
<!-- <el-menu-item index="1">保存</el-menu-item> -->
@ -48,15 +48,15 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_mc" label="名称">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_mc" placeholder="">
<el-option v-for="(option, index) in options2" :key="index" :label="option.label"
:value="option.value"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_sjq" label="数据区">
<el-table-column property="cjdpz_mc" label="名称">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_mc" placeholder="">
<el-option v-for="(option, index) in options2" :key="index" :label="option.label"
:value="option.value"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_sjq" :label="$t('dbcollect.dataArea')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_sjq" placeholder="">
<el-option v-for="(option, index) in options3" :key="index" :label="option.label"
@ -64,12 +64,12 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_jcqdz" label="寄存地址(十进制)" width="150px">
<el-table-column property="cjdpz_jcqdz" :label="$t('dbcollect.registerAddress')" width="150px">
<template slot-scope="scope">
<el-input v-model="scope.row.cjdpz_jcqdz" placeholder="1-9999"></el-input>
</template>
</el-table-column>
<el-table-column property="cjdpz_cjsjlx" label="采集数据类型">
<el-table-column property="cjdpz_cjsjlx" :label="$t('dbcollect.type')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_cjsjlx" placeholder="">
<el-option v-for="(option, index) in options5" :key="index" :label="option.label"
@ -77,7 +77,7 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_zjx" label="字节序">
<el-table-column property="cjdpz_zjx" :label="$t('dbcollect.byteOrder')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_zjx" placeholder="">
<el-option v-for="(option, index) in options6" :key="index" :label="option.label"
@ -85,7 +85,7 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_dxsx" label="读写属性">
<el-table-column property="cjdpz_dxsx" :label="$t('dbcollect.readWrite')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_dxsx" placeholder="">
<el-option v-for="(option, index) in options7" :key="index" :label="option.label"
@ -93,7 +93,7 @@
</el-select>
</template>
</el-table-column>
<el-table-column property="cjdpz_beilv" label="倍率">
<el-table-column property="cjdpz_beilv" :label="$t('dbcollect.Multiplier')">
<template slot-scope="scope">
<el-select v-model="scope.row.cjdpz_beilv" placeholder="">
<el-option v-for="(option, index) in options8" :key="index" :label="option.label"
@ -104,11 +104,11 @@
</el-table>
</div>
<div class="dev_attribute">
<el-dialog title="设备属性" :visible.sync="edit_device" width="382px" v-loading="loading">
<el-dialog :title="$t('configuration.deviceProperties')" :visible.sync="edit_device" width="382px" v-loading="loading">
<el-form :model="tableData[0]" :label-position="labelPosition" :rules="rules" ref="formdata">
<el-row>
<el-col :span="24">
<el-form-item label="设备ID:" :label-width="formLabelWidth" prop="sbpz_sbid">
<el-form-item :label="$t('configuration.deviceID')" :label-width="formLabelWidth" prop="sbpz_sbid">
<el-select v-model="tableData[0].sbpz_sbid" placeholder="" style="width: 200px; height: 30px">
<el-option v-for="(item, index) in options9" :key="index" :label="item.label" :value="item.value">
</el-option>
@ -118,7 +118,7 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="设备名称:" :label-width="formLabelWidth" prop="sbpz_sbmc">
<el-form-item :label="$t('configuration.deviceName')" :label-width="formLabelWidth" prop="sbpz_sbmc">
<el-select v-model="tableData[0].sbpz_sbmc" placeholder="" style="width: 200px; height: 30px">
<el-option v-for="(item, index) in options10" :key="index" :label="item.label" :value="item.value">
</el-option>
@ -128,7 +128,7 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="设备地址:" :label-width="formLabelWidth" prop="sbpz_sbdz">
<el-form-item :label="$t('configuration.deviceAddress')" :label-width="formLabelWidth" prop="sbpz_sbdz">
<el-input v-model="tableData[0].sbpz_sbdz" placeholder="" style="width: 200px; height: 30px"></el-input>
</el-form-item>
</el-col>
@ -137,13 +137,13 @@
<el-col :span="24">
<el-form-item>
<!-- 需要修改的地方 -->
<el-checkbox v-model="tableData[0].sbpz_jysb">禁用地址</el-checkbox>
<el-checkbox v-model="tableData[0].sbpz_jysb">{{ $t('configuration.disableDevice') }}</el-checkbox>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="基地址选择:">
<el-form-item :label="$t('configuration.addressSelection')">
<span class="one">1</span>
<el-switch v-model="tableData[0].sbpz_jdzxz"> </el-switch>
</el-form-item>
@ -151,37 +151,37 @@
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="edit_device = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="edit_device = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-form :model="tableData[0]" :rules="rulesGate" ref="gateWay" label-width="85px" class="demo-ruleForm">
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-select v-model="tableData[0].wgpz_wgmc" placeholder="请选择" style="width: 200px">
<el-dialog :title="$t('ntconfig.createGateway')" :visible.sync="outerVisible" width="382px">
<el-form :model="tableData[0]" :rules="rulesGate" ref="gateWay" :label-width="this.$i18n.locale==='zh'?'130px':'85px'" class="demo-ruleForm">
<el-form-item :label="$t('ntconfig.gatewayName')" prop="wgpz_wgmc">
<el-select v-model="tableData[0].wgpz_wgmc" :placeholder="$t('select')" style="width: 200px">
<el-option v-for="item in opts1" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-select v-model="tableData[0].wgpz_wgid" placeholder="请选择" style="width: 200px">
<el-form-item :label="$t('ntconfig.gatewayId')" prop="wgpz_wgid">
<el-select v-model="tableData[0].wgpz_wgid" :placeholder="$t('select')" style="width: 200px">
<el-option v-for="item in opts2" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关类型:" prop="wgpz_wglx">
<el-select v-model="tableData[0].wgpz_wglx" placeholder="请选择" style="width: 200px">
<el-form-item :label="$t('ntconfig.gatewayType')" prop="wgpz_wglx">
<el-select v-model="tableData[0].wgpz_wglx" :placeholder="$t('select')" style="width: 200px">
<el-option v-for="item in opts3" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitGate">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitGate">{{$t('save')}}</el-button>
<el-button @click="outerVisible = false">{{$t('cancel')}}</el-button>
</div>
</el-dialog>
</div>
@ -189,7 +189,7 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "CollectionWifi",
@ -566,20 +566,7 @@ export default {
label: "Little-endian byte swap3412",
},
],
options7: [
{
value: "读写",
label: "读写",
},
{
value: "只读",
label: "只读",
},
{
value: "只写",
label: "只写",
},
],
options7: this.$t('dbcollect.options7'),
options8: [
{
value: " 0.1",
@ -598,26 +585,8 @@ export default {
label: "100",
},
],
options9: [
{
value: "有线区加工设备1",
label: "有线区加工设备1",
},
{
value: "无线区加工设备1",
label: "无线区加工设备1",
},
],
options10: [
{
value: "有线区精雕1",
label: "有线区精雕1",
},
{
value: "无线区精雕1",
label: "无线区精雕1",
},
],
options9:this.$t('configuration.options1'),
options10: this.$t('configuration.options2'),
labelPosition: "left",
formLabelWidth: "116px",
add_passage: true,
@ -691,13 +660,13 @@ export default {
},
rules: {
sbpz_sbid: [
{ required: true, message: "请输入设备ID", trigger: "blur" },
{ required: true, message: this.$t('configuration.rules.sbpz_sbid'), trigger: "blur" },
],
sbpz_sbmc: [
{ required: true, message: "请输入设备名称", trigger: "blur" },
{ required: true, message: this.$t('configuration.rules.sbpz_sbmc'), trigger: "blur" },
],
sbpz_sbdz: [
{ required: true, message: "请输入设备地址", trigger: "blur" },
{ required: true, message: this.$t('configuration.rules.sbpz_sbdz'), trigger: "blur" },
],
},
@ -710,25 +679,16 @@ export default {
// },
rulesGate: {
wgpz_wgmc: [
{ required: true, message: "请选择网关名称", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgmc'), trigger: "blur" },
],
wgpz_wgid: [
{ required: true, message: "请选择网关id", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgid'), trigger: "blur" },
],
wgpz_wglx: [
{ required: true, message: "请选择网关类型", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wglx'), trigger: "blur" },
],
},
opts1: [
{
value: "有线区网关1",
label: "有线区网关1",
},
{
value: "无线区网关1",
label: "无线区网关1",
},
],
opts1: this.$t('dbcollectiongate.options1'),
opts2: [
{
value: "LAN-BOX1",
@ -739,32 +699,7 @@ export default {
label: "WLAN-BOX1",
},
],
opts3: [
{
value: "loT Lite网关",
label: "loT Lite网关",
},
{
value: "MODBUS网关",
label: "MODBUS网关",
},
{
value: "BACNET网关",
label: "BACNET网关",
},
{
value: "OPC UA网关",
label: "OPC UA网关",
},
{
value: "OPC DA网关",
label: "OPC DA网关",
},
{
value: "loT网关",
label: "loT网关",
},
],
opts3: this.$t('dbcollectiongate.options3'),
};
},
methods: {
@ -1006,7 +941,72 @@ export default {
user_id: this.user_id,
// user_id: "USER202307301114011710",
});
// console.log(answer,"22222222222222");
if(!answer.data.state){
getQueryAnswer({
mark: "DB-IotLite_wx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
if (obj.cjdpz_tagid) {
this.tableData[0].cjdpz_tagid = obj.cjdpz_tagid;
this.tableData[0].cjdpz_mc = obj.cjdpz_mc;
this.tableData[0].cjdpz_sjq = obj.cjdpz_sjq;
this.tableData[0].cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.tableData[0].cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.tableData[0].cjdpz_zjx = obj.cjdpz_zjx;
this.tableData[0].cjdpz_dxsx = obj.cjdpz_dxsx;
this.tableData[0].cjdpz_beilv = obj.cjdpz_beilv;
}
// this.tableData[0].ippz_wangkou = obj.ippz_wangkou;
this.tableData[0].ippz_lwfs = obj.ippz_lwfs;
this.tableData[0].ippz_zwym = obj.ippz_zwym;
this.tableData[0].ippz_ip = obj.ippz_ip;
this.tableData[0].ippz_mrwg = obj.ippz_mrwg;
this.tableData[0].wgpz_wgmc = obj.wgpz_wgmc;
this.tableData[0].wgpz_wgid = obj.wgpz_wgid;
this.tableData[0].wgpz_wglx = obj.wgpz_wglx;
this.tableData[0].tdpz_watchtime = obj.tdpz_watchtime;
this.tableData[0].tdpz_cjsylxdz = obj.tdpz_cjsylxdz;
this.tableData[0].ippz_dns_sx = obj.ippz_dns_sx;
this.tableData[0].ippz_dns_by = obj.ippz_dns_by;
this.tableData[0].ippz_mac = obj.ippz_mac;
this.tableData[0].ippz_wifi_ssid = obj.ippz_wifi_ssid;
this.tableData[0].ippz_wifi_mm = obj.ippz_wifi_mm;
this.tableData[0].tdpz_tdmc = obj.tdpz_tdmc;
this.tableData[0].tdpz_td = obj.tdpz_td;
this.tableData[0].tdpz_qdmc = obj.tdpz_qdmc;
this.tableData[0].tdpz_chuankou = obj.tdpz_chuankou;
this.tableData[0].tdpz_btl = obj.tdpz_btl;
this.tableData[0].tdpz_sjw = obj.tdpz_sjw;
this.tableData[0].tdpz_tzw = obj.tdpz_tzw;
this.tableData[0].tdpz_jojy = obj.tdpz_jojy;
this.tableData[0].tdpz_port = obj.tdpz_port;
this.tableData[0].tdpz_cgsj = obj.tdpz_cgsj;
this.tableData[0].tdpz_jgsj = obj.tdpz_jgsj;
this.tableData[0].tdpz_lxsj = obj.tdpz_lxsj;
this.tableData[0].tdpz_cfcs = obj.tdpz_cfcs;
this.tableData[0].tdpz_050F = obj.tdpz_050F;
this.tableData[0].tdpz_0610 = obj.tdpz_0610;
this.tableData[0].tdpz_dxzkb = obj.tdpz_dxzkb;
this.tableData[0].sbpz_sbid = obj.sbpz_sbid;
this.tableData[0].sbpz_sbmc = obj.sbpz_sbmc;
this.tableData[0].sbpz_sbdz = obj.sbpz_sbdz;
this.tableData[0].sbpz_jysb = obj.sbpz_jysb;
this.tableData[0].sbpz_jdzxz = obj.sbpz_jdzxz;
this.tableData[0].mqtt_qiyong = obj.mqtt_qiyong;
this.tableData[0].mqtt_ip = obj.mqtt_ip;
this.tableData[0].mqtt_port = obj.mqtt_port;
this.tableData[0].mqtt_wgsn = obj.mqtt_wgsn;
this.tableData[0].mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.tableData[0].mqtt_qos = obj.mqtt_qos;
this.tableData[0].mqtt_scms = obj.mqtt_scms;
this.tableData[0].mqtt_sczq = obj.mqtt_sczq;
this.tableData[0].mqtt_sjgl = obj.mqtt_sjgl;
this.tableData[0].mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.tableData[0].mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
})
}
if (answer.data.state && answer.data.data) {
console.log(answer);
let obj = JSON.parse(answer.data.data.mark_value);

View File

@ -2,7 +2,7 @@
<div>
<div>
<el-dialog
title="新建网关"
:title="$t('dbcollectiongate.title')"
:visible.sync="outerVisible"
width="382px"
v-loading="loading"
@ -11,13 +11,13 @@
:model="formData"
:rules="rules"
ref="formData"
label-width="85px"
:label-width="$i18n.locale === 'zh'?'130px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="formData.wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -29,10 +29,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="formData.wgpz_wgid"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -44,10 +44,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关类型:" prop="wgpz_wglx">
<el-form-item :label="$t('dbcollectiongate.type')" prop="wgpz_wglx">
<el-select
v-model="formData.wgpz_wglx"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -62,23 +62,23 @@
</el-form>
<el-dialog
width="382px"
title="系统提示"
:title="$t('dbcollectiongate.dialogTitle')"
:visible.sync="innerVisible"
append-to-body
>
<p class="inner_content" style="color: #fff !important">
请确认选择的网关类型与网关实体一致:否则该工程无法下载至实体网关
{{ $t('dbcollectiongate.dialogContent') }}
</p>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="innerConfirm">确定</el-button>
<el-button @click="innerVisible = false"> </el-button>
<el-button type="primary" @click="innerConfirm">{{ $t('confirm') }}</el-button>
<el-button @click="innerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="saveInfo('formData')"
>保存</el-button
>{{ $t('save') }}</el-button
>
<el-button @click="outerVisible = false"> </el-button>
<el-button @click="outerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
</div>
@ -86,7 +86,7 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "DataAcquire",
@ -94,16 +94,7 @@ export default {
return {
loading: false,
user_id: "",
options1: [
{
value: "有线区网关1",
label: "有线区网关1",
},
{
value: "无线区网关1",
label: "无线区网关1",
},
],
options1: this.$t('dbcollectiongate.options1'),
options2: [
{
value: "LAN-BOX1",
@ -114,32 +105,7 @@ export default {
label: "WLAN-BOX1",
},
],
options3: [
{
value: "loT Lite网关",
label: "loT Lite网关",
},
{
value: "MODBUS网关",
label: "MODBUS网关",
},
{
value: "BACNET网关",
label: "BACNET网关",
},
{
value: "OPC UA网关",
label: "OPC UA网关",
},
{
value: "OPC DA网关",
label: "OPC DA网关",
},
{
value: "loT网关",
label: "loT网关",
},
],
options3:this.$t('dbcollectiongate.options3'),
value: "",
formData: {
// ippz_wangkou:"",
@ -268,6 +234,19 @@ export default {
});
console.log(res2);
this.loading = false;
if(!res2.data.state){
getQueryAnswer({
mark: "DB-IotLite_wx",
user_id: this.user_id
}).then(res => {
let res3 = JSON.parse(res.data.data.r3);
if (res3.wgpz_wgid) {
this.formData.wgpz_wgid = res3.wgpz_wgid;
this.formData.wgpz_wgmc = res3.wgpz_wgmc;
this.formData.wgpz_wglx = res3.wgpz_wglx;
}
})
}
if (res2.data.data && res2.data.state) {
if (res2.data.data.step) {
if (res2.data.data.step == 1) {
@ -278,7 +257,6 @@ export default {
this.$router.push(`/dbwificollect?user_id=${this.user_id}`);
}
} else {
console.log(res2);
let res3 = JSON.parse(res2.data.data.mark_value);
if (res3.wgpz_wgid) {
this.formData.wgpz_wgid = res3.wgpz_wgid;
@ -378,7 +356,7 @@ export default {
.inner_content {
margin-left: 30px;
width: 280px;
height: 40px;
// color: rgba(255, 255, 255, 0);
font-size: 14px;
text-align: left;

View File

@ -2,7 +2,7 @@
<div>
<div>
<el-dialog
title="新建网关"
:title="$t('dbcollectiongate.title')"
:visible.sync="outerVisible"
width="382px"
v-loading="loading"
@ -11,13 +11,13 @@
:model="formData"
:rules="rules"
ref="formData"
label-width="85px"
:label-width="$i18n.locale === 'zh'?'130px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="formData.wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -29,10 +29,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="formData.wgpz_wgid"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -44,10 +44,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关类型:" prop="wgpz_wglx">
<el-form-item :label="$t('dbcollectiongate.type')" prop="wgpz_wglx">
<el-select
v-model="formData.wgpz_wglx"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -62,21 +62,21 @@
</el-form>
<el-dialog
width="382px"
title="系统提示"
:title="$t('dbcollectiongate.dialogTitle')"
:visible.sync="innerVisible"
append-to-body
>
<p class="inner_content" style="color: #fff !important">
请确认选择的网关类型与网关实体一致:否则该工程无法下载至实体网关
{{ $t('dbcollectiongate.dialogContent') }}
</p>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="innerConfirm">确定</el-button>
<el-button @click="innerVisible = false"> </el-button>
<el-button type="primary" @click="innerConfirm">{{$t('confirm')}}</el-button>
<el-button @click="innerVisible = false">{{$t('cancel')}}</el-button>
</div>
</el-dialog>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="saveInfo">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="saveInfo">{{$t('save')}}</el-button>
<el-button @click="outerVisible = false">{{$t('cancel')}}</el-button>
</div>
</el-dialog>
</div>
@ -84,7 +84,7 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "TestDataAcquisition",
@ -93,16 +93,7 @@ export default {
loading: false,
user_id: "",
trees: [],
options1: [
{
value: "有线区网关1",
label: "有线区网关1",
},
{
value: "无线区网关1",
label: "无线区网关1",
},
],
options1: this.$t('dbcollectiongate.options1'),
options2: [
{
value: "LAN-BOX1",
@ -113,32 +104,7 @@ export default {
label: "WLAN-BOX1",
},
],
options3: [
{
value: "loT Lite网关",
label: "loT Lite网关",
},
{
value: "MODBUS网关",
label: "MODBUS网关",
},
{
value: "BACNET网关",
label: "BACNET网关",
},
{
value: "OPC UA网关",
label: "OPC UA网关",
},
{
value: "OPC DA网关",
label: "OPC DA网关",
},
{
value: "loT网关",
label: "loT网关",
},
],
options3: this.$t('dbcollectiongate.options3'),
value: "",
formData: {
ippz_wangkou: "",
@ -192,13 +158,13 @@ export default {
},
rules: {
wgpz_wgmc: [
{ required: true, message: "请选择网关名称", trigger: "blur" },
{ required: true, message:this.$t('dbcollectiongate.rules.wgpz_wgmc'), trigger: "blur" },
],
wgpz_wgid: [
{ required: true, message: "请选择网关id", trigger: "blur" },
{ required: true, message:this.$t('dbcollectiongate.rules.wgpz_wgid'), trigger: "blur" },
],
wgpz_wglx: [
{ required: true, message: "请选择网关类型", trigger: "blur" },
{ required: true, message:this.$t('dbcollectiongate.rules.wgpz_wglx'), trigger: "blur" },
],
},
outerVisible: true,
@ -257,7 +223,68 @@ export default {
// user_id: "USER202307301114011710",
});
this.loading = false;
console.log(res2);
if(!res2.data.state){
getQueryAnswer({
mark: "DB-IotLite_yx",
user_id: this.user_id
}).then(res => {
let data = JSON.parse(res.data.data.r3)
this.formData.wgpz_wgid = data.wgpz_wgid;
// console.log(this.formData.wgpz_wgid);
this.formData.wgpz_wgmc = data.wgpz_wgmc;
this.formData.wgpz_wglx = data.wgpz_wglx;
this.formData.ippz_wangkou = data.ippz_wangkou;
this.formData.ippz_mrwg =data.ippz_mrwg;
this.formData.ippz_ip = data.ippz_ip;
this.formData.ippz_zwym = data.ippz_zwym;
this.formData.ippz_dns_sx = data.ippz_dns_sx;
this.formData.ippz_dns_by = data.ippz_dns_by;
this.formData.ippz_mac = data.ippz_mac;
this.formData.tdpz_tdmc = data.tdpz_tdmc;
this.formData.tdpz_td = data.tdpz_td;
this.formData.tdpz_qdmc = data.tdpz_qdmc;
this.formData.tdpz_ip = data.tdpz_ip;
this.formData.tdpz_port = data.tdpz_port;
this.formData.tdpz_cssj = data.tdpz_cssj;
this.formData.tdpz_jgsj = data.tdpz_jgsj;
this.formData.tdpz_lxsj = data.tdpz_lxsj;
this.formData.tdpz_cfcs = data.tdpz_cfcs;
this.formData.tdpz_watchtime = data.tdpz_watchtime;
this.formData.tdpz_cjsylxdz = data.tdpz_cjsylxdz;
this.formData.tdpz_dxzkb = data.tdpz_dxzkb;
this.formData.tdpz_050F = data.tdpz_050F;
this.formData.tdpz_0610 = data.tdpz_0610;
this.formData.sbpz_sbid = data.sbpz_sbid;
this.formData.sbpz_sbmc = data.sbpz_sbmc;
this.formData.sbpz_mac = data.sbpz_mac;
this.formData.sbpz_jysb = data.sbpz_jysb;
this.formData.sbpz_jdzxz = data.sbpz_jdzxz;
this.formData.cjdpz_tagid = data.cjdpz_tagid;
this.formData.cjdpz_mc = data.cjdpz_mc;
this.formData.cjdpz_sjq = data.cjdpz_sjq;
this.formData.cjdpz_jcqdz = data.cjdpz_jcqdz;
this.formData.cjdpz_cjsjlx = data.cjdpz_cjsjlx;
this.formData.cjdpz_zjx = data.cjdpz_zjx;
this.formData.cjdpz_dxsx = data.cjdpz_dxsx;
this.formData.cjdpz_beilv = data.cjdpz_beilv;
this.formData.mqtt_qiyong = data.mqtt_qiyong;
this.formData.mqtt_ip = data.mqtt_ip;
this.formData.mqtt_port = data.mqtt_port;
this.formData.mqtt_wgsn = data.mqtt_wgsn;
this.formData.mqtt_sssjfbzt = data.mqtt_sssjfbzt;
this.formData.mqtt_qos = data.mqtt_qos;
this.formData.mqtt_scms = data.mqtt_scms;
this.formData.mqtt_sczq = data.mqtt_sczq;
this.formData.mqtt_sjgl = data.mqtt_sjgl;
this.formData.mqtt_cjd_sbmc = data.mqtt_cjd_sbmc;
this.formData.mqtt_cjd_tagid =data.mqtt_cjd_tagid;
})
return
}
console.log(res2.data.data.step,'xxxx')
// console.log(res2.data.data.step);
if (res2.data.data && res2.data.state) {
if (res2.data.data.step) {
@ -362,7 +389,6 @@ export default {
.inner_content {
margin-left: 30px;
width: 280px;
height: 40px;
// color: rgba(255, 255, 255, 0);
font-size: 14px;
text-align: left;

View File

@ -2,13 +2,29 @@
<template>
<div>
<!-- 无线网关 -->
<el-dialog title="IP设置" :visible.sync="dialogFormVisible" v-loading="loading" :append-to-body="true" width="894px">
<span class="title_center">注意本页面涉及排错请检查修改默认值</span>
<el-dialog
:title="$t('wirelessgatewayip.title')"
:visible.sync="dialogFormVisible"
v-loading="loading"
:append-to-body="true"
width="894px"
>
<span class="title_center">{{ $t("wirelessgatewayip.prompt") }}</span>
<div class="form_content">
<div>
<p class="netWay">网络方式</p>
<el-radio v-model="ruleForm.ippz_lwfs" label="有线" style="color: white">有线</el-radio>
<el-radio v-model="ruleForm.ippz_lwfs" label="无线" style="color: white">WIFI</el-radio>
<p class="netWay">{{ $t("wirelessgatewayip.method") }}</p>
<el-radio
v-model="ruleForm.ippz_lwfs"
label="有线"
style="color: white"
>{{ $t("wirelessgatewayip.Wired") }}</el-radio
>
<el-radio
v-model="ruleForm.ippz_lwfs"
label="无线"
style="color: white"
>{{ $t("wirelessgatewayip.WIFI") }}</el-radio
>
<el-divider></el-divider>
<!-- {{ ruleForm.ippz_lwfs }} -->
</div>
@ -155,25 +171,47 @@
<!-- v-if="ippz_lwfs == 2 ? true : false" -->
<div>
<h2>WIFI</h2>
<div class="wifi">
<el-form :model="ruleForm" :label-position="labelPosition" label-width="80px" :rules="rules_ippz_wirle"
ref="ruleForm">
<div :class="$i18n.locale === 'zh' ? 'zh wifi' : 'wifi'">
<el-form
:model="ruleForm"
:label-position="labelPosition"
label-width="80px"
:rules="rules_ippz_wirle"
ref="ruleForm"
>
<el-row>
<el-col :span="12">
<el-form-item label="SSID:" :label-width="formLabelWidth" prop="ippz_wifi_ssid">
<el-input v-model="ruleForm.ippz_wifi_ssid" placeholder="请输入SSID"></el-input>
<el-form-item
label="SSID:"
:label-width="formLabelWidth"
prop="ippz_wifi_ssid"
>
<el-input
v-model="ruleForm.ippz_wifi_ssid"
placeholder="请输入SSID"
></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="密码:" :label-width="formLabelWidth" prop="ippz_wifi_mm">
<el-input v-model="ruleForm.ippz_wifi_mm" placeholder=""
style="width: 200px; height: 30px"></el-input>
<el-form-item
:label="$t('wirelessgatewayip.password')"
:label-width="formLabelWidth"
prop="ippz_wifi_mm"
>
<el-input
v-model="ruleForm.ippz_wifi_mm"
placeholder=""
style="width: 200px; height: 30px"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="IP地址:" :label-width="formLabelWidth">
<el-form-item
:label="$t('wirelessgatewayip.IP')"
:label-width="formLabelWidth"
>
<el-row>
<el-col :span="5">
<el-input v-model.number="ippz_ip1"></el-input>
@ -194,7 +232,10 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="子网掩码:" :label-width="formLabelWidth">
<el-form-item
:label="$t('wirelessgatewayip.SubnetMask')"
:label-width="formLabelWidth"
>
<el-row>
<el-col :span="5">
<el-input v-model="ippz_zwym1"></el-input>
@ -217,7 +258,10 @@
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="默认网关:" :label-width="formLabelWidth">
<el-form-item
:label="$t('wirelessgatewayip.gateway')"
:label-width="formLabelWidth"
>
<el-row>
<el-col :span="5">
<el-input v-model="ippz_mrwg1"></el-input>
@ -238,22 +282,38 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="首选DNS:" :label-width="formLabelWidth" prop="ippz_dns_sx">
<el-form-item
:label="$t('wirelessgatewayip.DNS1')"
:label-width="formLabelWidth"
prop="ippz_dns_sx"
>
<el-row>
<el-col :span="5">
<el-input v-model="ippz_dns_sx1" maxlength="3"></el-input>
<el-input
v-model="ippz_dns_sx1"
maxlength="3"
></el-input>
</el-col>
<el-col :span="1">.</el-col>
<el-col :span="5">
<el-input v-model="ippz_dns_sx2" maxlength="3"></el-input>
<el-input
v-model="ippz_dns_sx2"
maxlength="3"
></el-input>
</el-col>
<el-col :span="1">.</el-col>
<el-col :span="5">
<el-input v-model="ippz_dns_sx3" maxlength="3"></el-input>
<el-input
v-model="ippz_dns_sx3"
maxlength="3"
></el-input>
</el-col>
<el-col :span="1">.</el-col>
<el-col :span="5">
<el-input v-model="ippz_dns_sx4" maxlength="3"></el-input>
<el-input
v-model="ippz_dns_sx4"
maxlength="3"
></el-input>
</el-col>
</el-row>
</el-form-item>
@ -261,32 +321,58 @@
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="备选DNS:" :label-width="formLabelWidth" prop="ippz_dns_by">
<el-form-item
:label="$t('wirelessgatewayip.DNS2')"
:label-width="formLabelWidth"
prop="ippz_dns_by"
>
<el-row>
<el-col :span="5">
<el-input v-model="ippz_dns_by1" maxlength="3"></el-input>
<el-input
v-model="ippz_dns_by1"
maxlength="3"
></el-input>
</el-col>
<el-col :span="1">.</el-col>
<el-col :span="5">
<el-input v-model="ippz_dns_by2" maxlength="3"></el-input>
<el-input
v-model="ippz_dns_by2"
maxlength="3"
></el-input>
</el-col>
<el-col :span="1">.</el-col>
<el-col :span="5">
<el-input v-model="ippz_dns_by3" maxlength="3"></el-input>
<el-input
v-model="ippz_dns_by3"
maxlength="3"
></el-input>
</el-col>
<el-col :span="1">.</el-col>
<el-col :span="5">
<el-input v-model="ippz_dns_by4" maxlength="3"></el-input>
<el-input
v-model="ippz_dns_by4"
maxlength="3"
></el-input>
</el-col>
</el-row>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="MAC地址:" :label-width="formLabelWidth" prop="ippz_mac">
<el-form-item
:label="$t('wirelessgatewayip.MAC')"
:label-width="formLabelWidth"
prop="ippz_mac"
>
<el-row>
<el-col :span="24" class="mac">
<el-input style="width: 200px" v-model="ruleForm.ippz_mac" /><el-button v-copy="ruleForm.ippz_mac"
@click="CopyText">复制</el-button>
<el-input
style="width: 200px"
v-model="ruleForm.ippz_mac"
/><el-button
v-copy="ruleForm.ippz_mac"
@click="CopyText"
>{{ $t("wirelessgatewayip.copy") }}</el-button
>
</el-col>
</el-row>
</el-form-item>
@ -296,8 +382,12 @@
</div>
</div>
<div slot="footer" class="dialog-footer footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="dialogFormVisible = false"> </el-button>
<el-button type="primary" @click="submitForm">{{
$t("save")
}}</el-button>
<el-button @click="dialogFormVisible = false">{{
$t("cancel")
}}</el-button>
</div>
</div>
</el-dialog>
@ -305,7 +395,7 @@
</template>
<script>
import { GetUserAnswer, SaveUserAnswer } from "../api/user";
import { getQueryAnswer, GetUserAnswer, SaveUserAnswer } from "../api/user";
export default {
name: "DataView",
data() {
@ -314,13 +404,13 @@ export default {
step: "",
ruleForm: {
// ippz_wangkou:"",
ippz_lwfs: "无线",
ippz_lwfs: "",
ippz_zwym: "",
ippz_mrwg: "",
ippz_dns_sx: "",
ippz_dns_by: "",
ippz_ip: "",
ippz_mac: "3C:2D:50:20:30:3D",
ippz_mac: "",
ippz_wifi_ssid: "",
ippz_wifi_mm: "",
wgpz_wgmc: "",
@ -371,31 +461,31 @@ export default {
},
labelPosition: "left",
ippz_zwym1: "255",
ippz_zwym2: "255",
ippz_zwym3: "255",
ippz_zwym4: "0",
ippz_zwym1: "",
ippz_zwym2: "",
ippz_zwym3: "",
ippz_zwym4: "",
ippz_ip1: "",
ippz_ip2: "",
ippz_ip3: "",
ippz_ip4: "",
ippz_mrwg1: "192",
ippz_mrwg2: "168",
ippz_mrwg3: "1",
ippz_mrwg4: "1",
ippz_dns_sx1: "8",
ippz_dns_sx2: "8",
ippz_dns_sx3: "8",
ippz_dns_sx4: "8",
ippz_dns_by1: "8",
ippz_dns_by2: "8",
ippz_dns_by3: "8",
ippz_dns_by4: "8",
ippz_mac: "3C:2D:50:20:30:3D",
ippz_mrwg1: "",
ippz_mrwg2: "",
ippz_mrwg3: "",
ippz_mrwg4: "",
ippz_dns_sx1: "",
ippz_dns_sx2: "",
ippz_dns_sx3: "",
ippz_dns_sx4: "",
ippz_dns_by1: "",
ippz_dns_by2: "",
ippz_dns_by3: "",
ippz_dns_by4: "",
ippz_mac: "",
loading: false,
dialogFormVisible: true,
formLabelWidth: "100px",
formLabelWidth: this.$i18n.locale === "zh" ? "140px" : "100px",
//
// 线
rules_ippz_wirle: {
@ -440,13 +530,25 @@ export default {
},
],
ippz_mac: [
{ required: true, message: "请输入备选DNS", trigger: "blur" },
{
required: true,
message: this.$t("wirelessgatewayip.rules.ippz_mac"),
trigger: "blur",
},
],
ippz_wifi_ssid: [
{ required: true, message: "请输入SSID", trigger: "blur" },
{
required: true,
message: this.$t("wirelessgatewayip.rules.ippz_wifi_ssid"),
trigger: "blur",
},
],
ippz_wifi_mm: [
{ required: true, message: "请输入密码", trigger: "blur" },
{
required: true,
message: this.$t("wirelessgatewayip.rules.ippz_wifi_mm"),
trigger: "blur",
},
],
},
@ -480,27 +582,27 @@ export default {
validateZwym(rule, value, callback) {
if (
this.ippz_zwym1 +
"." +
this.ippz_zwym2 +
"." +
this.ippz_zwym3 +
"." +
this.ippz_zwym4 ===
"..."
) {
callback(new Error("请输入子网掩码"));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_zwym1 +
"." +
this.ippz_zwym2 +
"." +
this.ippz_zwym3 +
"." +
this.ippz_zwym4
this.ippz_zwym4 ===
"..."
) {
callback(new Error(this.$t("wirelessgatewayip.rules.ippz_zwym")));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_zwym1 +
"." +
this.ippz_zwym2 +
"." +
this.ippz_zwym3 +
"." +
this.ippz_zwym4
)
) {
callback(new Error("请输入有效的子网掩码"));
callback(new Error(this.$t("wirelessgatewayip.rules.ippz_zwym1")));
} else {
callback();
}
@ -509,27 +611,27 @@ export default {
validateIp(rule, value, callback) {
if (
this.ippz_ip1 +
"." +
this.ippz_ip2 +
"." +
this.ippz_ip3 +
"." +
this.ippz_ip4 ===
"..."
) {
callback(new Error("请输入IP地址"));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_ip1 +
"." +
this.ippz_ip2 +
"." +
this.ippz_ip3 +
"." +
this.ippz_ip4
this.ippz_ip4 ===
"..."
) {
callback(new Error(this.$t("wirelessgatewayip.rules.ip1")));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_ip1 +
"." +
this.ippz_ip2 +
"." +
this.ippz_ip3 +
"." +
this.ippz_ip4
)
) {
callback(new Error("请输入有效的IP地址"));
callback(new Error(this.$t("wirelessgatewayip.rules.ip2")));
} else {
callback();
}
@ -538,27 +640,27 @@ export default {
validateMrwg(rule, value, callback) {
if (
this.ippz_mrwg1 +
"." +
this.ippz_mrwg2 +
"." +
this.ippz_mrwg3 +
"." +
this.ippz_mrwg4 ===
"..."
) {
callback(new Error("请输入网关地址"));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_mrwg1 +
"." +
this.ippz_mrwg2 +
"." +
this.ippz_mrwg3 +
"." +
this.ippz_mrwg4
this.ippz_mrwg4 ===
"..."
) {
callback(new Error(this.$t("wirelessgatewayip.rules.ippz_mrwg")));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_mrwg1 +
"." +
this.ippz_mrwg2 +
"." +
this.ippz_mrwg3 +
"." +
this.ippz_mrwg4
)
) {
callback(new Error("请输入有效的网关地址"));
callback(new Error(this.$t("wirelessgatewayip.rules.ippz_mrwg1")));
} else {
callback();
}
@ -567,27 +669,27 @@ export default {
validateDnsSx(rule, value, callback) {
if (
this.ippz_dns_sx1 +
"." +
this.ippz_dns_sx2 +
"." +
this.ippz_dns_sx3 +
"." +
this.ippz_dns_sx4 ===
"..."
) {
callback(new Error("请输入主DNS服务器地址"));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_dns_sx1 +
"." +
this.ippz_dns_sx2 +
"." +
this.ippz_dns_sx3 +
"." +
this.ippz_dns_sx4
this.ippz_dns_sx4 ===
"..."
) {
callback(new Error(this.$t("wirelessgatewayip.rules.ippz_dns_sx")));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_dns_sx1 +
"." +
this.ippz_dns_sx2 +
"." +
this.ippz_dns_sx3 +
"." +
this.ippz_dns_sx4
)
) {
callback(new Error("请输入有效的主DNS服务器地址"));
callback(new Error(this.$t("wirelessgatewayip.rules.ippz_dns_sx1")));
} else {
callback();
}
@ -596,27 +698,27 @@ export default {
validateDnsBy(rule, value, callback) {
if (
this.ippz_dns_by1 +
"." +
this.ippz_dns_by2 +
"." +
this.ippz_dns_by3 +
"." +
this.ippz_dns_by4 ===
"..."
) {
callback(new Error("请输入备用DNS服务器地址"));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_dns_by1 +
"." +
this.ippz_dns_by2 +
"." +
this.ippz_dns_by3 +
"." +
this.ippz_dns_by4
this.ippz_dns_by4 ===
"..."
) {
callback(new Error(this.$t("wirelessgatewayip.rules.ippz_dns_by")));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_dns_by1 +
"." +
this.ippz_dns_by2 +
"." +
this.ippz_dns_by3 +
"." +
this.ippz_dns_by4
)
) {
callback(new Error("请输入有效的备用DNS服务器地址"));
callback(new Error(this.$t("wirelessgatewayip.rules.ippz_dns_by1")));
} else {
callback();
}
@ -645,6 +747,16 @@ export default {
// ,
async saveAll() {
this.dialogFormVisible = false;
console.log(
this.ippz_ip1 +
"." +
this.ippz_ip2 +
"." +
this.ippz_ip3 +
"." +
this.ippz_ip4,
"提交数据"
);
var obj = {
// ippz_wangkou:this.ruleForm.ippz_wangkou,
ippz_lwfs: this.ruleForm.ippz_lwfs,
@ -693,6 +805,7 @@ export default {
ippz_wifi_mm: this.ruleForm.ippz_wifi_mm,
};
let datas = { ...this.ruleForm, ...obj };
console.log(obj, datas, "xxxxxx");
let res = await SaveUserAnswer({
mark: "DB-IotLite_wx",
// user_id: "USER202307301114011710",
@ -730,6 +843,107 @@ export default {
});
this.loading = false;
console.log(res2);
if (!res2.data.state) {
getQueryAnswer({
mark: "DB-IotLite_wx",
user_id: this.user_id,
}).then((res) => {
let res3 = JSON.parse(res.data.data.r3);
if (res3.ippz_ip.indexOf(".") == -1) {
res3.ippz_ip = "...";
}
if (res3.ippz_zwym.indexOf(".") == -1) {
res3.ippz_zwym = "...";
}
if (res3.ippz_mrwg.indexOf(".") == -1) {
res3.ippz_mrwg = "...";
}
if (res3.ippz_dns_sx.indexOf(".") == -1) {
res3.ippz_dns_sx = "...";
}
if (res3.ippz_dns_by.indexOf(".") == -1) {
res3.ippz_dns_by = "...";
}
this.ippz_ip1 = res3.ippz_ip.split(".")[0];
this.ippz_ip2 = res3.ippz_ip.split(".")[1];
this.ippz_ip3 = res3.ippz_ip.split(".")[2];
this.ippz_ip4 = res3.ippz_ip.split(".")[3];
this.ippz_zwym1 = res3.ippz_zwym.split(".")[0];
this.ippz_zwym2 = res3.ippz_zwym.split(".")[1];
this.ippz_zwym3 = res3.ippz_zwym.split(".")[2];
this.ippz_zwym4 = res3.ippz_zwym.split(".")[3];
this.ippz_mrwg1 = res3.ippz_mrwg.split(".")[0];
this.ippz_mrwg2 = res3.ippz_mrwg.split(".")[1];
this.ippz_mrwg3 = res3.ippz_mrwg.split(".")[2];
this.ippz_mrwg4 = res3.ippz_mrwg.split(".")[3];
this.ippz_dns_sx1 = res3.ippz_dns_sx.split(".")[0];
this.ippz_dns_sx2 = res3.ippz_dns_sx.split(".")[1];
this.ippz_dns_sx3 = res3.ippz_dns_sx.split(".")[2];
this.ippz_dns_sx4 = res3.ippz_dns_sx.split(".")[3];
this.ippz_dns_by1 = res3.ippz_dns_by.split(".")[0];
this.ippz_dns_by2 = res3.ippz_dns_by.split(".")[1];
this.ippz_dns_by3 = res3.ippz_dns_by.split(".")[2];
this.ippz_dns_by4 = res3.ippz_dns_by.split(".")[3];
// this.ruleForm.ippz_wangkou = res3.ippz_wangkou;
this.ruleForm.ippz_lwfs = res3.ippz_lwfs;
this.ruleForm.ippz_zwym = res3.ippz_zwym;
this.ruleForm.ippz_mrwg = res3.ippz_mrwg;
this.ruleForm.ippz_dns_sx = res3.ippz_dns_sx;
this.ruleForm.ippz_dns_by = res3.ippz_dns_by;
this.ruleForm.ippz_mac = res3.ippz_mac;
this.ruleForm.ippz_wifi_ssid = res3.ippz_wifi_ssid;
this.ruleForm.ippz_wifi_mm = res3.ippz_wifi_mm;
this.ruleForm.wgpz_wgmc = res3.wgpz_wgmc;
this.ruleForm.wgpz_wgid = res3.wgpz_wgid;
this.ruleForm.wgpz_wglx = res3.wgpz_wglx;
this.ruleForm.tdpz_tdmc = res3.tdpz_tdmc;
this.ruleForm.tdpz_td = res3.tdpz_td;
this.ruleForm.tdpz_qdmc = res3.tdpz_qdmc;
this.ruleForm.tdpz_chuankou = res3.tdpz_chuankou;
this.ruleForm.tdpz_btl = res3.tdpz_btl;
this.ruleForm.tdpz_sjw = res3.tdpz_sjw;
this.ruleForm.tdpz_tzw = res3.tdpz_tzw;
this.ruleForm.tdpz_jojy = res3.tdpz_jojy;
this.ruleForm.tdpz_cgsj = res3.tdpz_cgsj;
this.ruleForm.tdpz_jgsj = res3.tdpz_jgsj;
this.ruleForm.tdpz_lxsj = res3.tdpz_lxsj;
this.ruleForm.tdpz_cfcs = res3.tdpz_cfcs;
this.ruleForm.tdpz_watchtime = res3.tdpz_watchtime;
this.ruleForm.tdpz_cjsylxdz = res3.tdpz_cjsylxdz;
this.ruleForm.tdpz_dxzkb = res3.tdpz_dxzkb;
this.ruleForm.tdpz_050F = res3.tdpz_050F;
this.ruleForm.tdpz_0610 = res3.tdpz_0610;
this.ruleForm.sbpz_sbid = res3.sbpz_sbid;
this.ruleForm.sbpz_sbmc = res3.sbpz_sbmc;
this.ruleForm.sbpz_sbdz = res3.sbpz_sbdz;
this.ruleForm.sbpz_jysb = res3.sbpz_jysb;
this.ruleForm.sbpz_jdzxz = res3.sbpz_jdzxz;
this.ruleForm.cjdpz_tagid = res3.cjdpz_tagid;
this.ruleForm.cjdpz_mc = res3.cjdpz_mc;
this.ruleForm.cjdpz_sjq = res3.cjdpz_sjq;
this.ruleForm.cjdpz_jcqdz = res3.cjdpz_jcqdz;
this.ruleForm.cjdpz_cjsjlx = res3.cjdpz_cjsjlx;
this.ruleForm.cjdpz_zjx = res3.cjdpz_zjx;
this.ruleForm.cjdpz_dxsx = res3.cjdpz_dxsx;
this.ruleForm.cjdpz_beilv = res3.cjdpz_beilv;
this.ruleForm.mqtt_qiyong = res3.mqtt_qiyong;
this.ruleForm.mqtt_ip = res3.mqtt_ip;
this.ruleForm.mqtt_port = res3.mqtt_port;
this.ruleForm.mqtt_wgsn = res3.mqtt_wgsn;
this.ruleForm.mqtt_sssjfbzt = res3.mqtt_sssjfbzt;
this.ruleForm.mqtt_qos = res3.mqtt_qos;
this.ruleForm.mqtt_scms = res3.mqtt_scms;
this.ruleForm.mqtt_sczq = res3.mqtt_sczq;
this.ruleForm.mqtt_sjgl = res3.mqtt_sjgl;
this.ruleForm.mqtt_cjd_sbmc = res3.mqtt_cjd_sbmc;
this.ruleForm.mqtt_cjd_tagid = res3.mqtt_cjd_tagid;
});
}
if (res2.data.data && res2.data.state) {
if (res2.data.data.step) {
this.step = res2.data.data.step;
@ -820,7 +1034,7 @@ export default {
this.user_id = window.location.href.split("?")[1];
this.GetUserAnswer();
},
mounted() { },
mounted() {},
directives: {
copy: {
bind(el, { value }) {
@ -867,6 +1081,20 @@ export default {
</script>
<style lang="less" scoped>
:deep(.el-dialog__body) {
padding: 40px 20px;
}
/deep/ .zh {
.el-row {
.el-col-12:last-child {
padding-right: 70px !important;
}
.el-col-12:first-child {
padding-right: 68px !important;
}
}
}
/deep/ .wired,
/deep/ .wifi {
.el-row {
@ -915,7 +1143,7 @@ export default {
.netWay {
margin-bottom: 20px;
width: 80px;
//width: 80px;
color: rgba(16, 16, 16, 1);
font-size: 20px;
text-align: left;
@ -928,10 +1156,10 @@ export default {
}
.title_center {
font-size: 18px;
font-size: 14px;
color: red;
position: absolute;
left: 100px;
top: 20px;
left: 190px;
top: 24px;
}
</style>

View File

@ -26,13 +26,13 @@
default-active="#0078FE"
>
<el-menu-item id="menuitem" index="1" style="font-size: 12px">
<span slot="title">新建设备</span>
<span slot="title">{{ $t('addDevice') }}</span>
</el-menu-item>
<el-menu-item index="2" style="font-size: 12px">
<span slot="title"> </span>
<span slot="title">{{ $t('del') }}</span>
</el-menu-item>
<el-menu-item index="3" style="font-size: 12px">
<span slot="title"> </span>
<span slot="title">{{ $t('cancel') }}</span>
</el-menu-item>
</el-menu>
</div>
@ -41,7 +41,7 @@
<!-- 网口设备 -->
<div class="pas_params">
<el-dialog
title="设备属性"
:title="$t('configuration.deviceProperties')"
:visible.sync="add_passage"
width="382px"
v-loading="loading"
@ -55,7 +55,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="设备ID:"
:label="$t('configuration.deviceID')"
:label-width="formLabelWidth"
prop="sbpz_sbid"
>
@ -78,7 +78,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="设备名称:"
:label="$t('configuration.deviceName')"
:label-width="formLabelWidth"
prop="sbpz_sbmc"
>
@ -101,7 +101,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="MAC地址:"
:label="$t('configuration.MACAddress')"
:label-width="formLabelWidth"
prop="sbpz_mac"
>
@ -117,39 +117,39 @@
<el-col :span="24">
<el-form-item>
<!-- 需要修改的地方 -->
<el-checkbox v-model="formdata.sbpz_jysb">禁用地址</el-checkbox>
<el-checkbox v-model="formdata.sbpz_jysb">{{ $t('configuration.disableDevice') }}</el-checkbox>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<span class="one">1</span>
<el-form-item label="基地址选择:">
<el-form-item :label="$t('configuration.addressSelection')">
<el-switch v-model="formdata.sbpz_jdzxz" disabled> </el-switch>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="add_passage = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="add_passage = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form
:model="formdata"
:rules="rulesGate"
ref="gateWay"
label-width="85px"
:label-width="$i18n.locale === 'zh'?'130px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="formdata.wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('Please')"
style="width: 200px"
>
<el-option
@ -161,10 +161,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="formdata.wgpz_wgid"
placeholder="请选择"
:placeholder="$t('Please')"
style="width: 200px"
>
<el-option
@ -176,10 +176,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关类型:" prop="wgpz_wglx">
<el-form-item :label="$t('dbcollectiongate.type')" prop="wgpz_wglx">
<el-select
v-model="formdata.wgpz_wglx"
placeholder="请选择"
:placeholder="$t('Please')"
style="width: 200px"
>
<el-option
@ -193,8 +193,8 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitGate">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitGate">{{ $t('save') }}</el-button>
<el-button @click="outerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
</div>
@ -203,7 +203,7 @@
<script>
import _ from "lodash";
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "DeviceView",
@ -272,26 +272,8 @@ export default {
rightMenu: "",
dialogVisible: true,
menuShow: false,
options1: [
{
value: "有线区加工设备1",
label: "有线区加工设备1",
},
{
value: "无线区加工设备1",
label: "无线区加工设备1",
},
],
options2: [
{
value: "有线区精雕1",
label: "有线区精雕1",
},
{
value: "无线区精雕1",
label: "无线区精雕1",
},
],
options1: this.$t('configuration.options1'),
options2: this.$t('configuration.options2'),
datas: [
{
label: "Gateway",
@ -360,13 +342,13 @@ export default {
nodekey: "",
rules: {
sbpz_sbid: [
{ required: true, message: "请输入设备ID", trigger: "blur" },
{ required: true, message: this.$t('configuration.rules.sbpz_sbid'), trigger: "blur" },
],
sbpz_sbmc: [
{ required: true, message: "请输入设备名称", trigger: "blur" },
{ required: true, message: this.$t('configuration.rules.sbpz_sbmc'), trigger: "blur" },
],
sbpz_mac: [
{ required: true, message: "请输入设备地址", trigger: "blur" },
{ required: true, message: this.$t('configuration.rules.sbpz_mac'), trigger: "blur" },
],
},
@ -379,25 +361,16 @@ export default {
},
rulesGate: {
wgpz_wgmc: [
{ required: true, message: "请选择网关名称", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgmc'), trigger: "blur" },
],
wgpz_wgid: [
{ required: true, message: "请选择网关id", trigger: "blur" },
{ required: true, message:this.$t('dbcollectiongate.rules.wgpz_wgid'), trigger: "blur" },
],
wgpz_wglx: [
{ required: true, message: "请选择网关类型", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wglx'), trigger: "blur" },
],
},
opts1: [
{
value: "有线区网关1",
label: "有线区网关1",
},
{
value: "无线区网关1",
label: "无线区网关1",
},
],
opts1: this.$t('dbcollectiongate.options1'),
opts2: [
{
value: "LAN-BOX1",
@ -408,32 +381,7 @@ export default {
label: "WLAN-BOX1",
},
],
opts3: [
{
value: "loT Lite网关",
label: "loT Lite网关",
},
{
value: "MODBUS网关",
label: "MODBUS网关",
},
{
value: "BACNET网关",
label: "BACNET网关",
},
{
value: "OPC UA网关",
label: "OPC UA网关",
},
{
value: "OPC DA网关",
label: "OPC DA网关",
},
{
value: "loT网关",
label: "loT网关",
},
],
opts3: this.$t('dbcollectiongate.options3'),
};
},
methods: {
@ -620,7 +568,64 @@ export default {
user_id: this.user_id,
// user_id: "USER202307301114011710",
});
console.log(answer);
if(!answer.data.state){
getQueryAnswer({
mark: "DB-IotLite_wx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
// console.log(obj);
if (obj.sbpz_sbid) {
this.formdata.sbpz_sbid = obj.sbpz_sbid;
this.formdata.sbpz_jdzxz = Boolean(Number(obj.sbpz_jdzxz));
this.formdata.sbpz_jysb = Boolean(Number(obj.sbpz_jysb));
this.formdata.sbpz_sbmc = obj.sbpz_sbmc;
this.formdata.sbpz_mac = obj.sbpz_mac;
}
this.formdata.ippz_wangkou = obj.ippz_wangkou;
this.formdata.ippz_mrwg = obj.ippz_mrwg;
this.formdata.ippz_ip = obj.ippz_ip;
this.formdata.ippz_zwym = obj.ippz_zwym;
this.formdata.ippz_dns_sx = obj.ippz_dns_sx;
this.formdata.ippz_dns_by = obj.ippz_dns_by;
this.formdata.wgpz_wgmc = obj.wgpz_wgmc;
this.formdata.wgpz_wgid = obj.wgpz_wgid;
this.formdata.wgpz_wglx = obj.wgpz_wglx;
this.formdata.tdpz_tdmc = obj.tdpz_tdmc;
this.formdata.tdpz_td = obj.tdpz_td;
this.formdata.tdpz_qdmc = obj.tdpz_qdmc;
this.formdata.tdpz_ip = obj.tdpz_ip;
this.formdata.tdpz_port = obj.tdpz_port;
this.formdata.tdpz_cssj = obj.tdpz_cssj;
this.formdata.tdpz_jgsj = obj.tdpz_jgsj;
this.formdata.tdpz_lxsj = obj.tdpz_lxsj;
this.formdata.tdpz_cfcs = obj.tdpz_cfcs;
this.formdata.tdpz_watchtime = obj.tdpz_watchtime;
this.formdata.tdpz_cjsylxdz = obj.tdpz_cjsylxdz;
this.formdata.tdpz_dxzkb = obj.tdpz_dxzkb;
this.formdata.tdpz_050F = obj.tdpz_050F;
this.formdata.tdpz_0610 = obj.tdpz_0610;
this.formdata.cjdpz_tagid = obj.cjdpz_tagid;
this.formdata.cjdpz_mc = obj.cjdpz_mc;
this.formdata.cjdpz_sjq = obj.cjdpz_sjq;
this.formdata.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.formdata.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formdata.cjdpz_zjx = obj.cjdpz_zjx;
this.formdata.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formdata.cjdpz_beilv = obj.cjdpz_beilv;
this.formdata.mqtt_qiyong = obj.mqtt_qiyong;
this.formdata.mqtt_ip = obj.mqtt_ip;
this.formdata.mqtt_port = obj.mqtt_port;
this.formdata.mqtt_wgsn = obj.mqtt_wgsn;
this.formdata.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formdata.mqtt_qos = obj.mqtt_qos;
this.formdata.mqtt_scms = obj.mqtt_scms;
this.formdata.mqtt_sczq = obj.mqtt_sczq;
this.formdata.mqtt_sjgl = obj.mqtt_sjgl;
this.formdata.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.formdata.mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
})
}
if (answer.data.data && answer.data.state) {
let obj = JSON.parse(answer.data.data.mark_value);
// console.log(obj);
@ -738,7 +743,12 @@ export default {
}).then((res) => {
console.log(res);
console.log(JSON.parse(res.data.data.data));
this.trees = JSON.parse(res.data.data.data);
if(this.$i18n.locale==='zh'){
this.trees = JSON.parse(res.data.data.r2);
}else{
this.trees = JSON.parse(res.data.data.data);
}
});
}
this.loading = true;

View File

@ -26,13 +26,13 @@
default-active="#0078FE"
>
<el-menu-item id="menuitem" index="1" style="font-size: 12px">
<span slot="title">新建设备</span>
<span slot="title">{{ $t('addDevice') }}</span>
</el-menu-item>
<el-menu-item index="2" style="font-size: 12px">
<span slot="title"> </span>
<span slot="title">{{ $t('del') }}</span>
</el-menu-item>
<el-menu-item index="3" style="font-size: 12px">
<span slot="title"> </span>
<span slot="title">{{ $t('cancel') }}</span>
</el-menu-item>
</el-menu>
</div>
@ -41,7 +41,7 @@
<!-- 网口设备 -->
<div class="pas_params">
<el-dialog
title="设备属性"
:title="$t('configuration.deviceProperties')"
:visible.sync="add_passage"
width="382px"
v-loading="loading"
@ -55,7 +55,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="设备ID:"
:label="$t('configuration.deviceID')"
:label-width="formLabelWidth"
prop="sbpz_sbid"
>
@ -78,7 +78,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="设备名称:"
:label="$t('configuration.deviceName')"
:label-width="formLabelWidth"
prop="sbpz_sbmc"
>
@ -101,7 +101,7 @@
<el-row>
<el-col :span="24">
<el-form-item
label="设备地址:"
:label="$t('configuration.deviceAddress')"
:label-width="formLabelWidth"
prop="sbpz_sbdz"
>
@ -117,40 +117,40 @@
<el-col :span="24">
<el-form-item>
<!-- 需要修改的地方 -->
<el-checkbox v-model="formData.sbpz_jysb">禁用地址</el-checkbox>
<el-checkbox v-model="formData.sbpz_jysb">{{ $t('configuration.disableDevice') }}</el-checkbox>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="基地址选择:">
<span class="one">1</span>
<el-form-item :label="$t('configuration.addressSelection')">
<span :class="">1</span>
<el-switch v-model="formData.sbpz_jdzxz" disabled></el-switch>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="add_passage = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="add_passage = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
<!-- 网关 -->
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form
:model="formData"
:rules="rulesGate"
ref="gateWay"
label-width="85px"
:label-width="$i18n.locale === 'zh'?'130px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="formData.wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -162,10 +162,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="formData.wgpz_wgid"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -177,10 +177,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关类型:" prop="wgpz_wglx">
<el-form-item :label="$t('dbcollectiongate.type')" prop="wgpz_wglx">
<el-select
v-model="formData.wgpz_wglx"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -194,8 +194,8 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitGate">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitGate">{{ $t('save') }}</el-button>
<el-button @click="outerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
</div>
@ -203,7 +203,7 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "DeviceView",
@ -279,26 +279,8 @@ export default {
rightMenu: "",
dialogVisible: true,
menuShow: false,
options1: [
{
value: "有线区加工设备1",
label: "有线区加工设备1",
},
{
value: "无线区加工设备1",
label: "无线区加工设备1",
},
],
options2: [
{
value: "有线区精雕1",
label: "有线区精雕1",
},
{
value: "无线区精雕1",
label: "无线区精雕1",
},
],
options1: this.$t('configuration.options1'),
options2: this.$t('configuration.options2'),
defaultProps: {
children: "children",
label: "label",
@ -306,38 +288,29 @@ export default {
nodekey: "",
rules: {
sbpz_sbid: [
{ required: true, message: "请输入设备ID", trigger: "blur" },
{ required: true, message: this.$t('configuration.rules.sbpz_sbid'), trigger: "blur" },
],
sbpz_sbmc: [
{ required: true, message: "请输入设备名称", trigger: "blur" },
{ required: true, message: this.$t('configuration.rules.sbpz_sbmc'), trigger: "blur" },
],
sbpz_sbdz: [
{ required: true, message: "请输入设备地址", trigger: "blur" },
{ required: true, message: this.$t('configuration.rules.sbpz_sbdz'), trigger: "blur" },
],
},
//
outerVisible: false,
rulesGate: {
wgpz_wgmc: [
{ required: true, message: "请选择网关名称", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgmc'), trigger: "blur" },
],
wgpz_wgid: [
{ required: true, message: "请选择网关id", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wgid'), trigger: "blur" },
],
wgpz_wglx: [
{ required: true, message: "请选择网关类型", trigger: "blur" },
{ required: true, message: this.$t('dbcollectiongate.rules.wgpz_wglx'), trigger: "blur" },
],
},
opts1: [
{
value: "有线区网关1",
label: "有线区网关1",
},
{
value: "无线区网关1",
label: "无线区网关1",
},
],
opts1: this.$t('dbcollectiongate.options1'),
opts2: [
{
value: "LAN-BOX1",
@ -348,32 +321,7 @@ export default {
label: "WLAN-BOX1",
},
],
opts3: [
{
value: "loT Lite网关",
label: "loT Lite网关",
},
{
value: "MODBUS网关",
label: "MODBUS网关",
},
{
value: "BACNET网关",
label: "BACNET网关",
},
{
value: "OPC UA网关",
label: "OPC UA网关",
},
{
value: "OPC DA网关",
label: "OPC DA网关",
},
{
value: "loT网关",
label: "loT网关",
},
],
opts3: this.$t('dbcollectiongate.options3'),
};
},
methods: {
@ -563,7 +511,73 @@ export default {
// user_id: "USER202307301114011710",
user_id: this.user_id,
});
console.log(answer);
if(!answer.data.state){
getQueryAnswer({
mark: "DB-IotLite_wx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
// console.log(obj);
if (obj.sbpz_sbid) {
this.formData.sbpz_sbid = obj.sbpz_sbid;
this.formData.sbpz_jdzxz = Boolean(Number(obj.sbpz_jdzxz));
this.formData.sbpz_jysb = Boolean(Number(obj.sbpz_jysb));
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_sbdz = obj.sbpz_sbdz;
}
this.formData.wgpz_wgid = obj.wgpz_wgid;
// console.log(this.formData.wgpz_wgid);
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.wgpz_wglx = obj.wgpz_wglx;
this.formData.ippz_lwfs = obj.ippz_lwfs;
this.formData.ippz_wangkou = obj.ippz_wangkou;
this.formData.ippz_zwym = obj.ippz_zwym;
this.formData.ippz_mrwg = obj.ippz_mrwg;
this.formData.ippz_ip = obj.ippz_ip;
this.formData.tdpz_watchtime = obj.tdpz_watchtime;
this.formData.tdpz_cjsylxdz = obj.tdpz_cjsylxdz;
this.formData.ippz_dns_sx = obj.ippz_dns_sx;
this.formData.ippz_dns_by = obj.ippz_dns_by;
this.formData.ippz_mac = obj.ippz_mac;
this.formData.ippz_wifi_ssid = obj.ippz_wifi_ssid;
this.formData.ippz_wifi_mm = obj.ippz_wifi_mm;
this.formData.tdpz_tdmc = obj.tdpz_tdmc;
this.formData.tdpz_td = obj.tdpz_td;
this.formData.tdpz_qdmc = obj.tdpz_qdmc;
this.formData.tdpz_chuankou = obj.tdpz_chuankou;
this.formData.tdpz_btl = obj.tdpz_btl;
this.formData.tdpz_sjw = obj.tdpz_sjw;
this.formData.tdpz_tzw = obj.tdpz_tzw;
this.formData.tdpz_jojy = obj.tdpz_jojy;
this.formData.tdpz_port = obj.tdpz_port;
this.formData.tdpz_cgsj = obj.tdpz_cgsj;
this.formData.tdpz_jgsj = obj.tdpz_jgsj;
this.formData.tdpz_lxsj = obj.tdpz_lxsj;
this.formData.tdpz_cfcs = obj.tdpz_cfcs;
this.formData.tdpz_050F = obj.tdpz_050F;
this.formData.tdpz_0610 = obj.tdpz_0610;
this.formData.tdpz_dxzkb = obj.tdpz_dxzkb;
this.formData.cjdpz_tagid = obj.cjdpz_tagid;
this.formData.cjdpz_mc = obj.cjdpz_mc;
this.formData.cjdpz_sjq = obj.cjdpz_sjq;
this.formData.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formData.cjdpz_zjx = obj.cjdpz_zjx;
this.formData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formData.cjdpz_beilv = obj.cjdpz_beilv;
this.formData.mqtt_qiyong = obj.mqtt_qiyong;
this.formData.mqtt_ip = obj.mqtt_ip;
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_qos = obj.mqtt_qos;
this.formData.mqtt_scms = obj.mqtt_scms;
this.formData.mqtt_sczq = obj.mqtt_sczq;
this.formData.mqtt_sjgl = obj.mqtt_sjgl;
this.formData.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.formData.mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
})
}
if (answer.data.data && answer.data.state) {
// console.log(answer);
let obj = JSON.parse(answer.data.data.mark_value);
@ -693,7 +707,13 @@ export default {
}).then((res) => {
// console.log(res);
// console.log(JSON.parse(res.data.data.data));
this.trees = JSON.parse(res.data.data.data);
if(this.$i18n.locale==='zh'){
this.trees = JSON.parse(res.data.data.r2);
}else{
this.trees = JSON.parse(res.data.data.data);
}
});
}
this.loading = true;

View File

@ -2,15 +2,16 @@
<template>
<div>
<!-- <div> <el-button type="info" plain @click="dialogFormVisible = true">IP设置</el-button></div> -->
<el-dialog title="IP设置" :visible.sync="dialogFormVisible" :append-to-body="true" width="894px" v-loading="loading">
<el-dialog v-loading="loading" :append-to-body="true" :visible.sync="dialogFormVisible" :title="$t('wiredgatewayip.title')"
width="894px">
<div class="form_content">
<span class="title_center">注意本页面涉及排错请检查修改默认值</span>
<el-form :model="formData" :label-position="labelPosition" label-width="80px" :rules="rules_ippz_wirle"
ref="formData">
<div class="wired">
<span class="title_center">{{ $t('wiredgatewayip.prompt') }}</span>
<el-form ref="formData" :label-position="labelPosition" :model="formData" :rules="rules_ippz_wirle"
label-width="80px">
<div :class="$i18n.locale === 'zh'?'zh wired':'wired'">
<el-row>
<el-col :span="12">
<el-form-item label="网口:" :label-width="formLabelWidth" prop="ippz_wangkou">
<el-form-item :label-width="formLabelWidth" :label="$t('wiredgatewayip.port')" prop="ippz_wangkou">
<el-select v-model="formData.ippz_wangkou" style="width: 200px; height: 30px">
<el-option label="ETH0" value="ETH0"></el-option>
<el-option label="ETH1" value="ETH1"></el-option>
@ -18,12 +19,12 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="IP地址:" :label-width="formLabelWidth" prop="ippz_ip">
<el-form-item :label-width="formLabelWidth" :label="$t('wiredgatewayip.IP')" prop="ippz_ip">
<el-row>
<el-col :span="5">
<el-input v-model="ippz_ip1" maxlength="3"></el-input>
</el-col>
<el-col :span="1">. </el-col>
<el-col :span="1">.</el-col>
<el-col :span="5">
<el-input v-model="ippz_ip2" maxlength="3"></el-input>
</el-col>
@ -41,7 +42,7 @@
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="子网掩码:" :label-width="formLabelWidth" prop="ippz_zwym">
<el-form-item :label-width="formLabelWidth" :label="$t('wiredgatewayip.SubnetMask')" prop="ippz_zwym">
<el-row>
<el-col :span="5">
<el-input v-model="ippz_zwym1" maxlength="3"></el-input>
@ -62,22 +63,30 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="默认网关:" :label-width="formLabelWidth" prop="ippz_mrwg">
<el-form-item :label-width="formLabelWidth" :label="$t('wiredgatewayip.gateway')" prop="ippz_mrwg">
<el-row>
<el-col :span="5"><el-input v-model="ippz_mrwg1" maxlength="3"></el-input></el-col>
<el-col :span="5">
<el-input v-model="ippz_mrwg1" maxlength="3"></el-input>
</el-col>
<el-col :span="1">.</el-col>
<el-col :span="5"><el-input v-model="ippz_mrwg2" maxlength="3"></el-input></el-col>
<el-col :span="5">
<el-input v-model="ippz_mrwg2" maxlength="3"></el-input>
</el-col>
<el-col :span="1">.</el-col>
<el-col :span="5"><el-input v-model="ippz_mrwg3" maxlength="3"></el-input></el-col>
<el-col :span="5">
<el-input v-model="ippz_mrwg3" maxlength="3"></el-input>
</el-col>
<el-col :span="1">.</el-col>
<el-col :span="5"><el-input v-model="ippz_mrwg4" maxlength="3"></el-input></el-col>
<el-col :span="5">
<el-input v-model="ippz_mrwg4" maxlength="3"></el-input>
</el-col>
</el-row>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="首选DNS:" :label-width="formLabelWidth" prop="ippz_dns_sx">
<el-form-item :label-width="formLabelWidth" :label="$t('wiredgatewayip.DNS1')" prop="ippz_dns_sx">
<el-row>
<el-col :span="5">
<el-input v-model="ippz_dns_sx1" maxlength="3"></el-input>
@ -98,12 +107,12 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="备选DNS:" :label-width="formLabelWidth" prop="ippz_dns_by">
<el-form-item :label-width="formLabelWidth" :label="$t('wiredgatewayip.DNS2')" prop="ippz_dns_by">
<el-row>
<el-col :span="5">
<el-input v-model="ippz_dns_by1" maxlength="3"></el-input>
</el-col>
<el-col :span="1">. </el-col>
<el-col :span="1">.</el-col>
<el-col :span="5">
<el-input v-model="ippz_dns_by2" maxlength="3"></el-input>
</el-col>
@ -121,11 +130,13 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="MAC地址:" :label-width="formLabelWidth" prop="ippz_mac">
<el-form-item :label-width="formLabelWidth" :label="$t('wiredgatewayip.DNS2')" prop="ippz_mac">
<el-row>
<el-col :span="24" class="mac">
<el-input style="width: 200px; height: 30px" v-model="formData.ippz_mac"></el-input><el-button
v-copy="formData.ippz_mac" @click="CopyText">复制</el-button>
<el-input v-model="formData.ippz_mac" style="width: 200px; height: 30px"></el-input>
<el-button
v-copy="formData.ippz_mac" @click="CopyText">{{ $t('wiredgatewayip.copy') }}
</el-button>
</el-col>
</el-row>
</el-form-item>
@ -135,8 +146,8 @@
</el-form>
<div slot="footer" class="dialog-footer footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="dialogFormVisible = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="dialogFormVisible = false">{{ $t('cancel') }}</el-button>
</div>
</div>
</el-dialog>
@ -144,7 +155,8 @@
</template>
<script>
import { SaveUserAnswer, GetUserAnswer } from "../api/user";
import {SaveUserAnswer, GetUserAnswer, getQueryAnswer} from "../api/user";
export default {
name: "GateWay",
data() {
@ -161,7 +173,7 @@ export default {
ippz_dns_sx: "",
ippz_dns_by: "",
ippz_ip: "",
ippz_mac: "3C:2D:50:20:30:3D",
ippz_mac: "",
wgpz_wgmc: "",
wgpz_wgid: "",
wgpz_wglx: "",
@ -205,35 +217,35 @@ export default {
mqtt_cjd_tagid: "",
},
labelPosition: "left",
ippz_zwym1: "255",
ippz_zwym2: "255",
ippz_zwym3: "255",
ippz_zwym4: "0",
ippz_zwym1: "",
ippz_zwym2: "",
ippz_zwym3: "",
ippz_zwym4: "",
ippz_ip1: "",
ippz_ip2: "",
ippz_ip3: "",
ippz_ip4: "",
ippz_mrwg1: "192",
ippz_mrwg2: "168",
ippz_mrwg3: "1",
ippz_mrwg4: "1",
ippz_dns_sx1: "8",
ippz_dns_sx2: "8",
ippz_dns_sx3: "8",
ippz_dns_sx4: "8",
ippz_mrwg1: "",
ippz_mrwg2: "",
ippz_mrwg3: "",
ippz_mrwg4: "",
ippz_dns_sx1: "",
ippz_dns_sx2: "",
ippz_dns_sx3: "",
ippz_dns_sx4: "",
ippz_dns_by1: "8",
ippz_dns_by2: "8",
ippz_dns_by3: "8",
ippz_dns_by4: "8",
ippz_dns_by1: "",
ippz_dns_by2: "",
ippz_dns_by3: "",
ippz_dns_by4: "",
dialogFormVisible: true,
formLabelWidth: "100px",
formLabelWidth: this.$i18n.locale === 'zh'?"140px":"100px",
// 线
rules_ippz_wirle: {
ippz_wangkou: [
{
required: true,
message: "请输入网口",
message: this.$t('Please') + this.$t('wiredgatewayip.port'),
trigger: "change",
},
],
@ -278,7 +290,7 @@ export default {
},
],
ippz_mac: [
{ required: true, message: "请输入MAC地址", trigger: "blur" },
{required: true, message: this.$t('Please') + this.$t('wiredgatewayip.MAC'), trigger: "blur"},
],
},
};
@ -306,28 +318,28 @@ export default {
//
validateZwym(rule, value, callback) {
if (
this.ippz_zwym1 +
"." +
this.ippz_zwym2 +
"." +
this.ippz_zwym3 +
"." +
this.ippz_zwym4 ===
"..."
) {
callback(new Error("请输入子网掩码"));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_zwym1 +
"." +
this.ippz_zwym2 +
"." +
this.ippz_zwym3 +
"." +
this.ippz_zwym4
)
this.ippz_zwym4 ===
"..."
) {
callback(new Error("请输入有效的子网掩码"));
callback(new Error( this.$t('Please') + this.$t('wiredgatewayip.SubnetMask')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_zwym1 +
"." +
this.ippz_zwym2 +
"." +
this.ippz_zwym3 +
"." +
this.ippz_zwym4
)
) {
callback(new Error( this.$t('Please') +this.$t('valid')+ this.$t('wiredgatewayip.SubnetMask')));
} else {
callback();
}
@ -335,28 +347,28 @@ export default {
//ip
validateIp(rule, value, callback) {
if (
this.ippz_ip1 +
"." +
this.ippz_ip2 +
"." +
this.ippz_ip3 +
"." +
this.ippz_ip4 ===
"..."
) {
callback(new Error("请输入IP地址"));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_ip1 +
"." +
this.ippz_ip2 +
"." +
this.ippz_ip3 +
"." +
this.ippz_ip4
)
this.ippz_ip4 ===
"..."
) {
callback(new Error("请输入有效的IP地址"));
callback(new Error(this.$t('Please') + this.$t('wiredgatewayip.IP')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_ip1 +
"." +
this.ippz_ip2 +
"." +
this.ippz_ip3 +
"." +
this.ippz_ip4
)
) {
callback(new Error(this.$t('Please') +this.$t('valid')+ this.$t('wiredgatewayip.IP')));
} else {
callback();
}
@ -364,28 +376,28 @@ export default {
//
validateMrwg(rule, value, callback) {
if (
this.ippz_mrwg1 +
"." +
this.ippz_mrwg2 +
"." +
this.ippz_mrwg3 +
"." +
this.ippz_mrwg4 ===
"..."
) {
callback(new Error("请输入网关地址"));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_mrwg1 +
"." +
this.ippz_mrwg2 +
"." +
this.ippz_mrwg3 +
"." +
this.ippz_mrwg4
)
this.ippz_mrwg4 ===
"..."
) {
callback(new Error("请输入有效的网关地址"));
callback(new Error(this.$t('Please') + this.$t('wiredgatewayip.gateway')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_mrwg1 +
"." +
this.ippz_mrwg2 +
"." +
this.ippz_mrwg3 +
"." +
this.ippz_mrwg4
)
) {
callback(new Error(this.$t('Please') + this.$t('valid') + this.$t('wiredgatewayip.gateway')));
} else {
callback();
}
@ -393,28 +405,28 @@ export default {
//DNS
validateDnsSx(rule, value, callback) {
if (
this.ippz_dns_sx1 +
"." +
this.ippz_dns_sx2 +
"." +
this.ippz_dns_sx3 +
"." +
this.ippz_dns_sx4 ===
"..."
) {
callback(new Error("请输入主DNS服务器地址"));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_dns_sx1 +
"." +
this.ippz_dns_sx2 +
"." +
this.ippz_dns_sx3 +
"." +
this.ippz_dns_sx4
)
this.ippz_dns_sx4 ===
"..."
) {
callback(new Error("请输入有效的主DNS服务器地址"));
callback(new Error(this.$t('Please') + this.$t('wiredgatewayip.DNS1')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_dns_sx1 +
"." +
this.ippz_dns_sx2 +
"." +
this.ippz_dns_sx3 +
"." +
this.ippz_dns_sx4
)
) {
callback(new Error(this.$t('Please') + this.$t('valid') + this.$t('wiredgatewayip.DNS1')));
} else {
callback();
}
@ -422,28 +434,28 @@ export default {
//dns
validateDnsBy(rule, value, callback) {
if (
this.ippz_dns_by1 +
"." +
this.ippz_dns_by2 +
"." +
this.ippz_dns_by3 +
"." +
this.ippz_dns_by4 ===
"..."
) {
callback(new Error("请输入备用DNS服务器地址"));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_dns_by1 +
"." +
this.ippz_dns_by2 +
"." +
this.ippz_dns_by3 +
"." +
this.ippz_dns_by4
)
this.ippz_dns_by4 ===
"..."
) {
callback(new Error("请输入有效的备用DNS服务器地址"));
callback(new Error(this.$t('Please') + this.$t('wiredgatewayip.DNS2')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_dns_by1 +
"." +
this.ippz_dns_by2 +
"." +
this.ippz_dns_by3 +
"." +
this.ippz_dns_by4
)
) {
callback(new Error(this.$t('Please') + this.$t('valid') + this.$t('wiredgatewayip.DNS2')));
} else {
callback();
}
@ -458,8 +470,8 @@ export default {
ippz_dns_sx: this.ippz_dns_sx1 + "." + this.ippz_dns_sx2 + "." + this.ippz_dns_sx3 + "." + this.ippz_dns_sx4,
ippz_dns_by: this.ippz_dns_by1 + "." + this.ippz_dns_by2 + "." + this.ippz_dns_by3 + "." + this.ippz_dns_by4,
}
let datas = { ...this.formData, ...obj };
console.log(this.formData);
let datas = {...this.formData, ...obj};
let res = await SaveUserAnswer({
mark: "DB-IotLite_yx",
user_id: this.user_id,
@ -495,9 +507,47 @@ export default {
// user_id: "USER202307301114011710",
});
this.loading = false;
// console.log(res2);
console.log(res2.data.message, '缓存数据');
// alert(JSON.stringify(res2));
//
if (!res2.data.state) {
getQueryAnswer({
mark: "DB-IotLite_yx",
user_id: this.user_id
}).then(res => {
// console.log(JSON.parse(res.data.data.r3),'xxx')
let data = JSON.parse(res.data.data.r3)
this.formData.ippz_mac = data.ippz_mac
this.formData.ippz_wangkou = data.ippz_wangkou;
this.formData.ippz_mrwg = data.ippz_mrwg;
this.formData.ippz_ip = data.ippz_ip;
this.formData.ippz_zwym = data.ippz_zwym;
this.formData.ippz_dns_sx = data.ippz_dns_sx;
this.formData.ippz_dns_by = data.ippz_dns_by;
this.ippz_mrwg1 = data.ippz_mrwg.split(".")[0];
this.ippz_mrwg2 = data.ippz_mrwg.split(".")[1];
this.ippz_mrwg3 = data.ippz_mrwg.split(".")[2];
this.ippz_mrwg4 = data.ippz_mrwg.split(".")[3];
this.ippz_ip1 = data.ippz_ip.split(".")[0];
this.ippz_ip2 = data.ippz_ip.split(".")[1];
this.ippz_ip3 = data.ippz_ip.split(".")[2];
this.ippz_ip4 = data.ippz_ip.split(".")[3];
this.ippz_zwym1 = data.ippz_zwym.split(".")[0];
this.ippz_zwym2 = data.ippz_zwym.split(".")[1];
this.ippz_zwym3 = data.ippz_zwym.split(".")[2];
this.ippz_zwym4 = data.ippz_zwym.split(".")[3];
this.ippz_dns_sx1 = data.ippz_dns_sx.split(".")[0];
this.ippz_dns_sx2 = data.ippz_dns_sx.split(".")[1];
this.ippz_dns_sx3 = data.ippz_dns_sx.split(".")[2];
this.ippz_dns_sx4 = data.ippz_dns_sx.split(".")[3];
this.ippz_dns_by1 = data.ippz_dns_by.split(".")[0];
this.ippz_dns_by2 = data.ippz_dns_by.split(".")[1];
this.ippz_dns_by3 = data.ippz_dns_by.split(".")[2];
this.ippz_dns_by4 = data.ippz_dns_by.split(".")[3];
})
return
}
if (res2.data.data && res2.data.state) {
if (res2.data.data.step) {
this.step = res2.data.data.step;
@ -583,6 +633,7 @@ export default {
},
created() {
this.user_id = window.location.href.split("?")[1];
console.log(this.user_id)
},
mounted() {
@ -590,7 +641,7 @@ export default {
},
directives: {
copy: {
bind(el, { value }) {
bind(el, {value}) {
// $value,
el.$value = value;
el.handler = () => {
@ -621,7 +672,7 @@ export default {
el.addEventListener("click", el.handler);
},
//
componentUpdated(el, { value }) {
componentUpdated(el, {value}) {
el.$value = value;
},
//
@ -635,11 +686,22 @@ export default {
<style lang="less" scoped>
.title_center {
font-size: 18px;
font-size: 14px;
color: red;
position: absolute;
left: 100px;
top: 20px;
left: 190px;
top: 24px;
}
/deep/ .zh{
.el-row {
.el-col-12:last-child {
padding-right: 50px !important;
}
.el-col-12:first-child {
padding-right: 68px !important;
}
}
}
/deep/ .wired,

View File

@ -1,27 +1,27 @@
<template>
<div>
<el-dialog title="网关配置" :visible.sync="dialogVisible" width="70%">
<el-dialog title="详情" :visible.sync="xqFlag" width="30%">
<el-dialog :title="$t('ntconfig.title')" :visible.sync="dialogVisible" width="70%">
<el-dialog :title="$t('ntconfig.title')" :visible.sync="xqFlag" width="30%">
<div class="xqbox">
<p>
<span class="s1">网关编号:</span> <span>{{ rowDate.wgbh }}</span>
<span class="s1">{{ $t('ntconfig.gatewayNumber') }}</span> <span>{{ rowDate.wgbh }}</span>
</p>
<p>
<span class="s1">网关id:</span> <span>{{ rowDate.wgid }}</span>
<span class="s1">{{ $t('ntconfig.gatewayId') }}</span> <span>{{ rowDate.wgid }}</span>
</p>
<p>
<span class="s1">网关类型:</span> <span>{{ rowDate.wglx }}</span>
<span class="s1">{{ $t('ntconfig.gatewayType') }}</span> <span>{{ rowDate.wglx }}</span>
</p>
<p>
<span class="s1">网关名称:</span> <span>{{ rowDate.wgmc }}</span>
<span class="s1">{{ $t('ntconfig.gatewayName') }}</span> <span>{{ rowDate.wgmc }}</span>
</p>
</div>
</el-dialog>
<div class="title">
<div class="left">
<el-button @click="flag = true">新建网关</el-button>
<el-button @click="deleteSelectedRows">删除</el-button>
<el-button @click="flag = true">{{ $t('ntconfig.createGateway') }}</el-button>
<el-button @click="deleteSelectedRows">{{ $t('del') }}</el-button>
</div>
</div>
<el-table
@ -32,50 +32,50 @@
tooltip-effect="dark"
@selection-change="handleSelectionChange"
>
<el-table-column label="序号">
<el-table-column :label="$t('ntconfig.num')">
<template slot-scope="scope">
{{ scope.$index + 1 }}
</template></el-table-column
>
<el-table-column type="selection"> </el-table-column>
<el-table-column prop="wgid" label="网关ID"> </el-table-column>
<el-table-column prop="wgbh" label="网关编号"> </el-table-column>
<el-table-column prop="wgmc" label="网关名称"> </el-table-column>
<el-table-column prop="wglx" label="网关类型"> </el-table-column>
<el-table-column prop="wgid" :label="$t('ntconfig.gatewayId')"> </el-table-column>
<el-table-column prop="wgbh" :label="$t('ntconfig.gatewayNumber')"> </el-table-column>
<el-table-column prop="wgmc" :label="$t('ntconfig.gatewayName')"> </el-table-column>
<el-table-column prop="wglx" :label="$t('ntconfig.gatewayType')"> </el-table-column>
<el-table-column label="修改">
<template slot-scope="scope">
<el-button
type="text"
size="small"
@click="handleDelete(scope.$index, scope.row)"
>删除</el-button
>{{ $t('del') }}</el-button
>
</template></el-table-column
>
<el-table-column label="详细">
<el-table-column :label="$t('ntconfig.details')">
<template slot-scope="scope">
<el-button
type="text"
size="small"
@click="chakan(scope.$index, scope.row)"
>查看</el-button
>{{ $t('ntconfig.check') }}</el-button
>
</template></el-table-column
>
<el-table-column label="参数配置">
<el-table-column :label="$t('ntconfig.parameterConfiguration')">
<template slot-scope="scope">
<el-button
type="text"
size="small"
@click="$router.push('/ntmaintenance?' + scope.row.wgbh)"
>参数配置</el-button
@click="$router.push('/ntmaintenance?' + user_id)"
>{{ $t('ntconfig.parameterConfiguration') }}</el-button
>
</template>
</el-table-column>
</el-table>
</el-dialog>
<el-dialog title="新建网关" :visible.sync="flag">
<el-dialog :title="$t('ntconfig.createGateway')" :visible.sync="flag">
<el-form
:model="ruleForm"
:rules="rules"
@ -84,7 +84,7 @@
class="demo-ruleForm"
:label-position="labelPosition"
>
<el-form-item label="网关类型:" prop="wglx">
<el-form-item :label="$t('ntconfig.gatewayType')" prop="wglx">
<el-col :span="12">
<el-select v-model="ruleForm.wglx">
<el-option label="box" value="box"></el-option>
@ -92,7 +92,7 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="网关编号:" prop="wgbh">
<el-form-item :label="$t('ntconfig.gatewayNumber')" prop="wgbh">
<el-col :span="12">
<el-select v-model="ruleForm.wgbh">
<el-option label="2000808010" value="2000808010"></el-option>
@ -102,7 +102,7 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="网关ID:" prop="wgid">
<el-form-item :label="$t('ntconfig.gatewayId')" prop="wgid">
<el-col :span="12">
<el-select v-model="ruleForm.wgid">
<el-option label="lan-box1" value="lan-box1"></el-option>
@ -112,7 +112,7 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="网关名称:" prop="wgmc">
<el-form-item :label="$t('ntconfig.gatewayName')" prop="wgmc">
<el-col :span="12">
<el-select v-model="ruleForm.wgmc">
<el-option label="有线区网关1" value="有线区网关1"></el-option>
@ -125,14 +125,14 @@
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="saveinfo">保存</el-button>
<el-button @click="flag = false"> </el-button>
<el-button type="primary" @click="saveinfo">{{ $t('save') }}</el-button>
<el-button @click="flag = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import { SaveUserAnswer, GetUserAnswer } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, getQueryAnswer} from "@/api/user";
export default {
data() {
return {
@ -259,9 +259,16 @@ export default {
user_id: this.user_id,
// user_id: "USER202307301109254198",
});
console.log(data.data);
console.log(data.data,'xxxx');
if (data.data && data.state) {
this.wgpz = JSON.parse(data.data.mark_value);
}else{
// getQueryAnswer({
// mark: 'YDPZYM_wgpz',
// user_id: this.user_id
// }).then(res => {
// this.wgpz = JSON.parse(res.data.data.r2);
// })
}
},
//

View File

@ -43,8 +43,8 @@
>
<div class="title">
<div class="left">
<el-button @click="flag = true">新增参数</el-button>
<el-button @click="deleteSelectedRows">删除</el-button>
<el-button @click="flag = true">{{$t('ntmaintenance.createParameter')}}</el-button>
<el-button @click="deleteSelectedRows">{{$t('del')}}</el-button>
</div>
<!-- <div class="right">
<el-input type="search" style="margin-right: 10px"></el-input>
@ -59,33 +59,33 @@
tooltip-effect="dark"
@selection-change="handleSelectionChange"
>
<el-table-column label="序号">
<el-table-column :label="$t('ntmaintenance.num')">
<template slot-scope="scope">
{{ scope.$index + 1 }}
</template></el-table-column
>
<el-table-column type="selection" width="55"> </el-table-column>
<el-table-column prop="sswg" label="网关编号"> </el-table-column>
<el-table-column prop="cskey" label="参数Key"> </el-table-column>
<el-table-column prop="csname" label="参数名称"> </el-table-column>
<el-table-column prop="xsws" label="小数位数"> </el-table-column>
<el-table-column prop="sdz" label="设定值"> </el-table-column>
<el-table-column prop="pcz" label="偏差值"> </el-table-column>
<el-table-column prop="sswg" :label="$t('ntmaintenance.gatewaySNNumber')"> </el-table-column>
<el-table-column prop="cskey" :label="$t('ntmaintenance.parameterKey')"> </el-table-column>
<el-table-column prop="csname" :label="$t('ntmaintenance.parameterName')"> </el-table-column>
<el-table-column prop="xsws" :label="$t('ntmaintenance.decimalPlaces')"> </el-table-column>
<el-table-column prop="sdz" :label="$t('ntmaintenance.setValue')"> </el-table-column>
<el-table-column prop="pcz" :label="$t('ntmaintenance.deviationValue')"> </el-table-column>
<el-table-column label="修改">
<el-table-column :label="$t('edit')">
<template slot-scope="scope">
<el-button
type="text"
size="small"
@click="handleDelete(scope.$index, scope.row)"
>删除</el-button
>{{ $t('del') }}</el-button
>
</template></el-table-column
>
</el-table>
</el-dialog>
<el-dialog title="新增参数" :visible.sync="flag" width="30%">
<el-dialog :title="$t('ntmaintenance.createParameter')" :visible.sync="flag" width="30%">
<el-col :span="12">
<el-form
:model="ruleForm"
@ -95,7 +95,7 @@
class="demo-ruleForm"
:label-position="labelPosition"
>
<el-form-item label="所属网关:" prop="sswg">
<el-form-item :label="$t('ntmaintenance.affiliatedGateway')" prop="sswg">
<el-select v-model="ruleForm.sswg">
<el-option label="lan-box1" value="lan-box1"></el-option>
<el-option label="lan-box2" value="lan-box2"></el-option>
@ -111,7 +111,7 @@
></el-option> -->
</el-select>
</el-form-item>
<el-form-item label="参数名称:" prop="csname">
<el-form-item :label="$t('ntmaintenance.parameterName')" prop="csname">
<el-select v-model="ruleForm.csname">
<el-option label="产量" value="产量"></el-option>
<el-option label="主轴转速" value="主轴转速"></el-option>
@ -122,7 +122,7 @@
</el-select>
</el-form-item>
<el-form-item label="设定值:" prop="sdz">
<el-form-item :label="$t('ntmaintenance.setValue')" prop="sdz">
<el-input v-model="ruleForm.sdz"> </el-input>
</el-form-item>
</el-form>
@ -136,7 +136,7 @@
class="demo-ruleForm"
:label-position="labelPosition"
>
<el-form-item label="参数key:" prop="cskey">
<el-form-item :label="$t('ntmaintenance.parameterKey')" prop="cskey">
<el-select v-model="ruleForm.cskey">
<el-option
label="MachinePamHID910"
@ -164,17 +164,17 @@
></el-option> -->
</el-select>
</el-form-item>
<el-form-item label="小数位数:" prop="xsws">
<el-form-item :label="$t('ntmaintenance.decimalPlaces')" prop="xsws">
<el-input v-model="ruleForm.xsws"> </el-input>
</el-form-item>
<el-form-item label="偏差值:" prop="pcz">
<el-form-item :label="$t('ntmaintenance.deviationValue')" prop="pcz">
<el-input v-model="ruleForm.pcz"> </el-input>
</el-form-item>
</el-form>
</el-col>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="saveinfo">保存</el-button>
<el-button @click="flag = false"> </el-button>
<el-button type="primary" @click="saveinfo">{{$t('save')}}</el-button>
<el-button @click="flag = false">{{$t('cancel')}}</el-button>
</span>
</el-dialog>
</div>
@ -250,7 +250,6 @@ export default {
user_id: `${this.user_id}`,
// user_id: "USER202307301109254198",
});
console.log(data);
if (data.data && data.state) {
this.tableData = JSON.parse(data.data.mark_value);
}
@ -363,6 +362,9 @@ export default {
};
</script>
<style scoped lang="less">
/deep/ .el-dialog__body{
overflow: hidden !important;
}
.title {
display: flex;
justify-content: space-between;

View File

@ -2,25 +2,26 @@
<template>
<div>
<el-dialog
title="IP配置"
:title="$t('ckipconfig.title')"
:visible.sync="dialogVisible"
width="30%"
v-loading="loading"
:close-on-click-modal="false"
>
<p class="txt">本页面涉及排错请检查修改默认值</p>
<p class="txt" v-if="$i18n.locale==='en'">{{$t('ckipconfig.prompt')}}</p>
<div class="ip_setting">
<p class="enTxt" v-if="$i18n.locale==='zh'">{{$t('ckipconfig.prompt')}}</p>
<el-form
:model="ruleForm"
:rules="rules"
ref="ruleForm"
label-width="140px"
:label-width="$i18n.locale==='zh'?'190px':'140px'"
class="demo-ruleForm"
:label-position="labelPosition"
>
<el-row>
<el-col :span="24">
<el-form-item label="IP获取方式" prop="ippz_ip_hqfs">
<el-form-item :label="$t('ckipconfig.ipMethod')" prop="ippz_ip_hqfs">
<el-select v-model="ruleForm.ippz_ip_hqfs" style="width: 200px">
<el-option label="Static IP" value="Static IP"></el-option>
<el-option label="DHCP" value="DHCP"></el-option>
@ -30,7 +31,7 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="DNS获取方式" prop="ippz_dns_hqfs">
<el-form-item :label="$t('ckipconfig.getDNS')" prop="ippz_dns_hqfs">
<el-select
v-model="ruleForm.ippz_dns_hqfs"
style="width: 200px"
@ -43,7 +44,7 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="本机IP" prop="ippz_ip">
<el-form-item :label="$t('ckipconfig.localIP')" prop="ippz_ip">
<el-row>
<el-col :span="5">
<el-input v-model="ippz_ip1"></el-input>
@ -66,7 +67,7 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="子网掩码" prop="ippz_zwym">
<el-form-item :label="$t('ckipconfig.mask')" prop="ippz_zwym">
<el-row>
<el-col :span="5">
<el-input v-model="ippz_zwym1"></el-input>
@ -89,7 +90,7 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="网关地址" prop="ippz_mrwg">
<el-form-item :label="$t('ckipconfig.gateway')" prop="ippz_mrwg">
<el-row>
<el-col :span="5">
<el-input v-model="ippz_mrwg1"></el-input>
@ -112,7 +113,7 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="主DNS服务器" prop="ippz_dns_zy">
<el-form-item :label="$t('ckipconfig.primaryDNS')" prop="ippz_dns_zy">
<el-row>
<el-col :span="5">
<el-input v-model="ippz_dns_zy1"></el-input>
@ -135,7 +136,7 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="备用DNS服务器" prop="ippz_dns_by">
<el-form-item :label="$t('ckipconfig.backupDNS')" prop="ippz_dns_by">
<el-row>
<el-col :span="5">
<el-input v-model="ippz_dns_by1"></el-input>
@ -159,28 +160,28 @@
</el-form>
</div>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">保存</el-button>
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="dialogVisible = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import { SaveUserAnswer, GetUserAnswer } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, getQueryAnswer} from "@/api/user";
export default {
data() {
return {
loading: false,
//
user_id: "",
ippz_ip1: "192",
ippz_ip2: "168",
ippz_ip3: "1",
ippz_ip4: "1",
ippz_zwym1: "255",
ippz_zwym2: "255",
ippz_zwym3: "255",
ippz_zwym4: "0",
ippz_ip1: "",
ippz_ip2: "",
ippz_ip3: "",
ippz_ip4: "",
ippz_zwym1: "",
ippz_zwym2: "",
ippz_zwym3: "",
ippz_zwym4: "",
ippz_mrwg1: "",
ippz_mrwg2: "",
ippz_mrwg3: "",
@ -197,7 +198,7 @@ export default {
labelPosition: "left",
ruleForm: {
ippz_ip_hqfs: "",
ippz_dns_hqfs: "自动获取",
ippz_dns_hqfs: "",
ippz_ip: "",
ippz_zwym: "",
ippz_mrwg: "",
@ -215,10 +216,10 @@ export default {
},
rules: {
ippz_ip_hqfs: [
{ required: true, message: "请选择一项", trigger: "blur" },
{ required: true, message: this.$t('ckipconfig.rules.ipMethod'), trigger: "blur" },
],
ippz_dns_hqfs: [
{ required: true, message: "请选择一项", trigger: "blur" },
{ required: true, message: this.$t('ckipconfig.rules.getDNS'), trigger: "blur" },
],
ippz_ip: [
{
@ -333,6 +334,48 @@ export default {
user_id: this.user_id,
// user_id: "USER202311140204340206",
});
if(!answers.data.state){
getQueryAnswer({
mark: "CKFWQ_yx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
console.log(obj)
if (obj.ippz_ip) {
this.ippz_ip1 = obj.ippz_ip.split(".")[0];
this.ippz_ip2 = obj.ippz_ip.split(".")[1];
this.ippz_ip3 = obj.ippz_ip.split(".")[2];
this.ippz_ip4 = obj.ippz_ip.split(".")[3];
this.ippz_zwym1 = obj.ippz_zwym.split(".")[0];
this.ippz_zwym2 = obj.ippz_zwym.split(".")[1];
this.ippz_zwym3 = obj.ippz_zwym.split(".")[2];
this.ippz_zwym4 = obj.ippz_zwym.split(".")[3];
this.ippz_mrwg1 = obj.ippz_mrwg.split(".")[0];
this.ippz_mrwg2 = obj.ippz_mrwg.split(".")[1];
this.ippz_mrwg3 = obj.ippz_mrwg.split(".")[2];
this.ippz_mrwg4 = obj.ippz_mrwg.split(".")[3];
this.ippz_dns_zy1 = obj.ippz_dns_zy.split(".")[0];
this.ippz_dns_zy2 = obj.ippz_dns_zy.split(".")[1];
this.ippz_dns_zy3 = obj.ippz_dns_zy.split(".")[2];
this.ippz_dns_zy4 = obj.ippz_dns_zy.split(".")[3];
this.ippz_dns_by1 = obj.ippz_dns_by.split(".")[0];
this.ippz_dns_by2 = obj.ippz_dns_by.split(".")[1];
this.ippz_dns_by3 = obj.ippz_dns_by.split(".")[2];
this.ippz_dns_by4 = obj.ippz_dns_by.split(".")[3];
this.ruleForm.ippz_ip_hqfs = obj.ippz_ip_hqfs;
this.ruleForm.ippz_dns_hqfs = obj.ippz_dns_hqfs;
this.ruleForm.dkpz_btl = obj.dkpz_btl;
this.ruleForm.dkpz_sjw = obj.dkpz_sjw;
this.ruleForm.dkpz_jyw = obj.dkpz_jyw;
this.ruleForm.dkpz_tzw = obj.dkpz_tzw;
this.ruleForm.dkpz_lkms = obj.dkpz_lkms;
this.ruleForm.dkpz_dbcd = obj.dkpz_dbcd;
this.ruleForm.dkpz_dbsj = obj.dkpz_dbsj;
this.ruleForm.dkpz_tbbtl = obj.dkpz_tbbtl;
this.ruleForm.dkpz_snckxtb = obj.dkpz_snckxtb;
}
})
}
if (answers.data.data && answers.data.state) {
let obj = JSON.parse(answers.data.data.mark_value);
console.log(obj.ippz_dns_hqfs);
@ -398,7 +441,7 @@ export default {
this.ippz_ip4 ===
""
) {
callback(new Error("请输入IP地址"));
callback(new Error(this.$t('ckipconfig.rules.localIP')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.ippz_ip1 +
@ -410,7 +453,7 @@ export default {
this.ippz_ip4
)
) {
callback(new Error("请输入有效的IP地址"));
callback(new Error(this.$t('ckipconfig.rules.localIP1')));
} else {
callback();
}
@ -427,7 +470,7 @@ export default {
this.ippz_zwym4 ===
""
) {
callback(new Error("请输入子网掩码"));
callback(new Error(this.$t('ckipconfig.rules.mask')));
} else if (
!/^(\d{1,2}|1\d{2}|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d{2}|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d{2}|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d{2}|2[0-4]\d|25[0-5])$/.test(
this.ippz_zwym1 +
@ -439,7 +482,7 @@ export default {
this.ippz_zwym4
)
) {
callback(new Error("请输入有效的子网掩码"));
callback(new Error(this.$t('ckipconfig.rules.mask1')));
} else {
callback();
}
@ -456,7 +499,7 @@ export default {
this.ippz_mrwg4 ===
""
) {
callback(new Error("请输入网关地址"));
callback(new Error(this.$t('ckipconfig.rules.gateway')));
} else if (
!/^(\d{1,3}\.){3}\d{1,3}$/.test(
this.ippz_mrwg1 +
@ -468,7 +511,7 @@ export default {
this.ippz_mrwg4
)
) {
callback(new Error("请输入有效的网关地址"));
callback(new Error(this.$t('ckipconfig.rules.gateway1')));
} else {
callback();
}
@ -485,7 +528,7 @@ export default {
this.ippz_dns_zy4 ===
""
) {
callback(new Error("请输入主DNS服务器地址"));
callback(new Error(this.$t('ckipconfig.rules.primaryDNS')));
} else if (
!this.isValidDNSAddress(
this.ippz_dns_zy1 +
@ -497,7 +540,7 @@ export default {
this.ippz_dns_zy4
)
) {
callback(new Error("请输入有效的主DNS服务器地址"));
callback(new Error(this.$t('ckipconfig.rules.primaryDNS1')));
} else {
callback();
}
@ -524,7 +567,7 @@ export default {
this.ippz_dns_by4 ===
""
) {
callback(new Error("请输入备用DNS服务器地址"));
callback(new Error(this.$t('ckipconfig.rules.backupDNS')));
} else if (
!this.isValidDNSAddress(
this.ippz_dns_by1 +
@ -536,7 +579,7 @@ export default {
this.ippz_dns_by4
)
) {
callback(new Error("请输入有效的备用DNS服务器地址"));
callback(new Error(this.$t('ckipconfig.rules.backupDNS1')));
} else {
callback();
}
@ -590,4 +633,9 @@ export default {
font-size: 18px;
color: red;
}
.enTxt{
font-size: 18px;
color: red;
margin-bottom: 20px;
}
</style>

View File

@ -1,60 +1,60 @@
<template>
<div>
<el-dialog
title="网口设置"
:title="$t('cknet.title')"
:visible.sync="dialogVisible"
width="30%"
v-loading="loading"
>
<h3>以太网功能</h3>
<h3>{{ $t('cknet.Ethernet') }}</h3>
<el-divider></el-divider>
<el-form
:model="ruleForm"
:rules="rules"
ref="ruleForm"
label-width="150px"
label-width="230px"
class="demo-ruleForm"
:label-position="labelPosition"
>
<el-form-item label="开启网口:" prop="ytwgn_kqwk">
<el-select v-model="ruleForm.ytwgn_kqwk">
<el-option label="开启" value="开启"></el-option>
<el-option label="关闭" value="关闭"></el-option>
<el-form-item :label="$t('cknet.openNetworkPort')" prop="ytwgn_kqwk">
<el-select v-model="ruleForm.ytwgn_kqwk" :placeholder="$t('select')">
<el-option :label="$t('open')" :value="$t('open')"></el-option>
<el-option :label="$t('close')" value="$t('close')"></el-option>
</el-select>
</el-form-item>
<el-form-item label="网口工作方式:" prop="ytwgn_wkgzfs">
<el-select v-model="ruleForm.ytwgn_wkgzfs">
<el-option label="LAN口" value="LAN口"></el-option>
<el-option label="WAN口" value="WAN口"></el-option>
<el-form-item :label="$t('cknet.workingMode')" prop="ytwgn_wkgzfs">
<el-select v-model="ruleForm.ytwgn_wkgzfs" :placeholder="$t('select')">
<el-option :label="$t('lan')" :value="$t('lan')"></el-option>
<el-option :label="$t('wan')" :value="$t('wan')"></el-option>
</el-select>
</el-form-item>
</el-form>
<h3>网口模式设置</h3>
<h3>{{ $t('cknet.networkModeSetting') }}</h3>
<el-divider></el-divider>
<el-form
:model="ruleForm"
:rules="rules"
ref="ruleForm"
label-width="150px"
label-width="170px"
class="demo-ruleForm"
:label-position="labelPosition"
>
<el-form-item label="网口模式:" prop="wkmssz_wkms">
<el-select v-model="ruleForm.wkmssz_wkms">
<el-form-item :label="$t('cknet.networkMode')" prop="wkmssz_wkms">
<el-select v-model="ruleForm.wkmssz_wkms" :placeholder="$t('select')">
<el-option label="n" value="n"></el-option>
<el-option label="z" value="z"></el-option>
</el-select>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">保存</el-button>
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="dialogVisible = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import { SaveUserAnswer, GetUserAnswer } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, getQueryAnswer} from "@/api/user";
export default {
data() {
return {
@ -83,12 +83,13 @@ export default {
wxpz_jmsf: "",
wxpz_mm: "",
},
rules: {
ytwgn_kqwk: [{ required: true, trigger: "change", message: "必填项" }],
ytwgn_kqwk: [{ required: true, trigger: "blur", message: this.$t('required') }],
ytwgn_wkgzfs: [
{ required: true, trigger: "change", message: "必填项" },
{ required: true, trigger: "blur", message: this.$t('required') },
],
wkmssz_wkms: [{ required: true, trigger: "change", message: "必填项" }],
wkmssz_wkms: [{ required: true, trigger: "blur", message: this.$t('required') }],
},
};
},
@ -101,7 +102,6 @@ export default {
let res = await SaveUserAnswer({
mark: "CKFWQ_wx",
user_id: this.user_id,
// user_id: "USER202307301109254198",
mark_value: JSON.stringify(this.ruleForm),
});
console.log(res);
@ -142,6 +142,32 @@ export default {
this.ruleForm.wxpz_jmms = obj.wxpz_jmms;
this.ruleForm.wxpz_jmsf = obj.wxpz_jmsf;
this.ruleForm.wxpz_mm = obj.wxpz_mm;
}else{
getQueryAnswer({
mark: "CKFWQ_wx",
user_id: this.user_id
}).then(res => {
var obj = JSON.parse(res.data.data.r3);
this.ruleForm.ytwgn_kqwk = obj.ytwgn_kqwk;
this.ruleForm.ytwgn_wkgzfs = obj.ytwgn_wkgzfs;
this.ruleForm.wkmssz_wkms = obj.wkmssz_wkms;
this.ruleForm.ckcssz_btl = obj.ckcssz_btl;
this.ruleForm.ckcssz_jyw = obj.ckcssz_jyw;
this.ruleForm.ckcssz_lk = obj.ckcssz_lk;
this.ruleForm.ckcssz_zdybtl = obj.ckcssz_zdybtl;
this.ruleForm.ckcssz_sjw = obj.ckcssz_sjw;
this.ruleForm.ckcssz_tzw = obj.ckcssz_tzw;
this.ruleForm.ckcssz_485 = obj.ckcssz_485;
this.ruleForm.qtsz_ckzdcz = obj.qtsz_ckzdcz;
this.ruleForm.qtsz_zcblx = obj.qtsz_zcblx;
this.ruleForm.qtsz_zdyxtb = obj.qtsz_zdyxtb;
this.ruleForm.qtsz_tjzffgn = obj.qtsz_tjzffgn;
this.ruleForm.wxpz_gzms = obj.wxpz_gzms;
this.ruleForm.wxpz_wlmc = obj.wxpz_wlmc;
this.ruleForm.wxpz_jmms = obj.wxpz_jmms;
this.ruleForm.wxpz_jmsf = obj.wxpz_jmsf;
this.ruleForm.wxpz_mm = obj.wxpz_mm;
})
}
},
submitForm(formName) {

View File

@ -1,6 +1,6 @@
<template>
<div style="display: none" :style="{ display: 'block' }">
<el-dialog title="网络管理" :visible.sync="dialogVisible" width="40%">
<el-dialog :title="$t('networkmanagement.management')" :visible.sync="dialogVisible" width="40%">
<p
style="
color: red;
@ -9,18 +9,25 @@
left: 110px;
font-size: 18px;
"
v-if="$i18n.locale==='en'"
>
本页面涉及排错请检查修改默认值
{{ $t('networkmanagement.prompt') }}
</p>
<h3 style="color: #fff">内网网卡</h3>
<p
style="color: red;margin-bottom: 20px;font-size: 18px;"
v-if="$i18n.locale==='zh'"
>
{{ $t('networkmanagement.prompt') }}
</p>
<h3 style="color: #fff">{{ $t('networkmanagement.internalNetworkCard') }}</h3>
<el-divider></el-divider>
<el-table :data="tableData" style="width: 100%" border>
<el-table-column prop="wlgl_nw_name" label="网卡名称">
<el-table-column prop="wlgl_nw_name" :label="$t('networkmanagement.networkCardName')">
<template slot-scope="scope">
<el-select v-model="scope.row.wlgl_nw_name" placeholder="">
<el-option
v-for="item in options1"
:key="item"
v-for="(item,index) in options1"
:key="item.label"
:label="item.label"
:value="item.value"
>
@ -28,7 +35,7 @@
</el-select>
</template>
</el-table-column>
<el-table-column prop="wlgl_nw_ip" label="IPV4地址">
<el-table-column prop="wlgl_nw_ip" :label="$t('networkmanagement.IPV4Address')">
<template slot-scope="scope">
<div class="net_setting">
<el-row>
@ -51,7 +58,7 @@
</div>
</template>
</el-table-column>
<el-table-column prop="wlgl_nw_zwym" label="IPV4掩码">
<el-table-column prop="wlgl_nw_zwym" :label="$t('networkmanagement.IPV4Mask')">
<template slot-scope="scope">
<div class="net_setting">
<el-row>
@ -77,12 +84,12 @@
<h3 style="color: #fff">外网网卡</h3>
<el-divider></el-divider>
<el-table :data="tableData1" style="width: 100%" border>
<el-table-column prop="wlgl_ww_name" label="网卡名称">
<el-table-column prop="wlgl_ww_name" :label="$t('networkmanagement.networkCardName')">
<template slot-scope="scope">
<el-select v-model="scope.row.wlgl_ww_name" placeholder="">
<el-option
v-for="item in options2"
:key="item"
v-for="(item,index) in options2"
:key="item.label"
:label="item.label"
:value="item.value"
>
@ -90,7 +97,7 @@
</el-select>
</template>
</el-table-column>
<el-table-column prop="wlgl_ww_ip" label="IPV4地址">
<el-table-column prop="wlgl_ww_ip" :label="$t('networkmanagement.IPV4Address')">
<template slot-scope="scope">
<div class="net_setting">
<el-row>
@ -113,7 +120,7 @@
</div>
</template>
</el-table-column>
<el-table-column prop="wlgl_ww_zwym" label="IPV4掩码">
<el-table-column prop="wlgl_ww_zwym" :label="$t('networkmanagement.IPV4Mask')">
<template slot-scope="scope">
<div class="net_setting">
<el-row>
@ -138,27 +145,27 @@
</el-table-column>
</el-table>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">保存</el-button>
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="save">{{$t('save')}}</el-button>
<el-button @click="dialogVisible = false">{{$t('cancel')}}</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import { SaveUserAnswer, GetUserAnswer } from "../api/user";
import {SaveUserAnswer, GetUserAnswer, getQueryAnswer} from "../api/user";
export default {
data() {
return {
user_id: "",
type: "",
wlgl_nw_ip1: "192",
wlgl_nw_ip2: "168",
wlgl_nw_ip3: "1",
wlgl_nw_ip4: "1",
wlgl_nw_zwym1: "255",
wlgl_nw_zwym2: "255",
wlgl_nw_zwym3: "255",
wlgl_nw_zwym4: "0",
wlgl_nw_ip1: "",
wlgl_nw_ip2: "",
wlgl_nw_ip3: "",
wlgl_nw_ip4: "",
wlgl_nw_zwym1: "",
wlgl_nw_zwym2: "",
wlgl_nw_zwym3: "",
wlgl_nw_zwym4: "",
wlgl_ww_ip1: "",
wlgl_ww_ip2: "",
wlgl_ww_ip3: "",
@ -298,7 +305,6 @@ export default {
cmdlist_ms: this.cmdlist_ms,
cmdlist_dz: this.cmdlist_dz,
};
console.log(obj);
let { data } = await SaveUserAnswer({
mark: this.$store.state.type,
user_id: this.user_id,
@ -326,25 +332,35 @@ export default {
// console.log(data.data.mark_value);
if (data.state && data.data && data.data.mark_value) {
let res = JSON.parse(data.data.mark_value);
console.log(res);
console.log(res)
this.tableData[0].wlgl_nw_name = res.wlgl_nw_name;
this.wlgl_nw_ip1 = res.wlgl_nw_ip.split(".")[0];
this.wlgl_nw_ip2 = res.wlgl_nw_ip.split(".")[1];
this.wlgl_nw_ip3 = res.wlgl_nw_ip.split(".")[2];
this.wlgl_nw_ip4 = res.wlgl_nw_ip.split(".")[3];
if(res.wlgl_nw_ip&&res.wlgl_nw_ip!==''){
this.wlgl_nw_ip1 = res.wlgl_nw_ip.split(".")[0];
this.wlgl_nw_ip2 = res.wlgl_nw_ip.split(".")[1];
this.wlgl_nw_ip3 = res.wlgl_nw_ip.split(".")[2];
this.wlgl_nw_ip4 = res.wlgl_nw_ip.split(".")[3];
}
if(res.wlgl_nw_zwym&&res.wlgl_nw_zwym!==''){
this.wlgl_nw_zwym1 = res.wlgl_nw_zwym.split(".")[0];
this.wlgl_nw_zwym2 = res.wlgl_nw_zwym.split(".")[1];
this.wlgl_nw_zwym3 = res.wlgl_nw_zwym.split(".")[2];
this.wlgl_nw_zwym4 = res.wlgl_nw_zwym.split(".")[3];
}
this.tableData1[0].wlgl_ww_name = res.wlgl_ww_name;
if(res.wlgl_ww_ip&&res.wlgl_ww_ip!==''){
this.wlgl_ww_ip1 = res.wlgl_ww_ip.split(".")[0];
this.wlgl_ww_ip2 = res.wlgl_ww_ip.split(".")[1];
this.wlgl_ww_ip3 = res.wlgl_ww_ip.split(".")[2];
this.wlgl_ww_ip4 = res.wlgl_ww_ip.split(".")[3];
this.wlgl_ww_zwym1 = res.wlgl_ww_zwym.split(".")[0];
this.wlgl_ww_zwym2 = res.wlgl_ww_zwym.split(".")[1];
this.wlgl_ww_zwym3 = res.wlgl_ww_zwym.split(".")[2];
this.wlgl_ww_zwym4 = res.wlgl_ww_zwym.split(".")[3];
}
if(res.wlgl_ww_zwym&&res.wlgl_ww_zwym!==''){
this.wlgl_ww_zwym1 = res.wlgl_ww_zwym.split(".")[0];
this.wlgl_ww_zwym2 = res.wlgl_ww_zwym.split(".")[1];
this.wlgl_ww_zwym3 = res.wlgl_ww_zwym.split(".")[2];
this.wlgl_ww_zwym4 = res.wlgl_ww_zwym.split(".")[3];
}
this.dxgl = res.dxgl;
this.clgl_name = res.clgl_name;
this.clgl_xy = res.clgl_xy;
@ -366,6 +382,61 @@ export default {
this.cmdlist_dzcd = res.cmdlist_dzcd;
this.cmdlist_ms = res.cmdlist_ms;
this.cmdlist_dz = res.cmdlist_dz;
}else{
getQueryAnswer({
mark: this.$store.state.type,
user_id: this.user_id
}).then(data => {
let res = JSON.parse(data.data.data.r3);
this.tableData[0].wlgl_nw_name = res.wlgl_nw_name;
if(res.wlgl_nw_ip&&res.wlgl_nw_ip!==''){
this.wlgl_nw_ip1 = res.wlgl_nw_ip.split(".")[0];
this.wlgl_nw_ip2 = res.wlgl_nw_ip.split(".")[1];
this.wlgl_nw_ip3 = res.wlgl_nw_ip.split(".")[2];
this.wlgl_nw_ip4 = res.wlgl_nw_ip.split(".")[3];
}
if(res.wlgl_nw_zwym&&res.wlgl_nw_zwym!==''){
this.wlgl_nw_zwym1 = res.wlgl_nw_zwym.split(".")[0];
this.wlgl_nw_zwym2 = res.wlgl_nw_zwym.split(".")[1];
this.wlgl_nw_zwym3 = res.wlgl_nw_zwym.split(".")[2];
this.wlgl_nw_zwym4 = res.wlgl_nw_zwym.split(".")[3];
}
this.tableData1[0].wlgl_ww_name = res.wlgl_ww_name;
if(res.wlgl_ww_ip&&res.wlgl_ww_ip!==''){
this.wlgl_ww_ip1 = res.wlgl_ww_ip.split(".")[0];
this.wlgl_ww_ip2 = res.wlgl_ww_ip.split(".")[1];
this.wlgl_ww_ip3 = res.wlgl_ww_ip.split(".")[2];
this.wlgl_ww_ip4 = res.wlgl_ww_ip.split(".")[3];
}
if(res.wlgl_ww_zwym&&res.wlgl_ww_zwym!==''){
this.wlgl_ww_zwym1 = res.wlgl_ww_zwym.split(".")[0];
this.wlgl_ww_zwym2 = res.wlgl_ww_zwym.split(".")[1];
this.wlgl_ww_zwym3 = res.wlgl_ww_zwym.split(".")[2];
this.wlgl_ww_zwym4 = res.wlgl_ww_zwym.split(".")[3];
}
this.dxgl = res.dxgl;
this.clgl_name = res.clgl_name;
this.clgl_xy = res.clgl_xy;
this.clgl_gzms = res.clgl_gzms;
this.clgl_ydx = res.clgl_ydx;
this.clgl_ydk = res.clgl_ydk;
this.clgl_mddx = res.clgl_mddx;
this.clgl_mddk = res.clgl_mddk;
this.clgl_rkwg = res.clgl_rkwg;
this.clgl_rkwk = res.clgl_rkwk;
this.clgl_rkip = res.clgl_rkip;
this.clgl_ckwg = res.clgl_ckwg;
this.clgl_ckwk = res.clgl_ckwk;
this.clgl_ckip = res.clgl_ckip;
this.clgl_wdyml = res.clgl_wdyml;
this.cmdlist_ml = res.cmdlist_ml;
this.cmdlist_sbid = res.cmdlist_sbid;
this.cmdlist_qsdz = res.cmdlist_qsdz;
this.cmdlist_dzcd = res.cmdlist_dzcd;
this.cmdlist_ms = res.cmdlist_ms;
this.cmdlist_dz = res.cmdlist_dz;
})
}
},
},

View File

@ -1,22 +1,22 @@
<template>
<div>
<el-dialog title="对象管理" :visible.sync="dialogVisible" width="80%">
<el-dialog :title="$t('objmanagement.title')" :visible.sync="dialogVisible" width="80%">
<div class="title">
<el-button style="margin-bottom: 10px" @click="addObj"
>新增对象</el-button
>{{ $t('objmanagement.createObject') }}</el-button
>
<p style="font-size: 18px">只能添加两条数据</p>
</div>
<el-table :data="dxgl" style="width: 100%" border>
<el-table-column label="序号">
<el-table-column :label="$t('objmanagement.num')">
<template slot-scope="scope">
{{ scope.$index + 1 }}
</template>
</el-table-column>
<el-table-column prop="dx_name" label="对象名称"> </el-table-column>
<el-table-column prop="ip" label="IP地址信息"> </el-table-column>
<el-table-column fixed="right" label="操作" width="100">
<el-table-column prop="dx_name" :label="$t('objmanagement.objectName')"> </el-table-column>
<el-table-column prop="ip" :label="$t('objmanagement.IPAddress')"> </el-table-column>
<el-table-column fixed="right" :label="$t('objmanagement.Operation')" width="100">
<template slot-scope="scope">
<!-- <el-button @click="handleClick(scope.row)" type="text" size="small"
>编辑</el-button
@ -25,14 +25,14 @@
type="text"
size="small"
@click="deleteRow(scope.$index, scope.row)"
>删除</el-button
>{{ $t('del') }}</el-button
>
</template>
</el-table-column>
</el-table>
</el-dialog>
<el-dialog title="新增对象" :visible.sync="dialogVisible1" width="30%">
<el-dialog :title="$t('objmanagement.title')" :visible.sync="dialogVisible1" width="30%">
<div class="ip_address">
<el-form
:model="ruleForm"
@ -42,7 +42,7 @@
class="demo-ruleForm"
:label-position="labelPosition"
>
<el-form-item label="IP类型:" prop="iplx">
<el-form-item :label="$t('objmanagement.ipType')" prop="iplx">
<el-col :span="10">
<el-select v-model="ruleForm.iplx" style="width: 200px">
<el-option label="IPV4" value="IPV4"></el-option>
@ -51,7 +51,7 @@
</el-col>
</el-form-item>
<el-form-item label="对象名称:" prop="dxmc">
<el-form-item :label="$t('objmanagement.IPAddress')" prop="dxmc">
<el-col :span="10">
<el-select v-model="ruleForm.dxmc" style="width: 200px">
<el-option
@ -89,14 +89,14 @@
</el-form>
</div>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">保存</el-button>
<el-button @click="dialogVisible1 = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="dialogVisible1 = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import { SaveUserAnswer, GetUserAnswer } from "../api/user";
import {SaveUserAnswer, GetUserAnswer, getQueryAnswer} from "../api/user";
export default {
data() {
return {
@ -162,6 +162,7 @@ export default {
},
mounted() {
this.dialogVisible = true;
let str = window.location.href.split("?")[1];
this.user_id = decodeURIComponent(str).split("|")[0];
let type = decodeURIComponent(str).split("|")[1];
@ -242,6 +243,7 @@ export default {
cmdlist_ms: this.cmdlist_ms,
cmdlist_dz: this.cmdlist_dz,
};
let { data } = await SaveUserAnswer({
mark: this.$store.state.type,
user_id: this.user_id,
@ -251,7 +253,6 @@ export default {
});
if (data.state) {
// console.log(data.data.mark_value);
this.dxgl.push({
dx_name: this.ruleForm.dxmc,
iplx: this.ruleForm.iplx,
@ -281,9 +282,8 @@ export default {
// user_id: "USER202307301109254198",
});
if (data.state && data.data) {
console.log(JSON.parse(data.data.mark_value).dxgl);
let res = JSON.parse(data.data.mark_value);
if (res.dxgl) {
this.wlgl_nw_name = res.wlgl_nw_name;
this.wlgl_nw_ip = res.wlgl_nw_ip;
this.wlgl_nw_zwym = res.wlgl_nw_zwym;
@ -311,7 +311,40 @@ export default {
this.cmdlist_dzcd = res.cmdlist_dzcd;
this.cmdlist_ms = res.cmdlist_ms;
this.cmdlist_dz = res.cmdlist_dz;
}
}else{
getQueryAnswer({
mark: this.$store.state.type,
user_id: this.user_id
}).then(data => {
let res = JSON.parse(data.data.data.r3);
this.wlgl_nw_name = res.wlgl_nw_name;
this.wlgl_nw_ip = res.wlgl_nw_ip;
this.wlgl_nw_zwym = res.wlgl_nw_zwym;
this.wlgl_ww_name = res.wlgl_ww_name;
this.wlgl_ww_ip = res.wlgl_ww_ip;
this.wlgl_ww_zwym = res.wlgl_ww_zwym;
this.dxgl = res.dxgl;
this.clgl_name = res.clgl_name;
this.clgl_xy = res.clgl_xy;
this.clgl_gzms = res.clgl_gzms;
this.clgl_ydx = res.clgl_ydx;
this.clgl_ydk = res.clgl_ydk;
this.clgl_mddx = res.clgl_mddx;
this.clgl_mddk = res.clgl_mddk;
this.clgl_rkwg = res.clgl_rkwg;
this.clgl_rkwk = res.clgl_rkwk;
this.clgl_rkip = res.clgl_rkip;
this.clgl_ckwg = res.clgl_ckwg;
this.clgl_ckwk = res.clgl_ckwk;
this.clgl_ckip = res.clgl_ckip;
this.clgl_wdyml = res.clgl_wdyml;
this.cmdlist_ml = res.cmdlist_ml;
this.cmdlist_sbid = res.cmdlist_sbid;
this.cmdlist_qsdz = res.cmdlist_qsdz;
this.cmdlist_dzcd = res.cmdlist_dzcd;
this.cmdlist_ms = res.cmdlist_ms;
this.cmdlist_dz = res.cmdlist_dz;
})
}
},
//
@ -325,14 +358,12 @@ export default {
wlgl_ww_name: this.wlgl_ww_name,
wlgl_ww_ip: this.wlgl_ww_ip,
wlgl_ww_zwym: this.wlgl_ww_zwym,
dxgl: this.dxgl,
clgl_name: this.clgl_name,
clgl_xy: this.clgl_xy,
clgl_gzms: this.clgl_gzms,
clgl_ydx: this.clgl_ydk,
clgl_ydk: this.clgl_ydk,
clgl_mddx: this.clgl_mddk,
clgl_mddk: this.clgl_mddk,
clgl_rkwg: this.clgl_rkwg,
@ -342,7 +373,6 @@ export default {
clgl_ckwk: this.clgl_ckwk,
clgl_ckip: this.clgl_ckip,
clgl_wdyml: this.clgl_wdyml,
cmdlist_ml: this.cmdlist_ml,
cmdlist_sbid: this.cmdlist_sbid,
cmdlist_qsdz: this.cmdlist_qsdz,
@ -368,7 +398,10 @@ export default {
}
},
addObj() {
if (this.dxgl.length == 2) {
if(this.dxgl===null){
this.dxgl = []
}
if (this.dxgl.length === 2) {
return;
}
this.dialogVisible1 = true;

View File

@ -1,25 +1,25 @@
<template>
<div>
<el-dialog
title="策略管理"
:title="$t('strategyManagement.title')"
:visible.sync="dialogVisible"
width="80%"
v-loading="loading"
>
<div class="title">
<el-button style="margin-bottom: 10px" @click="addPolicy"
>新增策略</el-button
>{{ $t('strategyManagement.createStrategy') }}</el-button
>
<p v-if="tableData.length >= 2">只能添加两条数据</p>
</div>
<el-table :data="tableData" style="width: 100%" border>
<el-table-column label="序号">
<el-table-column :label="$t('strategyManagement.num')">
<template slot-scope="scope">
{{ scope.$index + 1 }}
</template>
</el-table-column>
<el-table-column prop="clgl_name" label="名称"> </el-table-column>
<el-table-column prop="clgl_name" :label="$t('strategyManagement.name')"> </el-table-column>
<!-- <el-table-column prop="clgl_qidong" label="是否启动">
<template slot-scope="scope">
<el-switch
@ -27,19 +27,19 @@
@change="handleSwitchChange(scope.row)"
></el-switch> </template
></el-table-column> -->
<el-table-column prop="clgl_xy" label="协议"> </el-table-column>
<el-table-column prop="clgl_gzms" label="工作模式"> </el-table-column>
<el-table-column prop="clgl_ydx" label="源对象"> </el-table-column>
<el-table-column prop="clgl_ydk" label="源端口"> </el-table-column>
<el-table-column prop="clgl_rkwk" label="入口网卡"> </el-table-column>
<el-table-column prop="clgl_rkip" label="入口IP"> </el-table-column>
<el-table-column prop="clgl_rkwg" label="入口网关"> </el-table-column>
<el-table-column prop="clgl_ckwk" label="出口网卡"> </el-table-column>
<el-table-column prop="clgl_ckip" label="出口IP"> </el-table-column>
<el-table-column prop="clgl_ckwg" label="出口网关"> </el-table-column>
<el-table-column prop="clgl_mddx" label="目的对象"> </el-table-column>
<el-table-column prop="clgl_mddk" label="目的端口"> </el-table-column>
<el-table-column fixed="right" label="操作" width="100">
<el-table-column prop="clgl_xy" :label="$t('strategyManagement.Protocol')"> </el-table-column>
<el-table-column prop="clgl_gzms" :label="$t('strategyManagement.workingMode')"> </el-table-column>
<el-table-column prop="clgl_ydx" :label="$t('strategyManagement.sourceObject')"> </el-table-column>
<el-table-column prop="clgl_ydk" :label="$t('strategyManagement.sourcePort')"> </el-table-column>
<el-table-column prop="clgl_rkwk" :label="$t('strategyManagement.entranceNetworkCard')"> </el-table-column>
<el-table-column prop="clgl_rkip" :label="$t('strategyManagement.entranceIP')"> </el-table-column>
<el-table-column prop="clgl_rkwg" :label="$t('strategyManagement.entranceGateway')"> </el-table-column>
<el-table-column prop="clgl_ckwk" :label="$t('strategyManagement.exportNetworkCard')"> </el-table-column>
<el-table-column prop="clgl_ckip" :label="$t('strategyManagement.exportIP')"> </el-table-column>
<el-table-column prop="clgl_ckwg" :label="$t('strategyManagement.exportGateway')"> </el-table-column>
<el-table-column prop="clgl_mddx" :label="$t('strategyManagement.targetObject')"> </el-table-column>
<el-table-column prop="clgl_mddk" :label="$t('strategyManagement.targetPort')"> </el-table-column>
<el-table-column fixed="right" :label="$t('strategyManagement.Operation')" width="100">
<template slot-scope="scope">
<!-- <el-button @click="handleClick(scope.row)" type="text" size="small"
>编辑</el-button
@ -48,7 +48,7 @@
type="text"
size="small"
@click="del(scope.$index, scope.row)"
>删除</el-button
>{{ $t('del') }}</el-button
>
</template>
</el-table-column>
@ -57,7 +57,7 @@
</div>
</template>
<script>
import { GetUserAnswer, SaveUserAnswer } from "../api/user";
import {getQueryAnswer, GetUserAnswer, SaveUserAnswer} from "../api/user";
export default {
data() {
return {
@ -264,13 +264,14 @@ export default {
},
value: "",
flag: false,
type:''
};
},
mounted() {
let str = window.location.href.split("?")[1];
this.user_id = decodeURIComponent(str).split("|")[0];
let type = decodeURIComponent(str).split("|")[1];
if (type == 1) {
this.type = decodeURIComponent(str).split("|")[1];
if (this.type == 1) {
this.$store.commit("setType", "GYWZ_yx");
} else {
this.$store.commit("setType", "GYWZ_wx");
@ -281,10 +282,10 @@ export default {
},
methods: {
addPolicy() {
this.$router.push({
name: "addstrategy",
query: { id: this.user_id },
});
this.$router.push(
"/addstrategy?" + this.user_id + "|" + this.type,
// query: ,
);
},
async del(index, a) {
this.tableData = [];
@ -342,6 +343,59 @@ export default {
// user_id: "USER202307301109254198",
});
this.loading = false;
if(!data.state){
getQueryAnswer({
mark: this.$store.state.type,
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
(this.ruleForm1.clgl_xy = obj.clgl_xy),
(this.ruleForm1.clgl_gzms = obj.clgl_gzms),
(this.ruleForm1.clgl_ydx = obj.clgl_ydx),
(this.ruleForm1.clgl_ydk = obj.clgl_ydk),
(this.ruleForm1.clgl_rkwk = obj.clgl_rkwk),
(this.ruleForm1.clgl_rkip = obj.clgl_rkip),
(this.ruleForm1.clgl_rkwg = obj.clgl_rkwg),
(this.ruleForm1.clgl_ckwk = obj.clgl_ckwk),
(this.ruleForm1.clgl_ckip = obj.clgl_ckip),
(this.ruleForm1.clgl_ckwg = obj.clgl_ckwg),
(this.ruleForm1.clgl_mddx = obj.clgl_mddx),
(this.ruleForm1.clgl_mddk = obj.clgl_mddk),
(this.dxgl = obj.dxgl),
(this.wlgl_nw_name = obj.wlgl_nw_name),
(this.wlgl_nw_ip = obj.wlgl_nw_ip),
(this.wlgl_nw_zwym = obj.wlgl_nw_zwym),
(this.wlgl_ww_name = obj.wlgl_ww_name),
(this.wlgl_ww_ip = obj.wlgl_ww_ip),
(this.wlgl_ww_zwym = obj.wlgl_ww_zwym),
(this.cmdlist_ml = obj.cmdlist_ml),
(this.cmdlist_sbid = obj.cmdlist_sbid),
(this.cmdlist_qsdz = obj.cmdlist_qsdz),
(this.cmdlist_dzcd = obj.cmdlist_dzcd),
(this.cmdlist_ms = obj.cmdlist_ms),
(this.cmdlist_dz = obj.cmdlist_dz);
if (obj.hasOwnProperty("clgl_name") && obj.clgl_name) {
this.tableData = [
{
clgl_name: obj.clgl_name,
cmdlist_qsdz: obj.cmdlist_qsdz,
clgl_xy: obj.clgl_xy,
clgl_gzms: obj.clgl_gzms,
clgl_ydx: obj.clgl_ydx,
clgl_ydk: obj.clgl_ydk,
clgl_rkwk: obj.clgl_rkwk,
clgl_rkip: obj.clgl_rkip,
clgl_rkwg: obj.clgl_rkwg,
clgl_ckwk: obj.clgl_ckwk,
clgl_ckip: obj.clgl_ckip,
clgl_ckwg: obj.clgl_ckwg,
clgl_mddx: obj.clgl_mddx,
clgl_mddk: obj.clgl_mddk,
},
];
}
})
}
if (data.data && data.state) {
let obj = JSON.parse(data.data.mark_value);
(this.ruleForm1.clgl_xy = obj.clgl_xy),

View File

@ -11,7 +11,7 @@
</div>
<div class="port_content">
<el-dialog title="端口配置" :visible.sync="dialogVisible" width="30%">
<el-dialog :title="$t('ckportconfig.title')" :visible.sync="dialogVisible" width="30%">
<el-form
:model="ruleForm"
:rules="rules"
@ -20,7 +20,7 @@
class="demo-ruleForm"
:label-position="labelPosition"
>
<el-form-item label="波特率(bps)" prop="dkpz_btl">
<el-form-item :label="$t('ckportconfig.baudRate')" prop="dkpz_btl">
<el-col :span="15">
<el-select v-model="ruleForm.dkpz_btl">
<el-option label="9600" value="9600"></el-option>
@ -38,7 +38,7 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="数据位(bit)" prop="dkpz_sjw">
<el-form-item :label="$t('ckportconfig.dataBits')" prop="dkpz_sjw">
<el-col :span="15">
<el-select v-model="ruleForm.dkpz_sjw">
<el-option label="8" value="8"></el-option>
@ -46,7 +46,7 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="检验位" prop="dkpz_jyw">
<el-form-item :label="$t('ckportconfig.checkBit')" prop="dkpz_jyw">
<el-col :span="15">
<el-select v-model="ruleForm.dkpz_jyw">
<el-option
@ -58,7 +58,7 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="停止位" prop="dkpz_tzw">
<el-form-item :label="$t('ckportconfig.stopBit')" prop="dkpz_tzw">
<el-col :span="15">
<el-select v-model="ruleForm.dkpz_tzw">
<el-option label="1" value="1"></el-option>
@ -66,7 +66,7 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="流控模式" prop="dkpz_lkms">
<el-form-item :label="$t('ckportconfig.controlMode')" prop="dkpz_lkms">
<el-col :span="15">
<el-select v-model="ruleForm.dkpz_lkms">
<el-option label="None" value="None"></el-option>
@ -74,7 +74,7 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="打包长度(bytes)" prop="dkpz_dbcd">
<el-form-item :label="$t('ckportconfig.packagingLength')" prop="dkpz_dbcd">
<el-col :span="15">
<el-input
v-model="ruleForm.dkpz_dbcd"
@ -82,7 +82,7 @@
></el-input>
</el-col>
</el-form-item>
<el-form-item label="打包时间(ms)" prop="dkpz_dbsj">
<el-form-item :label="$t('ckportconfig.packagingTime')" prop="dkpz_dbsj">
<el-col :span="15">
<el-input
v-model="ruleForm.dkpz_dbsj"
@ -90,7 +90,7 @@
></el-input>
</el-col>
</el-form-item>
<el-form-item label="同步波特率(RF2217)" prop="dkpz_tbbtl">
<el-form-item :label="$t('ckportconfig.synBaudRate')" prop="dkpz_tbbtl">
<el-col :span="15">
<el-select v-model="ruleForm.dkpz_tbbtl">
<el-option label="None" value="None"></el-option>
@ -99,21 +99,21 @@
</el-col>
</el-form-item>
<el-checkbox
label="使能串口心跳包"
:label="$t('ckportconfig.checked')"
name="type"
v-model="ruleForm.dkpz_snckxtb"
></el-checkbox>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="dialogVisible = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
</div>
</template>
<script>
import { SaveUserAnswer, GetUserAnswer } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, getQueryAnswer} from "@/api/user";
export default {
data() {
return {
@ -148,7 +148,7 @@ export default {
labelPosition: "left",
ruleForm: {
dkpz_btl: "",
dkpz_sjw: "8",
dkpz_sjw: "",
dkpz_jyw: "",
dkpz_tzw: "",
dkpz_lkms: "",
@ -166,32 +166,32 @@ export default {
ippz_dns_by: "",
rules: {
dkpz_btl: [
{ required: true, message: "请选择波特率", trigger: "change" },
{ required: true, message: this.$t('ckportconfig.rules.dkpz_btl'), trigger: "change" },
],
dkpz_sjw: [
{ required: true, message: "请选择数据位", trigger: "change" },
{ required: true, message: this.$t('ckportconfig.rules.dkpz_sjw'), trigger: "change" },
],
dkpz_tzw: [
{ required: true, message: "请选择停止位", trigger: "change" },
{ required: true, message: this.$t('ckportconfig.rules.dkpz_tzw'), trigger: "change" },
],
dkpz_jyw: [
{ required: true, message: "请选择检验位", trigger: "change" },
{ required: true, message: this.$t('ckportconfig.rules.dkpz_jyw'), trigger: "change" },
],
dkpz_lkms: [
{ required: true, message: "请选择流控模式", trigger: "blur" },
{ required: true, message: this.$t('ckportconfig.rules.dkpz_lkms'), trigger: "blur" },
],
dkpz_dbcd: [
{ required: true, message: "请输入打包长度", trigger: "blur" },
{ required: true, message: this.$t('ckportconfig.rules.dkpz_dbcd'), trigger: "blur" },
// 1000
// { type: "number", message: "", trigger: "blur" },
],
dkpz_tbbtl: [
{ required: true, message: "请输入打包时间", trigger: "blur" },
dkpz_dbsj: [
{ required: true, message: this.$t('ckportconfig.rules.dkpz_dbsj'), trigger: "blur" },
// { type: "number", message: "", trigger: "blur" },
// 1000
],
dkpz_tbbtl: [
{ required: true, message: "请选择同步波特率", trigger: "change" },
{ required: true, message: this.$t('ckportconfig.rules.dkpz_tbbtl'), trigger: "change" },
],
},
};
@ -207,7 +207,7 @@ export default {
user_id: this.user_id,
// user_id: "USER202311140204340206",
});
if (data.data) {
if (data.data && data.state) {
let obj = JSON.parse(data.data.mark_value);
this.ruleForm.dkpz_btl = obj.dkpz_btl;
this.ruleForm.dkpz_sjw = obj.dkpz_sjw;
@ -225,6 +225,29 @@ export default {
this.ippz_mrwg = obj.ippz_mrwg;
this.ippz_dns_zy = obj.ippz_dns_zy;
this.ippz_dns_by = obj.ippz_dns_by;
}else{
getQueryAnswer({
mark: "CKFWQ_yx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
this.ruleForm.dkpz_btl = obj.dkpz_btl;
this.ruleForm.dkpz_sjw = obj.dkpz_sjw;
this.ruleForm.dkpz_jyw = obj.dkpz_jyw;
this.ruleForm.dkpz_tzw = obj.dkpz_tzw;
this.ruleForm.dkpz_lkms = obj.dkpz_lkms;
this.ruleForm.dkpz_dbcd = obj.dkpz_dbcd;
this.ruleForm.dkpz_dbsj = obj.dkpz_dbsj;
this.ruleForm.dkpz_tbbtl = obj.dkpz_tbbtl;
this.ruleForm.dkpz_snckxtb = Boolean(obj.dkpz_snckxtb);
this.ippz_ip_hqfs = obj.ippz_ip_hqfs;
this.ippz_dns_hqfs = obj.ippz_dns_hqfs;
this.ippz_ip = obj.ippz_ip;
this.ippz_zwym = obj.ippz_zwym;
this.ippz_mrwg = obj.ippz_mrwg;
this.ippz_dns_zy = obj.ippz_dns_zy;
this.ippz_dns_by = obj.ippz_dns_by;
})
}
console.log(data.data);
// alert(JSON.stringify(data.data.mark_value));

View File

@ -33,17 +33,17 @@
default-active="#0078FE"
>
<el-menu-item id="menuitem" index="1" style="font-size: 12px">
<span slot="title">新建通道</span>
<span slot="title">{{ $t('addChannel') }}</span>
</el-menu-item>
<el-menu-item index="2" style="font-size: 12px">
<span slot="title"> </span>
<span slot="title">{{ $t('cancel') }}</span>
</el-menu-item>
</el-menu>
</div>
</div>
<div class="pas_params">
<div :class="$i18n.locale==='en'?'pas_params':'zh pas_params'">
<el-dialog
title="通道参数设置"
:title="$t('channelconfig.title')"
:visible.sync="add_passage"
width="765px"
v-loading="loading"
@ -57,7 +57,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="通道名称:"
:label="$t('channelconfig.name')"
:label-width="formLabelWidth"
prop="tdpz_tdmc"
>
@ -80,7 +80,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="通道:"
:label="$t('channelconfig.channel')"
:label-width="formLabelWidth"
prop="tdpz_td"
>
@ -101,7 +101,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="驱动名称:"
:label="$t('channelconfig.driverName')"
:label-width="formLabelWidth"
prop="tdpz_qdmc"
>
@ -113,9 +113,15 @@
style="width: 200px; height: 30px"
disabled
></el-input>
<el-button v-if="$i18n.locale==='zh'"
style="width: 50px; height: 30px;position: absolute;right:-4px;top:4px"
@click="getDriveName"
>...</el-button
>
</el-col>
<el-col :span="6">
<el-button
v-if="$i18n.locale==='en'"
style="width: 50px; height: 30px"
@click="getDriveName"
>...</el-button
@ -178,7 +184,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="串口号:"
:label=" $t('channelconfig.serialPort')"
:label-width="formLabelWidth"
prop="tdpz_chuankou"
>
@ -201,7 +207,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="波特率:"
:label="$t('channelconfig.baudRate')"
:label-width="formLabelWidth"
prop="tdpz_btl"
>
@ -222,7 +228,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="数据位:"
:label="$t('channelconfig.dataBits')"
:label-width="formLabelWidth"
prop="tdpz_sjw"
>
@ -245,7 +251,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="停止位:"
:label="$t('channelconfig.stopBit')"
:label-width="formLabelWidth"
prop="tdpz_tzw"
>
@ -266,7 +272,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="奇偶校验:"
:label="$t('channelconfig.parityCheck')"
:label-width="formLabelWidth"
prop="tdpz_jojy"
>
@ -290,7 +296,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="超过时间(ms):"
:label="$t('channelconfig.overTime')"
:label-width="formLabelWidth"
prop="tdpz_cgsj"
>
@ -303,7 +309,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="间隔时间(ms):"
:label="$t('channelconfig.intervalTime')"
:label-width="formLabelWidth"
prop="tdpz_jgsj"
>
@ -318,8 +324,8 @@
<el-row>
<el-col :span="12">
<el-form-item
label="轮询时间(ms):"
:label-width="formLabelWidth"
:label="$t('channelconfig.pollTime')"
:label-width="formLabelWidth"
prop="tdpz_lxsj"
>
<el-input
@ -331,7 +337,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="重复次数:"
:label="$t('channelconfig.retryCount')"
:label-width="formLabelWidth"
prop="tdpz_cfcs"
>
@ -345,7 +351,7 @@
</el-row>
</el-form>
<div class="super_parmams">
<h3>高级参数</h3>
<h3>{{ $t('channelconfig.title1') }}</h3>
<div>
<i class="el-icon-caret-bottom" v-if="is_retract"></i>
<i class="el-icon-caret-top" v-else="is_retract"></i>
@ -354,14 +360,14 @@
plain
@click="getRetract"
style="
width: 28px;
border: none;
color: rgba(16, 16, 16, 1);
font-size: 14px;
text-align: left;
"
>
收起</el-button
{{ $t('put') }}</el-button
>
</div>
</div>
@ -388,14 +394,14 @@
<el-col :span="12">
<el-form-item>
<el-checkbox v-model="formData.tdpz_cjsylxdz"
>采集使用连续地址</el-checkbox
>{{ $t('channelconfig.check') }}</el-checkbox
>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="读写占空比:" :label-width="formLabelWidth">
<el-form-item :label="$t('channelconfig.reading')" :label-width="formLabelWidth">
<el-row>
<el-col :span="10">
<el-input
@ -461,14 +467,14 @@
</el-form>
</div>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="add_passage = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="add_passage = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
<div class="drvieName_All" v-show="diag_drive">
<div class="title">
<p class="title_l">协议选择</p>
<p class="title_l">{{ $t('channelconfig.agreementName') }}</p>
<i class="el-icon-close title_r" @click="diag_drive = false"></i>
</div>
<el-divider></el-divider>
@ -482,18 +488,18 @@
<!-- 网关 -->
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form
:model="formData"
:rules="rulesGate"
ref="gateWay"
label-width="85px"
:label-width="$i18n.locale === 'zh'?'130px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="formData.wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -505,10 +511,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="formData.wgpz_wgid"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -520,10 +526,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关类型:" prop="wgpz_wglx">
<el-form-item :label="$t('dbcollectiongate.type')" prop="wgpz_wglx">
<el-select
v-model="formData.wgpz_wglx"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -537,8 +543,8 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitGate">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitGate">{{$t('save')}}</el-button>
<el-button @click="outerVisible = false">{{$t('cancel')}}</el-button>
</div>
</el-dialog>
</div>
@ -547,7 +553,7 @@
<script>
import _ from "lodash";
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "TestTreeView",
data() {
@ -623,26 +629,8 @@ export default {
tdpz_dxzkb1: "1",
tdpz_dxzkb2: "1",
diag_drive: false,
options1: [
{
value: "有线区Channel1",
label: "有线区Channel1",
},
{
value: "无线区Channel1",
label: "无线区Channel1",
},
],
options2: [
{
value: "网口",
label: "网口",
},
{
value: "串口",
label: "串口",
},
],
options1: this.$t('channelconfig.options1'),
options2:this.$t('channelconfig.options'),
options3: [
{
value: "com1",
@ -904,149 +892,51 @@ export default {
isdisabled: true,
is_retract: true,
labelPosition: "left",
formLabelWidth: "116px",
formLabelWidth: this.$i18n.locale==='zh'?"155px":"116px",
input1: 10,
add_passage: false,
rightMenu: "",
dialogVisible: true,
menuShow: false,
datas2: [
{
label: "通用标准",
children: [
{
label: "ModbusTCPClient",
},
{
label: "ModbusRTU_over_TCP",
},
{
label: "OPCUAClient",
},
{
label: "OPCDAClient",
},
{
label: "MQTTClient",
},
{
label: "OPCXMLDAClient",
},
{
label: "环保212协议网口监听",
},
],
},
{
label: "PLC",
children: [
{
label: "Slemens S7-200 Network",
},
{
label: "Slemens S7-300 Network",
},
{
label: "Slemens S7-400 Network",
},
{
label: "Slemens S7-1200 Network",
},
{
label: "Slemens S7-1500 Network",
},
{
label: "EtherNet/IP CIP协议(AB OMR ON)",
},
{
label: "MC_Qna-3E(三菱 基恩士 松下)",
},
{
label: "MC_A-1E_Binary",
},
{
label: "OMRON-FINS",
},
{
label: "横河PLC",
},
{
label: "西门子FetchWirte",
},
{
label: "富机 FUJI_SPH_NET",
},
{
label: "基恩士上位链路通讯",
},
],
},
{
label: "智能建筑",
children: [],
},
{
label: "厂家定制",
children: [],
},
{
label: "电力行业标准",
children: [
{
label: "IEC104",
},
{
label: "DLT645_over_TCP",
},
],
},
{
label: "CNC数控",
children: [],
},
{
label: "私有协议",
children: [],
},
],
datas2: this.$t('channelconfig.agreement'),
defaultProps: {
children: "children",
label: "label",
},
rules: {
tdpz_tdmc: [
{ required: true, message: "请输入通道名称", trigger: "change" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_tdmc'), trigger: "change" },
],
tdpz_td: [{ required: true, message: "请输入通道", trigger: "change" }],
tdpz_td: [{ required: true, message: this.$t('channelconfig.rules.tdpz_td'), trigger: "change" }],
tdpz_qdmc: [
{ required: true, message: "请输入驱动名称", trigger: "change" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_qdmc'), trigger: "change" },
],
tdpz_chuankou: [
{ required: true, message: "请输入串口号", trigger: "change" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_chuankou'), trigger: "change" },
],
tdpz_btl: [
{ required: true, message: "请输入波特率", trigger: "change" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_btl'), trigger: "change" },
],
tdpz_tzw: [
{ required: true, message: "请输入停止位", trigger: "change" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_tzw'), trigger: "change" },
],
tdpz_sjw: [
{ required: true, message: "请输入数据位", trigger: "change" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_sjw'), trigger: "change" },
],
tdpz_jojy: [
{ required: true, message: "请输入奇偶校验", trigger: "change" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_jojy'), trigger: "change" },
],
tdpz_cgsj: [
{ required: true, message: "请输入超出时间", trigger: "blur" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_cssj'), trigger: "blur" },
],
tdpz_jgsj: [
{ required: true, message: "请输入间隔时间", trigger: "blur" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_jgsj'), trigger: "blur" },
],
tdpz_lxsj: [
{ required: true, message: "请输入轮询时间", trigger: "blur" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_lxsj'), trigger: "blur" },
],
tdpz_cfcs: [
{ required: true, message: "请输入重复次数", trigger: "blur" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_cfcs'), trigger: "blur" },
],
tdpz_ip: [{ required: true, message: "请输入IP地址", trigger: "blur" }],
tdpz_port: [
@ -1067,16 +957,7 @@ export default {
{ required: true, message: "请选择网关类型", trigger: "blur" },
],
},
opts1: [
{
value: "有线区网关1",
label: "有线区网关1",
},
{
value: "无线区网关1",
label: "无线区网关1",
},
],
opts1: this.$t('dbcollectiongate.options1'),
opts2: [
{
value: "LAN-BOX1",
@ -1087,32 +968,7 @@ export default {
label: "WLAN-BOX1",
},
],
opts3: [
{
value: "loT Lite网关",
label: "loT Lite网关",
},
{
value: "MODBUS网关",
label: "MODBUS网关",
},
{
value: "BACNET网关",
label: "BACNET网关",
},
{
value: "OPC UA网关",
label: "OPC UA网关",
},
{
value: "OPC DA网关",
label: "OPC DA网关",
},
{
value: "loT网关",
label: "loT网关",
},
],
opts3: this.$t('dbcollectiongate.options3'),
};
},
methods: {
@ -1145,7 +1001,7 @@ export default {
// this.gateWay.wgpz_wglx = res3.wgpz_wglx;
// }
}
if (node.level == 3 && data.label == "I/O点") {
if (node.level == 3 && data.label == "I/O点" ) {
this.nodekey = data.id;
this.menuShow = false;
this.menuShow = true;
@ -1270,6 +1126,80 @@ export default {
});
this.loading = false;
console.log(answer);
if(!answer.data.state){
getQueryAnswer({
mark: "DB-IotLite_wx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
// console.log(obj);
if (obj.tdpz_dxzkb) {
this.tdpz_dxzkb1 = obj.tdpz_dxzkb.split(":")[0];
this.tdpz_dxzkb2 = obj.tdpz_dxzkb.split(":")[1];
this.formData.tdpz_watchtime = Boolean(Number(obj.tdpz_watchtime));
this.formData.tdpz_cjsylxdz = Boolean(Number(obj.tdpz_cjsylxdz));
}
if (obj.tdpz_050F) {
this.formData.tdpz_050F = obj.tdpz_050F;
this.formData.tdpz_0610 = obj.tdpz_0610;
}
this.formData.tdpz_tdmc = obj.tdpz_tdmc;
this.formData.tdpz_td = obj.tdpz_td;
this.formData.tdpz_qdmc = obj.tdpz_qdmc;
this.formData.tdpz_chuankou = obj.tdpz_chuankou;
this.formData.tdpz_btl = obj.tdpz_btl;
this.formData.tdpz_sjw = obj.tdpz_sjw;
this.formData.tdpz_tzw = obj.tdpz_tzw;
this.formData.tdpz_jojy = obj.tdpz_jojy;
this.formData.tdpz_port = obj.tdpz_port;
this.formData.tdpz_cgsj = obj.tdpz_cgsj;
this.formData.tdpz_jgsj = obj.tdpz_jgsj;
this.formData.tdpz_lxsj = obj.tdpz_lxsj;
this.formData.tdpz_cfcs = obj.tdpz_cfcs;
this.formData.tdpz_dxzkb = obj.tdpz_dxzkb;
this.formData.wgpz_wgid = obj.wgpz_wgid;
console.log(this.formData.wgpz_wgid);
this.formData.wgpz_wgmc = obj.wgpz_wgmc;
this.formData.wgpz_wglx = obj.wgpz_wglx;
this.formData.ippz_wangkou = obj.ippz_wangkou;
this.formData.ippz_lwfs = obj.ippz_lwfs;
this.formData.ippz_ip = obj.ippz_ip;
this.formData.ippz_zwym = obj.ippz_zwym;
this.formData.ippz_mrwg = obj.ippz_mrwg;
this.formData.ippz_dns_sx = obj.ippz_dns_sx;
this.formData.ippz_dns_by = obj.ippz_dns_by;
this.formData.ippz_mac = obj.ippz_mac;
this.formData.ippz_wifi_ssid = obj.ippz_wifi_ssid;
this.formData.ippz_wifi_mm = obj.ippz_wifi_mm;
this.formData.sbpz_sbid = obj.sbpz_sbid;
this.formData.sbpz_sbmc = obj.sbpz_sbmc;
this.formData.sbpz_sbdz = obj.sbpz_sbdz;
this.formData.sbpz_jysb = obj.sbpz_jysb;
this.formData.sbpz_jdzxz = obj.sbpz_jdzxz;
this.formData.cjdpz_tagid = obj.cjdpz_tagid;
this.formData.cjdpz_mc = obj.cjdpz_mc;
this.formData.cjdpz_sjq = obj.cjdpz_sjq;
this.formData.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.formData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.formData.cjdpz_zjx = obj.cjdpz_zjx;
this.formData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.formData.cjdpz_beilv = obj.cjdpz_beilv;
this.formData.mqtt_qiyong = obj.mqtt_qiyong;
this.formData.mqtt_ip = obj.mqtt_ip;
this.formData.mqtt_port = obj.mqtt_port;
this.formData.mqtt_wgsn = obj.mqtt_wgsn;
this.formData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.formData.mqtt_qos = obj.mqtt_qos;
this.formData.mqtt_scms = obj.mqtt_scms;
this.formData.mqtt_sczq = obj.mqtt_sczq;
this.formData.mqtt_sjgl = obj.mqtt_sjgl;
this.formData.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.formData.mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
})
}
// console.log(answer.data);
if (answer.data.data && answer.data.state) {
// console.log(answer);
@ -1442,14 +1372,22 @@ export default {
display: inline-block;
}
}
.zh{
.el-col-12:last-child {
padding-right: 25px !important;
}
.el-col-12:first-child {
padding-right: 10px !important;
}
}
/deep/ .pas_params {
.el-col-12:last-child {
padding-right: 150px;
}
.el-col-12:first-child {
padding-right: 38px;
padding-right:38px;
}
.el-input__inner {
@ -1533,7 +1471,7 @@ export default {
justify-content: space-between;
.title_l {
width: 103px;
//width: 103px;
height: 26px;
color: rgba(16, 16, 16, 1);
font-size: 18px;

View File

@ -22,18 +22,18 @@
default-active="#0078FE"
>
<el-menu-item id="menuitem" index="1" style="font-size: 12px">
<span slot="title">新建通道</span>
<span slot="title">{{ $t('addChannel') }}</span>
</el-menu-item>
<el-menu-item index="2" style="font-size: 12px">
<span slot="title"> </span>
<span slot="title">{{ $t('cancel') }}</span>
</el-menu-item>
</el-menu>
</div>
</div>
</div>
<div class="pas_params">
<div :class="$i18n.locale==='zh'?'zh pas_params':'pas_params'">
<el-dialog
title="通道参数设置"
:title="$t('channelconfig.title')"
:visible.sync="add_passage"
width="765px"
v-loading="loading"
@ -47,7 +47,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="通道名称:"
:label="$t('channelconfig.name')"
:label-width="formLabelWidth"
prop="tdpz_tdmc"
>
@ -70,7 +70,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="通道:"
:label="$t('channelconfig.channel')"
:label-width="formLabelWidth"
prop="tdpz_td"
>
@ -91,7 +91,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="驱动名称:"
:label="$t('channelconfig.driverName')"
:label-width="formLabelWidth"
prop="tdpz_qdmc"
>
@ -103,9 +103,15 @@
disabled
style="width: 200px; height: 30px"
></el-input>
<el-button v-if="$i18n.locale==='zh'"
style="width: 50px; height: 30px;position: absolute;right:-4px;top:4px"
@click="getDriveName"
>...</el-button
>
</el-col>
<el-col :span="6">
<el-button
v-if="$i18n.locale==='en'"
style="width: 50px; height: 30px"
@click="getDriveName"
>...</el-button
@ -212,7 +218,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="IP地址:"
:label="$t('channelconfig.IP')"
:label-width="formLabelWidth"
prop="tdpz_ip"
>
@ -251,7 +257,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="端口号:"
:label="$t('channelconfig.port')"
:label-width="formLabelWidth"
prop="tdpz_port"
>
@ -267,7 +273,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="超过时间(ms):"
:label="$t('channelconfig.overTime')"
:label-width="formLabelWidth"
prop="tdpz_cssj"
>
@ -280,7 +286,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="间隔时间(ms):"
:label="$t('channelconfig.intervalTime')"
:label-width="formLabelWidth"
prop="tdpz_jgsj"
>
@ -295,7 +301,7 @@
<el-row>
<el-col :span="12">
<el-form-item
label="轮询时间(ms):"
:label="$t('channelconfig.pollTime')"
:label-width="formLabelWidth"
prop="tdpz_lxsj"
>
@ -308,7 +314,7 @@
</el-col>
<el-col :span="12">
<el-form-item
label="重复次数:"
:label="$t('channelconfig.retryCount')"
:label-width="formLabelWidth"
prop="tdpz_cfcs"
>
@ -321,8 +327,8 @@
</el-col>
</el-row>
</el-form>
<div class="super_parmams">
<h3>高级参数</h3>
<div :class="$i18n.locale==='zh'?'zh super_parmams':'super_parmams'">
<h3>{{ $t('channelconfig.title1') }}</h3>
<div>
<i class="el-icon-caret-bottom" v-if="is_retract"></i>
<i class="el-icon-caret-top" v-else="is_retract"></i>
@ -331,18 +337,17 @@
plain
@click="getRetract"
style="
width: 28px;
border: none;
color: rgba(16, 16, 16, 1);
font-size: 14px;
text-align: left;
"
>
收起</el-button
{{ $t('put') }}</el-button
>
</div>
</div>
<div class="super_con" v-show="is_retract">
<div :class="$i18n.locale==='zh'?'super super_con':'super_con'" v-show="is_retract">
<el-form
:label-position="labelPosition"
:rules="rules"
@ -365,14 +370,14 @@
<el-col :span="12">
<el-form-item>
<el-checkbox v-model="FormData.tdpz_cjsylxdz"
>采集使用连续地址</el-checkbox
>{{ $t('channelconfig.check') }}</el-checkbox
>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="读写占空比:" :label-width="formLabelWidth">
<el-form-item :label="$t('channelconfig.reading')" :label-width="formLabelWidth">
<el-row>
<el-col :span="10">
<el-input
@ -438,14 +443,14 @@
</el-form>
</div>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="add_passage = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="add_passage = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
<div class="drvieName_All" v-show="diag_drive">
<div class="title">
<p class="title_l">协议选择</p>
<p class="title_l">{{$t('channelconfig.agreementName')}}</p>
<i class="el-icon-close title_r" @click="diag_drive = false"></i>
</div>
<el-divider></el-divider>
@ -456,19 +461,20 @@
default-expand-all
></el-tree>
</div>
<!-- 设备配置-->
<div class="gateway">
<el-dialog title="新建网关" :visible.sync="outerVisible" width="382px">
<el-dialog :title="$t('dbcollectiongate.title')" :visible.sync="outerVisible" width="382px">
<el-form
:model="FormData"
:rules="rulesGate"
ref="gateWay"
label-width="85px"
:label-width="$i18n.locale === 'zh'?'130px':'85px'"
class="demo-ruleForm"
>
<el-form-item label="网关名称:" prop="wgpz_wgmc">
<el-form-item :label="$t('dbcollectiongate.name')" prop="wgpz_wgmc">
<el-select
v-model="FormData.wgpz_wgmc"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -480,10 +486,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关ID:" prop="wgpz_wgid">
<el-form-item :label="$t('dbcollectiongate.ID')" prop="wgpz_wgid">
<el-select
v-model="FormData.wgpz_wgid"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -495,10 +501,10 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网关类型:" prop="wgpz_wglx">
<el-form-item :label="$t('dbcollectiongate.type')" prop="wgpz_wglx">
<el-select
v-model="FormData.wgpz_wglx"
placeholder="请选择"
:placeholder="$t('select')"
style="width: 200px"
>
<el-option
@ -512,8 +518,8 @@
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer-outer">
<el-button type="primary" @click="submitGate">保存</el-button>
<el-button @click="outerVisible = false"> </el-button>
<el-button type="primary" @click="submitGate">{{ $t('save') }}</el-button>
<el-button @click="outerVisible = false">{{ $t('cancel') }}</el-button>
</div>
</el-dialog>
</div>
@ -522,7 +528,7 @@
<script>
// import _ from 'lodash';
import { SaveUserAnswer, GetUserAnswer, GetTree, SendTree } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, GetTree, SendTree, getQueryAnswer} from "@/api/user";
export default {
name: "TestTreeView",
@ -595,26 +601,8 @@ export default {
tdpz_ip2: "",
tdpz_ip3: "",
tdpz_ip4: "",
options1: [
{
value: "有线区Channel1",
label: "有线区Channel1",
},
{
value: "无线区Channel1",
label: "无线区Channel1",
},
],
options2: [
{
value: "网口",
label: "网口",
},
{
value: "串口",
label: "串口",
},
],
options1:this.$t('channelconfig.options1'),
options2: this.$t('channelconfig.options'),
value1: "有线区Channel1",
value2: "网口",
diag_drive: false,
@ -622,7 +610,7 @@ export default {
radio: "1",
is_retract: true,
labelPosition: "left",
formLabelWidth: "116px",
formLabelWidth: this.$i18n.locale === 'zh'?"142px":"116px",
input1: 10,
add_passage: false,
rightMenu: "",
@ -630,116 +618,18 @@ export default {
menuShow: false,
trees: [],
nodekey: "",
datas2: [
{
label: "通用标准",
children: [
{
label: "ModbusTCPClient",
},
{
label: "ModbusRTU_over_TCP",
},
{
label: "OPCUAClient",
},
{
label: "OPCDAClient",
},
{
label: "MQTTClient",
},
{
label: "OPCXMLDAClient",
},
{
label: "环保212协议网口监听",
},
],
},
{
label: "PLC",
children: [
{
label: "Slemens S7-200 Network",
},
{
label: "Slemens S7-300 Network",
},
{
label: "Slemens S7-400 Network",
},
{
label: "Slemens S7-1200 Network",
},
{
label: "Slemens S7-1500 Network",
},
{
label: "EtherNet/IP CIP协议(AB OMR ON)",
},
{
label: "MC_Qna-3E(三菱 基恩士 松下)",
},
{
label: "MC_A-1E_Binary",
},
{
label: "OMRON-FINS",
},
{
label: "横河PLC",
},
{
label: "西门子FetchWirte",
},
{
label: "富机 FUJI_SPH_NET",
},
{
label: "基恩士上位链路通讯",
},
],
},
{
label: "智能建筑",
children: [],
},
{
label: "厂家定制",
children: [],
},
{
label: "电力行业标准",
children: [
{
label: "IEC104",
},
{
label: "DLT645_over_TCP",
},
],
},
{
label: "CNC数控",
children: [],
},
{
label: "私有协议",
children: [],
},
],
datas2: this.$t('channelconfig.agreement'),
defaultProps: {
children: "children",
label: "label",
},
rules: {
tdpz_tdmc: [
{ required: true, message: "请输入通道名称", trigger: "change" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_tdmc'), trigger: "change" },
],
tdpz_td: [{ required: true, message: "请输入通道", trigger: "change" }],
tdpz_td: [{ required: true, message: this.$t('channelconfig.rules.tdpz_td'), trigger: "change" }],
tdpz_qdmc: [
{ required: true, message: "请输入驱动名称", trigger: "change" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_qdmc'), trigger: "change" },
],
tdpz_ip: [
{
@ -750,19 +640,19 @@ export default {
},
],
tdpz_port: [
{ required: true, message: "请输入端口号", trigger: "blur" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_port'), trigger: "blur" },
],
tdpz_cssj: [
{ required: true, message: "请输入超出时间", trigger: "blur" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_cssj'), trigger: "blur" },
],
tdpz_jgsj: [
{ required: true, message: "请输入间隔时间", trigger: "blur" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_jgsj'), trigger: "blur" },
],
tdpz_lxsj: [
{ required: true, message: "请输入轮询时间", trigger: "blur" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_lxsj'), trigger: "blur" },
],
tdpz_cfcs: [
{ required: true, message: "请输入重复次数", trigger: "blur" },
{ required: true, message: this.$t('channelconfig.rules.tdpz_cfcs'), trigger: "blur" },
],
tdpz_chuankou: [
{ required: true, message: "请输入串口号", trigger: "blur" },
@ -1047,27 +937,19 @@ export default {
wgpz_wgid: "",
wgpz_wglx: "",
},
rulesGate: {
wgpz_wgmc: [
{ required: true, message: "请选择网关名称", trigger: "blur" },
{ required: true, message:this.$t('dbcollectiongate.rules.wgpz_wgmc'), trigger: "blur" },
],
wgpz_wgid: [
{ required: true, message: "请选择网关id", trigger: "blur" },
{ required: true, message:this.$t('dbcollectiongate.rules.wgpz_wgid'), trigger: "blur" },
],
wgpz_wglx: [
{ required: true, message: "请选择网关类型", trigger: "blur" },
{ required: true, message:this.$t('dbcollectiongate.rules.wgpz_wglx'), trigger: "blur" },
],
},
opts1: [
{
value: "有线区网关1",
label: "有线区网关1",
},
{
value: "无线区网关1",
label: "无线区网关1",
},
],
opts1:this.$t('dbcollectiongate.options1'),
opts2: [
{
value: "LAN-BOX1",
@ -1078,32 +960,7 @@ export default {
label: "WLAN-BOX1",
},
],
opts3: [
{
value: "loT Lite网关",
label: "loT Lite网关",
},
{
value: "MODBUS网关",
label: "MODBUS网关",
},
{
value: "BACNET网关",
label: "BACNET网关",
},
{
value: "OPC UA网关",
label: "OPC UA网关",
},
{
value: "OPC DA网关",
label: "OPC DA网关",
},
{
value: "loT网关",
label: "loT网关",
},
],
opts3: this.$t('dbcollectiongate.options3')
};
},
@ -1120,7 +977,7 @@ export default {
this.tdpz_ip4 ===
"..."
) {
callback(new Error("请输入IP地址"));
callback(new Error(this.$t('channelconfig.rules.tdpz_ip')));
} else if (
!/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/.test(
this.tdpz_ip1 +
@ -1132,7 +989,7 @@ export default {
this.tdpz_ip4
)
) {
callback(new Error("请输入有效的IP地址"));
callback(new Error(this.$t('channelconfig.rules.ip2')));
} else {
callback();
}
@ -1157,7 +1014,7 @@ export default {
this.menuShow = false;
this.GetUserAnswer();
}
if (node.level == 3 && data.label == "I/O点") {
if (node.level == 3 && data.label == "I/O点" || node.level == 3 && data.label == "I/O point") {
this.nodekey = data.id;
this.menuShow = false;
this.menuShow = true;
@ -1233,7 +1090,7 @@ export default {
// datas = { ...JSON.parse(datas), ...obj };
console.log(this.FormData);
let datas = { ...this.FormData, ...obj };
console.log(datas);
console.log(datas,'xxxxxxxxxxxxxxxxxxxxxxxxxxxx');
let res = await SaveUserAnswer({
mark: "DB-IotLite_yx",
// user_id: "USER202307301114011710",
@ -1285,7 +1142,80 @@ export default {
user_id: this.user_id,
// user_id: "USER202307301114011710",
});
console.log(answer);
if(!answer.data.state){
getQueryAnswer({
mark: "DB-IotLite_yx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
console.log(obj,'默认答案');
// this.FormData.
if (obj.tdpz_dxzkb) {
this.tdpz_dxzkb1 = obj.tdpz_dxzkb.split(":")[0];
this.tdpz_dxzkb2 = obj.tdpz_dxzkb.split(":")[1];
this.FormData.tdpz_dxzkb = obj.tdpz_dxzkb;
}
this.FormData.tdpz_watchtime = Boolean(Number(obj.tdpz_watchtime));
if (obj.tdpz_cjsylxdz) {
this.FormData.tdpz_cjsylxdz = Boolean(Number(obj.tdpz_cjsylxdz));
}
if (obj.tdpz_ip) {
this.FormData.tdpz_ip = obj.tdpz_ip;
this.tdpz_ip1 = obj.tdpz_ip.split(".")[0];
this.tdpz_ip2 = obj.tdpz_ip.split(".")[1];
this.tdpz_ip3 = obj.tdpz_ip.split(".")[2];
this.tdpz_ip4 = obj.tdpz_ip.split(".")[3];
}
this.FormData.tdpz_tdmc = obj.tdpz_tdmc;
this.FormData.tdpz_td = obj.tdpz_td;
this.FormData.tdpz_qdmc = obj.tdpz_qdmc;
if (obj.tdpz_050F) {
this.FormData.tdpz_050F = obj.tdpz_050F;
}
if (obj.tdpz_0610) {
this.FormData.tdpz_0610 = obj.tdpz_0610;
}
this.FormData.tdpz_port = obj.tdpz_port;
this.FormData.tdpz_cssj = obj.tdpz_cssj;
this.FormData.tdpz_jgsj = obj.tdpz_jgsj;
this.FormData.tdpz_lxsj = obj.tdpz_lxsj;
this.FormData.tdpz_cfcs = obj.tdpz_cfcs;
this.FormData.ippz_wangkou = obj.ippz_wangkou;
this.FormData.ippz_mrwg = obj.ippz_mrwg;
this.FormData.ippz_ip = obj.ippz_ip;
this.FormData.ippz_zwym = obj.ippz_zwym;
this.FormData.ippz_dns_sx = obj.ippz_dns_sx;
this.FormData.ippz_dns_by = obj.ippz_dns_by;
this.FormData.wgpz_wgmc = obj.wgpz_wgmc;
this.FormData.wgpz_wgid = obj.wgpz_wgid;
this.FormData.wgpz_wglx = obj.wgpz_wglx;
this.FormData.sbpz_sbid = obj.sbpz_sbid;
this.FormData.sbpz_sbmc = obj.sbpz_sbmc;
this.FormData.sbpz_mac = obj.sbpz_mac;
this.FormData.sbpz_jysb = obj.sbpz_jysb;
this.FormData.sbpz_jdzxz = obj.sbpz_jdzxz;
this.FormData.cjdpz_tagid = obj.cjdpz_tagid;
this.FormData.cjdpz_mc = obj.cjdpz_mc;
this.FormData.cjdpz_sjq = obj.cjdpz_sjq;
this.FormData.cjdpz_jcqdz = obj.cjdpz_jcqdz;
this.FormData.cjdpz_cjsjlx = obj.cjdpz_cjsjlx;
this.FormData.cjdpz_zjx = obj.cjdpz_zjx;
this.FormData.cjdpz_dxsx = obj.cjdpz_dxsx;
this.FormData.cjdpz_beilv = obj.cjdpz_beilv;
this.FormData.mqtt_qiyong = obj.mqtt_qiyong;
this.FormData.mqtt_ip = obj.mqtt_ip;
this.FormData.mqtt_port = obj.mqtt_port;
this.FormData.mqtt_wgsn = obj.mqtt_wgsn;
this.FormData.mqtt_sssjfbzt = obj.mqtt_sssjfbzt;
this.FormData.mqtt_qos = obj.mqtt_qos;
this.FormData.mqtt_scms = obj.mqtt_scms;
this.FormData.mqtt_sczq = obj.mqtt_sczq;
this.FormData.mqtt_sjgl = obj.mqtt_sjgl;
this.FormData.mqtt_cjd_sbmc = obj.mqtt_cjd_sbmc;
this.FormData.mqtt_cjd_tagid = obj.mqtt_cjd_tagid;
})
}
if (answer.data.data && answer.data.state) {
let obj = JSON.parse(answer.data.data.mark_value);
// console.log(obj);
@ -1419,8 +1349,13 @@ export default {
type: "1",
}).then((res) => {
// console.log(res);
if(this.$i18n.locale==='zh'){
this.trees = JSON.parse(res.data.data.r2);
}else{
this.trees = JSON.parse(res.data.data.data);
}
// console.log(JSON.parse(res.data.data.data));
this.trees = JSON.parse(res.data.data.data);
// alert(JSON.stringify(this.trees));
// console.log(this.$router.query.firstlabel);
// this.trees[0] = this.$router.query.firstlabel;
@ -1484,7 +1419,15 @@ export default {
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
z-index: 1000;
}
.zh{
.el-col-12:last-child {
padding-right: 25px !important;
}
.el-col-12:first-child {
padding-right: 20px !important;
}
}
.super_parmams {
display: flex;
color: #fff !important;
@ -1534,7 +1477,16 @@ export default {
}
}
}
//css
.super {
.el-col-12:last-child {
padding-right: 28px !important;
}
.el-col-12:first-child {
padding-right: 30px !important;
}
}
.super_con {
.el-col-12:last-child {
padding-right: 28px;
@ -1591,7 +1543,7 @@ export default {
justify-content: space-between;
.title_l {
width: 103px;
//width: 103px;
height: 26px;
color: rgba(16, 16, 16, 1);
font-size: 18px;

View File

@ -1,6 +1,6 @@
<template>
<div>
<el-dialog title="无线设置" :visible.sync="dialogVisible" width="30%">
<el-dialog :title="$t('ckwireless.title')" :visible.sync="dialogVisible" width="30%">
<el-form
:model="ruleForm"
:rules="rules"
@ -9,22 +9,22 @@
class="demo-ruleForm"
:label-position="labelPosition"
>
<el-form-item label="工作模式:" prop="wxpz_gzms">
<el-form-item :label="$t('ckwireless.workingMode')" prop="wxpz_gzms">
<el-col :span="10">
<el-select v-model="ruleForm.wxpz_gzms">
<el-option label="STA模式" value="STA模式"></el-option>
<el-option label="AP模式" value="AP模式"></el-option>
<el-option :label="'STA'+$t('ckwireless.mode')" :value="'STA'+$t('ckwireless.mode')"></el-option>
<el-option :label="'AP'+$t('ckwireless.mode')" :value="'AP'+$t('ckwireless.mode')"></el-option>
</el-select>
</el-col>
</el-form-item>
<el-form-item label="网络名称:" prop="wxpz_wlmc">
<el-form-item :label="$t('ckwireless.networkName')" prop="wxpz_wlmc">
<el-col :span="10">
<el-select v-model="ruleForm.wxpz_wlmc" placeholder="无线网名称">
<el-option label="无线区无线网" value="无线区无线网"></el-option>
<el-select v-model="ruleForm.wxpz_wlmc" :placeholder="$t('ckwireless.WirelessName')">
<el-option :label="$t('ckwireless.Wireless')" :value="$t('ckwireless.Wireless')"></el-option>
</el-select>
</el-col>
</el-form-item>
<el-form-item label="加密模式:" prop="wxpz_jmms">
<el-form-item :label="$t('ckwireless.encryptionMode')" prop="wxpz_jmms">
<el-col :span="10">
<el-select v-model="ruleForm.wxpz_jmms">
<el-option label="WPA2PSK" value="WPA2PSK"></el-option>
@ -34,7 +34,7 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="加密算法:" prop="wxpz_jmsf">
<el-form-item :label="$t('ckwireless.encryptionAlgorithm')" prop="wxpz_jmsf">
<el-col :span="10">
<el-select v-model="ruleForm.wxpz_jmsf">
<el-option label="AES" value="AES"></el-option>
@ -42,7 +42,7 @@
</el-select>
</el-col>
</el-form-item>
<el-form-item label="密码:" prop="wxpz_mm">
<el-form-item :label="$t('ckwireless.password')" prop="wxpz_mm">
<el-col :span="10">
<el-input v-model="ruleForm.wxpz_mm"> </el-input>
</el-col>
@ -50,14 +50,14 @@
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">保存</el-button>
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="submitForm">{{ $t('save') }}</el-button>
<el-button @click="dialogVisible = false">{{ $t('cancel') }}</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import { SaveUserAnswer, GetUserAnswer } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, getQueryAnswer} from "@/api/user";
export default {
data() {
return {
@ -65,10 +65,10 @@ export default {
user_id: "",
labelPosition: "left",
ruleForm: {
wxpz_gzms: "STA模式",
wxpz_wlmc: "无线区无限网",
wxpz_jmms: "WPA2PSK",
wxpz_jmsf: "AES",
wxpz_gzms: "",
wxpz_wlmc: "",
wxpz_jmms: "",
wxpz_jmsf: "",
wxpz_mm: "",
ckcssz_btl: "",
ckcssz_jyw: "",
@ -86,11 +86,11 @@ export default {
wkmssz_wkms: "",
},
rules: {
wxpz_gzms: [{ required: true, trigger: "change", message: "必填" }],
wxpz_wlmc: [{ required: true, trigger: "change", message: "必填" }],
wxpz_jmms: [{ required: true, trigger: "blur", message: "必填" }],
wxpz_jmsf: [{ required: true, trigger: "blur", message: "必填" }],
wxpz_mm: [{ required: true, trigger: "blur", message: "必填" }],
wxpz_gzms: [{ required: true, trigger: "change", message: this.$t('required') }],
wxpz_wlmc: [{ required: true, trigger: "change", message: this.$t('required') }],
wxpz_jmms: [{ required: true, trigger: "blur", message: this.$t('required') }],
wxpz_jmsf: [{ required: true, trigger: "blur", message: this.$t('required') }],
wxpz_mm: [{ required: true, trigger: "blur", message: this.$t('required') }],
},
};
},
@ -121,7 +121,6 @@ export default {
user_id: this.user_id,
// user_id: "USER202307301109254198",
});
console.log(data);
if (data.state) {
var obj = JSON.parse(data.data.mark_value);
this.ruleForm.ytwgn_kqwk = obj.ytwgn_kqwk;
@ -143,6 +142,32 @@ export default {
this.ruleForm.wxpz_jmms = obj.wxpz_jmms;
this.ruleForm.wxpz_jmsf = obj.wxpz_jmsf;
this.ruleForm.wxpz_mm = obj.wxpz_mm;
}else{
getQueryAnswer({
mark: "CKFWQ_wx",
user_id: this.user_id
}).then(res => {
var obj = JSON.parse(res.data.data.r3);
this.ruleForm.ytwgn_kqwk = obj.ytwgn_kqwk;
this.ruleForm.ytwgn_wkgzfs = obj.ytwgn_wkgzfs;
this.ruleForm.wkmssz_wkms = obj.wkmssz_wkms;
this.ruleForm.ckcssz_btl = obj.ckcssz_btl;
this.ruleForm.ckcssz_jyw = obj.ckcssz_jyw;
this.ruleForm.ckcssz_lk = obj.ckcssz_lk;
this.ruleForm.ckcssz_zdybtl = obj.ckcssz_zdybtl;
this.ruleForm.ckcssz_sjw = obj.ckcssz_sjw;
this.ruleForm.ckcssz_tzw = obj.ckcssz_tzw;
this.ruleForm.ckcssz_485 = obj.ckcssz_485;
this.ruleForm.qtsz_ckzdcz = obj.qtsz_ckzdcz;
this.ruleForm.qtsz_zcblx = obj.qtsz_zdyxtb;
this.ruleForm.qtsz_zdyxtb = obj.qtsz_zdyxtb;
this.ruleForm.qtsz_tjzffgn = obj.qtsz_tjzffgn;
this.ruleForm.wxpz_gzms = obj.wxpz_gzms;
this.ruleForm.wxpz_wlmc = obj.wxpz_wlmc;
this.ruleForm.wxpz_jmms = obj.wxpz_jmms;
this.ruleForm.wxpz_jmsf = obj.wxpz_jmsf;
this.ruleForm.wxpz_mm = obj.wxpz_mm;
})
}
},
submitForm(formName) {

View File

@ -812,8 +812,6 @@ export default {
height: 753px;
left: 64px;
top: 104px;
width: 286px;
height: 753px;
line-height: 20px;
border-radius: 3px;
background-color: rgba(255, 255, 255, 1);

View File

@ -1,23 +1,23 @@
<template>
<div>
<el-dialog
title="串口及网络协议设置"
:title="$t('toWifi.title')"
:visible.sync="dialogVisible"
v-loading="loading"
>
<h3>串口参数设置</h3>
<h3>{{ $t('toWifi.parameter') }}</h3>
<el-divider></el-divider>
<div class="formOne">
<el-form
:model="ruleForm"
:rules="rules"
ref="ruleForm"
label-width="150px"
label-width="180px"
class="demo-ruleForm"
:label-position="labelPosition"
>
<el-form-item label="波特率(bps):" prop="ckcssz_btl">
<el-select v-model="ruleForm.ckcssz_btl" placeholder="请选择波特率">
<el-form-item :label="$t('toWifi.baudRate')" prop="ckcssz_btl">
<el-select v-model="ruleForm.ckcssz_btl" :placeholder="$t('select')">
<el-option label="9600" value="9600"></el-option>
<el-option label="19200" value="19200"></el-option>
<el-option label="28800" value="28800"></el-option>
@ -32,8 +32,8 @@
<el-option label="115200" value="115200"></el-option>
</el-select>
</el-form-item>
<el-form-item label="检验位:" prop="ckcssz_jyw">
<el-select v-model="ruleForm.ckcssz_jyw" placeholder="请选择检验位">
<el-form-item :label="$t('toWifi.checkBit')" prop="ckcssz_jyw">
<el-select v-model="ruleForm.ckcssz_jyw" :placeholder="$t('select')">
<el-option
label="无校验none"
value="无校验none"
@ -42,19 +42,19 @@
<el-option label="奇校验" value="奇校验"></el-option>
</el-select>
</el-form-item>
<el-form-item label="流控:" prop="ckcssz_lk">
<el-select v-model="ruleForm.ckcssz_lk" placeholder="请选择流控">
<el-option label="关闭" value="关闭"></el-option>
<el-form-item :label="$t('toWifi.controlMode')" prop="ckcssz_lk">
<el-select v-model="ruleForm.ckcssz_lk" :placeholder="$t('select')">
<el-option :label="$t('close')" :value="$t('close')"></el-option>
<el-option label="硬件流控" value="硬件流控"></el-option>
</el-select>
</el-form-item>
<el-form-item label="自适应波特率(类RFC2117):" prop="ckcssz_zdybtl">
<el-form-item :label="$t('toWifi.adaptiveBaudRate')" prop="ckcssz_zdybtl">
<el-select
v-model="ruleForm.ckcssz_zdybtl"
placeholder="请选择自适应波特率"
:placeholder="$t('select')"
>
<el-option label="开启" value="开启"></el-option>
<el-option label="关闭" value="关闭"></el-option>
<el-option :label="$t('close')" :value="$t('close')"></el-option>
<el-option :label="$t('open')" :value="$t('open')"></el-option>
</el-select>
</el-form-item>
</el-form>
@ -62,34 +62,34 @@
:model="ruleForm"
:rules="rules"
ref="ruleForm"
label-width="150px"
label-width="250px"
class="demo-ruleForm"
:label-position="labelPosition"
>
<el-form-item label="数据位(bit):" prop="ckcssz_sjw">
<el-select v-model="ruleForm.ckcssz_sjw" placeholder="请选择数据位">
<el-form-item :label="$t('toWifi.dataBit')" prop="ckcssz_sjw">
<el-select v-model="ruleForm.ckcssz_sjw" :placeholder="$t('select')">
<el-option label="8" value="8"></el-option>
<el-option label="7" value="7"></el-option>
</el-select>
</el-form-item>
<el-form-item label="停止位:" prop="ckcssz_tzw">
<el-select v-model="ruleForm.ckcssz_tzw" placeholder="请选择停止位">
<el-form-item :label="$t('toWifi.stopBit')" prop="ckcssz_tzw">
<el-select v-model="ruleForm.ckcssz_tzw" :placeholder="$t('select')">
<el-option label="1" value="1"></el-option>
<el-option label="2" value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item label="485功能:" prop="ckcssz_485">
<el-form-item :label="$t('toWifi.function')" prop="ckcssz_485">
<el-select
v-model="ruleForm.ckcssz_485"
placeholder="请选择485功能"
:placeholder="$t('select')"
>
<el-option label="开启" value="开启"></el-option>
<el-option label="关闭" value="关闭"></el-option>
<el-option :label="$t('close')" :value="$t('close')"></el-option>
<el-option :label="$t('open')" :value="$t('open')"></el-option>
</el-select>
</el-form-item>
</el-form>
</div>
<h3>其他设置</h3>
<h3>{{ $t('toWifi.other') }}</h3>
<el-divider></el-divider>
<div class="formOne">
<el-form
@ -100,47 +100,47 @@
class="demo-ruleForm1"
:label-position="labelPosition"
>
<el-form-item label="串口自动成频:" prop="qtsz_ckzdcz">
<el-form-item :label="$t('toWifi.portAuto')" prop="qtsz_ckzdcz">
<el-select v-model="ruleForm.qtsz_ckzdcz">
<el-option label="关闭" value="关闭"></el-option>
<el-option label="开启" value="开启"></el-option>
<el-option :label="$t('close')" :value="$t('close')"></el-option>
<el-option :label="$t('open')" :value="$t('open')"></el-option>
</el-select>
</el-form-item>
<el-form-item label="注册包类型:" prop="qtsz_zcblx">
<el-form-item :label="$t('toWifi.packageType')" prop="qtsz_zcblx">
<el-select v-model="ruleForm.qtsz_zcblx">
<el-option label="关闭" value="关闭"></el-option>
<el-option label="开启" value="开启"></el-option>
<el-option :label="$t('close')" :value="$t('close')"></el-option>
<el-option :label="$t('open')" :value="$t('open')"></el-option>
</el-select>
</el-form-item>
<el-form-item label="自定义心跳包:" prop="qtsz_zdyxtb">
<el-form-item :label="$t('toWifi.customPacket')" prop="qtsz_zdyxtb">
<el-select v-model="ruleForm.qtsz_zdyxtb">
<el-option label="关闭" value="关闭"></el-option>
<el-option label="开启" value="开启"></el-option>
<el-option :label="$t('close')" :value="$t('close')"></el-option>
<el-option :label="$t('open')" :value="$t('open')"></el-option>
</el-select>
</el-form-item>
<el-form-item label="套接字分发功能:" prop="qtsz_tjzffgn">
<el-form-item :label="$t('toWifi.socketFunction')" prop="qtsz_tjzffgn">
<el-select v-model="ruleForm.qtsz_tjzffgn">
<el-option label="关闭" value="关闭"></el-option>
<el-option label="开启" value="开启"></el-option>
<el-option :label="$t('close')" :value="$t('close')"></el-option>
<el-option :label="$t('open')" :value="$t('open')"></el-option>
</el-select>
</el-form-item>
</el-form>
<div>
<p>
注意开启后模块主动向服务器发送注册包此功能用于辨识设备
first:模块建议时发送注册包,every:每次发送数据时发送注册包
</p>
</div>
<section style="width: 50%;align-items: center;display: flex">
{{$t('toWifi.Note')}}
</section>
</div>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">保存</el-button>
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="submitForm">{{$t('save')}}</el-button>
<el-button @click="dialogVisible = false">{{$t('cancel')}}</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import { SaveUserAnswer, GetUserAnswer } from "@/api/user";
import {SaveUserAnswer, GetUserAnswer, getQueryAnswer} from "@/api/user";
export default {
data() {
return {
@ -170,17 +170,17 @@ export default {
wxpz_mm: "",
},
rules: {
ckcssz_btl: [{ required: true, trigger: "change", message: "必选" }],
ckcssz_jyw: [{ required: true, trigger: "change", message: "必选" }],
ckcssz_lk: [{ required: true, trigger: "change", message: "必选" }],
ckcssz_zdybtl: [{ required: true, trigger: "change", message: "必选" }],
ckcssz_sjw: [{ required: true, trigger: "change", message: "必选" }],
ckcssz_tzw: [{ required: true, trigger: "change", message: "必选" }],
ckcssz_485: [{ required: true, trigger: "change", message: "必选" }],
qtsz_ckzdcz: [{ required: true, trigger: "change", message: "必选" }],
qtsz_zcblx: [{ required: true, trigger: "change", message: "必选" }],
qtsz_zdyxtb: [{ required: true, trigger: "change", message: "必选" }],
qtsz_tjzffgn: [{ required: true, trigger: "change", message: "必选" }],
ckcssz_btl: [{ required: true, trigger: "change", message: this.$t('required') }],
ckcssz_jyw: [{ required: true, trigger: "change", message: this.$t('required') }],
ckcssz_lk: [{ required: true, trigger: "change", message: this.$t('required') }],
ckcssz_zdybtl: [{ required: true, trigger: "change", message: this.$t('required') }],
ckcssz_sjw: [{ required: true, trigger: "change", message: this.$t('required')}],
ckcssz_tzw: [{ required: true, trigger: "change", message: this.$t('required') }],
ckcssz_485: [{ required: true, trigger: "change", message: this.$t('required') }],
qtsz_ckzdcz: [{ required: true, trigger: "change", message: this.$t('required') }],
qtsz_zcblx: [{ required: true, trigger: "change", message: this.$t('required') }],
qtsz_zdyxtb: [{ required: true, trigger: "change", message: this.$t('required') }],
qtsz_tjzffgn: [{ required: true, trigger: "change", message: this.$t('required') }],
},
};
},
@ -211,7 +211,6 @@ export default {
user_id: this.user_id,
// user_id: "USER202307301109254198",
});
console.log(answers);
if (answers.data.data && answers.data.state) {
let obj = JSON.parse(answers.data.data.mark_value);
this.ruleForm.ckcssz_btl = obj.ckcssz_btl;
@ -233,6 +232,32 @@ export default {
this.ruleForm.wxpz_jmms = obj.wxpz_jmms;
this.ruleForm.wxpz_jmsf = obj.wxpz_jmsf;
this.ruleForm.wxpz_mm = obj.wxpz_mm;
}else{
getQueryAnswer({
mark: "CKFWQ_wx",
user_id: this.user_id
}).then(res => {
let obj = JSON.parse(res.data.data.r3);
this.ruleForm.ckcssz_btl = obj.ckcssz_btl;
this.ruleForm.ckcssz_jyw = obj.ckcssz_jyw;
this.ruleForm.ckcssz_lk = obj.ckcssz_lk;
this.ruleForm.ckcssz_zdybtl = obj.ckcssz_zdybtl;
this.ruleForm.ckcssz_sjw = obj.ckcssz_sjw;
this.ruleForm.ckcssz_tzw = obj.ckcssz_tzw;
this.ruleForm.ckcssz_485 = obj.ckcssz_485;
this.ruleForm.qtsz_ckzdcz = obj.qtsz_ckzdcz;
this.ruleForm.qtsz_zcblx = obj.qtsz_zcblx;
this.ruleForm.qtsz_zdyxtb = obj.qtsz_zdyxtb;
this.ruleForm.qtsz_tjzffgn = obj.qtsz_tjzffgn;
this.ruleForm.ytwgn_kqwk = obj.ytwgn_kqwk;
this.ruleForm.ytwgn_wkgzfs = obj.ytwgn_wkgzfs;
this.ruleForm.wkmssz_wkms = obj.wkmssz_wkms;
this.ruleForm.wxpz_gzms = obj.wxpz_gzms;
this.ruleForm.wxpz_wlmc = obj.wxpz_wlmc;
this.ruleForm.wxpz_jmms = obj.wxpz_jmms;
this.ruleForm.wxpz_jmsf = obj.wxpz_jmsf;
this.ruleForm.wxpz_mm = obj.wxpz_mm;
})
}
},
//
@ -254,22 +279,26 @@ export default {
};
</script>
<style scoped lang="less">
::v-deep .el-form-item__content{
margin-left: 0 !important;
}
.formOne {
display: flex;
justify-content: space-around;
//justify-content: space-around;
div {
display: flex;
align-items: center;
//align-items: center;
justify-content: center;
p {
width: 70%;
width: 50%;
}
}
}
.demo-ruleForm {
.demo-ruleForm ,.demo-ruleForm1{
width: 50%;
}
</style>

531
src/language/en.js Normal file
View File

@ -0,0 +1,531 @@
import agreement from "@/language/json/agreement.json";
export default {
lan: 'LAN口',//LAN口
wan: 'WAN口',//WAN口
required: '必选',//必选
open: '开启',//开启
close: '关闭',//关闭
valid: '有效',
Please: '请输入',
select: '请选择',
gateway: '网关',
// 保存和取消
save: '保存',
cancel: '取消',
confirm: '确定',
addChannel: '新增通道',//新增通道
addDevice: '新建设备',//新建设备
del: '删除',//删除
edit: '编辑',//编辑
put: '收起',
// DB/斥候-ip配置有线网关
wiredgatewayip: {
title: 'IP设置',
prompt: '注意:本页面涉及排错,请检查修改默认值',
port: '网口',
SubnetMask: '子网掩码',
IP: 'IP地址',
gateway: '默认网关',//默认网关
DNS1: '首选DNS',
DNS2: '备选DNS',
MAC: 'MAC地址',//MAC地址
copy: '复制',//拷贝
networkType: '网络类型',//网络类型
gateWay: '网关:',//网关
// 校验
rules: {
ippz_wllx: '请输入网络类型',//请输入网络类型
ippz_ip: '请输入IP地址',//请输入IP地址
ippz_ip1: '请输入有效的IP地址',
ippz_zwym: '请输入子网掩码',//请输入子网掩码
ippz_zwym1: '请输入有效的子网掩码',
ippz_dns_by: '请输入备用的DNS服务器地址',//请输入备用的DNS服务器地址
ippz_dns_by1: '请输入有效的备用的DNS服务器地址'
}
},
//DB/斥候-ip配置无线网关
wirelessgatewayip: {
title: 'IP设置',//标题
prompt: '注意:本页面涉及排错,请检查修改默认值',//提示
SSID: 'SSID:', //SSID
password: '密码:',//密码
SubnetMask: '子网掩码:',//子网掩码
IP: 'IP地址:',//ip地址
gateway: '默认网关:',//默认网关
DNS1: '首选DNS:',//首选dns
DNS2: '备选DNS:',//备选dns
MAC: 'MAC地址:',//MAC地址
copy: '复制',//拷贝
method: '方式',//方式
Wired: '有线',//有线
WIFI: 'WiFi',//无线
encryptionMethod: '加密方式:',//加密方式
certificationMethod: '认证方式:',//认证方式-
clientSSID: '客户端SSID:',//客户端SSID
rules:{
ippz_zwym: '请输入子网掩码', //请输入子网掩码
ippz_zwym1:'请输入有效子网掩码',//请输入有效子网掩码
ippz_ip:'请输入IP地址',//请输入IP地址
ippz_ip1:'请输入有效IP地址',//请输入有效IP地址
ippz_mrwg: '请输入的网关地址',//请输入的网关地址
ippz_mrwg1: '请输入有效的网关地址',//请输入有效的网关地址
ippz_dns_sx:'请输入的主DNS服务器地址',//请输入的主DNS服务器地址
ippz_dns_sx1:'请输入有效的主DNS服务器地址',//请输入有效的主DNS服务器地址
ippz_dns_by: '请输入备用的服务器地址',//请输入备用的服务器地址
ippz_dns_by1: '请输入有效的备用的服务器地址',
ippz_mac:"请输入mac地址",//请输入mac地址
ippz_wifi_ssid:"请输入SSID", //请输入SSID
ippz_wifi_mm:"请输入密码",//请输入密码
}
},
//DB/斥候-有线无线网关配置
dbcollectiongate: {
title: '新建网关',
name: '网关名称:',
ID: '网关ID:',
type: '网关类型:',
//请确认选择的网关类型与网关实体一致:否则该工程无法下载至实体网关
dialogContent: '请确认选择的网关类型与网关实体一致:否则该工程无法下载至实体网关',//弹窗提示信息
dialogTitle: '系统提示',//系统提示
options1: [
{
value: "有线区网关1",
label: "有线区网关1",
},
{
value: "无线区网关1",
label: "无线区网关1",
},
],
// 斥候有线工业网关-数据采集配置-网关配置
options2: [
{
value: "有线区网关2", //有线区网关
label: "有线区网关2",
},
{
value: "无线区网关2", //无线区网关
label: "无线区网关2",
},
],
options3: [
{
value: "loT Lite网关",
label: "loT Lite网关",
},
{
value: "MODBUS网关",
label: "MODBUS网关",
},
{
value: "BACNET网关",
label: "BACNET网关",
},
{
value: "OPC UA网关",
label: "OPC UA网关",
},
{
value: "OPC DA网关",
label: "OPC DA网关",
},
{
value: "loT网关",
label: "loT网关",
},
],
// 校验
rules: {
wgpz_wgmc: '请选择网关名称',//请选择网关名称
wgpz_wgid: '请选择网关ID',//请选择网关ID
wgpz_wglx: '请选择网关类型',//请选择网关类型
},
},
// DB-通道配置
channelconfig: {
title: '通道参数设置',//通道参数设置
name: '通道名称:',//通道名称
channel: '通道:',//通道
driverName: '驱动名称:',//驱动名称
IP: 'IP地址:',//IP地址
port: '端口号:',//端口号
overTime: '超过时间(ms):',//超过时间
intervalTime: '间隔时间(ms):',//间隔时间
pollTime: '轮询时间(ms):', //轮询时间
retryCount: '重复次数:', //重复次数
title1: '高级参数',//高级参数
check: '采集使用连续地址',//采集使用连续地址
reading: '读写占空比',//读写占空比
agreement: agreement.en,
agreementName: '协议选择',
serialPort: '串口号:',//串口号
baudRate: '波特率:',// 波特率
dataBits: '数据位:',// 数据位
stopBit: '停止位:',// 停止位
parityCheck: '奇偶校验:',// 奇偶校验
options: [
{
value: "网口",
label: "网口",
},
{
value: "串口",
label: "串口",
},
],
options1: [
{
value: "有线区Channel1", //有线区通道
label: "有线区Channel1",
},
{
value: "无线区Channel1", //无线区通道
label: "无线区Channel1",
},
],
rules: {
tdpz_tdmc: '请输入通道名称',//请输入通道名称
tdpz_td: '请输入通道',//请输入通道
tdpz_qdmc: '请输入驱动名称',//请输入驱动名称
tdpz_ip: '请输入IP地址',//请输入IP地址
ip2: '请输入有效的IP地址',//请输入有效的IP地址
tdpz_port: '请输入端口号',//请输入端口号
tdpz_cssj: '请输入超出时间',//请输入超出时间
tdpz_jgsj: '请输入间隔时间',//请输入间隔时间
tdpz_lxsj: '请输入轮询时间',//请输入轮询时间
tdpz_cfcs: '请输入重复次数',//请输入重复次数
tdpz_chuankou: '',
tdpz_btl: '',
tdpz_tzw: '',
tdpz_sjw: '',
tdpz_jojy: '',
}
},
// DB-设备属性配置
configuration: {
deviceProperties: '设备属性',//设备属性
deviceID: '设备ID:',//设备ID
deviceName: '设备名称:',//设备名称
MACAddress: 'MAC地址:',//MAC地址
deviceAddress:'设备地址:',//设备地址
disableDevice: '禁用地址',//禁用地址
addressSelection: '基地址选择',//基地址选择
options1: [
{
value: "有线区加工设备1",//有线区加工设备1
label: "有线区加工设备1",
},
{
value: "无线区加工设备1",//无线区加工设备1
label: "无线区加工设备1",
},
],
options2: [
{
value: "有线区精雕1",//有线区精雕1
label: "有线区精雕1",
},
{
value: "无线区精雕1",//无线区精雕1
label: "无线区精雕1",
},
],
// 校验
rules: {
sbpz_sbid: '请输入设备ID',//请输入设备ID
sbpz_sbmc: '请输入设备名称',//请输入设备名称
sbpz_mac: '请输入MAC地址',//请输入设备地址
sbpz_sbdz:'请输入设备地址'
}
},
// DB-数据采集
dbcollect: {
TagID: 'TagID',//TagID
name: '名称',//名称
dataArea: '数据区',//数据区
registerAddress: '寄存地址(十进制)',//寄存地址(十进制)
type: '采集数据类型',//采集数据类型
byteOrder: '字节序',//字节序
readWrite: '读写属性',//读写属性
Multiplier: '倍率',//倍率
uploadMode:'上传模式',//上传模式
options7: [
{
value: "读写",//读写
label: "读写",
},
{
value: "只读",//只读
label: "只读",
},
{
value: "只写",//只写
label: "只写",
},
]
},
//DB-mqtt数据采集点
mqttClient: {
enable: '启动',//启动
serverIp: '服务器IP:',//服务器IP
port: '端口号:',//端口号
gatewaySN: '网关SN号:',//网关sn号
realTimePublish: '实时数据发布的主题',//实时数据发布的主题
uploadMode: '上传模式:',//上传模式
uploadCycle: '上传周期(s):',//上传周期
dataFilter: '数据过滤:',//数据过滤
oneCheck: '值改变',//值改变
twoCheck: '采集成功',//采集成功
threeCheck: '时间戳改变',//时间戳改变
deviceName: '设备名称',//设备名称
rules: {
mqtt_port: "请输入端口",//请输入端口
mqtt_wgsn: "请输入网关ID",//请输入网关ID
mqtt_sssjfbzt: "请输入主题",//请输入主题
mqtt_scms: "请输入上传模式",//请输入上传模式
mqtt_sczq: "请输入上传周期",//请输入上传周期
mqtt_sjgl: "请输入数据过滤",//请输入数据过滤
ip1: '请输入IP地址',//请输入IP地址
ip2: '请输入有效的IP地址',//请输入有效的IP地址
}
},
// 斥候设备配置
reconnoitreConfiguration: {
edit: '编辑设备',//编辑设备
title: '新建设备',//新建设备
name: '设备名称:',//设备名称
controllerProtocol: '控制器协议:',//控制器协议
IPAddress: 'IP地址:',//IP地址
portNumber: '端口号:',//端口号
slaveAddress: '从站地址:',//从站地址
pollTime: '轮询周期(s):',//轮询周期(s)
params: '高级参数',//高级参数
millisecond: '启用毫秒采集:',//启用毫秒采集
batch: '启用批量采集:',//启用批量采集
maxBatch: '最大批量采集数:',//最大批量采集数
onChangData: '周期上报OnChange数据:',//周期上报OnChange数据
overTime: '采集超过时间(ms):',//采集超过时间(ms)
intervalTime: '通讯时间间隔(ms):',//通讯时间间隔(ms)
writeFunction1: '线圈寄存器写入功能码:',//线圈寄存器写入功能码
writeFunction2: '保持寄存器写入功能码:',//保持寄存器写入功能码
// 校验提示码
rules: {
sbpz_sbmc: "请输入通道名称",//请输入通道名称
sbpz_kzqxy: "请输入控制协议",//请输入控制协议
sbpz_ip: '请输入IP地址',//请输入IP地址
sbpz_ip1: '请输入有效IP地址',//请输入IP地址
sbpz_czdz: "请输入从站地址",//请输入从站地址
sbpz_port: "请输入端口号",//请输入端口号
sbpz_lxzq: "请输入轮询时间",//请输入轮询时间
sbpz_qyhmcj: "启用毫秒采集",//启用毫秒采集
sbpz_qyplcj: "启用批量采集",//启用批量采集
sbpz_zdplcjs: "请输入最大批量采集数",//请输入最大批量采集数
sbpz_cjcgsj: "请输入采集超过时间",//请输入采集超过时间
sbpz_zqsbonchange: "周期上报Onchange数据",//周期上报Onchange数据
sbpz_txsjjg: "请输入通讯时间间隔",//请输入通讯时间间隔
}
},
// 斥候网关mqtt
chmqtt: {
title: '标准mqtt:',//标准mqtt
enable: '启用:',//启用
serveIp: '服务器IP:',//服务器ip
GatewaySN: '网关SN:',//网关SN
port: '端口:',//网口
realTimePublish: '实施数据发布主题:',//实施数据发布主题
deviceName: '设备名称',//设备名称
release: '信息发布',//信息发布
rules:{
mqtt_ip:'请输入IP地址',//请输入IP地址
mqtt_ip1:'请输入有效IP地址',//请输入有效IP地址
mqtt_wgsn:"请输入网关SN",//请输入网关SN
mqtt_port:"请输入端口",//请输入端口
mqtt_keepalive:"请输入KeepAlive",//请输入KeepAlive
mqtt_publishing:"请输入主题",//请输入主题
// mqtt_qos:"Please enter Gateway SN number",//请输入上传周期
}
},
// 串口ip配置
ckipconfig: {
title: 'IP配置',//IP配置
prompt: '本页面涉及排错,请检查修改默认值',
ipMethod: 'IP获取方式:',//IP获取方式
getDNS: 'DNS获取方式:',//DNS获取方式
localIP: '本地地址:',//本地地址
mask: '子网掩码:',//子网掩码
gateway: '网关地址:',//网关地址
primaryDNS: '主DNS服务器:',//主DNS服务器
backupDNS: '备用DNS服务器:',//备用DNS服务器
rules: {
ipMethod: '请选择IP获取方式',//请选择IP获取方式
getDNS: '请选择DNS获取方式',//请选择DNS获取方式
localIP: '请输入本地地址',//请输入本地地址
localIP1: '请输入有效本地地址',
mask: '请输入子网掩码',//请输入子网掩码
mask1: '请输入有效子网掩码',
gateway: '请输入网关地址',//请输入网关地址
gateway1: '请输入有效网关地址',
primaryDNS: '请输入主DNS服务器',//请输入主DNS服务器
primaryDNS1: '请输入有效主DNS服务器',
backupDNS: '请输入备用DNS服务器',//请输入备用DNS服务器
backupDNS1: '请输入有效备用DNS服务器'
}
},
// 串口端口配置
ckportconfig: {
title: '端口配置',//端口配置
baudRate: '波特率(bps):',//波特率(bps)
dataBits: '数据位(bit):',//数据位(bit)
checkBit: '校验位:',//校验位
stopBit: '停止位:',//停止位
controlMode: '流控模式:',//流控模式
packagingLength: '打包长度(bytes):',//打包长度
packagingTime: '打包时长(ms):',//打包时长
synBaudRate: '同步波特率(RF2217):',//同步波特率
checked: '使能串口心跳包',//使能串口心跳包
rules: {
dkpz_btl: "请选择波特率",
dkpz_sjw: "请选择数据位",
dkpz_tzw: "请选择停止位",
dkpz_jyw: "请选择检验位",
dkpz_lkms: "请选择流控模式",
dkpz_dbcd: "请输入打包长度",
dkpz_dbsj: "请输入打包时间",
dkpz_tbbtl: "请选择同步波特率",//请选择同步波特率
}
},
//485towifi-串口及网络协议设置
toWifi: {
title: '串口及网络协议设置',//串口及网络协议设置
parameter: '串口参数设置',//串口参数设置
baudRate: '波特率(bps):',//波特率(bps):
dataBit: '数据位(bit):',//数据位(bit):
checkBit: '检验位:',//检验位:
stopBit: '停止位:',//停止位
controlMode: '流控:',//流控:
function: '485功能:',//485功能:
adaptiveBaudRate: '自适应波特率(类RFC2117):',//自适应波特率(类RFC2117)
other: '其他设置',//其他设置
portAuto: '串口自动成频:',//串口自动成频:
packageType: '注册包类型',//注册包类型
customPacket: '自定义心跳包',//自定义心跳包
socketFunction: '套接字分发功能',//套接字分发功能
Note: '注意:开启后,模块主动向服务器发送注册包,此功能用于辨识设备。模块建立时发送注册包,每次发送数据时发送注册包',
},
// 串口服务器-485towifi-网口配置
cknet: {
title: '网口设置',//网口设置
Ethernet: '以太网功能',//以太网功能
openNetworkPort: '开启网口:',//开启网口
workingMode: '网口工作方式:',//网口工作方式
networkModeSetting: '网口模式设置',//网口模式设置
networkMode: '网口模式:',//网口模式
},
// 串口服务器-485towifi-无线配置
ckwireless: {
title: '无线设置',//无线设置
networkName: '网络名称:',//网络名称
workingMode: '工作方式:',//工作方式
encryptionMode: '加密方式:',//加密方式
encryptionAlgorithm: '加密算法:',//加密算法
password: '密码:',//密码
mode:'模式',//模式
Wireless:'无线区无线网',//无线区无线网
WirelessName:'无线网名称',//无线网名称
},
//工业网闸配置-网络管理
networkmanagement: {
management: '网络管理',//网络管理
prompt: '本页面涉及排错,请检查修改默认值',//本页面涉及排错,请检查修改默认值
internalNetworkCard: '内网网卡',//内网网卡
networkCardName: '网卡名称',//网卡名称
IPV4Address: 'IPV4地址',//IPV4地址
IPV4Mask: 'IPV4掩码',//IPV4掩码
},
//工业网闸配置-对象管理
objmanagement: {
title: '对象管理',//对象管理
createObject: '新增对象',//新增对象
num: '序号',//序号
objectName: '对象名称',//对象名称
IPAddress: 'IP地址信息',//IP地址信息
Operation: '操作',//操作
ipType: 'IP类型:',//IP类型:
},
// 工业网闸配置-策略管理
strategyManagement: {
title: '策略管理',//策略管理
createStrategy: '新增策略',//新增策略
num: '序号',//序号
name: '名称',//名称
Protocol: '协议',//协议
workingMode: '工作模式',//工作模式
sourceObject: '源对象',//源对象
sourcePort: '源端口',//源端口
entranceNetworkCard: '入网网卡',//入网网卡
entranceIP: '入口IP',//入口IP
entranceGateway: '入口网关',//入口网关
exportNetworkCard: '出口网卡',//出口网卡
exportIP: '出口IP',//出口IP
exportGateway: '出口网关',//出口网关
targetObject: '目的对象',//目的对象
targetPort: '目的端口',//目的端口
Operation: '操作',//操作
},
//工业网闸配置-策略管理-添加策略
addstrategy:{
title:'添加策略:',//添加策略
name:'名称:',//名称
protocol:'协议:',//协议
workingMode:'工作模式:',//工作模式
undefinedCommand:'未定义命令:',//未定义命令
sourceObject:'源对象',//源对象
sourcePort:'源端口',//源端口
targetObject:'目的对象',//目的对象
targetPort:'目的端口:',//目的端口
entranceGateway:'入口网关',//入口网关
entranceNetworkCard:'入口网卡',//入口网卡
entranceIP:'入口IP',//入口IP
exportGateway:'出口网关',//出口网关
exportNetworkCard:'出口网卡',//出口网卡
exportIP:'出口IP',//出口IP
recordLogs:'记录日志',//记录日志
commandList:'命令列表',//命令列表
createCommand:'新增命令',//新增命令
num:'序号',//序号
command:'命令(功能码)',//命令(功能码)
startingAddress:'起始地址',//起始地址
addressLength:'地址长度',//地址长度
description:'描述',//描述
action:'动作',//动作
Operation:'操作',//操作
deviceID:'设备ID',//设备ID
},
//网络优化-网关配置
ntconfig: {
title: '网关配置',//网关配置
createGateway: '新建网关',//新建网关
num: '序号',//序号
gatewayId: '网关ID',//网关ID
gatewayNumber: '网关编号',//网关编号
gatewayName: '网关名称',//网关名称
gatewayType: '网关类型',//网关类型
details: '详细',//详细
parameterConfiguration: '参数配置',//参数配置
check: '查看',//查看
},
// 网络优化-网关维护
ntmaintenance: {
createParameter: '新增参数',//新增参数
num: '序号',//'序号'
gatewaySNNumber: '网关编号',//网关编号
parameterKey: '参数Key',//参数Key
parameterName: '参数名称',//参数名称
decimalPlaces: '小数位数',//小数位数
setValue: '设定值',//设定值
deviationValue: '偏差值',//偏差值
affiliatedGateway: '所属网关',//所属网关
}
}

17
src/language/index.js Normal file
View File

@ -0,0 +1,17 @@
import Vue from 'vue'
import VueI18n from 'vue-i18n' //引入vue-i18n组件
import zh from './zh';
import en from './en';
Vue.use(VueI18n)
//注册i18n实例并引入语言文件
const i18n = new VueI18n({
locale: 'en', // 语言标识(缓存里面没有就用中文)
fallbackLocale:'en' , //没有英文的时候默认中文语言
messages: {
zh,
en
}
});
export {i18n}

View File

@ -0,0 +1,200 @@
{
"en": [
{
"label": "通用标准",
"children": [
{
"label": "ModbusTCPClient"
},
{
"label": "ModbusRTU_over_TCP"
},
{
"label": "OPCUAClient"
},
{
"label": "OPCDAClient"
},
{
"label": "MQTTClient"
},
{
"label": "OPCXMLDAClient"
},
{
"label": "环保212协议网口监听"
}
]
},
{
"label": "PLC",
"children": [
{
"label": "Slemens S7-200 Network"
},
{
"label": "Slemens S7-300 Network"
},
{
"label": "Slemens S7-400 Network"
},
{
"label": "Slemens S7-1200 Network"
},
{
"label": "Slemens S7-1500 Network"
},
{
"label": "EtherNet/IP CIP协议(AB OMR ON)"
},
{
"label": "MC_Qna-3E(三菱 基恩士 松下)"
},
{
"label": "MC_A-1E_Binary"
},
{
"label": "OMRON-FINS"
},
{
"label": "横河PLC"
},
{
"label": "西门子FetchWirte"
},
{
"label": "富机 FUJI_SPH_NET"
},
{
"label": "基恩士上位链路通讯"
}
]
},
{
"label": "智能建筑",
"children": []
},
{
"label": "厂家定制",
"children": []
},
{
"label": "电力行业标准",
"children": [
{
"label": "IEC104"
},
{
"label": "DLT645_over_TCP"
}
]
},
{
"label": "CNC数控",
"children": []
},
{
"label": "私有协议",
"children": []
}
],
"zh": [{
"label": "General standards",
"children": [
{
"label": "ModbusTCPClient"
},
{
"label": "ModbusRTU_over_TCP"
},
{
"label": "OPCUAClient"
},
{
"label": "OPCDAClient"
},
{
"label": "MQTTClient"
},
{
"label": "OPCXMLDAClient"
},
{
"label": "Environmental protection 212 protocol network"
}
]
},
{
"label": "PLC",
"children": [
{
"label": "Slemens S7-200 Network"
},
{
"label": "Slemens S7-300 Network"
},
{
"label": "Slemens S7-400 Network"
},
{
"label": "Slemens S7-1200 Network"
},
{
"label": "Slemens S7-1500 Network"
},
{
"label": "EtherNetlP CIP Protocol (AB OMRON)"
},
{
"label": "MC_Qna-3E (Mitsubishi Keinz Panasonic)"
},
{
"label": "MC_A-1E_Binary"
},
{
"label": "OMRON-FINS"
},
{
"label": "Yokogawa PLC"
},
{
"label": "Siemens FetchWrite"
},
{
"label": "FUJL_SPH_NET"
},
{
"label": "Keyence upper link communication"
}
]
},
{
"label": "Intelligent buildings",
"children": []
},
{
"label": "Customized by the manufacturer",
"children": []
},
{
"label": "Electricity industry standards",
"children": [
{
"label": "IEC104"
},
{
"label": "DLT645_over_TCP"
}
]
},
{
"label": "CNC numerical control",
"children": []
},
{
"label": "Private Agreement",
"children": []
}
]
}

557
src/language/zh.js Normal file
View File

@ -0,0 +1,557 @@
import agreement from './json/agreement.json'
export default{
lan:'LAN mouth',//LAN口
wan:'WAN mouth',//WAN口
required:'required',//必选
open:'open',//开启
close:'close',//关闭
valid:' valid ',//有效
Please:'Please enter the',//请输入
select:'Please select',//请选择
gateway:' gateway',//网关
save: 'Save',//保存
cancel: 'Cancel',//取消
confirm: 'Confirm',//确定
addChannel: 'Create channel',//新增通道
addDevice:'Create device',//新建设备
del:'Del',//删除
edit:'Edit',//编辑
put:'Put it way',//收起
// DB/斥候-ip配置有线网关
wiredgatewayip: {
title: 'IP configuration',//标题
prompt: 'Attention: This page involves troubleshooting, please check and modify the default values',//提示
port: 'Ethernet port',//网口
SubnetMask: 'Subnet Mask:',//子网掩码
IP: 'IP address:',//ip地址
gateway: 'Default gateway',//默认网关
DNS1: 'Preferred DNS',//首选dns
DNS2: 'Alternative DNS:',//备选dns
MAC: 'MAC address',//MAC地址
copy: 'copy',//拷贝
DNS:'DNS',//DNS
networkType:'Network type:',//网络类型
gateWay:'Gateway:',//网关
// 校验
rules: {
ippz_wllx: 'Please enter the network type',//请输入网络类型
ippz_ip: 'Please enter a IP address',//请输入IP地址
ippz_ip1: 'Please enter a valid IP address',
ippz_zwym: 'Please enter a subnet mask',//请输入子网掩码
ippz_zwym1: 'Please enter a valid subnet mask',
ippz_dns_by: 'Please enter a alternative DNS server address',//请输入备用的DNS服务器地址
ippz_dns_by1: 'Please enter a valid alternative DNS server address'
}
},
//DB/斥候-ip配置无线网关
wirelessgatewayip: {
title: 'IP configuration',//标题
prompt: 'Attention: This page involves troubleshooting, please check and modify the default values',//提示
SSID: 'SSID:', //SSID
clientSSID:'Client SSID:',//客户端SSID
certificationMethod:'Certification method:',//认证方式-
password: 'password:',//密码
SubnetMask: 'Subnet Mask:',//子网掩码
IP: 'IP address:',//ip地址
gateway: 'Default gateway:',//默认网关
DNS1: 'Preferred DNS:',//首选dns
DNS2: 'Alternative DNS:',//备选dns
MAC: 'MAC address:',//MAC地址
copy: 'copy',//拷贝
encryptionMethod:'Encryption method:',//加密方式
method: 'Networking methods:',//方式
Wired: 'Wired',//有线
WIFI: 'WiFi',//无线
rules:{
ippz_zwym: 'Please enter a subnet mask', //请输入子网掩码
ippz_zwym1:'Please enter a valid subnet mask',//请输入有效子网掩码
ippz_ip:'Please enter a IP address',//请输入IP地址
ippz_ip1:'Please enter a valid IP address',//请输入有效IP地址
ippz_mrwg: 'Please enter a default gateway',//请输入的网关地址
ippz_mrwg1: 'Please enter a valid default gateway',//请输入有效的网关地址
ippz_dns_sx:'Please enter a preferred DNS server address',//请输入的主DNS服务器地址
ippz_dns_sx1:'Please enter a valid preferred DNS server address',//请输入有效的主DNS服务器地址
ippz_dns_by: 'Please enter a alternative DNS server address',//请输入备用的服务器地址
ippz_dns_by1: 'Please enter a valid alternative DNS server address',
ippz_mac:"Please enter the MAC address",//请输入mac地址
ippz_wifi_ssid:"Please enter the SSID", //请输入SSID
ippz_wifi_mm:"Please enter the password",//请输入密码
}
},
// DB/斥候-网关配置
dbcollectiongate: {
title: 'Create a new gateway',//新建网关
name: 'Gateway Name:',//网关名称
ID: 'Gateway ID:',//网关ID
type: 'Gateway type:',//网关类型
//请确认选择的网关类型与网关实体一致:否则该工程无法下载至实体网关
dialogContent: 'Please confirm that the selected gateway type matches the gateway entity: otherwise, the project cannot be downloaded to the physical gateway',//弹窗提示信息
dialogTitle: 'System prompt',//系统提示
// 多选框
options1: [
{
value: "Wired area gateway1", //有线区网关
label: "Wired area gateway1",
},
{
value: "Wireless area gateway1", //无线区网关
label: "Wireless area gateway1",
},
],
// 斥候有线工业网关-数据采集配置-网关配置
options2:[
{
value: "Wired area gateway2", //有线区网关
label: "Wired area gateway2",
},
{
value: "Wireless area gateway2", //无线区网关
label: "Wireless area gateway2",
},
],
options3: [
{
value: "loT Lite gateway" ,
label: "loT Lite gateway" ,
},
{
value: "MODBUS gateway" ,
label: "MODBUS gateway" ,
},
{
value: "BACNET gateway" ,
label: "BACNET gateway" ,
},
{
value: "OPC UA gateway",
label: "OPC UA gateway" ,
},
{
value: "OPC DA gateway",
label: "OPC DA gateway",
},
{
value: "loT gateway",
label: "loT gateway",
},
],
// 校验
rules: {
wgpz_wgmc:'Please select gateway name',//请选择网关名称
wgpz_wgid:'Please select gateway ID',//请选择网关ID
wgpz_wglx:'Please select gateway type',//请选择网关类型
},
},
// DB-通道配置
channelconfig: {
title: 'Channel parameter configuration',//通道参数设置
name: 'Channel name:',//通道名称
channel: 'Channel:',//通道
driverName: 'Driver Name:',//驱动名称
IP: 'IP address:',//iP地址
port: 'Port number:',//端口号
overTime: 'Over time(ms):',//超过时间
intervalTime: 'Interval time(ms):',//间隔时间
pollTime: 'poll time(ms):', //轮询时间
retryCount: 'Retry count:', //重复次数
title1: 'Channel parameter configuration',//高级参数
check: 'Collect and use continuous addresses',//采集使用连续地址
reading: 'Reading and writing duty cycle',//读写占空比
agreement: agreement.zh,//协议选择的侧边栏
agreementName: 'Protocol selection',//协议选择
serialPort: 'Serial port number:',//串口号
baudRate: 'Baud rate:',// 波特率
dataBits: 'Data bits:',// 数据位
stopBit: 'Stop bit:',// 停止位
parityCheck: 'Parity check:',// 奇偶校验
options:[
{
value: "Ethernet port",
label: "Ethernet port",
},
{
value: "Serial port",
label: "Serial port",
},
],
options1: [
{
value: "Wired area channel1", //有线区通道
label: "Wired area channel1",
},
{
value: "Wireless area channel1", //无线区通道
label: "Wireless area channel1",
},
],
rules:{
tdpz_tdmc:'Please enter the channel name',//请输入通道名称
tdpz_td:'Please enter the channel',//请输入通道
tdpz_qdmc: 'Please enter the driver name',//请输入驱动名称
tdpz_ip: 'Please enter a IP address',//请输入IP地址
ip2:'Please enter a valid IP address',//请输入有效的IP地址
tdpz_port:'Please enter the port number',//请输入端口号
tdpz_cssj:'Please enter the over time(ms)',//请输入超出时间
tdpz_jgsj:'Please enter the interval time(ms)',//请输入间隔时间
tdpz_lxsj: 'Please enter the poll time(ms)',//请输入轮询时间
tdpz_cfcs:'Please enter the retry count(ms)',//请输入重复次数
tdpz_chuankou:'Please enter the Serial port number',//请输入串口号
tdpz_btl: 'Please enter the baud rate',//请输入波特率
tdpz_tzw:'Please enter the stop bit',//请输入停止位
tdpz_sjw: 'Please enter the data bits',//请输入数据位
tdpz_jojy: 'Please enter the parity check',//请输入奇偶校验
}
},
// DB-设备配置
configuration:{
deviceProperties:'Device Properties',//设备属性
deviceID:'Device ID:',//设备ID
deviceName:'Device name:',//设备名称
MACAddress:'MAC address:',//MAC地址
deviceAddress:'Device address:',//设备地址
disableDevice:'Disable device',//禁用地址
addressSelection:'Base address selection',//基地址选择
options1:[
{
value: "Wired area processing equipment 1",//有线区加工设备1
label: "Wired area processing equipment 1",
},
{
value: "Wireless area processing equipment 1",//无线区加工设备1
label: "Wireless area processing equipment 1",
},
],
options2:[
{
value: "Wired area precision carving equipment 1",//有线区精雕1
label: "Wired area precision carving equipment 1",
},
{
value: "Wireless area precision carving equipment 1",//无线区精雕1
label: "Wireless area precision carving equipment 1",
},
],
// 校验
rules:{
sbpz_sbid:'Please enter the device ID',//请输入设备ID
sbpz_sbmc:'Please enter the device name',//请输入设备名称
sbpz_mac:'Please enter the MAC address',//请输入设备地址
sbpz_sbdz:'Please enter the MAC address'
}
},
// DB/斥候-数据采集
dbcollect:{
TagID:'TagID',//TagID
name:'name',//名字
dataArea:'Data area',//数据区
registerAddress:'Register address (base 10)',//寄存地址(十进制)
type:'Data collection type',//采集数据类型
byteOrder:'Byte order',//字节序
readWrite:'Read Write Properties',//读写属性
Multiplier:'Multiplier',//倍率
uploadMode:'Upload mode',//上传模式
options7: [
{
value: "Reading and writing",//读写
label: "Reading and writing",
},
{
value: "read-only",//只读
label: "read-only",
},
{
value: "Only write",//只写
label: "Only write",
},
]
},
//DB-mqtt数据采集点
mqttClient:{
enable:'Enable',//启动
serverIp:'Server IP:',//服务器IP
port:'Port:',//端口号
gatewaySN:'Gateway SN number:',//网关sn号
realTimePublish:'The theme of real-time data publishing',//实时数据发布的主题
uploadMode:'Upload mode:',//上传模式
uploadCycle:'Upload cycle(s):',//上传周期
dataFilter:'Data filtering:',//数据过滤
oneCheck:'Value change',//值改变
twoCheck:'Collecting achievement',//采集成功
threeCheck:'Timestamp change',//时间戳改变
deviceName:'Device name',//设备名称
rules:{
mqtt_port:"Please enter the port",//请输入端口
mqtt_wgsn:"Please enter the server IP",//请输入网关ID
mqtt_sssjfbzt: "Please enter the publishing",//请输入主题
mqtt_scms:"Please enter the upload mode",//请输入上传模式
mqtt_sczq: "Please enter the upload cycle(s)",//请输入上传周期
mqtt_sjgl: "Please enter the data filtering",//请输入数据过滤
ip1: 'Please enter a IP address',//请输入IP地址
ip2:'Please enter a valid IP address',//请输入有效的IP地址
}
},
// 斥候设备配置
reconnoitreConfiguration:{
edit:'Edit device',//编辑设备
title:'Create device',//新建设备
name:'Device name:',//设备名称
controllerProtocol:'Controller Protocol:',//控制器协议
IPAddress:'IP address:',//IP地址
portNumber:'Port Number:',//端口号
slaveAddress:'Slave address:',//从站地址
pollTime:'poll Time(s):',//轮询周期(s)
params:'Advanced parameters',//高级参数
agreementName: 'Protocol selection',//协议选择
millisecond:'Enable millisecond collection:',//启用毫秒采集
batch:'Enable batch collection:',//启用批量采集
maxBatch:'Maximum batch collection quantity:',//最大批量采集数
onChangData:'Periodic reporting of Onchange data:',//周期上报OnChange数据
overTime:'Collection overtime(ms):',//采集超过时间(ms)
intervalTime:'Communication time interval(ms):',//通讯事件间隔(ms)
writeFunction1:'Write function code to coil register:',//线圈寄存器写入功能码
writeFunction2:'Keep Register Write Function Code:',//保持寄存器写入功能码
// 校验提示码
rules:{
sbpz_sbmc: "Please enter the channel name",//请输入通道名称
sbpz_kzqxy:"Please enter the Controller Protocol",//请输入控制协议
sbpz_ip: 'Please enter a IP address',//请输入IP地址
sbpz_ip1: 'Please enter a valid IP address',//请输入IP地址
sbpz_czdz: "Please enter the slave address",//请输入从站地址
sbpz_port:"Please enter the port number",//请输入端口号
sbpz_lxzq:"Please enter the poll Time(s)",//请输入轮询时间
sbpz_qyhmcj:"Use Enable millisecond collection",//启用毫秒采集
sbpz_qyplcj:"Use Enable batch collection",//启用批量采集
sbpz_zdplcjs:"Please enter the maximum batch collection quantity",//请输入最大批量采集数
sbpz_cjcgsj:"Please enter the collection overtime(ms)",//请输入采集超过时间
sbpz_zqsbonchange:"周期上报Onchange数据",//周期上报Onchange数据
sbpz_txsjjg: "Please enter the communication time interval(ms)",//请输入通讯时间间隔
}
},
// 斥候网关mqtt
chmqtt:{
title:'Standard MQTT:',//标准mqtt
enable:'Enable:',//启用
serveIp:'Serve IP:',//服务器ip
GatewaySN:'Gateway SN number:',//网关SN
port:'Port:',//网口
realTimePublish:'The theme of real-time data publishing:',//实施数据发布主题
deviceName:'Device name',//设备名称
release:'Information release',//信息发布
rules:{
mqtt_ip:'Please enter a IP address',//请输入IP地址
mqtt_ip1:'Please enter a valid IP address',//请输入有效IP地址
mqtt_wgsn:"Please enter gateway SN number",//请输入网关SN
mqtt_port:"Please enter port",//请输入端口
mqtt_keepalive:"Please enter keepAlive",//请输入KeepAlive
mqtt_publishing:"Please enter publishing",//请输入主题
// mqtt_qos:"Please enter Gateway SN number",//请输入上传周期
}
},
// 串口ip配置
ckipconfig:{
title:'IP configuration',//IP配置
prompt:'This page involves troubleshooting, please check and modify the default values',//本页面涉及排错,请检查修改默认值
ipMethod:'IP acquisition method:',//IP获取方式
getDNS:'DNS acquisition method:',//DNS获取方式
localIP:'Local IP:',//本地地址
mask:'Subnet Mask:',//子网掩码
gateway:'Default gateway:',//网关地址
primaryDNS:'Primary DNS server:',//主DNS服务器
backupDNS:'Backup DNS server',//备用DNS服务器
rules:{
ipMethod:'Please select IP acquisition method',//请选择IP获取方式
getDNS:'Please select DNS acquisition method',//请选择DNS获取方式
localIP:'Please enter the local IP',//请输入本地地址
localIP1:'Please enter the valid local IP',
mask:'Please enter the subnet mask',//请输入子网掩码
mask1:'Please enter the valid subnet mask',
gateway:'Please enter the Default gateway',//请输入网关地址
gateway1:'Please enter the valid Default gateway',
primaryDNS:'Please enter the Primary DNS server',//请输入主DNS服务器
primaryDNS1:'Please enter the valid the Primary DNS server',
backupDNS:'Please enter the Backup DNS server',//请输入备用DNS服务器
backupDNS1:'Please enter the valid Backup DNS server'
}
},
// 串口端口配置
ckportconfig:{
title:'Port configuration',//端口配置
baudRate:'Baud rate(bps):',//波特率(bps)
dataBits:'Data bits(bit):',//数据位(bit)
checkBit:'Check bit:',//校验位
stopBit:'Stop bit',//停止位
controlMode:'Flow control mode',//流控模式
packagingLength:'Packaging length(bytes)',//打包长度
packagingTime:'Packaging time(ms)',//打包时长
synBaudRate:'Synchronous Baud Rate(RF2217)',//同步波特率
checked:'Enable serial heartbeat packet',//使能串口心跳包
rules:{
dkpz_btl:"Please select Baud rate(bps)",
dkpz_sjw:"Please select Data bits(bit)",
dkpz_tzw:"Please select Stop bit",
dkpz_jyw:"Please select Check bit",
dkpz_lkms: "Please select Flow control mode",
dkpz_dbcd:"Please select Packaging length(bytes)",
dkpz_dbsj: "Please select packagingTime",
dkpz_tbbtl:"Please select Synchronous Baud Rate(RF2217)",//请选择同步波特率
}
},
//485towifi-串口及网络协议设置
toWifi:{
title:'Serial port and network protocol configuration',//串口及网络协议设置
parameter:'Serial port parameter settings',//串口参数设置
baudRate:'Baud rate(bps):',//波特率(bps):
dataBit:'Data bits(bit)',//数据位(bit):
checkBit:'Check bit:',//检验位:
stopBit:'Stop bit:',//停止位
controlMode:'Flow control mode:',//流控:
function:'485 Function:',//485功能:
adaptiveBaudRate:'Adaptive baud rate(similar to RFC2117):',//自适应波特率(类RFC2117)
other:'Other settings',//其他设置
portAuto:'Serial port automatic framing',//串口自动成频:
packageType:'Registration package type',//注册包类型
customPacket:'Custom heartbeat packet',//自定义心跳包
socketFunction:'Socket distribution function',//套接字分发功能
Note:'Note:After activation, the module actively sends a registration package to the server, which is used to identify the device.First: Send registration package when module is established,every: Send registration package every time data is sent'
},
// 串口服务器-485towifi-网口配置
cknet:{
title:'Network port configuration',//网口设置
Ethernet:'Ethernet functionality',//以太网功能
openNetworkPort:'Open network port:',//开启网口
workingMode:'Network port working mode:',//网口工作方式
networkModeSetting:'Network port mode settings',//网口模式设置
networkMode:'Network port mode:',//网口模式
},
// 串口服务器-485towifi-无线配置
ckwireless:{
title:'Wireless configuration',//无线设置
networkName:'Network name:',//网络名称
workingMode:'Working mode:',//工作方式
encryptionMode:'Encryption mode:',//加密方式
encryptionAlgorithm:'Encryption algorithm:',//加密算法
password:'Password:',//密码
mode:'mode',//模式
Wireless:'Wireless Zone Wireless Network',//无线区无线网
WirelessName:'Wireless Network Name',//无线网名称
},
//工业网闸配置-网络管理
networkmanagement:{
management:'Network management',//网络管理
prompt:'This page involves troubleshooting, please check and modify the default values',//本页面涉及排错,请检查修改默认值
internalNetworkCard:'Internal network card',//内网网卡
networkCardName:'Network card name',//网卡名称
IPV4Address:'IPV4 address',//IPV4地址
IPV4Mask:'IPV4 Mask',//IPV4掩码
options1: [
{
label: "有线区网闸(内网)",
value: "有线区网闸(内网)",
},
{
label: "无线区网闸(内网)",
value: "无线区网闸(内网)",
},
],
options2: [
{
label: "有线区网闸(外网)",
value: "有线区网闸(外网)",
},
{
label: "无线区网闸(外网)",
value: "无线区网闸(外网)",
},
],
},
//工业网闸配置-对象管理
objmanagement:{
title:'Object management',//对象管理
createObject:'Create object',//新增对象
num:'num',//序号
objectName:'Object name',//对象名称
IPAddress:'IP address',//IP地址信息
Operation:'Operation',//操作
ipType:'IP type:',//IP类型:
},
// 工业网闸配置-策略管理
strategyManagement:{
title:'Strategy management',//策略管理
createStrategy:'Create strategy',//新增策略
num:'num',//序号
name:'name',//名称
Protocol:'Protocol',//协议
workingMode:'Working mode',//工作模式
sourceObject:'Source Object',//源对象
sourcePort:'Source Port',//源端口
entranceNetworkCard:'Entrance network card',//入口网卡
entranceIP:'Entrance IP',//入口IP
entranceGateway:'Entrance gateway',//入口网关
exportNetworkCard:'Export network card',//出口网卡
exportIP:'Export IP',//出口IP
exportGateway:'Export gateway',//出口网关
targetObject:'Target object',//目的对象
targetPort:'Target Port',//目的端口
Operation:'Operation',//操作
},
//工业网闸配置-策略管理-添加策略
addstrategy:{
title:'Create strategy:',//添加策略
name:'Name:',//名称
protocol:'protocol:',//协议
workingMode:'Working mode:',//工作模式
undefinedCommand:'Undefined command:',//未定义命令
sourceObject:'Source Object',//源对象
sourcePort:'Source Port',//源端口
targetObject:'Target object',//目的对象
targetPort:'Target Port:',//目的端口
entranceGateway:'Entrance gateway',//入口网关
entranceNetworkCard:'Entrance network card',//入口网卡
entranceIP:'Entrance IP',//入口IP
exportGateway:'Export gateway',//出口网关
exportNetworkCard:'Export network card',//出口网卡
exportIP:'Export IP',//出口IP
recordLogs:'Record logs',//记录日志
commandList:'Command list',//命令列表
createCommand:'Create command',//新增命令
num:'num',//序号
command:'Command',//命令(功能码)
startingAddress:'Starting address',//起始地址
addressLength:'Address length',//地址长度
description:'Description',//描述
action:'Action',//动作
Operation:'Operation',//操作
deviceID:'Device ID',//设备ID
},
//网络优化-网关配置
ntconfig:{
title:'Gateway Config',//网关配置
createGateway:'Create gateway',//新建网关
num:'num',//序号
gatewayId:'Gateway ID',//网关ID
gatewayNumber:'Gateway number',//网关编号
gatewayName:'Gateway name',//网关名称
gatewayType:'Gateway type',//网关类型
details:'Details',//详细
parameterConfiguration:'Parameter configuration',//参数配置
check:'Check',//查看
},
// 网络优化-网关维护
ntmaintenance:{
createParameter:'Create parameter',//新增参数
num:'num',//'序号'
gatewaySNNumber:'Gateway SN number',//网关编号
parameterKey:'Parameter Key',//参数Key
parameterName:'Parameter name',//参数名称
decimalPlaces:'Decimal places',//小数位数
setValue:'Set value',//设定值
deviationValue:'Deviation value',//偏差值
affiliatedGateway:'Affiliated gateway',//所属网关
}
}

View File

@ -4,6 +4,9 @@ import ElementUI from "element-ui";
import router from "./router";
import "element-ui/lib/theme-chalk/index.css";
import store from "./store";
import {i18n} from './language/index.js'
Vue.config.productionTip = false;
import moment from "moment";
@ -20,5 +23,6 @@ Vue.use(ElementUI);
new Vue({
router,
i18n,
render: (h) => h(App),
}).$mount("#app");

View File

@ -219,6 +219,24 @@ const routes = [
name: "ntmaintenance",
component: () => import("../views/NtMaintenance.vue"),
},
// 试卷
{
path:'/examination',
name:'examination',
component:()=>import("../views/examination/index.vue")
},
// 成功交卷页面
{
path:'/successPage',
name:'successPage',
component:()=>import("../views/examination/successPage.vue")
},
// 成功交卷页面
{
path:'/examSelect',
name:'examSelect',
component:()=>import("../views/examination/examSelect.vue")
}
];
const router = new VueRouter({

4
src/util/tools.js Normal file
View File

@ -0,0 +1,4 @@
export const sortString = (str)=> {
let list = str.split(',').sort((a, b) => a.charCodeAt(0) - b.charCodeAt(0));
return list.toString()
}

View File

@ -1,4 +1,4 @@
<template>
<template>
<div class="container">
<div class="title">
<img src="../assets/image/工业互联网驾驶舱文字_03.png" alt="" />
@ -147,18 +147,7 @@ export default {
// 线 - ;
// 线;
this.user_id = decodeURIComponent(window.location.href)
.split("?")[1]
.split("|")[0];
// this.user_id = "USER202311150117464304";
if (
decodeURIComponent(window.location.href).split("?")[1].split("|")[1] !=
undefined
) {
this.toObj(
decodeURIComponent(window.location.href).split("?")[1].split("|")[1]
);
}
},
// http://localhost:8080/#/cockpit?USER202311150117464304%7CYXDBWG,True%3BYXCHWG,True%3BWXDBWG,True%3BWXCHWG,True%3BSerialServerYX,True%3BSerialServerWX,True%3B
methods: {
@ -243,6 +232,19 @@ export default {
this.ratedChartOption = ratedChart;
this.CuttingSpeedChartOption = CuttingSpeedChart;
this.stopChartOption = stopChart;
this.user_id = decodeURIComponent(window.location.href)
.split("?")[1]
.split("|")[0];
// this.user_id = "USER202311150117464304";
if (
decodeURIComponent(window.location.href).split("?")[1].split("|")[1] !=
undefined
) {
this.toObj(
decodeURIComponent(window.location.href).split("?")[1].split("|")[1]
);
}
console.log(productChart,'xxxxxx');
},
beforeDestory() {
//

View File

@ -2,7 +2,7 @@
<div id="app">
<!-- 所有路由跳转链接 -->
<!-- <div class="db_lite" style="background-color: aqua; height: 100px">
<div class="db_lite" style="background-color: aqua; height: 100px">
<router-link to="/cockpit">驾驶舱</router-link>
<router-link to="/wiredgatewayip">db网关-ip配置-有线网关</router-link>
<router-link to="/dbcollectiongate">db有线网关-数据采集配置-有线网关配置</router-link>
@ -42,7 +42,11 @@
<router-link to="/addstrategy">工业网闸配置-策略管理-添加策略</router-link>
<router-link to="/ntconfig">网络优化-网关配置</router-link>
<router-link to="/ntmaintenance">网络优化-网关维护</router-link>
</div> -->
</div>
<div>
<router-link to="/examination">工业互联网试卷</router-link>
<router-link to="/successPage">11111111111111</router-link>
</div>
<!-- <ceshi></ceshi> -->
<!-- <CeCe></CeCe> -->
</div>
@ -144,7 +148,7 @@ export default {
};
</script>
<style>
<style lang="less">
* {
margin: 0;
padding: 0;

View File

@ -0,0 +1,350 @@
<script>
import {getKnowledgeTest} from "@/api/user";
export default {
name: 'examSelect',
data() {
return {
examTab: [
{
name: '全部',
state: ''
},
{
name: '未开始',
state: '0'
},
{
name: '进行中',
state: '1'
},
{
name: '已结束',
state: '2'
},
],
examIndex: 0,
//
form: {
PageIndex: 1,
PageSize: 8,
state: '',
userId: ''
},
//
testList: [],
total:0,//
}
},
methods: {
examClick(item, index) {
//
this.form.PageIndex = 1
this.examIndex = index
this.form.state = item.state
//
this.getTestList()
},
getTestList() {
getKnowledgeTest(this.form).then(res => {
this.testList = res.data.data
this.total = parseInt(res.data.message)
})
},
//
enterExam(item){
if(item.batch_state.trim()==='进行中'){
this.$router.push(`/examination?id=${item.batch_id}&totalScore=${item.total_score}&minute=${item.ks_minute}&passScore=${item.pass_score}`)
let data = {
user_id:this.form.userId,
batch_id:item.batch_id,
list_item_answer:[]
}
let testMsg = {
testTitle:item.subject_name, //
endTime:item.end_time //
}
//
sessionStorage.setItem('testMsg',JSON.stringify(testMsg))
sessionStorage.setItem('params',JSON.stringify(data))
}
},
currentChange(current){
this.form.PageIndex = current
this.getTestList()
},
getCountdown(time) {
let endTime = new Date(time).getTime()
let startTime = new Date().getTime()
let remainder = endTime - startTime
let d = parseInt(remainder / 1000 / 60 / 60 / 24) //
let h = parseInt(remainder / 1000 / 60 / 60 % 24)//
let m = parseInt(remainder / 1000 / 60 % 60)//
let s = parseInt(remainder / 1000 % 60)//
h = d*24+h
if(h<10){
h='0'+h
}
if(m<10){
m='0'+m
}
if(s<10){
s='0'+s
}
return h+'小时'+m+'分'+s+'秒后开始'
// return h+':'+m+':'+s
}
},
mounted() {
// id
this.form.userId = window.location.href.split("?")[1];
this.getTestList()
},
computed: {}
}
</script>
<template>
<div class="test-box">
<div class="test-box-title">考试场次选择</div>
<ul class="test-box-status">
<li v-for="(item,index) in examTab" :class="examIndex===index?'select':''" @click="examClick(item,index)">
{{ item.name }}
</li>
</ul>
<div class="test-box-site">
<div v-for="item in testList" class="test-box-site-item">
<div class="test-box-site-item-name">
{{ item.subject_name }}
</div>
<div class="test-box-site-item-start">
<span>开始时间{{ item.start_time }}</span>
<span class="end" v-if="item.batch_state.trim()==='已结束'"></span>
<span class="started" v-else-if="item.batch_state.trim()==='进行中'"></span>
<span class="not-started" v-else></span>
</div>
<div class="test-box-site-item-end">
<span>结束时间{{ item.end_time }}</span>
</div>
<div class="test-box-site-item-time">
<span>考试时长{{ item.ks_minute }}分钟</span>
</div>
<div class="test-box-site-item-score">
<span>满分{{ item.total_score }}</span>
</div>
<div class="test-box-site-item-btn">
<div class="time" v-if="item.batch_state.trim()==='未开始'">{{getCountdown(item.start_time)}}</div>
<span v-if="item.state===0" :class="item.batch_state.trim()==='进行中'?'starting':''" @click="enterExam(item)">
进入考场
</span>
<span v-else>
已参加
</span>
</div>
</div>
</div>
<div class="test-no-data" v-if="!testList.length">
</div>
<div class="test-box-pagination">
<span>{{total}}</span>
<el-pagination
@current-change="currentChange"
:current-page="form.PageIndex"
layout="prev, pager, next"
:page-size="8"
:total="total">
</el-pagination>
</div>
</div>
</template>
<style lang="less" scoped>
.test-no-data{
background-image: url('../../assets/image/examSelect/not_data.png');
width: 228px;
height: 244px;
background-size: 100% 100%;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin:auto;
}
::v-deep .el-pager li{
background-image: none;
background-color: transparent;
font-size: 14px;
font-weight:normal;
width: 34px;
height: 34px;
line-height: 34px;
}
::v-deep .el-pagination .btn-next,::v-deep .el-pagination .btn-prev{
background-color: transparent;
width: 34px;
color: #FFFFFF;
height: 34px;
line-height: 34px;
}
::v-deep .el-pagination button:disabled{
color:rgba(255, 255, 255, 0.30);
background-color: transparent;
}
::v-deep .el-pager li:hover{
color: #FFFFFF;
}
::v-deep .el-pager li.active{
background-color: rgba(255, 255, 255, 0.12);
color: #FFFFFF;
}
.test-box {
width: 1773px;
height: 858px;
background-image: url('../../assets/image/examSelect/test-box.png');
background-size: 100% 100%;
position: absolute;
padding: 0 68px;
box-sizing: border-box;
top: 0;
right: 0;
left: 0;
bottom: 0;
margin: auto;
//
&-pagination{
position: absolute;
display: flex;
bottom: 40px;
left: 50%;
transform: translateX(-50%);
align-items: center;
span{
color: #FFFFFF;
font-size: 14px;
}
}
&-title {
position: absolute;
top: 14px;
left: 50%;
font-size: 24px;
margin-left: -72px;
color: rgba(255, 255, 255, 1);
}
// tab
&-status {
margin-top: 42px;
margin-bottom: 26px;
display: flex;
list-style: none;
.select {
background-image: url('../../assets/image/examSelect/select-status.png');
color: rgba(255, 255, 255, 1);
}
li {
background-image: url('../../assets/image/examSelect/default-status.png');
color: rgba(255, 255, 255, .6);
width: 136px;
height: 40px;
margin-right: 14px;
text-align: center;
line-height: 40px;
}
}
//
&-site {
height: 552px;
&-item {
float: left;
width: 372px;
margin-right: 49px;
margin-bottom: 49px;
height: 232px;
box-sizing: border-box;
padding: 0 18px;
background-image: url('../../assets/image/examSelect/exam-plate.png');
background-size: 100% 100%;
//
&-name {
font-size: 18px;
margin-top: 8px !important;
}
div {
color: rgba(255, 255, 255, 1);
font-size: 16px;
margin-top: 16px;
}
//
&-start {
display: flex;
justify-content: space-between;
margin-top: 23px !important;
span:nth-child(2){
text-align: center;
line-height: 22px;
width: 62px;
height: 22px;
background-size: 100% 100%;
}
.end{
background-image: url('../../assets/image/examSelect/end.png');
}
.not-started{
background-image: url('../../assets/image/examSelect/not-started.png');
}
.started{
background-image: url('../../assets/image/examSelect/started.png');
}
}
//
&-btn {
display: flex;
justify-content: flex-end;
position: relative;
margin-top: 5px !important;
.time{
color:rgba(101, 140, 246, 1);
font-size: 14px;
position: absolute;
top: -30px;
right: 0;
margin: 0;
}
span{
background-image: url('../../assets/image/examSelect/enter-not.png');
font-size: 14px;
width: 101px;
line-height: 28px;
color: rgba(255,255,255,0.5);
text-align: center;
background-size: 100% 100%;
}
.starting{
background-image: url('../../assets/image/examSelect/enter.png');
color: rgba(255,255,255,1);
}
}
}
&-item:nth-child(4n) {
margin-right: 0;
}
}
}
</style>

View File

@ -0,0 +1,739 @@
<script>
import {getTestTopic, getTopicDetail, savaTestAnswer, getTestCache, saveTestCache} from '@/api/user'
import {sortString} from "@/util/tools";
export default {
name: 'examination',
data() {
return {
//
testContent: {
testType: '多选题',
question: "1、以社会主义核心价值观为引领发展社会主义先进文化弘扬革命文化传承中华优秀传统文化满足人民日益增长的精神文化需求巩固全党全国各族人民团结奋斗的共同思想基础不断提升 )。",
score: "10",
your_answer: '',
options: [
{
item_letter: 'A',
item: '国家文化软实力和中华文化影响力'
},
{
item_letter: 'B',
item: '国家文化硬实力和中华文化影响力'
},
{
item_letter: 'C',
item: '国家文化硬实力和中华传统文化影响力'
},
{
item_letter: 'D',
item: '国家文化硬实力和中华传统文化'
}
]
},
testList: [],
//
testTypeNum: [
{
type: '单选题',
children: []
},
{
type: '多选题',
children: []
},
{
type: '判断题',
children: []
}
],
optionIndex: -1,//
examDialogShow: false,
//
params: {
id: '',
kind: ''
},
//
questionTotal: 0,
passScore: 0, //
totalScore: 0, //
minute: 0,//
number: 0, //
isCache: false,//
testTitle: '',//
endTime: '',
countdown:'',//
timer:''//
}
},
methods: {
//
optionClick(event, index, item) {
//
if (this.testContent.testType === '多选题') {
//
if (event.target.className.includes('optionSelect')) {
event.target.className = 'exam-left-test-option'
this.testList[this.number - 1].your_answer = this.testList[this.number - 1].your_answer.replace(item.item_letter+',', '')
} else {
if (this.testList[this.number - 1].your_answer.indexOf(item.item_letter) === -1) {
this.testList[this.number - 1].your_answer += item.item_letter + ','
}
event.target.className = 'exam-left-test-option optionSelect'
}
} else {
if(event.target.className.includes('optionSelect')){
event.target.className = 'exam-left-test-option'
this.$set(this.testList[this.number - 1],'your_answer','')
}else{
//
this.$refs.option.forEach(el => {
el.className = 'exam-left-test-option'
})
event.target.className = 'exam-left-test-option optionSelect'
this.$set(this.testList[this.number - 1],'your_answer',item.item_letter)
}
// this.testList[this.number - 1].your_answer = item.item_letter
}
},
//
handPaper() {
this.examDialogShow = true
},
//
submitTest() {
let list = this.testList.map(el => {
return {
your_answer: el.your_answer.includes(',')?sortString(el.your_answer).slice(0,-1):el.your_answer,
theory_base_id: el.theory_base_id
}
})
let params = sessionStorage.getItem('params')
let data = JSON.parse(params)
console.log(list)
data.list_item_answer = list
let formData = new FormData();
formData.append('data', JSON.stringify(data));
savaTestAnswer(formData).then(res => {
this.$router.push('/successPage')
})
},
//
getCardData() {
//
let testMsg = sessionStorage.getItem('testMsg')
this.testTitle = JSON.parse(testMsg).testTitle //
this.endTime = JSON.parse(testMsg).endTime //
// id
this.params.id = this.$route.query.id;
this.totalScore = this.$route.query.totalScore;//
this.minute = this.$route.query.minute;//
this.passScore = this.$route.query.passScore;//
getTestTopic(this.params).then(res => {
//
this.questionTotal = res.data.data.length
res.data.data.forEach(el => {
this.testTypeNum.forEach(item => {
if (el.question_kind === item.type) {
item.children.push(el)
}
})
})
this.testTypeNum.forEach((item, index) => {
this.testList.push(...item.children)
item.children.forEach(el => {
//
el.your_answer = ''
if (el.question_kind === '单选题') {
el.number = el.no
} else if (el.question_kind === '多选题') {
el.number = el.no + this.testTypeNum[0].children.length
} else if (el.question_kind === '判断题') {
el.number = el.no + this.testTypeNum[0].children.length + this.testTypeNum[1].children.length
}
})
})
//
this.getCacheData()
this.testClick(this.testList[0])
})
},
//
testClick(item) {
//
this.saveCacheData()
this.testContent.options = []
this.testContent.question = ''
//
this.number = item.number
//
this.testContent.score = item.per_score
this.testContent.testType = item.question_kind
getTopicDetail({theoryBaseId: item.theory_base_id}).then(res => {
this.testContent.question = res.data.data.question
this.testContent.options = res.data.data.items
})
//
this.testContent.your_answer = item.your_answer
},
//
getCacheData() {
let params = sessionStorage.getItem('params')
let data = JSON.parse(params)
// formData.append('user_id',JSON.stringify(data.user_id))
// formData.append('batch_id',JSON.stringify(data.batch_id))
let formData = {
user_id: data.user_id,
batch_id: data.batch_id
}
getTestCache(formData).then(res => {
if (res.data.state) {
res.data.data.list_item_answer.forEach(val => {
this.testList.forEach(ele => {
if (val.theory_base_id === ele.theory_base_id) {
this.$set(ele, 'your_answer', val.your_answer)
// ele.your_answer = val.your_answer
}
})
})
this.testContent.your_answer = this.testList[0].your_answer
} else {
}
this.isCache = true
})
},
//
saveCacheData() {
let list = this.testList.map(el => {
return {
your_answer: el.your_answer,
theory_base_id: el.theory_base_id
}
})
let params = sessionStorage.getItem('params')
let data = JSON.parse(params)
data.list_item_answer = list.filter(el => {
return el.your_answer
})
let formData = new FormData();
formData.append('data', JSON.stringify(data));
//
saveTestCache(formData)
},
//
nextClick() {
if (this.number === this.questionTotal) {
return
}
this.number++
let data = this.testList[this.number - 1]
this.testClick(data)
},
//
preClick() {
if (this.number === 1) {
return
}
this.number--
let data = this.testList[this.number - 1]
this.testClick(data)
},
//
getCountdown() {
let endTime = new Date(this.endTime).getTime()
let startTime = new Date().getTime()
let remainder = endTime - startTime
// let d = parseInt(remainder / 1000 / 60 / 60 / 24) //
let h = parseInt(remainder / 1000 / 60 / 60 % 24)//
let m = parseInt(remainder / 1000 / 60 % 60)//
let s = parseInt(remainder / 1000 % 60)//
if(h<10){
h='0'+h
}
if(m<10){
m='0'+m
}
if(s<10){
s='0'+s
}
this.countdown = h+':'+m+':'+s
this.timer = setTimeout(()=>{
this.getCountdown()
},1000)
}
},
mounted() {
this.getCardData()
//
this.getCountdown()
},
computed: {},
watch: {
'testContent.options'(newVal, oldVal) {
}
}
}
</script>
<template>
<div class="exam">
<div class="exam-box">
<div class="exam-left">
<div class="exam-test-title">{{ testTitle }}</div>
<div class="exam-left-top">
<div class="exam-left-num">{{ number }}/{{ questionTotal }}</div>
<div class="exam-left-type">{{ testContent.testType }}</div>
<span>({{ testContent.score }})</span>
<div v-if="testContent.testType==='单选题'" class="exam-left-msc">每题只有一个正确答案</div>
<div v-else-if="testContent.testType==='多选题'" class="exam-left-msc">每题只有两个以上正确答案</div>
</div>
<!-- 题干 -->
<div class="exam-left-test">
<div class="exam-left-test-title">
{{ testContent.question }}
</div>
<div v-if="testContent.testType==='多选题'" class="exam-left-test-content">
<div v-for="(item,index) in testContent.options"
ref="option"
:class="testContent.your_answer.includes(item.item_letter)?'optionSelect':''" class="exam-left-test-option" @click="optionClick($event,index,item)">
{{ item.item_letter }}{{ item.item }}
</div>
</div>
<div v-else class="exam-left-test-content">
<div v-for="(item,index) in testContent.options"
ref="option"
:class="testContent.your_answer===item.item_letter?'optionSelect':''" class="exam-left-test-option" @click="optionClick($event,index,item)">
{{ item.item_letter }}{{ item.item }}
</div>
</div>
<!-- 按钮 -->
<div class="exam-left-btn">
<div :class="number===1?'exam-left-btn-pre':'exam-left-btn-next'" @click="preClick">上一题</div>
<div :class="number===questionTotal?'exam-left-btn-pre':'exam-left-btn-next'" style="margin-left: 164px;"
@click="nextClick">下一题
</div>
</div>
</div>
</div>
<div class="exam-right">
<div class="exam-right-title">答题卡</div>
<div class="exam-right-card">
<div class="exam-right-card-score">
<span>总分{{ totalScore }}</span>
<span>及格分{{ passScore }}</span>
<span>题量{{ questionTotal }}</span>
</div>
<div class="exam-right-card-time">
<span>剩余时间</span>
<span>{{ countdown }}</span>
</div>
<div class="exam-right-card-line"></div>
<div v-if="isCache" class="exam-right-card-box">
<div v-for="(item,index) in testTypeNum" class="exam-right-card-num">
<span class="exam-right-card-num-title"><span
class="type">{{ item.type }}</span> <span>({{ item.children.length }})</span></span>
<div class="exam-right-card-num-item">
<span ref="answer" v-for="s in item.children" :class="{'selectQuestion':s.your_answer,'border':s.number===number}"
@click="testClick(s)">{{ s.no }}</span>
</div>
</div>
</div>
<!-- <div class="exam-right-card-lenged">-->
<!-- <div>-->
<!-- <span><i class="have"></i>已做</span>-->
<!-- <span><i class="notDone"></i>未做</span>-->
<!-- <span><i class="current"></i>当前</span>-->
<!-- </div>-->
<!-- </div>-->
<div class="submit" @click="handPaper"></div>
</div>
</div>
</div>
<div v-if="examDialogShow" class="exam-dialog">
<div class="exam-dialog-title">提示</div>
<div class="exam-dialog-content"> 确定要交卷吗交卷之后将不能再继续答题</div>
<div class="exam-dialog-btn">
<div class="exam-dialog-btn-light" style="margin-right: 82px;" @click="examDialogShow=false">取消</div>
<div class="exam-dialog-btn-light" @click="submitTest">确定</div>
</div>
</div>
</div>
</template>
<style lang="less" scoped>
.exam-test-title {
position: absolute;
top: -40px;
font-size: 24px;
color: rgba(255, 255, 255, 1);
font-weight: 700;
left: 0;
}
.exam {
width: 100%;
height: 100%;
display: flex;
align-items: center;
//
&-dialog {
width: 807px;
height: 391px;
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin: auto;
background-image: url('../../assets/image/prompt.png');
background-size: 100% 100%;
&-title {
text-align: center;
margin-right: 25px;
margin-top: 7px;
color: rgba(255, 255, 255, 1);
font-size: 24px;
}
&-content {
margin-top: 113px;
text-align: center;
font-size: 26px;
color: rgba(255, 255, 255, 1);
}
&-btn {
display: flex;
margin-top: 97px;
justify-content: center;
div {
width: 157px;
height: 44px;
line-height: 44px;
text-align: center;
background-size: 100% 100%;
}
&-light {
color: rgba(255, 255, 255, 1);
background-image: url('../../assets/image/highlight-btn.png');
}
&-dark {
margin-right: 82px;
color: rgba(255, 255, 255, 0.2);
background-image: url('../../assets/image/dark-btn.png');
}
}
}
&-box {
width: 100%;
display: flex;
align-items: center;
justify-content: space-evenly;
}
&-left::-webkit-scrollbar {
display: none;
}
&-left {
position: relative;
width: 1325px;
height: 858px;
background-size: 100% 100%;
background-image: url('../../assets/image/test.png');
&-top {
margin-top: 32px;
display: flex;
align-items: center;
}
&-type {
border: 2px solid rgba(101, 140, 246, 1);
color: rgba(101, 140, 246, 1);
padding: 0 7px;
margin-left: 20px;
font-size: 24px;
}
&-type + span {
margin: 0 10px;
color: rgba(255, 255, 255, 1);
font-size: 20px;
}
&-num {
text-align: center;
font-size: 26px;
line-height: 52px;
color: rgba(255, 255, 255, 1);
width: 114px;
height: 52px;
background-size: 100% 100%;
background-image: url('../../assets/image/test-num.png');
}
&-msc {
color: rgba(255, 255, 255, 0.60);
font-size: 18px;
}
//
&-test {
margin-top: 33px;
padding: 0 50px;
//
&-title {
font-size: 24px;
line-height: 44px;
color: rgba(255, 255, 255, 1)
}
&-content::-webkit-scrollbar {
display: none;
}
//
&-content {
margin-top: 40px;
height: 500px;
overflow-y: scroll;
}
.optionSelect {
background-color: rgba(101, 140, 246, 0.55);
}
&-option {
width: 100%;
height: 80px;
margin-bottom: 20px;
background-image: url('../../assets/image/test-option.png');
padding-left: 34px;
display: flex;
font-size: 22px;
color: #FFFFFF;
align-items: center;
box-sizing: border-box;
}
}
//
&-btn {
position: absolute;
bottom: 50px;
display: flex;
margin-left: -239px;
left: 50%;
&-pre, &-next {
width: 157px;
height: 44px;
text-align: center;
line-height: 44px;
background-size: 100% 100%;
cursor: pointer;
}
&-pre {
color: rgba(255, 255, 255, 0.5);
background-image: url('../../assets/image/dark-btn.png');
}
&-next {
color: rgba(255, 255, 255, 1);
background-image: url('../../assets/image/highlight-btn.png');
}
}
}
&-right {
position: relative;
width: 441px;
height: 858px;
background-size: 100% 100%;
background-image: url('../../assets/image/test-card.png');
//
&-title {
text-align: center;
font-size: 24px;
color: rgba(255, 255, 255, 1);
margin-top: 16px;
}
&-card {
font-size: 18px;
color: rgba(255, 255, 255, 1);;
padding: 46px;
//
.submit {
width: 157px;
height:44px;
margin:20px auto;
//left: 50%;
//margin-left: -78px;
//bottom: 50px;
background-image: url('../../assets/image/submit.png');
}
&-lenged{
width:400px;
height:80px;
background-color: rgba(149, 149, 149, 0.2);
position: absolute;
bottom: 10px;
left: 50%;
margin-left: -200px;
display: flex;
justify-content: center;
align-items: center;
div{
span{
font-size: 14px;
margin-right: 26px;
span:last-child{
margin-right: 0;
}
i{
width: 18px;
height: 10px;
margin-right: 10px;
display: inline-block;
box-sizing: border-box;
}
.current{
border:2px solid rgba(101, 140, 246, 1);
}
.notDone{
background-color:rgba(0, 0, 0, 0.20);
}
.have{
background-color: rgba(64, 253, 137, 0.20);
}
}
}
}
&-score {
justify-content: space-between;
display: flex;
font-size: 18px;
}
&-line {
border: 1px solid rgba(255, 255, 255, 0.30);
margin: 22px 0;
}
&-time {
margin-top: 37px;
position: relative;
span:nth-child(2) {
color: rgba(255, 189, 34, 1);
font-size: 26px;
}
}
//
&-box {
position: relative;
height: 516px;
overflow-y: auto;
}
//
&-box::-webkit-scrollbar {
position: absolute;
left: -50px;
width: 7px; //
background-color: rgba(107, 126, 177, 0.20);
}
&-box::-webkit-scrollbar-thumb {
border-radius: 7px;
box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
background: rgba(107, 126, 177, 1);
}
//
&-num {
&-title {
display: block;
margin-bottom: 16px;
.type {
border: 2px solid rgba(101, 140, 246, 1);
color: rgba(101, 140, 246, 1);
padding: 0 7px;
display: inline-block;
margin-right: 8px;
font-size: 24px;
}
}
&-item {
display: flex;
flex-wrap: wrap;
.border{
box-sizing: border-box;
border:2px solid rgba(101, 140, 246, 1);
}
.selectQuestion {
background-color: rgba(64, 253, 137, 0.20);
}
span {
//display:inline-block ;
margin: 0 11px 14px 0;
width: 58px;
line-height: 38px;
text-align: center;
color: #fff;
background-color: rgba(0, 0, 0, 0.10);
height: 38px;
}
span:nth-child(5n) {
margin-right: 0 !important;
}
}
}
}
}
}
</style>

View File

@ -0,0 +1,67 @@
<script>
export default {
name:"successPage",
data(){
return{
}
},
methods:{
//
determine(){
let params = sessionStorage.getItem('params')
let data = JSON.parse(params)
this.$router.push('/examSelect?'+data.user_id)
}
}
}
</script>
<template>
<div class="page">
<div class="success-page">
<div class="success-font">
您已成功交卷请继续下一场考试
</div>
<div class="success-btn" @click="determine">
确定
</div>
</div>
</div>
</template>
<style scoped lang="less">
.page{
display: flex;
justify-content: center;
width: 100%;
height: 100%;
align-items: center;
.success-page{
width: 1773px;
position: relative;
height: 858px;
background-image: url('../../assets/image/success-bg.png');
background-size: 100% 100%;
}
.success-font{
margin-top: 354px;
text-align: center;
font-size: 26px;
color: rgba(255, 255, 255, 1);
}
.success-btn{
width: 157px;
height: 44px;
line-height: 44px;
text-align: center;
font-size: 20px;
color: rgba(255,255,255,1);
position: absolute;
bottom: 92px;
left: 50%;
margin-left: -78px;
background-image: url('../../assets/image/highlight-btn.png');
}
}
</style>

View File

@ -4,13 +4,16 @@ module.exports = defineConfig({
transpileDependencies: true,
lintOnSave: false,
devServer: {
proxy: {
"/Handler": {
target: "http://172.16.1.254:10014",
pathRewrite: { "^/Handler": "" },
secure: false,
changeOrigin: true,
},
client: { //加上这个就好了
overlay: false,
},
// proxy: {
// "/Handler": {
// target: "http://172.16.1.254:10014/Handler",
// pathRewrite: { "^/Handler": "" },
// secure: false,
// changeOrigin: true,
// },
// },
},
},
});