From be590d48f66806716c990bdce18d0ed90bf18797 Mon Sep 17 00:00:00 2001
From: zhaowei <zhaowei>
Date: 星期二, 04 三月 2025 15:52:28 +0800
Subject: [PATCH] 420项目: 1、大屏车间管理页面新增及编辑时随意输入车间名称调整为选择已有车间 2、增加车间看板拖拽及缩放功能权限功能 3、实现车间看板设备状态数量及图表数据由后台驱动 4、车间看板页面月、周、日利用率图表数据由后台驱动 5、车间看板页面报警信息列表数据由后台驱动 6、车间看板页面调整右侧设备状态判定,同时加入异常状态展示(设备编号背景色变为红色)

---
 src/views/system/modules/WorkshopModal.vue |   61 +++++++++++++++---------------
 1 files changed, 30 insertions(+), 31 deletions(-)

diff --git a/src/views/system/modules/WorkshopModal.vue b/src/views/system/modules/WorkshopModal.vue
index 8e886b0..22a0f81 100644
--- a/src/views/system/modules/WorkshopModal.vue
+++ b/src/views/system/modules/WorkshopModal.vue
@@ -12,14 +12,19 @@
 
     <a-spin :spinning="confirmLoading">
       <a-form-model ref="form" v-bind="layout" :model="model" :rules="validatorRules">
-        <a-form-model-item label="杞﹂棿鍚嶇О" required prop="workshopName">
-          <a-input v-model="model.workshopName" placeholder="璇疯緭鍏ヨ溅闂村悕绉�"/>
+        <a-form-model-item label="杞﹂棿鍚嶇О" required prop="productionId">
+          <!--<a-input v-model="model.workshopName" placeholder="璇疯緭鍏ヨ溅闂村悕绉�"/>-->
+          <a-select v-model="model.productionId" placeholder="璇烽�夋嫨杞﹂棿" @change="handleSelectChange">
+            <a-select-option v-for="item in workshopList" :key="item.id">
+              {{item.productionName}}
+            </a-select-option>
+          </a-select>
         </a-form-model-item>
         <a-form-model-item label="杞﹂棿鑳屾櫙鍥�" required prop="backgroundImage">
           <j-image-upload class="avatar-uploader" text="涓婁紶" v-model="model.backgroundImage"></j-image-upload>
         </a-form-model-item>
         <!--<a-form-model-item label="璁惧缂栧彿棰滆壊">-->
-          <!--<a-input type="color" v-model="model.equipmentIdColor"></a-input>-->
+        <!--<a-input type="color" v-model="model.equipmentIdColor"></a-input>-->
         <!--</a-form-model-item>-->
         <a-form-model-item label="鎺堟潈鏍囪瘑">
           <a-input placeholder="璇疯緭鍏ユ巿鏉冩爣璇�" v-model="model.perms"/>
@@ -30,11 +35,16 @@
 </template>
 
 <script>
-  import api from '@/api/mdc'
+  import signageApi from '@/api/signage'
 
   export default {
     name: 'WorkshopModal',
     components: {},
+    props: {
+      workshopList: {
+        type: Array
+      }
+    },
     data() {
       return {
         title: '鎿嶄綔',
@@ -47,15 +57,7 @@
         },
         confirmLoading: false,
         validatorRules: {
-          workshopName: [
-            { required: true, message: '璇疯緭鍏ヨ溅闂村悕绉�!' },
-            { min: 2, max: 30, message: '闀垮害鍦� 2 鍒� 30 涓瓧绗�', trigger: 'blur' }
-          ],
-          id: [
-            { required: true, message: '璇疯緭鍏ヨ溅闂寸紪鍙�!' },
-            { min: 0, max: 64, message: '闀垮害涓嶈秴杩� 64 涓瓧绗�', trigger: 'blur' },
-            { validator: this.validateRoleCode }
-          ],
+          workshopName: [{ required: true, message: '璇烽�夋嫨杞﹂棿!' }],
           backgroundImage: [
             { required: true, message: '璇蜂笂浼犺溅闂磋儗鏅浘!' }
           ]
@@ -80,10 +82,9 @@
           this.isEdit = false
         }
       },
-      close() {
-        this.$refs.form.clearValidate()
-        this.$emit('close')
-        this.visible = false
+      handleSelectChange(value) {
+        const workshopItem = this.workshopList.find(item => item.id === value)
+        this.model.workshopName = workshopItem.productionName
       },
       handleOk() {
         const that = this
@@ -95,23 +96,23 @@
             let obj
             if (!this.isEdit) {
               console.log('瑙﹀彂鏂板')
-              obj = api.addWorkshopApi(this.model)
+              obj = signageApi.addWorkshopApi(this.model)
             } else {
               console.log('瑙﹀彂淇敼')
-              obj = api.editWorkshopApi(this.model)
+              obj = signageApi.editWorkshopApi(this.model)
             }
             obj.then((res) => {
               if (res.success) {
                 that.$notification.success({
-                  message:'娑堟伅',
-                  description:res.message
-                });
+                  message: '娑堟伅',
+                  description: res.message
+                })
                 that.$emit('ok')
               } else {
                 that.$notification.warning({
-                  message:'娑堟伅',
-                  description:res.message
-                });
+                  message: '娑堟伅',
+                  description: res.message
+                })
               }
             }).finally(() => {
               that.confirmLoading = false
@@ -125,12 +126,10 @@
       handleCancel() {
         this.close()
       },
-      validateRoleCode(rule, value, callback) {
-        if (/[\u4E00-\u9FA5]/g.test(value)) {
-          callback('杞﹂棿缂栧彿涓嶅彲杈撳叆姹夊瓧!')
-        } else {
-          callback()
-        }
+      close() {
+        this.$refs.form.clearValidate()
+        this.$emit('close')
+        this.visible = false
       }
     }
   }

--
Gitblit v1.9.3