From d67c302cf1cdc406cc4a05b687deab10a5c3fa89 Mon Sep 17 00:00:00 2001
From: "HUOJIN\\92525" <925258474@qq.com>
Date: Fri, 5 Jul 2024 18:43:07 +0800
Subject: [PATCH] =?UTF-8?q?=E5=9F=BA=E7=A1=80=E8=B5=84=E6=96=99=E7=95=8C?=
 =?UTF-8?q?=E9=9D=A2=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
 src/components/Crud/CRUD.operation.vue | 56 ++++++++++++++++++-----
 src/views/base-data/bigBom/index.vue   |  4 +-
 src/views/base-data/bigItem/index.vue  |  2 +-
 src/views/base-data/item/index.vue     | 63 ++++++++------------------
 src/views/base-data/point/index.vue    |  1 +
 src/views/base-data/stock/index.vue    |  1 +
 6 files changed, 67 insertions(+), 60 deletions(-)
diff --git a/src/components/Crud/CRUD.operation.vue b/src/components/Crud/CRUD.operation.vue
index 0f6013b..424eb0e 100644
--- a/src/components/Crud/CRUD.operation.vue
+++ b/src/components/Crud/CRUD.operation.vue
@@ -210,19 +210,51 @@ export default {
 
     },
     showcolumn() {
-      const strHidden = sessionStorage.getItem(this.tableKey)
-      this.hiddenColumns = JSON.parse(strHidden);
-      const table = this.crud.props.table
-      this.hiddenColumns.forEach((column, index) => {
-        const vm = table.$children.find(e => e.prop === column.property)
-        const columnConfig = vm.columnConfig
-        if (column.visible) {
-          columnConfig.width = column.width
-          columnConfig.visible = column.visible
-          vm.owner.store.commit('insertColumn', columnConfig, index + 1, null)
+      /*      const strHidden = sessionStorage.getItem(this.tableKey)
+            this.hiddenColumns = JSON.parse(strHidden);
+            const table = this.crud.props.table
+            this.hiddenColumns.forEach((column, index) => {
+              const vm = table.$children.find(e => e.prop === column.property)
+              const columnConfig = vm.columnConfig
+              if (column.visible) {
+                columnConfig.width = column.width
+                columnConfig.visible = column.visible
+                vm.owner.store.commit('insertColumn', columnConfig, index + 1, null)
+              }
+            })
+            this.updateTableColumns();*/
+
+      try {
+        // 从sessionStorage安全地获取并解析hiddenColumns
+        const strHidden = sessionStorage.getItem(this.tableKey)
+        if (strHidden) {
+          this.hiddenColumns = JSON.parse(strHidden);
+        } else {
+          // 如果没有找到相应的存储信息,可以初始化为空数组或相应的默认值
+          this.hiddenColumns = [];
         }
-      })
-      this.updateTableColumns();
+
+        const table = this.crud.props.table
+        // 优化循环中的条件判断和错误处理
+        this.hiddenColumns.forEach((column, index) => {
+          const vm = table.$children.find(e => e && e.prop === column.property)
+          if (vm) {
+            const columnConfig = vm.columnConfig;
+            // 确保columnConfig存在
+            if (columnConfig) {
+              if (column.visible) {
+                // 仅当列需要显示时,才更新其配置
+                columnConfig.width = column.width;
+                columnConfig.visible = column.visible;
+                vm.owner.store.commit('insertColumn', columnConfig, index + 1, null);
+              }
+            }
+          }
+        });
+        this.updateTableColumns();
+      } catch (error) {
+        console.error("处理列配置时发生错误:", error);
+      }
     },
     //列拖拽
     columnDrop() {
diff --git a/src/views/base-data/bigBom/index.vue b/src/views/base-data/bigBom/index.vue
index c0a876f..bc3a017 100644
--- a/src/views/base-data/bigBom/index.vue
+++ b/src/views/base-data/bigBom/index.vue
@@ -79,7 +79,7 @@ import rrOperation from '@crud/RR.operation'
 import crudOperation from '@crud/CRUD.operation'
 import udOperation from '@crud/UD.operation'
 import pagination from '@crud/Pagination'
-import {getAllBigItem} from '@/api/bigItem'
+import {queryAllBigItem} from '@/api/bigItem'
 import {getItemsList} from '@/api/item'
 
 const defaultForm = {
@@ -145,7 +145,7 @@ export default {
       return true
     },
     getBigItem() {
-      getAllBigItem({}).then(res => {
+      queryAllBigItem({}).then(res => {
         this.bigItemList = res
       })
     },
diff --git a/src/views/base-data/bigItem/index.vue b/src/views/base-data/bigItem/index.vue
index 96cfae1..937423b 100644
--- a/src/views/base-data/bigItem/index.vue
+++ b/src/views/base-data/bigItem/index.vue
@@ -82,7 +82,7 @@ export default {
   mixins: [presenter(), header(), form(defaultForm), crud()],
   cruds() {
     return CRUD({
-      title: '成品管理',
+      title: '总成',
       url: 'api/bigItem',
       idField: 'id',
       sort: 'id,desc',
diff --git a/src/views/base-data/item/index.vue b/src/views/base-data/item/index.vue
index a7fc4df..4abf1f0 100644
--- a/src/views/base-data/item/index.vue
+++ b/src/views/base-data/item/index.vue
@@ -34,7 +34,7 @@
           class="upload-demo"
           slot='right'
           style="float: right;padding-left: 5px"
-          action="/api/item/import_data"
+          :action="baseApi+'/api/item/import_data'"
           :file-list="fileList"
           :on-error="handleErr"
           :on-success=" (response, file, fileList) => {
@@ -57,19 +57,10 @@
             
           
 
-          
-            
-              
-            
+          
+            
           
 
-
           
             
@@ -82,11 +73,12 @@
             
           
 
-          
-            
+            
               
           
 
-          
-