Bladeren bron

入库差不多完成了

shaogen1995 4 maanden geleden
bovenliggende
commit
1d32166106

+ 32 - 0
src/pages/B_enterTibet/B3goodsTable/B3GaddNow/data.ts

@@ -0,0 +1,32 @@
+import { B3nowFormType, B3nowSearchType } from './type'
+
+export const B3nowArr1: B3nowSearchType = [
+  { name: '藏品编号', key: 'num', type: '输入框' },
+  { name: '藏品名称', key: 'name', type: '输入框' },
+  { name: '编号类型', nameKey: '藏品编号类型', key: 'numName', type: '下拉框' },
+  { name: '文物级别', key: 'dictLevel', type: '下拉框' },
+  { name: '文物类别', key: 'dictType', type: '级联' }
+]
+
+export const B3nowArr2: B3nowSearchType = [
+  { name: '年代', key: 'dictAge', type: '级联' },
+  { name: '质地', nameKey: '单一质地', key: 'dictTexture3', type: '级联' },
+  { name: '完残程度', key: 'dictTorn', type: '级联' },
+  { name: '来源', key: 'source', type: '级联' },
+  { name: '入藏状态', key: 'statusCollect', type: '下拉框' },
+  { name: '库存状态', key: 'statusStorage', type: '下拉框' }
+]
+export const B3baseFormData: B3nowFormType = {
+  num: '',
+  name: '',
+  numName: '藏品总登记号',
+  dictLevel: '',
+  dictType: '',
+  dictAge: '',
+  dictTexture3: '',
+  dictTorn: '',
+  source: '',
+  statusCollect: null,
+  statusStorage: null,
+  isFocus: 0
+}

+ 4 - 1
src/pages/B_enterTibet/B3goodsTable/B3GaddNow/index.module.scss

@@ -39,9 +39,12 @@
             }
           }
           .ant-select {
-            width: 120px;
+            width: 130px;
           }
         }
