From 6199a2238efcc2449c79aa228e40cb75c59cf663 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期二, 24 十月 2023 19:16:24 +0800
Subject: [PATCH] 集群退出添加密码

---
 src/pages/settings/views/NetSettings.vue |   92 +++++++++++++++++++++++++++++++++-------------
 1 files changed, 66 insertions(+), 26 deletions(-)

diff --git a/src/pages/settings/views/NetSettings.vue b/src/pages/settings/views/NetSettings.vue
index 0f7b891..aec11cf 100644
--- a/src/pages/settings/views/NetSettings.vue
+++ b/src/pages/settings/views/NetSettings.vue
@@ -40,7 +40,7 @@
         <div class="wifi-set" v-if="activePage == 1 && !inWifiDetail">
           <div class="title">鏃犵嚎缃戠粶</div>
 
-          <switchBar :barName="`鏃犵嚎缃戝崱`" @switchChange="wifiControl" :value="wifiList.length > 0"></switchBar>
+          <switchBar :barName="`鏃犵嚎缃戝崱`" @switchChange="wifiControl" :value="true"></switchBar>
 
           <div class="wifi-option" v-for="(item, i) in wifiList" :key="i" @click="checkWifi(item)">
             <div class="name">
@@ -55,7 +55,7 @@
             </div>
           </div>
 
-          <el-button type="text" @click="wirelessScan">鎵弿鏃犵嚎缃戠粶</el-button>
+          <el-button type="text" @click="wirelessScan" :loading="wifiScanning">鎵弿鏃犵嚎缃戠粶</el-button>
         </div>
         <div class="wifi-detail" v-if="activePage == 1 && inWifiDetail" ref="ipvHolder">
           <div class="title">鏃犵嚎缃戠粶</div>
@@ -83,7 +83,7 @@
             </el-form>
           </div>
 
-          <!-- <switchBar :barName="`楂樼骇璁剧疆`" :value="isHighClass"></switchBar>
+          <!-- <switchBar :barName="`楂樼骇璁剧疆`" :value="isHighClass"></switchBar> -->
 
           <div class="general-box fold" :class="{ hidden: IPV4_hid }">
             <div class="in-title">
@@ -91,10 +91,16 @@
               <span class="icon iconfont icon-fold" @click="toggleFold('IPV4_hid')">&#xe757;</span>
             </div>
 
-            <el-form :model="ipv4Form" :rules="ipv4FormRules" ref="ipv4Form">
+            <el-form :model="wirelessForm" ref="wirelessForm">
               <el-form-item>
                 <div class="p-title">鏂规硶</div>
-                <el-select v-model="value" placeholder="璇烽�夋嫨" size="small" :popper-append-to-body="false">
+                <el-select
+                  v-model="wifiProto"
+                  placeholder="璇烽�夋嫨"
+                  size="small"
+                  :popper-append-to-body="false"
+                  :disabled="wifiProto == 'dhcp'"
+                >
                   <el-option
                     v-for="item in options"
                     :key="item.value"
@@ -105,27 +111,47 @@
               </el-form-item>
               <el-form-item prop="ip">
                 <div class="p-title">IP</div>
-                <ip-input :ip="ipv4Form.ip" @on-blur="ipv4Form.ip = arguments[0]"></ip-input>
+                <ip-input
+                  :ip="wirelessForm.ip"
+                  @on-blur="wirelessForm.ip = arguments[0]"
+                  :disabled="wifiProto == 'dhcp'"
+                ></ip-input>
               </el-form-item>
               <el-form-item prop="subMask">
                 <div class="p-title">瀛愮綉鎺╃爜</div>
-                <ip-input :ip="ipv4Form.subMask" @on-blur="ipv4Form.subMask = arguments[0]"></ip-input>
+                <ip-input
+                  :ip="wirelessForm.subMask"
+                  @on-blur="wirelessForm.subMask = arguments[0]"
+                  :disabled="wifiProto == 'dhcp'"
+                ></ip-input>
               </el-form-item>
 
               <el-form-item prop="gateway">
                 <div class="p-title">缃戝叧</div>
