feat: EBOM选择物料弹窗增加左侧分类树(issues-0311-3)

- form.vue: 选择物料弹窗从el-select远程搜索改为左右布局
  左侧el-tree加载物料分类树(getItemTypeTreeselect)
  右侧el-table展示物料列表,支持编码/名称搜索
  点击树节点按分类过滤物料,参考Item管理页实现
- form.vue: 表格和输入框去掉size=small,恢复默认高度
- list.vue: 列表列宽从固定width改为min-width,增加show-overflow-tooltip

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
panchengyong
2026-03-13 00:42:06 +08:00
parent c1110d6b08
commit 34cbf08144
2 changed files with 206 additions and 56 deletions

View File

@@ -86,10 +86,11 @@
:data="bomList"
border
stripe
style="width: 100%"
@row-dblclick="goView"
>
<el-table-column label="序号" type="index" width="60" align="center" />
<el-table-column prop="bomCode" label="单据编码" width="140">
<el-table-column prop="bomCode" label="单据编码" min-width="200" show-overflow-tooltip>
<template #default="{ row }">
<el-link type="primary" @click="goView(row)">{{ row.bomCode }}</el-link>
</template>
@@ -102,9 +103,9 @@
<el-table-column prop="version" label="版本号" width="90" align="center">
<template #default="{ row }">{{ row.version || '1.00' }}</template>
</el-table-column>
<el-table-column prop="versionDesc" label="版本说明" width="120" show-overflow-tooltip />
<el-table-column prop="drawingNo" label="图纸号" width="150" show-overflow-tooltip />
<el-table-column prop="status" label="单据状态" width="100" align="center">
<el-table-column prop="versionDesc" label="版本说明" min-width="120" show-overflow-tooltip />
<el-table-column prop="drawingNo" label="图纸号" min-width="150" show-overflow-tooltip />
<el-table-column prop="status" label="单据状态" width="100" align="center" show-overflow-tooltip>
<template #default="{ row }">
<span :class="getStatusClass(row.status)">{{ getStatusLabel(row.status) }}</span>
</template>
@@ -127,22 +128,23 @@
:data="bomList"
border
stripe
style="width: 100%"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="50" align="center" />
<el-table-column prop="bomCode" label="单据编码" width="140" align="center" />
<el-table-column prop="bomCode" label="单据编码" min-width="200" align="center" show-overflow-tooltip />
<el-table-column prop="createTime" label="单据日期" width="110" align="center">
<template #default="{ row }">{{ formatDate(row.createTime) }}</template>
</el-table-column>
<el-table-column prop="status" label="单据状态" width="100" align="center">
<el-table-column prop="status" label="单据状态" width="100" align="center" show-overflow-tooltip>
<template #default="{ row }">
<span :class="getStatusClass(row.status)">{{ getStatusLabel(row.status) }}</span>
</template>
</el-table-column>
<el-table-column prop="businessType" label="业务类型" width="120" align="center" />
<el-table-column prop="businessDept" label="业务部门" width="120" align="center" />
<el-table-column prop="businessUser" label="业务人员" width="120" align="center" />
<el-table-column prop="businessStatus" label="业务状态" width="120" align="center" />
<el-table-column prop="businessType" label="业务类型" min-width="120" align="center" />
<el-table-column prop="businessDept" label="业务部门" min-width="120" align="center" />
<el-table-column prop="businessUser" label="业务人员" min-width="120" align="center" />
<el-table-column prop="businessStatus" label="业务状态" min-width="120" align="center" />
<el-table-column prop="approveTime" label="审核日期" width="110" align="center" />
<el-table-column label="操作" width="140" align="center" fixed="right">
<template #default="{ row }">