From 1dcef4a760d1ee276e29ace9e7573ac816100178 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@iotlink.com>
Date: 星期五, 09 十月 2020 19:01:20 +0800
Subject: [PATCH] fix: warning about couldn't fulfill desired order of chunk group. on build

---
 src/pages/settings/components/ClusterManagement.vue |  108 +++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 87 insertions(+), 21 deletions(-)

diff --git a/src/pages/settings/components/ClusterManagement.vue b/src/pages/settings/components/ClusterManagement.vue
index d6d5d65..84df905 100644
--- a/src/pages/settings/components/ClusterManagement.vue
+++ b/src/pages/settings/components/ClusterManagement.vue
@@ -14,23 +14,23 @@
               <el-form-item label="闆嗙兢ID">
                 <el-input v-model="clusterid" placeholder="涓嶅厑璁歌緭鍏�,淇濆瓨鍚庡洖鏄�" disabled size="small"></el-input>
               </el-form-item>
-              <el-form-item label="闆嗙兢瀵嗙爜" prop="clusterpwd" style="width:440px">
-                <el-input v-model="ruleForm.clusterpwd" placeholder="璇疯緭鍏�6-12浣嶅瘑鐮�,鎴栫偣鍑荤敓鎴�" size="small">
+              <el-form-item label="闆嗙兢瀵嗙爜" prop="clusterpwd" style="width:500px">
+                <el-input v-model="ruleForm.clusterpwd" placeholder="璇疯緭鍏�6浣嶅瘑鐮�,鎴栫偣鍑荤敓鎴�" size="small">
                   <el-button type="text" slot="suffix" @click="generatePassword">鐢熸垚瀵嗙爜</el-button>
                 </el-input>
               </el-form-item>
 
-              <el-form-item label="铏氭嫙IP" prop="virtualip">
+              <!-- <el-form-item label="铏氭嫙IP" prop="virtualip">
                 <ip-input :ip="ruleForm.virtualip" :on-blur="onIpBlur"></ip-input>
-              </el-form-item>
-              <el-form-item style="width:440px">
+              </el-form-item> -->
+              <el-form-item style="width:500px">
                 <el-button type="primary" size="small" @click="submitForm('ruleForm')">淇濆瓨</el-button>
               </el-form-item>
             </el-form>
           </el-tab-pane>
-
+          
           <!-- 鍔犲叆宸叉湁闆嗙兢 -->
-          <el-tab-pane label="鍔犲叆宸叉湁闆嗙兢" name="2" :disabled="isHasColony">
+          <el-tab-pane label="鍔犲叆宸叉湁闆嗙兢" name="3" :disabled="isHasColony">
             <el-form label-width="80px" :model="joinForm" :rules="joinRules" ref="joinForm">
               <el-form-item label="IP鍦板潃" style="width:440px">
                 <el-input v-model="joinForm.clusterip" placeholder="璇疯緭鍏ラ泦缇ゅ唴浠绘剰IP鍦板潃" size="small">
@@ -48,7 +48,7 @@
                 <!-- <el-button size="mini" :disabled="searchDis" @click="searchColony">鎼滅储闆嗙兢</el-button>
                 <el-button size="mini" @click="stopSearch">鍋滄鎼滅储</el-button>-->
               </el-form-item>
-              <el-form-item label="闆嗙兢瀵嗙爜" prop="clusterpwd" style="width:440px">
+              <el-form-item label="闆嗙兢瀵嗙爜" prop="clusterpwd" style="width:500px">
                 <el-input
                   v-model="joinForm.clusterpwd"
                   placeholder="璇疯緭鍏ラ泦缇ゅ瘑鐮�"
@@ -71,18 +71,18 @@
             <el-form-item label="闆嗙兢ID">
               <el-input v-model="clusterid" placeholder="涓嶅厑璁歌緭鍏�,淇濆瓨鍚庡洖鏄�" disabled size="small"></el-input>
             </el-form-item>
-            <el-form-item label="闆嗙兢瀵嗙爜" prop="clusterpwd" style="width:440px">
+            <el-form-item label="闆嗙兢瀵嗙爜" prop="clusterpwd" style="width:500px">
               <el-input
                 v-model="ruleForm.clusterpwd"
                 disabled
-                placeholder="璇疯緭鍏�6-12浣嶅瘑鐮�,鎴栫偣鍑荤敓鎴�"
+                placeholder="璇疯緭鍏�6浣嶅瘑鐮�,鎴栫偣鍑荤敓鎴�"
                 size="small"
               ></el-input>
             </el-form-item>
 
-            <el-form-item label="铏氭嫙IP" prop="virtualip">
+            <!-- <el-form-item label="铏氭嫙IP" prop="virtualip">
               <ip-input :ip="ruleForm.virtualip" :on-blur="onIpBlur"></ip-input>
-            </el-form-item>
+            </el-form-item> -->
             <el-form-item style="width:440px;text-align: right;">
               <el-button size="small" type="danger" @click="leave">閫�鍑洪泦缇�</el-button>
               <el-button
@@ -103,6 +103,22 @@
           v-loading="loading"
           @selected-node="joinNode"
         ></serfDiagram>
