This commit is contained in:
朱文强 2025-09-01 15:29:30 +08:00
parent 6f88d254e5
commit b154680aa7
2 changed files with 68 additions and 54 deletions

View File

@ -1,55 +1,69 @@
<template> <template>
<div class="bg mod-config"> <div class="bg mod-config">
<el-card class="box-card"> <el-card class="box-card">
<el-form <el-form
:model="dataForm" :model="dataForm"
:rules="dataRule" :rules="dataRule"
ref="dataForm" ref="dataForm"
@keyup.enter.native="dataFormSubmit()" @keyup.enter.native="dataFormSubmit()"
label-width="80px" label-width="80px"
> >
<el-form-item label="设备名称" prop="plcName"> <el-row :gutter="20">
<el-input v-model="dataForm.plcName" placeholder="设备名称" clearable /> <el-col :span="24">
</el-form-item> <el-form-item label="设备名称" prop="plcName">
<el-form-item label="设备型号" prop="plcType"> <el-input v-model="dataForm.plcName" placeholder="设备名称" clearable />
<el-select v-model="dataForm.plcType" style="width: 100%;" placeholder="请选择设备型号"> </el-form-item>
<el-option </el-col>
v-for="item in options" <el-col :span="24">
:key="item" <el-form-item label="设备型号" prop="plcType">
:label="item" <el-select v-model="dataForm.plcType" style="width: 100%;" placeholder="请选择设备型号">
:value="item" <el-option v-for="item in options" :key="item" :label="item" :value="item"></el-option>
> </el-select>
</el-option> </el-form-item>
</el-select> </el-col>
</el-form-item> <el-col :span="24">
<el-form-item label="IP" prop="address"> <el-form-item label="IP" prop="address">
<el-input v-model="dataForm.address" placeholder="IP" clearable /> <el-input v-model="dataForm.address" placeholder="IP" clearable />
</el-form-item> </el-form-item>
<el-form-item label="端口号" prop="port"> </el-col>
<el-input v-model="dataForm.port" placeholder="端口号" clearable /> <el-col :span="24">
</el-form-item> <el-form-item label="端口号" prop="port">
<el-form-item label="读取频率" prop="frequence"> <el-input v-model="dataForm.port" placeholder="端口号" clearable />
<el-select v-model="dataForm.frequence" placeholder="请选择读取频率"> </el-form-item>
<el-option </el-col>
v-for="item in options1" <el-col :span="12">
:key="item" <el-form-item label="Rack" prop="rack">
:label="item" <el-input-number v-model="dataForm.rack" style="width:140px" :min="0" :step="1" step-strictly></el-input-number>
:value="item" </el-form-item>
> </el-col>
</el-option> <el-col :span="12">
</el-select> <el-form-item label="Slot" prop="slot">
</el-form-item> <el-input-number v-model="dataForm.slot" style="width:140px" :min="0" :step="1" step-strictly></el-input-number>
<el-form-item label="自动连接" prop="autoConnect"> </el-form-item>
<el-switch v-model="dataForm.autoConnect"> </el-switch> </el-col>
</el-form-item> <el-col :span="24">
<el-form-item label="自动读取" prop="autoRead"> <el-form-item label="读取频率" prop="frequence">
<el-switch v-model="dataForm.autoRead"> </el-switch> <el-select v-model="dataForm.frequence" placeholder="请选择读取频率">
</el-form-item> <el-option v-for="item in options1" :key="item" :label="item" :value="item"></el-option>
</el-form> </el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="自动连接" prop="autoConnect">
<el-switch v-model="dataForm.autoConnect"></el-switch>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="自动读取" prop="autoRead">
<el-switch v-model="dataForm.autoRead"></el-switch>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span style="float: right;"> <span style="float: right;">
<el-button type="primary" @click="dataFormSubmit()">确定</el-button> <el-button type="primary" @click="dataFormSubmit()">确定</el-button>
</span> </span>
</el-card> </el-card>
</div> </div>
</template> </template>
@ -62,6 +76,8 @@ export default {
port: '', port: '',
address: '', address: '',
frequence: '', frequence: '',
rack: 0,
slot: 0,
autoConnect: true, autoConnect: true,
autoRead: true, autoRead: true,
plcType: '' plcType: ''
@ -113,9 +129,7 @@ export default {
this.$refs['dataForm'].validate(valid => { this.$refs['dataForm'].validate(valid => {
if (valid) { if (valid) {
this.$http({ this.$http({
url: this.$http.adornUrl( url: this.$http.adornUrl(`api/server/plcCreate/create-siemensPlc`),
`api/server/plcCreate/create-siemensPlc`
),
method: 'post', method: 'post',
data: this.$http.adornData(this.dataForm) data: this.$http.adornData(this.dataForm)
}).then(({ data }) => { }).then(({ data }) => {

View File

@ -2,7 +2,7 @@
* @Author: zwq * @Author: zwq
* @Date: 2023-11-24 16:51:18 * @Date: 2023-11-24 16:51:18
* @LastEditors: zwq * @LastEditors: zwq
* @LastEditTime: 2023-11-27 16:30:34 * @LastEditTime: 2025-07-16 17:00:07
* @Description: * @Description:
--> -->
<template> <template>
@ -34,7 +34,7 @@ export default {
methods: { methods: {
initWebSocket () { initWebSocket () {
// weosocket // weosocket
const path = `ws://${this.url}/log` const path = '/api/log'
this.websock = new WebSocket(path) this.websock = new WebSocket(path)
this.websock.onmessage = this.websocketonmessage this.websock.onmessage = this.websocketonmessage
this.websock.onopen = this.websocketonopen this.websock.onopen = this.websocketonopen