+        .ant-select-selection-placeholder {
+          color: black;
+        }
       }
       .ant-table-cell {
         padding: 8px !important;

+ 131 - 64
src/pages/B_enterTibet/B3goodsTable/B3GaddNow/index.tsx

@@ -1,6 +1,6 @@
-import React, { useCallback, useEffect, useMemo, useState } from 'react'
+import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react'
 import styles from './index.module.scss'
-import { Button, Checkbox, Input, Modal, Select } from 'antd'
+import { Button, Cascader, Checkbox, Input, Modal, Select } from 'antd'
 import MyPopconfirm from '@/components/MyPopconfirm'
 import MyTable from '@/components/MyTable'
 import { B3eTableC } from '@/utils/tableData'
@@ -9,6 +9,11 @@ import { MessageFu } from '@/utils/message'
 import { C1GoodType } from '@/pages/C_goodsManage/C1ledger/type'
 import { API_goodsNowAdd } from '@/store/action/C1ledger'
 import { selectObj } from '@/utils/select'
+import { useSelector } from 'react-redux'
+import { RootState } from '@/store'
+import { cascaderArr } from '../B3GaddNew/data'
+import { B3nowSearchType } from './type'
+import { B3baseFormData, B3nowArr1, B3nowArr2 } from './data'
 
 type Props = {
   closeFu: () => void
@@ -17,23 +22,70 @@ type Props = {
   dataResFu: (data: C1GoodType[]) => void
   isOne?: boolean //从藏品编辑进来 只能选择一个藏品
   oldCheckArr: C1GoodType[]
+  canObj?: any //其他页面带过来的参数
 }
 
-function B3GaddNow({ nowSta, closeFu, isOne = false, dataResFu, oldCheckArr }: Props) {
-  // 待完善 根据key值不同 来设置不同的下拉框数据,待完善筛选条件
+function B3GaddNow({ nowSta, closeFu, isOne = false, dataResFu, oldCheckArr, canObj }: Props) {
+  // 入藏状态特别过滤
+  const RuChangSelect = useMemo(() => {
+    let arr = selectObj['入藏状态']
+    if (nowSta.key === '1') arr = arr.filter(v => v.label === '已鉴定')
+    else if (['2', '3'].includes(nowSta.key)) arr = arr.filter(v => v.value !== 3)
+    return arr
+  }, [nowSta.key])
+
+  const [formData, setFormData] = useState(B3baseFormData)
+  const formDataRef = useRef(B3baseFormData)
+
+  useEffect(() => {
+    formDataRef.current = { ...formData }
+  }, [formData])
+
+  // 点击搜索的 时间戳
+  const [timeKey, setTimeKey] = useState(0)
+
+  // 点击搜索
+  const clickSearch = useCallback(() => {
+    setTimeout(() => {
+      setTimeKey(Date.now())
+    }, 50)
+  }, [])
+
+  // 点击重置
+  const resetSelectFu = useCallback(() => {
+    setFormData(B3baseFormData)
+    setTimeout(() => {
+      setTimeKey(Date.now())
+    }, 50)
+  }, [])
 
   const [tableList, setTableList] = useState<C1GoodType[]>([])
+  const [tableListAll, setTableListAll] = useState<C1GoodType[]>([])
 
-  const getList = useCallback(async (url: string, data: any) => {
-    const res = await API_goodsNowAdd(url, data)
+  // 封装发送请求的函数
+  const getList = useCallback(async () => {
+    let canObjTemp = canObj || {}
+    const obj = {
+      ...formDataRef.current,
+      ...canObjTemp
+    }
+    const res = await API_goodsNowAdd(nowSta.id, obj)
     if (res.code === 0) {
-      setTableList(res.data)
+      const arr: any = res.data.map((v: any) => ({
+        ...v,
+        statusCollect: (selectObj['入藏状态'].find(c => c.value === v.statusCollect) || {}).label,
+        statusStorage: (selectObj['库存状态'].find(c => c.value === v.statusStorage) || {}).label
+      }))
+
+      setTableList(arr)
+
+      if (timeKey === 0) setTableListAll(arr)
     }
-  }, [])
+  }, [canObj, nowSta.id, timeKey])
 
   useEffect(() => {
-    getList(nowSta.id, {})
-  }, [getList, nowSta.id])
+    getList()
+  }, [getList])
 
   // 多选
   const [checkArr, setCheckArr] = useState<C1GoodType[]>([])
@@ -48,10 +100,10 @@ function B3GaddNow({ nowSta, closeFu, isOne = false, dataResFu, oldCheckArr }: P
 
   // 过滤掉 tableList 里面没有的id
   const resNum = useMemo(() => {
-    const tableIds = tableList.map(v => v.id)
+    const tableIds = tableListAll.map(v => v.id)
     const arr = checkArr.filter(v => tableIds.includes(v.id))
     return arr.length
-  }, [checkArr, tableList])
+  }, [checkArr, tableListAll])
 
   const checkFu = useCallback(
     (item: C1GoodType) => {
@@ -102,6 +154,16 @@ function B3GaddNow({ nowSta, closeFu, isOne = false, dataResFu, oldCheckArr }: P
     ]
   }, [])
 
+  // 所有级联的数据平铺
+  const { dictAll } = useSelector((state: RootState) => state.Z1dict)
+  const cascaderObj = useMemo(() => {
+    let obj: any = {}
+    if (dictAll && dictAll.length) {
+      obj = cascaderArr(dictAll)
+    }
+    return obj
+  }, [dictAll])
+
   // 点击提交
   const btnOk = useCallback(() => {
     dataResFu(checkArr)
@@ -109,6 +171,50 @@ function B3GaddNow({ nowSta, closeFu, isOne = false, dataResFu, oldCheckArr }: P
     closeFu()
   }, [checkArr, closeFu, dataResFu, isOne])
 
+  // 顶部筛选
+  const searchDom = useCallback(
+    (arr: B3nowSearchType) => {
+      return arr.map(item => {
+        return (
+          <div key={item.name}>
+            <span>{item.name}:</span>
+            {item.type === '输入框' ? (
+              <Input
+                value={formData[item.key as 'num']}
+                onChange={e => setFormData({ ...formData, [item.key]: e.target.value })}
+                style={{ width: 195 }}
+                placeholder={item.name}
+                maxLength={30}
+              />
+            ) : item.type === '下拉框' ? (
+              <Select
+                options={
+                  item.name === '入藏状态'
+                    ? RuChangSelect
+                    : selectObj[(item.nameKey || item.name) as '入藏状态']
+                }
+                placeholder='全部'
+                allowClear={true}
+                value={formData[item.key] || null}
+                onChange={e => setFormData({ ...formData, [item.key]: e })}
+              />
+            ) : (
+              <Cascader
+                options={cascaderObj[item.nameKey || item.name]}
+                placeholder='全部'
+                fieldNames={{ label: 'name', value: 'id', children: 'children' }}
+                allowClear={true}
+                value={formData[item.key] ? (formData[item.key] as string).split(',') : []}
+                onChange={e => setFormData({ ...formData, [item.key]: e ? e.join(',') : '' })}
+              />
+            )}
+          </div>
+        )
+      })
+    },
+    [RuChangSelect, cascaderObj, formData]
+  )
+
   return (
     <Modal
       wrapClassName={styles.B3GaddNow}
@@ -124,64 +230,25 @@ function B3GaddNow({ nowSta, closeFu, isOne = false, dataResFu, oldCheckArr }: P
     >
       <div className='B3GaMain'>
         <div className='B3GaTop'>
-          <div className='B3Gatopll'>
-            <div>
-              <span>藏品编号:</span>
-              <Input style={{ width: 185 }} placeholder='藏品编号' maxLength={30} />
-            </div>
-            <div>
-              <span>藏品名称:</span>
-              <Input style={{ width: 185 }} placeholder='请输入藏品名称' maxLength={30} />
-            </div>
-
-            <div>
-              <span>编号类型:</span>
-              <Select options={selectObj['藏品编号类型']} defaultValue='藏品总登记号' />
-            </div>
-            <div>
-              <span>文物级别:</span>
-              <Select />
-            </div>
-            <div>
-              <span>类别:</span>
-              <Select />
-            </div>
-          </div>
+          <div className='B3Gatopll'>{searchDom(B3nowArr1)}</div>
           <div>
-            <Checkbox>我关注的</Checkbox>
+            <Checkbox
+              checked={formData.isFocus === 1}
+              onChange={e => setFormData({ ...formData, isFocus: e.target.checked ? 1 : 0 })}
+            >
+              我关注的
+            </Checkbox>
           </div>
         </div>
 
         <div className='B3GaTop'>
-          <div className='B3Gatopll'>
-            <div>
-              <span>年代:</span>
-              <Select />
-            </div>
-            <div>
-              <span>质地:</span>
-              <Select />
-            </div>
-            <div>
-              <span>完残程度:</span>
-              <Select />
-            </div>
-            <div>
-              <span>来源:</span>
-              <Select />
-            </div>
-            <div>
-              <span>入藏状态:</span>
-              <Select />
-            </div>
-            <div>
-              <span>库存状态:</span>
-              <Select />
-            </div>
-          </div>
+          <div className='B3Gatopll'>{searchDom(B3nowArr2)}</div>
           <div>
-            <Button type='primary'>查询</Button>&emsp;
-            <Button>重置</Button>
+            <Button type='primary' onClick={clickSearch}>
+              查询
+            </Button>
+            &emsp;
+            <Button onClick={resetSelectFu}>重置</Button>
           </div>
         </div>
 

+ 23 - 0
src/pages/B_enterTibet/B3goodsTable/B3GaddNow/type.d.ts

@@ -0,0 +1,23 @@
+export type B3nowFormType = {
+  num: string
+  name: string
+  numName: string
+  dictLevel: string
+  dictType: string
+  dictAge: string
+  dictTexture3: string
+  dictTorn: string
+  source: string
+  statusCollect: number | null
+  statusStorage: number | null
+  isFocus: 0 | 1
+}
+
+export type B3nowFormKeyType = keyof B3nowFormType
+
+export type B3nowSearchType = {
+  name: string
+  nameKey?: string
+  key: B3nowFormKeyType
+  type: '输入框' | '下拉框' | '级联'
+}[]

+ 4 - 5
src/pages/C_goodsManage/C2files/data.ts

@@ -5,9 +5,8 @@ import { TypeZ1dict } from '@/pages/Z_system/Z1dict/type'
 import store from '@/store'
 
 export const C2baseFormData: TypeC2Form = {
-  // 待完善 编号类型,藏品编号 effect用途
-  aaaa: '藏品总登记号',
-  bbbb: '',
+  numName: '藏品总登记号',
+  num: '',
   goodName: '',
   fileName: '',
   effect: '',
@@ -39,8 +38,8 @@ export const C2InputKeyArr: {
   type: '输入框' | '下拉框' | '级联'
   data?: any[]
 }[] = [
-  { name: '编号类型', key: 'aaaa', type: '下拉框', data: selectObj['藏品编号类型'] },
-  { name: '藏品编号', key: 'bbbb', type: '输入框' },
+  { name: '编号类型', key: 'numName', type: '下拉框', data: selectObj['藏品编号类型'] },
+  { name: '藏品编号', key: 'num', type: '输入框' },
   { name: '藏品名称', key: 'goodName', type: '输入框' },
   { name: '附件名称', key: 'fileName', type: '输入框' },
   { name: '用途', key: 'effect', type: '级联', data: cascaderFu('附件用途') },

+ 2 - 2
src/pages/C_goodsManage/C2files/type.d.ts

@@ -1,6 +1,6 @@
 export type TypeC2Form = {
-  aaaa: string
-  bbbb: string
+  numName: string
+  num: string
   goodName: string
   fileName: string
   effect: any

+ 13 - 6
src/pages/D_storeManage/D1storage/D1Loc/index.tsx

@@ -18,6 +18,10 @@ function D1Loc({ lookFu, TreeDom, tableId }: Props) {
   const tableLastBtn = useMemo(() => {
     return [
       {
+        title: '是否空置',
+        render: (item: D1siteListType) => (item.isEmpty ? '否' : '是')
+      },
+      {
         title: '相关藏品',
         render: (item: D1siteListType) => {
           return (
@@ -43,12 +47,15 @@ function D1Loc({ lookFu, TreeDom, tableId }: Props) {
   // 右边表格
   const [table, setTable] = useState<D1siteListType[]>([])
 
-  const getTableList = useCallback(async (id: number) => {
-    const res = await D1_APIgetSiteList(id)
-    if (res.code === 0) {
-      setTable(res.data)
-    }
-  }, [])
+  const getTableList = useCallback(
+    async (id: number) => {
+      const res = await D1_APIgetSiteList(id, isNull)
+      if (res.code === 0) {
+        setTable(res.data)
+      }
+    },
+    [isNull]
+  )
 
   useEffect(() => {
     if (tableId) getTableList(tableId)

+ 25 - 18
src/pages/D_storeManage/D1storage/D1goods/index.tsx

@@ -51,20 +51,24 @@ function D1goods({ lookData, TreeDom, tableId }: Props) {
     }, 50)
   }, [formData])
 
-  // 待完善 没有数据
-  const [table, setTable] = useState([])
+  // 待完善 看下返回的字段在表格中显示对不对
+  const [table, setTable] = useState({
+    list: [],
+    total: 0
+  })
 
   // 封装发送请求的函数
   const getListFu = useCallback(async () => {
     const res = await D1_APIgetGoodsList({
       ...formDataRef.current,
       storageId: tableId,
-      ...siteCan.current,
-      pageNum: 1,
-      pageSize: 99999
+      ...siteCan.current
     })
     if (res.code === 0) {
-      setTable(res.data.records)
+      setTable({
+        list: res.data.records,
+        total: res.data.total
+      })
     }
   }, [tableId])
 
@@ -93,15 +97,15 @@ function D1goods({ lookData, TreeDom, tableId }: Props) {
   }, [])
 
   // 页码变化
-  // const paginationChange = useCallback(
-  //   (pageNum: number, pageSize: number) => {
-  //     setFormData({ ...formData, pageNum, pageSize })
-  //     setTimeout(() => {
-  //       setTimeKey(Date.now())
-  //     }, 50)
-  //   },
-  //   [formData]
-  // )
+  const paginationChange = useCallback(
+    (pageNum: number, pageSize: number) => {
+      setFormData({ ...formData, pageNum, pageSize })
+      setTimeout(() => {
+        setTimeKey(Date.now())
+      }, 50)
+    },
+    [formData]
+  )
 
   // 打开侧边栏
   const [cathet, setCathet] = useState(0)
@@ -200,13 +204,16 @@ function D1goods({ lookData, TreeDom, tableId }: Props) {
         <div className='D1Gmainrr'>
           {/* 表格 */}
           <MyTable
-            yHeight={666}
-            list={table}
+            yHeight={620}
+            list={table.list}
             columnsTemp={D1GtableC}
             startBtn={startBtn}
             lastBtn={tableLastBtn}
-            pagingInfo={false}
             widthSet={{ description: 200 }}
+            pageNum={formData.pageNum}
+            pageSize={formData.pageSize}
+            total={table.total}
+            onChange={(pageNum, pageSize) => paginationChange(pageNum, pageSize)}
           />
         </div>
       </div>

+ 1 - 0
src/pages/D_storeManage/D1storage/type.d.ts

@@ -11,6 +11,7 @@ export type D1siteListType = {
   regionName: string
   storageId: number
   updateTime: string
+  isEmpty: null | number
 }
 
 export type D1canType = { layer1: number; layer2: number; layer3: number }

+ 42 - 5
src/pages/D_storeManage/D4impStor/D4edit/index.tsx

@@ -7,7 +7,12 @@ import dayjs from 'dayjs'
 import Z3upFiles from '@/components/Z3upFiles'
 import ZRichTexts from '@/components/ZRichTexts'
 import MyPopconfirm from '@/components/MyPopconfirm'
-import history, { btnFlagFu2, kuIsTreeChangeFu, openGoodsInfoFu } from '@/utils/history'
+import history, {
+  btnFlagFu2,
+  kuIsTreeChangeFu,
+  openGoodsInfoFu,
+  ruTransformDataFu
+} from '@/utils/history'
 import { MessageFu } from '@/utils/message'
 import MyTable from '@/components/MyTable'
 import classNames from 'classnames'
@@ -86,7 +91,7 @@ function D4edit() {
   const [kuIsTree, setKuIsTreeFu] = useState<KuIsTreeType[]>([])
 
   const kuIsTreeFu = useCallback(async (id: number) => {
-    const res = await D1_APIgetSiteList(id)
+    const res = await D1_APIgetSiteList(id, false)
     if (res.code === 0) {
       const arrTemp: KuIsTreeType[] = kuIsTreeChangeFu(res.data)
       setKuIsTreeFu(arrTemp)
@@ -440,6 +445,31 @@ function D4edit() {
     return obj
   }, [dictAll])
 
+  // 自动分配空置库位
+  const autoNullFu = useCallback(async () => {
+    const res = await D1_APIgetSiteList(topInfo.storageId!, true)
+    if (res.code === 0) {
+      const arrRes: any = ruTransformDataFu(res.data || [])
+
+      arrRes.sort(() => Math.random() - 0.5)
+
+      const oldGoods = [...topInfo.goods]
+
+      oldGoods.forEach((v, i) => {
+        if (i <= arrRes.length - 1) {
+          v.siteId = arrRes[i].siteId
+          v.siteStr = arrRes[i].siteStr
+        }
+      })
+
+      setTopInfo({
+        ...topInfo,
+        goods: oldGoods
+      })
+      MessageFu.success('自动分配空置库位成功')
+    }
+  }, [topInfo])
+
   return (
     <div className={styles.D4edit}>
       <div className='pageTitle'>入库-{pageTitTxt}</div>
@@ -513,7 +543,10 @@ function D4edit() {
             {/* 待完善 */}
             <div className='D4rowll'>相关出库单:</div>
             <div className='D4rowrr'>
-              <Select disabled={['3', '4'].includes(key)} placeholder='请搜索出库单编码' />
+              <Select
+                disabled={['3', '4'].includes(key)}
+                placeholder={['3', '4'].includes(key) ? '(空)' : '请搜索出库单编码'}
+              />
             </div>
           </div>
 
@@ -626,8 +659,11 @@ function D4edit() {
                   >
                     批量设置存放位置
                   </Button>
-                  {/* 待完善 */}
-                  <Button type='primary' disabled={!(topInfo.goods && topInfo.goods.length)}>
+                  <Button
+                    type='primary'
+                    onClick={autoNullFu}
+                    disabled={!(topInfo.goods && topInfo.goods.length)}
+                  >
                     自动分配空置库位
                   </Button>
                 </>
@@ -685,6 +721,7 @@ function D4edit() {
           closeFu={() => setNowSta({ key: '', id: '' })}
           dataResFu={data => setTopInfo({ ...topInfo, goods: data })}
           oldCheckArr={topInfo.goods || []}
+          canObj={{ storageId: topInfo.storageId }}
         />
       ) : null}
 

+ 6 - 2
src/store/action/D1storage.ts

@@ -10,8 +10,12 @@ export const D1_APIgetTree = () => {
 /**
  * 分库管理 - 按库位查看-列表
  */
-export const D1_APIgetSiteList = (id: number) => {
-  return http.get(`cms/site/page/${id}`)
+export const D1_APIgetSiteList = (id: number, isNull: boolean) => {
+  let url = `cms/site/page/${id}`
+
+  if (isNull) url += '?isEmpty=1'
+
+  return http.get(url)
 }
 
 /**

+ 19 - 0
src/utils/history.ts

@@ -319,3 +319,22 @@ export function kuIsTreeChangeFu(arr: any[]): KuIsTreeType[] {
 
   return Array.from(regionMap.values())
 }
+
+// 入库-自动分配空置库位
+export const ruTransformDataFu = (data: any[]): any[] => {
+  // 用对象缓存区域基准ID
+  const regionBaseIdCache: Record<string, number> = {}
+
+  // 先遍历建立区域-基准ID映射
+  data.forEach(item => {
+    if (!regionBaseIdCache[item.regionName]) {
+      regionBaseIdCache[item.regionName] = item.id
+    }
+  })
+
+  // 转换数据结构
+  return data.map(item => ({
+    siteId: item.id,
+    siteStr: `${regionBaseIdCache[item.regionName]},${item.layer1},${item.layer2},${item.layer3}`
+  }))
+}

+ 12 - 6
src/utils/select.ts

@@ -22,14 +22,15 @@ export const selectObj = {
     { value: '出土(水)登记号', label: '出土(水)登记号' },
     { value: '其他编号', label: '其他编号' }
   ],
-  // 待完善
   库存状态: [
-    { value: 3, label: '待入库' },
-    { value: 1, label: '已入库' },
-    { value: 4, label: '待出库' },
-    { value: 2, label: '已出库' },
+    // { value: 0, label: '新建' },
+    { value: 1, label: '待入库' },
+    { value: 2, label: '已入库' },
+    { value: 3, label: '待出库' },
+    { value: 4, label: '已出库' },
     { value: 5, label: '盘点中' },
-    { value: 6, label: '注销中' }
+    { value: 6, label: '注销中' },
+    { value: 7, label: '已注销' }
   ],
   文物级别: [
     { value: '一级', label: '一级' },
@@ -55,5 +56,10 @@ export const selectObj = {
   启用状态: [
     { value: 1, label: '启用' },
     { value: 0, label: '禁用' }
+  ],
+  入藏状态: [
+    { value: 1, label: '已鉴定' },
+    { value: 2, label: '已入馆' },
+    { value: 3, label: '已入藏' }
   ]
 }

+ 15 - 18
src/utils/tableData.ts

@@ -16,6 +16,12 @@
 
 import { selectObj } from './select'
 
+// 库存状态obj
+const statusStorageObj: any = {}
+selectObj['库存状态'].forEach(v => {
+  statusStorageObj[v.value] = v.label
+})
+
 // 待完善
 export const B1TableC = [
   ['txt', '线索名称', 'description'],
@@ -44,17 +50,16 @@ export const B3FtableC = [
   ['txtChange', '审批结果', 'status', { 1: '同意', 2: '不同意' }]
 ]
 
-// 待完善
 export const D1GtableC = [
   ['img', '封面图', 'thumb'],
-  ['txt', '编号类型', 'userName'],
-  ['txt', '藏品名称', 'userName'],
-  ['txt', '数量', 'userName'],
-  ['txt', '库存状态', 'userName'],
-  ['txt', '区域名称', 'userName'],
-  ['txt', '排架', 'userName'],
-  ['txt', '层数', 'userName'],
-  ['txt', '层格', 'userName'],
+  ['txt', '编号类型', 'numName'],
+  ['txt', '藏品名称', 'name'],
+  ['ping', '数量', 'pcs', 'pcsUnit'],
+  ['txtChange', '库存状态', 'statusStorage', statusStorageObj],
+  ['txt', '区域名称', 'regionName'],
+  ['txt', '排架', 'layer1'],
+  ['txt', '层数', 'layer2'],
+  ['txt', '层格', 'layer3'],
   ['txt', '库位说明', 'description']
 ]
 
@@ -113,9 +118,7 @@ export const D1tableC = [
   ['txt', '排架', 'layer1'],
   ['txt', '层数', 'layer2'],
   ['txt', '层格', 'layer3'],
-  ['txt', '库位说明', 'description'],
-  // 待完善
-  ['txt', '是否空置', 'userName']
+  ['txt', '库位说明', 'description']
 ]
 
 export const D2tableC = [
@@ -157,12 +160,6 @@ export const D6tableC = [
   ['txt', '申请状态', 'layer3']
 ]
 
-// 库存状态obj
-const statusStorageObj: any = {}
-selectObj['库存状态'].forEach(v => {
-  statusStorageObj[v.value] = v.label
-})
-
 export const D4goodsTableC = [
   ['img', '封面图', 'thumb'],
   ['txt', '编号类型', 'numName'],