refactor(wms): 使用MaterialSelect组件替换物品类型和物品选择逻辑

将typing.vue、merge.vue和split.vue中的物品类型和物品选择逻辑替换为MaterialSelect组件,简化代码并提高复用性
同时为ProductSelect组件添加width: 100%样式
This commit is contained in:
砂糖
2025-11-04 16:31:51 +08:00
parent da73d23bfd
commit 9b2de46977
4 changed files with 19 additions and 63 deletions

View File

@@ -114,37 +114,9 @@
<el-form-item label="班组" required>
<el-input v-model="item.team" placeholder="输入班组名称" :disabled="readonly"></el-input>
</el-form-item>
<el-form-item label="物品类型" required>
<el-select
v-model="item.itemType"
placeholder="请选择"
style="width: 100%"
@change="handleItemTypeChange(index)"
:disabled="readonly"
>
<el-option label="原材料" value="raw_material" />
<el-option label="产品" value="product" />
</el-select>
</el-form-item>
<el-form-item label="物品" required>
<el-select
v-model="item.itemId"
placeholder="请选择物品"
filterable
remote
:remote-method="(query) => searchItemsForSplit(query, index)"
:loading="itemSearchLoading"
style="width: 100%"
:disabled="readonly"
>
<el-option
v-for="option in getItemListForSplit(item.itemType)"
:key="option.id"
:label="option.name"
:value="option.id"
/>
</el-select>
</el-form-item>
<MaterialSelect :hideType="hideType" :itemId.sync="item.itemId" :itemType.sync="item.itemType" />
<el-form-item label="毛重(t)" required>
<el-input
v-model.number="item.grossWeight"
@@ -222,12 +194,14 @@ import { listRawMaterial } from '@/api/wms/rawMaterial';
import { listProduct } from '@/api/wms/product';
import CoilSelector from '@/components/CoilSelector';
import ActualWarehouseSelect from "@/components/KLPService/ActualWarehouseSelect";
import MaterialSelect from "@/components/KLPService/MaterialSelect";
export default {
name: 'SplitCoil',
components: {
CoilSelector,
ActualWarehouseSelect
ActualWarehouseSelect,
MaterialSelect
},
data() {
return {