From 10bc47a275dfd896ba4e72f073d9f901c5390597 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Wed, 22 Mar 2023 16:05:14 +0800
Subject: [PATCH] 模块不绑定设备编码,设备编码绑定模块

---
 src/views/modules/modules.vue |   51 ++++++++++++++++++++++++++++++---------------------
 1 files changed, 30 insertions(+), 21 deletions(-)

diff --git a/src/views/modules/modules.vue b/src/views/modules/modules.vue
index a300148..adea983 100644
--- a/src/views/modules/modules.vue
+++ b/src/views/modules/modules.vue
@@ -65,7 +65,7 @@
 </template>
 
 <script>
-import {getList, getDetail, add, update, remove} from "@/api/modules/modules";
+import {getList, getDetail, add, update, remove,getAll} from "@/api/modules/modules";
 import {mapGetters} from "vuex";
 import Function from "@/views/modules/function";
 import ModulesView from "@/views/modules/modulesView";
@@ -73,6 +73,33 @@
 export default {
   components: {ModulesView, Function},
   data() {
+    var validateName = (rule, value, callback) => {
+      if (value) {
+        let params = {
+          name:value
+        }
+        getAll(params).then(res => {
+          let data = res.data.data
+          if (this.form.id) {
+            if (data[0].id== this.form.id) {
+              callback();
+            } else if (data.length > 0) {
+              callback(new Error('该模块已存在'));
+            } else {
+              callback();
+            }
+          } else {
+            if (data.length > 0) {
+              callback(new Error('该模块已存在'));
+            } else {
+              callback();
+            }
+          }
+        })
+      } else {
+        callback(new Error('请输入模块名'));
+      }
+    };
     return {
       // 弹框标题
       title: '',
@@ -116,27 +143,9 @@
             span: 24,
             rules: [{
               required: true,
-              message: "请输入模块名称",
-              trigger: "blur"
+              trigger: "blur",
+              validator: validateName
             }],
-          },
-          {
-            label: "设备编码",
-            prop: "equipmentId",
-            span:24,
-            type: "select",
-            dicUrl: `/api/equipment/equipment/all?type=1`,
-            props: {
-              label: "code",
-              value: "id"
-            },
-            rules: [
-              {
-                required: true,
-                message: '请选择设备',
-                trigger: 'blur'
-              }
-            ]
           },
           {
             label: "宽",

--
Gitblit v1.9.3