From 0d45d9e949c4f6d63f309916cbd2ab97ac700566 Mon Sep 17 00:00:00 2001
From: lzhe <lzhe@example.com>
Date: 星期二, 01 十月 2024 20:43:36 +0800
Subject: [PATCH] 1

---
 src/views/console/workstation/Dialog.vue |   37 +++++++++++++++++++++++++++----------
 1 files changed, 27 insertions(+), 10 deletions(-)

diff --git a/src/views/console/workstation/Dialog.vue b/src/views/console/workstation/Dialog.vue
index e5693f0..4e0ddc4 100644
--- a/src/views/console/workstation/Dialog.vue
+++ b/src/views/console/workstation/Dialog.vue
@@ -1,14 +1,14 @@
 <template>
     <el-dialog :title="titleMap[mode]" v-model="visible" :width="800" destroy-on-close @closed="$emit('closed')">
-        <el-form :model="form" :rules="rules" :disabled="mode == 'show'" ref="dialogForm" label-width="120px"
-            label-position="center">
+        <el-form v-if="visible" :model="form" :rules="rules" :disabled="mode == 'show'" ref="dialogForm"
+            label-width="120px" label-position="center">
             <el-row>
                 <el-col :span="24" style="padding:12px 0;">
                     鍩虹淇℃伅
                 </el-col>
                 <el-col :span="12">
                     <el-form-item label="宸ヤ綅缂栧彿" prop="code">
-                        <el-input style="width: 240px" :disabled="form.id" v-model="form.code" placeholder="宸ヤ綅缂栧彿"
+                        <el-input style="width: 240px" :disabled="!!form.id" v-model="form.code" placeholder="宸ヤ綅缂栧彿"
                             clearable></el-input>
                     </el-form-item>
                 </el-col>
@@ -19,7 +19,7 @@
                 </el-col>
                 <el-col :span="12">
                     <el-form-item label="宸ヤ綅绫诲瀷" prop="type">
-                        <el-select v-model="form.type" style="width: 240px" :disabled="form.id">
+                        <el-select v-model="form.type" style="width: 240px" :disabled="!!form.id">
                             <el-option v-for="item in options.types" :key="item.value" :label="item.label"
                                 :value="item.value" />
                         </el-select>
@@ -55,8 +55,8 @@
                 <el-col :span="12" v-if="form.type == 0 && !form.id">
                     <el-form-item label="閫夋嫨鏈哄櫒" prop="linkWay">
                         <el-radio-group v-model="form.linkWay">
-                            <el-radio v-for="item in options.linkWays" :key="item.value"
-                                :label="item.value">{{ item.label }}</el-radio>
+                            <el-radio v-for="item in options.linkWays" :key="item.value" :label="item.value">{{
+                                item.label }}</el-radio>
                         </el-radio-group>
                     </el-form-item>
                 </el-col>
@@ -92,7 +92,7 @@
                         </el-select>
                     </el-form-item>
                 </el-col>
-                <el-col :span="12">
+                <!-- <el-col :span="12">
                     <el-form-item label="绋嬪簭浼犺緭鏂瑰紡" prop="transmissionMethod">
                         <el-select v-model="form.transmissionMethod" style="width: 240px">
                             <el-option label="FTP" :value="1" />
@@ -107,7 +107,7 @@
                                 :value="item.value" />
                         </el-select>
                     </el-form-item>
-                </el-col>
+                </el-col> -->
                 <el-col :span="12" v-if="form.ftpDirectoryType == 1">
                     <el-form-item label="鍏宠仈鐩綍" prop="directoryId">
                         <el-select v-model="form.directoryId" style="width: 240px">
@@ -293,9 +293,10 @@
     methods: {
         //鏄剧ず
         open(mode = 'add', params) {
+            this.isSaveing = false;
             this.mode = mode;
             this.visible = true;
-
+            console.log('---------', params)
             if (params) {
                 Object.keys(this.form).forEach(key => {
                     this.form[key] = params[key]
@@ -308,6 +309,7 @@
                 })
             } else {
                 this.form.id = ''
+                this.form.workbenchVOList = []
                 Object.keys(this.form).forEach(key => {
                     this.form[key] = ''
                 })
@@ -316,10 +318,22 @@
         },
         //琛ㄥ崟鎻愪氦鏂规硶
         submit() {
+            if (!this.form.workbenchVOList) {
+                this.form.workbenchVOList = []
+            }
+            if (this.mode === 'add' && this.form.linkWay === 1) {
+                this.form.machineId
+                this.form.machineCode = this.form.code
+                this.form.machineName = this.form.name
+            }
             this.$refs.dialogForm.validate(async (valid) => {
                 if (valid) {
                     this.isSaveing = true;
-                    var res = await this.$API.workstation.add.post(this.form);
+                    try {
+                        var res = await this.$API.workstation.add.post(this.form);
+                    } catch (error) {
+                        this.isSaveing = false;
+                    }
                     this.isSaveing = false;
                     if (res.code == 200) {
                         this.$emit('success', this.form, this.mode)
@@ -375,6 +389,9 @@
             })
         },
         addWork() {
+            if (!this.form.workbenchVOList) {
+                this.form.workbenchVOList = []
+            }
             this.form.workbenchVOList.push({
                 sort: this.form.workbenchVOList.length + 1,
                 name: ''

--
Gitblit v1.9.3