Quellcode durchsuchen

外墙设计选项卡回显逻辑修改,已更改删除的默认选第一项

yanym vor 2 Wochen
Ursprung
Commit
6e799d4eb9
1 geänderte Dateien mit 28 neuen und 11 gelöschten Zeilen
  1. 28 11
      src/views/AIDesign/design.vue

+ 28 - 11
src/views/AIDesign/design.vue

@@ -722,23 +722,33 @@ export default class extends Vue {
           if (response.Data.F_Color) {
             this.DesignStyle = this.designStyles[0].value;
           } else {
-            this.DesignStyle = response.Data.F_DesignStyle || this.designStyles[0].value;
+              this.DesignStyle = this.cardValueFindIndex(response.Data.F_DesignStyle,this.designStyles) == -1 ? this.designStyles[0].value : response.Data.F_DesignStyle;
+            // this.DesignStyle = response.Data.F_DesignStyle || this.designStyles[0].value;
           }
-          this.ColorCard = response.Data.F_ColorCard || this.stoneColors[0].value;
-          this.selectedProcess = response.Data.F_DeepGrooveTech || this.deepSlotProcesses[0].value;
+            this.ColorCard = this.cardValueFindIndex(response.Data.F_ColorCard,this.stoneColors) == -1 ? this.stoneColors[0].value : response.Data.F_ColorCard;
+          // this.ColorCard = response.Data.F_ColorCard || this.stoneColors[0].value;
+            this.selectedProcess = this.cardValueFindIndex(response.Data.F_DeepGrooveTech,this.deepSlotProcesses) == -1 ? this.deepSlotProcesses[0].value : response.Data.F_DeepGrooveTech;
+            // this.selectedProcess = response.Data.F_DeepGrooveTech || this.deepSlotProcesses[0].value;
           // 有墙面工艺
             if (this.selectedProcess && this.selectedProcess != '平涂') {
                 const selectedProcessSelctIndex = this.deepSlotProcesses.findIndex(item => item.value === this.selectedProcess);
                 // 墙面分割线选项
                 this.splitWays = this.deepSlotProcesses[selectedProcessSelctIndex].subitems;
-                this.selectedSplit = response.Data.F_DivisionMethod || this.splitWays[0].value;
+                this.selectedSplit = this.cardValueFindIndex(response.Data.F_DivisionMethod,this.splitWays) == -1 ? this.splitWays[0].value : response.Data.F_DivisionMethod;
+                // this.selectedSplit = response.Data.F_DivisionMethod || this.splitWays[0].value;
             }
-          this.selectedWindowFrame = response.Data.F_WindowsColor || this.windowFrames[0].value;
-          this.selectedRailing = response.Data.F_CastRailing || this.railings[0].value;
-          this.selectedTile = response.Data.F_GlazedTile || this.tiles[0].value;//新琉璃瓦
-          this.selectedSkirtType = response.Data.F_SkirtType || this.skirtTypes[0].value;//墙裙
-          this.selectedReliefType = response.Data.F_carvingType || this.outsideRelief[0].value;//浮雕
-          this.selectedWindowStyle = response.Data.F_WindowsStyle || this.WindowStyle[0].value;//窗套样式
+            this.selectedWindowFrame = this.cardValueFindIndex(response.Data.F_WindowsColor,this.windowFrames) == -1 ? this.windowFrames[0].value : response.Data.F_WindowsColor;
+            // this.selectedWindowFrame = response.Data.F_WindowsColor || this.windowFrames[0].value;
+            this.selectedRailing = this.cardValueFindIndex(response.Data.F_CastRailing,this.railings) == -1 ? this.railings[0].value : response.Data.F_CastRailing;
+            // this.selectedRailing = response.Data.F_CastRailing || this.railings[0].value;
+            this.selectedTile = this.cardValueFindIndex(response.Data.F_GlazedTile,this.tiles) == -1 ? this.tiles[0].value : response.Data.F_GlazedTile;
+            // this.selectedTile = response.Data.F_GlazedTile || this.tiles[0].value;//新琉璃瓦
+            this.selectedSkirtType = this.cardValueFindIndex(response.Data.F_SkirtType,this.skirtTypes) == -1 ? this.skirtTypes[0].value : response.Data.F_SkirtType;
+            // this.selectedSkirtType = response.Data.F_SkirtType || this.skirtTypes[0].value;//墙裙
+            this.selectedReliefType = this.cardValueFindIndex(response.Data.F_carvingType,this.outsideRelief) == -1 ? this.outsideRelief[0].value : response.Data.F_carvingType;
+            // this.selectedReliefType = response.Data.F_carvingType || this.outsideRelief[0].value;//浮雕
+            this.selectedWindowStyle = this.cardValueFindIndex(response.Data.F_WindowsStyle,this.WindowStyle) == -1 ? this.WindowStyle[0].value : response.Data.F_WindowsStyle;
+            // this.selectedWindowStyle = response.Data.F_WindowsStyle || this.WindowStyle[0].value;//窗套样式
           this.oldf_id = response.Data.F_ID;
           this.color_selValue = response.Data.F_Color || null;// 外墙平涂选中的值
           if (this.color_selValue) {
@@ -786,12 +796,19 @@ export default class extends Vue {
               this.ColumnTypes = [];
             }
           }
-          this.selectedColumnType = F_ColumnType;//罗马柱
+            this.selectedColumnType = this.cardValueFindIndex(F_ColumnType,this.ColumnTypes) == -1 ? this.ColumnTypes[0].value : F_ColumnType;
+          // this.selectedColumnType = F_ColumnType;//罗马柱
         }
       }
     })
   }
 
+  //判断选项卡初始化值是否还存在
+    cardValueFindIndex(value,array){
+        const index = array.findIndex(item => item.value === value);
+        return index;
+    }
+
   // 添加一个新的辅助方法用于将图片URL转换为File对象
   private async urlToFile(url: string, filename: string): Promise<File> {
     try {