+      </el-col>
+    </el-row>
+    <div class="ui-top-view">
+      <div class="ui-top-title">婕傜ЩIP</div>
+    </div>
+    <el-row>
+      <el-col :span="12">
+        <el-form :model="vrIpForm" ref="vrIpForm" :rules="vrIpRules" style="padding:20px 40px;">
+          <el-form-item label="铏氭嫙IP" prop="virtual_ip">
+            <ip-input :ip="vrIpForm.virtual_ip" :on-blur="onIpBlur"></ip-input>
+            <el-switch v-model="vrIpForm.enable" style="margin-left:30px;"></el-switch>
+          </el-form-item>
+          <el-form-item style="width:500px">
+            <el-button type="primary" size="small" @click="saveForm('vrIpForm')">淇濆瓨</el-button>
+          </el-form-item>
+        </el-form>
       </el-col>
     </el-row>
     <div class="ui-top-view">
@@ -160,7 +176,9 @@
   findCluster,
   updateClusterName,
   joinCluster,
-  leave
+  leave,
+  getVrrp,
+  setVrrp
 } from "@/api/clusterManage";
 import serfDiagram from "@/components/serfDiagram";
 import ipInput from "@/components/subComponents/IPInput";
@@ -176,8 +194,13 @@
         return callback(new Error("瀵嗙爜涓嶈兘涓虹┖"));
       }
       setTimeout(() => {
-        if (value.length > 16 || value.length < 6) {
-          callback(new Error("瀵嗙爜搴斾负6-16浣�!"));
+        // if (value.length > 16 || value.length < 6) {
+        //   callback(new Error("瀵嗙爜搴斾负6-16浣�!"));
+        // } else {
+        //   callback();
+        // }
+        if (value.length != 6) {
+          callback(new Error("瀵嗙爜搴斾负6浣�!"));
         } else {
           callback();
         }
@@ -193,7 +216,13 @@
       ruleForm: {
         clustername: "",
         clusterpwd: "",
-        virtualip: ""
+        //virtualip: ""
+      },
+      vrIpForm: {
+        enable: true,
+        //serve_port: "",
+        serve_port: null,
+        virtual_ip: ""
       },
       manageForm: {
         clustername: "娴嬭瘯闆嗙兢1",
@@ -209,6 +238,11 @@
           { required: true, message: "璇疯緭鍏ラ泦缇ゅ悕绉�", trigger: "change" }
         ],
         clusterpwd: [{ validator: checkPwd, trigger: "change" }],
+        // virtualip: [
+        //   { required: true, message: "璇疯緭鍏ヨ櫄鎷烮P", trigger: "change" }
+        // ]
+      },
+      vrIpRules: {
         virtualip: [
           { required: true, message: "璇疯緭鍏ヨ櫄鎷烮P", trigger: "change" }
         ]
@@ -265,10 +299,30 @@
             clusterId: this.clusterid,
             clusterName: this.ruleForm.clustername,
             password: this.ruleForm.clusterpwd,
-            virtualip: this.ruleForm.virtualip
+            //virtualip: this.ruleForm.virtualip
           };
           this.createColony(json).then(() => {
             this.findCluster();
+          });
+        } else {
+          console.log("error submit!!");
+          return false;
+        }
+      });
+    },
+    saveForm(formName) {
+      debugger
+      this.$refs[formName].validate(valid => {
+        if (valid) {
+          alert("submit!");
+          let json = {
+            enable: this.vrIpForm.enable,
+            serve_port: this.vrIpForm.serve_port,
+            virtual_ip: this.vrIpForm.virtual_ip,
+            
+          };
+          setVrrp(json).then(() => {
+            this.getVrrpInfo();
           });
         } else {
           console.log("error submit!!");
@@ -419,7 +473,7 @@
           this.clusterid = res.data.clusterId;
           this.ruleForm.clustername = res.data.clusterName;
           this.ruleForm.clusterpwd = res.data.clusterpwd
-          this.ruleForm.virtualip = res.data.virtualip
+          //this.ruleForm.virtualip = res.data.virtualip
           let list = res.data.nodes.map(i => {
             let obj = {};
             obj.cluster_id = i.cluster_id;
@@ -439,6 +493,16 @@
           // this.activeName = '1'
         }
       }
+    },
+    getVrrpInfo(){
+      getVrrp().then(res=>{
+        if(res.success){
+          this.vrIpForm.virtual_ip = res.data.virtual_ip;
+          this.vrIpForm.enable = res.data.enable;
+        }
+      }).catch(e=>{
+        console.log(e)
+      })
     },
     async updateClusterName() {
       let res = await updateClusterName({
@@ -478,7 +542,8 @@
           this.ruleForm.clusterpwd = ""
           this.clusterid = "";
           this.isHasColony = false;
-          this.activeName = "1"
+          this.activeName = "1";
+          this.members = [];
         }
       }).catch(() => { });
       
@@ -532,18 +597,19 @@
         "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
       var uuid = [];
 
-      for (let i = 0; i < 16; i++) {
+      for (let i = 0; i < 6; i++) {
         uuid[i] = chars[0 | (Math.random() * 50)];
       }
 
       this.ruleForm.clusterpwd = uuid.join("");
     },
     onIpBlur(ip) {
-      this.ruleForm.virtualip = ip;
+      this.vrIpForm.virtual_ip = ip;
     }
   },
   mounted() {
     this.findCluster();
+    this.getVrrpInfo();
   },
   created() { }
 };

--
Gitblit v1.8.0