From 3a154bdb0a5aaa2c0ac3eac95a6ba747068bd454 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期二, 13 一月 2026 10:00:37 +0800
Subject: [PATCH] 优化
---
admin/src/components/business/OperaDeviceDuanluqiWindow.vue | 190 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 190 insertions(+), 0 deletions(-)
diff --git a/admin/src/components/business/OperaDeviceDuanluqiWindow.vue b/admin/src/components/business/OperaDeviceDuanluqiWindow.vue
new file mode 100644
index 0000000..9cd78ab
--- /dev/null
+++ b/admin/src/components/business/OperaDeviceDuanluqiWindow.vue
@@ -0,0 +1,190 @@
+<template>
+ <GlobalWindow
+ :title="title"
+ :visible.sync="visible"
+ width="65%"
+ :confirm-working="isWorking"
+ @confirm="confirm"
+ >
+ <el-form :model="form" ref="form" :rules="rules">
+ <p class="tip-header" >鍩烘湰淇℃伅</p>
+ <el-form-item label="璁惧鍚嶇О" prop="name">
+ <el-input v-model="form.name" placeholder="璇疯緭鍏ュ悕绉�" v-trim/>
+ </el-form-item>
+ <el-form-item label="璁惧鏍囪瘑绗�" prop="no">
+ <el-input v-model="form.no" placeholder="璇疯緭鍏ヨ澶囨爣璇嗙" v-trim/>
+ </el-form-item>
+ <el-form-item label="璁惧鍙�" prop="doorNo">
+ <el-input v-model="form.doorNo" placeholder="璇疯緭鍏ュ簭鍒楀彿" v-trim/>
+ </el-form-item>
+ <el-form-item label="鍘傚晢" prop="manufature">
+ <el-input v-model="form.manufature" placeholder="璇疯緭鍏ユ墍鍦ㄤ綅缃�" v-trim/>
+ </el-form-item>
+ <el-form-item label="瀹夎浣嶇疆" prop="regionPathName">
+ <el-input v-model="form.regionPathName" placeholder="璇疯緭鍏ヨ澶囦綅缃�" v-trim/>
+ </el-form-item>
+ <el-form-item label="杩炴帴IP" prop="ip">
+ <el-input v-model="form.ip" placeholder="璇疯緭鍏ヨ澶囪繛鎺P鍦板潃" v-trim/>
+ </el-form-item>
+ <el-form-item label="杩炴帴绔彛" prop="port">
+ <el-input v-model="form.port" placeholder="璇疯緭鍏ヨ繛鎺ョ鍙�" v-trim/>
+ </el-form-item>
+ <p class="tip-header" >閰嶇疆鍙傛暟</p>
+ <p class="tip-warn" style="width: 100%;"><i class="el-icon-warning"></i>閰嶇疆鍙傛暟璇存槑锛�<br>
+ 1.鍏ㄩ儴寮�鍏冲簭鍙凤細鍙傝�冭澶囧疄闄呴厤缃紝澶氫釜鐢ㄨ嫳鏂囬�楀彿闅斿紑锛屽 1,2,3;<br>
+ 2.鎺у埗寮�鍏冲簭鍙凤細绯荤粺鏍规嵁閰嶇疆瑙勫垯锛屽垽鏂紑鍏冲綋鍓嶇┖闂蹭腑杩涜銆愯嚜鍔ㄥ垎闂搞��,澶氫釜鐢ㄨ嫳鏂囬�楀彿闅斿紑锛屽 1,2;<br>
+ 3.鑷姩鍒嗛椄瑙勫垯锛氶拡瀵规帶鍒跺紑鍏冲簭鍙风殑閰嶇疆锛屽畾鏃舵娴嬨�愮┖闂叉椂闀裤�戝唴婊¤冻寮�鍏崇數娴佸�奸兘鍦ㄣ�愮┖闂茬數娴侀槇鍊笺�戣寖鍥村唴锛屽垯杩涜鑷姩鍒嗛椄鎺у埗;<br>
+ 4.绌洪棽鏃堕暱: 璇疯缃嚦灏戠┖闂叉椂闀垮ぇ浜庣瓑浜�300绉掞紙5鍒嗛挓锛夈��<br>
+ 5.淇敼閲嶅惎: 淇敼閰嶇疆鍙傛暟鍚庯紝杩斿洖鍒楄〃椤碉紝鐐瑰嚮閲嶅惎銆愬惎鐢ㄣ�戯紝鏄弬鏁扮敓鏁堬紒<br>
+ 6.濡傞渶杩滅▼鎺у埗寮�鍏筹紝璇锋纭~鍐欎笅杩板叏閮ㄥ弬鏁颁俊鎭��
+ </p>
+ <div style="display: flex">
+ <el-form-item label="鍏ㄩ儴寮�鍏冲簭鍙�" prop="channelNo" style="display: inline-block;width:300px;">
+ <el-input v-model="form.channelNo" placeholder="璇疯緭鍏ュ紑鍏冲簭鍙凤紝澶氫釜鐢ㄨ嫳鏂囬�楀彿闅斿紑锛屽 1,2,3" v-trim style="width: 150px;" />
+ </el-form-item>
+ <el-form-item label="鎺у埗寮�鍏冲簭鍙�" prop="channelInfo" style="display: inline-block;width:300px;">
+ <el-input v-model="form.channelInfo" placeholder="璇疯緭鍏ユ帶鍒跺紑鍏冲簭鍙凤紝澶氫釜鐢ㄨ嫳鏂囬�楀彿闅斿紑锛屽 1,2,3" v-trim style="width: 150px;" />
+ </el-form-item>
+ </div>
+ <div style="display: flex">
+ <!-- <el-form-item label="绌洪棽鐢垫祦闃堝��" prop="mqttPassword" style="display: inline-block;width:250px;">
+ <el-input v-model="form.doorNameObj.min" style="width: 150px;" disabled type="number" maxlength="30" placeholder="鏈�灏忓��" >
+ <template slot="append">A</template>
+ </el-input>
+ </el-form-item>
+ <span style="margin: 5px 10px;">鑷�</span>-->
+ <el-form-item label="绌洪棽鐢垫祦闃堝��" label-width="105px" prop="max" style="display: inline-block;width:300px">
+ <el-input v-model="form.doorNameObj.max" style="width: 150px;" type="number" maxlength="30" placeholder="鏈�澶у��" >
+ <template slot="append">A</template>
+ </el-input>
+ </el-form-item>
+ <el-form-item label="绌洪棽鏃堕暱(绉�)" prop="level" style="display: inline-block;width:350px;margin-left: 0px;">
+ <el-input v-model="form.level" style="width: 180px;" type="number" maxlength="30" placeholder="璇疯緭鍏ョ┖闂叉椂闀�" >
+ <template slot="append">绉�</template>
+ </el-input>
+ </el-form-item>
+ </div>
+ <el-form-item label="MQTT鏈嶅姟IP" prop="mqttIp">
+ <el-input v-model="form.doorNameObj.mqttIp" placeholder="璇疯緭鍏ヨ澶囪繛鎺QTT-IP" v-trim/>
+ </el-form-item>
+ <el-form-item label="MQTT鏈嶅姟绔彛" prop="mqttPort">
+ <el-input v-model="form.doorNameObj.mqttPort" placeholder="璇疯緭鍏ヨ繛鎺QTT鏈嶅姟绔彛" v-trim/>
+ </el-form-item>
+ <el-form-item label="MQTT鏈嶅姟璐﹀彿" prop="mqttUsername">
+ <el-input v-model="form.doorNameObj.mqttUsername" placeholder="璇疯緭鍏ヨ澶囪繛鎺QTT鏈嶅姟璐﹀彿" v-trim/>
+ </el-form-item>
+ <el-form-item label="MQTT鏈嶅姟瀵嗙爜" prop="mqttPassword">
+ <el-input v-model="form.doorNameObj.mqttPassword" type="password" maxlength="30" show-password></el-input>
+ </el-form-item>
+ <p class="tip-warn" style="width: 100%;"><i class="el-icon-warning"></i> 闈炲厖鐢电姸鎬佺數娴佸ぇ灏忔帴鍏ヨ澶囧悗锛屽弬鐓х幇鍦哄疄闄呭満鏅厤缃�;</p>
+ </el-form>
+ </GlobalWindow>
+</template>
+<script>
+import BaseOpera from '@/components/base/BaseOpera'
+import GlobalWindow from '@/components/common/GlobalWindow'
+export default {
+ name: 'OperaDeviceDuanluqiWindow',
+ extends: BaseOpera,
+ components: { GlobalWindow },
+ data () {
+ return {
+ // 琛ㄥ崟鏁版嵁
+ form: {
+ id: null,
+ name: '',
+ regionPathName: '',
+ doorNo: '',
+ no: '',
+ type: 5,
+ ip: '',
+ port: '',
+ level: '',
+ doorName: '',
+ doorId: '',
+ doorNameObj: {
+ mqttUsername: '',
+ mqttPassword: '',
+ mqttIp: '',
+ mqttPort: '',
+ max: null,
+ min: null
+ },
+ channelInfo: '',
+ manufature: '',
+ channelNo: ''
+ },
+ // 楠岃瘉瑙勫垯
+ rules: {
+ name: [
+ { required: true, message: '璇疯緭鍏ヨ澶囧悕绉�' }
+ ],
+ /*max: [
+ { required: true, message: '璇疯緭鍏ヨ澶囩┖闂茬數娴侀槇鍊�' }
+ ],*/
+ doorId: [
+ { required: true, message: '璇疯緭鍏ヨ澶囪繛鎺ヨ处鍙�' }
+ ],
+ doorName: [
+ { required: true, message: '璇疯緭鍏ヨ澶囪繛鎺ュ瘑鐮�' }
+ ],
+ channelNo: [
+ { required: true, message: '璇疯緭鍏ュ紑鍏冲簭鍙�' }
+ ],
+ doorNo: [
+ { required: true, message: '璇疯緭鍏ヨ澶囧彿' }
+ ],
+ no: [
+ { required: true, message: '璇疯緭鍏ヨ澶囨爣璇嗙' }
+ ]
+ }
+ }
+ },
+ created () {
+ this.config({
+ api: '/business/device',
+ 'field.id': 'id'
+ })
+ },
+ methods: {
+ open (title, target) {
+ this.title = title
+ this.visible = true
+ this.form.doorName = ''
+ this.form.doorNameObj = {
+ mqttUsername: '',
+ mqttPassword: '',
+ mqttIp: '',
+ mqttPort: '',
+ max: null,
+ min: 0
+ }
+ // debugger
+ // 鏂板缓
+ if (target == null) {
+ this.$nextTick(() => {
+ this.$refs.form.resetFields()
+ this.form[this.configData['field.id']] = null
+ })
+ if(!this.form.doorNameObj){
+ this.form.doorNameObj = {
+ mqttUsername: '',
+ mqttPassword: '',
+ mqttIp: '',
+ mqttPort: '',
+ max: null,
+ min: 0
+ }
+ }
+ return
+ }
+ // 缂栬緫
+ this.$nextTick(async () => {
+ for (const key in this.form) {
+ this.form[key] = target[key]
+ }
+ })
+ }
+ }
+}
+</script>
--
Gitblit v1.9.3