-                <ip-input :ip="ipv4Form.gateway" @on-blur="ipv4Form.gateway = arguments[0]"></ip-input>
+                <ip-input
+                  :ip="wirelessForm.gateway"
+                  @on-blur="wirelessForm.gateway = arguments[0]"
+                  :disabled="wifiProto == 'dhcp'"
+                ></ip-input>
               </el-form-item>
               <el-form-item prop="dns">
                 <div class="p-title">棣栭�塂NS</div>
-                <ip-input :ip="ipv4Form.dns1" @on-blur="ipv4Form.dns1 = arguments[0]"></ip-input>
+                <ip-input
+                  :ip="wirelessForm.dns1"
+                  @on-blur="wirelessForm.dns1 = arguments[0]"
+                  :disabled="wifiProto == 'dhcp'"
+                ></ip-input>
               </el-form-item>
               <el-form-item prop="dns">
                 <div class="p-title">澶囩敤DNS</div>
-                <ip-input :ip="ipv4Form.dns2" @on-blur="ipv4Form.dns2 = arguments[0]"></ip-input>
+                <ip-input
+                  :ip="wirelessForm.dns2"
+                  @on-blur="wirelessForm.dns2 = arguments[0]"
+                  :disabled="wifiProto == 'dhcp'"
+                ></ip-input>
               </el-form-item>
             </el-form>
-          </div> -->
+          </div>
 
           <div class="btns">
             <div class="cancel" @click="inWifiDetail = false">鍙栨秷</div>
@@ -248,14 +274,11 @@
         deviceName: "",
         port: ""
       },
-      wifiForm: {
-        name: "",
-        password: ""
-      },
       wireArr: [],
       inWifiDetail: false,
       selectedWifi: {},
       wifiList: [],
+      wifiScanning: false,
       isOpenWifi: false,
       wifiIfname: "",
       inWireDetail: false,
@@ -307,7 +330,7 @@
       rules: {
         deviceName: [{ required: true, message: "璇疯緭鍏ヨ澶囧悕绉�", trigger: "change" }]
       },
-      ipv4Form: {},
+      wirelessForm: {},
       ipv6Form: {},
       ipv4FormRules: {},
       tabList: [
@@ -321,15 +344,15 @@
       ipv6FormRules: {},
       options: [
         {
-          value: "閫夐」1",
+          value: "dhcp",
           label: "鑷姩"
         },
         {
-          value: "閫夐」2",
+          value: "static",
           label: "鎵嬪姩"
         }
       ],
-      value: "",
+      wifiProto: "dhcp",
       IPV4_hid: true,
       IPV6_hid: false,
       configLoading: false
@@ -342,13 +365,20 @@
   methods: {
     wirelessScan() {
       this.wifiList = []
-      getWifiList({ ifname: this.wifiIfname }).then((rsp) => {
-        if (rsp && rsp.success) {
-          this.wifiList = rsp.data.filter((e) => {
-            return e.essid != ""
-          })
-        }
-      })
+      this.wifiScanning = true
+      getWifiList({ ifname: this.wifiIfname })
+        .then((rsp) => {
+          if (rsp && rsp.success) {
+            this.wifiList = rsp.data.filter((e) => {
+              return e.essid != ""
+            })
+          }
+
+          this.wifiScanning = false
+        })
+        .catch(() => {
+          this.wifiScanning = false
+        })
     },
     minusPrefix() {
       this.ipv6Form.prefix
@@ -505,6 +535,16 @@
     checkWifi(item) {
       this.inWifiDetail = true
       this.selectedWifi = item
+      getNetWorkCardInfo({
+        ifname: this.wifiIfname
+      }).then((res) => {
+        if (res && res.success) {
+          this.wirelessForm.ip = res.data.ip
+          this.wirelessForm.gateway = res.data.gateway
+          this.wirelessForm.dns = res.data.dns
+          this.wirelessForm.subMask = res.data.subMask
+        }
+      })
     },
     openWireDetail(item) {
       this.inWireDetail = true

--
Gitblit v1.8.0