refactor(产品/原材料): 重构产品及原材料信息展示与存储方式

移除BOM相关依赖,将材质、表面处理等属性直接存储在实体中
优化信息展示格式,统一使用方括号表示规格
调整表单字段,简化查询条件
This commit is contained in:
砂糖
2025-11-14 18:16:16 +08:00
parent c351a2b551
commit 5080a29bd6
9 changed files with 205 additions and 441 deletions

View File

@@ -86,12 +86,12 @@
<template slot-scope="scope">
<ProductInfo v-if="scope.row.itemType == 'product'" :productId="scope.row.itemId">
<template slot-scope="{ product }">
{{ product.productName }}({{ product.productCode }})
{{ product.productName }}[{{ product.specification }}]
</template>
</ProductInfo>
<RawMaterialInfo v-else-if="scope.row.itemType === 'raw_material'" :materialId="scope.row.itemId">
<template slot-scope="{ material }">
{{ material.rawMaterialName }}({{ material.rawMaterialCode }})
{{ material.rawMaterialName }}[{{ material.specification }}]
</template>
</RawMaterialInfo>
</template>
@@ -181,7 +181,7 @@
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-form-item label="入场钢卷号" prop="enterCoilNo">
<el-input v-model="form.enterCoilNo" placeholder="请输入入场钢卷号" disabled />
<el-input v-model="form.enterCoilNo" placeholder="请输入入场钢卷号" :disabled="form.coilId" />
</el-form-item>
<el-form-item label="当前钢卷号" prop="currentCoilNo">
<el-input v-model="form.currentCoilNo" placeholder="请输入当前钢卷号" />
@@ -199,20 +199,20 @@
<el-form-item label="班组" prop="team">
<el-input v-model="form.team" placeholder="请输入班组" />
</el-form-item>
<!-- <el-form-item label="材料类型" prop="materialType">
<el-form-item label="材料类型" prop="materialType" v-if="!form.coilId">
<el-select v-model="form.materialType" placeholder="请选择材料类型" @change="handleMaterialTypeChange">
<el-option label="成品" value="成品" />
<el-option label="原料" value="原料" />
<el-option label="废品" value="废品" />
</el-select>
</el-form-item>
<el-form-item :label="getItemLabel" prop="itemId">
<el-form-item :label="getItemLabel" prop="itemId" v-if="!form.coilId">
<product-select v-if="form.itemType == 'product'" v-model="form.itemId" placeholder="请选择成品"
style="width: 100%;" clearable />
<raw-material-select v-else-if="form.itemType == 'raw_material'" v-model="form.itemId" placeholder="请选择原料"
style="width: 100%;" clearable />
<div v-else>请先选择材料类型</div>
</el-form-item> -->
</el-form-item>
<el-form-item v-if="form.materialType === '成品'" label="质量状态" prop="qualityStatus">
<el-input v-model="form.qualityStatus" placeholder="请输入质量状态"
:disabled="readonly">